@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-stretch:normal;font-display:swap;src:url(../fonts/noto-thai-0-B8nGVs7j.ttf) format("truetype")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:600;font-stretch:normal;font-display:swap;src:url(../fonts/noto-thai-1-C6gV1leG.ttf) format("truetype")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-stretch:normal;font-display:swap;src:url(../fonts/noto-thai-2-DtIYBTuD.ttf) format("truetype")}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/manrope-0-BEIO-tX3.ttf) format("truetype")}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/manrope-1-C3q1kWH5.ttf) format("truetype")}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/manrope-2-DBphNC1-.ttf) format("truetype")}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/manrope-3-DbNN7f-K.ttf) format("truetype")}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/manrope-4-CNT0ON31.ttf) format("truetype")}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/barlow-0-CCxn3Epz.ttf) format("truetype")}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/barlow-1-RZZ47rCX.ttf) format("truetype")}@font-face{font-family:Barlow Condensed;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/barlow-2-CQj3XIHL.ttf) format("truetype")}:root{font-family:Manrope,Noto Sans Thai,sans-serif;color:#f4f3e9;background:#172624;font-synthesis:none;font-size:14px;--gold: #edc17b;--panel: rgba(19, 33, 32, .92)}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,select{font:inherit}button{cursor:pointer;color:inherit}button:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button:disabled{opacity:.6}#game{width:100vw;height:100vh;display:block;touch-action:none}#vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(7,24,24,.26),transparent 20%,transparent 65%,rgba(8,20,21,.45))}header{position:absolute;top:28px;left:34px;right:34px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.brand{display:flex;gap:12px;align-items:center;text-shadow:0 2px 9px #182c2760;font-weight:800;font-size:19px;line-height:1.1;letter-spacing:3px}.brand div span{display:block;font-size:10px;letter-spacing:6.6px;margin-top:6px}.brand-icon{background:var(--gold);color:#233c34;border-radius:3px;font-family:Noto Sans Thai;font-size:27px;letter-spacing:0;width:40px;height:45px;display:grid;place-items:center}.top-right{display:flex;gap:9px;align-items:center;pointer-events:auto}.top-right button{border:1px solid #ffffff36;background:#1c302b60;backdrop-filter:blur(16px);border-radius:7px;padding:11px 13px;font-size:11px;letter-spacing:1px;font-weight:700}.top-right button:hover{background:#304d3bd9}.weather{margin-right:15px;display:grid;grid-template-columns:20px auto;gap:0 5px;font-size:18px;color:var(--gold)}.weather b{font-size:17px;color:#fff}.weather>span{grid-column:2;font-size:8px;letter-spacing:2px;color:#ecf0d6;margin-top:3px}kbd{font-family:inherit;border:1px solid #fff4;border-radius:4px;padding:3px 6px;font-size:10px;font-weight:700;white-space:nowrap;display:inline-block;line-height:1.4;background:#ffffff0b}.top-right kbd{margin-left:6px}#loading{position:absolute;inset:0;background:#182d29;display:flex;flex-direction:column;justify-content:center;padding:10vw;z-index:20}#loading h1,#welcome h1{font-size:clamp(48px,5.6vw,88px);letter-spacing:-5px;line-height:1.06;font-weight:600;margin:22px 0 18px}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--gold);font-weight:700}.load-bar{height:2px;background:#ffffff16;width:250px;margin:25px 0}.load-bar span{width:70%;display:block;height:100%;background:var(--gold);animation:load 1.5s ease-in-out infinite}#loading p{color:#b4c3b8;font-size:12px}@keyframes load{0%{width:5%;margin-left:0}50%{width:65%;margin-left:15%}to{width:5%;margin-left:95%}}#welcome{position:absolute;left:6vw;bottom:10vh;padding:30px 35px 30px 0;max-width:570px;text-shadow:0 2px 20px #0a1c22aa}#welcome:before{content:"";position:absolute;z-index:-1;inset:-100px -80px -100px -100px;background:radial-gradient(ellipse,#10231fd9 5%,#10231f88 35%,transparent 72%);pointer-events:none}#welcome .tag{font-size:10px;letter-spacing:2px;display:flex;align-items:center;gap:10px;color:#fff5dc;font-weight:700}.tag span{width:6px;height:6px;background:var(--gold);border-radius:50%}#welcome h1{margin-top:24px;font-size:clamp(56px,5.5vw,82px)}#welcome p{font-size:15px;color:#faf4dfd9}#welcome p span{margin:0 7px;color:var(--gold)}#play{display:flex;justify-content:space-between;align-items:center;background:var(--gold);color:#21382e;border:0;border-radius:6px;padding:19px 23px;width:290px;font-size:12px;letter-spacing:1px;font-weight:800;margin-top:31px;box-shadow:0 12px 40px #0002}#play span{font-size:23px;line-height:10px}#play:hover{background:#ffda9a;transform:translateY(-2px)}.welcome-hint{font-size:11px;margin-top:17px;color:#eff5e9d9}#welcome small{display:block;font-size:9px;line-height:1.9;color:#dae6d694;margin-top:23px}#hud{pointer-events:none}.navigation{position:absolute;bottom:28px;left:32px;width:248px}.mini-wrap{height:168px;background:#253d3b;border:1px solid #ebead636;border-radius:9px;overflow:hidden;position:relative;box-shadow:0 10px 30px #10242155}#minimap{width:100%;height:100%;opacity:.94}.north{position:absolute;top:10px;left:12px;font-size:10px;letter-spacing:1px;color:#f6eedb}#mini-map-toggle{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:transparent;pointer-events:auto}.mini-expand{position:absolute;right:8px;bottom:8px;background:#233832cc;border:1px solid #fff3;border-radius:4px;font-size:19px;padding:1px 5px}.place{display:flex;align-items:center;gap:10px;margin-top:13px;text-shadow:0 2px 8px #000}.place b{font-size:12px;font-weight:700}.place small{display:block;font-size:9px;letter-spacing:1px;color:#d5dfd2;margin-top:3px}.location-dot{height:7px;width:7px;background:var(--gold);border-radius:50%;flex-shrink:0}#discovered{font-size:10px;margin-left:auto;color:var(--gold);white-space:nowrap}#controls{position:absolute;left:24px;bottom:22px;width:min(760px,calc(100vw - 330px));display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:10px 12px;border:1px solid #e8c47a66;border-radius:12px;background:#102a25ed;box-shadow:0 10px 34px #07130f88;backdrop-filter:blur(12px);color:#fff8e8;font-size:12px;line-height:1.2;pointer-events:none}#controls .control-context{flex:0 0 100%;color:#f2d08e;font-size:10px;line-height:1;letter-spacing:1.8px}#controls .control-chip{display:flex;align-items:center;gap:7px;min-height:31px;padding:4px 8px 4px 5px;border:1px solid #d7e7d42e;border-radius:7px;background:#1a3932e8;color:#f8f8ed}#controls .control-primary{border-color:#edc77bc7;background:#294a3fe8;box-shadow:inset 0 0 0 1px #edc77b2b}#controls kbd{margin:0;padding:5px 8px;border:1px solid #fff0bd;border-radius:5px;background:#f0c978;color:#122c24;box-shadow:0 2px #8f6b2b;font-size:12px;font-weight:900;letter-spacing:.2px}#controls .control-primary kbd{background:#ffe19d;border-color:#fff4cc}#controls b{font-size:11px;font-weight:800;letter-spacing:.15px;white-space:nowrap}#foot-status{position:absolute;right:34px;bottom:30px;text-align:right;font-size:11px;letter-spacing:2px}.walk-symbol{color:var(--gold);font-size:28px;margin-right:9px;vertical-align:middle}#foot-status small{display:block;font-size:8px;letter-spacing:1.2px;color:#dae6d694;margin-top:5px}#speedometer{position:absolute;right:34px;bottom:28px;width:195px;text-align:right}.drive-label{font-size:9px;letter-spacing:2px;color:#dee6d9}.drive-label span{background:#e9c586;color:#21322b;border-radius:3px;padding:3px 6px;margin-left:9px;font-size:11px;font-weight:800}#speedometer b{font-family:Barlow Condensed,sans-serif;font-size:78px;line-height:1.1;font-weight:500;letter-spacing:-1px}#speedometer>div>span:not(#gear){font-size:9px;margin-left:10px;letter-spacing:2px;color:#dce5d8}.speed-track{height:3px;background:#fff3;margin:7px 0 10px;overflow:hidden;border-radius:5px}.speed-track i{display:block;width:0;height:100%;background:var(--gold)}#speedometer small{font-size:9px;color:#dce5d8}#speedometer small span{margin:0 8px}#interaction-prompts{position:absolute;left:50%;bottom:calc(106px + var(--safe-bottom, 0px));transform:translate(-50%);width:min(520px,calc(100vw - 40px));display:flex;flex-direction:column;align-items:center;gap:8px;z-index:15;pointer-events:none}#interaction{display:flex;max-width:100%;min-height:44px;pointer-events:auto;align-items:center;gap:12px;border:1px solid #ebd4a74d;background:#16332ccc;backdrop-filter:blur(15px);padding:12px 19px 12px 12px;border-radius:8px;box-shadow:0 8px 30px #0002;font-size:13px}#interaction kbd{font-size:15px;background:var(--gold);color:#19342d;border:none;padding:5px 10px}#location-toast{position:absolute;top:110px;left:50%;transform:translate(-50%,-8px);text-align:center;pointer-events:none;opacity:0;transition:.8s;text-shadow:0 2px 12px #17302ad9}#location-toast.visible{opacity:1;transform:translate(-50%)}#location-toast>span{font-size:8px;letter-spacing:4px;color:var(--gold)}#location-toast strong{display:block;font-weight:500;font-size:30px;margin:6px 0}#location-toast em{font-style:normal;font-size:12px;color:#edf3e2a9}#notification{position:absolute;top:100px;left:50%;transform:translate(-50%);font-size:12px;padding:10px 18px;border-radius:6px;background:#233b2ee6;opacity:0;transition:.2s;pointer-events:none}#notification.visible{opacity:1}dialog{border:1px solid #889c8460;border-radius:14px;background:var(--panel);color:#f5f1e4;box-shadow:0 20px 100px #001e19aa;backdrop-filter:blur(22px);width:min(1100px,92vw);padding:30px;max-height:90vh}dialog::backdrop{background:#0b1b1b90;backdrop-filter:blur(6px)}.panel-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.panel-top h2{font-size:36px;letter-spacing:-1.4px;font-weight:500;margin:5px 0}.close{background:#ffffff08;border:1px solid #ffffff2b;border-radius:50%;width:34px;height:34px}.map-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:28px}#bigmap{width:100%;height:100%;display:block;border-radius:8px;border:1px solid #bcccac24;touch-action:none;cursor:grab}#bigmap[data-dragging]{cursor:grabbing}.map-explorer{min-width:0}.map-viewport{position:relative;height:clamp(260px,54dvh,600px)}.map-navigation{position:absolute;right:10px;top:10px;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:4px;max-width:calc(100% - 20px)}.map-navigation button,.map-navigation output{border:1px solid #ffffff35;border-radius:6px;background:#193a31ed;color:#f5e2bd;padding:7px 10px;font-size:12px}.map-navigation button{min-width:40px;min-height:40px}.map-navigation output{pointer-events:none;font-size:10px}.map-hint,#map-selection{font-size:11px;line-height:1.5;margin:8px 0 0;color:#cddbc4}#map-selection{color:#f1cf98}#map-panel .map-return{width:auto;min-height:44px;height:auto;padding:8px 14px;border-radius:9px;font-size:12px;flex-shrink:0}.destinations{overflow:auto;max-height:560px}.destinations>p{font-size:12px;margin-top:0;color:#bdc9bb}.province-filter{display:grid;gap:7px;color:#e7c083;font-size:12px;margin-bottom:10px}.province-filter select{width:100%;min-height:44px;border:1px solid #e7c08360;border-radius:6px;background:#1b3b31;color:#f1e5ca;padding:8px;font:inherit}#landmark-list button[hidden]{display:none}#landmark-list{display:flex;flex-direction:column;gap:3px}#landmark-list button{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid transparent;border-radius:5px;background:transparent;padding:10px}.pin-number{font-family:Barlow Condensed;color:#e7c083;font-size:18px;border:1px solid #e7c08330;display:grid;place-items:center;width:29px;height:29px;border-radius:50%;flex-shrink:0}#landmark-list button:hover,#landmark-list button.active{background:#e7c08314;border-color:#e7c08340}#landmark-list button b{font-size:12px;font-weight:600;display:block}#landmark-list button small{font-size:9px;color:#afc1b2}#landmark-list .visited{margin-left:auto;color:#edc17b}.destinations>small{font-size:9px;line-height:1.8;color:#acbbae;display:block;margin-top:18px}#clear-waypoint{border:1px solid #fff3;background:none;border-radius:4px;padding:8px 12px;font-size:11px;margin-top:15px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 40px}.help-grid h3{font-size:16px;font-weight:600;color:var(--gold)}.help-grid p{color:#c5d4c7;font-size:13px;line-height:1.7}.help-grid p kbd{margin-right:10px}.help-grid label{font-size:12px;margin-right:10px}.help-grid select{font-size:12px;background:#203d33;color:#eee8d4;padding:8px;border:1px solid #ffffff3b;border-radius:4px}.credits{border-top:1px solid #fff2;padding-top:20px;margin-top:24px;font-size:11px;line-height:1.8;color:#9fb3a6}.credits a{color:#e7c083}#performance{position:absolute;right:35px;top:96px;font-size:11px;color:#fff;background:#102a26bb;padding:8px}#touch-controls{display:none}[hidden]{display:none!important}@media(max-width:1100px){#controls{bottom:22px;gap:10px;left:52%;font-size:9px}#controls span:last-child{display:none}.navigation{width:200px;left:20px;bottom:25px}.mini-wrap{height:140px}#foot-status{right:22px}#speedometer{right:22px;width:160px}#speedometer b{font-size:64px}header{left:22px;right:22px}.map-layout{grid-template-columns:1fr 1fr}.destinations{max-height:480px}}@media(max-width:760px){header{top:18px;left:18px;right:18px}.brand{font-size:14px;letter-spacing:2px}.brand-icon{width:33px;height:37px;font-size:22px}.brand div span{font-size:8px;letter-spacing:4.5px}.top-right .weather{display:none}.top-right button{font-size:9px;padding:9px}.top-right kbd{display:none}#welcome{left:7vw;bottom:9vh}#welcome h1{font-size:59px;letter-spacing:-3px}#welcome p{font-size:12px}#controls{display:none}.navigation{width:160px;bottom:24px}.mini-wrap{height:112px}.place b{font-size:10px}.place small{font-size:8px}#discovered{display:none}#foot-status{font-size:9px}#foot-status small{display:none}.map-layout{display:block}.map-viewport{height:40dvh;min-height:240px}.destinations{max-height:30vh;margin-top:12px}dialog{padding:20px}.panel-top h2{font-size:27px}.help-grid{gap:6px 18px}.help-grid p{font-size:11px}.help-grid select{width:100%;margin-top:10px}#interaction-prompts{bottom:180px}#interaction{font-size:11px}}.map-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:0 26px 18px}.map-tools button{border:1px solid #789a8266;background:#29483e;color:#f2dfb4;border-radius:4px;padding:9px 13px;font:600 11px Manrope,sans-serif;cursor:pointer}.map-tools button[aria-pressed=true]{background:#e8bd79;color:#203b31}.map-tools span{font-size:11px;color:#acc1a7;margin-left:auto}.trip-progress{position:absolute;top:94px;left:32px;padding:10px 14px;background:#203a32cc;border-left:2px solid #ebbd77;color:#f0dfb9;font-size:11px;letter-spacing:.04em;pointer-events:none}.trip-progress small{display:block;color:#bdcdb4;margin-top:4px}.map-credit{position:absolute;bottom:4px;left:7px;z-index:2;font:9px/1.4 system-ui,sans-serif;color:#f4efdb;text-decoration:none;background:#233d32dc;padding:1px 3px;border-radius:2px;pointer-events:none}.map-attribution{font:11px/1.5 system-ui,sans-serif;color:#b7c4af}.map-attribution a{color:#e6c48e}@media(max-width:760px),(max-height:560px){.top-right button,.map-navigation button,.map-tools button,#landmark-list button,#clear-waypoint,#map-panel .map-return{background:#173e38f5;color:#fff4d8;border-color:#e7c486b8;text-shadow:none;box-shadow:0 3px 12px #07181455}.top-right button:hover,.top-right button:focus-visible,.map-navigation button:hover,.map-tools button:hover,#landmark-list button:hover,#landmark-list button.active,#clear-waypoint:hover,#map-panel .map-return:hover{background:#f0cf91;color:#15362f;border-color:#fff1c7}#interaction,#notification,.trip-progress{background:#102d28f5;color:#fff7e6;border-color:#f0cf91b8;text-shadow:0 1px 2px #061a16;box-shadow:0 6px 22px #06171388}#location-toast{padding:8px 14px;border-radius:9px;background:#102d28e8;text-shadow:0 1px 3px #061a16}#location-toast em,.trip-progress small,#landmark-list button small{color:#e4eee0;opacity:1}#landmark-list button{margin-bottom:3px}#clear-waypoint{min-height:42px}}.loading-version{display:block;width:max-content;max-width:100%;margin-top:12px;padding:6px 9px;border:1px solid #edc17b52;border-radius:5px;color:#f2d8a4;background:#1027228a;font-size:10px;font-weight:800;letter-spacing:1.5px}dialog{overflow:auto}.keyboard-remap{border-top:1px solid #ffffff24;margin-top:22px;padding-top:18px}.keyboard-remap-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.keyboard-remap h3{margin:0 0 6px;color:var(--gold);font-size:16px;font-weight:650}.keyboard-remap-head p,.keymap-status{margin:0;color:#c5d4c7;font-size:12px;line-height:1.55}#reset-keymap,.keymap-key,.confirm-actions button{min-height:42px;border:1px solid #e7c08370;border-radius:7px;background:#203d33;color:#f7e7c7;font-weight:800}#reset-keymap{padding:8px 13px;flex:0 0 auto}.keymap-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:7px 12px;margin-top:14px}.keymap-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(92px,auto);align-items:center;gap:9px;min-height:46px;padding:4px 5px 4px 10px;border:1px solid #ffffff17;border-radius:8px;background:#ffffff06}.keymap-action{min-width:0;font-size:11px;line-height:1.3;color:#e5eee1}.keymap-key{padding:7px 10px;background:#173e38;color:#ffe3a9;white-space:nowrap}.keymap-key[data-custom=true]{border-color:#f0cf91;box-shadow:inset 0 0 0 1px #f0cf9138}.keymap-key[data-listening=true]{background:#edc17b;color:#17342b}.keymap-status{min-height:20px;margin-top:9px;color:#edc17b}.confirm-dialog{width:min(470px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0}.confirm-card{padding:clamp(24px,5vw,40px)}.confirm-card h2{margin:8px 0 10px;font-size:clamp(28px,5vw,42px);line-height:1.05;font-weight:550}.confirm-card p{margin:0;color:#d4ded2;line-height:1.6;font-size:13px}.confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.confirm-actions button{padding:11px 12px;font-size:11px}#exit-yes{background:#edc17b;color:#17342b}@media(max-width:760px){html:not(.touch-layout) header{top:10px;left:10px;right:10px}html:not(.touch-layout) .brand div{display:none}html:not(.touch-layout) .top-right{gap:4px}html:not(.touch-layout) .top-right button{min-width:38px;min-height:38px;padding:7px 8px}html:not(.touch-layout) #controls{display:flex;left:10px;right:10px;bottom:8px;width:auto;max-height:104px;overflow:auto;gap:5px;padding:7px 8px}html:not(.touch-layout) #controls .control-chip{min-height:27px;padding:3px 6px 3px 4px}html:not(.touch-layout) #controls kbd{padding:3px 5px;font-size:10px}html:not(.touch-layout) .navigation{top:58px;left:10px;bottom:auto;width:min(150px,38vw)}html:not(.touch-layout) .mini-wrap{height:min(102px,24vh)}html:not(.touch-layout) #foot-status,html:not(.touch-layout) #speedometer{right:10px;bottom:118px}.keymap-grid{grid-template-columns:1fr}}@media(max-width:520px){.keyboard-remap-head{display:block}#reset-keymap{width:100%;margin-top:10px}.confirm-actions{grid-template-columns:1fr}}@media(max-height:360px)and (orientation:landscape){html:not(.touch-layout) .brand div,html:not(.touch-layout) .weather{display:none}html:not(.touch-layout) .navigation{width:120px}html:not(.touch-layout) .mini-wrap{height:68px}html:not(.touch-layout) #controls{max-height:88px}html:not(.touch-layout) #foot-status,html:not(.touch-layout) #speedometer{bottom:98px}}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px)}html,body{width:100%;height:100%;overscroll-behavior:none}#app{position:relative;width:100%;height:100vh;height:100dvh;overflow:hidden}#game{width:100%;height:100%}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}#fullscreen-toggle{font-size:19px;line-height:18px}#interaction{color:inherit;pointer-events:auto}#interaction:hover{border-color:var(--gold);background:#234d40ef}.touch-help{border-top:1px solid #fff2;margin-top:20px;padding-top:8px}.touch-help h3{color:var(--gold);font-weight:600}.touch-help p{color:#c5d4c7;line-height:1.65;font-size:14px}.touch-help .mobile-note{font-size:12px}.input-settings{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:14px}.input-settings select,.input-settings button{min-height:44px;padding:8px 12px;border:1px solid #ffffff3b;border-radius:6px;background:#203d33;color:#eee8d4}#touch-controls{position:absolute;inset:0;z-index:4;pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.touch-layout #touch-controls{display:block}#touch-stick{position:absolute;left:calc(24px + var(--safe-left));bottom:calc(22px + var(--safe-bottom));width:136px;height:136px;border-radius:50%;border:1px solid #e9efdc72;background:radial-gradient(circle,#172f2544 28%,#172f2577 65%,#d5dfc91c 66%);pointer-events:auto;touch-action:none;box-shadow:0 3px 25px #071d2526}.stick-cross{position:absolute;inset:0;display:grid;place-items:center;font-size:48px;font-weight:200;color:#ffffff2b}#stick-knob{position:absolute;left:calc(50% - 27px);top:calc(50% - 27px);width:54px;height:54px;border-radius:50%;background:#dde8d739;border:2px solid #fbf4d9bd;box-shadow:0 2px 10px #101f2266;will-change:transform}#stick-label{position:absolute;bottom:6px;width:100%;text-align:center;color:#f6f4e3;letter-spacing:2px;font-weight:700;font-size:11px;pointer-events:none}#touch-right{position:absolute;right:calc(20px + var(--safe-right));bottom:calc(22px + var(--safe-bottom));display:grid;grid-template-columns:repeat(3,76px);gap:8px;align-items:end}#touch-controls button{pointer-events:auto;touch-action:none;border:1px solid #dae4d675;background:#15392ccc;border-radius:14px;min-height:54px;padding:10px 6px;font-size:12px;font-weight:700;letter-spacing:.5px;text-shadow:0 1px 3px #0006}#touch-controls button:active,#touch-controls button[data-held],#touch-run[aria-pressed=true]{background:#b39961e0;border-color:#ffe6ad}#touch-action{border-color:#edc17bb8!important;color:#ffe2ab}#touch-jump{grid-column:2;white-space:pre-line;line-height:1.15}#touch-action{grid-column:3}#touch-pedals{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:9px}#touch-pedals button{width:110px;min-height:68px}#touch-pedals span{display:block;font-size:10px;letter-spacing:1.6px;margin-top:3px;opacity:.8}#touch-go{background:#eac184de!important;color:#20352b;text-shadow:none!important;border-color:#ffe7b0!important;font-size:20px!important}#touch-go[data-held]{background:#fff0bf!important}#touch-look-hint{position:absolute;left:50%;bottom:calc(20px + var(--safe-bottom));transform:translate(-50%);color:#f0f4dfaa;font-size:10px;letter-spacing:1px;white-space:nowrap;text-shadow:0 1px 8px #061d15}.touch-layout header{top:calc(10px + var(--safe-top));left:calc(18px + var(--safe-left));right:calc(18px + var(--safe-right))}.touch-layout .brand{font-size:14px;gap:9px;letter-spacing:2px}.touch-layout .brand div span{font-size:8px;letter-spacing:4.6px;margin-top:4px}.touch-layout .brand-icon{width:33px;height:39px;font-size:23px}.touch-layout .top-right{gap:7px}.touch-layout .top-right button{min-height:44px;min-width:44px;font-size:12px;padding:8px 10px;background:#142d27a6;backdrop-filter:none}.touch-layout .top-right .weather,.touch-layout .top-right kbd,.touch-layout #controls,.touch-layout #foot-status,.touch-layout #speedometer small{display:none}.touch-layout .navigation{top:calc(66px + var(--safe-top));left:calc(18px + var(--safe-left));bottom:auto;width:154px}.touch-layout .mini-wrap{height:92px;border-radius:7px}.touch-layout .mini-wrap button{min-width:44px;min-height:44px;bottom:0;right:0;border:0;background:transparent}.touch-layout .place{gap:6px;margin-top:6px}.touch-layout .place b{font-size:11px;line-height:1.2;display:block}.touch-layout .place small,.touch-layout #discovered{display:none}.touch-layout #speedometer{top:calc(70px + var(--safe-top));right:calc(22px + var(--safe-right));bottom:auto;width:138px;text-shadow:0 1px 10px #142521}.touch-layout #speedometer b{font-size:54px}.touch-layout .speed-track{margin:3px 0}.touch-layout #interaction-prompts{left:calc(170px + var(--safe-left));right:calc(280px + var(--safe-right));bottom:calc(69px + var(--safe-bottom));width:auto;transform:none}.touch-layout #interaction{padding:10px 14px;text-align:center;font-size:12px;min-height:44px;white-space:normal;background:#173729c9;backdrop-filter:none}.touch-layout #interaction kbd{display:none}.touch-layout #location-toast{top:calc(65px + var(--safe-top));max-width:48%}.touch-layout #location-toast strong{font-size:20px;line-height:1.15;margin:5px 0}.touch-layout #location-toast em{font-size:11px}.touch-layout #notification{top:calc(137px + var(--safe-top));max-width:43%;width:max-content;font-size:12px;text-align:center;padding:8px 12px;z-index:5}.touch-layout .trip-progress{top:calc(61px + var(--safe-top));left:50%;transform:translate(-50%);bottom:auto;max-width:45%;font-size:11px}.touch-layout #performance{top:auto;bottom:calc(4px + var(--safe-bottom));right:24px;font-size:9px}.touch-layout #welcome{left:calc(28px + var(--safe-left));bottom:calc(20px + var(--safe-bottom));padding:0;max-width:560px}.touch-layout #welcome h1{font-size:clamp(34px,7vh,68px);letter-spacing:-2px;margin:12px 0}.touch-layout #welcome p{font-size:14px;margin:10px 0 14px}.touch-layout #welcome .welcome-hint{margin-top:12px}.touch-layout #welcome small{margin-top:10px}.touch-layout #play{min-height:48px;padding:14px 20px}.touch-layout dialog{width:calc(100% - 24px - var(--safe-left) - var(--safe-right));max-height:calc(100dvh - 20px - var(--safe-top) - var(--safe-bottom));padding:18px;overscroll-behavior:contain;backdrop-filter:none;background:#152c27f7}.touch-layout dialog::backdrop{backdrop-filter:none}.touch-layout .panel-top{margin-bottom:10px}.touch-layout .panel-top h2{font-size:25px;margin:0}.touch-layout .panel-top .eyebrow{font-size:10px}.touch-layout .close{width:44px;height:44px}.touch-layout .map-layout{display:grid;grid-template-columns:minmax(180px,.85fr) 1.15fr;gap:18px}.touch-layout #bigmap{height:100%}.touch-layout .map-viewport{height:max(230px,53dvh)}.touch-layout .map-navigation button{min-height:44px}.touch-layout .map-navigation{left:6px;right:6px;top:6px;max-width:none}.touch-layout .destinations{max-height:min(53dvh,500px);margin:0}.touch-layout #landmark-list button{min-height:52px;padding:6px 8px}.touch-layout #landmark-list button b{font-size:13px}.touch-layout #landmark-list button small{font-size:11px}.touch-layout .map-tools{padding:0;gap:6px;margin-bottom:10px}.touch-layout .map-tools button{min-height:44px;font-size:12px}.touch-layout #tour-length{font-size:11px}.touch-layout .help-grid{gap:8px 24px}.touch-layout .help-grid p{font-size:14px}#rotate-screen{position:absolute;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:max(24px,var(--safe-top)) 26px max(24px,var(--safe-bottom));background:radial-gradient(ellipse at 50% 25%,#345744,#122d29 70%);text-align:center}#rotate-screen .rotate-symbol{font-size:72px;color:var(--gold);line-height:1;margin-bottom:22px}#rotate-screen h2{font-size:30px;letter-spacing:-1px;margin:18px 0 6px}#rotate-screen p{font-size:15px;line-height:1.7;color:#d7e2d5}#rotate-fullscreen{min-height:48px;padding:12px 20px;border:1px solid #edc17b9c;border-radius:9px;background:#edc17b;color:#203a2c;font-size:14px;font-weight:700;margin-top:14px}#rotate-screen small{color:#b6c7b8;font-size:12px;line-height:1.6;max-width:260px;margin-top:20px}@media(max-height:420px)and (orientation:landscape){.touch-layout #welcome small,.touch-layout #welcome .welcome-hint{display:none}.touch-layout #welcome{bottom:calc(18px + var(--safe-bottom))}.touch-layout .navigation{width:130px}.touch-layout .mini-wrap{height:72px}.touch-layout #touch-stick{width:116px;height:116px;bottom:calc(16px + var(--safe-bottom))}.touch-layout #touch-right{bottom:calc(16px + var(--safe-bottom))}.touch-layout #touch-look-hint{display:none}.touch-layout .map-tools{flex-wrap:wrap}.touch-layout #tour-length{display:none}.touch-layout #notification{top:calc(127px + var(--safe-top))}}@media(max-width:680px)and (orientation:landscape){.touch-layout .brand div{display:none}.touch-layout #touch-right{grid-template-columns:repeat(3,64px);gap:6px}.touch-layout #touch-pedals button{width:92px}.touch-layout #location-toast{max-width:40%}.touch-layout #location-toast strong{font-size:16px}.touch-layout #interaction-prompts{left:calc(150px + var(--safe-left));right:calc(236px + var(--safe-right))}}.touch-layout .help-grid select,.touch-layout .input-settings select{font-size:16px}@media(max-width:760px),(max-height:560px){.touch-layout #interaction{background:#102d28f5;color:#fff7e6!important;border-color:#f0cf91b8;box-shadow:0 6px 22px #06171388;text-shadow:0 1px 2px #061a16}.touch-layout #interaction:hover,.touch-layout #interaction:focus-visible{background:#173e38;color:#fff9eb!important;border-color:#fff1c7}.touch-layout #touch-controls button{color:#fff7e6;text-shadow:0 1px 2px #061a16;border-color:#e7c486a8}.touch-layout #touch-jump,.touch-layout #touch-run{background:#173e38f2;color:#fff7e6!important}.touch-layout #touch-action{background:#173e38f2;color:#ffe2ab!important}.touch-layout #touch-go{color:#20352b!important;text-shadow:none}.touch-layout #location-toast>span{color:#f3cf8c}.touch-layout #location-toast strong{color:#fff7e6;text-shadow:0 1px 3px #061a16}.touch-layout #location-toast em{color:#e4eee0!important}}.survey-places{display:grid;gap:8px;min-width:0}.survey-places[hidden]{display:none}.survey-places label{font-size:12px;color:#f1dfb8}.survey-places input,.survey-places select{width:100%;min-height:38px;border:1px solid #738d74;border-radius:6px;background:#173b31;color:#f3ecd6;padding:8px;font:inherit;font-size:12px}.survey-results{max-height:260px;overflow:auto;overscroll-behavior:contain}.survey-results button{display:flex;gap:10px;width:100%;text-align:left;padding:10px;border-bottom:1px solid #4b6659;white-space:normal}.survey-results b{display:block;font-size:12px;line-height:1.4}.survey-results small{display:block;font-size:10px;line-height:1.4;color:#bfccba}.survey-status{font-size:11px;color:#d5dec8;margin:0}.survey-places>small{line-height:1.5;font-size:10px;color:#bdcdb8}.map-tools{flex-wrap:wrap}#province-map[aria-pressed=true]{background:#dec089;color:#173e31}@media(max-height:560px){.survey-results{max-height:140px}.survey-places{gap:5px}.survey-places>small{font-size:9px}}html[data-theme-group=light] #map-selection,html[data-theme-group=light] .map-attribution a{color:#725118}html[data-theme-group=light] #tour-length{color:#4c6652}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right{right:calc(14px + var(--safe-right));bottom:calc(12px + var(--safe-bottom));width:286px;height:286px;display:block;grid-template-columns:none;gap:0;align-items:unset;border-radius:50%;border:1px solid rgba(245,232,194,.38);background:radial-gradient(circle at center,#0d2b2329 0 29%,#0d2b236b 30% 58%,#efc7871a 59% 100%);box-shadow:0 8px 34px #03121057,inset 0 0 0 7px #ffffff06;pointer-events:none;z-index:4}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick{left:auto;right:calc(94px + var(--safe-right));bottom:calc(92px + var(--safe-bottom));width:126px;height:126px;z-index:6;border:2px solid rgba(255,241,199,.64);background:radial-gradient(circle,#172f257a 0 35%,#172f25b3 36% 68%,#edc17b24 69% 100%);box-shadow:0 5px 26px #05191559,inset 0 0 0 5px #ffffff08}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #stick-label{bottom:4px;font-size:10px;letter-spacing:1.8px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #stick-knob{width:50px;height:50px;left:calc(50% - 25px);top:calc(50% - 25px)}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-pedals{display:block;position:static}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right button{position:absolute;width:72px;height:72px;min-height:72px;padding:7px 5px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;font-size:11px;letter-spacing:.35px;pointer-events:auto;z-index:7;border:1px solid rgba(255,244,211,.55);background:#12342bbd;box-shadow:0 4px 16px #04161247;backdrop-filter:blur(3px)}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right button span{font-size:8px;letter-spacing:.7px;margin-top:3px;opacity:.86}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-go{left:107px;top:8px!important;right:auto;bottom:auto;width:72px!important;height:72px!important;min-height:72px!important;background:#eac184db!important;color:#20352b;text-shadow:none!important;border-color:#ffedbceb!important;font-size:10px!important}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-brake{inset:auto auto 8px 107px;width:72px!important;height:72px!important;min-height:72px!important}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-jump{inset:107px auto auto 8px;grid-column:auto;white-space:pre-line}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-action{inset:107px 8px auto auto;grid-column:auto;border-color:#edc17bcc!important;color:#ffe2ab}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-run{display:none!important}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-look-hint{left:48%;bottom:calc(14px + var(--safe-bottom));font-size:9px}@media(max-height:420px),(max-width:720px){#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right{right:calc(8px + var(--safe-right));bottom:calc(8px + var(--safe-bottom));width:250px;height:250px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick{right:calc(77px + var(--safe-right));bottom:calc(77px + var(--safe-bottom));width:112px;height:112px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right button{width:64px;height:64px;min-height:64px;font-size:10px;padding:5px 4px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-go{left:93px;top:5px!important;width:64px!important;height:64px!important;min-height:64px!important;font-size:9px!important}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-brake{left:93px;bottom:5px;width:64px!important;height:64px!important;min-height:64px!important}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-jump{left:5px;top:93px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-action{right:5px;top:93px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #stick-knob{width:46px;height:46px;left:calc(50% - 23px);top:calc(50% - 23px)}}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick{left:calc(22px + var(--safe-left));right:auto;bottom:calc(24px + var(--safe-bottom));width:154px;height:154px;z-index:7;border:3px solid rgba(255,241,199,.72);background:radial-gradient(circle at center,#142f27ad 0 31%,#edc17b1f 32% 40%,#12342b9e 41% 68%,#fff4d314 69% 100%);box-shadow:0 7px 28px #03121061,inset 0 0 0 7px #ffffff06}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick:before{content:"";position:absolute;inset:17px;border:5px solid rgba(255,239,194,.28);border-radius:50%;pointer-events:none}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick .stick-cross{font-size:0;color:transparent}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick .stick-cross:before{content:"↔";font-size:34px;font-weight:700;color:#fff4d357}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #stick-knob{width:58px;height:58px;left:calc(50% - 29px);top:calc(50% - 29px);background:#e7eeda47;border:2px solid rgba(255,248,218,.84)}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #stick-label{bottom:-19px;font-size:10px;letter-spacing:1.8px;text-shadow:0 1px 5px #061a16}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right{right:calc(14px + var(--safe-right));bottom:calc(12px + var(--safe-bottom))}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-look-hint{display:none}@media(max-height:420px),(max-width:720px){#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick{left:calc(12px + var(--safe-left));right:auto;bottom:calc(18px + var(--safe-bottom));width:128px;height:128px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-stick:before{inset:14px;border-width:4px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #stick-knob{width:50px;height:50px;left:calc(50% - 25px);top:calc(50% - 25px)}}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right{width:202px;height:202px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-go{left:calc(50% - 36px);top:6px!important}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-brake{left:calc(50% - 36px);bottom:6px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-jump{left:6px;top:calc(50% - 36px)}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-action{right:6px;top:calc(50% - 36px)}@media(max-height:420px),(max-width:720px){#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-right{width:184px;height:184px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-go{left:calc(50% - 32px)}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-brake{left:calc(50% - 32px);bottom:6px}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-jump{top:calc(50% - 32px)}#touch-controls[data-mode=vehicle]:not([data-transport=helicopter]) #touch-action{top:calc(50% - 32px)}}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-stick{left:calc(22px + var(--safe-left));right:auto;bottom:calc(24px + var(--safe-bottom));width:154px;height:154px;z-index:7;border:3px solid rgba(255,241,199,.72);background:radial-gradient(circle at center,#142f27ad 0 31%,#edc17b1f 32% 40%,#12342b9e 41% 68%,#fff4d314 69% 100%);box-shadow:0 7px 28px #03121061,inset 0 0 0 7px #ffffff06}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-stick:before{content:"";position:absolute;inset:17px;border:5px solid rgba(255,239,194,.28);border-radius:50%;pointer-events:none}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-stick .stick-cross{font-size:0;color:transparent}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-stick .stick-cross:before{content:"↔";font-size:34px;font-weight:700;color:#fff4d357}#touch-controls[data-mode=vehicle][data-transport=helicopter] #stick-knob{width:58px;height:58px;left:calc(50% - 29px);top:calc(50% - 29px);background:#e7eeda47;border:2px solid rgba(255,248,218,.84)}#touch-controls[data-mode=vehicle][data-transport=helicopter] #stick-label{bottom:-19px;font-size:10px;letter-spacing:1.8px;text-shadow:0 1px 5px #061a16}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-right{right:calc(14px + var(--safe-right));bottom:calc(12px + var(--safe-bottom));width:202px;height:202px;display:block;grid-template-columns:none;gap:0;align-items:unset;border-radius:50%;border:1px solid rgba(245,232,194,.38);background:radial-gradient(circle at center,#0d2b2329 0 29%,#0d2b236b 30% 58%,#efc7871a 59% 100%);box-shadow:0 8px 34px #03121057,inset 0 0 0 7px #ffffff06;pointer-events:none;z-index:4}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-right button{position:absolute;width:72px;height:72px;min-height:72px;padding:7px 5px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;font-size:11px;letter-spacing:.35px;pointer-events:auto;z-index:7;border:1px solid rgba(255,244,211,.55);background:#12342bbd;box-shadow:0 4px 16px #04161247;backdrop-filter:blur(3px)}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-go{left:calc(50% - 36px);top:6px!important;right:auto;bottom:auto;background:#eac184db!important;color:#20352b;text-shadow:none!important;border-color:#ffedbceb!important;font-size:10px!important}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-brake{left:calc(50% - 36px);bottom:6px;right:auto;top:auto}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-jump{left:6px;top:calc(50% - 36px);right:auto;bottom:auto;grid-column:auto}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-action{right:6px;top:calc(50% - 36px);left:auto;bottom:auto;grid-column:auto;border-color:#edc17bcc!important;color:#ffe2ab}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-run{display:flex!important;left:-78px;top:calc(50% - 32px);right:auto;bottom:auto;width:64px;height:64px;min-height:64px;background:#12342bd1}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-look-hint{display:none}@media(max-height:420px),(max-width:720px){#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-stick{left:calc(12px + var(--safe-left));bottom:calc(18px + var(--safe-bottom));width:128px;height:128px}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-stick:before{inset:14px;border-width:4px}#touch-controls[data-mode=vehicle][data-transport=helicopter] #stick-knob{width:50px;height:50px;left:calc(50% - 25px);top:calc(50% - 25px)}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-right{right:calc(8px + var(--safe-right));bottom:calc(8px + var(--safe-bottom));width:184px;height:184px}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-right button{width:64px;height:64px;min-height:64px;font-size:10px;padding:5px 4px}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-go,#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-brake{left:calc(50% - 32px)}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-jump,#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-action{top:calc(50% - 32px)}#touch-controls[data-mode=vehicle][data-transport=helicopter] #touch-run{left:-70px;top:calc(50% - 30px);width:60px;height:60px;min-height:60px}}#progress-hud{position:absolute;top:100px;left:32px;width:168px;padding:13px 15px;border:1px solid #ddd9b52a;border-radius:12px;background:#142e27d9;backdrop-filter:blur(12px);pointer-events:none;color:#edf2df}.progress-vitals,.progress-wallet{display:flex;align-items:center;justify-content:space-between;gap:8px}.progress-vitals strong{font-size:13px}#life-hearts{font-size:18px;letter-spacing:2px;color:#efa6a1}.health-track{height:4px;border-radius:4px;overflow:hidden;background:#ffffff20;margin:9px 0 10px}.health-track i{display:block;height:100%;width:100%;background:#91d7ac;transition:width .2s}#progress-hud[data-low=true] .health-track i{background:#f29982}.progress-wallet b{font-size:14px;color:#edc379}.progress-wallet span{font-size:9px;letter-spacing:.6px}#save-warning{display:block;color:#ffc7a2;font-size:9px;margin-top:6px}#save-warning[hidden]{display:none}#checkpoint-prompt{display:flex;align-items:center;gap:12px;max-width:100%;min-height:44px;border:1px solid #e4c88d80;border-radius:14px;padding:12px 18px;color:#1a382e;background:#edcf98;box-shadow:0 6px 30px #10221b50;font-weight:700;font-size:12px;touch-action:manipulation;pointer-events:auto;text-align:left;line-height:1.4}#checkpoint-prompt>span{min-width:0;overflow-wrap:anywhere}#checkpoint-prompt b,#checkpoint-prompt small{display:block}#checkpoint-prompt small{margin-top:2px;font-weight:500}#checkpoint-prompt kbd{flex-shrink:0;color:inherit;background:#17332a12;border-color:#17332a40;white-space:nowrap}#training-exit{position:absolute;left:50%;top:105px;transform:translate(-50%);background:#7b442c;color:#ffdfb8;border:1px solid #f0bd7777;border-radius:25px;padding:12px 20px;z-index:12}#training-exit[hidden],#checkpoint-prompt[hidden]{display:none}.checkpoint-list-label{color:#e1bd79!important;margin-top:4px!important;font-size:10px!important}dialog.competition-dialog{width:min(930px,94vw);height:min(730px,92dvh);max-height:94dvh;padding:0;border-radius:20px;border:1px solid #b1c2ab55;background:#142d26;color:#eff0df;box-shadow:0 35px 130px #031410ab;overflow:hidden}dialog.competition-dialog[open]{display:flex;flex-direction:column}.competition-dialog::backdrop{background:#0a1e18b3;backdrop-filter:blur(9px)}.competition-dialog button,.competition-dialog select{font:inherit;touch-action:manipulation}.competition-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:27px 32px 20px;border-bottom:1px solid #cee4c51f}.competition-head h2{margin:7px 0 0;font-size:26px;font-weight:500;letter-spacing:-.8px}.competition-head .eyebrow{font-size:9px;color:#deb980;letter-spacing:2.5px}.competition-wallet{text-align:right;flex-shrink:0}.competition-wallet b{display:block;color:#f0ce88;font-size:20px}.competition-wallet span{display:block;margin-top:7px;font-size:11px;color:#bacdbb}.competition-meter{display:flex;justify-content:space-between;gap:10px;padding:12px 32px;font-size:10px;letter-spacing:.2px;background:#203e32;color:#d3dcc7}.competition-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:38px;padding:26px 32px;overflow:auto;flex:1;min-height:0}.competition-feature{display:flex;flex-direction:column;align-items:flex-start}.competition-icon{font-size:38px;line-height:1.2;margin-bottom:20px}.competition-feature .eyebrow,.competition-recovery .eyebrow{font-size:9px;letter-spacing:2px;color:#b2c19e}.competition-feature h3,.competition-recovery h3{font-size:29px;letter-spacing:-1px;margin:8px 0;font-weight:500}.competition-feature p,.competition-recovery p{font-size:12px;line-height:1.7;color:#bfcfbd;margin:10px 0}.competition-thai{font-family:Noto Sans Thai,sans-serif!important;line-height:1.6;font-size:12px;color:#acc6b2}.competition-feature select{width:100%;background:#193a2e;border:1px solid #bacda850;border-radius:8px;color:#eff0df;padding:12px;margin:16px 0 10px}.competition-feature select option{background:#193a2e}.competition-primary,.competition-secondary,.recovery-item{border:1px solid #d8bd8160;padding:13px 20px;border-radius:8px;background:#e8c88b;color:#173426;font-weight:700!important;cursor:pointer}.competition-primary:hover{background:#f5dca9}.competition-secondary{background:#2e4c3b;color:#e4dfc1}.competition-feature>.competition-primary{width:100%}.competition-feature small,.competition-recovery small{font-size:10px;line-height:1.6;color:#9fbaa6;display:block;margin-top:14px}.competition-recovery{padding-top:14px}.competition-recovery h3{font-size:25px}.recovery-item{display:block;text-align:left;width:100%;margin:12px 0;background:#244633;color:#d8e8c3;padding:18px 16px;font-size:12px!important}.competition-dialog button:disabled{opacity:.38;cursor:default}.competition-recovery .competition-secondary{font-size:11px;padding:12px;width:100%;margin-top:6px}.rescue-note{color:#ffb8a1!important;border-left:2px solid #ffb8a1;padding-left:12px}.competition-playing{flex:1;min-height:0;overflow:auto;padding:23px 32px;display:flex;flex-direction:column;gap:17px}.competition-question h3{margin:6px 0;font-size:clamp(20px,2.8vw,32px);font-weight:500;line-height:1.3;letter-spacing:-.5px}.competition-question p{margin:0}.competition-question small{font-size:11px;color:#a6bea8}.competition-answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.competition-choice{background:#294b3b;border:1px solid #a6bf9160;color:#f1efde;text-align:left;padding:20px;border-radius:10px;font-size:17px!important;line-height:1.45;overflow-wrap:anywhere;cursor:pointer}.competition-choice:hover:not(:disabled){background:#385f48;border-color:#e1cb91}.competition-choice.correct{border-color:#9adb96;background:#426747;opacity:1!important}.competition-listen{border:1px solid #ddbd7960;color:#f4cf89;background:#254936;padding:12px 20px;border-radius:30px;font-size:13px!important;cursor:pointer;margin-bottom:10px}.competition-built{min-height:44px;background:#10261d;border:1px dashed #81916e;border-radius:8px;padding:12px 15px;margin:14px 0 0;color:#eed49e;font-size:19px}.token-answers{display:flex;flex-wrap:wrap;gap:8px}.token-answers .competition-choice{padding:12px 18px}.letter-answers{display:flex;flex-wrap:wrap;gap:8px}.letter-answers .competition-choice{width:46px;min-height:48px;padding:10px;text-align:center}.competition-order-actions{display:flex;gap:10px;justify-content:flex-end}.competition-order-actions button{font-size:12px!important}.pair-answers{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.pair-answers .competition-choice{min-height:96px;text-align:center;padding:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:19px!important}.pair-answers small{font-size:9px;letter-spacing:2px;color:#afd1b3}.pair-answers .face-up{background:#d8dcb7;color:#173a27}.pair-answers .face-up small{color:#476548}.pair-answers .matched{background:#4b704f;opacity:.75!important;color:#f4f2d4}.competition-footer{padding:16px 32px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid #a7c29b26;background:#11281f;flex-shrink:0}.competition-footer span{font-size:10px;color:#a5c2a4;max-width:50%;line-height:1.5}.competition-footer button{border:1px solid #b6bc8f66;border-radius:25px;background:transparent;color:#e8d8aa;padding:12px 20px;font-size:11px;font-weight:600;cursor:pointer}#competition-feedback{font-size:12px;line-height:1.5;color:#e5ce8e;min-height:24px;padding:4px 32px 10px;flex-shrink:0}.competition-loading{margin:40px;color:#c9d5b7}.progress-help{border-top:1px solid #77977a40;padding-top:20px;margin:20px 0}.progress-help p{font-size:12px;line-height:1.7;color:#b1c6b3}.progress-help button,.save-import{font:inherit;font-size:11px;border:1px solid #8da58280;background:#2a4735;color:#ead7b2;border-radius:7px;padding:11px 14px;cursor:pointer;display:inline-block}.save-import input{max-width:190px;margin-left:8px;font-size:10px}.progress-help small{display:block;margin-top:10px;color:#eccb98}@media(max-height:580px)and (orientation:landscape){dialog.competition-dialog{width:95vw;height:94dvh;border-radius:13px}.competition-head{padding:11px 20px}.competition-head h2{font-size:19px;margin-top:3px}.competition-head .eyebrow{font-size:8px}.competition-wallet b{font-size:15px}.competition-wallet span{font-size:9px;margin-top:3px}.competition-meter{padding:7px 20px;font-size:9px}.competition-intro{padding:14px 20px;gap:26px}.competition-icon{float:left;font-size:23px;margin:0 0 5px}.competition-feature h3{font-size:23px;margin:5px 0}.competition-feature p,.competition-recovery p{font-size:10px;margin:5px 0}.competition-feature select{padding:8px;margin:9px 0 6px;font-size:11px}.competition-primary,.competition-secondary{padding:9px 14px;font-size:11px!important}.competition-feature small,.competition-recovery small{font-size:9px;margin-top:7px}.competition-recovery{padding-top:0}.competition-recovery h3{font-size:21px}.recovery-item{margin:7px 0;padding:10px}.competition-playing{padding:12px 20px;gap:10px}.competition-question h3{font-size:21px}.competition-question p{font-size:10px}.competition-choice{padding:10px 14px;font-size:13px!important;min-height:40px}.competition-answers{gap:8px}.competition-footer{padding:9px 20px}.competition-footer button{padding:9px 14px;font-size:10px}.competition-footer span{font-size:9px}#competition-feedback{font-size:10px;padding:3px 20px 5px;min-height:20px}.pair-answers .competition-choice{min-height:59px;padding:6px;font-size:13px!important;gap:2px}.pair-answers small{font-size:8px}.competition-playing:has(.pair-answers){display:grid;grid-template-columns:minmax(125px,.7fr) minmax(0,1.5fr);align-content:start;gap:14px}.competition-playing:has(.pair-answers) .competition-question h3{font-size:18px}.competition-built{font-size:15px;min-height:32px;padding:6px 10px;margin:8px 0 0}.letter-answers .competition-choice{width:35px;min-height:35px;padding:6px}.token-answers .competition-choice{padding:8px 12px}.competition-listen{padding:8px 13px;margin-bottom:6px;font-size:11px!important}.competition-order-actions{gap:6px}}.touch-layout #progress-hud{top:calc(66px + var(--safe-top));left:auto;right:calc(18px + var(--safe-right));width:125px;padding:8px 10px}.touch-layout #speedometer{top:calc(143px + var(--safe-top))}.touch-layout #speedometer b{font-size:38px}.touch-layout dialog.competition-dialog{padding:0;width:calc(100% - 24px - var(--safe-left) - var(--safe-right));max-height:calc(100dvh - 20px - var(--safe-top) - var(--safe-bottom))}.touch-layout .competition-feature select{font-size:16px}.touch-layout #life-hearts{font-size:14px;letter-spacing:1px}.touch-layout .health-track{margin:5px 0}.touch-layout .progress-wallet b{font-size:11px}.touch-layout .progress-wallet span{font-size:8px}.touch-layout .progress-vitals strong{font-size:10px}.touch-layout #checkpoint-prompt{padding:9px 14px;font-size:10px}.touch-layout #checkpoint-prompt kbd{display:none}.touch-layout #training-exit{top:68px;padding:9px 14px;font-size:10px}@media(max-width:570px)and (orientation:portrait){.competition-intro{grid-template-columns:1fr;gap:12px;padding:16px}.competition-head{padding:15px}.competition-head h2{font-size:19px}.competition-wallet b{font-size:15px}.competition-meter{padding:10px 15px;flex-wrap:wrap}.competition-footer{padding:12px 15px;gap:10px}.competition-footer button{padding:10px 13px}.competition-playing{padding:15px}.pair-answers .competition-choice{min-height:70px;padding:8px;font-size:13px!important}}html:has(#rotate-screen:not([hidden])) .competition-dialog{visibility:hidden}#exploration-progress,#reserve-lives{display:block;color:#d6ffe3;font-size:11px;line-height:1.35}#map-completion{display:block;color:#146234;font-size:12px;line-height:1.4;padding:4px 8px}.destinations button.area-complete,.survey-results button.area-complete{background:#224f37;border-color:#65ca8a}.exploration-note{background:#173f2a;color:#daffe7;padding:10px;border-radius:8px}#landmark-list button.area-complete,#landmark-list button.area-complete b,#landmark-list button.area-complete small,.survey-results button.area-complete b,.survey-results button.area-complete small{color:#e0ffe8}#map-panel #landmark-list button.area-complete,#map-panel .survey-results button.area-complete{background:#224f37!important;color:#e0ffe8!important;border-color:#65ca8a!important}#map-panel button.area-complete b,#map-panel button.area-complete small,#map-panel button.area-complete .checkpoint-list-label{color:#e0ffe8!important}#competition-panel .competition-feature .exploration-note{background:#173f2a!important;color:#daffe7!important}#competition-panel .competition-wallet{background:#173f2a;border-radius:8px;padding:8px 12px}#competition-panel .competition-wallet b,#competition-panel .competition-wallet span{color:#e2ffe9!important}#transit-prompt{position:absolute;top:calc(env(safe-area-inset-top) + 72px);left:50%;transform:translate(-50%);display:flex;gap:7px;align-items:center;max-width:calc(100vw - 32px);padding:9px 12px;border:1px solid #b0c7ac;border-radius:15px;background:#173e38ed;color:#fff3d6;box-shadow:0 8px 28px #122a2355;pointer-events:auto;font-size:12px;z-index:12}#transit-prompt[hidden]{display:none}#transit-prompt strong{max-width:160px}#transit-prompt button,.transit-destinations button,.transit-directory button{min-height:40px;border-radius:9px;border:1px solid #779b88;padding:7px 12px;background:#e9d3a0;color:#173e38;font-weight:700;cursor:pointer}.transit-destinations{display:flex;flex-wrap:wrap;gap:8px}.transit-help{margin:20px 0}.transit-directory{padding:12px;display:grid;gap:8px}.transit-directory h3{margin:0}@media(max-height:520px){#transit-prompt{top:calc(env(safe-area-inset-top) + 48px);padding:5px 8px;font-size:11px}#transit-prompt strong{max-width:95px}#transit-prompt button{min-height:34px;padding:5px 8px}}#touch-controls[data-transport=helicopter] #touch-run,#touch-controls[data-transport=helicopter] #touch-jump{background:#234f45;color:#fff4d6;border-color:#c7d4b5;font-weight:800}#speedometer{background:#173e38ed;color:#fff3d6}#speedometer .drive-label,#speedometer small{color:#eadcb7}#speedometer #speed{color:#fff7de}@media(max-width:760px),(max-height:560px){#transit-prompt{background:#102d28f8;color:#fff8e8;border-color:#f0cf91;box-shadow:0 7px 24px #06171399}#transit-prompt button,.transit-destinations button,.transit-directory button{background:#f0cf91;color:#12362e;border:2px solid #fff1c7;text-shadow:none;box-shadow:0 2px 9px #07171366}#transit-prompt button:focus-visible,.transit-destinations button:focus-visible,.transit-directory button:focus-visible{outline:3px solid #fff7e7;outline-offset:2px}}
