:root{--bg:#eef1f4;--ink:#14213d;--mute:#4a5568;--line:#c9d1da;--card:#fff;--accent:#d1342c;--link:#0b5cad}
@media(prefers-color-scheme:dark){:root{--bg:#101a2b;--ink:#e8edf5;--mute:#a3b0c4;--line:#2a3a54;--card:#16233a;--accent:#ff6b5e;--link:#7db8ff}}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--ink);font:1.0625rem/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.wrap{max-width:62rem;margin-inline:auto;padding-inline:clamp(1rem,4vw,2rem)}
a{color:var(--link);text-underline-offset:.2em}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--card);padding:.5rem 1rem;z-index:9}
header .wrap{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;padding-block:1rem;border-bottom:1px solid var(--line)}
.brand{font:700 1.4rem Georgia,serif;color:var(--ink);text-decoration:none}
ul.i{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 1rem}
[aria-current=true],[aria-current=page]{font-weight:700;color:var(--ink)}
ol.bc{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:1.2rem 0 0;color:var(--mute)}ol.bc li+li::before{content:"/";margin-right:.4rem}
h1{font:700 clamp(2rem,6vw,3.6rem)/1.1 Georgia,serif;letter-spacing:-.02em;margin:1.5rem 0 1rem;max-width:20ch}
h2{font:700 1.5rem/1.25 Georgia,serif;margin:2.5rem 0 .8rem}
.answer{font-size:1.25rem;max-width:60ch;border-left:4px solid var(--accent);padding-left:1rem}
.lead{color:var(--mute);font-size:1.2rem;max-width:60ch}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:1rem;list-style:none;padding:0}
.grid li{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--accent);padding:1rem}
form{display:grid;gap:1rem;max-width:34rem}label{display:grid;gap:.25rem;font-weight:600}
input,textarea{font:inherit;padding:.6rem;border:1px solid var(--mute);background:var(--card);color:var(--ink);border-radius:.25rem}
button{font:600 1rem inherit;justify-self:start;background:var(--ink);color:var(--bg);border:0;padding:.7rem 1.4rem;border-radius:.25rem;cursor:pointer}
footer{margin-top:4rem;border-top:1px solid var(--line);padding-block:2rem;color:var(--mute)}
@media print{header,footer,.skip{display:none}}