:root{--blue:#004aac;--navy:#092452;--ink:#13264a;--muted:#586b85;--line:#d7e2f0;--surface:#fff;--bg:#f4f7fc}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}
body>header{background:#071c47;padding:15px 0}
body>header .wrapper{display:flex;align-items:center}
body>header img{width:170px;max-width:70vw;height:auto}
.wrapper{width:min(1160px,calc(100% - 36px));margin-inline:auto}
main{padding:25px 0 56px}
h1,h2,h3{line-height:1.2;letter-spacing:-.025em}
h1{font-size:clamp(2.05rem,4.8vw,3.9rem);max-width:850px;margin:12px 0 22px}
h2{font-size:clamp(1.45rem,2.5vw,2rem);margin:8px 0 14px}
h3{font-size:1.1rem;margin:0 0 12px}
p{margin:0 0 14px}
a{color:var(--blue);text-underline-offset:3px}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #e69f00;outline-offset:3px}
button{font:inherit;cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.5}
[hidden]{display:none!important}
.breadcrumb{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.9rem;color:var(--muted);padding-bottom:18px}
.hero{background:linear-gradient(125deg,#0a2b67,#0052b9 85%);color:white;border-radius:24px;padding:clamp(26px,5vw,55px);position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;right:-160px;top:-230px;width:470px;height:470px;border-radius:50%;border:70px solid #ffffff12;pointer-events:none}
.eyebrow,.step{font-size:.75rem;letter-spacing:.11em;font-weight:800}
.eyebrow{color:#b9e3ff}
.step{color:var(--blue)}
.lead{font-size:clamp(1rem,1.8vw,1.21rem);max-width:790px;color:#e7f0ff;line-height:1.7}
.hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}
.hero-tags span{display:inline-flex;padding:7px 12px;border-radius:100px;background:#ffffff18;border:1px solid #ffffff36;font-size:.86rem}
.layout{display:grid;gap:22px;margin-top:22px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:clamp(18px,3vw,32px);box-shadow:0 10px 34px rgba(11,49,100,.035)}
.section-heading,.zones-heading,.zone-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.section-heading{margin-bottom:12px}
.muted{color:var(--muted)}
.settings,.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.settings{background:#f2f7ff;border:1px solid #e4edf9;border-radius:16px;padding:17px;margin:23px 0}
.field{min-width:0}
.field label{font-size:.88rem;font-weight:700;display:block;margin-bottom:7px}
.field input{width:100%;min-height:46px;border:1px solid #b8cbe0;border-radius:10px;padding:10px 12px;font-size:1rem;color:#172749;background:white}
.field input:hover{border-color:#6b8db4}
.field small{display:block;font-size:.75rem;line-height:1.4;color:var(--muted);margin-top:5px}
.zones-heading{margin:27px 0 8px}
.zones-heading h3{margin:0}
.zones-heading span{font-size:.78rem;color:var(--muted)}
.zone{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:14px}
.zone-top{margin-bottom:16px}
.zone-number{color:var(--blue);font-size:.77rem;font-weight:850;letter-spacing:.09em}
.name-field{grid-column:span 3}
.btn-link{border:0;background:none;color:#9c3b47;text-decoration:underline;padding:6px 0;font-size:.82rem}
.btn-main,.btn-outline,.btn-ghost{border-radius:11px;padding:12px 19px;display:inline-flex;justify-content:center;align-items:center;gap:9px;font-size:.92rem;font-weight:750;text-decoration:none;min-height:46px}
.btn-main{border:1px solid var(--blue);background:var(--blue);color:white}
.btn-main:hover{background:#003a87}
.btn-outline{border:1px solid #8aadd8;color:var(--blue);background:#fff}
.btn-outline:hover,.btn-ghost:hover{background:#ecf4ff}
.btn-ghost{background:transparent;color:var(--blue);border:1px solid transparent;padding-inline:12px}
.add-zone{width:100%;border-style:dashed;margin-top:4px}
.formula-help{background:#f4f8fd;border-left:3px solid #5c95e0;padding:12px 15px;border-radius:5px;color:#344e70;font-size:.86rem;margin:20px 0}
.error{padding:13px 16px;border-radius:10px;border:1px solid #e5a8ad;color:#8b1b27;background:#fff2f4;font-weight:650;margin-bottom:15px}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.results{scroll-margin-top:20px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}
.stat{background:#f4f8ff;border:1px solid #dfebfc;border-radius:15px;padding:18px;min-width:0}
.stat small,.stat span{display:block;font-size:.75rem;color:#566e8d}
.stat strong{font-size:clamp(1.3rem,2.5vw,2.0rem);display:block;color:#063f94;word-wrap:break-word;margin:9px 0 1px;line-height:1.15}
.stat.featured{background:#062d6e;border-color:#062d6e}
.stat.featured small,.stat.featured span{color:#cbdcf5}
.stat.featured strong{color:#fff}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:12px;margin:19px 0}
table{width:100%;border-collapse:collapse;min-width:750px;font-size:.85rem}
table caption{text-align:left;padding:13px;font-weight:800;color:#163e79}
th{background:#f2f6fd;color:#27446d;text-align:right;font-size:.77rem}
td,th{padding:12px;border-bottom:1px solid var(--line)}
th:first-child,td:first-child{text-align:left}
td:not(:first-child){text-align:right;white-space:nowrap}
tr:last-child td{border-bottom:0}
.total-row{background:#eef6ff;font-weight:800}
.notice{padding:15px;border-radius:12px;background:#fff9e9;color:#664b0c;border:1px solid #f7e0a7;font-size:.88rem}
.referral{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:#eef5ff;border:1px solid #cce2ff;border-radius:18px;margin-top:25px;padding:25px}
.referral h3{margin:8px 0;font-size:1.35rem}
.referral small{color:#4d668a;line-height:1.5;display:block}
.referral .btn-main{white-space:nowrap}
.editorial{margin-top:34px}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.info{padding:22px}
.explainer{margin-top:18px}
.explainer h2:not(:first-child){margin-top:24px}
.faq details{border-top:1px solid var(--line);padding:14px 2px}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{font-weight:750;cursor:pointer}
.faq details p{padding:12px 0 0;color:var(--muted)}
.back-link{margin:27px 0}
@media(max-width:900px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.info-grid{grid-template-columns:1fr 1fr}.referral{grid-template-columns:1fr}}
@media(max-width:600px){.wrapper{width:calc(100% - 24px)}main{padding-top:16px}.hero{border-radius:16px}.panel{border-radius:15px}.settings,.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.name-field{grid-column:span 2}.settings .field:last-child{grid-column:span 2}.info-grid{grid-template-columns:1fr}.stat-grid{gap:8px}.stat{padding:13px}.stat strong{font-size:1.25rem}.actions>button,.referral .btn-main{width:100%}.zone{padding:15px}}
@media(max-width:360px){.fields{grid-template-columns:1fr}.name-field{grid-column:span 1}.settings{grid-template-columns:1fr}.settings .field:last-child{grid-column:span 1}.stat-grid{grid-template-columns:1fr 1fr}.stat strong{font-size:1.1rem}}
@media print{body{background:white}body>header,.breadcrumb,.hero-tags,.calculator,.actions,.referral,.editorial,.back-link,.ent-site-footer{display:none!important}.hero{background:white!important;color:black;padding:8px 0}.hero:after{display:none}.hero .lead,.hero .eyebrow{color:#333}.results{border:0;box-shadow:none;padding:0}.stat-grid{grid-template-columns:repeat(4,1fr)}.table-scroll{overflow:visible}table{min-width:0;font-size:9pt}td,th{padding:7px}h1{font-size:22pt}}
