/* TMV key-art palette: ink, title gold, portal violet, Gizmo pink, warm ivory. */
:root{--ink:#fff4dc;--paper:#17141f;--mint:#352444;--coral:#f353ba;--line:#40334e;--gold:#ffd04a;--violet:#ac70ff;--muted:#c7bbce}
body{background:#17141f;color:var(--ink)}
header{position:relative;background:linear-gradient(110deg,#17141f 40%,#291b34 100%);border-bottom:1px solid #6c427e;box-shadow:0 5px 22px #09061055;z-index:25}
header:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#ffd04a 0%,#ffb63f 26%,#f353ba 60%,#ac70ff 85%,#60d9ee)}
.brand{color:var(--gold);text-shadow:2px 2px 0 #09070e}.brand span{color:#fff4dc}.heading{border-color:#5f476e}.heading b{color:var(--gold)}.heading span{color:#ddd0e3;opacity:1}
.blueprint-intro{border-left-color:#ac70ff}.blueprint-intro strong{color:var(--gold);font-size:15px}.blueprint-intro p{color:#e2d8e9}.blueprint-intro b{color:#fff4dc}
button{background:#292032;border-color:#574161;color:#fff4dc}button:hover{background:#443053;border-color:#ac70ff}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #60d9ee;outline-offset:3px}
.primary,#enter,.steam-link{background:var(--gold);color:#211525;border-color:#ffd04a;box-shadow:0 3px 0 #9c681e}.primary:hover,#enter:hover,.steam-link:hover{background:#ffe486;color:#211525;border-color:#ffe486}
.x-link{color:#fff4dc;border-color:#ad6de0;background:#392346}.x-link:hover{background:#63347c;border-color:#cf92ff}.game-links a{font-size:12px}.promo-social,.download-link{color:#e8b8ff}
aside{background:linear-gradient(160deg,#251c30,#17141f 70%);border-left-color:#503260;scrollbar-color:#805492 #211828}.eyebrow{color:#f39ddb}.aside-top p,#detail-copy,.key-row span,.small,footer span{color:var(--muted)}
.aside-top h2,#detail-title,.game-promo h2,dialog h2{color:#fff4dc}#districts{gap:7px}#districts button{color:#e5dae9;background:#241c2d;border-color:#44334e}#districts button:hover{background:#422851;border-color:#ae71d9}
#districts button.active{background:linear-gradient(115deg,#ffd04a,#ffb73f);color:#261725;border-color:#ffe17d;box-shadow:0 3px 12px #ffd04a22}#districts i{background:#3c284c;border-color:#8e5eac;color:#fff4dc}#districts button.active i{background:#241529;color:#ffd04a;border-color:#241529}
#district-detail,details,footer{border-color:#493552}.key-row{border-color:#3b2c46}.key-row b.key-n{background:#ad64df;color:#140d1c}#spec-content,summary{color:#e9dbf2}input,textarea{color:#fff4dc;background:#15111c;border-color:#684778}textarea::placeholder{color:#ad9ab9}
#view-title{background:linear-gradient(100deg,#1b132de8,#28193b88 65%,#28193b00);color:#fff4dc;text-shadow:0 2px 4px #140c28;padding:15px 20px;border-left:3px solid #f353ba;border-radius:0 10px 10px 0}#view-eyebrow{color:#ffd04a}#view-title p{color:#f2e3f6}
#map-badge{background:#21162fe8;border:1px solid #b478dc;color:#ffd04a;box-shadow:0 4px 18px #110a2244}#map-badge span{color:#f0ddff}
.marker{background:#6f348e;color:#fff4dc;border-color:#ffd04a;box-shadow:0 3px 13px #10082088;text-shadow:0 1px 2px #211229}.marker:hover{background:#b43b91}
#toolbar{background:#20162ff5;border:1px solid #9361b2;box-shadow:0 6px 28px #0c062b66}#toolbar button{color:#eadcf5}#toolbar button:hover{background:#4e2c64}#toolbar .active{background:#ffd04a;color:#241529;box-shadow:0 2px 0 #a67129}
#walk-help{background:#21162fe8;color:#f0e3fa;border:1px solid #68417a}#minimap-wrap{background:#22172feb;border-color:#9c67c0;color:#ffe4a2;box-shadow:0 4px 22px #110a2255}#resume-walk,#toast{background:#54286eeF;color:#fff4dc;border:1px solid #c58bf2}
#loading{background:radial-gradient(ellipse at 65% 30%,#42234f,#17141f 70%);color:#fff4dc}.loader-mark{color:#ffd04a;text-shadow:3px 3px 0 #09070e}#loading p{color:#d2bfdc}.loader-line{background:linear-gradient(90deg,#ffd04a,#f353ba,#ac70ff)}
.game-promo{background:#2d2039;border-color:#7a4c91;box-shadow:0 6px 28px #0c071b44}.game-promo .eyebrow{color:#f5a4dc}.game-promo p{color:#dfd0e6}.game-promo .game-status{color:#ffd578}.game-promo .preview-note{color:#dcc9e5;border-top-color:#6d467c}.game-promo .steam-link{color:#211525}
dialog{background:linear-gradient(140deg,#30203e,#17141f);color:#fff4dc;border:1px solid #b67ad8}dialog::backdrop{background:#0c0618cc}#atlas-grid button{background:#2e203b;border-color:#674779;color:#fff4dc}#atlas-grid img{background:#3b2850}.review-tag{color:#dcafea}
@media(max-width:1150px){.blueprint-intro{border-top-color:#674279}}
@media(max-width:760px){.blueprint-intro strong{font-size:12px}.game-links a{font-size:10px}#view-title{padding:10px 13px}}
@media(prefers-reduced-motion:reduce){.loader-line{animation:none}button{transition:none}}

/* Measured walking destinations in the detailed districts. */
#places{margin:20px 0;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}#places[hidden]{display:none}#places h3{font-size:14px;margin:0 0 12px;color:var(--gold)}#place-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}#place-list button{text-align:left;font-size:11px;padding:11px 9px;line-height:1.4}#place-list button.active{border-color:var(--gold);background:#493455}#place-status{font-size:11px;line-height:1.7;color:var(--muted);margin:12px 0 0}#place-status:empty{display:none}
