:root{--rail:#1c1c1e;--rail-hover:#2a2a2d;--rail-fg:#f2f2f4;--rail-muted:#96969b;--bg:#f2f2f2;--surface:#fff;--surface-sunken:#fafafa;--fg:#1a1a1c;--muted:#6f6f76;--faint:#98989f;--line:#e6e6e9;--line-strong:#d3d3d8;--accent:#0f62c4;--accent-hover:#0b4c9c;--accent-soft:#e9f1fc;--info-bg:#eceef2;--info-fg:#4a5261;--info-panel:#eef2f8;--warn-bg:#fdf0e0;--warn-fg:#95591a;--danger-bg:#fdecec;--danger-fg:#a32b2b;--danger-line:#f0cfcf;--radius:10px;--radius-sm:6px;--pill:999px;--rail-w:260px;--actionbar-h:108px}*{box-sizing:border-box}html,body{background:var(--surface);color:var(--fg);-webkit-font-smoothing:antialiased;margin:0;padding:0;font:15px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--accent);text-underline-offset:2px}.shell{grid-template-columns:var(--rail-w) 1fr;min-height:100vh;display:grid}.rail{width:var(--rail-w);background:var(--rail);color:var(--rail-fg);z-index:20;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}.rail .rail-brand{color:var(--rail-fg);letter-spacing:-.01em;align-items:center;gap:.6rem;padding:1.15rem 1.35rem;font-weight:600;text-decoration:none;display:flex}.rail .rail-brand .mark{background:#4d97ff;border-radius:3px;flex:none;width:10px;height:10px}.rail nav{flex-direction:column;padding-top:.35rem;display:flex}.rail nav a{color:var(--rail-muted);align-items:center;gap:.85rem;padding:.95rem 1.35rem;font-size:.95rem;text-decoration:none;display:flex;position:relative}.rail nav a:hover{background:var(--rail-hover);color:var(--rail-fg)}.rail nav a[aria-current=page]{background:var(--rail-hover);color:#fff;font-weight:600}.rail nav a[aria-current=page]:before{content:"";background:#4d97ff;width:4px;position:absolute;inset:0 auto 0 0}.rail nav a svg{stroke:currentColor;fill:none;stroke-width:1.7px;flex:none;width:20px;height:20px}.rail nav a[aria-current=page] svg{stroke:#4d97ff}.rail .rail-foot{color:var(--rail-muted);border-top:1px solid #2c2c2f;margin-top:auto;padding:1rem 1.35rem 1.35rem;font-size:.82rem}.rail .rail-foot .who{text-overflow:ellipsis;margin-bottom:.35rem;display:block;overflow:hidden}.rail .rail-foot form{margin:0}.rail .rail-foot button{color:var(--rail-muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.rail .rail-foot button:hover{color:#fff;background:0 0}.workspace{min-width:0;padding-bottom:var(--actionbar-h);flex-direction:column;grid-column:2;display:flex}.workbar{z-index:10;background:var(--surface);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.85rem;padding:.85rem 1.5rem;display:flex;position:sticky;top:0}.workbar h1{letter-spacing:-.015em;white-space:nowrap;margin:0;font-size:1.35rem;font-weight:650}.workbar .spacer{flex:1}.scope{color:var(--accent);white-space:nowrap;align-items:center;gap:.3rem;font-size:.95rem;font-weight:600;display:inline-flex}.scope:after{content:"▾";font-size:.75rem}.chipbar{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.filterchip{border:1px solid var(--line-strong);border-radius:var(--pill);color:var(--muted);background:var(--surface);white-space:nowrap;align-items:center;gap:.35rem;padding:.3rem .75rem;font-size:.85rem;display:inline-flex}.filterchip b{color:var(--fg);font-weight:600}.filterchip.count{border-color:var(--accent);color:var(--accent);font-weight:600}.pagelede{color:var(--muted);max-width:78ch;margin:0;padding:.85rem 1.5rem 0}.table-wrap{background:var(--surface);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:.85rem 1rem}th:first-child,td:first-child{padding-left:1.5rem}th:last-child,td:last-child{padding-right:1.5rem}thead th{color:var(--muted);white-space:nowrap;border-bottom:1px solid var(--line-strong);background:var(--surface);font-size:.88rem;font-weight:500}tbody tr:hover td{background:var(--surface-sunken)}th.num,td.num{text-align:right;font-variant-numeric:tabular-nums}td.lead strong{font-weight:600;display:block}td.lead .sub{color:var(--faint);margin-top:.15rem;font-size:.82rem;display:block}td.lead .sub .k{text-transform:uppercase;letter-spacing:.03em;margin-right:.25rem;font-size:.72rem}td.num .sub{color:var(--faint);font-variant-numeric:tabular-nums;margin-top:.15rem;font-size:.8rem;display:block}td.answer{text-align:right;font-variant-numeric:tabular-nums;font-size:1.05rem;font-weight:700}td.answer.zero{color:var(--faint);font-weight:400}tr.is-suppressed td{color:var(--faint)}td .cellinput{text-align:right;font-variant-numeric:tabular-nums;width:5.5rem;padding:.35rem .5rem}tfoot td{background:var(--surface-sunken);border-top:1px solid var(--line-strong);border-bottom:none;font-weight:600}.pill{border-radius:var(--radius-sm);white-space:nowrap;background:var(--surface-sunken);color:var(--muted);padding:.2rem .6rem;font-size:.8rem;font-weight:500;display:inline-block}.pill.good{background:var(--accent-soft);color:var(--accent)}.pill.info{background:var(--info-bg);color:var(--info-fg)}.pill.warn{background:var(--warn-bg);color:var(--warn-fg)}.pill.bad{background:var(--danger-bg);color:var(--danger-fg)}.pill+.pill{margin-left:.3rem}.chip{border-radius:var(--radius-sm);background:var(--surface-sunken);border:1px solid var(--line);white-space:nowrap;margin:.1rem .3rem .1rem 0;padding:.18rem .5rem;font-size:.83rem;display:inline-block}.chip b{font-variant-numeric:tabular-nums}.panelgrid{grid-template-columns:repeat(auto-fit,minmax(19rem,1fr));gap:1rem;padding:1.25rem 1.5rem 0;display:grid}.infopanel{background:var(--info-panel);border-radius:var(--radius);padding:1.1rem 1.25rem}.infopanel h2{margin:0 0 .75rem;font-size:1.05rem}.infopanel .row{border-bottom:1px solid #0000000d;justify-content:space-between;gap:1rem;padding:.32rem 0;display:flex}.infopanel .row:last-child{border-bottom:none}.infopanel .row .v{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.infopanel .row .v .when{color:var(--muted);margin-left:.5rem;font-weight:400}.infopanel.is-warn{background:var(--warn-bg)}.infopanel.is-warn .v{color:var(--warn-fg)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.25rem}.card+.card{margin-top:.85rem}section{margin-top:1.75rem}.section-head{justify-content:space-between;align-items:baseline;gap:1rem;padding:0 1.5rem .6rem;display:flex}.section-head h2{margin:0;font-size:1.05rem}h1,h2,h3{letter-spacing:-.01em}.lede{color:var(--muted);max-width:78ch;margin:0}.muted{color:var(--muted)}.faint{color:var(--faint)}.callout{border-radius:var(--radius-sm);background:var(--surface-sunken);margin:1rem 1.5rem;padding:.75rem 1rem}.callout .callout-title{margin:0 0 .15rem;font-weight:600}.callout p{color:var(--muted);margin:.2rem 0 0;font-size:.9rem}.callout.warn{background:var(--warn-bg)}.callout.warn .callout-title{color:var(--warn-fg)}.callout.bad{background:var(--danger-bg)}.callout.bad .callout-title{color:var(--danger-fg)}.callout details{margin-top:.4rem;font-size:.87rem}.callout summary{cursor:pointer;color:var(--muted)}.callout details ul{columns:3;color:var(--muted);margin:.4rem 0 0;padding-left:1.1rem}.empty{border:1px dashed var(--line-strong);border-radius:var(--radius);background:var(--surface-sunken);text-align:center;margin:2.5rem 1.5rem;padding:3rem 1.5rem}.empty .empty-title{color:var(--fg);margin:0 auto .35rem;font-weight:600}.empty p{max-width:52ch;color:var(--muted);margin:0 auto}.actionbar{left:var(--rail-w);z-index:15;background:var(--surface);border-top:1px solid var(--line);padding:.85rem 1.5rem .65rem;position:fixed;bottom:0;right:0}.actionbar .actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.actionbar .countline{color:var(--muted);margin:.55rem 0 0;font-size:.85rem}button,.btn{font:inherit;border:1px solid var(--accent);border-radius:var(--pill);background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;padding:.55rem 1.25rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-block}button:hover:not(:disabled),.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}button:disabled{opacity:.5;cursor:default}button.secondary,.btn.secondary{background:var(--surface);color:var(--accent);border-color:var(--accent)}button.secondary:hover:not(:disabled),.btn.secondary:hover{background:var(--accent-soft)}button.danger{background:var(--surface);color:var(--danger-fg);border-color:var(--danger-line);padding:.35rem .85rem;font-size:.85rem}button.danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--danger-fg)}button.link{color:var(--muted);background:0 0;border:none;border-radius:0;padding:0;font-weight:400;text-decoration:underline}button.link:hover{color:var(--fg);background:0 0}form{gap:.7rem;margin-top:.85rem;display:grid}.form-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));align-items:end;gap:.85rem 1rem;display:grid}label{color:var(--muted);font-size:.85rem;font-weight:500}.field{gap:.3rem;display:grid}input,select{font:inherit;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--fg);width:100%;padding:.5rem .7rem}input[type=file]{background:var(--surface-sunken);padding:.35rem}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:1px}form.inline-form{align-items:center;gap:.4rem;margin:0;display:flex}form.inline-form input{min-width:9rem;padding:.3rem .5rem;font-size:.86rem}form.inline-form button{padding:.32rem .8rem;font-size:.85rem}form.inline-form .result,form.inline-form .error{margin:0;padding:.2rem .5rem;font-size:.8rem}td:last-child:has(details){white-space:nowrap;width:1%}td details>summary{cursor:pointer;color:var(--accent);font-size:.86rem;list-style:none;display:inline-block}td details>summary::-webkit-details-marker{display:none}td details form.inline-form{margin-top:.4rem}details.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0 1.5rem;padding:.9rem 1.15rem}details.panel+details.panel{margin-top:.75rem}details.panel>summary{cursor:pointer;font-weight:600;list-style:none}details.panel>summary::-webkit-details-marker{display:none}details.panel>summary:before{content:"›";color:var(--faint);margin-right:.5rem;display:inline-block}details.panel[open]>summary:before{content:"⌄"}details.panel>summary .hint{color:var(--faint);margin-left:.4rem;font-size:.86rem;font-weight:400}.error{color:var(--danger-fg);background:var(--danger-bg);border-radius:var(--radius-sm);margin:.85rem 1.5rem;padding:.6rem .85rem}.result{color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-sm);margin:.85rem 1.5rem;padding:.6rem .85rem}main.narrow{max-width:24rem;margin:0 auto;padding:6rem 1.5rem}main.narrow .error,main.narrow .result{margin-left:0;margin-right:0}main.narrow button{width:100%}@media (max-width:900px){.shell{grid-template-columns:1fr}.rail{flex-direction:row;align-items:center;width:auto;position:static;overflow-x:auto}.rail nav{flex-direction:row}.rail nav a{padding:.85rem .9rem}.rail nav a[aria-current=page]:before{width:auto;height:3px;inset:auto 0 0}.rail .rail-foot{white-space:nowrap;border:none;margin:0 0 0 auto}.rail .rail-foot .who{display:none}.workspace{grid-column:1}.actionbar{left:0}}
