:root{color-scheme:light;--page:#f6f6f3;--surface:#fcfcfb;--surface-2:#f0efec;--surface-3:#e7e6e1;--ink:#0b0b0b;--ink-2:#52514e;--ink-3:#898781;--line:#e1e0d9;--line-strong:#c3c2b7;--accent:#2a78d6;--accent-ink:#fff;--accent-soft:#e3eefb;--seq-hi:#1c5cab;--seq-lo:#d95926;--good:#006300;--good-bg:#e2f3e2;--warn-bg:#fdf1d6;--warn-ink:#7a5200;--bad:#b42f2f;--bad-bg:#fbe5e5;--radius:10px;--radius-sm:6px;--shadow:0 1px 2px #0b0b0b0d, 0 0 0 1px #0b0b0b0f;--font:system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace}@media (prefers-color-scheme:dark){:root{color-scheme:dark;--page:#0d0d0d;--surface:#1a1a19;--surface-2:#232322;--surface-3:#2e2e2c;--ink:#fff;--ink-2:#c3c2b7;--ink-3:#898781;--line:#2c2c2a;--line-strong:#454542;--accent:#3987e5;--accent-ink:#fff;--accent-soft:#1b2c42;--seq-hi:#5598e7;--seq-lo:#eb6834;--good:#3fc43f;--good-bg:#13301a;--warn-bg:#3a2c0c;--warn-ink:#f5c65a;--bad:#f08080;--bad-bg:#3d1a1a;--shadow:0 0 0 1px #ffffff14}}*{box-sizing:border-box}html,body{background:var(--page);color:var(--ink);font:14px/1.45 var(--font);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:20px;font-weight:650}h2{font-size:15px;font-weight:650}h3{font-size:13px;font-weight:600}.muted{color:var(--ink-3)}.secondary{color:var(--ink-2)}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--mono);font-size:12px}.container{width:100%;margin:0 auto;padding-inline:clamp(16px,1.6vw,32px)}.topbar{z-index:20;background:color-mix(in oklab, var(--surface) 88%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);position:sticky;top:0}.topbar .container{align-items:center;gap:24px;height:52px;display:flex}.brand{color:var(--ink);align-items:center;gap:8px;font-weight:700;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), var(--seq-hi));color:#fff;border-radius:6px;place-items:center;width:22px;height:22px;font-size:12px;display:grid}.nav{flex:1;gap:4px;display:flex}.nav a{color:var(--ink-2);border-radius:var(--radius-sm);padding:6px 10px;font-weight:500}.nav a:hover{background:var(--surface-2);text-decoration:none}.nav a[aria-current=page]{color:var(--ink);background:var(--surface-2)}main{padding-block:20px 60px}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:16px}.card-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spacer{flex:1}.field{color:var(--ink-2);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.hint{color:var(--ink-3);font-size:12px;font-weight:400}input[type=text],input[type=password],input[type=number],input[type=search],select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-width:0;padding:7px 10px}textarea{resize:vertical}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}input[type=checkbox]{accent-color:var(--accent);width:15px;height:15px;margin:0}.btn{font:inherit;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;padding:6px 12px;font-weight:550;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:color-mix(in oklab, var(--accent) 85%, black)}.btn-danger{color:var(--bad)}.btn-sm{padding:3px 8px;font-size:12px}.btn-lg{padding:9px 18px;font-size:15px}.btn-ghost{background:0 0;border-color:#0000}.seg{background:var(--surface-2);border-radius:var(--radius-sm);gap:2px;padding:2px;display:inline-flex}.seg button{font:inherit;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:5px 12px;font-weight:550}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.chip{background:var(--surface-2);color:var(--ink-2);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;display:inline-flex}button.chip{font:inherit;cursor:pointer;font-size:12px}button.chip:hover{border-color:var(--line-strong)}.chip[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in oklab, var(--accent) 40%, transparent)}.badge{background:var(--surface-2);color:var(--ink-2);border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.badge-api{background:var(--good-bg);color:var(--good)}.badge-stale{background:var(--warn-bg);color:var(--warn-ink)}.alert{border-radius:var(--radius-sm);background:var(--bad-bg);color:var(--bad);padding:10px 14px}.alert-ok{background:var(--good-bg);color:var(--good)}.alert-warn{background:var(--warn-bg);color:var(--warn-ink)}.table-wrap{max-height:72vh;overflow:auto}table.data{border-collapse:separate;border-spacing:0;width:100%;font-size:13px}table.data th,table.data td{border-bottom:1px solid var(--line);text-align:left;white-space:nowrap;padding:6px 10px}table.data th{z-index:2;background:var(--surface);text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3);border-bottom-color:var(--line-strong);font-size:11px;font-weight:650;position:sticky;top:0}table.data th.sortable{cursor:pointer;user-select:none}table.data th.sortable:hover,table.data th[aria-sort]{color:var(--ink)}table.data td.r,table.data th.r{text-align:right}table.data td.c,table.data th.c{text-align:center}table.data tbody tr:hover td{background-color:var(--surface-2)}table.data .sticky-col{z-index:1;background:var(--surface);position:sticky;left:0}table.data th.sticky-col{z-index:3}table.data td.heat{font-variant-numeric:tabular-nums;text-align:right}.empty{text-align:center;color:var(--ink-3);padding:48px 16px}.progress{background:var(--surface-3);border-radius:2px;height:4px;overflow:hidden}.progress>div{background:var(--accent);height:100%;transition:width .2s}@media (width<=720px){.container{padding-inline:16px}.topbar .container{gap:12px}.brand span:last-child{display:none}}.strong{font-weight:600}.good{color:var(--good)}.bad{color:var(--bad)}.block{display:block}.truncate{text-overflow:ellipsis;max-width:320px;overflow:hidden}.flag{font-size:16px;line-height:1}button.linkish{font:inherit;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}button.linkish:hover{color:var(--accent)}button.linkish.strong{color:var(--accent);font-weight:600}.builder-grid{grid-template-columns:minmax(300px,4fr) minmax(320px,8fr);display:grid}@media (width>=1800px){.builder-grid{grid-template-columns:minmax(300px,3fr) minmax(320px,9fr)}}.builder-locales{border-left:1px solid var(--line)}.metric-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;font-weight:400;display:grid}.metric-opt{border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;color:var(--ink);align-items:flex-start;gap:8px;padding:7px 9px;display:flex}.metric-opt:has(input:checked){border-color:color-mix(in oklab, var(--accent) 50%, transparent);background:var(--accent-soft)}.metric-opt input{margin-top:2px}.metric-opt .hint{margin-top:2px;line-height:1.3}.builder-foot{border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--radius) var(--radius);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex}.estimate{flex-wrap:wrap;flex:1;gap:8px;min-width:240px;display:flex}.picker{flex-direction:column;gap:8px;display:flex}.picker-top{flex-wrap:wrap;gap:8px;display:flex}.picker-presets{gap:6px}.picker-list{border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));align-content:start;max-height:460px;display:grid;overflow:auto}.picker-item{border-bottom:1px solid var(--line);padding:6px 10px}.picker-list>.empty{grid-column:1/-1}.picker-item[data-on]{background:color-mix(in oklab, var(--accent-soft) 45%, transparent)}.picker-main{cursor:pointer;align-items:center;gap:8px;display:flex}.picker-name{flex:1;font-weight:550}.picker-subs{flex-wrap:wrap;gap:4px;margin:5px 0 2px 23px;display:flex}.picker-flags{letter-spacing:1px;color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0 23px;font-size:13px;overflow:hidden}.picker-foot{font-size:12px}.stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;display:grid}.stats .stat{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px 14px}.settings .stats .stat{box-shadow:none;background:var(--surface-2)}.stat-label{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);font-size:11px;font-weight:650}.stat-value{white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:22px;font-weight:650;overflow:hidden}.stat-sub{color:var(--ink-2);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:12px;overflow:hidden}.filters{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px;display:flex}.filters input[type=search]{width:220px}.inline-field{color:var(--ink-2);gap:6px;font-size:13px}.inline-field input{width:64px}.legend{color:var(--ink-2);gap:14px;font-size:12px;display:flex}.ramp{border-radius:3px;width:56px;height:10px;display:inline-block}.ramp-hi{background:linear-gradient(90deg, color-mix(in oklab, var(--seq-hi) 6%, transparent), color-mix(in oklab, var(--seq-hi) 72%, transparent))}.ramp-lo{background:linear-gradient(90deg, color-mix(in oklab, var(--seq-lo) 6%, transparent), color-mix(in oklab, var(--seq-lo) 72%, transparent))}.locale-cell{align-items:center;gap:6px;display:inline-flex}.sweet{color:var(--good);font-size:11px}.table-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.view-note{color:var(--ink-2);border-bottom:1px solid var(--line);margin:0;padding:10px 16px;font-size:13px}table.matrix th.kw-col{text-overflow:ellipsis;text-transform:none;letter-spacing:0;max-width:140px;font-size:12px;overflow:hidden}table.matrix td.heat{min-width:72px}table.matrix tfoot td{background:var(--surface);border-top:1px solid var(--line-strong);position:sticky;bottom:0}.country-strip{flex-wrap:nowrap;align-items:center;gap:4px;display:flex}.country-pill{background:var(--surface-2);border-radius:999px;align-items:center;gap:3px;padding:1px 6px 1px 4px;font-size:12px;display:inline-flex}.chart-layout{grid-template-columns:minmax(0,1fr) 280px;display:grid}.chart{min-width:0;padding:12px 8px 12px 12px;position:relative}.chart svg{max-width:100%;display:block}.chart .grid{stroke:var(--line);stroke-width:1px}.chart .axis{stroke:var(--line-strong)}.chart .tick{fill:var(--ink-3);font-variant-numeric:tabular-nums;font-size:11px}.chart .axis-label{fill:var(--ink-2);font-size:12px}.chart .zone{fill:color-mix(in oklab, var(--good) 9%, transparent);stroke:color-mix(in oklab, var(--good) 35%, transparent);stroke-dasharray:4 3}.chart .zone-label{fill:var(--good);font-size:11px;font-weight:600}.chart .dot{fill:var(--accent);stroke:var(--surface);stroke-width:2px}.chart .dot-sweet{fill:var(--good)}.chart .dot-label{fill:var(--ink);paint-order:stroke;stroke:var(--surface);stroke-width:3px;font-size:11px;font-weight:600}.tooltip{pointer-events:none;background:var(--surface);box-shadow:0 4px 16px #00000026, 0 0 0 1px var(--line);border-radius:var(--radius-sm);z-index:5;width:200px;padding:8px 10px;font-size:12px;position:absolute}.tooltip-grid{grid-template-columns:1fr auto;gap:2px 12px;margin-top:6px;display:grid}.ranked{border-left:1px solid var(--line);padding:12px 16px}.ranked ol{flex-direction:column;gap:5px;margin:8px 0 0;padding-left:22px;display:flex}.ranked li{font-size:13px}.ranked-row{align-items:center;gap:6px;display:flex}.ranked-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.error-list{max-height:200px;margin:8px 0;padding-left:18px;font-size:13px;overflow:auto}.settings-layout{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));align-items:start;gap:16px;display:grid}.settings p{margin:4px 0 0}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}@media (width<=1000px){.builder-grid,.chart-layout{grid-template-columns:1fr}.builder-locales,.ranked{border-left:0;border-top:1px solid var(--line)}}.estimate-devices{flex-wrap:wrap;gap:4px;display:inline-flex}.chip.device-chip{background:var(--surface-3);color:var(--ink);font-weight:550}a.chip.device-chip:hover,button.chip.device-chip:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.table-tools{background:var(--surface-2)}table.data tr.group-row td{background:var(--surface-2);border-bottom-color:var(--line-strong);cursor:pointer;padding-block:7px;position:sticky;left:0}table.data tr.group-row:hover td{background:var(--surface-3)}.caret{width:12px;color:var(--ink-3);display:inline-block}table.data tr.group-start td{border-top:2px solid var(--line-strong)}table.data tr.sub-row td{background:var(--surface-2)}table.data thead tr.subhead th{text-transform:none;letter-spacing:0;font-size:12px;top:29px}table.data .col-group-start{border-left:2px solid var(--line-strong)}table.data th.c.col-group-start{text-align:center}.backups .card-head p{margin:2px 0 0}.backup-actions{border-bottom:1px solid var(--line);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px;padding:16px;display:grid}.backup-actions .stack{gap:8px}.backup-actions p{word-break:break-all;margin:0;font-size:12px}input[type=file]{font:inherit;max-width:100%;font-size:13px}.data-source .card-head p{margin:2px 0 0}.ds-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:24px;padding:16px;display:grid}.ds-grid .stack{gap:10px}.ds-grid textarea{width:100%;font-size:12px}.kv{grid-template-columns:max-content 1fr;gap:4px 16px;margin:0;font-size:13px;display:grid}.kv dt{color:var(--ink-3)}.kv dd{text-overflow:ellipsis;min-width:0;margin:0;overflow:hidden}.health{border-radius:var(--radius-sm);align-self:flex-start;align-items:center;gap:8px;padding:6px 10px;font-weight:600;display:inline-flex}.health-ok{background:var(--good-bg);color:var(--good)}.health-warn{background:var(--warn-bg);color:var(--warn-ink)}.health-bad{background:var(--bad-bg);color:var(--bad)}.dot{vertical-align:middle;background:currentColor;border-radius:50%;width:8px;height:8px;margin-left:6px;display:inline-block}.health .dot{margin-left:0}.dot-ok{background:var(--good)}.dot-warn{background:#c98500}.dot-bad{background:var(--bad)}.steps{color:var(--ink-2);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:13px;display:flex}code{font-family:var(--mono);font-size:.92em}.source-switch .seg button{padding:4px 10px}.qstate.qstate-paused{box-shadow:0 0 0 1px color-mix(in oklab, var(--warn-ink) 40%, transparent)}.progress.progress-paused>div{background:var(--warn-ink)}.qbar{background:var(--surface-3);border-radius:4px;height:8px;display:flex;overflow:hidden}.qbar-done{background:var(--accent)}.qbar-failed{background:var(--bad)}.qbar-run{background:color-mix(in oklab, var(--accent) 45%, var(--surface-3));animation:1.2s ease-in-out infinite qpulse}@keyframes qpulse{50%{opacity:.5}}.wsbar{flex-wrap:wrap;align-items:center;gap:6px;font-weight:400;display:flex}.wsbar-label{text-transform:uppercase;letter-spacing:.03em;color:var(--ink-3);font-size:12px;font-weight:650}.wsbar select{min-width:150px;max-width:260px;font-weight:600}.move-bar{background:var(--accent-soft,#0000000a);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;display:flex}.move-notice{color:var(--ink-2,inherit);margin-bottom:8px;padding:6px 12px;font-size:13px}select.move-select{max-width:160px;padding:2px 6px;font-size:12px}.ws-head{border:1px solid var(--line);background:var(--surface-2);border-radius:999px;align-items:center;gap:4px;padding:3px 4px 3px 8px;display:inline-flex;position:relative}.ws-head-icon{color:var(--accent);font-size:11px}.ws-head select{cursor:pointer;max-width:200px;color:var(--ink);background:0 0;border:0;padding:3px 4px;font-weight:650}.ws-head select:focus-visible{outline:2px solid var(--accent);border-radius:4px}.ws-head-btn{color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:2px 6px;font-size:15px;line-height:1}.ws-head-btn:hover{background:var(--surface-3);color:var(--ink)}.ws-menu{z-index:40;background:var(--surface);border-radius:var(--radius-sm);min-width:200px;box-shadow:0 6px 24px #0000002e, 0 0 0 1px var(--line);flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);left:0}.ws-menu button{font:inherit;text-align:left;color:var(--ink);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;padding:7px 10px;overflow:hidden}.ws-menu button:hover:not(:disabled){background:var(--surface-2)}.ws-menu button:disabled{opacity:.5;cursor:not-allowed}.ws-menu button.danger{color:var(--bad)}.ws-chip{background:var(--accent-soft);color:var(--accent);border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}@media (width<=720px){.ws-head select{max-width:120px}}.ws-src-badge{background:var(--accent-soft);color:var(--accent);vertical-align:middle;margin-left:6px;font-size:10px}.metric-opt.metric-off{opacity:.55;cursor:not-allowed;background:var(--surface-2)}.metric-opt.metric-off:has(input:checked){border-color:var(--line);background:var(--surface-2)}.metric-opt.metric-off input{cursor:not-allowed}
