@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/nunito-latin-600-normal-Br8yIETf.woff2)format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/nunito-latin-800-normal-Dz8SOQK_.woff2)format("woff2")}@font-face{font-family:Permanent Marker;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/permanent-marker-latin-400-normal-BF23djCy.woff2)format("woff2")}.load-error{z-index:30000;text-align:center;color:#1d1530;background:#fff3dc;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:30px;font-family:system-ui,sans-serif;display:flex;position:fixed;inset:0}.load-error p{max-width:32rem;line-height:1.6}.load-error h1{font-size:clamp(24px,5vw,42px)}:root{--ink:#1d1530;--pink:#ff5fa2;--gold:#ffd23f;--cyan:#5fe0e6;--bart:#2e7dd1;--cream:#fff3dc;--marker:"Permanent Marker", "Chalkboard SE", "Comic Sans MS", cursive;--body:"Nunito", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html,body{height:100%;font-family:var(--body);color:var(--ink);background:#a9e2ff;margin:0;overflow:hidden}#game{touch-action:none;outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}#labels{pointer-events:none;position:fixed;inset:0;overflow:hidden}.lbl{font-family:var(--marker);color:var(--ink);background:var(--cream);border:3px solid var(--ink);white-space:nowrap;box-shadow:4px 4px 0 var(--ink);will-change:transform;border-radius:12px;padding:4px 12px;font-size:18px;transition:opacity .25s;position:absolute;top:0;left:0}.lbl.station{background:var(--bart);color:#fff;font-family:var(--body);font-size:14px;font-weight:800}.lbl.bubble{font-family:var(--body);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:16px;font-size:15px;font-weight:800}.lbl.bubble:after{content:"";border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);background:#fff;width:10px;height:10px;position:absolute;bottom:-12px;left:50%;transform:translate(-50%)rotate(45deg)}#hud{pointer-events:none;position:fixed;inset:0}#hud .btn,#hud input,#hud .tb,#hud .joy,.checklist{pointer-events:auto}.top-left{flex-direction:column;gap:8px;display:flex;position:absolute;top:14px;left:16px}.score{background:var(--cream);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:14px;align-items:baseline;gap:10px;padding:6px 14px;display:inline-flex}.score .k{font-family:var(--marker);letter-spacing:2px;color:var(--pink);font-size:14px}.score b{font-size:26px;font-weight:800}.chips{flex-wrap:wrap;gap:6px;display:flex}.rank{border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:12px;flex-direction:column;gap:3px;min-width:190px;max-width:260px;padding:5px 12px 6px;display:inline-flex}.rank b{font-family:var(--marker);letter-spacing:1px;color:var(--ink);font-size:15px}.rank .rbar{border:2px solid var(--ink);background:var(--cream);border-radius:999px;height:7px;display:block;overflow:hidden}.rank .rbar s{background:var(--pink);width:0;height:100%;text-decoration:none;transition:width .5s;display:block}.rank span{opacity:.75;font-size:11px;font-weight:800}.rank.max .rbar s{background:var(--gold)}.wrank b{font-family:var(--marker);color:var(--pink);letter-spacing:1px;font-size:20px}.chip{border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:999px;padding:4px 10px;font-weight:800}.chip.empty{opacity:.55}.chip.time{background:var(--cyan)}.top-right{z-index:40;align-items:center;gap:8px;display:flex;position:absolute;top:14px;right:16px}#pauseBtn,#jevSpeed{background:var(--gold);min-height:44px}.session-pause{border:3px solid var(--ink);background:var(--cream);width:min(420px,100vw - 32px);color:var(--ink);text-align:center;border-radius:22px;padding:28px}.session-pause::backdrop{background:#152c36b8}.session-pause h2{font-family:var(--marker);margin:0 0 14px;font-size:30px}.session-pause p{line-height:1.5}.session-pause .btn{background:var(--gold);min-height:48px;margin:10px 0 18px}.session-pause small{display:block}.session-menu{border-top:2px dashed #1d153033;margin:0 0 14px;padding-top:14px}.session-actions{gap:8px;display:grid}.session-pause .session-action,.session-pause .session-districts .btn,.session-pause .session-confirm .btn{background:#fff;min-height:44px;margin:0}.session-districts{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.session-districts .btn:disabled{opacity:.7;cursor:default}.session-confirm{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.session-confirm p{grid-column:1/-1;margin:0;font-weight:700}.session-pause .session-confirm .btn.danger{background:#ffb4a8}.session-pause{max-height:calc(100dvh - 32px);overflow:auto}body.session-paused *,body.session-paused:after{animation-play-state:paused!important}.btn{font-family:var(--body);border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer;background:#fff;border-radius:12px;padding:6px 12px;font-size:15px;font-weight:800}.btn.lit{background:var(--cyan)}.btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}#vol{width:90px;accent-color:var(--pink)}.landmark{font-family:var(--marker);background:var(--gold);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:12px;padding:6px 16px;font-size:22px;transition:transform .35s cubic-bezier(.2,1.4,.4,1);position:absolute;top:14px;left:50%;transform:translate(-50%,-60px)}.landmark.show{transform:translate(-50%)}.prompt{border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);opacity:0;background:#fff;border-radius:12px;padding:8px 16px;font-size:18px;font-weight:800;transition:opacity .15s;position:absolute;bottom:120px;left:50%;transform:translate(-50%)}.prompt.show{opacity:1}.prompt.disabled{color:#777;background:#eee}.prompt kbd{background:var(--ink);color:#fff;font-family:var(--body);border-radius:6px;margin-right:6px;padding:1px 8px;display:inline-block}.toast{background:var(--ink);color:var(--gold);opacity:0;pointer-events:none;border-radius:10px;padding:6px 14px;font-weight:800;transition:all .2s;position:absolute;bottom:175px;left:50%;transform:translate(-50%,10px)}.toast.show{opacity:1;transform:translate(-50%)}.banner{text-align:center;opacity:0;pointer-events:none;transition:all .35s cubic-bezier(.2,1.4,.4,1);position:absolute;top:34%;left:50%;transform:translate(-50%,-50%)scale(.6)}.banner.show{opacity:1;transform:translate(-50%,-50%)scale(1)}.banner b{font-family:var(--marker);color:#fff;-webkit-text-stroke:2px var(--ink);text-shadow:5px 5px 0 var(--pink), 9px 9px 0 var(--ink);font-size:44px;display:block}.banner span{background:var(--cream);border:3px solid var(--ink);border-radius:10px;margin-top:8px;padding:4px 12px;font-weight:800;display:inline-block}.checklist{background:var(--cream);border:3px solid var(--ink);width:320px;box-shadow:5px 5px 0 var(--ink);border-radius:14px;max-height:calc(100vh - 100px);padding:10px 12px;transition:transform .3s;position:absolute;top:64px;right:16px;overflow:auto;transform:translate(380px)}.checklist.open{transform:none}.checklist .ct{font-family:var(--marker);margin-bottom:6px;font-size:20px}.checklist .row{border:2px solid var(--ink);background:#fff;border-radius:10px;margin-bottom:6px;padding:6px 8px}.checklist .row.restored{background:#e3ffe8}.checklist .rh{justify-content:space-between;align-items:baseline;display:flex}.checklist .rh em{background:var(--ink);color:var(--gold);border-radius:6px;padding:1px 6px;font-size:12px;font-style:normal}.checklist .bar{border:2px solid var(--ink);background:#fff;border-radius:6px;height:8px;margin:5px 0;overflow:hidden}.checklist .bar i{background:linear-gradient(90deg, var(--pink), var(--gold), var(--cyan));height:100%;display:block}.checklist .cells{flex-wrap:wrap;gap:4px 10px;font-size:13px;font-weight:800;display:flex}.checklist .cells .ok{color:#2a8a4a}.checklist .legend{color:#55506a;margin-top:4px;font-size:12px}.checklist .trust{color:var(--pink);letter-spacing:1px;margin-top:2px;font-size:12px;font-weight:800}.book .legend{margin:0 0 8px}.book .card{border:2px solid var(--ink);cursor:default;background:#fff;border-radius:10px;align-items:stretch;width:100%;margin-bottom:6px;padding:7px 9px}.book .card:hover{transform:none}.save-status{background:#fff3dce6;border-radius:5px;align-self:flex-start;padding:2px 6px;font-size:11px}#demoExit{left:50%;top:max(70px, env(safe-area-inset-top));z-index:8;min-height:44px;color:var(--ink);background:var(--cream);border:2px solid var(--ink);font:800 13px var(--body);cursor:pointer;border-radius:10px;padding:6px 14px;position:fixed;transform:translate(-50%)}#demoPause{left:calc(50% + 72px);top:max(70px,env(safe-area-inset-top));z-index:8;background:var(--cream);min-height:44px;color:var(--ink);border:2px solid var(--ink);font:800 13px var(--body);cursor:pointer;border-radius:10px;padding:6px 14px;position:fixed}.book a{color:#17567b;font-size:12px;line-height:1.5;display:block}.lbl.bubble{white-space:normal;text-align:center;max-width:min(260px,64vw)}body.demo #labels,body.demo .top-right,body.demo .banner,body.demo .landmark{display:none!important}.landmark{text-align:center;max-width:46vw;top:76px}body:has(.checklist.open) #touch{visibility:hidden}#dialogue{pointer-events:none}#dialogue .box{pointer-events:auto}button:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #126da8}#game:focus-visible{outline-offset:-2px;outline:2px solid #126da8}.book .card.locked{opacity:.75;background:#f1ede4}.art-photo{margin:12px 0}.art-photo img{object-fit:contain;background:#183b3b;border-radius:8px;width:100%;height:auto;max-height:48vh;display:block}.art-photo figcaption{color:#55506a;margin-top:6px;font-size:12px;line-height:1.5}.art-dialog a{color:#17567b;overflow-wrap:anywhere;padding:10px 0;display:block}.art-source-link{color:#17567b;overflow-wrap:anywhere;min-height:44px;padding:12px 0;display:block}.chapter-dialog.art-dialog{width:min(760px,100vw - 28px)}.art-dialog .chapter-close{z-index:1;float:none;border:2px solid var(--ink);background:var(--cream);border-radius:10px;width:100%;min-height:44px;margin-bottom:16px;text-decoration:none;display:block;position:sticky;top:0}.book .ch{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.book .ch b{font-family:var(--marker);letter-spacing:.5px;font-size:15px}.book .ch em{background:var(--ink);color:var(--gold);white-space:nowrap;border-radius:6px;padding:1px 6px;font-size:11px;font-style:normal}.book .card p{margin:4px 0 0;font-size:12.5px;line-height:1.35}.book .card.locked p{font-style:italic}.help{color:var(--ink);background:#ffffffb3;border-radius:8px;padding:3px 10px;font-size:12px;font-weight:700;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}#touch{pointer-events:none;height:200px;position:absolute;bottom:0;left:0;right:0}.joy{border:3px solid var(--ink);touch-action:none;background:#ffffff73;border-radius:50%;width:130px;height:130px;position:absolute;bottom:30px;left:26px}.knob{background:var(--pink);border:3px solid var(--ink);width:56px;height:56px;box-shadow:3px 3px 0 var(--ink);border-radius:50%;margin:-28px 0 0 -28px;position:absolute;top:50%;left:50%}.tbtns{align-items:flex-end;gap:10px;display:flex;position:absolute;bottom:30px;right:26px}.tb{border:3px solid var(--ink);width:58px;height:58px;box-shadow:3px 3px 0 var(--ink);cursor:pointer;touch-action:none;background:#fff;border-radius:50%;font-size:20px;font-weight:800}.tb.big{background:var(--gold);width:76px;height:76px;font-size:26px}.tb.lit{background:var(--cyan)}@media (hover:hover) and (pointer:fine){#touch .joy,#touch .tb:not(.big){opacity:.55}}#dialogue{background:0 0;justify-content:center;align-items:flex-end;padding-bottom:36px;display:flex;position:fixed;inset:0}#dialogue .box{background:var(--cream);border:4px solid var(--ink);width:min(760px,92vw);box-shadow:7px 7px 0 var(--ink);cursor:pointer;border-radius:18px;align-items:center;gap:14px;padding:14px 18px;display:flex}#dialogue.plaque .box{background:#fff8e1}.history-reading{inset:auto 0 max(16px,env(safe-area-inset-bottom));background:var(--cream);width:min(650px,100vw - 24px);max-height:48dvh;color:var(--ink);border:3px solid var(--ink);box-shadow:6px 7px 0 var(--ink);border-radius:20px;margin:0 auto;padding:18px 22px;position:fixed;overflow:auto}.history-reading h2{font:clamp(20px,3vw,28px)/1.2 var(--marker);margin:6px 0 10px}.history-eyebrow{color:#20625d;letter-spacing:.12em;font-size:11px;font-weight:900;animation:3s ease-in-out infinite reading-glow}.history-fact{margin:0;font-size:16px;font-weight:700;line-height:1.45}.history-reward{background:#dceee3;border-radius:10px;margin:12px 0;padding:9px 12px;font-size:13px;font-weight:800;line-height:1.4}.history-actions{align-items:center;gap:12px;margin-top:10px;display:flex}.history-actions .btn{background:var(--gold);padding:10px 14px;font-size:14px}.history-close{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;min-height:44px;padding:10px;font-size:13px;text-decoration:underline}.history-timing,.history-credit{margin-top:6px;font-size:11px;line-height:1.3;display:block}.history-reading progress{accent-color:#287b70;width:100%;height:6px}.inspired-care{border:2px solid var(--ink);background:#dceee3;border-radius:12px;width:max-content;max-width:100%;margin-top:7px;padding:6px 10px;font-size:12px;font-weight:900}.reading-active .chapter-card,.reading-active .chips,.reading-active #touch,.reading-active #prompt,.reading-active .help,.reading-active #labels,.reading-active #toast,.reading-active #banner,.reading-active .chapter-note,.reading-active .chapter-keepsake,.reading-active .care-work,.reading-active .top-right>:not(#pauseBtn){display:none!important}.take-controls{background:var(--gold)!important}.traffic-note{width:max-content;max-width:calc(100vw - 30px);color:var(--ink);border:3px solid var(--ink);text-align:center;box-shadow:4px 4px 0 var(--ink);pointer-events:none;background:#fff3cc;border-radius:16px;padding:12px 16px;font-size:14px;font-weight:900;position:absolute;bottom:178px;left:50%;transform:translate(-50%)}.traffic-waiting .chapter-note,.traffic-waiting #prompt,.reading-active .traffic-note,.district-travel .traffic-note{display:none!important}@keyframes reading-glow{0%,to{opacity:.65}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.history-eyebrow{animation:none}}@media (max-width:600px){.history-reading{padding:12px 15px}.history-fact{font-size:14px;line-height:1.4}.history-reward{font-size:12px}}@media (max-width:750px){.history-reading{border-radius:16px;max-height:42dvh;padding:12px 14px 14px}.history-reading h2{margin:2px 0 6px;font-size:20px}.history-fact{font-size:14px;line-height:1.38}.history-reward{margin:8px 0;padding:6px 9px;font-size:12px}.history-actions{gap:8px;margin-top:4px}.history-actions .btn{padding:8px 12px;font-size:13px}.history-close{min-height:36px;padding:6px}.history-credit{margin-top:4px;font-size:10px}}@media (min-width:751px) and (max-height:549px){.history-reading{width:40vw;max-height:none;margin:0;inset:12px 16px 12px auto}}#dialogue .ava{border:3px solid var(--ink);width:56px;height:56px;font-family:var(--marker);color:#fff;text-shadow:2px 2px 0 var(--ink);border-radius:50%;flex:0 0 56px;place-items:center;font-size:26px;display:grid}#dialogue .body{flex:1}#dialogue .name{font-family:var(--marker);color:var(--pink);-webkit-text-stroke:.5px var(--ink);font-size:20px}#dialogue .text{min-height:48px;font-size:18px;font-weight:700;line-height:1.35}#dialogue .next{border:3px solid var(--ink);background:var(--gold);cursor:pointer;width:44px;height:44px;box-shadow:3px 3px 0 var(--ink);border-radius:50%;flex:none;font-size:18px;animation:1s infinite alternate bob}@keyframes bob{0%{transform:translateY(-2px)}to{transform:translateY(3px)}}#title{-webkit-overflow-scrolling:touch;background:radial-gradient(at 50% 30%,#ffffff1f,#1d15302e 80%);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow-y:auto}#title .tcol{flex-direction:column;align-items:center;gap:10px;max-width:96vw;margin:auto;padding:8px 0;display:flex}#titleCanvas{filter:drop-shadow(0 10px #1d153040)}#title .tag{text-align:center;max-width:620px;color:var(--ink);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);background:#fff3dceb;border-radius:12px;margin:0;padding:8px 14px;font-size:17px;font-weight:800}#cards{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.card{border:3px solid var(--ink);cursor:pointer;width:150px;font-family:var(--body);box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:14px;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;transition:transform .12s;display:flex}.card:hover{transform:translateY(-3px)}.card.on{background:var(--gold);box-shadow:5px 5px 0 var(--ink)}.card .ava{border:4px solid;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.card .ava i{border:2px solid var(--ink);border-radius:50%;width:22px;height:22px}.card b{font-size:15px}.card small{color:#3d3550;font-size:11px;line-height:1.25}#begin{font-family:var(--marker);letter-spacing:3px;color:#fff;-webkit-text-stroke:1px var(--ink);background:linear-gradient(180deg, var(--pink), #e0308a);border:4px solid var(--ink);cursor:pointer;box-shadow:6px 6px 0 var(--ink);border-radius:18px;padding:8px 54px;font-size:34px;transition:transform .1s}#begin:hover{transform:scale(1.04)}#begin:active{box-shadow:2px 2px 0 var(--ink);transform:translate(3px,3px)}.demo-btn{font-family:var(--body);border:3px solid var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:10px;padding:4px 14px;font-size:14px;font-weight:800}.jev-btn{color:var(--ink);background:linear-gradient(135deg,#ffd23f,#ff8c42 48%,#ff5fa2)}.install-btn{font-family:var(--body);background:var(--cyan);min-height:42px;color:var(--ink);border:2px solid var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);border-radius:11px;padding:8px 16px;font-size:13px;font-weight:900}.install-btn:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.install-btn:disabled{cursor:default;opacity:.9}.install-hint{text-align:center;max-width:360px;color:var(--cream);margin:0;font-size:11px;font-weight:800;line-height:1.35}.install-floating{z-index:20;top:max(12px,env(safe-area-inset-top));box-shadow:3px 3px 0 var(--ink);position:fixed;right:12px}.install-floating-hint{z-index:20;top:calc(max(12px,env(safe-area-inset-top)) + 48px);background:var(--cream);max-width:230px;color:var(--ink);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:9px;padding:7px 10px;position:fixed;right:12px}.caption{text-align:center;opacity:0;pointer-events:none;max-width:80vw;transition:all .35s;position:absolute;bottom:60px;left:50%;transform:translate(-50%,20px)}.caption.show{opacity:1;transform:translate(-50%)}.caption b{font-family:var(--marker);color:#fff;-webkit-text-stroke:1.5px var(--ink);text-shadow:4px 4px 0 var(--pink), 7px 7px 0 var(--ink);font-size:40px;display:block}.caption span{background:var(--cream);border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:10px;margin-top:6px;padding:5px 14px;font-size:17px;font-weight:800;display:inline-block}.fade{background:var(--ink);opacity:0;pointer-events:none;z-index:5;place-items:center;transition:opacity .4s;display:grid;position:fixed;inset:0}.fade.on{opacity:1}.fade span{font-family:var(--marker);color:var(--cream);letter-spacing:1px;opacity:0;font-size:34px;transition:opacity .3s}.fade.on span{opacity:1}body.demo .help,body.demo .prompt,body.demo #touch,body.demo .toast{display:none!important}#title .hint{color:var(--ink);background:#ffffffbf;border-radius:8px;margin:0;padding:4px 10px;font-size:13px;font-weight:700}#title .credits{color:var(--ink);opacity:.8;font-size:12px;font-weight:700;position:absolute;bottom:12px;right:16px}#win{background:#1d153059;place-items:center;display:grid;position:fixed;inset:0}.wbox{background:var(--cream);border:4px solid var(--ink);text-align:center;box-shadow:8px 8px 0 var(--ink);border-radius:20px;max-width:520px;padding:24px 32px}.wbox h2{font-family:var(--marker);color:var(--pink);-webkit-text-stroke:1px var(--ink);margin:0 0 8px;font-size:42px}.wbox p{font-size:17px;font-weight:700}.wbox .small{color:#55506a;font-size:14px}.wbox button{font-family:var(--marker);background:var(--gold);border:3px solid var(--ink);cursor:pointer;box-shadow:4px 4px 0 var(--ink);border-radius:12px;padding:6px 22px;font-size:22px}body.mobile .help{display:none}body.mobile .top-left{transform-origin:0 0;transform:scale(.85)}body.mobile .top-right{transform-origin:100% 0;transform:scale(.85)}body.mobile #vol{display:none}body.mobile .joy{width:150px;height:150px;bottom:26px;left:22px}body.mobile .tb{width:66px;height:66px}body.mobile .tb.big{width:88px;height:88px}body.mobile .prompt{font-size:16px;bottom:150px}body.mobile .toast{bottom:200px}body.mobile #touch .joy,body.mobile #touch .tb{opacity:1}@media (max-height:520px),(max-width:560px){#title .tcol{gap:6px}#title .tag{max-width:92vw;padding:5px 10px;font-size:13px}#cards{gap:6px}.card{gap:2px;width:118px;padding:6px 4px}.card .ava{border-width:3px;width:30px;height:30px}.card .ava i{width:14px;height:14px}.card b{font-size:12px}.card small{font-size:9px}#begin{padding:4px 36px;font-size:24px}.demo-btn{font-family:var(--body);border:3px solid var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);background:#fff;border-radius:10px;padding:4px 14px;font-size:14px;font-weight:800}.caption{text-align:center;opacity:0;pointer-events:none;max-width:80vw;transition:all .35s;position:absolute;bottom:60px;left:50%;transform:translate(-50%,20px)}.caption.show{opacity:1;transform:translate(-50%)}.caption b{font-family:var(--marker);color:#fff;-webkit-text-stroke:1.5px var(--ink);text-shadow:4px 4px 0 var(--pink), 7px 7px 0 var(--ink);font-size:40px;display:block}.caption span{background:var(--cream);border:3px solid var(--ink);box-shadow:3px 3px 0 var(--ink);border-radius:10px;margin-top:6px;padding:5px 14px;font-size:17px;font-weight:800;display:inline-block}.fade{background:var(--ink);opacity:0;pointer-events:none;z-index:5;place-items:center;transition:opacity .4s;display:grid;position:fixed;inset:0}.fade.on{opacity:1}.fade span{font-family:var(--marker);color:var(--cream);letter-spacing:1px;opacity:0;font-size:34px;transition:opacity .3s}.fade.on span{opacity:1}body.demo .help,body.demo .prompt,body.demo #touch,body.demo .toast{display:none!important}#title .hint{font-size:11px}#title .credits{display:none}}@media (max-width:700px){.help{display:none}.checklist{width:260px}#dialogue .text{font-size:15px}}@media (max-width:700px),(pointer:coarse) and (max-height:550px){#cards .card{width:min(43vw,160px)}#cards .card b{font-size:14px}#cards .card small{font-size:12px;line-height:1.35}.top-left,body.mobile .top-left{left:max(10px, env(safe-area-inset-left));top:max(8px, env(safe-area-inset-top));gap:4px;max-width:48vw;transform:none}.score{box-shadow:2px 2px 0 var(--ink);border-width:2px;gap:6px;padding:2px 8px}.score b{font-size:20px}.score .k{font-size:11px}.rank{border-width:2px;width:170px;min-width:0;max-width:45vw;padding:4px 7px}.rank b{font-family:var(--body);letter-spacing:0;font-size:12px}.rank span{font-size:10px}.chips{gap:3px}.chip{box-shadow:none;border-width:2px;padding:2px 5px;font-size:12px}.chip.time{display:none}.top-right,body.mobile .top-right{right:max(10px, env(safe-area-inset-right));top:max(8px, env(safe-area-inset-top));flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:47vw;transform:none}.btn{min-height:44px;box-shadow:2px 2px 0 var(--ink);border-width:2px;padding:4px 7px;font-size:11px}#vol{display:none}.landmark{text-align:center;max-width:90vw;padding:3px 8px;font-size:14px;top:142px}.landmark:not(.show){visibility:hidden}.joy,body.mobile .joy{width:106px;height:106px;left:max(18px, env(safe-area-inset-left));bottom:max(24px, env(safe-area-inset-bottom))}.knob{width:46px;height:46px;margin:-23px 0 0 -23px}.tbtns{right:max(18px, env(safe-area-inset-right));bottom:max(24px, env(safe-area-inset-bottom));gap:8px}.tb,body.mobile .tb{width:46px;height:46px;font-size:16px}.tb.big,body.mobile .tb.big{width:68px;height:68px;font-size:21px}.prompt,body.mobile .prompt{text-align:center;width:max-content;max-width:90vw;padding:7px 10px;font-size:14px;bottom:150px}.toast,body.mobile .toast{text-align:center;max-width:92vw;font-size:13px;bottom:203px}.checklist{width:min(350px,100vw - 20px);max-height:calc(100dvh - 175px);top:155px;right:10px}.book .card{align-items:stretch;width:100%}.book .card p{font-size:15px;line-height:1.45}#dialogue{padding-bottom:max(20px, env(safe-area-inset-bottom))}#dialogue .box{gap:9px;width:calc(100vw - 24px);padding:12px}#dialogue .ava{display:none}#dialogue .text{min-height:60px;font-size:16px}#dialogue .next{width:52px;height:52px}.banner b{-webkit-text-stroke-width:1px;font-size:30px}.banner{width:92vw}.caption{width:92vw;max-width:none;bottom:35px}.caption b{font-size:28px}.caption span{font-size:14px}.wbox{max-width:calc(100vw - 24px);padding:18px}.wbox h2{font-size:30px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}#journey{border:3px solid var(--ink);background:var(--cream);width:min(760px,100vw - 24px);max-height:calc(100dvh - 30px);color:var(--ink);border-radius:20px;padding:24px;overflow:auto}#journey::backdrop{background:#16262da6}.journey-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.journey-head p{letter-spacing:1.5px;margin:0 0 7px;font-size:11px;font-weight:800}.journey-head h2{font-family:var(--marker);margin:0;font-size:28px}.journey-intro,.journey-note{line-height:1.5}.journey-list{gap:12px;display:grid}.journey-list article{border:2px solid var(--ink);background:#fff;border-radius:14px;gap:16px;padding:16px;display:flex}.district-number{color:#fff4d8;background:#275c67;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;font-size:24px;font-weight:800;display:grid}.journey-list small{letter-spacing:1px;font-size:10px;font-weight:800}.journey-list h3{margin:3px 0 7px;font-size:20px}.journey-list p{margin:5px 0;font-size:14px;line-height:1.4}.district-care{color:#386365}.coming{color:#635c51;font-size:12px;font-weight:800}.district-link{border:2px solid var(--ink);color:var(--ink);background:#ffdb78;border-radius:8px;margin-top:8px;padding:10px 14px;font-weight:800;display:inline-block}.journey-note{font-size:12px}@media (max-width:700px){#journey{padding:16px}.journey-head h2{font-size:23px}.journey-list article{gap:10px;padding:12px}.district-number{flex-basis:34px;width:34px;height:34px;font-size:20px}.journey-list h3{font-size:18px}}.caption{width:min(700px,92vw);max-width:92vw;bottom:max(24px,env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:10px;display:flex}.caption b{text-wrap:balance;font-size:clamp(24px,3.4vw,34px);line-height:1.22}.caption span{max-width:100%;margin:0;font-size:clamp(14px,1.7vw,17px);line-height:1.35}body:has(#dialogue:not([hidden])) .caption{bottom:var(--dialogue-clearance,190px)}body:has(#dialogue:not([hidden])) .caption b{font-size:clamp(22px,3vw,30px)}body:has(#dialogue:not([hidden])) .caption span{display:none}@media (max-width:600px){#demoExit{top:12px;left:auto;right:90px}#demoPause{padding:6px 10px;top:12px;left:auto;right:12px}.caption{gap:8px}}.caption,.caption.show{transition:opacity .18s;transform:translate(-50%)}@media (max-width:600px){#demoExit{min-height:40px;padding:6px 8px;font-size:12px;right:82px;transform:none}#demoPause{min-height:40px;font-size:12px}}body.player-obscured .lbl.bubble{visibility:hidden}.district-chapter .top-left{width:150px}.district-chapter .score{padding:7px 13px;font-size:24px}.district-chapter .score .k{font-size:12px}.district-chapter .rank{display:none}.district-chapter .chips{gap:5px;margin-top:7px}.district-chapter .chip{box-shadow:none;border-width:2px;padding:2px 6px;font-size:13px}.district-chapter .save-status{display:none}.district-chapter .save-status[data-failed=true]{color:#7e3030;margin-top:8px;font-size:12px;line-height:1.4;display:block}.chapter-card{border:2px solid var(--ink);background:#fff8e9f5;border-radius:18px;width:min(350px,100vw - 32px);padding:14px;position:absolute;top:104px;left:16px;box-shadow:4px 5px #231a3322}.chapter-card,.care-work{pointer-events:auto}.chapter-eyebrow{letter-spacing:.11em;color:#326557;font-size:10px;font-weight:900}.chapter-row{align-items:center;gap:10px;margin:5px 0;display:flex}.chapter-row>b{flex:1;font-size:18px;line-height:1.2}.chapter-guide{border:2px solid var(--ink);cursor:pointer;background:#65d4c1;border-radius:12px;min-height:44px;padding:6px 10px;font-weight:900}.chapter-desc{margin-bottom:8px;font-size:13px;line-height:1.3;display:block}.chapter-card progress,.care-work progress{accent-color:#308a73;width:100%;height:7px;display:block}.chapter-journal{color:#365f56;cursor:pointer;background:0 0;border:0;padding:8px 0 0;font-size:12px;font-weight:900;text-decoration:underline}.chapter-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.chapter-crew{cursor:pointer;background:#e2eee4;border:2px solid #326557;border-radius:11px;min-height:40px;margin-top:5px;padding:6px 10px;font-size:12px;font-weight:900}.chapter-crew[hidden],.chapter-complete .chapter-desc,.chapter-complete>progress{display:none}.collection-work{border:2px solid var(--ink);pointer-events:auto;background:#fff8e9f5;border-radius:18px;width:min(580px,100vw - 28px);padding:16px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.collection-work b,.collection-work span,.collection-work small{display:block}.collection-work b{font-size:18px}.collection-work span{margin:6px 0;font-size:13px}.collection-work small{min-height:32px;font-size:12px;line-height:1.35}.collection-choices{gap:8px;margin-top:10px;display:flex}.collection-choices button{background:#cae8dc;border:2px solid #326557;border-radius:12px;flex:1;min-height:50px;padding:7px;font-weight:900}.collection-choices button:nth-child(2){background:#d7e8f3}.collection-choices button:nth-child(3){background:#f5e0ac}.collection-choices button:disabled{opacity:.55}.collection-stop{background:#fff8e9;border:1px solid #687b70;border-radius:9px;min-height:36px;margin-top:9px;padding:5px 12px;font-weight:700}@media (max-height:500px) and (min-width:600px){.collection-work{width:300px;padding:12px;bottom:12px;left:auto;right:12px;transform:none}.collection-work b{font-size:16px}.collection-work span{font-size:11px}.collection-choices{gap:5px}.collection-choices button{padding:5px;font-size:11px}.collection-work small{font-size:11px}}.crew-task{background:#edf5e9;border:2px solid #67aa91;border-radius:14px;margin:12px 0;padding:12px}.crew-task p{margin:6px 0}.crew-actions{gap:10px;display:flex}.crew-actions button{flex:1}.crew-person{margin:12px 0}.crew-person .chapter-choice{margin-bottom:5px}.crew-note{color:#48685d;font-size:12px}.crew-error{color:#93452c;font-weight:800}.crew-error:empty{display:none}.crew-credit{font-size:13px}.chapter-choice:disabled,.chapter-primary:disabled{opacity:.55;cursor:default}.watching-crew .chapter-card,.watching-crew .chips,.watching-crew #touch,.watching-crew .prompt,.watching-crew .help,.watching-crew #labels,.watching-crew .toast,.watching-crew .chapter-note,.watching-crew #banner{display:none!important}.crew-watch{border:2px solid var(--ink);pointer-events:auto;background:#fff8e9f5;border-radius:18px;width:min(480px,100vw - 28px);padding:14px;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.crew-watch b,.crew-watch span{display:block}.crew-watch b{font-size:16px}.crew-watch span{margin:7px 0;font-size:13px}.crew-watch button{cursor:pointer;background:#b2e1cd;border:2px solid #326557;border-radius:11px;width:100%;min-height:44px;font-weight:900}.district-travel .chapter-card,.district-travel .chips,.district-travel #touch,.district-travel #prompt,.district-travel .help,.district-travel #labels,.district-travel #toast,.district-travel #banner,.district-travel .chapter-note,.district-travel .top-right{display:none!important}.district-travel .top-right:has(#pauseBtn){display:flex!important}.district-travel .top-right>:not(#pauseBtn):not(#jevSpeed){display:none!important}.travel-card{border:2px solid var(--ink);text-align:center;pointer-events:auto;background:#fff8e9f2;border-radius:18px;width:min(480px,100vw - 28px);padding:16px;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.travel-card b,.travel-card span{display:block}.travel-card b{font:24px var(--marker)}.travel-card span{margin:8px 0;font-size:14px}.travel-card button{border:2px solid var(--ink);background:#e7eddf;border-radius:10px;min-height:40px;padding:7px 15px;font-weight:800}.travel-leaving:after{content:"";z-index:30;pointer-events:none;background:#162c34;animation:.6s forwards travel-out;position:fixed;inset:0}@keyframes travel-out{0%{opacity:0}to{opacity:1}}.chapter-note{border:2px solid var(--ink);text-align:center;pointer-events:none;background:#fff5d9;border-radius:14px;width:max-content;max-width:min(560px,90vw);padding:10px 14px;font-size:14px;font-weight:800;position:absolute;bottom:153px;left:50%;transform:translate(-50%);box-shadow:3px 4px #231a3322}.chapter-notice .toast{display:none}.chapter-keepsake{pointer-events:none;background:#fff5d9;border:2px solid #2d7666;border-radius:17px;align-items:center;gap:13px;width:min(335px,100vw - 32px);padding:13px 16px;animation:.35s ease-out keepsake-in;display:flex;position:absolute;bottom:150px;left:50%;transform:translate(-50%);box-shadow:4px 5px #231a3322}.chapter-keepsake[hidden]{display:none}.chapter-keepsake small,.chapter-keepsake b,.chapter-keepsake span{display:block}.chapter-keepsake small{letter-spacing:.13em;color:#326557;font-size:9px;font-weight:900}.chapter-keepsake b{margin:3px 0;font-size:18px}.chapter-keepsake div>span{font-size:12px}.chapter-keepsake .care-badge{color:#2d7666;background:#ffd36c;border:5px solid #2d7666;border-radius:50%;flex:0 0 48px;place-items:center;height:48px;font-size:29px;display:grid}.keepsake-earned .toast,.keepsake-earned .chapter-note,.care-working .chapter-keepsake{display:none!important}@keyframes keepsake-in{0%{opacity:0;transform:translate(-50%,12px)scale(.92)}to{opacity:1;transform:translate(-50%)scale(1)}}@media (prefers-reduced-motion:reduce){.chapter-keepsake{animation:none}}@media (max-height:520px){.chapter-keepsake{animation:none;bottom:110px;left:auto;right:14px;transform:none}}.care-work{left:50%;bottom:max(18px,env(safe-area-inset-bottom));border:2px solid var(--ink);background:#fff8e9f5;border-radius:18px;width:min(570px,100vw - 28px);padding:14px;position:absolute;transform:translate(-50%);box-shadow:4px 5px #231a3322}.care-work>b{font-size:18px;display:block}.care-work>span{color:#326557;margin:4px 0 8px;font-size:13px;font-weight:900;display:block}.care-work small{margin-top:8px;font-size:12px;line-height:1.3;display:block}.care-buttons{gap:8px;margin-top:10px;display:flex}.care-buttons button{border:2px solid var(--ink);cursor:pointer;background:#f0ecdf;border-radius:11px;flex:1;min-height:42px;padding:7px;font-weight:800}.care-buttons button:first-child{background:#a8e3d4}.care-panels{align-items:center;gap:8px;margin-bottom:9px;display:flex}.care-panels[hidden]{display:none}.care-panels span{text-align:center;flex:1;font-size:12px;font-weight:900}.care-panels button{border:2px solid var(--ink);cursor:pointer;background:#f0ecdf;border-radius:10px;min-width:44px;min-height:44px;font-size:24px}.care-working #touch,.care-working .prompt,.care-working .help,.care-working .landmark,.care-working .chapter-note,.care-working .toast{display:none!important}.care-working .lbl.bubble{visibility:hidden}.care-working .chapter-card,.care-working .chips,body.care-working .top-left,body.care-working .top-right>:not(#pauseBtn):not(#jevSpeed):not(#mute),body.care-working #labels,body.care-working #banner{display:none!important}body.care-working .top-right{gap:6px;max-width:calc(100vw - 24px)}body.care-working .top-right .btn,body.care-working .care-buttons button{min-height:44px}body.care-working .care-work{width:min(460px,100vw - 24px);padding:11px 13px;box-shadow:2px 3px #231a3322}body.care-working .care-work>b{font-size:16px;line-height:1.25}body.care-working .care-work>span{margin:3px 0 6px;font-size:12px}body.care-working .care-buttons{margin-top:8px}body.care-working .care-work small{margin-top:6px;font-size:11px}@media (max-height:500px){body.care-working .care-work{width:min(400px,100vw - 24px);padding:8px 11px}body.care-working .care-work small{display:none}}.conversation-active .chapter-card,.conversation-active .chips,.conversation-active #touch,.conversation-active .prompt,.conversation-active .toast,.conversation-active #labels,.conversation-active .chapter-note,.conversation-active .chapter-keepsake{display:none!important}.care-work .care-pad-hint,.controller-connected .care-work .care-touch-hint{display:none}@media (min-height:521px){.controller-connected .care-work .care-pad-hint{display:block}}.chapter-dialog{border:3px solid var(--ink);width:min(550px,100vw - 28px);max-height:calc(100dvh - 32px);color:var(--ink);background:#fff8e9;border-radius:24px;padding:26px;overflow:auto;box-shadow:8px 10px #17112b33}.chapter-dialog::backdrop{background:#152c36a6}.chapter-dialog h2{font-family:var(--marker);margin:12px 0;font-size:30px;line-height:1.15}.chapter-dialog p{line-height:1.5}.chapter-dialog h3{margin-bottom:6px}.chapter-close{float:right;cursor:pointer;background:0 0;border:0;min-height:36px;font-weight:800;text-decoration:underline}.chapter-soft{color:#42645c;font-weight:800}.chapter-primary{border:2px solid var(--ink);cursor:pointer;background:#72d4bd;border-radius:14px;width:100%;margin-top:12px;padding:13px;font-size:17px;font-weight:900}.chapter-stages{padding-left:24px}.chapter-stages li{margin:8px 0}.chapter-stages .complete{color:#277057;font-weight:900}.chapter-memory{background:#edf4e9;border-left:4px solid #72cdb6;border-radius:8px;padding:12px}.chapter-choice{text-align:left;cursor:pointer;background:#eef7e9;border:2px solid #396e60;border-radius:16px;width:100%;margin:12px 0;padding:15px;display:block}.chapter-choice b,.chapter-choice span{display:block}.chapter-choice span{margin-top:6px;line-height:1.4}.sound-level{grid-template-columns:140px 1fr;align-items:center;gap:15px;margin:20px 0;font-weight:800;display:grid}.sound-level input{accent-color:#257c65;width:100%}@media (max-width:700px){.district-chapter .top-left{width:100px;top:10px;left:10px}.district-chapter .score{box-shadow:2px 2px 0 var(--ink);border-width:2px;padding:4px 8px;font-size:22px}.district-chapter .score .k{font-size:10px}.district-chapter .chips{gap:3px}.district-chapter .chip{padding:1px 3px;font-size:10px}.district-chapter .chip.time{display:none}.district-chapter .top-right{gap:4px;max-width:calc(100vw - 148px);top:10px;right:10px}.district-chapter .top-right .btn{min-height:38px;padding:4px 6px;font-size:10px}.district-chapter #viewBtn,.district-chapter #vol{display:none}.chapter-card{border-radius:15px;width:calc(100vw - 20px);padding:10px 12px;top:92px;left:10px}.chapter-row>b{font-size:15px}.chapter-desc{margin-bottom:5px;font-size:12px}.chapter-eyebrow{font-size:9px}.chapter-journal{padding-top:5px;font-size:11px}.chapter-guide{min-height:40px;font-size:12px}.district-chapter .landmark{display:none}.chapter-note{font-size:12px;bottom:145px}.care-work{padding:11px}.care-work>b{font-size:15px}.care-work>span{font-size:12px}.chapter-dialog{padding:20px}.chapter-dialog h2{font-size:27px}.sound-level{grid-template-columns:110px 1fr}}@media (max-height:520px){.chapter-card{width:270px;padding:9px;top:75px}.chapter-eyebrow,.chapter-journal{display:none}.chapter-row>b{font-size:14px}.chapter-desc{font-size:11px}.care-work{width:min(390px,100vw - 24px);padding:9px;left:auto;right:12px;transform:none}.care-work small{display:none}.care-work>b{font-size:14px}}@media (max-width:700px){.district-chapter .top-left{width:118px}.district-chapter .chips{flex-wrap:nowrap}}.chapter-secondary{cursor:pointer;background:#edf4e9;border:2px solid #396e60;border-radius:12px;min-height:42px;margin-top:10px;padding:8px 12px;font-weight:800;display:block}.district-chapter .landmark{display:none}.highlights .top-left .rank,.highlights .chips,.highlights .save-status,.highlights .banner{display:none!important}.highlights .score{width:max-content;min-width:115px;padding:6px 12px;font-size:25px}.highlights .score .k{font-size:13px}.highlights .caption b{font-size:clamp(23px,3.2vw,32px)}.highlights .caption{max-width:90vw}#demoSound{z-index:10;color:var(--ink);border:2px solid var(--ink);cursor:pointer;background:#fff5dc;border-radius:12px;padding:9px 13px;font-weight:900;position:fixed;top:112px;right:16px}#demoSound.attention{animation:2.6s ease-in-out 2 sound-cta-pulse}.demo-ended .top-right,.demo-ended #touch,.demo-ended .prompt,.demo-ended .help,.demo-ended #labels,.demo-ended .landmark,.demo-ended .toast{display:none!important}.demo-ended #demoExit{inset:auto auto 24px 50%;transform:translate(-105%)}#demoReplay{z-index:10;border:2px solid var(--ink);cursor:pointer;background:#73d5c5;border-radius:12px;min-height:44px;padding:12px;font-weight:900;position:fixed;bottom:24px;left:50%}.demo-ended .caption{bottom:90px}@media (max-width:600px){#demoSound{padding:7px 10px;font-size:12px;top:62px;right:12px}.highlights .score{min-width:90px;font-size:22px}.highlights .top-left{top:10px;left:10px}}#title{background:linear-gradient(115deg,#0d1e27e6,#0d1e278c 58%,#0d1e2714);align-items:flex-start}#title .tcol{gap:9px;width:min(560px,94vw);max-width:94vw;margin:auto auto auto 6vw;padding:24px 0 36px;position:relative}#title .title-place{color:var(--cream);letter-spacing:3px;align-items:center;gap:14px;margin:0;font-size:11px;font-weight:900;display:flex}.title-place span{color:var(--gold);font-size:24px}#titleCanvas{object-fit:contain;max-width:100%;animation:.85s cubic-bezier(.18,.8,.25,1) both title-pop}#title .title-hook{font:clamp(30px,3.4vw,46px)/1.06 var(--marker);text-align:center;color:var(--cream);text-shadow:3px 4px 0 var(--ink);margin:-8px 0 4px;animation:.65s .12s both title-in}.title-hook em{color:var(--gold);font-style:normal}#title .tag{color:var(--cream);box-shadow:none;background:0 0;border:0;border-radius:0;max-width:410px;padding:0 10px;font-size:16px;line-height:1.4;animation:.65s .24s both title-in}.title-actions{flex-direction:column;align-items:center;gap:12px;width:100%;margin:8px 0 0;animation:.65s .36s both title-in;display:flex}#title #begin{letter-spacing:1px;width:min(360px,88vw);min-height:56px;box-shadow:5px 6px 0 var(--ink);background:var(--gold);color:var(--ink);-webkit-text-stroke:0;border-radius:14px;padding:9px 20px;font-size:26px;position:relative;overflow:hidden}#title #begin:after{content:"";pointer-events:none;background:#ffffff80;width:22%;animation:.8s 1.2s both title-shine;position:absolute;inset:-60% auto -60% -50%;transform:rotate(20deg)}#title #demoBtn{background:var(--cream);border:2px solid var(--ink);min-height:40px;padding:8px 16px;font-size:13px}#title #demoBtn.attention{animation:2.8s ease-in-out demo-cta-pulse}#title .title-chapter{color:var(--cyan);text-align:center;margin:2px 0;font-size:12px;font-weight:800}.courier-picker{width:min(380px,90vw);color:var(--cream);background:#1d153059;border:1px solid #fff3dc59;border-radius:10px;margin-top:4px}.courier-picker summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:10px 13px;font-size:13px;list-style:none;display:flex}.courier-picker summary::-webkit-details-marker{display:none}.courier-picker summary span:last-child{color:var(--cyan);font-size:11px}.courier-picker[open] summary{border-bottom:1px solid #fff3dc33}#title #cards{grid-template-columns:1fr 1fr;gap:8px;padding:12px;display:grid}#title #cards .card{width:auto;color:var(--ink);min-height:112px;padding:8px}#title #cards .card b{font-size:13px}#title #cards .card small{font-size:10px}#title #cards .card .ava{border-width:3px;width:30px;height:30px}#title #cards .card .ava i{width:16px;height:16px}#title #newGame{min-height:40px;margin:0 12px 12px}#title .title-map{color:var(--cream);box-shadow:none;text-underline-offset:3px;background:0 0;border:0;min-height:30px;padding:3px 10px;font-size:11px;text-decoration:underline}#title .title-promise{color:var(--cream);text-align:center;margin:0;font-size:12px;font-weight:800}#title .hint{color:#cdd7d8;text-align:center;background:0 0;margin:0;font-size:10px}#title .credits{color:var(--cream);letter-spacing:2px;opacity:.85;font-size:10px;bottom:20px;right:3vw}.arrival-beat{z-index:6;pointer-events:none;text-align:center;width:90vw;animation:1.9s both arrival-beat;position:fixed;top:23%;left:50%;transform:translate(-50%)}.entering-town #hud,.entering-town #labels{visibility:hidden}.arrival-beat span{background:var(--ink);color:var(--cyan);letter-spacing:2px;border-radius:6px;padding:6px 14px;font-size:11px;font-weight:900;display:inline-block}.arrival-beat b{font:clamp(26px,5vw,58px)/1.1 var(--marker);color:var(--gold);text-shadow:3px 4px 0 var(--ink),5px 6px 0 var(--pink);margin-top:9px;display:block}@keyframes title-pop{0%{opacity:0;transform:scale(.85)rotate(-3deg)}65%{opacity:1;transform:scale(1.025)rotate(.6deg)}to{opacity:1;transform:none}}@keyframes title-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes title-shine{0%{left:-50%}to{left:130%}}@keyframes demo-cta-pulse{0%,to{box-shadow:3px 3px 0 var(--ink);transform:scale(1)}18%{box-shadow:0 0 0 5px #5fe0e673,5px 6px 0 var(--ink);transform:scale(1.05)}38%{box-shadow:3px 3px 0 var(--ink);transform:scale(1)}}@keyframes sound-cta-pulse{0%,to{box-shadow:3px 3px 0 var(--ink);transform:scale(1)}22%{box-shadow:0 0 0 5px #ffd23f8c,3px 3px 0 var(--ink);transform:scale(1.08)}44%{box-shadow:3px 3px 0 var(--ink);transform:scale(1)}}@keyframes arrival-beat{0%{opacity:0;scale:.9}15%,68%{opacity:1;scale:1}to{opacity:0;scale:1.025}}@media (max-width:760px){#title{background:linear-gradient(#0d1e27a6,#0d1e27bf 68%,#0d1e27d4)}#title .tcol{gap:7px;margin:auto;padding:14px 0 20px}#title .title-hook{font-size:32px}#title .tag{font-size:14px}#title .credits{display:none}#title .title-place{letter-spacing:2px;font-size:9px}}@media (max-height:700px){#title .tcol{gap:5px;padding-top:10px;padding-bottom:14px}#title .title-hook{font-size:28px}#title .tag{font-size:13px}#title #begin{min-height:48px;font-size:23px}.title-actions{gap:8px;margin-top:4px}#title .title-promise{font-size:11px}}@media (prefers-reduced-motion:reduce){#titleCanvas,#title .title-hook,#title .tag,.title-actions,#title #begin:after,.arrival-beat,#title #demoBtn.attention,#demoSound.attention{animation:none}#title #begin:after{display:none}}.jev-call{z-index:30;color:#fff;border:2px solid var(--gold);pointer-events:none;background:#1d1530e0;border-radius:12px;gap:2px;max-width:min(340px,100vw - 24px);padding:8px 12px;font-size:13px;line-height:1.3;display:grid;position:fixed;bottom:178px;left:12px;box-shadow:3px 3px #00000040}.jev-call b{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;font-size:11px}.jev-call small{opacity:.8}.jev-call[data-type=local]{border-color:#9aa5ab}.jev-call[data-type=local] b{color:#cfd6da}body.session-paused .jev-call{display:none}@media (max-width:700px){.jev-call{font-size:12px;bottom:200px}}.start-picker{text-align:left;width:min(420px,100%);margin:6px auto 0;font-size:13px}.start-picker summary{cursor:pointer;text-align:center;border:2px solid var(--ink);background:#fff;border-radius:10px;padding:6px 10px;font-weight:700;list-style:none}.start-picker summary::-webkit-details-marker{display:none}.start-panel{z-index:60;width:min(560px,100vw - 24px);max-height:calc(100vh - 32px);color:var(--ink);border:3px solid var(--ink);box-shadow:6px 6px 0 var(--ink);background:#fffaf0;border-radius:14px;gap:8px;padding:16px;display:grid;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.start-panel>b{font-size:16px}.start-panel p{opacity:.85;margin:0;font-size:13px}.start-close{border:2px solid var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:8px;justify-self:end;margin-bottom:-28px;padding:4px 10px;font-weight:700}.start-options{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.start-option{text-align:left;border:2px solid var(--ink);cursor:pointer;font:inherit;background:#fffaf0;border-radius:10px;gap:2px;padding:7px 9px;display:grid}.start-option span{opacity:.8;font-size:11px}.start-option[aria-current=true]{background:var(--gold)}body.urban{--marker:Arial, Helvetica, sans-serif;--body:Arial, Helvetica, sans-serif;--ink:#182124;--cream:#f0efe7;--gold:#b8d5ad;--pink:#80b6a0;--cyan:#bbd4d5}.urban #title{background:linear-gradient(90deg,#101a20eb,#101a2099 48%,#101a2008)}.urban #title .tcol{align-items:flex-start;gap:14px;width:440px;margin:auto auto auto 8vw}.urban #titleCanvas{filter:drop-shadow(0 4px 12px #0008);animation:none;width:300px!important;height:auto!important}.urban #title .title-place{letter-spacing:4px;color:#d1d9d5;font-size:10px}.urban #title .title-hook{text-align:left;text-shadow:none;margin:0;font-size:36px;font-weight:800}.urban #title .title-hook em{color:#b8d5ad}.urban #title .tag{text-align:left;color:#d1d9d5;max-width:340px;padding:0;font-size:15px}.urban .title-actions{align-items:flex-start;margin:8px 0}.urban #title #begin{color:#152321;letter-spacing:2px;width:300px;min-height:52px;box-shadow:none;background:#f0efe7;border:0;border-radius:2px;font-size:16px;font-weight:900}.urban #title #begin:after{display:none}.urban #title #demoBtn{color:#edf0e7;box-shadow:none;background:#15232199;border:1px solid #ffffff45;border-radius:2px}.urban #title .title-chapter,.urban #title .title-promise,.urban #title .hint{text-align:left;font-size:11px;font-weight:400}.urban .courier-picker{background:#101a2070;border-radius:2px;width:300px}.urban .start-picker{width:300px;margin:0}.urban .start-picker summary{color:#f0efe7;background:#101a2070;border:1px solid #ffffff45;border-radius:2px}.urban .btn{box-shadow:none;border-width:1px;border-radius:3px;min-height:40px}.urban .top-right .btn{color:#eee;border-color:#ffffff25;font-size:12px;background:#182124b8!important}.urban .top-left{gap:5px}.urban .score,.urban .rank,.urban .chip,.urban .save-status{color:#eee;box-shadow:none;background:#182124b8;border:0;border-radius:2px}.urban .score{padding:5px 12px}.urban .score .k,.urban .rank b{color:#d9e0d5;text-transform:uppercase;letter-spacing:2px;font-size:11px}.urban .score b{font-size:22px}.urban .rank{min-width:180px;padding:6px 10px}.urban .rank .rbar{background:#ffffff30;border:0;height:3px}.urban .chip{padding:5px 8px;font-size:11px}.urban .chip.time{background:#182124b8}.urban .lbl{color:#f0efe7;box-shadow:none;background:#182124cc;border:1px solid #ffffff30;border-radius:2px;padding:5px 10px;font-size:12px}.urban .lbl.bubble{color:#182124;background:#f0efe7;border:0;border-radius:5px;font-size:13px}.urban .landmark{color:#eee;box-shadow:none;background:#182124cc;border:0;border-radius:2px;font-size:16px}.urban .prompt{color:#f0efe7;box-shadow:none;background:#182124d9;border:1px solid #ffffff30;border-radius:3px;font-size:14px;bottom:64px}.urban .prompt.disabled{color:#aeb8b6}.urban .prompt kbd{color:#182124;background:#f0efe7;border-radius:2px}.urban .toast{color:#f0efe7;background:#182124dc;border-radius:3px;padding:10px 16px;font-size:13px;bottom:115px}.urban .help{color:#edf0e7;width:max-content;max-width:58vw;box-shadow:none;background:#182124a8;border:0;border-radius:2px;padding:6px 10px;font:10px Arial,sans-serif;bottom:14px;left:50%;transform:translate(-50%)}.urban .arrival-beat b{color:#f0efe7;text-shadow:0 3px 16px #000a;text-transform:uppercase;letter-spacing:3px;font-weight:900}.urban .banner b,.urban .caption b{text-shadow:0 3px 14px #0009;-webkit-text-stroke:0;font-weight:900}.urban .chapter-card{color:#edf0e7;box-shadow:none;background:#182124c9;border:1px solid #ffffff25;border-radius:3px;width:300px;padding:12px}.urban .chapter-eyebrow{color:#b8d5ad;letter-spacing:2px;font-size:9px}.urban .chapter-row>b{font-size:15px;font-weight:600}.urban .chapter-guide{color:#182124;background:#e5eadf;border:0;border-radius:2px;min-height:36px;font-size:11px}.urban .chapter-desc{color:#ccd6cf;font-size:11px}.urban .chapter-journal{color:#b8d5ad;font-size:10px;font-weight:400}.urban .chapter-card progress{height:3px}.urban:not(.mobile) #touch,.pad-help,.controller-connected .keyboard-help{display:none}.controller-connected .pad-help{text-align:center;width:max-content;max-width:calc(100vw - 48px);display:block}.driving .chapter-card,.driving .chapter-note{display:none}.street-hud{color:#f0efe7;text-shadow:0 1px 3px #000;position:absolute;bottom:24px;left:24px}.street-hud canvas{opacity:.88;border:1px solid #ffffff45;border-bottom:3px solid #b8d5ad;width:174px;height:174px;display:block;box-shadow:0 5px 24px #0004}.street-location{gap:3px;padding:8px 0;display:grid}.street-location b{font-size:13px;font-weight:700}.street-location span{color:#d0d9d3;font-size:10px}.urban .drive-button{color:#f0efe7;background:#182124cc;border:1px solid #ffffff45;min-height:34px;padding:5px 12px;font-size:11px}.urban.mobile .drive-button{min-height:44px}.urban.mobile .chapter-note{max-width:min(440px,100vw - 244px);left:auto;right:14px;transform:none}.street-actions{gap:5px;display:flex}.drive-destination{max-width:205px;margin-bottom:6px;font-size:11px;line-height:1.4}.speedometer{text-align:right;position:fixed;bottom:40px;right:32px}.speedometer small{text-transform:uppercase;letter-spacing:3px;color:#d1d9d5;font-size:12px}.speedometer div{justify-content:flex-end;align-items:baseline;gap:8px;display:flex}.speedometer b{font-variant-numeric:tabular-nums;font-size:68px;font-weight:300;line-height:1.2}.speedometer span{letter-spacing:2px;font-size:11px}.speedometer em{color:#d1d9d5;font-size:10px;font-style:normal;line-height:1.8;display:block}.driving .help{display:none}@media (max-width:760px){.urban #title{background:linear-gradient(90deg,#101a20e8,#101a2088)}.urban #title .tcol{gap:10px;width:min(380px,88vw);margin:auto}.urban #titleCanvas{width:240px!important}.urban #title .title-hook{font-size:28px}.urban .help{display:none}.street-hud{bottom:170px;left:14px}.street-hud canvas{width:106px;height:106px}.street-location{gap:2px;padding:5px 0}.street-location b{font-size:10px}.street-location span{font-size:9px}.speedometer{bottom:165px;right:18px}.speedometer b{font-size:44px}.speedometer small{letter-spacing:1px;font-size:9px}.speedometer em{display:none}.urban .prompt{text-align:center;max-width:75vw;bottom:130px}.urban .toast{text-align:center;max-width:70vw;bottom:190px}}@media (max-height:640px){.urban #title .tcol{gap:6px}.urban #titleCanvas{width:200px!important}.urban #title .title-hook{font-size:26px}.urban #title .title-promise{display:none}}@media (max-height:500px){.urban .chapter-card{width:240px;padding:8px;top:62px;left:auto;right:14px}.urban .chapter-desc,.urban .chapter-journal,.urban .chapter-card progress,.urban .chapter-eyebrow{display:none}.urban .chapter-row>b{font-size:12px}.urban .chapter-guide{min-height:30px}.street-hud{bottom:14px;left:14px}.street-hud canvas{width:90px;height:90px}.street-location,.speedometer em{display:none}.speedometer{bottom:100px;right:18px}.speedometer b{font-size:40px}.urban.mobile .street-hud{bottom:128px}}@media (max-height:320px){.drive-destination,.street-hud canvas{display:none}.urban.mobile .street-hud{bottom:24px;left:142px}.urban .toast,.urban .chapter-note{font-size:11px;bottom:90px}.urban.mobile .chapter-note{max-width:clamp(100px,100vw - 398px,300px);padding:6px 10px;bottom:90px;left:180px;right:auto}.urban .prompt{font-size:11px;bottom:68px}}#jevGuide{left:50%;bottom:max(22px,env(safe-area-inset-bottom));z-index:35;overscroll-behavior:contain;color:#182124;pointer-events:auto;overflow-wrap:anywhere;background:#fff8e9f5;border:2px solid #326557;border-radius:14px;width:min(560px,100vw - 24px);max-height:calc(100dvh - 88px);padding:12px 16px;position:absolute;overflow:auto;transform:translate(-50%);box-shadow:0 5px 24px #15232130}#jevGuide .jev-guide-header{justify-content:space-between;align-items:center;gap:12px;display:flex}#jevGuide .jev-guide-header>span{color:#326557;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:900}#jevGuideTitle{font:800 19px/1.25 var(--body);margin:2px 0 7px}#jevGuideGoal{margin:0;font-size:14px;font-weight:800;line-height:1.4}#jevGuideLesson{color:#48685d;margin:7px 0 0;font-size:12px;line-height:1.45}#jevGuideProgress{color:#326557;margin-top:7px;font-size:11px;font-weight:800;display:block}#jevGuide .jev-guide-actions{flex-wrap:wrap;gap:8px;margin-top:11px;display:flex}#jevGuide .btn{min-height:44px;box-shadow:none;color:#182124;font:800 13px/1.3 var(--body);white-space:normal;background:#e5eadf;border:1px solid #326557;border-radius:8px;padding:8px 12px}#jevGuide .jev-guide-actions .btn{flex:auto}#jevGuide #jevTryBtn{background:#b2e1cd}#jevGuide #jevTourBtn{background:#fff8e9}#jevGuide .btn:disabled{opacity:.55;cursor:default}body.watching-jev:not(.jev-details) #touch,body.watching-jev:not(.jev-details) #prompt,body.watching-jev:not(.jev-details) #toast,body.watching-jev:not(.jev-details) #banner,body.watching-jev:not(.jev-details) .chapter-card,body.watching-jev:not(.jev-details) .chapter-note,body.watching-jev:not(.jev-details) .chapter-keepsake,body.watching-jev:not(.jev-details) .street-actions,body.watching-jev:not(.jev-details) .street-location,body.watching-jev:not(.jev-details) .drive-destination,body.watching-jev:not(.jev-details) .street-hud canvas,body.watching-jev:not(.jev-details) .driving-actions,body.watching-jev:not(.jev-details) .driving-location,body.watching-jev:not(.jev-details) .minimap,body.watching-jev:not(.jev-details) #minimap,body.watching-jev:not(.jev-details) .speedometer,body.watching-jev:not(.jev-details) .jev-call,body.watching-jev:not(.jev-details) .help,body.watching-jev:not(.jev-details) #rank,body.watching-jev:not(.jev-details) .chips,body.watching-jev:not(.jev-details) #saveStatus,body.watching-jev:not(.jev-details) .inspired-care,body.watching-jev:not(.jev-details) .traffic-note,body.watching-jev:not(.jev-details) .top-right>:not(#pauseBtn):not(#jevSpeed):not(#mute){display:none!important}body.watching-jev.care-working .top-left{display:flex!important}body.care-working #jevGuide{top:max(64px,calc(env(safe-area-inset-top) + 56px));grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;width:min(560px,100vw - 24px);max-height:100px;padding:8px 12px;display:grid;bottom:auto}body.care-working #jevGuide .jev-guide-header,body.care-working #jevGuideLesson,body.care-working #jevGuideProgress,body.care-working #jevTourBtn{display:none}body.care-working #jevGuideTitle{grid-column:1;margin:0;font-size:14px}body.care-working #jevGuideGoal{grid-column:1;font-size:12px}body.care-working #jevGuide .jev-guide-actions{grid-area:1/2/span 2;align-self:center;max-width:160px;margin:0}body.reading-active #jevGuide,body.session-paused #jevGuide{display:none!important}body:has(.chapter-dialog[open]) #jevGuide{display:none!important}body:has(.checklist.open) #jevGuide{display:none!important}body:has(#journey[open]) #jevGuide{display:none!important}body:has(#dialogue:not([hidden])) #jevGuide{display:none!important}@media (max-width:700px){#jevGuide{padding:11px 13px}#jevGuideTitle{font-size:17px}#jevGuideGoal{font-size:13px}body:not(.watching-jev) #jevGuide{bottom:max(180px,calc(env(safe-area-inset-bottom) + 170px));max-height:calc(100dvh - 252px)}body.care-working #jevGuide{max-height:100px;bottom:auto}}@media (max-height:360px){#jevGuide{max-height:calc(100dvh - 74px);padding:7px 12px;bottom:10px}#jevGuideTitle{margin:0 0 4px;font-size:15px}#jevGuideGoal{font-size:12px}#jevGuideLesson{margin-top:4px;font-size:11px}#jevGuide .jev-guide-actions{gap:6px;margin-top:6px}body:not(.watching-jev) #jevGuide{width:min(370px,100vw - 290px);max-height:calc(100dvh - 74px);bottom:10px;left:50%}body.care-working #jevGuide{width:min(560px,100vw - 24px);max-height:90px;bottom:auto;left:50%}}
