.calc-page{--calc-legend-h:1.2rem;--ink:var(--fg-ink);--body:var(--fg-body);--muted:var(--fg-muted);--line:var(--fg-line);--accent-text:var(--fg-teal);max-width:68rem;color:var(--body);font-family:var(--fg-font);margin:0 auto;padding:clamp(1rem,3vw,2rem) clamp(1rem,3vw,2rem) 3rem}html[data-theme=light] .calc-page{--accent-text:var(--fg-teal-dark)}.calc-page>*+*{margin-top:2.5rem}.calc-page .calc{grid-template-columns:repeat(auto-fit,minmax(max(min(100%,20rem),50% - .5rem),1fr));align-items:start;gap:1rem;scroll-margin-top:5rem;display:grid}.calc-page .calc>*{margin-top:0}.calc-page .calc>.calc-results{margin-top:calc(var(--calc-legend-h) / 2 - .5px)}.calc-page .calc-inputs{border:1px solid var(--line);background:var(--fg-paper);border-radius:.9rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;margin:0;padding:clamp(1rem,2.5vw,1.35rem);display:grid}.calc-page .calc-inputs>*{margin-top:0}.calc-page legend{float:left;line-height:var(--calc-legend-h);color:var(--fg-teal-dark);letter-spacing:.18em;text-transform:uppercase;grid-column:1/-1;margin:0 0 .2rem;padding:0;font-size:.72rem;font-weight:800}.calc-page .field{grid-row:span 3;grid-template-rows:subgrid;align-items:start;row-gap:.35rem;min-width:0;display:grid}.calc-page .field>.field-label{align-self:end}.calc-page .field-wide{grid-column:1/-1}.calc-page .field-label{color:var(--ink);font-size:.85rem;font-weight:700}.calc-page .field-input{border:1px solid var(--line);background:var(--fg-canvas);border-radius:.6rem;align-items:stretch;min-width:0;display:flex;overflow:hidden}.calc-page .field-input:focus-within,.calc-page select:focus-visible{outline:2px solid var(--fg-teal);outline-offset:1px}.calc-page input,.calc-page select{min-width:0;min-height:2.75rem;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;background:0 0;border:0;margin:0;font-size:1rem}.calc-page input{outline:none;flex:1;width:100%;padding:0 .75rem}.calc-page .field-wide select{border:1px solid var(--line);background:var(--fg-canvas);border-radius:.6rem;width:100%;height:calc(2.75rem + 2px);padding:0 .6rem}.calc-page .unit,.calc-page .unit-select{border-left:1px solid var(--line);background:var(--fg-pale-blue);color:var(--muted);flex:none;place-items:center;padding:0 .7rem;font-size:.85rem;font-weight:700;display:grid}.calc-page .unit-select{cursor:pointer;outline:none}.calc-page .field-hint{color:var(--muted);margin:0;font-size:.8rem;line-height:1.5}.calc-page .calc-results{gap:.75rem;display:grid}.calc-page .calc-results>*{margin-top:0}.calc-page .calc-error{border:1px solid var(--fg-coral);color:var(--ink);border-radius:.7rem;margin:0;padding:.75rem .9rem;font-size:.9rem}.calc-page .result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;transition:opacity .15s;display:grid}.calc-page .result-grid>*{margin-top:0}.calc-page .is-stale{opacity:.4}.calc-page .result{border:1px solid var(--line);background:var(--fg-paper);border-radius:.8rem;gap:.2rem;padding:.85rem 1rem;display:grid}.calc-page .result-primary{border-color:var(--fg-teal);background:color-mix(in srgb, var(--fg-teal) 12%, var(--fg-paper));grid-column:1/-1}.calc-page dt{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.calc-page dd{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:0;font-size:1.4rem;font-weight:750}.calc-page .result-primary dd{font-size:clamp(1.9rem,5vw,2.4rem)}.calc-page dd span{color:var(--muted);letter-spacing:0;font-size:.85rem;font-weight:650}.calc-page h2{color:var(--ink);letter-spacing:-.02em;margin:0 0 .75rem;font-size:1.25rem;font-weight:750}.calc-page .step-list{border:1px solid var(--line);background:var(--fg-paper);counter-reset:step;border-radius:.85rem;gap:0;margin:0;padding:0;list-style:none;transition:opacity .15s;display:grid;overflow:hidden}.calc-page .step-list>li{counter-increment:step;grid-template-columns:1.6rem minmax(0,1fr);gap:.15rem .6rem;margin:0;padding:.75rem .95rem;display:grid}.calc-page .step-list>li[hidden]{display:none}.calc-page .step-list>li+li{border-top:1px solid var(--line)}.calc-page .step-list>li:before{content:counter(step);aspect-ratio:1;background:var(--fg-pale-blue);width:1.6rem;color:var(--muted);border-radius:.4rem;grid-row:span 2;place-items:center;font-size:.78rem;font-weight:800;display:grid}.calc-page .step-what{color:var(--muted);font-size:.82rem;font-weight:650}.calc-page .step-math{color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.calc-page .step-math b{color:var(--accent-text)}.calc-page .prose{max-width:46rem}.calc-page .prose p,.calc-page .prose li{line-height:1.65}.calc-page .prose>*+*{margin-top:.9rem}.calc-page .prose a{color:var(--accent-text);font-weight:650}.calc-page .prose strong{color:var(--ink)}.calc-page .example-math{border:1px solid var(--line);background:var(--fg-paper);color:var(--ink);font-variant-numeric:tabular-nums;border-radius:.8rem;gap:.35rem;margin:.9rem 0;padding:.9rem 1rem;list-style:none;display:grid}.calc-page .example-math>li{margin:0}.calc-page .example-math b{color:var(--accent-text)}.calc-page .load-example{border:1px solid var(--fg-teal);min-height:2.75rem;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border-radius:.6rem;padding:0 1rem;font-weight:700}.calc-page .load-example:hover{background:color-mix(in srgb, var(--fg-teal) 12%, transparent)}.calc-page .load-example:focus-visible{outline:2px solid var(--fg-teal);outline-offset:2px}.calc-page .sanity-wrap{border:1px solid var(--line);border-radius:.8rem;overflow:hidden}.calc-page .sanity{border-collapse:collapse;width:100%;margin:0;font-size:.92rem;line-height:1.45;display:table}.calc-page .sanity th,.calc-page .sanity td{border:0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.65rem .8rem}.calc-page .sanity thead th{background:var(--fg-paper);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:700}.calc-page .sanity tbody th{color:var(--ink);font-weight:700}.calc-page .sanity tbody tr:last-child>*{border-bottom:0}@media (width<=40rem){.calc-page .sanity thead{display:none}.calc-page .sanity,.calc-page .sanity tbody,.calc-page .sanity tr,.calc-page .sanity th,.calc-page .sanity td{display:block}.calc-page .sanity tr{border-bottom:1px solid var(--line);margin:0;padding:.6rem 0}.calc-page .sanity tbody tr:last-child{border-bottom:0}.calc-page .sanity th,.calc-page .sanity td{border-bottom:0;margin:0;padding:.2rem .9rem}.calc-page .sanity td:before{content:attr(data-label);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700;display:block}}.calc-page .checks{gap:.7rem;margin:0;padding-left:1.2rem;display:grid}.calc-page .checks>li{margin:0}.calc-page .disclaimer{color:var(--muted);font-size:.85rem}@media (width<=420px){.calc-page .calc-inputs{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.calc-page .result-grid,.calc-page .step-list{transition:none}}.calc-page [hidden]{display:none!important}.calc-page .calc-modes{border:0;flex-wrap:wrap;grid-column:1/-1;gap:.6rem;margin:0;padding:0;display:flex}.calc-page .calc-modes>*{margin-top:0}.calc-page .calc-modes legend{float:none;width:100%;margin-bottom:.3rem}.calc-page .mode-tab{border:1px solid var(--line);background:var(--fg-paper);cursor:pointer;border-radius:.8rem;flex:10rem;gap:.1rem;min-height:2.75rem;padding:.6rem .9rem;transition:border-color .15s,background-color .15s;display:grid;position:relative}.calc-page .mode-tab input{clip-path:inset(50%);opacity:0;width:1px;height:1px;min-height:0;position:absolute;overflow:hidden}.calc-page .mode-short{color:var(--ink);font-size:1rem;font-weight:800}.calc-page .mode-long{color:var(--muted);font-size:.78rem;line-height:1.35}.calc-page .mode-tab:hover{border-color:var(--fg-teal)}.calc-page .mode-tab:has(input:checked){border-color:var(--fg-teal);background:color-mix(in srgb, var(--fg-teal) 14%, var(--fg-paper));box-shadow:inset 0 0 0 1px var(--fg-teal)}.calc-page .mode-tab:has(input:focus-visible){outline:2px solid var(--fg-teal);outline-offset:2px}.calc-page .field-optional{color:var(--muted);font-size:.75rem;font-weight:600}@media (width<=420px){.calc-page .mode-tab{flex-basis:calc(50% - .3rem)}.calc-page .mode-long{display:none}}
