:root{--bg:#f4f6f9;--panel:#fff;--panel-2:#fafbfc;--ink:#16191d;--ink-2:#4d5560;--ink-3:#79828e;--rule:#dfe3e9;--rule-2:#eceff3;--accent:#1f4e79;--accent-soft:#e8eff6;--good:#1c6b4a;--good-soft:#e6f2ec;--warn:#8a5a12;--warn-soft:#fdf2e0;--bad:#96231f;--bad-soft:#fbeceb;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#14171b;--panel:#1c2026;--panel-2:#21262d;--ink:#e8ebef;--ink-2:#b3bcc7;--ink-3:#838d99;--rule:#2f353d;--rule-2:#262b32;--accent:#7aa9d6;--accent-soft:#1f2a35;--good:#6cc39a;--good-soft:#17251f;--warn:#d9ad63;--warn-soft:#262015;--bad:#e08a84;--bad-soft:#2a1a19}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5}button,input,select{font:inherit;color:inherit}.masthead{background:var(--panel);border-bottom:1px solid var(--rule);flex-wrap:wrap;align-items:baseline;gap:16px;padding:14px 22px;display:flex}.masthead h1{letter-spacing:-.01em;margin:0;font-size:16px}.masthead .sub{color:var(--ink-3);font-size:12.5px}.masthead .spacer{flex:1}.layout{grid-template-columns:380px minmax(0,1fr);align-items:start;gap:18px;max-width:1680px;margin:0 auto;padding:18px 22px 60px;display:grid}@media (width<=1080px){.layout{grid-template-columns:minmax(0,1fr)}}.panel{background:var(--panel);border:1px solid var(--rule);border-radius:8px;overflow:hidden}.panel>header{border-bottom:1px solid var(--rule-2);background:var(--panel-2);align-items:center;gap:10px;padding:11px 15px;display:flex}.panel>header h2{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);margin:0;font-size:12px}.panel .body{padding:15px}.stack{flex-direction:column;gap:14px;display:flex}.field{gap:4px;display:grid}.field label{color:var(--ink-2);font-size:12px;font-weight:500}.field .hint{color:var(--ink-3);font-size:11px;line-height:1.35}.field input,.field select,.field textarea{width:100%;font:inherit;border:1px solid var(--rule);background:var(--panel);border-radius:5px;padding:6px 8px}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:#0000}.field input[type=number]{font-family:var(--mono);text-align:right;font-size:13px}.row2{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width<=520px){.row2{grid-template-columns:minmax(0,1fr)}}.row3{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.checkline{color:var(--ink-2);align-items:flex-start;gap:8px;font-size:12.5px;display:flex}.checkline input{margin-top:3px}fieldset{border:none;border-top:1px solid var(--rule-2);margin:4px 0 0;padding:14px 0 0}fieldset legend{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);padding:0 6px 0 0;font-size:11px}.btn{border:1px solid var(--rule);background:var(--panel);cursor:pointer;border-radius:5px;padding:6px 11px;font-size:12.5px}.btn:hover{background:var(--panel-2)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(1.08)}.btn.tiny{padding:3px 7px;font-size:11.5px}.tabs{gap:2px;display:flex}.tab{cursor:pointer;color:var(--ink-2);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:7px 12px;font-size:12.5px}.tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}.verdict{border:1px solid;border-radius:7px;margin-bottom:15px;padding:14px 15px}.verdict.limited{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 35%, transparent)}.verdict.exempt{background:var(--good-soft);border-color:color-mix(in srgb, var(--good) 35%, transparent)}.verdict h3{margin:0 0 5px;font-size:14px}.verdict p{color:var(--ink-2);margin:0;font-size:13px}.figures{background:var(--rule-2);border:1px solid var(--rule-2);border-radius:7px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;display:grid;overflow:hidden}.figure{background:var(--panel);padding:12px 14px}.figure .k{color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.figure .v{font-family:var(--mono);letter-spacing:-.02em;margin-top:3px;font-size:19px}.figure .n{color:var(--ink-3);margin-top:3px;font-size:11px;line-height:1.35}.figure.accent .v{color:var(--accent)}.figure.bad .v{color:var(--bad)}.figure.good .v{color:var(--good)}.meter{background:var(--rule-2);border-radius:4px;height:7px;margin-top:12px;overflow:hidden}.meter>span{background:var(--accent);height:100%;display:block}table.form{border-collapse:collapse;width:100%;font-size:13px}table.form th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);border-bottom:1px solid var(--rule);padding:7px 8px;font-size:11px;font-weight:600}table.form td{border-bottom:1px solid var(--rule-2);vertical-align:top;padding:7px 8px}table.form td.num{font-family:var(--mono);text-align:right;white-space:nowrap;width:150px}table.form td.ln{font-family:var(--mono);color:var(--ink-3);width:38px}table.form tr.total td{background:var(--panel-2);font-weight:600}table.form tr.headline td{background:var(--accent-soft);font-weight:700}table.form caption{text-align:left;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);padding:12px 8px 7px;font-size:12px;font-weight:600}.explain{color:var(--ink-3);margin-top:3px;font-size:11.5px;line-height:1.4}.override{color:var(--bad);margin-top:4px;font-size:11.5px;line-height:1.4}.cites{flex-wrap:wrap;gap:4px;margin-top:5px;display:flex}.cite{font-size:11px;font-family:var(--mono);background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:3px;padding:1px 5px}.cite:hover{text-decoration:underline}.tree{font-size:13px}.node{border-left:2px solid var(--rule);margin-left:7px;padding-left:13px}.node.root{border-left:none;margin-left:0;padding-left:0}.node-head{align-items:baseline;gap:10px;padding:5px 0;display:flex}.node-head .toggle{cursor:pointer;color:var(--ink-3);font-family:var(--mono);background:0 0;border:none;width:16px;padding:0 2px;font-size:11px}.node-head .lbl{flex:1}.node-head .amt{font-family:var(--mono);white-space:nowrap}.node-head .fl{font-family:var(--mono);color:var(--ink-3);font-size:11px}.note{border:1px solid;border-radius:6px;margin-bottom:8px;padding:9px 12px;font-size:12.5px}.note .sev{text-transform:uppercase;letter-spacing:.07em;margin-right:7px;font-size:10.5px;font-weight:700}.note.error{background:var(--bad-soft);border-color:color-mix(in srgb, var(--bad) 30%, transparent)}.note.error .sev{color:var(--bad)}.note.warning{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 30%, transparent)}.note.warning .sev{color:var(--warn)}.note.info{background:var(--panel-2);border-color:var(--rule-2)}.note.info .sev{color:var(--ink-3)}.badge{border:1px solid var(--rule);color:var(--ink-2);border-radius:10px;padding:1px 7px;font-size:11px}.badge.bad{background:var(--bad-soft);border-color:color-mix(in srgb, var(--bad) 30%, transparent);color:var(--bad)}.badge.warn{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 30%, transparent);color:var(--warn)}.badge.good{background:var(--good-soft);border-color:color-mix(in srgb, var(--good) 30%, transparent);color:var(--good)}.scrim{z-index:40;background:#00000059;position:fixed;inset:0}.drawer{background:var(--panel);border-left:1px solid var(--rule);z-index:41;flex-direction:column;width:min(620px,94vw);display:flex;position:fixed;top:0;bottom:0;right:0}.drawer header{border-bottom:1px solid var(--rule);padding:14px 18px}.drawer header h3{margin:0 0 3px;font-size:15px}.drawer header .meta{color:var(--ink-3);font-size:12px}.drawer .content{flex:1;padding:16px 18px;overflow:auto}.drawer pre{white-space:pre-wrap;word-wrap:break-word;font-family:var(--mono);color:var(--ink-2);margin:0;font-size:12px;line-height:1.6}.errbar{background:var(--bad-soft);border:1px solid color-mix(in srgb, var(--bad) 30%, transparent);color:var(--bad);border-radius:6px;margin-bottom:14px;padding:9px 13px;font-size:13px}.empty{color:var(--ink-3);padding:20px 0;font-size:13px}.marketing{max-width:1100px;margin:0 auto;padding:0 24px}.nav{z-index:20;background:color-mix(in srgb, var(--panel) 92%, transparent);-webkit-backdrop-filter:saturate(180%)blur(8px);backdrop-filter:saturate(180%)blur(8px);border-bottom:1px solid var(--rule);position:sticky;top:0}.nav-inner{align-items:center;gap:14px;max-width:1100px;margin:0 auto;padding:13px 24px;display:flex}.brand{letter-spacing:-.01em;color:var(--ink);font-size:15px;font-weight:700;text-decoration:none}.brand span{color:var(--accent)}.nav .spacer{flex:1}.hero{padding:74px 0 56px}.hero h1{letter-spacing:-.028em;max-width:17ch;margin:0 0 18px;font-size:clamp(30px,4.6vw,47px);line-height:1.08}.hero p.lede{color:var(--ink-2);max-width:64ch;margin:0 0 26px;font-size:17.5px;line-height:1.55}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:20px;margin-bottom:20px;padding:4px 12px;font-size:11.5px;font-weight:600;display:inline-block}.cta-row{flex-wrap:wrap;align-items:center;gap:11px;display:flex}.btn.lg{border-radius:6px;padding:10px 20px;font-size:14.5px}.section{border-top:1px solid var(--rule);padding:52px 0}.section h2{letter-spacing:-.02em;margin:0 0 10px;font-size:24px}.section p.sub{color:var(--ink-2);max-width:68ch;margin:0 0 28px;font-size:15px}.grid3{grid-template-columns:repeat(auto-fit,minmax(258px,1fr));gap:18px;display:grid}.card{background:var(--panel);border:1px solid var(--rule);border-radius:9px;padding:20px}.card h3{margin:0 0 7px;font-size:15px}.card p{color:var(--ink-2);margin:0;font-size:13.5px;line-height:1.55}.card .kicker{font-family:var(--mono);color:var(--accent);text-transform:uppercase;letter-spacing:.06em;margin-bottom:9px;font-size:11px}.compare{border-collapse:collapse;width:100%;font-size:14px}.compare th,.compare td{border-bottom:1px solid var(--rule-2);text-align:left;vertical-align:top;padding:11px 13px}.compare th{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-size:11.5px}.compare td.yes{color:var(--good);font-weight:600}.compare td.no{color:var(--ink-3)}.compare tbody tr:hover{background:var(--panel-2)}.footer{border-top:1px solid var(--rule);color:var(--ink-3);padding:30px 0 46px;font-size:12.5px}.footer a{color:var(--ink-2)}.auth-wrap{place-items:center;min-height:100vh;padding:40px 20px;display:grid}.auth-card{background:var(--panel);border:1px solid var(--rule);border-radius:11px;width:100%;max-width:430px;padding:30px}.auth-card h1{letter-spacing:-.02em;margin:0 0 6px;font-size:21px}.auth-card .sub{color:var(--ink-2);margin:0 0 22px;font-size:13.5px}.auth-card .field{margin-bottom:14px}.auth-card .btn{justify-content:center;width:100%;padding:9px}.auth-alt{border-top:1px solid var(--rule-2);color:var(--ink-2);text-align:center;margin-top:18px;padding-top:16px;font-size:13px}.shell{grid-template-columns:214px minmax(0,1fr);min-height:100vh;display:grid}@media (width<=900px){.shell{grid-template-columns:minmax(0,1fr)}}.sidebar{border-right:1px solid var(--rule);background:var(--panel);flex-direction:column;gap:3px;height:100vh;padding:15px 12px;display:flex;position:sticky;top:0;overflow:auto}@media (width<=900px){.sidebar{height:auto;position:static}}.sidebar .brand{padding:6px 10px 14px;display:block}.side-link{color:var(--ink-2);border-radius:6px;align-items:center;gap:9px;padding:7px 10px;font-size:13.5px;text-decoration:none;display:flex}.side-link:hover{background:var(--panel-2);color:var(--ink)}.side-link.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.side-group{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);padding:15px 10px 5px;font-size:10.5px}.sidebar .foot{border-top:1px solid var(--rule-2);color:var(--ink-3);margin-top:auto;padding-top:14px;font-size:12px}.main{min-width:0}.topbar{border-bottom:1px solid var(--rule);background:var(--panel);flex-wrap:wrap;align-items:center;gap:12px;padding:13px 22px;display:flex}.topbar h1{letter-spacing:-.015em;margin:0;font-size:17px}.topbar .crumb{color:var(--ink-3);font-size:12.5px}.topbar .spacer{flex:1}.page{max-width:1500px;padding:20px 22px 70px}.toolbar{flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:15px;display:flex}.toolbar .spacer{flex:1}table.data{border-collapse:collapse;background:var(--panel);width:100%;font-size:13.5px}table.data th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);border-bottom:1px solid var(--rule);padding:9px 12px;font-size:11px;font-weight:600}table.data td{border-bottom:1px solid var(--rule-2);vertical-align:middle;padding:10px 12px}table.data tbody tr:hover{background:var(--panel-2)}table.data td.num{font-family:var(--mono);text-align:right;white-space:nowrap}table.data a{color:var(--accent);font-weight:500;text-decoration:none}table.data a:hover{text-decoration:underline}.status{white-space:nowrap;border:1px solid;border-radius:11px;padding:2px 9px;font-size:11px}.status.draft{background:var(--panel-2);border-color:var(--rule);color:var(--ink-2)}.status.in_review{background:var(--warn-soft);border-color:color-mix(in srgb, var(--warn) 32%, transparent);color:var(--warn)}.status.approved{background:var(--good-soft);border-color:color-mix(in srgb, var(--good) 32%, transparent);color:var(--good)}.modal-scrim{z-index:50;background:#0006;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--rule);border-radius:10px;width:100%;max-width:480px;max-height:90vh;overflow:auto}.modal header{border-bottom:1px solid var(--rule-2);padding:16px 20px}.modal header h2{margin:0;font-size:16px}.modal .body{padding:20px}.modal footer{border-top:1px solid var(--rule-2);justify-content:flex-end;gap:9px;padding:14px 20px;display:flex}.stat-row{background:var(--rule-2);border:1px solid var(--rule-2);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin-bottom:20px;display:grid;overflow:hidden}.stat{background:var(--panel);padding:14px 16px}.stat .k{color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;font-size:11px}.stat .v{font-size:24px;font-family:var(--mono);letter-spacing:-.02em;margin-top:3px}.copyfield{align-items:stretch;gap:7px;display:flex}.copyfield input{font-family:var(--mono);flex:1;font-size:11.5px}.inline-note{color:var(--ink-3);margin-top:6px;font-size:12.5px;line-height:1.45}.center-empty{text-align:center;color:var(--ink-3);padding:46px 20px}.center-empty h3{color:var(--ink-2);margin:0 0 6px;font-size:15px}.center-empty p{margin:0 0 16px;font-size:13.5px}.spinner{text-align:center;color:var(--ink-3);padding:40px;font-size:13.5px}.firm-results{gap:6px;margin:4px 0 6px;display:grid}.firm-result{text-align:left;cursor:pointer;background:var(--panel);border:1px solid var(--rule);width:100%;color:var(--ink);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;font-size:13.5px;display:flex}.firm-result:hover{border-color:var(--accent);background:var(--accent-soft)}.firm-result .go{color:var(--accent);white-space:nowrap;font-size:12px;font-weight:600}.adj-group{border-left:3px solid;flex-direction:column;gap:14px;padding:2px 0 2px 12px;display:flex}.adj-group.adds{border-color:color-mix(in srgb, var(--good) 55%, transparent)}.adj-group.reduces{border-color:color-mix(in srgb, var(--bad) 55%, transparent)}.adj-head{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-2);font-size:11px;font-weight:600}.adj-sign{width:14px;font-family:var(--mono);font-size:13px;display:inline-block}.adj-group.adds .adj-sign{color:var(--good)}.adj-group.reduces .adj-sign{color:var(--bad)}.adj-group>.hint{color:var(--ink-3);font-size:11px;line-height:1.35}.modal:has(.import-step){max-width:620px}.import-step{border-bottom:1px solid var(--rule-2);align-items:flex-start;gap:12px;padding:12px 0;font-size:13.5px;display:flex}.import-num{background:var(--accent-soft);width:24px;height:24px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.import-list{margin:6px 0 0;padding-left:18px}.import-list li{margin:2px 0}.import-preview{border:1px solid var(--rule-2);border-radius:6px;max-height:300px;margin-top:6px;overflow:auto}.import-preview table.data td{padding:7px 10px;font-size:12.5px}.app-card{border-top:1px solid var(--rule);gap:10px;padding:14px 18px;display:grid}.app-card:first-of-type{border-top:0}.app-card .meta{color:var(--ink-2);flex-wrap:wrap;gap:6px 18px;font-size:12.5px;display:flex}.app-card .meta b{color:var(--ink-3);margin-right:4px;font-weight:500}.app-card .usecase{color:var(--ink-2);background:var(--bg);white-space:pre-wrap;border-radius:6px;padding:8px 10px;font-size:13px}
