:root {
  --ink:#17324D;--muted:#536B7D;--paper:#FFFDF6;--paper-cool:#F2F7F9;--white:#FFFFFF;
  --primary:#2B6F91;--primary-dark:#174C67;--daylight:#E8B83F;--daylight-soft:#FFF1B8;
  --safe:#3B7A69;--limit:#A3473E;--line:#C9D5D9;--grid:rgba(23,50,77,.06);
  color:var(--ink);background:var(--paper);font:16px/1.62 'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;min-width:320px;background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:28px 28px}
a{color:var(--primary-dark);text-underline-offset:.2em} a:hover{text-decoration-thickness:3px} button,input,select{font:inherit} button,a,input,select{min-height:44px} img,svg{max-width:100%}
.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);background:var(--ink);color:#fff;padding:10px 14px;z-index:100}.skip-link:focus{transform:none}:focus-visible{outline:3px solid var(--daylight);outline-offset:3px}
.site-header{max-width:1180px;margin:0 auto;padding:24px 22px 18px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}
.brand{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;text-decoration:none;font-size:1.08rem}.site-header nav{display:flex;flex-wrap:wrap;gap:8px 20px}.site-header nav a{color:var(--ink);text-decoration:none;font-weight:650}.menu-toggle{display:none;border:1px solid var(--ink);background:var(--white);border-radius:4px;padding:8px 14px;color:var(--ink)}
main{max-width:1180px;margin:0 auto;padding:18px 22px 80px}.page-heading{padding:50px 0 24px;max-width:920px}.home .page-heading{max-width:760px}h1,h2,h3{font-family:'Arial Narrow','Aptos Narrow','Segoe UI',sans-serif;line-height:1.1;margin-top:0;text-wrap:balance}h1{font-size:clamp(2.5rem,6vw,5.5rem);letter-spacing:-.045em}h2{font-size:clamp(1.7rem,3vw,2.7rem);letter-spacing:-.025em;margin-top:56px}h3{font-size:1.25rem}p,li{max-width:76ch}.annotation{margin:0 0 10px;color:var(--primary-dark);font:800 .75rem/1.2 ui-monospace,'Cascadia Mono',Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}
.opening-grid{display:grid;grid-template-columns:5fr 2fr;gap:50px;align-items:stretch;margin-bottom:70px}.lead{font:700 clamp(1.25rem,2.5vw,1.8rem)/1.38 'Arial Narrow','Aptos Narrow','Segoe UI',sans-serif;margin-top:0}.opening-grid dl{margin:30px 0 0;border-top:1px solid var(--line)}.opening-grid dl div{display:grid;grid-template-columns:105px 1fr;gap:18px;padding:11px 0;border-bottom:1px solid var(--line)}.opening-grid dt{font-weight:800}.opening-grid dd{margin:0;color:var(--muted)}
.daylight-rail{position:relative;display:grid;grid-template-rows:1fr auto 4fr auto;border-left:6px solid var(--primary);padding-left:22px;min-height:300px;background:linear-gradient(180deg,var(--daylight-soft),transparent)}.daylight-rail span,.daylight-rail strong,.daylight-rail em{font:800 1.1rem/1 ui-monospace,'Cascadia Mono',Consolas,monospace;font-style:normal}.daylight-rail strong{color:var(--safe);align-self:end}.daylight-rail em{color:var(--limit);align-self:end}.daylight-rail p{font-size:.9rem;color:var(--muted)}
.calculator-field{display:grid;grid-template-columns:5fr 7fr;gap:34px 48px;margin:80px 0;padding:34px;background:var(--white);border:1px solid var(--ink);box-shadow:10px 10px 0 rgba(43,111,145,.08)}.calculator-copy h2{margin-top:0}.worksheet{display:grid;gap:11px}.worksheet>label,.worksheet legend{font-weight:800}.unit-input{display:flex;align-items:stretch}.unit-input input{width:100%;border:1px solid var(--ink);border-radius:4px 0 0 4px;padding:10px}.unit-input span{display:grid;place-items:center;padding:0 12px;background:var(--paper-cool);border:1px solid var(--ink);border-left:0;border-radius:0 4px 4px 0;font-family:ui-monospace,'Cascadia Mono',Consolas,monospace}.worksheet select{width:100%;border:1px solid var(--ink);border-radius:4px;background:#fff;padding:10px}.worksheet small{color:var(--muted)}
.safety-gate{margin:14px 0 5px;border:2px solid var(--limit);border-radius:2px;padding:16px}.safety-gate label{display:flex;gap:10px;align-items:flex-start;font-weight:800}.safety-gate input{min-height:auto;margin-top:5px}.safety-gate p{margin-bottom:0;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:2px solid var(--primary-dark);border-radius:4px;background:var(--primary);color:#fff;font-weight:800;text-decoration:none;cursor:pointer}.button-quiet{background:#fff;color:var(--primary-dark)}
.result-sheet{grid-column:1/-1;border:2px solid var(--safe);padding:24px;background:var(--paper-cool)}.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.result-grid div{border-left:5px solid var(--safe);padding:9px 14px;background:#fff}.result-grid span{display:block;color:var(--muted)}.result-grid strong{font:800 1.15rem/1.3 ui-monospace,'Cascadia Mono',Consolas,monospace}.reference-rail{position:relative;height:78px;margin:26px 10px 4px;border-top:6px solid var(--primary);font:700 .78rem/1.25 ui-monospace,'Cascadia Mono',Consolas,monospace}.rail-start{position:absolute;top:12px;left:0}.rail-reference{position:absolute;top:12px;left:20%;color:var(--safe)}.rail-limit{position:absolute;top:12px;right:0;color:var(--limit)}#rail-marker{position:absolute;left:0;bottom:-.7rem;width:100%;height:.4rem;appearance:none;border:0;background:transparent}#rail-marker::-webkit-progress-bar{background:transparent}#rail-marker::-webkit-progress-value{background:var(--daylight);border-radius:999px}#rail-marker::-moz-progress-bar{background:var(--daylight);border-radius:999px}.result-sheet.danger{border-color:var(--limit)}.result-sheet.stopped .reference-rail{display:none}.no-js-note{grid-column:1/-1;border-left:6px solid var(--limit);padding:18px;background:#fff}.js .no-js-only{display:none}.no-js .js-only{display:none!important}
.method-annotations{margin:80px 0;padding:34px;border-top:8px solid var(--daylight);background:var(--ink);color:#fff}.method-annotations h2{margin-top:0}.method-annotations .annotation{color:var(--daylight)}.method-annotations ol{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;list-style-position:inside;padding:0}.method-annotations li{border-top:1px solid var(--daylight);padding-top:14px}.editorial-body,.legal-page{max-width:830px;margin:0 auto}.editorial-body a,.legal-page a{overflow-wrap:anywhere}.editorial-body>h2,.legal-page>h2{padding-top:24px;border-top:2px solid var(--line)}.editorial-body li{margin-bottom:8px}
.site-footer{background:var(--ink);color:#fff;padding:38px max(22px,calc((100vw - 1136px)/2));display:grid;grid-template-columns:1fr 2fr;gap:28px}.site-footer a{color:#fff}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 18px}.site-footer p{grid-column:1/-1;color:#dce7ed;margin:0}.consent-settings{position:fixed;right:14px;bottom:14px;z-index:30;border:2px solid var(--ink);border-radius:4px;background:#fff;color:var(--ink);padding:8px 12px}.consent-banner[hidden]{display:none!important}.consent-banner{position:fixed;inset:0;z-index:50;display:grid;align-items:end;background:rgba(23,50,77,.58);padding:18px}.consent-panel{width:min(640px,100%);margin:0 auto;background:#fff;border:2px solid var(--ink);padding:24px}.consent-panel h2{margin:0 0 14px}.consent-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:820px){.site-header{align-items:flex-start}.menu-toggle{display:inline-flex}.js .site-header nav{display:none;position:absolute;top:74px;right:18px;width:min(280px,calc(100vw - 36px));background:#fff;border:2px solid var(--ink);padding:16px;box-shadow:10px 10px 0 rgba(43,111,145,.08)}.js .site-header nav.open{display:grid}.opening-grid,.calculator-field{grid-template-columns:1fr}.daylight-rail{grid-template-columns:auto 1fr auto;grid-template-rows:auto;border-left:0;border-top:6px solid var(--primary);min-height:unset;padding:20px 0 0}.daylight-rail p{grid-column:1/-1}.method-annotations ol{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:1fr}.site-footer p{grid-column:1}}
@media(max-width:520px){main,.site-header{padding-left:16px;padding-right:16px}h1{font-size:clamp(2.25rem,13vw,3.5rem);overflow-wrap:anywhere}.calculator-field,.method-annotations{padding:20px}.method-annotations ol,.result-grid{grid-template-columns:1fr}.consent-actions .button{width:100%}.rail-reference{left:18%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
