:root{--bg: #07080b;--bg-1: #0b0c10;--panel: #0e0f14;--panel-2: #13141a;--hover: rgba(255,255,255,.04);--line: rgba(255,255,255,.07);--line-2: rgba(255,255,255,.11);--line-3: rgba(255,255,255,.18);--text: #f3f4f6;--text-2: #a3a7b3;--text-3: #6b6f7c;--brand: #22d3ee;--brand-ink: #07080b;--s1: #3987e5;--s2: #d95926;--s3: #199e70;--seq-lo: #13141a;--seq-hi: #5598e7;--good: #2fbf86;--bad: #f06a6a;--warn: #e0a526;--gold: #fbbf24;--violet: #a78bfa;--shadow: 0 24px 60px -24px rgba(0,0,0,.8), 0 0 0 1px var(--line-2);--font: "Geist", "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--r: 12px;--ease: cubic-bezier(.22,1,.36,1);color-scheme:dark}:root[data-theme=light]{--bg: #f6f6f4;--bg-1: #fbfbfa;--panel: #ffffff;--panel-2: #f4f4f2;--hover: rgba(10,10,20,.035);--line: rgba(10,12,20,.08);--line-2: rgba(10,12,20,.12);--line-3: rgba(10,12,20,.2);--text: #0b0b0d;--text-2: #52514e;--text-3: #8a8a86;--brand: #0891b2;--brand-ink: #ffffff;--s1: #2a78d6;--s2: #eb6834;--s3: #1baf7a;--seq-lo: #f0f3f7;--seq-hi: #1c5cab;--good: #128a5c;--bad: #d23c3c;--warn: #b77900;--gold: #b7791f;--violet: #6d4fd8;--shadow: 0 20px 50px -24px rgba(20,20,40,.25), 0 0 0 1px var(--line-2);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv11"}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit}svg{display:block}[hidden]{display:none!important}.num,td.n,.kpi-val,.tab-num{font-variant-numeric:tabular-nums}::selection{background:color-mix(in srgb,var(--brand) 35%,transparent)}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px}kbd{font:500 11px/1 var(--mono);padding:3px 5px;border-radius:5px;border:1px solid var(--line-2);color:var(--text-3);background:var(--panel-2)}.gate{position:fixed;inset:0;display:grid;place-items:center;padding:24px;overflow:hidden}.gate-glow{position:absolute;width:900px;height:900px;left:50%;top:40%;transform:translate(-50%,-50%);background:radial-gradient(closest-side,color-mix(in srgb,var(--s1) 22%,transparent),transparent 70%);filter:blur(30px);opacity:.7;pointer-events:none}.gate-card{position:relative;width:min(400px,100%);text-align:center;padding:40px 32px 28px;border-radius:20px;background:color-mix(in srgb,var(--panel) 86%,transparent);backdrop-filter:blur(20px);box-shadow:var(--shadow);animation:rise .6s var(--ease) both}.gate-mark{width:52px;height:52px;margin:0 auto 18px;filter:drop-shadow(0 10px 24px color-mix(in srgb,var(--s1) 45%,transparent))}.gate-mark svg{width:100%;height:100%}.gate-eyebrow{margin:0;font:500 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.gate-title{margin:8px 0 6px;font-size:26px;font-weight:600;letter-spacing:-.02em}.gate-sub{margin:0 auto 24px;max-width:300px;color:var(--text-2)}.gate-actions{display:grid;gap:10px}.gate-foot{margin:22px 0 0;font-size:13px}.gate-foot a{color:var(--text-3);text-decoration:none}.gate-foot a:hover{color:var(--text)}.gate .who{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--line-2);text-align:left;margin-bottom:4px}.gate .who img{width:32px;height:32px;border-radius:50%}.gate .who b{display:block;font-weight:600;font-size:13px}.gate .who span{font-size:12px;color:var(--text-3)}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-3);border-top-color:var(--text);animation:spin .8s linear infinite;margin:0 auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 14px;border-radius:10px;border:1px solid var(--line-2);background:var(--panel-2);font-weight:500;font-size:13px;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,transform .1s;white-space:nowrap}.btn:hover{background:var(--hover);border-color:var(--line-3)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.btn-primary{background:var(--text);color:var(--bg);border-color:transparent}.btn-primary:hover{background:color-mix(in srgb,var(--text) 88%,var(--bg))}.btn-lg{height:44px;border-radius:12px;font-size:14px}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn-ghost:hover{color:var(--text)}.btn-danger{color:var(--bad)}.btn-danger:hover{background:color-mix(in srgb,var(--bad) 10%,transparent);border-color:color-mix(in srgb,var(--bad) 40%,transparent)}.btn-sm{height:28px;padding:0 10px;font-size:12px;border-radius:8px}.google-ic{width:16px;height:16px}.icon-btn{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--line);background:transparent;cursor:pointer;color:var(--text-2)}.icon-btn:hover{color:var(--text);background:var(--hover);border-color:var(--line-2)}.icon-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-btn.spin svg{animation:spin .8s linear infinite}[data-theme=dark] .i-sun,[data-theme=light] .i-moon{display:none}.app{display:grid;grid-template-columns:236px 1fr;min-height:100vh}.side{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:18px 12px;border-right:1px solid var(--line);background:var(--bg-1);z-index:30}.side-brand{display:flex;align-items:center;gap:10px;padding:4px 8px 18px;text-decoration:none}.side-mark{width:26px;height:26px;flex:none}.side-mark svg{width:100%;height:100%}.side-word{font-weight:500;letter-spacing:-.01em;color:var(--text-2)}.side-word b{color:var(--text);font-weight:600}.side-nav{display:grid;gap:2px}.side-sec{margin:14px 10px 6px;font:500 10.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.side-item{position:relative;display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:9px;text-decoration:none;color:var(--text-2);font-weight:500}.side-item svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.side-item:hover{color:var(--text);background:var(--hover)}.side-item[aria-current=page]{color:var(--text);background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line)}.side-item[aria-current=page]:before{content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:var(--brand)}.side-item .count{margin-left:auto;font:500 11px/1 var(--mono);color:var(--text-3)}.side-foot{margin-top:auto;display:grid;gap:4px}.side-cmd,.side-link{display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--text-2);cursor:pointer;text-decoration:none;font-size:13px}.side-link{border-color:transparent}.side-cmd:hover,.side-link:hover{color:var(--text);background:var(--hover)}.side-cmd kbd{margin-left:auto}.side-cmd svg,.side-link svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.main{min-width:0;display:flex;flex-direction:column}.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;padding:14px 28px;min-height:68px;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--line)}.top-title{min-width:0}.top-title h1{margin:0;font-size:17px;font-weight:600;letter-spacing:-.015em}.top-sub{margin:0;font-size:12px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top-right{margin-left:auto;display:flex;align-items:center;gap:8px}.menu-btn{display:none}.seg{display:inline-flex;padding:3px;border-radius:10px;border:1px solid var(--line);background:var(--bg-1)}.seg button{height:26px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--text-3);font:500 12px/1 var(--mono);cursor:pointer}.seg button:hover{color:var(--text)}.seg button[aria-checked=true]{background:var(--panel-2);color:var(--text);box-shadow:0 0 0 1px var(--line-2),0 1px 2px #0000004d}.live-pill{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:999px;border:1px solid var(--line);font-size:12px;color:var(--text-2)}.live-pill i{width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 color-mix(in srgb,var(--good) 60%,transparent);animation:pulse 2s infinite}.live-pill.zero i{background:var(--text-3);animation:none}.live-pill b{font-variant-numeric:tabular-nums;color:var(--text);font-weight:600}.me{position:relative}.me-btn{display:flex;align-items:center;gap:8px;height:34px;padding:0 10px 0 3px;border-radius:999px;border:1px solid var(--line);background:transparent;cursor:pointer}.me-btn:hover{background:var(--hover)}.me-btn img{width:26px;height:26px;border-radius:50%;background:var(--panel-2)}.me-role{font:500 11px/1 var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--text-2)}.me-menu{position:absolute;right:0;top:calc(100% + 8px);width:240px;padding:12px;border-radius:14px;background:var(--panel);box-shadow:var(--shadow);animation:pop .18s var(--ease)}.me-name{margin:0;font-weight:600}.me-email{margin:0 0 10px;font-size:12px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis}.me-menu button{width:100%;height:32px;border-radius:8px;border:1px solid var(--line);background:transparent;cursor:pointer;color:var(--text-2)}.me-menu button:hover{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 40%,transparent)}.view{padding:24px 28px 64px;max-width:1480px;width:100%;outline:none}.view.loading>*{opacity:.55;transition:opacity .2s}.view>*{animation:rise .45s var(--ease) both}.view>*:nth-child(2){animation-delay:.03s}.view>*:nth-child(3){animation-delay:.06s}.view>*:nth-child(4){animation-delay:.09s}.view>*:nth-child(5){animation-delay:.12s}.grid{display:grid;gap:16px;margin-bottom:16px}.g-kpi{grid-template-columns:repeat(6,minmax(0,1fr))}.g-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-21{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.g-12{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:18px;min-width:0}.card-h{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.card-h h2{margin:0;font-size:14px;font-weight:600;letter-spacing:-.01em}.card-h p{margin:2px 0 0;font-size:12px;color:var(--text-3)}.card-h .right{margin-left:auto;display:flex;gap:6px;align-items:center}.card.flush{padding:0;overflow:hidden}.card.flush .card-h{padding:18px 18px 0}.kpi{padding:16px 16px 12px;display:flex;flex-direction:column;gap:6px;overflow:hidden;cursor:default}.kpi-label{font-size:12px;color:var(--text-2);display:flex;align-items:center;gap:6px}.kpi-val{font-size:26px;font-weight:600;letter-spacing:-.03em;line-height:1.1}.kpi-val small{font-size:13px;font-weight:500;color:var(--text-3);letter-spacing:0;margin-left:2px}.kpi-foot{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-3);min-height:18px}.kpi .spark{height:34px;margin:4px -16px -12px}.delta{display:inline-flex;align-items:center;gap:3px;font-weight:600;font-size:12px;font-variant-numeric:tabular-nums}.delta svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.delta.up{color:var(--good)}.delta.down{color:var(--bad)}.delta.flat{color:var(--text-3)}.pulse{display:flex;flex-wrap:wrap;align-items:stretch;gap:0;padding:0;margin-bottom:16px}.pulse>div{flex:1 1 140px;padding:14px 18px;border-right:1px solid var(--line);min-width:0}.pulse>div:last-child{border-right:0;flex:3 1 300px}.pulse .pl{font-size:12px;color:var(--text-3)}.pulse .pv{font-size:20px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:999px;border:1px solid var(--line);font-size:12px;color:var(--text-2);white-space:nowrap}.chip b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.chip i{width:6px;height:6px;border-radius:50%;background:var(--good)}.tabs{display:flex;gap:2px;flex-wrap:wrap}.tab{border:0;background:transparent;padding:8px 12px 10px;border-radius:9px;cursor:pointer;text-align:left;min-width:112px}.tab:hover{background:var(--hover)}.tab .tl{display:block;font-size:12px;color:var(--text-3)}.tab .tv{display:block;font-size:18px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.tab[aria-selected=true]{background:var(--panel-2);box-shadow:inset 0 0 0 1px var(--line),inset 0 -2px 0 var(--s1)}.tab[aria-selected=true] .tl{color:var(--text-2)}.chart{position:relative;width:100%}.chart svg{width:100%;height:100%;overflow:visible}.chart .grid-l{stroke:var(--line);stroke-width:1;shape-rendering:crispEdges}.chart .axis-t{fill:var(--text-3);font:400 11px/1 var(--mono)}.chart .line{fill:none;stroke:var(--s1);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart .line.prev{stroke:var(--text-3);stroke-dasharray:3 4;stroke-width:1.5;opacity:.7}.chart .area{fill:url(#area-g)}.chart .xhair{stroke:var(--line-3);stroke-width:1}.chart .dot{fill:var(--s1);stroke:var(--panel);stroke-width:2}.spark .line{stroke-width:1.5}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--text-2)}.legend span{display:inline-flex;align-items:center;gap:6px}.legend i{width:14px;height:2px;border-radius:2px;background:var(--s1)}.legend i.dash{background:repeating-linear-gradient(90deg,var(--text-3) 0 3px,transparent 3px 7px)}.legend i.sw{width:10px;height:10px;border-radius:3px}.bars{display:grid;gap:2px}.bar-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:7px 10px;border-radius:8px;min-height:34px}.bar-row:hover{background:var(--hover)}.bar-row .bar-bg{position:absolute;left:10px;right:10px;bottom:3px;height:3px;border-radius:3px;background:var(--line);overflow:hidden}.bar-row .bar-fg{height:100%;border-radius:3px;background:var(--s1);transform-origin:left;animation:grow .8s var(--ease) both}.bar-row .bl{display:flex;align-items:center;gap:10px;min-width:0}.bar-row .bl span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-row .bv{font-variant-numeric:tabular-nums;font-weight:600;display:flex;gap:10px;align-items:baseline}.bar-row .bv small{font-weight:400;color:var(--text-3);font-size:12px}.gicon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;flex:none;font-size:13px;font-weight:700;color:#07080b}.funnel{display:grid;gap:10px}.f-step{display:grid;grid-template-columns:120px 1fr 64px;align-items:center;gap:12px}.f-step .fl{font-size:13px;color:var(--text-2)}.f-track{height:26px;border-radius:7px;background:var(--panel-2);overflow:hidden}.f-fill{height:100%;border-radius:7px;background:linear-gradient(90deg,color-mix(in srgb,var(--s1) 75%,transparent),var(--s1));transform-origin:left;animation:grow .9s var(--ease) both;display:flex;align-items:center;padding-left:8px;font:600 12px/1 var(--font);color:#fff;font-variant-numeric:tabular-nums;min-width:2px}.f-step .fr{text-align:right;font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}.f-step .fr b{display:block;color:var(--text);font-size:13px}.heat{display:grid;grid-template-columns:34px repeat(24,minmax(0,1fr));gap:3px;align-items:center}.heat .hl{font:400 11px/1 var(--mono);color:var(--text-3)}.heat .hc{aspect-ratio:1;border-radius:3px;min-width:0;cursor:default;transition:transform .12s}.heat .hc:hover{outline:1.5px solid var(--text);outline-offset:1px}.heat .hx{font:400 10px/1 var(--mono);color:var(--text-3);text-align:center}.scale{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-3);margin-top:12px}.scale .ramp{width:120px;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--seq-lo),var(--seq-hi))}.donut-wrap{display:flex;align-items:center;gap:20px}.donut{width:132px;height:132px;flex:none;position:relative}.donut .dc{position:absolute;inset:0;display:grid;place-items:center;text-align:center;pointer-events:none}.donut .dc b{display:block;font-size:20px;font-weight:600;font-variant-numeric:tabular-nums}.donut .dc span{font-size:11px;color:var(--text-3)}.donut path{cursor:default;transition:opacity .15s}.donut:hover path:not(:hover){opacity:.5}.cohort{width:100%;border-collapse:separate;border-spacing:3px;font-variant-numeric:tabular-nums}.cohort th{font:500 11px/1 var(--mono);color:var(--text-3);text-align:center;padding:4px}.cohort th:first-child,.cohort td:first-child{text-align:left;white-space:nowrap}.cohort td{height:30px;text-align:center;font-size:12px;border-radius:5px;padding:0 4px}.cohort td.sz{color:var(--text-3);text-align:right;padding-right:8px}.cohort td.empty{background:transparent}.tbl-wrap{overflow-x:auto}table.tbl{width:100%;border-collapse:collapse;font-size:13px}.tbl th{position:sticky;top:0;text-align:left;font:500 11px/1 var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);padding:12px 14px;border-bottom:1px solid var(--line);background:var(--panel);white-space:nowrap}.tbl th.n,.tbl td.n{text-align:right}.tbl th[data-sort]{cursor:pointer;user-select:none}.tbl th[data-sort]:hover,.tbl th[aria-sort]{color:var(--text)}.tbl th[aria-sort=descending]:after{content:" ↓"}.tbl th[aria-sort=ascending]:after{content:" ↑"}.tbl td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}.tbl tbody tr{transition:background .12s}.tbl tbody tr:hover{background:var(--hover)}.tbl tbody tr:last-child td{border-bottom:0}.tbl .muted{color:var(--text-3)}.tbl .strong{font-weight:600}.cell-user{display:flex;align-items:center;gap:10px;min-width:200px}.ava{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:600;font-size:12px;color:#07080b;flex:none}.cell-user b{display:block;font-weight:500}.cell-user span{font-size:12px;color:var(--text-3)}.mini-bar{display:inline-block;width:56px;height:4px;border-radius:4px;background:var(--line-2);vertical-align:middle;margin-left:8px;overflow:hidden}.mini-bar i{display:block;height:100%;background:var(--s1);border-radius:4px}.badge{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:999px;font:500 11px/1 var(--font);border:1px solid var(--line-2);color:var(--text-2);white-space:nowrap}.badge svg{width:11px;height:11px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.badge.pro{color:var(--gold);border-color:color-mix(in srgb,var(--gold) 40%,transparent);background:color-mix(in srgb,var(--gold) 9%,transparent)}.badge.basic{color:var(--s1);border-color:color-mix(in srgb,var(--s1) 40%,transparent);background:color-mix(in srgb,var(--s1) 9%,transparent)}.badge.good{color:var(--good);border-color:color-mix(in srgb,var(--good) 35%,transparent);background:color-mix(in srgb,var(--good) 9%,transparent)}.badge.bad{color:var(--bad);border-color:color-mix(in srgb,var(--bad) 35%,transparent);background:color-mix(in srgb,var(--bad) 9%,transparent)}.badge.warn{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 35%,transparent);background:color-mix(in srgb,var(--warn) 9%,transparent)}.badge.violet{color:var(--violet);border-color:color-mix(in srgb,var(--violet) 40%,transparent);background:color-mix(in srgb,var(--violet) 9%,transparent)}.badge.owner{color:var(--text);border-color:var(--line-3);background:var(--panel-2)}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.search{position:relative;flex:1 1 260px;max-width:380px}.search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);width:15px;height:15px;fill:none;stroke:var(--text-3);stroke-width:1.9;stroke-linecap:round}.input,.search input,select.input,textarea.input{width:100%;height:36px;padding:0 12px;border-radius:10px;border:1px solid var(--line-2);background:var(--bg-1);outline:none;transition:border-color .15s,box-shadow .15s}.search input{padding-left:34px}.input:focus,.search input:focus,textarea.input:focus{border-color:color-mix(in srgb,var(--s1) 70%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--s1) 20%,transparent)}textarea.input{height:180px;padding:12px;font:12px/1.55 var(--mono);resize:vertical}.spacer{flex:1}.pager{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-top:1px solid var(--line);font-size:12px;color:var(--text-3)}.empty{padding:36px 18px;text-align:center;color:var(--text-3)}.empty b{display:block;color:var(--text-2);font-weight:600;margin-bottom:4px}.empty svg{width:30px;height:30px;margin:0 auto 10px;fill:none;stroke:var(--text-3);stroke-width:1.5}.note{display:flex;gap:10px;padding:12px 14px;border-radius:10px;background:var(--panel-2);border:1px solid var(--line);font-size:13px;color:var(--text-2)}.note svg{width:16px;height:16px;flex:none;margin-top:2px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.demo-flag{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 8px;border-radius:999px;font:500 11px/1 var(--mono);color:var(--warn);border:1px dashed color-mix(in srgb,var(--warn) 55%,transparent)}.dem{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px;border-radius:8px}.dem:hover{background:var(--hover)}.dem .dt{min-width:0}.dem .dt b{display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dem .dt span{font-size:12px;color:var(--text-3)}.dem .dn{font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.dem .dn small{display:block;font-weight:400;font-size:11px;color:var(--text-3)}.lib{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.subj{display:flex;flex-direction:column;gap:12px;padding:16px;transition:border-color .15s,transform .2s var(--ease)}.subj:hover{border-color:var(--line-3)}.subj.hidden-s{opacity:.72}.subj-h{display:flex;gap:12px;align-items:flex-start}.subj-ic{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-weight:700;color:#fff;flex:none;background:linear-gradient(135deg,var(--violet),color-mix(in srgb,var(--violet) 55%,#1e1b4b));box-shadow:inset 0 1px #ffffff40}.subj-h h3{margin:0;font-size:15px;font-weight:600;letter-spacing:-.01em}.subj-h p{margin:2px 0 0;font-size:12px;color:var(--text-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.star{margin-left:auto;width:30px;height:30px;border-radius:8px;border:1px solid transparent;background:transparent;cursor:pointer;display:grid;place-items:center;color:var(--text-3);flex:none}.star:hover{border-color:var(--line-2);color:var(--text)}.star.on{color:var(--gold)}.star svg{width:16px;height:16px;fill:currentColor}.star:not(.on) svg{fill:none;stroke:currentColor;stroke-width:1.8}.subj-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-radius:10px;overflow:hidden;border:1px solid var(--line)}.subj-stats div{background:var(--panel);padding:8px 10px}.subj-stats b{display:block;font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.subj-stats span{font-size:11px;color:var(--text-3)}.subj-f{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.subj-f .spacer{flex:1}.switch{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:12px;color:var(--text-2);user-select:none}.switch input{position:absolute;opacity:0}.switch .tr{width:30px;height:18px;border-radius:999px;background:var(--line-3);position:relative;transition:background .2s}.switch .tr:after{content:"";position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s var(--ease);box-shadow:0 1px 2px #0006}.switch input:checked+.tr{background:var(--good)}.switch input:checked+.tr:after{transform:translate(12px)}.switch input:focus-visible+.tr{outline:2px solid var(--brand);outline-offset:2px}.drawer{position:fixed;inset:0;z-index:60}.drawer-scrim{position:absolute;inset:0;background:#0000008c;backdrop-filter:blur(3px);animation:fade .2s both}.drawer-panel{position:absolute;right:0;top:0;bottom:0;width:min(620px,100%);background:var(--bg-1);border-left:1px solid var(--line-2);display:flex;flex-direction:column;animation:slide .35s var(--ease) both}.dr-h{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--line)}.dr-h h2{margin:0;font-size:16px;font-weight:600}.dr-h p{margin:2px 0 0;font-size:12px;color:var(--text-3)}.dr-h .icon-btn{margin-left:auto}.dr-b{flex:1;overflow-y:auto;padding:20px 22px;display:grid;gap:18px;align-content:start}.dr-f{display:flex;gap:10px;align-items:center;padding:14px 22px;border-top:1px solid var(--line);background:var(--panel)}.dr-f .spacer{flex:1}.drop{display:grid;place-items:center;gap:6px;text-align:center;padding:30px 20px;border-radius:14px;border:1.5px dashed var(--line-3);background:var(--panel);cursor:pointer;transition:border-color .15s,background .15s}.drop:hover,.drop.over{border-color:var(--s1);background:color-mix(in srgb,var(--s1) 6%,var(--panel))}.drop svg{width:28px;height:28px;fill:none;stroke:var(--text-2);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.drop b{font-weight:600}.drop span{font-size:12px;color:var(--text-3)}.field{display:grid;gap:6px}.field>label,.lbl{font-size:12px;font-weight:500;color:var(--text-2)}.or{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-3);font-family:var(--mono);text-transform:uppercase;letter-spacing:.1em}.or:before,.or:after{content:"";flex:1;height:1px;background:var(--line)}.report{border-radius:14px;border:1px solid var(--line-2);background:var(--panel);overflow:hidden}.report-h{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}.report-h h3{margin:0;font-size:15px}.report-h p{margin:0;font-size:12px;color:var(--text-3)}.report-stats{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.report-stats div{padding:12px 16px;border-right:1px solid var(--line)}.report-stats div:last-child{border-right:0}.report-stats b{display:block;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.report-stats span{font-size:11px;color:var(--text-3)}.report-b{padding:14px 16px;display:grid;gap:12px}.tiers{display:flex;height:8px;border-radius:6px;overflow:hidden;gap:2px}.tiers i{display:block;height:100%}.warns{display:grid;gap:6px;margin:0;padding:0;list-style:none}.warns li{display:flex;gap:8px;font-size:12.5px;color:var(--text-2)}.warns li svg{width:14px;height:14px;flex:none;margin-top:2px;fill:none;stroke:var(--warn);stroke-width:2;stroke-linecap:round}.sample{display:grid;gap:8px}.sample .q{padding:10px 12px;border-radius:10px;background:var(--panel-2);font-size:13px}.sample .q b{font-weight:500;display:block;margin-bottom:6px}.sample .q span{display:inline-block;font-size:12px;padding:2px 8px;border-radius:999px;border:1px solid var(--line-2);margin:0 4px 4px 0;color:var(--text-2)}.sample .q span.ok{color:var(--good);border-color:color-mix(in srgb,var(--good) 45%,transparent)}.games-in{display:flex;flex-wrap:wrap;gap:6px}.err-box{padding:12px 14px;border-radius:10px;border:1px solid color-mix(in srgb,var(--bad) 40%,transparent);background:color-mix(in srgb,var(--bad) 8%,transparent);color:var(--bad);font-size:13px}.queue{display:grid;gap:6px}.queue-i{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;border:1px solid var(--line);font-size:13px;cursor:pointer;background:transparent;text-align:left;width:100%}.queue-i[aria-current=true]{border-color:var(--s1);background:color-mix(in srgb,var(--s1) 7%,transparent)}.queue-i .qs{margin-left:auto}details.guide{border:1px solid var(--line);border-radius:12px;background:var(--panel)}details.guide summary{cursor:pointer;padding:12px 14px;font-weight:500;font-size:13px;list-style:none;display:flex;align-items:center;gap:8px}details.guide summary:before{content:"›";font-size:16px;color:var(--text-3);transition:transform .2s}details.guide[open] summary:before{transform:rotate(90deg)}details.guide pre{margin:0;padding:0 14px 14px;font:12px/1.6 var(--mono);color:var(--text-2);white-space:pre-wrap}.check-row{display:flex;gap:18px;flex-wrap:wrap}.team-add{display:grid;grid-template-columns:minmax(0,1fr) 160px auto;gap:10px}.roles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.role-card{padding:14px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2)}.role-card b{display:flex;align-items:center;gap:8px;margin-bottom:4px}.role-card p{margin:0;font-size:12.5px;color:var(--text-2)}.feed{list-style:none;margin:0;padding:0}.feed li{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);align-items:start}.feed li:last-child{border-bottom:0}.feed .fi{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:var(--panel-2);border:1px solid var(--line)}.feed .fi svg{width:14px;height:14px;fill:none;stroke:var(--text-2);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.feed .ft{font-size:13px}.feed .ft b{font-weight:600}.feed .ft span{color:var(--text-3)}.feed time{font-size:12px;color:var(--text-3);white-space:nowrap}.multiples{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.mult{padding:14px 14px 8px}.mult-h{display:flex;align-items:center;gap:10px;margin-bottom:6px}.mult-h b{font-weight:600;font-size:13px}.mult-h span{margin-left:auto;font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.mult .chart{height:70px}.tip{position:fixed;z-index:90;pointer-events:none;min-width:120px;max-width:280px;padding:9px 11px;border-radius:10px;background:var(--panel);box-shadow:var(--shadow);font-size:12px;transform:translate(-50%,calc(-100% - 12px))}.tip .th{color:var(--text-3);margin-bottom:4px;font-family:var(--mono);font-size:11px}.tip .tr{display:flex;align-items:center;gap:8px}.tip .tr i{width:12px;height:2px;border-radius:2px;background:var(--s1)}.tip .tr b{font-weight:600;font-size:13px;font-variant-numeric:tabular-nums}.tip .tr span{color:var(--text-2)}.toasts{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:95;display:grid;gap:8px;justify-items:center;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:var(--text);color:var(--bg);font-weight:500;font-size:13px;box-shadow:0 10px 30px -10px #0009;animation:toast .35s var(--ease) both;pointer-events:auto}.toast.err{background:var(--bad);color:#fff}.toast button{border:0;background:transparent;color:inherit;font-weight:600;text-decoration:underline;cursor:pointer;padding:0}.cmd{position:fixed;inset:0;z-index:80;background:#00000080;backdrop-filter:blur(4px);display:grid;justify-items:center;align-items:start;padding-top:14vh;animation:fade .15s both}.cmd-panel{width:min(560px,calc(100% - 32px));border-radius:16px;background:var(--panel);box-shadow:var(--shadow);overflow:hidden;animation:pop .2s var(--ease) both}.cmd-input{display:flex;align-items:center;gap:10px;padding:0 16px;border-bottom:1px solid var(--line)}.cmd-input svg{width:17px;height:17px;fill:none;stroke:var(--text-3);stroke-width:1.9;stroke-linecap:round;flex:none}.cmd-input input{flex:1;height:52px;border:0;background:transparent;outline:none;font-size:15px}.cmd-list{list-style:none;margin:0;padding:6px;max-height:360px;overflow-y:auto}.cmd-list li{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;cursor:pointer;color:var(--text-2)}.cmd-list li svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.cmd-list li[aria-selected=true]{background:var(--panel-2);color:var(--text)}.cmd-list li small{margin-left:auto;color:var(--text-3);font-size:11px}.cmd-list .cmd-sec{padding:8px 10px 4px;font:500 10.5px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);cursor:default}.sk{border-radius:8px;background:linear-gradient(90deg,var(--panel-2) 25%,var(--hover) 50%,var(--panel-2) 75%);background-size:200% 100%;animation:shimmer 1.3s infinite}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.97) translateY(-4px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}}@keyframes slide{0%{transform:translate(40px);opacity:0}}@keyframes grow{0%{transform:scaleX(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes toast{0%{opacity:0;transform:translateY(10px) scale(.98)}}@keyframes pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--good) 55%,transparent)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}@media (max-width: 1280px){.g-kpi{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 1080px){.g-21,.g-12,.g-3{grid-template-columns:minmax(0,1fr)}.roles{grid-template-columns:1fr}}@media (max-width: 860px){.app{grid-template-columns:1fr}.side{position:fixed;left:0;top:0;bottom:0;width:260px;transform:translate(-100%);transition:transform .3s var(--ease);box-shadow:var(--shadow)}.side.open{transform:none}.scrim:not([hidden]){position:fixed;inset:0;z-index:25;background:#00000080}.menu-btn{display:grid}.top{padding:12px 16px;flex-wrap:wrap}.top-right{width:100%;order:3}.live-pill,.me-role{display:none}.view{padding:16px 16px 48px}.g-2{grid-template-columns:minmax(0,1fr)}.g-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.team-add{grid-template-columns:1fr}.report-stats{grid-template-columns:repeat(2,1fr)}.f-step{grid-template-columns:90px 1fr 52px}.heat{grid-template-columns:28px repeat(24,minmax(0,1fr));gap:2px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.lesson-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px 16px}.lesson-tile{display:flex;flex-direction:column;gap:10px;min-width:0}.lesson-tile-f{display:flex;align-items:center;gap:8px;padding:0 2px}.promo-hero{display:grid;grid-template-columns:220px 1fr;gap:26px;align-items:center;overflow:hidden;padding:22px}.promo-hero-art{position:relative;height:200px;border-radius:14px;overflow:hidden;background:#07070d;box-shadow:inset 0 0 0 1px var(--line-2)}.promo-hero-art i{position:absolute;width:150px;height:150px;border-radius:50%;filter:blur(28px);opacity:.85;animation:promo-drift 9s ease-in-out infinite alternate}.promo-hero-art i:nth-child(1){background:#22d3ee;left:-30px;top:-20px}.promo-hero-art i:nth-child(2){background:#818cf8;right:-40px;top:40px;animation-delay:-3s}.promo-hero-art i:nth-child(3){background:#f472b6;left:30px;bottom:-60px;animation-delay:-6s}.promo-hero-art:after{content:"Stop the scroll.";position:absolute;inset:auto 16px 18px;font:800 26px/1 var(--font);letter-spacing:-.03em;color:#fff}@keyframes promo-drift{to{transform:translate(30px,20px) scale(1.15)}}@media (prefers-reduced-motion: reduce){.promo-hero-art i{animation:none}}.promo-hero .eyebrow{margin:0 0 6px;font:500 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.promo-hero h2{margin:0 0 8px;font-size:20px;letter-spacing:-.02em}.promo-hero-copy>p:not(.eyebrow){margin:0;color:var(--text-2);max-width:640px;line-height:1.6}.promo-hero-cta{margin-top:16px}@media (max-width: 720px){.promo-hero{grid-template-columns:1fr}.promo-hero-art{height:150px}}
