:root{color-scheme:dark;--ink:#0d1116;--panel:#171e26;--line:#2c3743;--paper:#e9e4d8;--muted:#9ca7b3;--jade:#57b7a3;--gold:#d7a244}
*{box-sizing:border-box}
html{background:var(--ink)}
body{margin:0;min-height:100vh;background:radial-gradient(900px 500px at 10% -10%,#1b2a34 0%,transparent 60%),var(--ink);color:var(--paper);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.72}
a{color:var(--jade);text-underline-offset:3px}
a:hover,a:focus-visible{color:#83d0bf}
.shell{width:min(760px,calc(100% - 32px));margin:0 auto;padding:24px 0 56px}
.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 0 24px;border-bottom:1px solid var(--line)}
.brand{color:var(--paper);font-weight:800;letter-spacing:.08em;text-decoration:none}.brand i{color:var(--gold);font-style:normal}
.back{font-size:14px;text-decoration:none}
main{padding:44px 0 24px}
.eyebrow{margin:0 0 10px;color:var(--gold);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
h1{margin:0 0 14px;font-size:clamp(30px,7vw,48px);line-height:1.12;letter-spacing:-.035em}
.lead{margin:0 0 34px;color:#c6ced6;font-size:17px}
section{margin:18px 0;padding:24px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015))}
h2{margin:0 0 10px;font-size:19px;letter-spacing:-.015em}
p{margin:8px 0;color:#cbd2d9}
ul{margin:10px 0 0;padding-left:21px;color:#cbd2d9}li+li{margin-top:7px}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0}.fact{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.fact strong{display:block;color:var(--gold);font-size:21px}.fact span{color:var(--muted);font-size:13px}
.cta{display:inline-flex;margin-top:12px;padding:11px 16px;border-radius:10px;background:var(--jade);color:#071410;font-weight:800;text-decoration:none}.cta:hover,.cta:focus-visible{background:#75cab7;color:#071410}
footer{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}footer nav{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:560px){.shell{width:min(100% - 24px,760px);padding-top:14px}.top{align-items:flex-start}main{padding-top:32px}.facts{grid-template-columns:1fr}section{padding:19px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.skip{position:absolute;left:12px;top:-80px;z-index:10;background:var(--jade);color:var(--ink);padding:10px 16px;border-radius:8px}.skip:focus{top:12px;color:var(--ink)}
a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:3px}
.top nav{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:14px}.top nav a{min-height:44px;display:inline-flex;align-items:center;text-decoration:none}.top nav a[aria-current]{color:var(--paper);text-decoration:underline}
.contents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 18px;margin:0 0 32px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contents a{display:flex;align-items:center;min-height:44px;text-decoration:none;font-size:14px}
section[id]{scroll-margin-top:24px}.exercise{border-left:3px solid var(--jade);padding:10px 0 10px 16px;margin:20px 0 0}.exercise strong{display:block;color:var(--paper);margin-bottom:4px}
.boardfigure{display:grid;grid-template-columns:minmax(120px,200px) 1fr;gap:24px;align-items:center;margin:24px 0}.boardfigure svg{display:block;width:100%;height:auto}.boardfigure figcaption{font-size:14px;color:#cbd2d9}
.steps{padding-left:22px;color:#cbd2d9}.steps li{padding-left:4px;margin:12px 0}.steps strong{color:var(--paper)}
.reference{padding:24px 0 0}.reference h2{font-size:16px}.reference p{font-size:14px;color:var(--muted)}
.faq details{border-top:1px solid var(--line);margin-top:18px}.faq summary{cursor:pointer;min-height:52px;padding:16px 4px;font-weight:650;line-height:1.5}.faq details>div{padding:0 4px 12px}.faq details[open] summary{color:var(--jade)}
footer nav a{display:inline-flex;align-items:center;min-height:32px}.shell p,.shell li{overflow-wrap:anywhere}
@media(max-width:560px){.top{flex-direction:column;gap:8px}.contents{grid-template-columns:1fr}.boardfigure{grid-template-columns:1fr;gap:14px}.boardfigure svg{width:180px;justify-self:center}footer nav{gap:0 14px}footer nav a{min-height:44px}}
