*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{background:var(--pv-obsidian)}:root,body,html{color:var(--pv-text);font-family:var(--pv-font-body)}body,html{background:var(--pv-field-obsidian) fixed;font-size:var(--nn-body);line-height:var(--nn-leading-relaxed);min-height:100vh;min-width:320px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a,button,input,select,textarea{font:inherit}a{color:var(--pv-gold-soft);transition:color var(--nn-dur-fast) var(--nn-ease)}a,a:hover{text-decoration:none}a:hover{color:var(--pv-champagne)}h1{font-size:var(--nn-h2)}h1,h2{font-family:var(--pv-font-wordmark);font-weight:var(--nn-fw-regular);line-height:var(--pv-leading-air);letter-spacing:var(--nn-track-tight);color:var(--pv-text);margin:0}h2{font-size:var(--nn-h3)}h3{font-family:var(--pv-font-body);font-size:var(--nn-h5);font-weight:var(--nn-fw-semibold);color:var(--pv-text-mute);letter-spacing:var(--nn-track-wide);text-transform:uppercase;margin:0}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--pv-gold);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.shell{display:grid;grid-template-columns:224px 1fr;min-height:100vh}.main{min-width:0;padding:var(--nn-space-10) var(--nn-space-12);overflow:auto}.page-header{margin-bottom:var(--nn-space-10);padding-bottom:var(--nn-space-8);border-bottom:1px solid var(--pv-gold-line)}.page-header h1{margin-bottom:var(--nn-space-2);color:var(--pv-text)}.page-header p{font-family:var(--pv-font-body);font-size:var(--nn-body-sm);color:var(--pv-text-mute)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-gap:var(--nn-space-5);gap:var(--nn-space-5);margin-bottom:var(--nn-space-10)}.stat-card{background:var(--pv-navy);border:1px solid var(--pv-hairline-soft);border-left:2px solid var(--pv-gold-line);border-radius:var(--nn-radius-md);padding:var(--nn-space-6) var(--nn-space-6);transition:border-color var(--nn-dur-fast) var(--nn-ease)}.stat-card:hover{border-color:var(--pv-gold-line)}.stat-label{font-family:var(--nn-font-mono);font-size:var(--nn-overline);letter-spacing:var(--pv-track-eyebrow);margin-bottom:var(--nn-space-3);text-transform:uppercase}.stat-label,.stat-value{color:var(--pv-gold-soft)}.stat-value{font-family:var(--pv-font-wordmark);font-size:3rem;line-height:1.05;margin-bottom:var(--nn-space-2)}.stat-desc{font-size:var(--nn-caption);color:var(--pv-text-mute)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:var(--nn-space-6);gap:var(--nn-space-6);margin-bottom:var(--nn-space-10)}.breakdown-card{background:var(--pv-navy);border:1px solid var(--pv-hairline-soft);border-radius:var(--nn-radius-md);overflow:hidden}.breakdown-card-header{padding:var(--nn-space-4) var(--nn-space-6);border-bottom:1px solid var(--pv-hairline-soft);background:rgba(12,22,34,.4)}.breakdown-card-header h2{font-family:var(--nn-font-mono);font-size:var(--nn-overline);font-weight:var(--nn-fw-medium);letter-spacing:var(--pv-track-eyebrow);color:var(--pv-gold-soft);text-transform:uppercase}.breakdown-rows{padding:var(--nn-space-2) 0}.breakdown-row{display:flex;align-items:center;justify-content:space-between;padding:var(--nn-space-2) var(--nn-space-6);gap:var(--nn-space-3);transition:background var(--nn-dur-fast) var(--nn-ease)}.breakdown-row:hover{background:rgba(36,54,81,.4)}.breakdown-label{font-size:var(--nn-body-sm);color:var(--pv-text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.breakdown-bar-wrap{flex:1 1;min-width:60px;max-width:120px;height:2px;background:rgba(242,238,228,.08);border-radius:2px}.breakdown-bar{height:2px;background:var(--pv-gold);border-radius:2px}.breakdown-count{font-family:var(--nn-font-mono);font-size:var(--nn-caption);color:var(--pv-text-mute);min-width:36px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.table-wrap{background:var(--pv-navy);border:1px solid var(--pv-hairline-soft);border-radius:var(--nn-radius-md);overflow:hidden;margin-bottom:var(--nn-space-6)}table{width:100%;border-collapse:collapse;font-size:var(--nn-body-sm)}thead tr{border-bottom:1px solid var(--pv-hairline-soft);background:rgba(12,22,34,.4)}thead th{padding:var(--nn-space-3) var(--nn-space-4);text-align:left;font-family:var(--nn-font-mono);font-size:var(--nn-overline);font-weight:var(--nn-fw-medium);letter-spacing:var(--pv-track-eyebrow);color:var(--pv-gold-soft);text-transform:uppercase;white-space:nowrap}tbody tr{border-bottom:1px solid var(--pv-hairline-soft);transition:background var(--nn-dur-fast) var(--nn-ease)}tbody tr:last-child{border-bottom:none}tbody tr:hover{background:rgba(36,54,81,.4)}tbody td{padding:var(--nn-space-3) var(--nn-space-4);color:var(--pv-text-mute);vertical-align:middle;font-size:var(--nn-body-sm)}.td-primary{color:var(--pv-text);font-weight:var(--nn-fw-medium)}.group-header{padding:var(--nn-space-3) var(--nn-space-4) var(--nn-space-2);background:rgba(7,11,17,.5);border-bottom:1px solid var(--pv-hairline-soft);font-family:var(--nn-font-mono);font-size:var(--nn-overline);letter-spacing:var(--pv-track-eyebrow);text-transform:uppercase;color:var(--pv-text-mute)}.group-header:not(:first-child){border-top:1px solid var(--pv-hairline-soft)}.badge{display:inline-flex;align-items:center;gap:var(--nn-space-1);padding:3px 10px;border-radius:var(--nn-radius-pill);font-family:var(--pv-font-body);font-weight:var(--nn-fw-medium);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.badge-admin,.badge-forbes,.badge-jet,.badge-luxury{color:var(--pv-gold-soft);background:rgba(190,154,78,.08);border:1px solid var(--pv-gold-line)}.badge-member,.badge-michelin,.badge-yacht{color:var(--pv-text-mute);background:transparent;border:1px solid var(--pv-hairline)}.pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--nn-space-4) 0}.pagination-info{font-family:var(--nn-font-mono);font-size:var(--nn-caption);color:var(--pv-text-mute);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pagination-controls{display:flex}.btn,.pagination-controls{gap:var(--nn-space-2);align-items:center}.btn{display:inline-flex;padding:7px var(--nn-space-4);font-family:var(--pv-font-body);font-size:var(--nn-body-sm);font-weight:var(--nn-fw-medium);border-radius:var(--nn-radius-sm);border:1px solid var(--pv-hairline);background:transparent;color:var(--pv-text-mute);cursor:pointer;transition:border-color var(--nn-dur-fast) var(--nn-ease),color var(--nn-dur-fast) var(--nn-ease),background var(--nn-dur-fast) var(--nn-ease);white-space:nowrap}.btn,.btn:hover{text-decoration:none}.btn:hover{border-color:var(--pv-gold-line);color:var(--pv-gold-soft);background:rgba(190,154,78,.06)}.btn:disabled,.btn[aria-disabled=true]{opacity:.35;pointer-events:none}.btn-primary{background:var(--pv-gold);border-color:var(--pv-gold);color:var(--pv-obsidian)}.btn-primary:hover{background:var(--pv-gold-soft);border-color:var(--pv-gold-soft);color:var(--pv-obsidian)}.btn-danger{color:#e0907f;border-color:rgba(224,144,127,.35)}.btn-danger:hover{background:rgba(224,144,127,.08);border-color:#e0907f;color:#e0907f}.filters{display:flex;gap:var(--nn-space-3);margin-bottom:var(--nn-space-6);flex-wrap:wrap;align-items:center}.filter-label{font-family:var(--nn-font-mono);font-size:var(--nn-caption);color:var(--pv-text-mute);letter-spacing:var(--pv-track-eyebrow);text-transform:uppercase}.filter-select{background:transparent;border:1px solid var(--pv-hairline);color:var(--pv-text);border-radius:var(--nn-radius-sm);padding:6px var(--nn-space-3);font-size:var(--nn-body-sm);font-family:var(--pv-font-body);cursor:pointer;min-width:120px;transition:border-color var(--nn-dur-fast) var(--nn-ease)}.filter-select:focus{outline:none;border-color:var(--pv-gold)}.notice{padding:var(--nn-space-8);text-align:center;color:var(--pv-text-mute);font-size:var(--nn-body-sm)}.error-notice{background:rgba(224,144,127,.08);border:1px solid rgba(224,144,127,.35);border-radius:var(--nn-radius-md);padding:var(--nn-space-5) var(--nn-space-6);color:#e0907f;font-size:var(--nn-body-sm);margin-bottom:var(--nn-space-6)}.success-notice{background:rgba(95,174,132,.08);border:1px solid rgba(95,174,132,.35);border-radius:var(--nn-radius-md);padding:var(--nn-space-3) var(--nn-space-4);color:#5fae84;font-size:var(--nn-body-sm);margin-bottom:var(--nn-space-4)}.rate-range{color:var(--pv-text-mute);font-family:var(--nn-font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.gold-rule{border:none;border-top:1px solid var(--pv-gold-line);margin:var(--nn-space-8) 0}.sidebar-user{padding:var(--nn-space-4) var(--nn-space-5);border-top:1px solid var(--pv-hairline-soft)}.sidebar-user-name{font-size:var(--nn-body-sm);color:var(--pv-text-mute);margin-bottom:2px}.sidebar-user-meta,.sidebar-user-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-meta{font-family:var(--nn-font-mono);font-size:var(--nn-caption);color:var(--pv-text-subtle);margin-bottom:var(--nn-space-3)}.btn-signout{display:flex;align-items:center;justify-content:center;width:100%;padding:7px;font-family:var(--pv-font-body);font-size:var(--nn-caption);font-weight:var(--nn-fw-medium);border-radius:var(--nn-radius-sm);border:1px solid var(--pv-hairline);background:transparent;color:var(--pv-text-mute);cursor:pointer;transition:border-color var(--nn-dur-fast) var(--nn-ease),color var(--nn-dur-fast) var(--nn-ease),background var(--nn-dur-fast) var(--nn-ease)}.btn-signout:hover{border-color:var(--pv-gold-line);color:var(--pv-gold-soft);background:rgba(190,154,78,.06)}.form-field{margin-bottom:var(--nn-space-5)}.form-label{display:block;font-family:var(--nn-font-mono);font-size:var(--nn-overline);letter-spacing:var(--pv-track-eyebrow);color:var(--pv-text-mute);margin-bottom:var(--nn-space-2);text-transform:uppercase}.form-input{width:100%;background:rgba(12,22,34,.5);border:1px solid var(--pv-hairline);border-radius:var(--nn-radius-sm);color:var(--pv-text);padding:9px var(--nn-space-3);font-size:var(--nn-body-sm);font-family:var(--pv-font-body);outline:none;display:block;transition:border-color var(--nn-dur-fast) var(--nn-ease)}.form-input::placeholder{color:var(--pv-text-subtle)}.form-input:focus{border-color:var(--pv-gold)}.form-input:disabled{opacity:.5;cursor:not-allowed}.person-form-card{background:var(--pv-navy);border:1px solid var(--pv-hairline-soft);border-radius:var(--nn-radius-md);padding:var(--nn-space-8) var(--nn-space-8);max-width:480px}.person-form-card h3{font-family:var(--pv-font-wordmark);font-size:var(--nn-h4);font-weight:var(--nn-fw-regular);color:var(--pv-text);margin-bottom:var(--nn-space-6)}.login-card{background:var(--pv-navy);border:1px solid var(--pv-hairline-soft);border-radius:var(--nn-radius-md);padding:var(--nn-space-10) var(--nn-space-10);width:100%;max-width:420px;box-shadow:var(--pv-shadow-md)}.login-card h1{font-family:var(--pv-font-wordmark);font-size:var(--nn-h3);font-weight:var(--nn-fw-regular);color:var(--pv-text);margin-bottom:var(--nn-space-2);line-height:var(--pv-leading-air)}.login-card p{font-size:var(--nn-body-sm);color:var(--pv-text-mute);margin-bottom:var(--nn-space-8)}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--nn-space-8)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(242,238,228,.14);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:rgba(242,238,228,.24)}