:root{--ground: #f7f8f7;--panel: #ffffff;--raised: #eef1ef;--ink: #16201c;--muted: #5d6b65;--rule: #d7dfda;--accent: #0d6b57;--good: #0d6b57;--warn: #9a6415;--bad: #a8332a;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}@media(prefers-color-scheme:dark){:root{--ground: #0d1311;--panel: #141c19;--raised: #1b2522;--ink: #e6ede9;--muted: #8ba099;--rule: #263330;--accent: #4cc4a4;--good: #4cc4a4;--warn: #d8a04a;--bad: #e0685c}}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);line-height:1.6;-webkit-font-smoothing:antialiased}.page{max-width:1180px;margin-inline:auto;padding:48px 24px 72px}.eyebrow{margin:0 0 12px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}h1{margin:0 0 12px;font-size:clamp(1.8rem,4.5vw,2.6rem);line-height:1.1;letter-spacing:-.02em;text-wrap:balance}.standfirst{margin:0 0 10px;color:var(--muted);max-width:66ch}.privacy{margin:0;font-size:.88rem;color:var(--muted);max-width:66ch}.privacy:before{content:"🔒 "}.summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin:32px 0 18px;background:var(--rule);border:1px solid var(--rule);border-radius:10px;overflow:hidden}.stat{background:var(--panel);padding:16px 18px;display:flex;flex-direction:column;gap:4px}.stat-label{font-family:var(--mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.stat-value{font-family:var(--mono);font-size:1.45rem;font-variant-numeric:tabular-nums}.stat.good .stat-value{color:var(--good)}.stat.warn .stat-value{color:var(--warn)}.stat.bad .stat-value{color:var(--bad)}.notice{margin:0 0 18px;padding:12px 16px;border-left:3px solid var(--muted);background:var(--panel);font-size:.92rem;color:var(--ink);border-radius:0 6px 6px 0}.notice.warn{border-left-color:var(--warn)}.notice.bad{border-left-color:var(--bad)}.editors{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:900px){.editors{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--rule);border-radius:10px;padding:18px;min-width:0}.panel.wide{margin-top:18px}.panel-head{display:flex;align-items:baseline;gap:12px;margin-bottom:12px}.panel-head h2{margin:0;font-size:1.05rem;letter-spacing:-.01em}.panel-head button{margin-left:auto}.hint{margin-left:auto;font-size:.82rem;color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:.9rem}th{text-align:left;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:6px 8px;white-space:nowrap}td{padding:3px 8px}th.num,td.num{text-align:right;font-variant-numeric:tabular-nums}tbody tr:hover{background:var(--raised)}input{width:100%;padding:6px 8px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums}input:hover{border-color:var(--rule)}input:focus{outline:none;border-color:var(--accent);background:var(--ground)}td.num input{text-align:right}button{padding:6px 12px;border:1px solid var(--rule);border-radius:6px;background:var(--raised);color:var(--ink);font-family:var(--mono);font-size:12px;cursor:pointer}button:hover{border-color:var(--accent);color:var(--accent)}button.remove{padding:2px 8px;border-color:transparent;background:transparent;font-size:16px;line-height:1;color:var(--muted)}button.remove:hover{color:var(--bad);border-color:transparent}:where(button,input,a):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.scroll{overflow-x:auto}.matrix{min-width:720px}.matrix th[scope=row]{text-transform:none;font-family:var(--sans);font-size:.88rem;letter-spacing:0;color:var(--ink);white-space:nowrap}.matrix td.num{font-family:var(--mono);font-size:.82rem}.matrix .total{font-weight:600;color:var(--accent)}.matrix tfoot td,.matrix tfoot th{border-top:2px solid var(--rule);padding-top:8px}.zero{color:var(--muted);opacity:.5}.site-footer{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:32px;padding-top:20px;border-top:1px solid var(--rule)}.site-footer a{margin-left:auto;color:var(--accent);font-family:var(--mono);font-size:12px}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
