/* Calculators — Carbon Design System (White). Shares site tokens. */
:root{--bg:#ffffff;--panel:#f4f4f4;--surface:#ffffff;--line:#e0e0e0;--line-strong:#8d8d8d;--ink:#161616;--mut:#525252;--blue:#0f62fe;--blue-hover:#0353e9;--link:#0043ce;--danger:#da1e28}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 "IBM Plex Sans",system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}
.calc-wrap{max-width:880px;margin:0 auto;padding:40px 24px 80px}
.calc-kicker{font:500 12px/1.4 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
h1{font:300 clamp(1.8rem,4vw,2.5rem)/1.15 "IBM Plex Sans",sans-serif;margin:8px 0 4px;letter-spacing:-.01em}
.calc-sub{color:var(--mut);margin:0 0 32px}
.panel{background:var(--surface);border:1px solid var(--line);padding:24px;margin-bottom:24px}
label{display:block;font:500 12px/1.4 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin:16px 0 6px}
select,input[type=number],input[type=text]{width:100%;background:var(--surface);border:0;border-bottom:1px solid var(--line-strong);color:var(--ink);padding:10px 2px;font:400 16px/1.5 "IBM Plex Sans",sans-serif;border-radius:0}
select:focus,input:focus{outline:none;border-bottom:2px solid var(--blue);padding-bottom:9px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:16px 32px}@media(max-width:640px){.row{grid-template-columns:1fr}}
.results{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-top:24px;border-top:1px solid var(--line);padding-top:24px}
.stat{border-left:2px solid var(--blue);padding-left:16px}
.stat .v{font:300 clamp(1.4rem,3vw,1.875rem)/1.1 "IBM Plex Sans",sans-serif;letter-spacing:-.01em}
.stat .l{font:500 11px/1.4 "IBM Plex Mono",ui-monospace,monospace;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);margin-top:4px}
.note{font-size:14px;color:var(--mut);margin-top:16px}
h2{font:300 1.5rem/1.2 "IBM Plex Sans",sans-serif;margin:40px 0 16px}
details{border:1px solid var(--line);margin:8px 0;padding:14px 16px;background:var(--surface)}
summary{cursor:pointer;font:500 1rem/1.4 "IBM Plex Sans",sans-serif;color:var(--ink)}
summary:hover{color:var(--blue)}
details p{margin-top:10px;color:var(--mut);font-size:15px}
.cta{margin-top:40px;padding:24px;border:1px solid var(--line);background:var(--panel)}
.btn{display:inline-block;background:var(--blue);color:#fff;font:500 14px/1 "IBM Plex Sans",sans-serif;padding:14px 20px;border-radius:2px;border:none}
.btn:hover{background:var(--blue-hover);text-decoration:none}
footer{border-top:1px solid var(--line);margin-top:48px;padding-top:16px;color:var(--mut);font-size:14px}
