:root{--paper:#f6f1e7;--ink:#1d2a22;--muted:#58655c;--line:#d8d0bd;--green:#2d5f3c;--green-d:#1f4529;--rust:#a9481f;--card:#fffdf7;--bar:#ebe3d0}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Georgia,"Times New Roman",serif}
a{color:var(--green-d);text-underline-offset:2px}
a:hover{color:var(--rust)}
.disclose-bar{background:var(--bar);border-bottom:1px solid var(--line);font:14px/1.4 system-ui,sans-serif;padding:8px 16px;text-align:center;color:#3b463e}
header.top{display:flex;flex-wrap:wrap;gap:8px 28px;align-items:center;justify-content:space-between;padding:14px 16px;max-width:1040px;margin:0 auto}
.brand{display:flex;align-items:center;gap:10px;color:var(--green-d);text-decoration:none;font:700 20px/1 system-ui,sans-serif;letter-spacing:-.01em}
nav{display:flex;flex-wrap:wrap;gap:4px 18px;font:15px system-ui,sans-serif}
nav a{color:var(--ink);text-decoration:none;padding:4px 0;border-bottom:2px solid transparent}
nav a:hover,nav a[aria-current]{border-bottom-color:var(--rust)}
main{max-width:760px;margin:0 auto;padding:12px 16px 56px}
.hero{padding:20px 0 8px}
h1{font:700 clamp(28px,5vw,40px)/1.15 system-ui,sans-serif;letter-spacing:-.02em;margin:.4em 0 .4em}
h2{font:700 24px/1.25 system-ui,sans-serif;margin:2em 0 .5em;letter-spacing:-.01em}
h3{font:700 19px/1.3 system-ui,sans-serif;margin:1.6em 0 .3em}
.lede{font-size:19px;color:#26352b;margin-top:0}
.small{font-size:14.5px;color:var(--muted)}
.sub{font-size:13.5px;color:var(--muted)}
ul.plain{padding-left:1.2em}ul.plain li{margin:.45em 0}
ol.steps{padding-left:1.3em}ol.steps li{margin:.7em 0}
.checker{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:18px;margin:18px 0}
.field{margin-bottom:14px}
.field label{display:block;font:600 15px system-ui,sans-serif;margin-bottom:5px}
.field.check label{font-weight:400;display:flex;gap:8px;align-items:flex-start}
.inline{display:flex;gap:8px}
input[type=number],select{font:17px system-ui,sans-serif;padding:10px 12px;border:1px solid #b9b19c;border-radius:7px;background:#fff;color:var(--ink);min-height:46px}
input[type=number]{width:100%;max-width:200px}
.hint{font:14px system-ui,sans-serif;color:var(--muted);margin:6px 0 0}
button,.btn{display:inline-block;font:600 16px system-ui,sans-serif;background:var(--green);color:#fff;border:0;border-radius:7px;padding:12px 18px;text-decoration:none;cursor:pointer;min-height:46px}
button:hover,.btn:hover{background:var(--green-d);color:#fff}
.btn.ghost{background:transparent;color:var(--green-d);border:1.5px solid var(--green)}
.btn.ghost:hover{background:var(--green);color:#fff}
.results{margin-top:14px}
.res{background:var(--card);border:1px solid var(--line);border-left:6px solid var(--line);border-radius:8px;padding:14px 16px;margin:12px 0}
.res.ok{border-left-color:var(--green)}.res.tight{border-left-color:#c58b1c}.res.no{border-left-color:#9b9b94;opacity:.82}
.res h3{margin:0 0 4px;font-size:18px}
.pill{display:inline-block;font:600 12.5px system-ui,sans-serif;border-radius:20px;padding:2px 10px;margin-left:8px;vertical-align:2px;background:#e6efe6;color:var(--green-d)}
.res.tight .pill{background:#f6e8c6;color:#6c4a05}.res.no .pill{background:#e6e4de;color:#4f4f49}
.res p{margin:.3em 0;font-size:16px}
.msg{font:16px system-ui,sans-serif;color:var(--muted)}
.band{margin-top:36px}
.band.note{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:4px 20px 16px}
.cards{display:grid;gap:12px}
@media(min-width:720px){.cards{grid-template-columns:repeat(3,1fr)}}
.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.card:hover{border-color:var(--green)}
.card h3{margin:0 0 6px;font-size:17px;color:var(--green-d)}
.card p{margin:0;font-size:15.5px;line-height:1.5}
.tablewrap{overflow-x:auto;margin:18px 0}
table.specs{border-collapse:collapse;width:100%;font:15px/1.45 system-ui,sans-serif;background:var(--card)}
table.specs th,table.specs td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
table.specs thead th{background:var(--bar)}
table.narrow{max-width:420px}
@media(max-width:700px){
 table.specs:not(.narrow) thead{display:none}
 table.specs:not(.narrow) tr{display:block;border:1px solid var(--line);border-radius:8px;margin-bottom:12px;overflow:hidden}
 table.specs:not(.narrow) th[scope=row]{display:block;background:var(--bar);font-size:16px}
 table.specs:not(.narrow) td{display:flex;justify-content:space-between;gap:12px;border:0;border-top:1px solid var(--line)}
 table.specs:not(.narrow) td::before{content:attr(data-label);font-weight:600;color:var(--muted);flex:0 0 38%}
}
.calc{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-wrap:wrap;gap:12px 18px;align-items:flex-end}
.calc .field{margin:0}
.calc-out{flex-basis:100%;margin:6px 0 0;font:600 18px system-ui,sans-serif;color:var(--green-d)}
footer{border-top:1px solid var(--line);background:var(--bar);padding:22px 16px;font:14.5px/1.6 system-ui,sans-serif;color:#3b463e;text-align:center}
footer p{max-width:760px;margin:.3em auto}
:focus-visible{outline:3px solid var(--rust);outline-offset:2px}
