:root{--bg: #000000;--bg-elevated: #0c0c10;--surface: #16151c;--surface-2: #1c1b24;--border: #2a2834;--border-soft: rgba(255, 255, 255, .08);--text: #f5f5f7;--muted: #9b9ba7;--accent: #7b61ff;--accent-2: #2ec5ff;--accent-hot: #ff6b9d;--ok: #3dffb5;--warn: #f5b942;--danger: #ff6b9d;--font: "IBM Plex Sans", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--nav-h: 64px;--max: 1200px;--radius: 16px;--radius-sm: 12px;--radius-control: 4px;--control-bg: #2b2d30;--control-bg-hover: #393b40;--control-border: #4e5157;--control-border-hover: #6f737a;--ease: cubic-bezier(.25, .1, .25, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--glow: 0 0 80px rgba(123, 97, 255, .35);--select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2.5 4.5L6 8l3.5-3.5' stroke='%9b9ba7' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font);font-size:16px;line-height:1.55;color:var(--text);background:radial-gradient(900px 480px at 15% -10%,rgba(123,97,255,.22),transparent 55%),radial-gradient(700px 400px at 100% 0%,rgba(46,197,255,.08),transparent 50%),var(--bg);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:#c4b5ff}@keyframes pp-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes pp-fade{0%{opacity:0}to{opacity:1}}@keyframes pp-pop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:none}}@keyframes pp-slide-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}code,.mono{font-family:var(--mono);font-size:.9em}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1.5rem;background:#0c0c10d9;border-bottom:1px solid var(--border-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:.55rem;color:var(--text);text-decoration:none}.brand:hover{color:var(--text)}.brand img{width:28px;height:28px;display:block}.nav-wordmark{font-weight:700;letter-spacing:.04em;font-size:.95rem}.brand em{font-style:normal;color:var(--muted);font-weight:500;margin-left:.25rem;font-size:.85rem}.topbar-right{display:flex;align-items:center;gap:.75rem}.main{width:min(100% - 2.5rem,var(--max));margin:0 auto;padding:2rem 0 4rem;flex:1}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.page{width:100%}.page.narrow{max-width:560px}.page.board{max-width:var(--max);width:100%;min-width:0;overflow-x:clip}.product-board .page-hero{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem 1.5rem;margin-bottom:1.25rem;animation:pp-enter .45s var(--ease-out) both}.page-hero-title{margin:0 0 .35rem;font-size:clamp(1.65rem,2.4vw,2.1rem);letter-spacing:-.02em;line-height:1.15}.page-hero-promise{margin:0 0 .35rem;font-size:1.05rem;font-weight:500;color:var(--text);max-width:36rem}.page-hero-why{margin:0 0 .65rem;font-size:.9rem;color:var(--muted);max-width:40rem}.page-toolbar.meter-toolbar{margin:0 0 1.35rem;padding:.85rem 1rem;border:1px solid var(--border-soft);border-radius:14px;background:#ffffff05}.kpi-drama{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.75rem;margin-bottom:1.5rem}.kpi-drama .kpi-row{display:contents}.kpi-drama .stat,.kpi-drama .kpi-card,.kpi-drama .kpi{padding:.85rem 1rem;border:1px solid var(--border-soft);border-radius:12px;background:linear-gradient(165deg,#7b61ff14,#00000040);animation:pp-enter .5s var(--ease-out) both}.kpi-drama .stat:nth-child(2),.kpi-drama .kpi-card:nth-child(2),.kpi-drama .kpi:nth-child(2){animation-delay:.04s}.kpi-drama .stat:nth-child(3),.kpi-drama .kpi-card:nth-child(3),.kpi-drama .kpi:nth-child(3){animation-delay:.08s}.kpi-drama .stat:nth-child(4),.kpi-drama .kpi-card:nth-child(4),.kpi-drama .kpi:nth-child(4){animation-delay:.12s}.kpi-drama .stat strong,.kpi-drama .kpi-card .kpi-value,.kpi-drama .kpi strong{display:block;font-size:1.55rem;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.2}.kpi-drama .stat span,.kpi-drama .kpi-card .kpi-label,.kpi-drama .kpi .kpi-label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.page-boards{display:grid;gap:1.25rem}.page-boards>.ov-panel,.board-section{margin-top:0}.board-section-head{flex-direction:column;align-items:flex-start;gap:.25rem}.board-hint,.board-how{margin:0;max-width:42rem}.board-how{margin:-.35rem 0 .75rem}.meter-slice-product{display:grid;gap:.55rem}.meter-slice-intro{margin:0}.slice-label{display:block;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem}.slice-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.slice-chip{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;border:1px solid var(--border-soft);background:#7b61ff1f;font-size:.78rem;color:var(--text)}.btn-sm{padding:.25rem .65rem;font-size:.8rem}.data-table th{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.data-table td.cell-name,.data-table td.mono.cell-name{color:var(--muted);font-family:var(--mono);font-size:.85rem}.data-table td.cell-num,.data-table td.cell-num strong{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.data-table td.ok-num{color:var(--ok);font-weight:600}.data-table td.warn-num{color:var(--warn);font-weight:600}.ov-panel .table-wrap,.ov-panel .data-table-shell{border:none;background:transparent;padding:0}.ov-panel .data-table-empty,.ov-panel .data-table-locked{border-style:dashed}.page-intro{margin:0 0 1.5rem}.page-intro h1{margin:0 0 .4rem}.page-intro .lead{margin:0;max-width:36rem}.page>.error,.page>.auth-hint,.page-intro+.error,.page-intro+.auth-hint{margin:0 0 1.25rem}.field{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;max-width:18rem;margin:0;font-weight:500}.field-label{font-size:.72rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.section-title{margin:0 0 .85rem;font-size:.95rem;font-weight:600;letter-spacing:-.01em}h1{margin:.15rem 0 .35rem;font-size:clamp(1.75rem,3vw,2.1rem);letter-spacing:-.02em;line-height:1.1;font-weight:700}h2{margin:0 0 .75rem;font-size:1.15rem}.eyebrow{display:inline-block;margin:0 0 .5rem;font-size:.8125rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#c4b5ff}.lead{margin:0;color:var(--muted);line-height:1.45}.muted{color:var(--muted)}.dim{opacity:.75}.badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;background:#7b61ff2e;color:#c4b5ff;font-size:.75rem;font-weight:600;border:1px solid rgba(123,97,255,.35)}.badge.soft{background:#ffffff0f;color:var(--muted);border-color:var(--border-soft)}.badge.preview{background:#f5b9421f;color:var(--warn);border-color:#f5b94259}.badge.ok{background:#3dffb51f;color:var(--ok);border-color:#3dffb559}.game-row-badges{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:.4rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border:1px solid transparent;border-radius:999px;padding:.55rem 1rem;font:inherit;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s var(--ease),border-color .15s var(--ease)}.btn:hover{text-decoration:none}.btn.primary,.btn-primary{background:#fff;color:#111}.btn.primary:hover{background:#e8e8ec;color:#111}.btn.ghost,.btn-ghost{background:transparent;border-color:var(--border);color:var(--text)}.btn.ghost:hover{border-color:#4a4658;background:#ffffff0a}.btn:disabled,.btn.disabled{opacity:.45;pointer-events:none}.auth{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:radial-gradient(800px 420px at 50% -20%,rgba(123,97,255,.28),transparent 60%),var(--bg)}.auth-card,.panel-block,.empty,.key-box{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--glow)}.auth-card{width:min(440px,100%);padding:1.75rem;display:flex;flex-direction:column;gap:.75rem;animation:pp-enter .45s var(--ease-out) both}.auth-card-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.auth-card .brand-row{display:flex;align-items:center;gap:.5rem}.auth-card .brand-row img{width:28px;height:28px}.auth-card label{display:flex;flex-direction:column;gap:.4rem;font-size:.9rem;color:var(--muted)}.auth-card label.check{flex-direction:row;align-items:flex-start;gap:.65rem;color:var(--text);font-weight:500;cursor:pointer}.auth-card input:not([type=checkbox]):not([type=radio]){background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:.7rem .85rem;font:inherit;line-height:1.35}.auth-card .btn.primary{width:100%;margin-top:.25rem;padding:.8rem 1rem}.auth-actions{display:flex;flex-wrap:wrap;gap:.5rem}.auth-hint{margin:0 0 1rem;padding:.75rem .85rem;border-radius:var(--radius-sm);background:#7b61ff1f;border:1px solid rgba(123,97,255,.28);color:#d7ceff;font-size:.9rem}label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:500}input:not([type=checkbox]):not([type=radio]),textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.6rem .75rem;background:var(--bg-elevated);color:var(--text)}input::placeholder{color:#6b6b78}input:not([type=checkbox]):not([type=radio]):focus,textarea:focus{outline:2px solid rgba(123,97,255,.45);border-color:var(--accent)}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;display:inline-flex;align-items:center;width:100%;max-width:100%;min-height:2rem;margin:0;padding:.35rem 1.85rem .35rem .65rem;font-family:var(--font);font-size:.8125rem;font-weight:500;line-height:1.35;color:var(--text);background-color:var(--control-bg);background-image:var(--select-chevron);background-repeat:no-repeat;background-position:right .55rem center;background-size:.75rem;border:1px solid var(--control-border);border-radius:var(--radius-control);box-shadow:inset 0 1px #ffffff08;cursor:pointer;transition:border-color .12s var(--ease),background-color .12s var(--ease),box-shadow .12s var(--ease)}select:hover:not(:disabled){background-color:var(--control-bg-hover);border-color:var(--control-border-hover)}select:focus,select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),inset 0 1px #ffffff08}select:disabled{opacity:.45;cursor:not-allowed}select option,select optgroup{background:var(--control-bg);color:var(--text)}input[type=checkbox],input[type=radio]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:1.05rem;height:1.05rem;margin:.15rem 0 0;padding:0;flex-shrink:0;border:none;border-radius:.25rem;background:transparent;accent-color:var(--accent, #7b61ff);cursor:pointer}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid rgba(123,97,255,.55);outline-offset:2px}.error{color:var(--danger);margin:0}.center{min-height:40vh;display:grid;place-items:center;color:var(--muted)}.game-list,.event-list,.key-list,.steps{list-style:none;padding:0;margin:0}.game-list{display:flex;flex-direction:column;gap:.65rem}.game-list li{animation:pp-enter .4s var(--ease-out) both}.game-list li:nth-child(1){animation-delay:.04s}.game-list li:nth-child(2){animation-delay:.08s}.game-list li:nth-child(3){animation-delay:.12s}.game-list li:nth-child(4){animation-delay:.16s}.game-list li:nth-child(5){animation-delay:.2s}.game-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit;text-decoration:none;transition:border-color .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease-out)}.game-row:hover{border-color:#7b61ff73;color:inherit;box-shadow:0 0 0 1px #7b61ff26;transform:translateY(-1px)}.game-row strong{display:block}.status{text-transform:uppercase;font-size:.72rem;font-weight:700;letter-spacing:.04em;padding:.25rem .55rem;border-radius:999px;background:#ffffff14;color:var(--muted)}.status.live{background:#3dffb51f;color:var(--ok)}.status.waiting{background:#f5b9421f;color:var(--warn)}.status.banned{background:#ff6b9d24;color:var(--danger)}.banner.warn{margin:0 0 1rem;padding:.85rem 1rem;border:1px solid rgba(245,185,66,.45);background:#f5b9421a;border-radius:var(--radius-sm);color:#f5d08a}.banner.danger{margin:0 0 1rem;padding:.85rem 1rem;border:1px solid rgba(255,107,157,.45);background:#ff6b9d1a;border-radius:var(--radius-sm);color:#ffb0c8}.banner.usage-banner{display:grid;gap:.45rem}.banner.usage-banner p{margin:0}.banner.usage-banner .btn{justify-self:start;margin-top:.15rem}.usage-block .subhead{margin-top:1.1rem}.usage-meters{display:grid;gap:.85rem;max-width:36rem}.usage-meter-meta{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem;margin-bottom:.35rem}.usage-track{position:relative;height:.55rem;border-radius:999px;background:#ffffff14}.usage-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent-2),var(--accent));min-width:2px;max-width:100%}.usage-fill.soft{background:linear-gradient(90deg,#e0a84a,#f5b942)}.usage-fill.hard{background:linear-gradient(90deg,#e86a8f,#ff6b9d)}.usage-soft-mark{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:-1px;background:#ffffff8c;pointer-events:none}.usage-tier-throttled{color:#f5d08a;font-family:var(--mono);font-size:.85em}.usage-bars{display:flex;align-items:flex-end;gap:.3rem;height:120px;margin:.35rem 0 .85rem}.usage-bar-col{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;gap:.25rem}.usage-bar-track{flex:1;width:100%;max-width:22px;display:flex;align-items:flex-end;background:#ffffff0d;border-radius:4px 4px 0 0}.usage-bar-fill{width:100%;min-height:2px;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--accent-2),var(--accent))}.usage-bar-col span{font-size:.62rem;color:var(--muted);font-family:var(--mono)}.danger-text{color:var(--danger)!important;border-color:#ff6b9d59!important}.row.wrap{flex-wrap:wrap}.suggest-list button.active{background:#7b61ff38}.empty{padding:2.5rem;text-align:center;display:grid;gap:1rem;justify-items:center;animation:pp-enter .45s var(--ease-out) both}.tabs{display:flex;gap:.35rem;margin-bottom:1rem;flex-wrap:wrap;border-bottom:1px solid var(--border-soft);padding-bottom:.5rem}.tabs button{border:1px solid transparent;background:transparent;font:inherit;font-weight:600;padding:.45rem .75rem;border-radius:999px;color:var(--muted);cursor:pointer}.tabs button.active{background:#7b61ff29;border-color:#7b61ff59;color:#d7ceff}.panel-block{padding:1.25rem 1.35rem 1.5rem}.steps{list-style:decimal;padding-left:1.2rem;display:grid;gap:.45rem;margin:1rem 0}.codeblock,.key-box code{font-family:var(--mono);font-size:.82rem}.codeblock{background:#0c0c10;color:#e8eef7;border:1px solid var(--border);padding:1rem;border-radius:var(--radius-sm);overflow-x:auto;white-space:pre-wrap}.key-box{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem;margin:1rem 0}.key-box.warn{border-color:#f5b94273;background:#f5b94214;box-shadow:none}.key-box code{flex:1;word-break:break-all;color:#d7ceff}.stack{display:grid;gap:.85rem;margin-top:1rem}.row{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.back{display:inline-block;margin-bottom:.75rem;color:var(--muted)}.event-row{display:grid;grid-template-columns:auto 1fr;gap:.75rem;padding:.85rem 0;border-bottom:1px solid var(--border-soft);align-items:start;cursor:pointer}.event-row strong{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.event-row span{display:block;margin-top:.15rem}.event-row input{margin-top:.35rem;accent-color:var(--accent)}.key-list li{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--border-soft)}.key-list li.revoked{opacity:.55;text-decoration:line-through}textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);padding:.6rem .75rem;background:var(--bg-elevated);color:var(--text);resize:vertical}.form-wide{max-width:720px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.check,.turnstile-dev,.meter-compare,.filter-check,.kill-switch{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:.65rem!important;font-weight:500;cursor:pointer}.check>span,.turnstile-dev>span,.meter-compare>span,.kill-switch>span{flex:1;min-width:0;line-height:1.4}.kill-switch{flex-wrap:wrap;gap:.35rem .65rem!important;padding:.85rem 0}.kill-switch>span.muted{flex-basis:100%;padding-left:calc(1.05rem + .65rem);margin:0}.tag-field{display:grid;gap:.4rem;margin-bottom:1rem}.tag-field-label{display:flex;justify-content:space-between;font-weight:600;font-size:.9rem}.tag-help{margin:0;font-size:.85rem;color:var(--muted)}.tag-chips{display:flex;flex-wrap:wrap;gap:.4rem;min-height:.5rem}.chip{border:1px solid rgba(123,97,255,.35);background:#7b61ff24;color:#d7ceff;border-radius:999px;padding:.25rem .65rem;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.chip.kind-primary{border-color:#2ec5ff66;background:#2ec5ff1f;color:#b8ecff}.chip.kind-subgenre{border-color:#3dffb559;background:#3dffb51a;color:#b8ffe0}.chip.kind-theme,.chip.kind-custom{border-color:#ff6b9d59;background:#ff6b9d1a;color:#ffd0e0}.tag-input-wrap{position:relative}.suggest-list{list-style:none;margin:.2rem 0 0;padding:.2rem;position:absolute;left:0;right:0;z-index:20;background:var(--control-bg);border:1px solid var(--control-border);border-radius:var(--radius-control);max-height:240px;overflow:auto;box-shadow:0 8px 24px #00000073,0 0 0 1px #00000059;animation:pp-pop .16s var(--ease-out) both}.suggest-list button{width:100%;display:flex;justify-content:space-between;gap:.75rem;text-align:left;padding:.35rem .5rem;border:none;background:transparent;color:var(--text);font:inherit;font-size:.8125rem;border-radius:var(--radius-control);cursor:pointer;transition:background .1s var(--ease)}.suggest-list button:hover,.suggest-list button.active{background:#7b61ff38}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.15rem 1.75rem;margin:0}.profile-grid>div{display:flex;flex-direction:column;gap:.35rem;min-width:0}.profile-grid dt{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0;line-height:1.2}.profile-grid dd{margin:0;font-weight:500;line-height:1.35;word-break:break-word}.live-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-top:.75rem}.live-table th,.live-table td{text-align:left;padding:.55rem .4rem;border-bottom:1px solid var(--border-soft);vertical-align:top}.live-table th{color:var(--muted);font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em}.kpi-row>.kpi,.kpi-row>div{animation:pp-enter .4s var(--ease-out) both}.kpi-row>.kpi:nth-child(1),.kpi-row>div:nth-child(1){animation-delay:.03s}.kpi-row>.kpi:nth-child(2),.kpi-row>div:nth-child(2){animation-delay:.07s}.kpi-row>.kpi:nth-child(3),.kpi-row>div:nth-child(3){animation-delay:.11s}.kpi-row>.kpi:nth-child(4),.kpi-row>div:nth-child(4){animation-delay:.15s}.kpi-row>.kpi:nth-child(5),.kpi-row>div:nth-child(5){animation-delay:.19s}.kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1rem;margin:1.25rem 0 1.75rem}.kpi-row-5{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.kpi-row>div{display:grid;gap:.25rem}.kpi-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.kpi-row strong{font-size:1.55rem;font-weight:650}.kpi-row .kpi-sm{font-size:.85rem;font-family:var(--mono);font-weight:500}.subhead{margin:1.5rem 0 .75rem;font-size:.95rem;font-weight:600}.bar-chart{display:flex;align-items:flex-end;gap:.35rem;height:120px;padding:.5rem 0 0}.bar-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:.3rem;min-width:0}.bar-col .bar{width:100%;max-width:28px;min-height:2px;background:linear-gradient(180deg,var(--accent-2),var(--accent));border-radius:4px 4px 0 0}.bar-col span{font-size:.65rem;color:var(--muted);font-family:var(--mono)}.funnel{display:grid;gap:.75rem;margin-top:1.25rem;max-width:420px}.funnel-step{display:flex;justify-content:space-between;align-items:baseline;padding:.85rem 0;border-bottom:1px solid var(--border-soft)}.funnel-step em{font-style:normal;color:var(--muted);font-weight:500;font-size:.9rem}.funnel-step.warn strong{color:var(--warn)}.brief-list{list-style:none;margin:1rem 0 0;padding:0}.brief-list li{padding:1rem 0;border-bottom:1px solid var(--border-soft)}.brief-list li.done{opacity:.55}.brief-list p{margin:.4rem 0 0}.sev{display:inline-block;font-size:.65rem;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .4rem;border-radius:4px;margin-right:.35rem;vertical-align:middle}.sev.high{background:#ff6b9d33;color:#ffb0c8}.sev.med{background:#f5b9422e;color:#f5d08a}.sev.watch{background:#2ec5ff26;color:#9adfff}.panel-block.locked{opacity:.85}.panel-block.locked h2:after{content:" · locked";color:var(--muted);font-weight:500;font-size:.85rem}@media(max-width:640px){.page-head{flex-direction:column}.topbar{padding:0 1rem}.topbar-right .mono{display:none}.grid-2,.profile-grid,.kpi-row{grid-template-columns:1fr 1fr}}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-topbar{height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0 1rem 0 .75rem;background:#0c0c10eb;border-bottom:1px solid var(--border-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:20}.topbar-left{display:flex;align-items:center;gap:.75rem;min-width:0}.icon-btn{padding:.35rem .55rem}.game-switcher,.lang-select{display:inline-flex;align-items:center;margin:0}.game-switcher select,.lang-select select{width:auto;min-width:7.5rem;max-width:11rem}.sync-badge{font-size:.72rem;color:var(--muted);border:1px solid var(--border-soft);border-radius:6px;padding:.2rem .45rem;white-space:nowrap}.account-chip{font-size:.85rem;color:var(--muted);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-body{flex:1;display:grid;grid-template-columns:240px minmax(0,1fr);min-height:0}.app-sidebar{border-right:1px solid var(--border-soft);background:#08080cb8;padding:1.25rem .85rem;position:sticky;top:var(--nav-h);height:calc(100vh - var(--nav-h) - 40px);overflow:auto}.side-nav{display:flex;flex-direction:column;gap:.2rem}.side-section{margin:1.15rem .65rem .4rem;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.side-link{display:block;padding:.55rem .75rem;border-radius:var(--radius-control);color:var(--muted);font-size:.95rem;font-weight:500;border:1px solid transparent;transition:color .15s var(--ease),background .15s var(--ease),border-color .15s var(--ease),transform .15s var(--ease-out)}.side-link:hover{color:var(--text);background:#ffffff0a;transform:translate(2px)}.side-link.active{color:var(--text);background:#7b61ff1f;border-color:#7b61ff59;transform:none}.app-main{min-width:0;padding:0}.main-inner{width:min(100% - 2.5rem,1040px);margin:0 auto;padding:1.75rem 0 3rem;animation:pp-enter .42s var(--ease-out) both}.mobile-only,.mobile-drawer,.mobile-backdrop{display:none}.app-footer{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;border-top:1px solid var(--border-soft);font-size:.8rem;background:#00000059}.footer-links{display:flex;gap:1rem}.footer-links a{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.board .page-head{margin-bottom:1.25rem}.page-head-board{flex-wrap:wrap;align-items:flex-start;gap:1rem 1.25rem}.page-head-main{flex:1 1 12rem;min-width:0}.page-head-slice{flex:2 1 18rem;min-width:0}.page-head-actions{flex:0 0 auto;margin-left:auto}.page-kpis{margin-bottom:1.25rem}.data-table-shell{display:grid;gap:.75rem}.data-table-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.data-table-filter input{min-width:12rem;max-width:100%;background:var(--bg-elevated, transparent);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:.4rem .55rem;font:inherit}.data-table-empty,.data-table-locked{border:1px solid var(--border-soft);border-radius:12px;padding:1.25rem 1rem}.data-table-shell.is-locked .data-table-locked{background:#ffffff05}.data-table th.is-sortable{padding:0}.data-table .th-sort{display:inline-flex;align-items:center;gap:.35rem;width:100%;background:none;border:0;color:inherit;font:inherit;font-weight:500;text-align:left;padding:.55rem .75rem;cursor:pointer}.data-table .th-sort:hover{color:var(--text)}.data-table .th-sort-mark{opacity:.45;font-size:.75em}.data-table th.is-sorted .th-sort-mark{opacity:.9;color:var(--accent, var(--text))}.sync-meta{margin:.35rem 0 0;font-size:.85rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);display:inline-block}.spark-bars{display:flex;align-items:flex-end;gap:.35rem;height:140px;margin-top:1rem;padding:.5rem 0}.spark-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;gap:.35rem}.spark-bar{width:100%;max-width:28px;background:linear-gradient(180deg,var(--accent-2),var(--accent));border-radius:4px 4px 0 0;min-height:4px}.spark-label{font-size:.65rem;color:var(--muted)}.ov-panel{margin-top:1.25rem;padding:1rem 1.1rem 1.15rem;border:1px solid var(--border-soft);border-radius:14px;background:#00000038;overflow:hidden;min-width:0;animation:pp-enter .4s var(--ease-out) both}.ov-panel-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.ov-panel-head .section-title{margin:0}.ov-chart{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.5rem;min-height:200px;max-width:100%}.ov-chart-y{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:1.1rem 0 1.4rem;font-size:.68rem;color:var(--muted)}.ov-chart-bars{display:flex;align-items:stretch;gap:.3rem;height:200px;padding-bottom:.15rem;border-left:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);padding-left:.45rem;min-width:0;max-width:100%;overflow:hidden}.ov-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.25rem}.ov-col-track{width:100%;flex:1;display:flex;align-items:flex-end;justify-content:center}.ov-bar{width:70%;max-width:26px;min-height:0;border-radius:5px 5px 0 0;background:linear-gradient(180deg,#7dd3fc,#6366f1)}.ov-bar.is-zero{height:0!important;min-height:0;background:transparent;box-shadow:none;border:none}.ov-col-val{font-size:.65rem;color:var(--muted);min-height:.9rem}.ov-col-label{font-size:.62rem;color:var(--muted)}.ov-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;margin-top:.25rem;max-width:100%}.ov-pie-wrap{display:grid;grid-template-columns:140px 1fr;gap:1rem;align-items:center}.ov-pie{width:140px;height:140px;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff14}.ov-pie-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.ov-pie-legend li{font-size:.85rem}.ov-swatch{width:10px;height:10px;margin-top:.3rem;border-radius:2px;flex-shrink:0}.ov-pie-meta{display:flex;flex-direction:column;gap:.15rem;min-width:0}.ov-pie-name{font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ov-hours{display:flex;align-items:flex-end;gap:.2rem;height:150px;padding-top:.5rem;min-width:0;max-width:100%;overflow:hidden}.ov-hour{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.2rem}.ov-hour-track{width:100%;flex:1;display:flex;align-items:flex-end;justify-content:center}.ov-hour-bar{width:70%;max-width:14px;border-radius:3px 3px 0 0;background:linear-gradient(180deg,#a78bfa,#4f46e5)}.ov-hour-bar.is-zero{height:0!important;background:transparent;box-shadow:none;border:none}.ov-hour-label{font-size:.58rem;color:var(--muted);min-height:.85rem}.ov-hour-label.spacer{visibility:hidden}@media(max-width:900px){.ov-grid{grid-template-columns:1fr}.ov-pie-wrap{grid-template-columns:120px 1fr}}.section-title{margin:1.75rem 0 .5rem;font-size:1rem}.meter-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-bottom:1rem}.perf-threshold-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin:.35rem 0 0}.perf-threshold-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem}.perf-threshold-form input[type=number]{width:7rem;font-variant-numeric:tabular-nums}.meter-slice-bar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.meter-slice-bar .slice-field select{min-width:7.5rem;border:1px solid var(--control-border);background:var(--control-bg);color:inherit;border-radius:var(--radius-control);padding:.3rem .5rem;font:inherit;font-size:.8125rem}.diff-curve{display:grid;grid-template-columns:2.5rem 1fr;gap:.5rem;min-height:180px;margin-top:.75rem}.diff-curve-y{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;font-size:.6875rem;color:var(--muted);padding:.25rem 0 1.5rem}.diff-curve-cols{display:flex;align-items:flex-end;gap:.35rem;min-height:160px;border-bottom:1px solid var(--border-subtle, rgba(128, 128, 128, .25));padding-bottom:.25rem;overflow-x:auto}.diff-curve-col{flex:1 0 1.75rem;max-width:3rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-height:140px}.diff-curve-track{position:relative;width:100%;height:110px;display:flex;align-items:flex-end;justify-content:center;gap:2px;background:linear-gradient(to top,transparent 0%,transparent 49.5%,rgba(128,128,128,.15) 49.5%,rgba(128,128,128,.15) 50.5%,transparent 50.5%)}.diff-curve-fail,.diff-curve-complete{width:42%;min-height:2px;border-radius:2px 2px 0 0;transition:height .2s var(--ease, ease)}.diff-curve-fail{background:var(--accent-hot, #ef4444)}.diff-curve-complete{background:var(--ok, #22c55e)}.diff-curve-fail.is-zero,.diff-curve-complete.is-zero{opacity:.2}.diff-curve-starts{width:70%;max-height:28px;background:var(--accent, #3b82f6);opacity:.35;border-radius:2px 2px 0 0}.diff-curve-label{font-size:.6875rem;color:var(--muted);font-variant-numeric:tabular-nums}.diff-curve-legend{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.65rem;font-size:.75rem;align-items:center}.diff-swatch{display:inline-block;width:.65rem;height:.65rem;border-radius:2px;margin-right:.25rem;vertical-align:middle}.diff-swatch.fail{background:var(--accent-hot, #ef4444)}.diff-swatch.complete{background:var(--ok, #22c55e)}.diff-swatch.starts{background:var(--accent, #3b82f6);opacity:.55}.death-map-controls{margin:.5rem 0 .75rem}.death-map-empty{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}.death-grid{display:grid;width:min(100%,420px);aspect-ratio:1;gap:1px;background:#80808026;border:1px solid var(--border-subtle, rgba(128, 128, 128, .3));border-radius:4px;overflow:hidden}.death-cell{background:transparent;min-width:0;min-height:0}.death-cell.is-zero{background:#0000000a}.first10-bars{display:flex;align-items:flex-end;gap:.35rem;min-height:120px;margin-top:.5rem}.first10-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:0}.first10-track{width:100%;height:100px;display:flex;align-items:flex-end;background:#80808014;border-radius:3px 3px 0 0}.first10-fill{width:100%;background:var(--accent, #3b82f6);border-radius:3px 3px 0 0;min-height:2px}.first10-value{font-size:.6875rem;font-family:var(--mono);color:var(--text);line-height:1}.first10-steps-label{margin:.85rem 0 .35rem}.first10-label{font-size:.6875rem;color:var(--muted);font-variant-numeric:tabular-nums}.watch-pins{margin:.5rem 0 .75rem}.schema-chips{display:flex;flex-wrap:wrap;gap:.3rem}.schema-chip,.schema-chip-toggle{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-family:var(--font-mono, ui-monospace, monospace);padding:.15rem .4rem;border-radius:4px;border:1px solid var(--border-subtle, rgba(128, 128, 128, .35));background:#80808014}.schema-chips.pick .schema-chip-toggle{cursor:pointer}.schema-chip-toggle input{margin:0}.schema-prop-pick{border:0;padding:0;margin:.75rem 0}.schema-prop-pick legend{font-size:.8125rem;margin-bottom:.35rem}.ingest-diag-strip{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.25rem;margin:0 0 .85rem;padding:.55rem .75rem;border:1px solid var(--border, rgba(255, 255, 255, .08));background:#ffffff05}.ingest-diag-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.ingest-diag-stat{display:inline-flex;align-items:baseline;gap:.35rem;font-size:.9rem}.ingest-diag-stat em{font-style:normal;color:var(--muted, #8a8a8a);font-size:.8rem}.ingest-diag-stat strong{font-variant-numeric:tabular-nums}.funnel-map-line{margin:0 0 .65rem}.health-table .health-status{display:inline-block;font-size:.75rem;font-weight:600;text-transform:lowercase;padding:.1rem .4rem;border-radius:4px}.health-status.ok{color:var(--ok, #16a34a);background:#22c55e1f}.health-status.quiet{color:var(--muted);background:#8080801f}.health-status.sparse_props{color:var(--accent-hot, #b45309);background:#f59e0b26}.health-status.disabled{color:var(--muted);opacity:.7}.country-panel{margin-bottom:1rem}.country-cta{display:flex;flex-direction:column;gap:.75rem}.ov-pie-btn{display:grid;grid-template-columns:10px 1fr auto;gap:.55rem;align-items:center;width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;padding:.15rem 0;cursor:pointer;border-radius:4px}.ov-pie-btn:hover{background:#ffffff0a}.ov-pie-swatch{width:10px;height:10px;border-radius:2px;flex-shrink:0}.segment-compare{margin-top:1.5rem}.segment-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;margin-bottom:1rem}@media(max-width:720px){.segment-picks{grid-template-columns:1fr}}.segment-pick{display:flex;flex-direction:column;gap:.55rem;min-width:0;padding:.85rem 1rem;border:1px solid var(--control-border);border-radius:var(--radius-control);background:var(--bg-elevated, transparent)}.segment-pick-title{font-size:.9375rem;margin-bottom:.15rem}.segment-pick label{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;color:var(--muted)}.segment-pick select{border:1px solid var(--control-border);background:var(--control-bg);color:inherit;border-radius:var(--radius-control);padding:.35rem .5rem;font:inherit;font-size:.8125rem}.segment-compare-actions{display:flex;justify-content:flex-start;margin:0 0 1rem}.segment-compare-actions .btn.primary{min-width:10rem}.delta-pos{color:#3dffb5;font-variant-numeric:tabular-nums}.delta-neg{color:#f5b942;font-variant-numeric:tabular-nums}.economy-configured{margin-top:.85rem}.economy-configured-title{margin:0 0 .45rem;font-size:.9rem}.economy-currency-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem .65rem}.economy-currency-list li{font-size:.8125rem;padding:.2rem .5rem;border:1px solid var(--control-border);border-radius:var(--radius-control);background:var(--control-bg)}.funnel-formula{margin:.25rem 0 .75rem}.segment-table{width:100%;border-collapse:collapse;font-size:.875rem}.segment-table th,.segment-table td{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--control-border)}.segment-table th{color:var(--muted);font-weight:550}.meter-range{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.meter-range-dates{font-size:.75rem;margin-left:.25rem}.slice-country-waiting{font-size:.75rem;align-self:center}.meter-range .chip{border:1px solid var(--control-border);background:var(--control-bg);color:var(--muted);border-radius:var(--radius-control);padding:.3rem .65rem;font:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:color .12s var(--ease),background .12s var(--ease),border-color .12s var(--ease)}.meter-range .chip:hover{background:var(--control-bg-hover);border-color:var(--control-border-hover);color:var(--text)}.meter-range .chip.on{color:var(--text);border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--control-bg));box-shadow:0 0 0 1px var(--accent)}.meter-compare{font-size:.85rem;max-width:28rem;font-weight:400}.kpi-delta{display:block;margin-top:.2rem;font-size:.75rem;font-weight:600}.kpi-delta.up{color:#34d399}.kpi-delta.down{color:#fb7185}.kpi-delta.flat{color:var(--muted);font-weight:500}.lens-tabs{display:flex;flex-wrap:wrap;gap:.35rem;margin:.5rem 0 1.25rem;border-bottom:1px solid var(--border-soft);padding-bottom:.5rem}.lens-tab{border:0;background:transparent;color:var(--muted);font:inherit;font-size:.9rem;padding:.45rem .75rem;border-radius:var(--radius-control);cursor:pointer;transition:color .15s var(--ease),background .15s var(--ease)}.lens-tab.on{color:var(--text);background:color-mix(in srgb,var(--accent, #5b8def) 16%,transparent)}.funnel-bars{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.65rem}.muted-list .hbar-meta{opacity:.85}.hbar-pick{display:block;width:100%;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0}.filter-row select{width:auto;min-width:8rem}.turnstile-wrap{margin:.5rem 0 .75rem}.turnstile-slot{min-height:65px}.turnstile-slot iframe{max-width:100%}.tight{margin:.35rem 0 0}.turnstile-dev{margin:.5rem 0 .75rem;font-size:.85rem;color:var(--muted);font-weight:400}.auth-dev-code{padding:.65rem .75rem;border-radius:8px;background:color-mix(in srgb,var(--accent, #7dd3c0) 12%,transparent);border:1px solid var(--border);letter-spacing:.12em}.code-input{letter-spacing:.35em;font-size:1.25rem!important;text-align:center}.stack-gap{display:grid;gap:.5rem;margin-top:.75rem}.filter-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin-bottom:1rem}.filter-row label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--muted)}.filter-row input{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:.4rem .55rem;font:inherit}.table-wrap{overflow:auto;border:1px solid var(--border-soft);border-radius:12px}.data-table{width:100%;border-collapse:collapse;font-size:.88rem}.data-table th,.data-table td{text-align:left;padding:.55rem .75rem;border-bottom:1px solid var(--border-soft)}.data-table th{color:var(--muted);font-weight:500;background:#ffffff05}.props-cell{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.funnel-steps{list-style:none;padding:0;margin:1rem 0 0}.funnel-steps li{display:flex;gap:1rem;align-items:baseline;padding:.65rem 0;border-bottom:1px solid var(--border-soft)}.funnel-steps strong{margin-left:auto}.hbar-list{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.65rem}.hbar-meta{display:flex;justify-content:space-between;gap:1rem;font-size:.88rem;margin-bottom:.25rem}.hbar-track{height:8px;border-radius:999px;background:#ffffff0f;overflow:hidden}.hbar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#34d399,#5b8def);min-width:2px}.funnel-bars{list-style:none;margin:.75rem 0 0;padding:0;display:grid;gap:.85rem}.funnel-bar-meta{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;margin-bottom:.3rem}.funnel-bar-track{height:14px;border-radius:6px;background:#ffffff0f;overflow:hidden}.level-table-wrap{overflow-x:auto}.level-table{width:100%;border-collapse:collapse;font-size:.9rem}.level-table th,.level-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border, #1e2836);white-space:nowrap}.level-table th{color:var(--muted, #8b9bb0);font-weight:500;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.level-table .th-sort{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;margin:0;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.level-table .th-sort:hover,.level-table .th-sort.is-active{color:var(--text)}.by-level-sort{margin:0}.by-level-sort .slice-label{display:inline-flex;align-items:center;gap:.25rem}.pp-tip{position:relative;display:inline-flex;vertical-align:middle;margin-left:.15rem}.pp-tip-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:1.05rem;height:1.05rem;border-radius:999px;border:1px solid var(--control-border);background:var(--control-bg);color:var(--muted);font-size:.65rem;font-weight:700;line-height:1;padding:0;cursor:help}.pp-tip-btn:hover,.pp-tip-btn:focus-visible{color:var(--text);border-color:var(--control-border-hover);outline:none}.pp-tip-bubble{display:none;position:absolute;z-index:40;left:50%;bottom:calc(100% + .4rem);transform:translate(-50%);width:min(16rem,70vw);padding:.55rem .65rem;border-radius:var(--radius-control);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:.78rem;font-weight:400;line-height:1.4;text-transform:none;letter-spacing:normal;box-shadow:0 8px 24px #00000073;pointer-events:none}.pp-tip:hover .pp-tip-bubble,.pp-tip:focus-within .pp-tip-bubble{display:block}.level-table-name{font-weight:600}.level-table .ok-num{color:#3dffb5}.level-table .warn-num{color:#f5b942}.level-table-viz-col{width:28%;min-width:7rem}.level-mini-bars{display:flex;flex-direction:column;gap:3px;min-width:6rem}.level-mini{display:block;height:4px;border-radius:2px;min-width:0;max-width:100%}.level-mini.start{background:#2ec5ff}.level-mini.complete{background:#3dffb5}.level-mini.fail{background:#f5b942}.funnel-bar-fill.is-fail{background:linear-gradient(90deg,#f5b942,#e07a2f)}.funnel-bar-fill{height:100%;border-radius:6px;background:linear-gradient(90deg,#38bdf8,#6366f1);min-width:2px}.retention-table{table-layout:fixed}.retention-spark{display:flex;align-items:flex-end;gap:3px;height:56px;margin:.5rem 0 1rem;padding:.25rem 0}.retention-spark-bar{flex:1;min-width:0;border-radius:3px 3px 0 0;background:linear-gradient(180deg,#34d399,#0f766e)}.ov-retention{scroll-margin-top:4.5rem}.ov-retention .retention-spark{height:64px;gap:.5rem;margin:.25rem 0 1rem}.ov-retention .retention-spark-bar{max-width:3.5rem;border-radius:4px 4px 0 0}.ov-retention .retention-table{margin:0}.ov-retention .rate-cell{max-width:10rem}.rate-cell{display:grid;gap:.25rem}.rate-spark{display:block;height:4px;border-radius:999px;background:#34d399;max-width:100%}.empty-panel{margin-top:1.25rem;padding:1.25rem 0;display:grid;gap:.75rem;justify-items:start;animation:pp-enter .4s var(--ease-out) both}.chip-row{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:.25rem 0 .75rem;padding:0}.chip{border:1px solid var(--border);background:#ffffff0a;color:var(--text);border-radius:999px;padding:.25rem .65rem;font:inherit;font-size:.85rem;cursor:pointer}.engine-picker{border:1px solid var(--border-soft);border-radius:12px;padding:.85rem 1rem 1rem;margin:0 0 1rem}.engine-picker legend{padding:0 .35rem;font-weight:600}.engine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.5rem;margin-top:.5rem}.engine-option{display:flex;gap:.45rem;align-items:center;padding:.55rem .7rem;border:1px solid var(--border-soft);border-radius:10px;cursor:pointer}.engine-option.on{border-color:#34d399;background:#34d39914}.badge-upcoming{font-style:normal;font-size:.7rem;color:var(--muted);text-transform:lowercase}.danger-text{color:#f87171}.stepper{display:flex;gap:.75rem;list-style:none;padding:0;margin:0 0 1.25rem}.stepper li{flex:1;text-align:center;padding:.5rem;border-radius:8px;border:1px solid var(--border-soft);color:var(--muted);font-size:.85rem}.stepper li.active{color:var(--text);border-color:var(--accent);background:#7b61ff1f}.stack-form{display:flex;flex-direction:column;gap:1rem}.stack-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem}.stack-form input{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-control);color:var(--text);padding:.55rem .65rem;font:inherit}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pack-preview{border:1px solid var(--border-soft);border-radius:12px;padding:.85rem 1rem;background:#ffffff05}.pack-preview h2{margin:0 0 .5rem;font-size:.95rem}.pack-preview ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.35rem 1.25rem}.pack-preview li{margin:0;display:flex;flex-direction:column;gap:.1rem;padding:.35rem 0;border-bottom:1px solid var(--border-soft)}.pack-preview.compact ul{grid-template-columns:1fr}.pack-typed .muted{font-size:.75rem}.settings-block{margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--border-soft)}.settings-block.first,.account-section.first{margin-top:0;padding-top:0;border-top:0}.account-page .account-actions{margin:0;gap:.65rem}.page-head .lead{margin:.15rem 0 0;max-width:36rem}.page-head h1{margin:0}.keys-first{margin-top:0;padding:1.1rem 1.15rem;border:1px solid rgba(123,97,255,.35);border-radius:14px;background:#7b61ff14}.unity-init-box{display:flex;flex-direction:column;gap:.35rem;margin:.75rem 0;padding:.75rem .85rem;border-radius:10px;background:#00000059;border:1px solid var(--border-soft)}.unity-init-box code{font-size:.85rem;word-break:break-all}.cred-field{display:flex;flex-direction:column;gap:.4rem;margin:0;width:100%}.cred-label{font-size:.78rem;font-weight:600;color:var(--muted, #9aa3b2)}.cred-row{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:stretch;width:100%}.cred-value{display:block;width:100%;min-width:0;padding:.7rem .8rem;border-radius:8px;background:#00000073;border:1px solid var(--border-soft);font-size:.8rem;word-break:break-all;line-height:1.4}.cred-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.85rem 0}.cred-reveal{display:flex;flex-direction:column;gap:.9rem;margin-top:1rem;width:100%}.cred-reveal-title{margin:0;font-weight:650}.cred-warn{margin:0;padding:.65rem .75rem;border-radius:8px;border:1px solid rgba(255,180,80,.35);background:#ffb45014;font-size:.85rem}.lead.tight{margin-bottom:.75rem}.events-panel{margin-top:.5rem}.events-table .small{font-size:.78rem;margin-top:.15rem}.props-typed{font-size:.78rem;color:var(--muted);white-space:normal}.add-event-form{margin-top:1.25rem;padding:1rem;border:1px solid var(--border-soft);border-radius:12px;display:flex;flex-direction:column;gap:.75rem}.add-event-form h3{margin:0;font-size:1rem}.setup-download{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:0 0 1.25rem}.setup-panel{margin-top:.5rem;padding:1.35rem 1.4rem;border:1px solid rgba(123,97,255,.4);border-radius:16px;background:#7b61ff14}.setup-panel h2{margin:0 0 .4rem;font-size:1.35rem}.setup-steps{margin:1.25rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:1.1rem}.setup-steps li{padding:.9rem 1rem;border-radius:12px;background:#00000047;border:1px solid var(--border-soft)}.setup-steps strong{display:block;margin-bottom:.35rem}.setup-steps p{margin:0 0 .55rem;color:var(--muted);line-height:1.45}.setup-ids{font-size:.82rem;word-break:break-all;margin:0 0 .75rem!important;color:var(--text)!important}.setup-code{margin:.35rem 0 0;padding:.85rem 1rem;border-radius:10px;background:#050508;border:1px solid var(--border);color:#d7d7e0;font-family:var(--mono);font-size:.8rem;line-height:1.45;overflow-x:auto;white-space:pre}.live-wire-feed{margin-top:1.25rem;max-width:36rem}.live-wire-feed--empty{opacity:.85}.live-wire-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-bottom:.5rem}.live-wire-table{width:100%;border-collapse:collapse;font-size:.9rem}.live-wire-table th{text-align:left;font-weight:500;color:#ffffff73;padding:.35rem .5rem .5rem 0;border-bottom:1px solid rgba(255,255,255,.08)}.live-wire-table td{padding:.45rem .5rem .45rem 0;border-bottom:1px solid rgba(255,255,255,.05);vertical-align:middle}.live-wire-table td:last-child{text-align:right;white-space:nowrap}.live-wire-name{font-variant-numeric:tabular-nums}.live-wire-count{margin-left:.4rem;color:#ffffff73;font-size:.85em}.live-wire-tag{margin-left:.45rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#fbbf24e6}.stack-form{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem;max-width:28rem}.totp-secret-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.totp-secret-value{display:inline-block;padding:.55rem .75rem;border-radius:8px;background:#ffffff0f;font-size:.9rem;letter-spacing:.04em;word-break:break-all}.setup-waiting{margin:1.25rem 0 .75rem;font-weight:600}.key-list,.member-list{list-style:none;padding:0;margin:.75rem 0}.key-list li,.member-list li{display:flex;gap:.75rem;align-items:center;padding:.4rem 0}.danger-zone{border-top-color:#ff6b9d59}.danger-zone-head{margin-bottom:.75rem}.danger-zone-head .section-title{margin:0 0 .35rem}.btn.danger{background:#ff6b9d26;border:1px solid rgba(255,107,157,.4);color:#ffb0c8}.btn.danger:disabled{opacity:.4;cursor:not-allowed}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1.25rem;background:#000000b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-dialog{width:min(28rem,100%);padding:1.25rem 1.35rem 1.15rem;border-radius:var(--radius-sm);border:1px solid rgba(255,107,157,.35);background:var(--surface-2);box-shadow:0 16px 48px #0000008c;animation:pp-enter .2s var(--ease-out)}.confirm-dialog h2{margin:0 0 .5rem;font-size:1.15rem}.confirm-bullets{margin:.75rem 0 1rem;padding-left:1.15rem;color:var(--muted);font-size:.9rem}.confirm-bullets .warn-text{color:#ffb0c8}.confirm-actions{margin-top:1rem;justify-content:flex-end}.pack-session-note{margin:.5rem 0 .75rem;padding:.65rem .75rem;border-left:2px solid var(--accent);background:#7b61ff14;font-size:.85rem;line-height:1.45;color:var(--muted)}.pack-session-note strong{color:var(--text);font-weight:600}.pack-typed li{display:flex;flex-direction:column;gap:.15rem;align-items:flex-start}.pack-typed .pack-event-desc{font-size:.78rem;color:var(--muted);line-height:1.35}.ok-msg{color:var(--ok)}@media(max-width:960px){.mobile-only{display:inline-flex}.desktop-sidebar{display:none}.app-body{grid-template-columns:1fr}.main-inner{width:min(100% - 1.5rem,1040px);padding-top:1.25rem}.mobile-drawer{display:block;position:fixed;top:var(--nav-h);left:0;bottom:40px;width:min(280px,86vw);z-index:30;background:#0a0a0e;border-right:1px solid var(--border);padding:1rem .85rem;overflow:auto;box-shadow:12px 0 40px #00000073;animation:pp-slide-in .28s var(--ease-out) both}.mobile-backdrop{display:block;position:fixed;inset:var(--nav-h) 0 40px 0;z-index:25;border:0;background:#0000008c;cursor:pointer;animation:pp-fade .22s var(--ease) both}.two-col,.pack-preview ul{grid-template-columns:1fr}.topbar-right .sync-badge,.account-chip{display:none}.kpi-row{grid-template-columns:1fr 1fr}}
