:root{--navy:#0f2747;--navy-2:#1b3a66;--slate-9:#0f172a;--slate-7:#334155;--slate-5:#64748b;--slate-3:#cbd5e1;--slate-2:#e2e8f0;--slate-1:#f1f5f9;--white:#fff;--green:#15803d;--amber:#b45309;--red:#b91c1c;--accent:#1d4ed8}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:var(--slate-9);background:var(--slate-1);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.55}a{color:var(--accent)}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}.hero{background:var(--navy);color:var(--white);padding:44px 0 84px}.hero h1{letter-spacing:-.01em;margin:6px 0 12px;font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.15}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#9fb7d9;margin:0;font-size:.75rem;font-weight:600}.lede{color:#d5e0f0;max-width:760px;margin:0;font-size:1.05rem}.calc{margin-top:-56px}.calc-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:20px;display:grid}@media (max-width:860px){.calc-grid{grid-template-columns:1fr}}.panel{background:var(--white);border:1px solid var(--slate-2);border-radius:10px;padding:22px;box-shadow:0 1px 2px #0f172a0f}.panel h2{color:var(--navy);margin:0 0 14px;font-size:1.1rem}.field{margin-bottom:16px}.field label,.modal label{color:var(--slate-7);margin-bottom:6px;font-size:.88rem;font-weight:600;display:block}select,input[type=number],input[type=text],input[type=email],input[type=password]{border:1px solid var(--slate-3);background:var(--white);width:100%;color:var(--slate-9);border-radius:6px;padding:10px 12px;font-family:inherit;font-size:1rem}select:focus,input:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.slider-row{align-items:center;gap:12px;display:flex}.slider-row input[type=range]{min-width:0;accent-color:var(--navy-2);flex:1}.num-wrap{flex-shrink:0;align-items:center;gap:6px;width:150px;display:flex}.num-wrap span{color:var(--slate-5);white-space:nowrap;font-size:.8rem}.range-ends{color:var(--slate-5);justify-content:space-between;margin-right:162px;font-size:.72rem;display:flex}.state-note{color:var(--slate-7);background:var(--slate-1);border-left:3px solid var(--navy-2);border-radius:0 6px 6px 0;margin:4px 0 0;padding:10px 12px;font-size:.82rem}.tier{border:1px solid;border-radius:8px;padding:16px 18px}.tier strong{margin:2px 0 6px;font-size:1.25rem;display:block}.tier p{margin:0;font-size:.9rem}.tier-kicker{text-transform:uppercase;letter-spacing:.07em;font-size:.72rem;font-weight:700}.tier.t0{color:#14532d;background:#f0fdf4;border-color:#bbf7d0}.tier.t1{color:#1e3a8a;background:#eff6ff;border-color:#bfdbfe}.tier.t2{color:#78350f;background:#fffbeb;border-color:#fde68a}.tier.t3{color:#7f1d1d;background:#fef2f2;border-color:#fecaca}.money{grid-template-columns:1fr 1fr;gap:12px;margin:16px 0;display:grid}@media (max-width:520px){.money{grid-template-columns:1fr}.num-wrap{width:120px}.range-ends{margin-right:132px}}.money>div{background:var(--navy);color:var(--white);border-radius:8px;padding:14px 16px}.money-label{color:#b8cae6;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600;display:block}.money-value{font-variant-numeric:tabular-nums;margin-top:4px;font-size:clamp(1.1rem,2.4vw,1.45rem);font-weight:700;display:block}.reqs{margin:0 0 16px;padding:0;list-style:none}.reqs li{border-bottom:1px solid var(--slate-2);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.reqs small,.items small{color:var(--slate-5);font-size:.8rem;font-weight:400;display:block}.reqs b{font-size:.92rem}.badge{text-align:center;text-transform:uppercase;letter-spacing:.04em;border-radius:4px;flex-shrink:0;width:96px;margin-top:2px;padding:4px 6px;font-size:.7rem;font-weight:700}.required .badge{color:var(--red);background:#fee2e2}.conditional .badge{color:var(--amber);background:#fef3c7}.not_required .badge{color:var(--green);background:#dcfce7}.items{border-collapse:collapse;width:100%;margin-bottom:14px;font-size:.88rem}.items th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--slate-5);border-bottom:2px solid var(--slate-2);padding:6px 8px;font-size:.72rem}.items td{border-bottom:1px solid var(--slate-2);vertical-align:top;font-variant-numeric:tabular-nums;padding:9px 8px}.items td:nth-child(n+2),.items th:nth-child(n+2){text-align:right;white-space:nowrap}.items tr.total td{border-top:2px solid var(--navy);background:var(--slate-1)}.flags{color:#78350f;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin:0 0 16px;padding:12px 14px 12px 30px;font-size:.85rem}.flags li+li{margin-top:6px}.cta{background:var(--accent);width:100%;color:var(--white);cursor:pointer;border:0;border-radius:8px;padding:14px 18px;font-family:inherit;font-size:1rem;font-weight:700;display:inline-block}.cta:hover{background:#1e40af}.cta:disabled{opacity:.6;cursor:wait}.disclaimer{color:var(--slate-5);margin:10px 0 0;font-size:.78rem}.modal-backdrop{z-index:50;background:#0f172a99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--white);border-radius:12px;width:100%;max-width:440px;padding:26px;position:relative}.modal h3{color:var(--navy);margin:0 0 8px;padding-right:24px;font-size:1.2rem}.modal p{color:var(--slate-7);margin:0 0 14px;font-size:.9rem}.modal input{margin-bottom:12px}.modal small{color:var(--slate-5);margin-top:10px;font-size:.75rem;display:block}.modal-x{cursor:pointer;color:var(--slate-5);background:0 0;border:0;font-size:1.6rem;line-height:1;position:absolute;top:10px;right:12px}.form-err{font-weight:600;color:var(--red)!important}.summary{margin-top:20px}.summary-head{border-bottom:2px solid var(--navy);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:8px;padding-bottom:12px;display:flex}.summary-head h2{margin:0;font-size:1.3rem}.summary-head p{color:var(--slate-5);margin:2px 0 0;font-size:.85rem}.summary-head .cta{width:auto}.summary h3{color:var(--navy);margin:18px 0 6px;font-size:1rem}.summary p,.summary li{font-size:.9rem}.checklist{padding:0;list-style:none}.checklist li{gap:10px;padding:5px 0;display:flex}.box{border:1.5px solid var(--slate-7);border-radius:2px;flex-shrink:0;width:14px;height:14px;margin-top:4px}.article{background:var(--white);border:1px solid var(--slate-2);border-radius:10px;margin:28px 0 40px;padding:32px clamp(18px,4vw,44px)}.article h2{color:var(--navy);margin:34px 0 10px;font-size:1.5rem;line-height:1.25}.article h2:first-child{margin-top:0}.article h3{color:var(--navy-2);margin:22px 0 6px;font-size:1.1rem}.article p,.article li{color:var(--slate-7);max-width:78ch}.table-scroll{overflow-x:auto}.code-table{border-collapse:collapse;width:100%;min-width:620px;margin:10px 0 6px;font-size:.88rem}.code-table th{background:var(--navy);color:var(--white);text-align:left;padding:9px 10px;font-size:.78rem}.code-table td{border:1px solid var(--slate-2);vertical-align:top;padding:8px 10px}.table-note{color:var(--slate-5)!important;font-size:.8rem!important}details{border-bottom:1px solid var(--slate-2);padding:12px 0}summary{cursor:pointer;color:var(--slate-9);font-weight:600}details p{margin:8px 0 0}.footer{background:var(--navy);color:#b8cae6;padding:20px 0;font-size:.85rem}.footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.footer a{color:var(--white)}.footer-grid{grid-template-columns:1fr 2fr;gap:16px;display:grid!important}.footer-grid strong{color:var(--white);display:block}.footer-grid nav{flex-wrap:wrap;justify-content:flex-end;gap:6px 18px;display:flex}@media (max-width:700px){.footer-grid{grid-template-columns:1fr}.footer-grid nav{justify-content:flex-start}}.eyebrow a{color:inherit}.privacy-top{padding-top:28px}.admin{max-width:1400px;margin:0 auto;padding:24px 20px 60px}.admin-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.admin-head h1{color:var(--navy);margin:0;font-size:1.4rem}.admin-controls{flex-wrap:wrap;align-items:center;gap:10px;font-size:.85rem;display:flex}.btn{background:var(--white);border:1px solid var(--slate-3);cursor:pointer;color:var(--slate-9);white-space:nowrap;border-radius:6px;padding:7px 12px;font-family:inherit;font-size:.82rem;font-weight:600}.btn:hover{background:var(--slate-1)}.btn.primary{background:var(--navy);color:var(--white);border-color:var(--navy)}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px;display:grid}@media (max-width:640px){.stats{grid-template-columns:repeat(2,1fr)}}.stat{background:var(--white);border:1px solid var(--slate-2);border-radius:8px;padding:12px 14px}.stat b{color:var(--navy);font-size:1.5rem;display:block}.stat span{color:var(--slate-5);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.radar-scroll{background:var(--white);border:1px solid var(--slate-2);border-radius:8px;overflow-x:auto}.radar{border-collapse:collapse;width:100%;min-width:1050px;font-size:.84rem}.radar th{text-align:left;background:var(--slate-1);text-transform:uppercase;letter-spacing:.05em;color:var(--slate-5);border-bottom:1px solid var(--slate-2);padding:9px 10px;font-size:.72rem}.radar td{border-bottom:1px solid var(--slate-2);vertical-align:top;padding:10px}.radar small{color:var(--slate-5);display:block}.pill{background:var(--slate-2);color:var(--slate-7);white-space:nowrap;border-radius:4px;padding:3px 7px;font-size:.68rem;font-weight:700;display:inline-block}.pill.hot{color:var(--red);background:#fee2e2}.pill.lead{color:var(--green);background:#dcfce7;margin-left:4px}.empty{text-align:center;color:var(--slate-5);padding:40px}.login{max-width:380px;margin:12vh auto}@media print{body{background:#fff}.no-print,.calc-grid,.modal-backdrop{display:none!important}.calc{margin:0}.wrap{max-width:none;padding:0}.print-area{box-shadow:none;border:0;padding:0}.items tr,.checklist li{break-inside:avoid}}
