:root{color-scheme:dark;--bg:#0b1420;--panel:#142233;--text:#f1f5f9;--muted:#a8b5c5;--line:#324257;--accent:#6ed6d0}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}main{width:min(100% - 32px,900px);margin:24px auto 60px}h1{line-height:1.15;font-size:clamp(1.7rem,4vw,2.6rem)}h2{margin-top:0}p,.muted{color:var(--muted)}a{color:var(--accent)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:22px}.card a{font-weight:650}.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}label,legend{font-weight:600}input[type=number],select{width:100%;padding:11px;border:1px solid #718196;border-radius:8px;background:#0b1420;color:var(--text);font:inherit}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.checks{display:grid;gap:10px}.checks label{display:flex;align-items:start;gap:10px;font-weight:400}.checks input{width:19px;height:19px;accent-color:var(--accent);margin-top:4px}button,.button{border:0;background:var(--accent);color:#08202a;font-weight:750;border-radius:8px;padding:12px 18px;cursor:pointer;font:inherit;text-decoration:none;display:inline-block}.button{font-weight:750}.result{border:1px solid var(--accent);border-radius:12px;padding:20px;margin-top:20px;background:#112c37}.metric{font-size:2rem;font-weight:800;color:var(--text)}.fineprint{font-size:.84rem}.hidden{display:none}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px}.brand{text-decoration:none;font-weight:800}.footer{border-top:1px solid var(--line);padding-top:18px;margin-top:30px;font-size:.9rem}details{margin-top:14px}summary{cursor:pointer;font-weight:600}fieldset{border:1px solid var(--line);border-radius:8px;margin-bottom:16px}body.embed main{margin:10px auto 18px}body.embed .topbar{display:none}body.embed .footer{display:block}@media (max-width:600px){main{width:min(100% - 24px,900px)}.metric{font-size:1.65rem}}

@media(max-width:360px){.card{padding:15px}.fields{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}

.related{margin-top:22px;display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.related a{white-space:nowrap}

/* Keep embed content height independent of the parent iframe viewport. */
body.embed{display:flow-root}
