:root{color-scheme:light;--page:#f6f6f3;--surface:#fcfcfb;--surface-2:#f3f2ee;--sidebar:#15151f;--sidebar-2:#1d1d2b;--ink:#0b0b0b;--ink-2:#52514e;--ink-3:#898781;--sidebar-ink:#a9a9bd;--sidebar-ink-strong:#f2f2f7;--hairline:rgba(11,11,11,0.1);--hairline-soft:rgba(11,11,11,0.055);--grid:#e1e0d9;--accent:#2a78d6;--accent-ink:#1c5cab;--gold:#e2b13c;--gold-ink:#8a6414;--good:#0ca30c;--good-text:#006300;--warn:#fab219;--warn-text:#7a5200;--serious:#ec835a;--serious-text:#8f3c1a;--critical:#d03b3b;--critical-text:#a02525;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px rgba(11,11,11,0.04),0 6px 20px rgba(11,11,11,0.05)}*{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100%;background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}.shell{display:flex;min-height:100vh}.side{width:236px;flex:none;position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--sidebar);padding:1.4rem .9rem 1.1rem}.brand{display:flex;align-items:center;gap:.65rem;padding:0 .55rem 1.3rem}.brand .logomark{width:32px;height:32px;flex:none;border-radius:9px;background:linear-gradient(140deg,#f0c65e,var(--gold) 55%,#b8871f);color:#15151f;font-weight:800;font-size:.78rem;letter-spacing:.02em;display:grid;place-items:center}.brand .wordmark{color:var(--sidebar-ink-strong);font-weight:700;font-size:.95rem;letter-spacing:-.01em;line-height:1.2}.brand .tagline{color:var(--sidebar-ink);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}.nav{flex-direction:column;gap:2px}.nav,.nav a{display:flex}.nav a{align-items:center;gap:.65rem;padding:.5rem .7rem;border-radius:var(--radius-sm);color:var(--sidebar-ink);text-decoration:none;font-size:.875rem;font-weight:500;border-left:2px solid transparent;transition:background .12s ease,color .12s ease}.nav a svg{flex:none;opacity:.75}.nav a:hover{background:rgba(255,255,255,.05)}.nav a.active,.nav a:hover{color:var(--sidebar-ink-strong)}.nav a.active{background:rgba(255,255,255,.07);border-left-color:var(--gold)}.nav a.active svg{opacity:1;color:var(--gold)}.side-footer{margin-top:auto;display:flex;flex-direction:column;gap:.7rem;padding:.9rem .55rem 0;border-top:1px solid rgba(255,255,255,.08)}.side-footer .label{color:var(--sidebar-ink);font-size:.66rem;letter-spacing:.09em;text-transform:uppercase}.switcher{display:flex;gap:.4rem}.switcher select{flex:1 1;min-width:0;background:var(--sidebar-2);padding:.4rem .5rem}.switcher button,.switcher select{color:var(--sidebar-ink-strong);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-sm);font-size:.8rem}.switcher button{background:rgba(255,255,255,.1);padding:.4rem .7rem;font-weight:600;cursor:pointer}.switcher button:hover{background:rgba(255,255,255,.18)}.draft-note{color:var(--sidebar-ink);font-size:.7rem;line-height:1.45}.draft-note .dot{color:var(--gold)}main.content{flex:1 1;min-width:0;padding:2.3rem 2.8rem 4.5rem;max-width:1280px}.page-header{margin-bottom:1.6rem}.page-header .eyebrow{display:flex;align-items:center;gap:.55rem;font-size:.7rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.35rem}.page-header .eyebrow .client{color:var(--gold-ink)}.page-header h1{margin:0;font-size:1.55rem;font-weight:700;letter-spacing:-.015em;line-height:1.25}.page-header .lead{margin:.45rem 0 0;max-width:62ch;color:var(--ink-2);font-size:.9rem}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:1.15rem 1.35rem}.card-title{margin:0 0 .6rem;font-size:.72rem;font-weight:650;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:1rem;gap:1rem;margin:1.2rem 0 1.6rem}.tile{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.05rem 1.25rem 1.1rem}.tile h3{margin:0 0 .45rem;font-size:.7rem;font-weight:650;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-3)}.tile .value{font-size:1.85rem;font-weight:700;letter-spacing:-.02em;line-height:1.15}.tile .sub{color:var(--ink-3);font-size:.78rem;margin-top:.35rem}.tile.err .value{font-size:.82rem;font-weight:500;line-height:1.45;letter-spacing:0;color:var(--critical-text);white-space:pre-wrap;overflow-wrap:anywhere}.tile.pending .value{color:var(--ink-3)}.table-card{overflow-x:auto}table{border-collapse:separate;border-spacing:0;width:100%;font-size:.845rem}td,th{padding:.55rem .8rem;text-align:left;vertical-align:top}thead th{position:-webkit-sticky;position:sticky;top:0;background:var(--surface);font-size:.67rem;font-weight:650;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);border-bottom:1px solid var(--hairline);white-space:nowrap}th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}th.sortable:hover{color:var(--ink)}tbody td{border-bottom:1px solid var(--hairline-soft)}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:rgba(11,11,11,.022)}.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}td.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.78rem;color:var(--ink-2);white-space:nowrap}td .cell-note{color:var(--ink-3);font-size:.78rem}.pill{display:inline-flex;align-items:center;gap:.32rem;padding:.13rem .55rem;margin:1px 2px 1px 0;border-radius:999px;border:1px solid;font-size:.71rem;font-weight:600;line-height:1.5;white-space:nowrap}.pill .pill-dot{width:6px;height:6px;flex:none;border-radius:999px;background:currentColor}.pill.wrap{white-space:normal}.pill-neutral{color:var(--ink-2);border-color:var(--hairline);background:var(--surface-2)}.pill-info{color:var(--accent-ink);border-color:rgba(42,120,214,.3);background:rgba(42,120,214,.07)}.pill-good{color:var(--good-text);border-color:rgba(12,163,12,.32);background:rgba(12,163,12,.07)}.pill-warn{color:var(--warn-text);border-color:rgba(250,178,25,.5);background:rgba(250,178,25,.1)}.pill-serious{color:var(--serious-text);border-color:rgba(236,131,90,.45);background:rgba(236,131,90,.1)}.pill-critical{color:var(--critical-text);border-color:rgba(208,59,59,.35);background:rgba(208,59,59,.07)}.callout{border:1px solid;border-radius:var(--radius);padding:.85rem 1.1rem;font-size:.86rem;margin:0 0 1rem;background:var(--surface)}.callout b{font-weight:650}.callout-info{border-color:rgba(42,120,214,.3);background:rgba(42,120,214,.05);color:#163e6e}.callout-warn{border-color:rgba(250,178,25,.55);background:rgba(250,178,25,.08);color:var(--warn-text)}.callout-error{border-color:rgba(208,59,59,.4);background:rgba(208,59,59,.06);color:var(--critical-text);white-space:pre-wrap;overflow-wrap:anywhere}.note{color:var(--ink-3);font-size:.82rem}button,input,select{font:inherit}.content input,.content select{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-sm);padding:.42rem .65rem;font-size:.85rem;color:var(--ink)}.content input::placeholder{color:var(--ink-3)}.content :is(input,select,button):focus-visible,.side :is(select,button):focus-visible{outline:2px solid var(--accent);outline-offset:1px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.45rem;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-sm);padding:.45rem .95rem;font-size:.85rem;font-weight:600;color:var(--ink);cursor:pointer;transition:border-color .12s ease,background .12s ease}.btn:hover{border-color:rgba(11,11,11,.28)}.btn-primary{background:var(--sidebar);border-color:var(--sidebar);color:#fff}.btn-primary:hover{background:#262638;border-color:#262638}form.range{margin:.9rem 0 1.1rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}form.range label{display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem;color:var(--ink-2)}input.cogs{width:6.2rem;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.empty{padding:2.6rem 1.5rem;text-align:center;color:var(--ink-2)}.empty h2{margin:0 0 .4rem;font-size:1.02rem;font-weight:650;color:var(--ink)}.empty p{margin:0 auto;max-width:46ch;font-size:.86rem}.empty code{background:var(--surface-2);border:1px solid var(--hairline-soft);border-radius:5px;padding:.06rem .35rem;font-size:.8rem}.section-title{margin:1.8rem 0 .7rem;font-size:1.02rem;font-weight:650;letter-spacing:-.01em}.checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.checklist li{display:flex;align-items:baseline;gap:.7rem;padding:.6rem 0;border-bottom:1px solid var(--hairline-soft);font-size:.86rem;color:var(--ink-2)}.checklist li:last-child{border-bottom:none}.viz-surface{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem 1.1rem .7rem}.auth-page{min-height:100vh;display:grid;place-items:center;padding:2rem 1.1rem;background:radial-gradient(1100px 460px at 50% -8%,rgba(42,120,214,.07),transparent 70%),var(--page)}.auth-card{width:100%;max-width:27rem;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.9rem 1.8rem 1.6rem}.auth-brand{display:flex;align-items:center;gap:.7rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--hairline-soft)}.auth-brand .logomark{display:grid;place-items:center;width:30px;height:30px;border-radius:var(--radius-sm);background:var(--sidebar);color:var(--sidebar-ink-strong);font-size:.72rem;font-weight:700;letter-spacing:.02em}.auth-brand .wordmark{font-size:.88rem;font-weight:650;letter-spacing:-.01em;color:var(--ink)}.auth-brand .tagline{font-size:.72rem;color:var(--ink-3)}.auth-title{margin:0 0 .4rem;font-size:1.3rem;font-weight:660;letter-spacing:-.02em}.auth-lead{margin:0 0 1.4rem;font-size:.86rem;line-height:1.5;color:var(--ink-2)}.auth-form{display:flex;flex-direction:column}.auth-form label{margin-bottom:.35rem;font-size:.78rem;font-weight:600;color:var(--ink-2)}.auth-form input{margin-bottom:1rem;padding:.6rem .7rem;font:inherit;font-size:.9rem;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-sm)}.auth-form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.auth-form input:disabled{background:var(--surface-2);color:var(--ink-3)}.auth-code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.3rem!important;letter-spacing:.38em;text-align:center;text-indent:.38em}.auth-submit{margin-top:.3rem;padding:.62rem .9rem;font:inherit;font-size:.88rem;font-weight:620;color:#fff;background:var(--sidebar);border:1px solid var(--sidebar);border-radius:var(--radius-sm);cursor:pointer;transition:background .12s ease}.auth-submit:hover{background:var(--sidebar-2)}.auth-submit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-submit-link{display:block;text-align:center;text-decoration:none}.auth-error{margin-bottom:1.2rem;padding:.65rem .8rem;font-size:.83rem;color:var(--critical-text);background:rgba(208,59,59,.07);border:1px solid rgba(208,59,59,.25);border-radius:var(--radius-sm)}.auth-hint{margin:-.7rem 0 1rem;font-size:.76rem;color:var(--ink-3)}.auth-foot{margin:1.3rem 0 0;padding-top:1.1rem;border-top:1px solid var(--hairline-soft);font-size:.78rem;line-height:1.5;color:var(--ink-3)}.auth-steps{margin:0 0 1.4rem;padding-left:1.15rem;font-size:.85rem;line-height:1.55;color:var(--ink-2)}.auth-steps li{margin-bottom:.7rem}.auth-secret{display:block;margin:.5rem 0 .35rem;padding:.55rem .7rem;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88rem;letter-spacing:.06em;color:var(--ink);background:var(--surface-2);border:1px solid var(--hairline-soft);border-radius:var(--radius-sm);overflow-wrap:anywhere}.auth-link{font-size:.78rem;color:var(--accent-ink)}.side-user{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding-top:.85rem;border-top:1px solid rgba(255,255,255,.09)}.side-user-id{min-width:0}.side-user-email{overflow:hidden;font-size:.76rem;color:var(--sidebar-ink-strong);text-overflow:ellipsis;white-space:nowrap}.side-user-role{font-size:.68rem;color:var(--sidebar-ink);text-transform:uppercase;letter-spacing:.05em}.side-signout{padding:.28rem .55rem;font:inherit;font-size:.74rem;color:var(--sidebar-ink);background:transparent;border:1px solid rgba(255,255,255,.16);border-radius:6px;cursor:pointer;white-space:nowrap}.side-signout:hover{color:var(--sidebar-ink-strong);border-color:rgba(255,255,255,.3)}.side-cta{display:inline-block;padding:.38rem .65rem;font-size:.78rem;font-weight:600;color:var(--sidebar);background:var(--gold);border-radius:6px;text-decoration:none}.side-warning{display:flex;align-items:baseline;gap:.45rem;font-size:.75rem;line-height:1.4;color:var(--warn);text-decoration:none}.side-warning:hover{text-decoration:underline}.side-warning .dot{font-size:.6rem}.connect-form{display:flex;flex-direction:column;gap:0;max-width:27rem}.connect-form .field{display:flex;flex-direction:column;margin-bottom:1rem}.connect-form label{margin-bottom:.35rem;font-size:.78rem;font-weight:600;color:var(--ink-2)}.connect-form input,.connect-form select{padding:.55rem .65rem;font:inherit;font-size:.88rem;color:var(--ink);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-sm)}.connect-form .auth-hint{margin:.35rem 0 0}.plain-table{width:100%;border-collapse:collapse;font-size:.85rem}.plain-table th{padding:.45rem .7rem .45rem 0;font-size:.72rem;font-weight:620;color:var(--ink-3);text-align:left;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--hairline)}.plain-table td{padding:.6rem .7rem .6rem 0;border-bottom:1px solid var(--hairline-soft);vertical-align:middle}.plain-table tr:last-child td{border-bottom:none}.plain-table .mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.8rem;color:var(--ink-2)}.link-button{padding:0;font:inherit;font-size:.82rem;font-weight:600;color:var(--accent-ink);background:none;border:none;cursor:pointer}.link-button:hover{text-decoration:underline}.muted{color:var(--ink-2)}.muted.small{max-width:62ch;font-size:.8rem}@media (max-width:880px){.auth-card{padding:1.5rem 1.25rem 1.3rem}.side-user{padding-top:0;border-top:none}.shell{flex-direction:column}.side{width:100%;height:auto;position:static;padding:.9rem 1rem}.brand{padding-bottom:.8rem}.nav{flex-direction:row;overflow-x:auto;gap:.2rem}.nav a{border-left:none;border-bottom:2px solid transparent;white-space:nowrap}.nav a.active{border-bottom-color:var(--gold)}.side-footer{flex-direction:row;align-items:center;justify-content:space-between;padding-top:.8rem}main.content{padding:1.4rem 1.1rem 3rem}}