:root{--bg:#fbfaf7;--card:#fff;--ink:#1d2327;--muted:#5b6670;--line:#e4e1da;--accent:#0b6e4f;--accent-2:#e8f3ee;--warn:#8a5a00;--warn-bg:#fff6e0;--radius:10px;--max:760px}
@media (prefers-color-scheme:dark){:root{--bg:#131618;--card:#1b1f22;--ink:#e8eaeb;--muted:#a3adb5;--line:#2c3236;--accent:#5cc49b;--accent-2:#16322a;--warn:#f0c46a;--warn-bg:#2d2512}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
a{color:var(--accent)}a:hover{text-decoration-thickness:2px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
.wide{max-width:1040px}
header.site{border-bottom:1px solid var(--line);background:var(--card)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;padding-bottom:12px;max-width:1040px}
.logo{font-weight:800;font-size:20px;text-decoration:none;color:var(--ink);letter-spacing:-.3px}.logo span{color:var(--accent)}
nav.main{display:flex;flex-wrap:wrap;gap:4px 14px}nav.main a{text-decoration:none;color:var(--muted);font-size:15px}nav.main a:hover{color:var(--accent)}
main{padding:28px 0 48px}
h1{font-size:clamp(26px,5vw,36px);line-height:1.2;margin:.2em 0 .4em;letter-spacing:-.5px}
h2{font-size:23px;line-height:1.3;margin:1.8em 0 .5em}
h3{font-size:19px;margin:1.4em 0 .4em}
.lede{font-size:19px;color:var(--muted)}
.meta{font-size:14px;color:var(--muted);margin-bottom:18px}
.crumbs{font-size:14px;color:var(--muted)}.crumbs a{color:var(--muted)}
.box{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin:22px 0}
.answer{background:var(--accent-2);border-color:transparent}
.note{background:var(--warn-bg);border-color:transparent;color:var(--ink)}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th,.tbl td{padding:7px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tbl th{font-size:13px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);cursor:default}
.tbl td.n,.tbl th.n{text-align:right;font-variant-numeric:tabular-nums}
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.bar{display:inline-block;height:9px;background:var(--accent);border-radius:4px;vertical-align:middle;opacity:.8}
.up{color:#b3261e}.down{color:var(--accent)}
@media (prefers-color-scheme:dark){.up{color:#ff8a80}}
form.calc{display:grid;gap:12px}
form.calc label{font-weight:600;font-size:15px;display:block;margin-bottom:4px}
form.calc input,form.calc select{width:100%;font:inherit;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:560px){.grid2{grid-template-columns:1fr}}
.result{font-size:18px}.result strong{font-size:22px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:18px 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;text-decoration:none;color:var(--ink);display:block}
.card:hover{border-color:var(--accent)}.card small{color:var(--muted);display:block;margin-top:6px;font-size:14px;line-height:1.45}
.tag{display:inline-block;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--accent);font-weight:700}
.sources{font-size:15px}.sources li{margin-bottom:6px}
footer.site{border-top:1px solid var(--line);font-size:14px;color:var(--muted);padding:24px 0 40px}
footer.site p.links{display:flex;flex-wrap:wrap;gap:6px 14px}footer.site a{color:var(--muted)}
main a{overflow-wrap:anywhere}
code{background:var(--accent-2);padding:1px 5px;border-radius:4px;font-size:.92em}
.formula{font-family:ui-monospace,Menlo,Consolas,monospace;background:var(--card);border:1px solid var(--line);padding:12px;border-radius:8px;overflow-x:auto}
