:root{color-scheme:dark;--ink:#e7f5fa;--muted:#a5c0ce;--line:#295163;--bg:#071722;--cyan:#8ce1ed}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 45% 35%,#102c3b,var(--bg) 65%);color:var(--ink);font:16px/1.5 system-ui,sans-serif}header,main,footer{width:min(1500px,calc(100% - 44px));margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);gap:14px}.brand{display:flex;gap:12px;align-items:center;letter-spacing:.09em;font-size:12px;font-weight:700}.brand b{color:#e22437;background:#fff;padding:0 8px;font-size:29px;line-height:1.25}.brand small,.edition,footer{color:var(--muted)}.edition,.eyebrow{font-size:11px;letter-spacing:.15em}.eyebrow{color:var(--cyan);font-weight:650;margin:0 0 5px}.intro{padding:24px 0 18px}.intro h1{font-size:clamp(2rem,6vw,4.3rem);letter-spacing:-.065em;line-height:1.05;margin:0 0 10px}.intro p:last-child{margin:0;color:var(--muted);max-width:65ch}.controls,.workshop{border:1px solid var(--line);border-radius:12px;background:#0c2330}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;padding:10px 15px;margin-bottom:12px}.controls input[type=range]{flex:1 1 130px;accent-color:#80dfdb}.controls output{margin-left:6px;color:#96f3d7;font-weight:bold}.toggle{margin-left:auto}#year-note{color:var(--muted);font-size:13px}.world{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,320px);gap:12px}.map,aside{background:#081d2b;border:1px solid var(--line);border-radius:14px;min-width:0}.map svg{display:block;width:100%;height:auto}.place text{fill:#daf5e7;font-size:13px;letter-spacing:.13em}.place circle{fill:#dcf6de}.place .water{fill:#8ab5c5;font-size:10px}.map g[role=button]{cursor:pointer}.map g[role=button]:focus-visible .mark,.map g[aria-pressed=true] .mark{stroke:#fff;stroke-width:2.5px}.node-label{fill:#effcff;font-size:15px;font-weight:650;paint-order:stroke;stroke:#0a2332;stroke-width:3px}.radio-hit{fill:none;stroke:transparent;pointer-events:stroke}.radio-pulse{fill:none;stroke:#73e6db;stroke-linecap:round;pointer-events:none}.radio-link:hover .radio-pulse{stroke:#fff}aside{padding:17px;overflow-wrap:anywhere}h2{margin:0 0 6px;font-size:1.2rem}aside p,aside dd,.workshop p{color:var(--muted)}aside dl{margin:6px 0;font-size:14px}aside dt{font-weight:650;margin-top:8px}aside dd{margin:0}.lanes{display:flex;gap:5px;overflow-x:auto;padding:6px 0}.lanes button{border:1px solid var(--line);border-top:4px solid var(--lane);border-radius:6px;background:#123040;color:var(--ink);padding:7px 8px;min-width:90px}.lanes button[aria-pressed=true]{background:#245365}.status{font-size:12px;color:#99e6ce}.workshop{margin-top:12px;padding:17px;display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:center}.workshop p{margin:0}.workshop ol{margin:0;padding-left:22px}#score{font-weight:700;color:var(--cyan)}footer{padding:16px 0;font-size:12px}button,input{font:inherit}input[type=checkbox]{accent-color:#63dec2} @media(max-width:850px){.world,.workshop{grid-template-columns:1fr}.map{overflow:auto}.map svg{min-width:630px}.toggle{margin-left:0}}

.draft{display:block}.draft summary{cursor:pointer;font-weight:650}.draft p{margin:7px 0}.draft form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0}.draft label{display:grid;gap:4px;font-size:13px}.draft select,.draft input,.draft textarea,.draft button{max-width:100%;font:inherit;color:var(--ink);background:#102e3f;border:1px solid var(--line);border-radius:6px;padding:8px}.draft textarea{width:100%}.draft button{cursor:pointer}@media(max-width:850px){.draft form{grid-template-columns:1fr}}
.regional-places text{font-size:10px;letter-spacing:.09em;paint-order:stroke;stroke:#123746;stroke-width:3px}.regional-places .island-label{font-size:17px;font-weight:700;letter-spacing:.18em}footer a{color:var(--cyan)}
.software-card{padding:9px 11px;margin:7px 0;border:1px solid var(--line);border-radius:8px;background:#0e2937}.software-card ul{margin:4px 0 0;padding-left:18px;color:var(--muted);font-size:13px}

.software-card>summary,.knowledge-solution{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.software-card>summary{cursor:pointer;font-weight:650}
#knowledge-editor details{margin-block:8px}
#knowledge-editor form{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));margin-block:8px}
#knowledge-editor select[multiple]{height:auto;min-height:110px}
.knowledge-solution{display:block;width:100%;text-align:left;margin-block:4px}

#world-inventory{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start}
#world-inventory>h2,#world-inventory>p{grid-column:1/-1}
#world-inventory ul{padding-inline-start:20px;margin-block:5px 12px}
#world-inventory h3,#world-inventory h4{margin-block:5px}
#world-inventory small{display:block;color:#a9c4cf}
