:root{--bg:#0b0e14;--panel:#141922;--panel-2:#1b2230;--border:#26304a;--text:#e6e9ef;--muted:#8a94a7;--accent:#5b8cff;--good:#37d67a;--bad:#ff5b6e}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px}a{color:var(--accent);text-decoration:none}.topbar{display:flex;align-items:center;gap:16px;padding:12px 20px;background:var(--panel);border-bottom:1px solid var(--border);flex-wrap:wrap}.topbar .brand{font-weight:700;letter-spacing:.3px}.topbar .spacer{flex:1 1}.nav{display:flex;gap:4px}.nav a{padding:6px 12px;border-radius:8px;color:var(--muted)}.nav a.active{background:var(--panel-2);color:var(--text)}.funnel-row{display:flex;align-items:center;gap:12px;margin-bottom:10px}.funnel-bar-wrap{flex:1 1;background:var(--panel-2);border-radius:8px;overflow:hidden;height:34px;position:relative}.funnel-bar{height:100%;background:linear-gradient(90deg,#5b8cff,#22d3ee);display:flex;align-items:center;padding-left:10px;color:#fff;font-weight:600;font-size:12px}.funnel-label{width:190px;color:var(--muted)}.funnel-drop{width:96px;text-align:right;font-size:12px}.guide{max-width:820px}.guide h2{font-size:16px;margin:22px 0 8px}.guide h3{font-size:14px;margin:16px 0 6px}.guide li,.guide p{line-height:1.6;color:#cdd3df}.guide .lead{color:var(--muted)}.guide ul{padding-left:18px}.guide code.inline{background:var(--panel-2);padding:1px 6px;border-radius:5px;font-size:12px}.codeblock{position:relative;margin:8px 0}.codeblock pre{background:#0f131c;border:1px solid var(--border);border-radius:10px;padding:12px 14px;overflow-x:auto;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.5;color:#d7e0f0;white-space:pre}.codeblock button.copy{position:absolute;top:8px;right:8px;font-size:11px;padding:4px 9px;background:var(--panel-2);border:1px solid var(--border);border-radius:6px;color:var(--muted)}.codeblock button.copy:hover{color:var(--text)}.step{display:flex;gap:12px;margin:12px 0}.step .num{flex:0 0 26px;height:26px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px}.step .body{flex:1 1}.pill{display:inline-block;background:var(--panel-2);border:1px solid var(--border);border-radius:999px;padding:2px 10px;font-size:12px;color:var(--muted);margin:2px 4px 2px 0}.tip{border-left:3px solid var(--accent);padding:8px 12px;background:rgba(91,140,255,.08);border-radius:0 8px 8px 0;margin:10px 0}.container{padding:20px;max-width:1200px;margin:0 auto}button,input,select{background:var(--panel-2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:13px}button{cursor:pointer}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.seg button{border:0;border-radius:0;background:var(--panel-2)}.seg button.active{background:var(--accent);color:#fff}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:14px;gap:14px}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:16px}.kpi .label{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.kpi .value{font-size:26px;font-weight:700;margin-top:6px}.chart-card{grid-column:1/-1}.chart-title{font-weight:600;margin-bottom:8px}.login-wrap{min-height:100vh;display:grid;place-items:center}.login-card{width:340px}.login-card h1{font-size:18px;margin:0 0 4px}.login-card .sub{color:var(--muted);margin-bottom:16px}.login-card form{display:flex;flex-direction:column;gap:10px}.error{color:var(--bad);font-size:13px}.md{font-size:13.5px;line-height:1.6;color:var(--fg)}.md>:first-child{margin-top:0}.md h1,.md h2,.md h3{line-height:1.3;margin:18px 0 8px;font-weight:700}.md h1{font-size:19px}.md h2{font-size:16px;border-bottom:1px solid var(--border);padding-bottom:4px}.md h3{font-size:14px;color:var(--muted)}.md p{margin:8px 0}.md ol,.md ul{margin:8px 0;padding-left:22px}.md li{margin:3px 0}.md strong{color:var(--fg);font-weight:700}.md code{background:rgba(255,255,255,.07);padding:1px 5px;border-radius:4px;font-size:12px;font-family:ui-monospace,monospace}.md pre{background:rgba(0,0,0,.3);padding:12px;border-radius:8px;overflow-x:auto}.md pre code{background:none;padding:0}.md blockquote{border-left:3px solid var(--border);margin:8px 0;padding:2px 0 2px 12px;color:var(--muted)}.md table{border-collapse:collapse;width:100%;margin:10px 0;font-size:12.5px}.md td,.md th{border:1px solid var(--border);padding:5px 9px;text-align:left}.md th{background:rgba(255,255,255,.04)}.md hr{border:none;border-top:1px solid var(--border);margin:14px 0}.md a{color:var(--accent,#5b8cff)}.muted{color:var(--muted)}.tx-dash{display:grid;grid-gap:20px;gap:20px;margin-bottom:24px}.tx-table{width:100%;border-collapse:collapse;font-size:13px}.tx-table th{color:var(--muted);font-weight:500;text-align:left}.tx-table td,.tx-table th{padding:6px 10px;border-bottom:1px solid var(--border)}.tx-split{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.tx-value-bad{color:var(--bad);font-weight:700}.tx-value-good{color:var(--good);font-weight:700}