:root{--bg: #f7f8fa;--card: #ffffff;--ink: #1a1f2b;--muted: #6b7280;--line: #e6e8ec;--accent: #2f6df6;--good: #16a34a;--info: #7c3aed;--warn: #dc2626;--demo: #d97706;--shadow: 0 1px 3px rgba(0, 0, 0, .06), 0 8px 24px rgba(0, 0, 0, .04)}@media (prefers-color-scheme: dark){:root{--bg: #0e1117;--card: #171b22;--ink: #e6e8ec;--muted: #9aa3b2;--line: #262b34;--shadow: 0 1px 3px rgba(0, 0, 0, .4)}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.wrap{max-width:960px;margin:0 auto;padding:32px 20px 64px}header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:28px}.brand{display:flex;align-items:center;gap:12px}.logo{font-size:26px;width:44px;height:44px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),#7c3aed);color:#fff;border-radius:12px}h1{font-size:22px;margin:0;letter-spacing:-.02em}.tag{margin:0;color:var(--muted);font-size:13px}.badge{font-size:12.5px;color:var(--good);background:color-mix(in srgb,var(--good) 12%,transparent);padding:6px 12px;border-radius:999px;font-weight:500}.data-region{position:relative}.demo-frame{border:2px dashed color-mix(in srgb,var(--demo) 60%,var(--line));background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--demo) 6%,transparent) 0 14px,transparent 14px 28px);border-radius:16px;padding:22px 18px 12px;margin-top:6px}.demo-ribbon{position:absolute;top:-13px;left:50%;transform:translate(-50%);background:var(--demo);color:#fff;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:5px 16px;border-radius:999px;z-index:3;box-shadow:var(--shadow);white-space:nowrap}.demo-dim{filter:grayscale(.55) opacity(.6)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:22px}.stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px;box-shadow:var(--shadow)}.stat-val{font-size:30px;font-weight:700;letter-spacing:-.03em}.stat-sub{font-size:12px;color:var(--muted);margin-top:1px;font-variant-numeric:tabular-nums}.stat-lbl{font-size:12.5px;color:var(--muted);margin-top:4px}.stat-good .stat-val{color:var(--good)}.stat-info .stat-val{color:var(--info)}.stat-warn .stat-val{color:var(--warn)}.stat-lock .stat-val{color:var(--good)}.stat-lock{border-style:dashed}.buckets{margin:22px 0}.buckets h2{font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 10px}.barlist{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:8px 16px;box-shadow:var(--shadow)}.bar-row{display:grid;grid-template-columns:140px 1fr 160px;align-items:center;gap:14px;padding:7px 0;border-bottom:1px solid var(--line)}.bar-row:last-child{border-bottom:none}.year-row{cursor:pointer;-webkit-user-select:none;user-select:none}.year-row:hover .bar-lbl{color:var(--accent)}.qcount{color:var(--muted);font-weight:400;font-size:12px}.sub-row{padding-left:22px}.sub-lbl{font-weight:400;color:var(--muted);font-size:12.5px}.sub-fill{opacity:.55}.bar-lbl{font-size:13px;font-weight:500;white-space:nowrap}.bar-track{height:8px;background:var(--line);border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--info));border-radius:999px}.bar-num{font-size:12.5px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}@media (max-width: 640px){.bar-row{grid-template-columns:100px 1fr}.bar-num{grid-column:2;text-align:left}}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);margin-bottom:16px}.prov{font:inherit;font-size:13.5px;padding:8px 10px;border-radius:9px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}.prov:disabled{opacity:.6}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.src{font-size:13px;font-weight:500;margin-right:auto}.src-live{color:var(--good)}.src-demo{color:var(--muted)}.providers-note{font-size:12.5px;color:var(--muted);margin:-6px 0 18px}.btn{font:inherit;font-size:13.5px;font-weight:500;padding:8px 14px;border-radius:9px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}.btn:hover:not(:disabled){border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover:not(:disabled){filter:brightness(1.08)}.confirm{background:color-mix(in srgb,var(--accent) 8%,var(--card));border:1px solid var(--accent);border-radius:12px;padding:16px;margin-bottom:16px;font-size:14px;line-height:1.55}.confirm-btns{display:flex;gap:10px;margin-top:12px}.signin a{color:var(--accent)}.devcode{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:26px;font-weight:700;letter-spacing:3px;margin:10px 0 6px;color:var(--accent)}.result{background:color-mix(in srgb,var(--good) 10%,var(--card));border:1px solid color-mix(in srgb,var(--good) 40%,var(--line));border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:13.5px}.hint{color:var(--muted);font-size:13.5px;margin:4px 0 20px}.hint code{background:var(--line);padding:1px 6px;border-radius:5px;font-size:12px}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}th,td{text-align:left;padding:11px 16px;border-bottom:1px solid var(--line)}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}tr:last-child td{border-bottom:none}.num{text-align:right;font-variant-numeric:tabular-nums}.dom{font-weight:500}select.act{font:inherit;padding:4px 8px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink);cursor:pointer}.act-delete{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 40%,var(--line))}.act-keep{color:var(--good);border-color:color-mix(in srgb,var(--good) 40%,var(--line))}.act-trim{color:var(--accent)}.act-move{color:var(--info)}.muted{color:var(--muted)}.foot{font-size:12.5px;margin-top:14px}.err{color:var(--warn)}@media (max-width: 640px){.stats{grid-template-columns:repeat(2,1fr)}}
