@font-face{font-family:Console;src:url('assets/Tiny5-Regular.ttf') format('truetype');font-weight:700;font-display:swap}
:root{color-scheme:dark;--ink:#03050b;--panel:#0b1525;--edge:#6a9b9d;--text:#e4eed9;--muted:#a5b8c4;--green:#bde985;--lavender:#aba0d0}
*{box-sizing:border-box}body{margin:0;background:#000;color:var(--text);font:17px/1.6 system-ui,sans-serif;min-height:100svh}button,a,input{touch-action:manipulation}button,a{color:inherit}button{font:700 16px/1.5 Console,monospace;background:#142337;border:2px solid var(--edge);padding:10px 14px;cursor:pointer;min-height:44px;border-radius:0}button:hover:not(:disabled){color:var(--green);background-color:#23384a}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #cbd593;outline-offset:4px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#world{position:fixed;inset:0 0 28vh;z-index:-1;overflow:hidden;background:#000}#tunnel,#clubhouse,#darkness{position:absolute;inset:0}#tunnel{background:#000 url('assets/tunnel.png') center/cover no-repeat;image-rendering:pixelated;opacity:0;transition:transform 2.1s steps(18,end),opacity .4s;transform-origin:50% 45%}#clubhouse{background:#030516 url('assets/clubhouse.png') center/cover no-repeat;image-rendering:pixelated;opacity:0;transition:opacity .6s steps(5,end)}#darkness{background:#000;opacity:0;pointer-events:none}#gateArt{position:absolute;width:max(47vw,50.76vh);height:auto;left:50%;top:40%;transform:translate(-50%,-50%);image-rendering:pixelated;transition:opacity .6s steps(4,end)}body[data-scene="start"] #world{visibility:hidden}body[data-scene="descent"] #tunnel{opacity:1;animation:descend-reveal 8s steps(12,end) both}body[data-scene="gate"] #tunnel{opacity:1}body[data-scene="unlocking"] #tunnel{opacity:1;transform:scale(5)}body[data-scene="unlocking"] #gateArt{opacity:0}body[data-scene="clubhouse"] #clubhouse{opacity:1}
header{position:absolute;z-index:2;top:18px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:start;gap:20px}.wordmark{font:700 15px/1.2 Console,monospace;text-decoration:none;color:var(--green);background:#040917de;padding:8px}.wordmark span{display:inline}.wordmark small{display:none}.utilities{display:flex;gap:12px;align-items:center}.prototype{font:12px/1.5 system-ui;color:#bbc4cd;background:#040917df;padding:6px}.utilities button{font:14px system-ui;background:#040917df;min-height:36px;padding:5px 10px}body[data-scene="start"] header .wordmark,body[data-scene="start"] header .prototype{visibility:hidden}body[data-scene="start"] header{justify-content:end}main{min-height:100svh}.stage{min-height:100svh;position:relative;padding:100px 24px 55px;display:flex;align-items:end;justify-content:center}.conversation{display:grid;grid-template-columns:clamp(140px,21vw,256px) minmax(0,1fr);gap:8px;width:100%;max-width:1250px;align-items:stretch}.portrait-frame,.dialogue{background:var(--panel);border:4px solid #a2b9a5;outline:3px solid #263f4b;box-shadow:inset 0 0 0 3px #283a50,0 0 0 6px #020711}.portrait-frame{display:flex;align-items:center;justify-content:center;min-height:245px;overflow:hidden;background:#091623}.portrait-frame img{width:100%;max-width:256px;height:auto;object-fit:contain;image-rendering:pixelated;filter:brightness(0) drop-shadow(2px 0 #536a7d) drop-shadow(-2px 0 #536a7d)}.portrait-frame.unknown{color:#a6b5c1;font:700 clamp(80px,10vw,136px)/1 Console,monospace}.dialogue{padding:20px 28px;min-width:0;min-height:245px}.speaker{font:700 18px/1.4 Console,monospace;color:var(--green);letter-spacing:.035em;margin:0 0 12px}.dialogue>p:not(.fine):not(.dialogue-hint){font:700 clamp(18px,1.75vw,25px)/1.65 Console,monospace;margin:0 0 16px;white-space:pre-line;min-height:3.3em}.dialogue .dialogue-hint{font:15px/1.5 system-ui;color:var(--muted);margin:5px 0}.dialogue-actions{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:center}.choice{border:0;background:transparent;box-shadow:none;font:700 clamp(17px,1.65vw,23px)/1.5 Console,monospace;text-align:left;color:var(--green);padding:6px 0;min-height:44px}.choice:hover:not(:disabled){background:#233244;color:#e4f1d4}.secondary{color:var(--muted);font-size:16px}.quiet{font:14px/1.5 system-ui;background:transparent;border:0;color:var(--muted);padding:6px 0}.fine{font-size:13px;color:var(--muted);margin:8px 0 0}.dialogue-actions .fine{flex-basis:100%}.location{position:absolute;top:82px;left:max(24px,calc((100vw - 1250px)/2));font:700 15px/1.5 Console,monospace;padding:8px 12px;background:#030716dd;color:var(--green)}.location span{color:#acc2cb}.stage#descent .portrait-frame{color:#739cab}body[data-scene="start"] #startConversation{animation:dialogue-appear .22s steps(3,end)}footer{position:absolute;bottom:12px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;font:12px Console,monospace;color:#8c9ca8}footer button{font:12px system-ui;border:0;background:transparent;min-height:30px;padding:2px 7px}body[data-scene="start"] #sceneLabel{visibility:hidden}
dialog{width:min(800px,calc(100% - 24px));max-height:90svh;overflow:auto;padding:26px 30px;background:var(--panel);color:var(--text);border:4px solid #a2b9a5;box-shadow:inset 0 0 0 3px #283a50,0 0 0 5px #030711}dialog::backdrop{background:#000c}.dialog-top{display:flex;align-items:start;justify-content:space-between;gap:20px}.eyebrow{font:700 14px Console,monospace;color:var(--green);margin:0 0 15px}h2{font:700 25px/1.4 Console,monospace;margin:0 0 12px}h3{font:700 18px/1.4 Console,monospace;margin:0;flex:1}.muted{color:var(--muted)}.entry-count{display:flex;gap:22px;align-items:center;padding:18px 0}.entry-count strong{font:700 36px Console,monospace;color:var(--green)}.entry-count small{font-size:13px;color:var(--muted)}.demo-note{padding:10px 14px;border-left:3px solid var(--lavender);background:#1c2438;font-size:14px}.tasks{padding:0;list-style:none}.tasks>li{padding:22px 0;border-bottom:2px solid #314358}.task-heading{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.task-number{font:700 16px Console,monospace;color:var(--lavender)}.status{font:700 13px Console,monospace;color:var(--green)}.tasks p{color:var(--muted)}.tasks button{margin:4px 5px 4px 0}.task-message{font-size:14px;color:var(--green)!important}.promo{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:14px;background:#152338;margin:18px 0}.promo img{width:100%;height:auto;image-rendering:pixelated}.promo blockquote{margin:0 0 12px;font-size:16px}.promo a{display:block;color:var(--green);font-size:14px;margin:8px 0}.promo small{display:block;color:var(--muted);font-size:13px}label{display:block;margin:14px 0 6px}input{width:100%;font:16px system-ui;background:#050b15;color:var(--text);border:2px solid var(--edge);padding:12px}details{padding:20px 0}summary{cursor:pointer;font-size:17px}summary span{display:block;font-size:12px;color:var(--lavender)}.primary{font:700 17px Console,monospace;color:#0b1421;background:var(--green);border:3px solid #e2e7b9;padding:15px;min-height:48px}.primary:hover:not(:disabled){background:#d7f49e;color:#0b1421}.full{width:100%}#feedback{color:#f1b8d3;font-size:15px}
@keyframes dialogue-appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes descend-reveal{0%,48%{filter:brightness(0);transform:translateY(-5%) scale(1.15)}85%{filter:brightness(.5)}100%{filter:brightness(1);transform:none}}
@media(max-width:650px){header{top:12px;left:14px;right:14px}.prototype{max-width:125px;font-size:12px}.utilities{gap:6px}.wordmark{font-size:12px;padding:5px}.stage{padding:90px 12px 55px}.conversation{grid-template-columns:76px minmax(0,1fr);gap:6px}.portrait-frame{min-height:220px;align-items:start;padding-top:18px}.portrait-frame.unknown{font-size:65px}.dialogue{padding:16px 14px;min-height:220px}.speaker{font-size:15px}.dialogue>p:not(.fine):not(.dialogue-hint){font-size:17px;line-height:1.6}.dialogue-actions{gap:4px}.choice{font-size:17px}.secondary{font-size:14px}#world{bottom:31vh}.location{font-size:12px;top:74px;left:14px}.location span{display:block}.fine{font-size:12px}.dialogue .dialogue-hint{font-size:14px}footer{left:14px;right:14px}dialog{padding:20px 17px}h2{font-size:22px}.promo{grid-template-columns:1fr}.promo img{max-width:160px}.tasks button{font-size:14px}}@media(max-height:580px){.stage{padding-top:80px}.conversation{max-width:1100px}.portrait-frame,.dialogue{min-height:160px}.dialogue>p:not(.fine):not(.dialogue-hint){font-size:17px;line-height:1.4}.dialogue{padding:14px 22px}.portrait-frame img{max-width:160px}.location{top:65px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Overlay follows the replacement scene's 1672:941 cover dimensions. */
#tunnel{container-type:size}#gateArt{width:max(42cqw,74.627cqh);top:calc(50% - max(6cqh,3.377cqw))}
#street{position:absolute;inset:0;background:#000 url('assets/manhole.png') center/cover no-repeat;image-rendering:pixelated;opacity:0}body[data-scene="start"] #world{visibility:visible}body[data-scene="start"] #street{opacity:1}.manhole-control{position:absolute;left:50%;top:18svh;transform:translateX(-50%);width:min(340px,44vw);height:30svh;min-height:100px;border:2px solid transparent;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:6px;touch-action:none;user-select:none;-webkit-user-select:none}.manhole-control:disabled{opacity:1}.manhole-control:hover:not(:disabled){background:#07151f22;border-color:#bde985}.manhole-control span{background:#030915dd;padding:4px 8px;color:#d9e9c4;font-size:13px}.manhole-control progress{width:90%;height:12px;accent-color:#bde985}.answer-row{display:flex;align-items:center;gap:16px}.answer-row input{max-width:340px}#answerMessage{font:15px/1.5 system-ui;color:#bde985}#answerForm label{font:16px/1.5 system-ui;margin:8px 0}.manhole-control:focus-visible{outline:3px solid #bde985}#verifyAll{margin-bottom:14px}#unlock{margin-top:6px}@media(max-width:650px){.manhole-control{width:65vw;top:15svh;height:27svh}.answer-row{display:block}.answer-row input{width:100%}.answer-row .choice{font-size:16px}.stage#start{padding-top:48svh}.manhole-control span{font-size:12px}.dialogue #answerMessage{font-size:14px}}

/* Rounded hit area tracks the perspective cover; only the artwork is visible. */
body{--street-height:72vh;--street-width:max(100vw,127.932vh);--street-image-height:max(56.28vw,72vh)}
/* Keep the closed scene untouched; only reveal an inset over the movable lid.
   Clip in source-image coordinates so the patch cannot resize the street/rim. */
#street{container-type:size}
/* The original street and original lid pixels remain fixed to source geometry. */
#manholeOpening,#manholeLid{position:absolute;width:max(100cqw,177.6833156cqh);height:max(56.2799043cqw,100cqh);left:50%;top:50%;background-position:center;background-size:100% 100%;background-repeat:no-repeat;clip-path:ellipse(14.5% 20.3% at 49.8% 38.7%);image-rendering:pixelated;pointer-events:none;opacity:0}
#manholeOpening{background-image:url('assets/manhole-hole-v2.png');transform:translate(-50%,-50%)}
#manholeLid{background-image:url('assets/manhole.png');transform:translate(-50%,-50%) translateX(var(--holding-lid-slide,var(--lid-slide,0%)));transition:transform .16s steps(3,end)}
body[data-scene="start"]:has(#manhole:not(:disabled):is(:hover,:focus-visible,:active)){--lid-slide:1%}
body[data-scene="start"]:has(#manhole:not(:disabled):is(:hover,:focus-visible,:active)) :is(#manholeOpening,#manholeLid){opacity:1}
@media(hover:none){body[data-scene="start"]:has(#manhole:not(:disabled)){--lid-slide:1%}body[data-scene="start"]:has(#manhole:not(:disabled)) :is(#manholeOpening,#manholeLid){opacity:1}}
body[data-scene="start"][data-manhole-lift="1"]{--holding-lid-slide:3%}
body[data-scene="start"][data-manhole-lift="2"]{--holding-lid-slide:10%}
body[data-scene="start"][data-manhole-lift="3"]{--holding-lid-slide:19%}
body[data-scene="start"][data-manhole-lift="4"]{--holding-lid-slide:27%}
body[data-scene="start"][data-manhole-lift]:not([data-manhole-lift="0"]) :is(#manholeOpening,#manholeLid){opacity:1}
#manhole.manhole-control{position:fixed;left:50%;top:calc(var(--street-height)/2 - var(--street-image-height)*.109);transform:translate(-50%,-50%);width:calc(var(--street-width)*.37);height:calc(var(--street-image-height)*.50);min-height:0;padding:0;border:0;border-radius:50%;clip-path:ellipse(50% 50% at 50% 50%);background:transparent;box-shadow:none;outline:0;-webkit-tap-highlight-color:transparent;z-index:1}
#manhole.manhole-control:hover:not(:disabled),#manhole.manhole-control:active,#manhole.manhole-control:focus-visible{background:transparent;border:0;outline:0;box-shadow:none}
#holdReadout{font:14px/1.5 Console,monospace;color:var(--green);margin:8px 0}#holdReadout progress{display:block;width:min(300px,100%);height:8px;margin-top:6px;accent-color:var(--green)}
body:has(#manhole:focus-visible) #holdReadout{outline:2px solid var(--green);outline-offset:4px}
@media(max-width:650px){body{--street-height:69vh;--street-width:max(100vw,122.601vh);--street-image-height:max(56.28vw,69vh)}}

.conversation{position:relative;z-index:2}

/* The clubhouse guide leaves the room and its controls available. */
#gateConversation .dialogue{position:relative;padding-right:58px}
.guide-close{position:absolute;right:8px;top:8px;padding:4px 10px;background:transparent;border:0}
body[data-scene="clubhouse"] #world{bottom:0}
.clubhouse-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.club-guide{position:fixed;right:24px;bottom:125px;width:min(460px,calc(100vw - 32px));display:grid;grid-template-columns:70px minmax(0,1fr) 44px;gap:12px;align-items:start;padding:16px;background:#0b1525f5;border:3px solid #a2b9a5;box-shadow:0 0 0 3px #263f4b;z-index:3}
.club-guide img{width:70px;height:80px;object-fit:contain;image-rendering:pixelated;filter:brightness(0) drop-shadow(1px 0 #536a7d) drop-shadow(-1px 0 #536a7d)}
.club-guide h2{font:700 14px/1.5 Console,monospace;color:var(--green);margin:0 0 8px}
.club-guide p{font:700 15px/1.65 Console,monospace;margin:0}
.club-guide button{padding:4px;background:transparent;border:0}
@media(max-width:650px){.club-guide{right:16px;bottom:170px;grid-template-columns:48px minmax(0,1fr) 44px;gap:8px;padding:12px}.club-guide img{width:48px;height:64px}.club-guide p{font-size:14px}.clubhouse-actions{flex-direction:column;width:100%}}

/* A stable room canvas keeps object hit areas aligned with the artwork.
   Narrow screens pan the room instead of cropping away the door or arcade. */
body[data-scene="clubhouse"] #clubhouse{opacity:0}
#arrival{flex-direction:column;align-items:center;justify-content:center;padding:145px 0 80px;gap:18px}
.room-viewport{width:100%;overflow-x:auto}
.room-art{position:relative;width:min(100%,1500px);min-width:780px;aspect-ratio:1672/941;margin:auto;background:url('assets/clubhouse-graffiti-v2.png') center/100% 100% no-repeat;image-rendering:pixelated}
.room-object{position:absolute;background:transparent;border:2px solid transparent;padding:0;min-height:44px}
.room-object span{position:absolute;bottom:-16px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#07101fed;border:2px solid #6a9b9d;padding:4px 8px;font:700 13px/1.5 Console,monospace}
.room-object:hover:not(:disabled){background:#bde98526}.map-object:hover:not(:disabled){background:#101f23}.map-object:hover:not(:disabled) img{filter:brightness(1.18)}
.map-object{left:38%;top:31%;width:26%;height:31%;border:5px solid #617b63;box-shadow:0 0 0 3px #061118;background:#101f23}
.map-object img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}
.arcade-object{left:27%;top:46%;width:7.5%;height:25%}
.door-object{left:81%;top:36%;width:18%;height:35%;border-radius:45% 45% 0 0}
.clubhouse-actions{position:relative;padding:0 16px}
#travel{width:min(1060px,calc(100% - 24px))}
.travel-map{position:relative;aspect-ratio:3/2}
.travel-map>img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}
.map-stops{position:absolute;inset:0}
.map-stops button{position:absolute;transform:translate(-50%,-50%);font:700 13px/1.4 Console,monospace;padding:5px 8px;background:#091728ef;max-width:30%}
#destinationFeatures{padding-left:24px}
#destinationFeatures li{margin:12px 0}
#arcadeView button{display:block;width:100%;margin:14px 0}
@media(max-width:650px){#arrival{padding-top:145px}.travel-map{aspect-ratio:auto}.travel-map>img{height:auto}.map-stops{position:static;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.map-stops button{position:static;transform:none;max-width:none;font-size:12px}.club-guide{bottom:160px}}

.news-paper{left:68.6%;top:41%;width:3.8%;height:8%}
.wl-paper{left:74.2%;top:40.8%;width:3.4%;height:4.6%}
.mint-paper{left:74.1%;top:47%;width:2.7%;height:4.8%}
.couch-object{left:4.7%;top:53.7%;width:21.3%;height:17.4%}
.shelf-object{left:7.6%;top:26.6%;width:16.8%;height:12%}
.couch-guests{position:absolute;left:7%;top:43%;width:17%;height:21%;display:flex;align-items:end;pointer-events:none}
.couch-guests img{width:50%;max-height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(2px 3px #010610)}
.club-panel article{background:#142337;padding:18px;margin:16px 0;border-left:3px solid var(--edge)}
.club-panel h4{margin:0;font:700 17px Console,monospace;color:var(--green)}
.club-panel dt{color:var(--green);margin-top:12px}.club-panel dd{margin-left:0}
.club-panel form button{margin-top:16px}
.town-hall-art{width:100%;max-height:48vh;object-fit:contain;image-rendering:pixelated;background:#071120}
.mint-desks{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.sample-mawns{display:flex;gap:16px;flex-wrap:wrap}
.sample-mawns button{flex:1;min-width:180px}
.sample-mawns img{display:block;width:120px;height:120px;object-fit:contain;margin:auto;image-rendering:pixelated}
.sample-mawns button[aria-pressed="true"]{border-color:var(--green);background:#253c35}
@media(max-width:650px){.mint-desks{grid-template-columns:1fr}}

/* Object hover uses a light wash, with no added perimeter. Keyboard focus stays visible. */
.room-object{transition:background-color .12s}.map-object img{transition:filter .12s}

.club-guide{bottom:48px;right:16px}
.seat-pickers{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.seat-pickers select{width:100%;min-height:44px;background:#142337;color:var(--text);font:16px system-ui;border:2px solid var(--edge);padding:8px}
.seat-pickers button{margin:8px 4px 0 0}
.seat-pickers select:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.couch-fit-preview{position:relative;width:min(100%,520px);aspect-ratio:430/230;margin:20px auto;background:url('assets/clubhouse.png') 4% 63.3%/388.84% 409.13% no-repeat;image-rendering:pixelated}
.couch-fit-preview img{position:absolute;bottom:34%;height:82%;width:34%;object-fit:contain;image-rendering:pixelated}
#fitOne{left:12%}#fitTwo{left:47%}
@media(max-width:650px){.club-guide{bottom:44px;right:12px}.seat-pickers{grid-template-columns:1fr}}

.town-hall-scene{position:relative;width:100%;aspect-ratio:3/2}
.town-hall-scene .town-hall-art{display:block;width:100%;height:100%;max-height:none;object-fit:fill}
.mint-facts{display:grid;grid-template-columns:minmax(130px,1fr) 2fr;gap:12px 20px}
.club-panel .mint-facts dt{margin:0}
@media(max-width:650px){.mint-facts{grid-template-columns:1fr;gap:4px}.mint-facts dd{margin-bottom:12px}}

/* Cover obsolete board lettering with the same wall from the original office. */
.town-hall-scene::after{content:"";position:absolute;inset:0;background:url('assets/town-hall.png') center/100% 100% no-repeat;clip-path:inset(20% 0 63% 79%);pointer-events:none;image-rendering:pixelated}
#mintClerk{position:absolute;left:42%;top:38%;width:15%;height:21%;background:transparent;border:0;padding:0}
#mintClerk:hover{background:#bde98522}
#clerkBubble{position:absolute;left:8%;right:8%;bottom:65%;z-index:2;background:#0b1525f5;border:3px solid #a2b9a5;padding:16px 50px 16px 16px;box-shadow:4px 4px #030712}
#clerkBubble p{font:700 14px/1.6 Console,monospace;margin:0}
#closeClerkBubble{position:absolute;right:4px;top:4px;border:0;background:transparent;padding:4px}
.door-choices{display:flex;flex-wrap:wrap;gap:16px}
@media(max-width:650px){#clerkBubble{position:relative;left:auto;right:auto;bottom:auto;margin:12px 0}.town-hall-scene:has(#clerkBubble:not([hidden])){margin-bottom:220px}}
.gear-drain{left:70%;top:56%;width:8%;height:13%;background:none!important;border:0!important;box-shadow:none!important;clip-path:none!important}.gear-drain img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.gear-drain:hover img,.gear-drain:focus-visible img{filter:brightness(1.35)}.gear-drain span{position:absolute;left:50%;bottom:0;transform:translateX(-50%);white-space:nowrap;font:16px Console,monospace;color:#d7eaa8;text-shadow:2px 2px #071321}#gearFrame{display:block;width:100%;height:min(72vh,760px);min-height:420px;border:2px solid #4e7567;background:#07151d}#travel:has(#gearView:not([hidden])){width:min(1100px,96vw)}#clerkBubble p{font-size:20px;line-height:1.45}#clerkBubble{bottom:53%;left:5%;right:5%}@media(max-width:650px){#clerkBubble{bottom:auto}#clerkBubble p{font-size:19px}.town-hall-scene:has(#clerkBubble:not([hidden])){margin-bottom:0}}
/* The sprite has transparent padding; crop that padding inside the wall hotspot. */
.gear-drain{overflow:hidden}.gear-drain img{position:absolute;width:200%;height:200%;max-width:none;left:-50%;top:-50%;object-fit:contain}.gear-drain span{font-size:13px;bottom:0;background:#071625c9;padding:1px 4px}
/* Labels appear over landmarks only while inspecting them. */
.travel-map{position:relative}.map-stops{position:absolute;inset:0;display:block}.map-stops button{position:absolute;transform:translate(-50%,-50%);width:20%;height:18%;max-width:none;margin:0;padding:0;font-size:0!important;color:transparent!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible}.map-stops button::after{content:attr(aria-label);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:16px/1.25 Console,monospace;color:#e0ecd3;background:#071a24ee;padding:5px 8px;white-space:nowrap;opacity:0;pointer-events:none;z-index:2}.map-stops button:hover::after,.map-stops button:focus-visible::after,.map-stops button[data-revealed="true"]::after{opacity:1}.map-stops button:focus-visible{outline:2px solid #c2d69b!important;outline-offset:-4px}.map-stops button[aria-label="The Clubhouse"]{width:12%;height:15%}@media(max-width:650px){.map-stops button{min-height:32px}.map-stops button::after{font-size:11px;padding:3px 5px}}
#clerkBubble{bottom:76%;left:3%;right:3%;padding:16px 48px 16px 18px}#clerkBubble p{font-size:24px;line-height:1.3}.town-hall-scene:has(#clerkBubble:not([hidden])){margin-top:160px}@media(max-width:650px){#clerkBubble{position:relative;bottom:auto;left:auto;right:auto}#clerkBubble p{font-size:22px}.town-hall-scene:has(#clerkBubble:not([hidden])){margin-top:0;margin-bottom:0}}

/* Dialogue overlays the upper wall without shifting the room artwork. */
.town-hall-scene:has(#clerkBubble:not([hidden])){margin-top:0;margin-bottom:0}#clerkBubble{position:absolute;top:2%;bottom:auto;left:3%;right:3%;max-height:34%;overflow:auto;margin:0}#clerkBubble p{font-size:24px;line-height:1.3}@media(max-width:650px){#clerkBubble{top:2%;max-height:38%;padding:8px 32px 8px 10px}#clerkBubble p{font-size:18px;line-height:1.2}}
#travel:has(#gearView:not([hidden])){width:96vw;height:94dvh;max-width:none;max-height:94dvh;padding:0;overflow:hidden;position:relative}#travel:has(#gearView:not([hidden]))>.dialog-top{position:absolute;top:3px;right:4px;z-index:10;margin:0;padding:0;background:none}#travel:has(#gearView:not([hidden])) #travelTitle{display:none}#travel:has(#gearView:not([hidden])) #closeTravel{background:#11252d}#gearView{height:100%;margin:0;padding:0}#gearView>p{display:none}#gearFrame{width:100%;height:100%;min-height:0;border:0}#travel:has(#gearView:not([hidden]))>.button-row{display:none}
