@font-face{font-family:Inter;src:url('/fonts/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#04121d;--surface:#091c28;--ink:#e7eff2;--muted:#9db4bf;--line:#284451;--accent:#7dd5d7;--grid:#17303b;--logo:#edf4f5}
:root[data-theme=light]{color-scheme:light;--bg:#eef1f1;--surface:#e3e9e9;--ink:#152f3b;--muted:#48636e;--line:#b7c8cb;--accent:#176772;--grid:#d8e1e3;--logo:#04121d}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.7 Inter,Arial,sans-serif}a{color:var(--accent);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;left:10px;z-index:9;background:var(--bg)}.top{position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px max(24px,calc((100vw - 1360px)/2))}.logo{display:block;width:174px;height:64px}.brand-ink{fill:var(--logo)}.top nav{display:flex;align-items:center;gap:22px;font-size:.85rem}.theme-button{background:transparent;color:var(--ink);border:1px solid var(--line);border-radius:50%;width:38px;height:38px;padding:8px}.theme-button svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.layout{max-width:1360px;margin:auto;display:grid;grid-template-columns:220px minmax(0,1fr);gap:64px;padding:48px 24px 80px}.contents{align-self:start;position:sticky;top:110px;font-size:.85rem}.contents summary{font-weight:600;margin-bottom:18px;cursor:pointer}.contents ol{list-style:none;padding:0;display:grid;gap:14px}.contents a{color:var(--muted);text-decoration:none}.contents a:hover{color:var(--accent)}.back{display:block;margin-bottom:30px}main{min-width:0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-size:.73rem;font-weight:550}h1{font-weight:450;font-size:clamp(2rem,3.7vw,3.5rem);letter-spacing:-.045em;line-height:1.15;margin:20px 0 24px;max-width:950px}h2{font-weight:500;font-size:1.6rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 20px}h3{font-size:1.15rem;font-weight:550;margin:0 0 12px}.intro{font-size:1.15rem;line-height:1.7;color:var(--muted);max-width:780px}.meta{font-size:.75rem;color:var(--muted);margin:22px 0 30px}.button{display:inline-flex;align-items:center;gap:16px;padding:12px 20px;border:1px solid var(--accent);background:var(--accent);color:var(--bg);text-decoration:none;border-radius:6px;font-size:.9rem;font-weight:600}.button:hover{filter:brightness(1.1)}.hint,figcaption{font-size:.8rem;color:var(--muted);line-height:1.6}.hint{margin:10px 0 0}section{margin-top:66px}.map-section{margin-top:40px}figure{margin:0}.map-frame{display:block;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--bg);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:22px 22px}.map-frame img{display:block;width:100%;height:auto}.map-light{display:none!important}[data-theme=light] .map-dark{display:none!important}[data-theme=light] .map-light{display:block!important}figcaption{margin-top:14px}.figure-action{display:inline-block;margin-top:8px;font-size:.8rem}.reading{max-width:780px}.relations{padding:0;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:28px}.relations div{border-top:1px solid var(--line);padding-top:18px}.relations dt{font-weight:550}.relations dd{margin:8px 0;color:var(--muted);font-size:.95rem}.component{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:26px 0;border-top:1px solid var(--line)}.component .number{color:var(--accent);font-size:.8rem;letter-spacing:.15em}.component p{margin:0;color:var(--muted);max-width:750px}.insight{border-left:2px solid var(--accent);padding:6px 24px;background:var(--surface);margin-top:20px}.insight p{margin:14px 0}.steps{padding-left:24px;max-width:760px}.steps li{padding-left:8px;margin:16px 0}.sources{padding-left:20px;font-size:.88rem}.sources li{margin:16px 0}.scope{color:var(--muted);max-width:780px}footer{border-top:1px solid var(--line);padding-top:26px;margin-top:64px;font-size:.8rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between}.hub{max-width:1120px;margin:auto;padding:64px 24px}.guide-entry{display:grid;grid-template-columns:1fr 1fr;gap:36px;border-top:1px solid var(--line);padding:36px 0;margin-top:50px;align-items:center}.guide-entry img{width:100%;border:1px solid var(--line);border-radius:8px}.guide-entry h2 a{color:var(--ink);text-decoration:none}.guide-entry p{color:var(--muted)}
@media(max-width:900px){.layout{grid-template-columns:1fr;gap:24px;padding-top:24px}.contents{position:static;border-bottom:1px solid var(--line);padding-bottom:12px}.contents .back{margin-bottom:15px}.contents ol{gap:8px}.contents summary{margin:0}.top{padding:8px 18px}.top nav{gap:15px}.top .atlas-top{display:none}.logo{width:140px;height:51px}section{margin-top:44px}.relations{grid-template-columns:1fr}.guide-entry{grid-template-columns:1fr}.hub{padding-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.top,.contents,.button,.hint,.figure-action{display:none}body{background:white;color:black}.layout{display:block;padding:0}.map-dark{display:none!important}.map-light{display:block!important}section{break-inside:avoid}a{color:inherit}.intro,.meta,.scope,figcaption,.component p{color:#333}}

.analytics-consent{background:var(--surface);color:var(--ink)}
@media print{.analytics-consent,.analytics-settings{display:none}}
