:root{--ledger:#0C2233;--teal:#0EA893;--teal-deep:#0A7D6E;--teal-soft:#E0F2EE;--paper:#F4F7F7;--card:#fff;--ink:#132430;--ink2:#4E6470;--ink3:#7C8F99;--line:#D9E2E2;--line2:#E8EEEE;--good:#2E7D52;--good-bg:#E4F1E9;--warn:#A8690F;--warn-bg:#F7EEDD;--risk:#A63A2B;--risk-bg:#F7E7E3;--sans:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,monospace}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.55 var(--sans)}a{color:var(--teal-deep)}.mono{font-family:var(--mono);font-size:.92em}.shell{max-width:1000px;margin:0 auto;padding:24px 28px 60px}.top{background:var(--ledger);color:#e6edf1;padding:12px 28px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.top b{color:#fff}.top .who{margin-left:auto;font-size:12.5px;color:#9fb3bd}h1{font-size:21px;margin:0 0 4px}.sub{color:var(--ink2);font-size:13px;margin:0 0 20px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-bottom:16px;box-shadow:0 1px 2px rgba(12,34,51,.05),0 8px 24px rgba(12,34,51,.07)}.card h3{margin:0 0 12px;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink2)}table{border-collapse:collapse;width:100%;font-size:13px}th{font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--ink3);text-align:left;padding:7px 10px;border-bottom:1.5px solid var(--line)}td{padding:9px 10px;border-bottom:1px solid var(--line2)}.chip{display:inline-block;font:600 11px var(--sans);border-radius:999px;padding:3px 10px}.c-good{background:var(--good-bg);color:var(--good)}.c-warn{background:var(--warn-bg);color:var(--warn)}.c-risk{background:var(--risk-bg);color:var(--risk)}.c-mut{background:#eceff0;color:var(--ink3)}.btn{background:var(--teal-deep);color:#fff;border:none;border-radius:8px;padding:9px 16px;font:600 13.5px var(--sans);cursor:pointer}.btn[disabled]{background:#9fb5b1;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--ink2);border:1px solid var(--line)}label.row{display:flex;gap:9px;align-items:flex-start;margin-bottom:10px;font-size:13px}input[type=checkbox],input[type=radio]{margin-top:3px;accent-color:var(--teal-deep)}.note{font-size:11.5px;margin-top:8px;line-height:1.5}.empty,.note{color:var(--ink3)}.empty{font-size:13px;padding:14px 0}