:root{--bg:#141310;--panel:#1b1a15;--panel-2:#211f19;--ink:#ece8de;--ink-soft:#908b7e;--ink-faint:#5e5a50;--rule:#2a2822;--rule-soft:#221f1a;--brass:#c9a24b;--brass-dim:#6f5c2e;--warn:#c56b53;--sans:"Space Grotesk", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, "SF Mono", monospace;--r:9px;--maxw:980px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--sans);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;min-height:100vh;font-size:15px;line-height:1.5}body:before{content:"";background-image:linear-gradient(var(--rule-soft) 1px, transparent 1px), linear-gradient(90deg, var(--rule-soft) 1px, transparent 1px);opacity:.4;pointer-events:none;z-index:0;background-size:44px 44px;position:fixed;inset:0}#root{z-index:1;position:relative}button{cursor:pointer;font-family:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--brass);outline-offset:2px;border-radius:3px}.eyebrow{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--brass);font-size:11px;font-weight:500}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.btn{font-family:var(--sans);border:1px solid var(--rule);color:var(--ink-soft);border-radius:var(--r);background:0 0;padding:9px 16px;font-size:14px;font-weight:500;transition:border-color .15s,color .15s,background .15s}.btn:hover{color:var(--ink);border-color:var(--ink-faint)}.btn--primary{width:100%;color:var(--bg);background:var(--brass);border-color:var(--brass);letter-spacing:.01em;padding:12px;font-weight:600}.btn--primary:hover{color:var(--bg);background:#d8b259;border-color:#d8b259}.btn--primary:disabled{opacity:.55;cursor:default}.topbar{border-bottom:1px solid var(--rule);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:10;background:#141310d9;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex;position:sticky;top:0}.topbar-left{align-items:baseline;gap:14px;min-width:0;display:flex}.brand{font-family:var(--mono);letter-spacing:.04em;color:var(--ink);font-size:14px;font-weight:600}.brand .dot{color:var(--brass)}.crumb{font-family:var(--mono);color:var(--ink-soft);font-size:13px;text-decoration:none}.crumb:hover{color:var(--brass)}.topbar-right{align-items:center;gap:16px;display:flex}.who{font-family:var(--mono);color:var(--ink-faint);font-size:12px}.shell{max-width:var(--maxw);margin:0 auto;padding:40px 28px 80px}.page-title{font-family:var(--mono);letter-spacing:.02em;color:var(--ink);font-size:22px;font-weight:600}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--panel);border:1px solid var(--rule);border-radius:14px;width:100%;max-width:360px;padding:36px 32px}.login-eyebrow{margin-bottom:22px}.login-title{letter-spacing:-.01em;font-size:26px;font-weight:600}.login-sub{font-family:var(--mono);color:var(--ink-faint);margin-top:4px;margin-bottom:28px;font-size:12px}.form{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:7px;display:flex}.field label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-size:11px}.field input{font-family:var(--mono);background:var(--bg);border:1px solid var(--rule);color:var(--ink);border-radius:8px;outline:none;padding:11px 13px;font-size:14px;transition:border-color .15s}.field input:focus{border-color:var(--brass)}.error{color:var(--warn);font-size:13px;font-family:var(--mono);background:#c56b5314;border:1px solid #c56b5340;border-radius:7px;padding:9px 12px}.section-head{align-items:baseline;gap:14px;margin-bottom:22px;display:flex}.section-head .count{font-family:var(--mono);color:var(--ink-faint);font-size:13px}.index{border-top:1px solid var(--rule)}.index-row{text-align:left;border:none;border-bottom:1px solid var(--rule);background:0 0;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:20px 6px;transition:padding-left .18s,background .18s;display:flex}.index-row:hover{background:var(--panel);padding-left:16px}.index-name{font-family:var(--mono);color:var(--ink);font-size:17px;font-weight:500}.index-open{font-family:var(--mono);color:var(--ink-soft);font-size:13px;transition:color .15s,transform .18s}.index-row:hover .index-open{color:var(--brass);transform:translate(3px)}.empty{border:1px dashed var(--rule);border-radius:var(--r);text-align:center;color:var(--ink-soft);padding:44px;font-size:14px}.empty code{font-family:var(--mono);color:var(--brass);font-size:13px}.loading{color:var(--ink-faint);font-family:var(--mono);padding:40px 6px;font-size:13px}.verdict{border:1px solid var(--rule);background:var(--panel);border-radius:14px;flex-wrap:wrap;align-items:baseline;gap:22px;padding:28px 30px;display:flex}.verdict-num{font-family:var(--mono);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:64px;font-weight:600;line-height:.9}.verdict-num.pass{color:var(--brass)}.verdict-num.under{color:var(--ink)}.verdict-copy{flex-direction:column;gap:4px;display:flex}.verdict-label{font-size:16px;font-weight:500}.verdict-label.pass{color:var(--brass)}.verdict-sub{font-family:var(--mono);color:var(--ink-soft);font-size:12px}.controls{flex-wrap:wrap;gap:14px;display:flex}.control{flex-direction:column;gap:7px;display:flex}.control label{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:11px}.select{font-family:var(--mono);background:var(--panel);border:1px solid var(--rule);color:var(--ink);cursor:pointer;border-radius:8px;min-width:150px;padding:9px 12px;font-size:13px}.select:hover{border-color:var(--ink-faint)}.metrics{border:1px solid var(--rule);border-radius:var(--r);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid;overflow:hidden}.metric{border-right:1px solid var(--rule);padding:18px 20px}.metric:last-child{border-right:none}.metric-num{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:26px;font-weight:600}.metric-num.brass{color:var(--brass)}.metric-label{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);margin-top:5px;font-size:11px}.block-title{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:14px;font-size:12px}.stack{flex-direction:column;gap:28px;display:flex}.funnel{border:1px solid var(--rule);border-radius:var(--r);background:var(--panel);overflow:hidden}.fstep{border-top:1px solid var(--rule);grid-template-columns:190px 1fr;align-items:center;gap:18px;padding:15px 20px;display:grid}.fstep:first-child{border-top:none}.fstep-label{flex-direction:column;gap:2px;min-width:0;display:flex}.fstep-name{color:var(--ink);font-size:14px;font-weight:500}.fstep-key{font-family:var(--mono);color:var(--ink-faint);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.ftrack{align-items:center;gap:12px;height:30px;display:flex;position:relative}.fbar{background:var(--bg);border-radius:5px;flex:1;height:100%;position:relative;overflow:hidden}.ffill{background:linear-gradient(90deg, var(--brass-dim), var(--brass));border-radius:5px;transition:width .5s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0 auto 0 0}.fbar:after{content:"";border-left:1px dashed var(--brass);opacity:.5;width:0;position:absolute;top:-1px;bottom:-1px;left:50%}.fpct{font-family:var(--mono);color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;min-width:46px;font-size:15px;font-weight:600}.fcount{font-family:var(--mono);color:var(--ink-faint);min-width:78px;font-size:11px}.fdrop{font-family:var(--mono);color:var(--warn);font-size:11px}.fdrop.zero{color:var(--ink-faint)}.threshold-note{font-family:var(--mono);color:var(--ink-soft);align-items:center;gap:8px;margin-top:10px;font-size:11px;display:flex}.threshold-note .tick{border-top:1px dashed var(--brass);opacity:.7;width:14px}.events{border-collapse:collapse;width:100%;font-family:var(--mono);font-size:12px}.events th{text-align:left;color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--rule);padding:8px 14px;font-weight:500}.events th.num,.events td.num{text-align:right;font-variant-numeric:tabular-nums}.events td{border-bottom:1px solid var(--rule-soft);color:var(--ink-soft);padding:9px 14px}.events td.evt{color:var(--brass)}@media (width<=620px){.fstep{grid-template-columns:1fr;gap:8px}.verdict-num{font-size:52px}.shell{padding:28px 18px 64px}.topbar{padding:16px 18px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
