:root{--bg: #f4efe6;--paper: #fffdf8;--ink: #14110e;--muted: #3d3832;--line: #1f1a16;--accent: #9a3412;--accent-soft: #f3e0d4;--ok: #143d2b;--err: #7f1d1d;--focus: #0b3d91;--chip: #efe6d8;--radius: 12px;--tap: 3.35rem;--font: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--ui: system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html{color-scheme:light}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--ink);font-family:var(--ui);font-size:1.08rem;line-height:1.5}.skip{position:absolute;left:.75rem;top:-3rem;background:var(--ink);color:var(--bg);padding:.45rem .8rem;z-index:10}.skip:focus{top:.75rem}.site-header,main,.site-footer{width:min(40rem,calc(100% - 1.25rem));margin-inline:auto}.site-header{padding:1.6rem 0 1.1rem}.eyebrow{margin:0 0 .3rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--muted)}h1,h2{font-family:var(--font);font-weight:600;letter-spacing:-.02em;margin:0}h1{font-size:clamp(1.85rem,7vw,2.55rem);line-height:1.12}h2{font-size:1.15rem}.lede{margin:.65rem 0 0;color:var(--muted);max-width:34rem}.card{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);padding:1rem .95rem 1.05rem;margin-bottom:.9rem}.dims,.counts{display:grid;gap:.75rem}@media(min-width:640px){.dims{grid-template-columns:1fr 1fr 1fr}.counts{grid-template-columns:1fr 1fr}}.field{display:flex;flex-direction:column;gap:.3rem}label{font-size:.88rem;font-weight:700}.optional{font-weight:600;color:var(--muted)}.input-wrap{display:flex;align-items:stretch}.input-wrap input{flex:1;min-width:0;border-top-right-radius:0;border-bottom-right-radius:0;border-right:0}.suffix{display:flex;align-items:center;min-width:2.8rem;justify-content:center;background:var(--chip);border:2px solid var(--line);border-left:0;border-radius:0 10px 10px 0;font-weight:700;font-variant-numeric:tabular-nums;font-size:.82rem;padding:0 .45rem;text-align:center;line-height:1.15}input[type=text]{font:inherit;font-size:1.2rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--ink);background:var(--paper);border:2px solid var(--line);border-radius:10px;padding:.55rem .7rem;min-height:var(--tap);width:100%}input[type=text]:focus,input[type=checkbox]:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input.invalid{border-color:var(--err);background:#fdf2f2}.seg-label,.waste-label{display:block;font-size:.88rem;font-weight:700;margin:.15rem 0 .4rem}.chips{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.45rem}.chips button{min-height:var(--tap);font-size:1.02rem}.check{display:flex;align-items:center;gap:.65rem;margin:.95rem 0 0;font-size:1rem;min-height:var(--tap);cursor:pointer}.check input{width:1.25rem;height:1.25rem;accent-color:var(--ink);flex-shrink:0}.field-note{margin:.35rem 0 0;font-size:.82rem;color:var(--muted)}button{font:inherit;font-weight:700;color:var(--ink);background:var(--chip);border:2px solid var(--line);border-radius:10px;min-height:var(--tap);padding:.5rem .9rem;cursor:pointer}button:hover{background:#e6dccb}button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}button.primary{background:var(--ink);color:var(--bg);border-color:var(--ink);font-size:1.05rem}button.primary:hover{background:#2b2420}button.quiet{font-weight:600;color:var(--muted);background:transparent}.totals{background:var(--ink);color:var(--bg);border-radius:var(--radius);padding:1.1rem 1.05rem 1.15rem;margin-bottom:.9rem}.totals h2{font-family:var(--ui);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:color-mix(in srgb,var(--bg) 78%,transparent);margin-bottom:.65rem}.stat-row{display:grid;grid-template-columns:1fr 1fr;gap:.65rem .75rem;margin:0}@media(min-width:640px){.stat-row{grid-template-columns:1fr 1fr 1.3fr 1fr}.stat-row.six{grid-template-columns:1fr 1fr 1fr}}.stat-row dt{font-size:.82rem;color:color-mix(in srgb,var(--bg) 72%,transparent)}.stat-row dd{margin:.12rem 0 0;font-variant-numeric:tabular-nums;font-size:clamp(1.2rem,4.6vw,1.7rem);font-weight:750;letter-spacing:-.03em;line-height:1.15}.plant{margin:.9rem 0 0;padding:.7rem .75rem;background:color-mix(in srgb,var(--bg) 12%,transparent);border-radius:8px;font-variant-numeric:tabular-nums;font-weight:650;line-height:1.35}.truck-hint{margin:.65rem 0 0;font-size:.9rem;color:color-mix(in srgb,var(--bg) 78%,transparent)}.actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.15rem 0 1rem}.actions .primary{flex:1 1 12rem}.copy-status{flex-basis:100%;margin:.1rem 0 0;min-height:1.25em;color:var(--ok);font-size:.92rem}.disclaimer{margin:0;font-size:.88rem;color:var(--muted);line-height:1.45}.how,.faq{color:var(--muted);font-size:.95rem}.how p,.faq p{margin:.45rem 0 0}.faq h3{font-size:1rem;margin:.85rem 0 0;color:var(--ink)}.worked{font-variant-numeric:tabular-nums}.formula{margin:.7rem 0 0;padding:.7rem .75rem;background:var(--chip);border-radius:8px;font-size:.84rem;font-variant-numeric:tabular-nums;overflow-x:auto;white-space:pre-wrap}.site-footer{padding:.4rem 0 2.4rem;color:var(--muted);font-size:.88rem}.site-footer p{margin:0}.site-footer a{color:var(--ink);font-weight:650}.brand{font-family:var(--font);color:var(--ink);font-size:1rem;margin-bottom:.2rem!important}@media print{.skip,.actions,.chips,.seg-label,.waste-label{display:none!important}body{background:#fff;color:#000}.totals{background:#fff;color:#000;border:2px solid #000}.totals h2,.stat-row dt,.truck-hint{color:#333}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-nav,.footer-nav{display:flex;flex-wrap:wrap;gap:.3rem .95rem;font-size:.88rem}.site-nav{margin:.85rem 0 0}.site-nav a,.footer-nav a,.related-tools a{color:var(--ink);font-weight:650;text-underline-offset:.14em}.site-nav a[aria-current=page],.footer-nav a[aria-current=page]{color:var(--muted);text-decoration:none;font-weight:600}.related-tools{width:min(40rem,calc(100% - 1.5rem));margin:.4rem auto 1.1rem;color:var(--muted);font-size:.92rem}.footer-nav{margin:.3rem 0 .45rem}.site-footer .brand{font-family:var(--font);color:var(--ink);font-size:1rem;margin-bottom:.15rem}.site-footer a{color:var(--ink)}
