@font-face{font-family:Atkinson;src:url('/fonts/atkinson-400.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Atkinson;src:url('/fonts/atkinson-700.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--ink:#33222e;--muted:#705665;--raspberry:#98214b;--paper:#fff7fa;--line:#ae929f;--lime:#e0edac;--error:#a71926}*{box-sizing:border-box}html{scrollbar-color:var(--raspberry) var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.5 Atkinson,Arial,sans-serif}::selection{background:var(--lime);color:var(--ink)}a{color:var(--raspberry);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid #126a78;outline-offset:4px}input,select{caret-color:var(--raspberry)}button,input,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,select,summary{cursor:pointer}.skip{position:absolute;top:-100px;left:16px;background:white;padding:12px;z-index:10}.skip:focus{top:12px}header{background:var(--raspberry);color:white}header>div{max-width:1220px;margin:auto;padding:18px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{color:white;text-decoration:none;font-size:24px;font-weight:700;letter-spacing:-.02em}.brand svg{width:24px;height:24px;vertical-align:-4px;margin-right:9px}nav{display:flex;gap:24px;flex-wrap:wrap}header nav a{color:white;font-size:16px}main{max-width:1220px;margin:auto;padding:30px 32px 64px}h1{font-size:38px;line-height:1.15;letter-spacing:-.025em;margin:0 0 12px;font-weight:700;text-wrap:balance}h2{font-size:25px;line-height:1.2;margin:0 0 14px}h3{font-size:20px;line-height:1.3}p{max-width:70ch}p.intro{margin:0 0 28px;color:var(--muted);font-size:18px}.workbench{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:48px;align-items:start}.controls{padding-right:28px;border-right:1px solid var(--line)}fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}legend{font-size:20px;font-weight:700;margin-bottom:12px;padding:0}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px;min-width:0}label{font-size:17px}.field input,.field select{width:100%;min-width:0;height:46px;border:1px solid #8b697b;border-radius:5px;background:#fff;color:var(--ink);padding:8px 11px;font-variant-numeric:tabular-nums}.field small,.hint{font-size:15px;line-height:1.4;color:var(--muted)}.unit-row{display:flex;align-items:center;gap:12px;margin-bottom:18px}.unit-row select{padding:7px 9px;background:white;border:1px solid #8b697b;border-radius:5px}.check{display:flex;align-items:center;gap:10px;min-height:44px}.check input{width:20px;height:20px;accent-color:var(--raspberry)}details{border-top:1px solid var(--line);padding:13px 0}summary{font-weight:700;min-height:32px}details p{font-size:16px;color:var(--muted)}.primary{background:var(--raspberry);color:#fff;border:1px solid var(--raspberry);border-radius:6px;min-height:48px;padding:10px 20px;font-weight:700;width:100%;margin-top:12px}.primary:hover{background:#771536}.secondary{background:transparent;color:var(--raspberry);border:1px solid var(--raspberry);border-radius:6px;min-height:44px;padding:8px 14px}.secondary:hover{background:#f7e4ed}button:disabled{opacity:.55;cursor:default}.error{color:var(--error);font-size:16px;margin:12px 0}[aria-invalid=true]{border:2px solid var(--error)!important}.example{font-size:15px;color:var(--muted);margin:12px 0}.preview-heading{display:flex;justify-content:space-between;gap:14px;align-items:center}.preview-heading h2{margin:0}.unit-note{font-size:14px;color:var(--muted)}#figure svg{display:block;width:100%;height:auto;max-height:400px}#result-heading{scroll-margin-top:16px}.cut-line{font-size:25px;line-height:1.3;font-weight:700;margin:14px 0 4px}dl{display:grid;grid-template-columns:1fr auto;gap:9px 18px;margin:20px 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}dt{color:var(--muted)}dd{margin:0;text-align:right}#fit-message{font-weight:700;font-size:19px}#unequal-note{color:#703817;background:#fff0dc;padding:12px;font-size:16px}#result .hint{margin-top:10px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.lower{margin-top:48px;border-top:1px solid var(--line);padding-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:48px}.lower p{font-size:17px}.lower ul{padding-left:22px}footer{border-top:1px solid var(--line);max-width:1156px;margin:auto;padding:24px 0 32px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:15px}.article{max-width:790px}.article h2{margin-top:32px}.article p{line-height:1.65}.article table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}.article td,.article th{text-align:left;padding:10px;border-bottom:1px solid var(--line)}[hidden]{display:none!important}.status{min-height:24px;color:var(--muted);font-size:15px}
@media(max-width:760px){header>div{padding:16px 20px;align-items:flex-start;flex-direction:column;gap:8px}header nav{gap:18px}main{padding:24px 20px 40px}h1{font-size:32px}.workbench{grid-template-columns:1fr;gap:32px}.controls{border-right:0;padding-right:0}.lower{grid-template-columns:1fr;gap:24px}footer{margin:0 20px;flex-direction:column;gap:10px}.cut-line{font-size:23px}#figure svg{max-height:310px}dl{font-size:16px}.row{gap:12px}.preview-heading{align-items:flex-start}nav a{font-size:15px}.actions .secondary{flex:1}#result-heading{scroll-margin-top:12px}}
@media(prefers-reduced-motion:no-preference){#figure svg rect{transition:all .18s ease-out}}@media print{header,form,.actions,footer,.lower,.status{display:none}.workbench{display:block}main{padding:0}.preview-heading{margin-top:20px}body{background:white}}

@media(max-width:760px){#figure svg text{font-size:31px}}
