@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{color:#243d35;font-family:DM Sans,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}:is(button:focus-visible,a:focus-visible){outline-offset:5px;outline:3px solid #e27b4f}button:disabled{cursor:wait;opacity:.7}.game{height:100vh;background:#a9d4d2;height:100dvh;min-height:420px;position:relative;overflow:hidden}.world,.world canvas,.vignette{width:100%;height:100%;display:block;position:absolute;inset:0}.vignette{pointer-events:none;background:linear-gradient(90deg,#eef1daf5,#e9efdae0 23%,#e5eddb47 46%,#0000 65%)}.in-game .vignette{background:linear-gradient(#e1ecd9b3,#0000 25% 78%,#3555441f)}.topbar{z-index:3;justify-content:space-between;align-items:center;width:100%;padding:30px 42px;display:flex;position:absolute;top:0;left:0}.brand{color:inherit;letter-spacing:-1px;align-items:center;gap:12px;font-family:Outfit,sans-serif;font-size:25px;font-weight:700;text-decoration:none;display:flex}.brand-sub{letter-spacing:.2px;color:#668072;margin-top:3px;font-family:DM Sans,sans-serif;font-size:10px;font-weight:500;display:block}.brand-mark{border:2px solid #365947;border-radius:15px;justify-content:center;align-items:center;width:43px;height:43px;font-size:49px;font-weight:500;line-height:1;display:inline-flex;position:relative;transform:rotate(-10deg)}.brand-mark span{font-size:14px;position:absolute;top:0;right:6px}.top-actions{align-items:center;gap:20px;display:flex}.edition{color:#476c63;font-size:12px}.icon-button{color:#324f41;background:#f5f7e6b3;border:1px solid #526e5333;border-radius:30px;align-items:center;gap:8px;min-height:40px;padding:8px 15px;font-size:18px;display:flex}.icon-button span{font-size:11px}.intro{z-index:2;width:480px;max-width:43%;position:absolute;top:50%;left:7%;transform:translateY(-45%)}.intro-kicker{color:#5c775e;align-items:center;gap:8px;margin-bottom:24px;font-size:12px;font-weight:600;display:flex}.intro-kicker>span{background:#d77b4d;border-radius:50%;width:7px;height:7px}h1{letter-spacing:-4px;margin:0 0 25px;font-family:Outfit,sans-serif;font-size:clamp(48px,5.6vw,84px);font-weight:600;line-height:1.02}p{color:#5b7162;margin:0;font-size:15px;line-height:1.85}.play-button{color:#fffcec;background:#2c513d;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:60px;min-width:225px;margin-top:30px;padding:19px 24px;font-size:16px;font-weight:600;transition:background .15s,transform .15s;display:flex;box-shadow:0 7px #223e3020}.play-button:hover{background:#37664b;transform:translateY(-2px)}.play-button span{font-size:24px;font-weight:400;line-height:1}.error{color:#9c3826;margin-top:20px;font-size:13px}footer{color:#536f61;justify-content:space-between;align-items:center;font-size:11px;display:flex;position:absolute;bottom:26px;left:42px;right:42px}footer>span:last-child{align-items:center;gap:12px;margin-left:auto;display:flex}.footer-flower{color:#456b51;font-size:31px}.objective{background:#f5f5e8ed;border:1px solid #fff8;border-radius:14px;align-items:center;gap:14px;padding:16px 19px;display:flex;position:absolute;top:112px;left:42px;box-shadow:0 5px 25px #24462c12}.beacon-symbol{color:#a923e6;font-size:34px}.objective strong{font-size:14px;display:block}.objective small{color:#75816e;margin-top:5px;font-size:11px;display:block}.count{margin-left:18px;font-family:Outfit,sans-serif;font-size:30px;font-weight:600}.count i{color:#89957d;margin-left:5px;font-size:16px;font-style:normal}.bottom-hud{pointer-events:none;justify-content:space-between;align-items:flex-end;display:flex;position:absolute;bottom:34px;left:42px;right:42px}.stamina{background:#f6f5e9e8;border-radius:11px;width:210px;padding:14px 17px}.stamina>div:first-child{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.stamina strong{font-size:12px}.stamina span{color:#738371;font-size:10px}.meter{background:#ced7bf;border-radius:3px;height:6px;overflow:hidden}.meter>div{background:#678b58;border-radius:3px;height:100%;transition:width .1s}.timer{text-align:center;font-variant-numeric:tabular-nums;color:#f9f9e8;text-shadow:0 1px 4px #325a3b;margin-right:45%;font-family:Outfit,sans-serif;font-size:29px}.timer small{margin-top:2px;font-family:DM Sans,sans-serif;font-size:10px;display:block}.danger{color:#fff7e5;opacity:0;pointer-events:none;background:#b85336;border-radius:20px;padding:10px 18px;font-size:12px;transition:opacity .2s;position:absolute;top:115px;left:50%;transform:translate(-50%)}.danger.visible{opacity:1}.map-wrap{background:#f3f3e4e8;border-radius:15px;width:190px;padding:15px;display:none;position:absolute;bottom:30px;right:35px;box-shadow:0 5px 20px #31563c15}.map-wrap.show{display:block}.map-wrap canvas{width:160px;height:160px;display:block}.map-title{justify-content:space-between;margin-bottom:8px;font-size:11px;font-weight:600;display:flex}.map-title span{color:#85917b;font-size:10px}.map-legend{color:#63735d;justify-content:space-between;margin-top:10px;font-size:9px;display:flex}.map-legend span{align-items:center;gap:4px;display:flex}.map-legend b{border-radius:50%;width:5px;height:5px;display:inline-block}.you-dot{background:#ef7753}.snake-dot{background:#315b3b}.map-legend .beacon-dot{background:#a923e6;border-radius:0;width:6px;height:6px;transform:rotate(45deg)}.overlay{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:5;background:#294f4444;place-items:center;display:grid;position:absolute;inset:0}.result{text-align:center;background:#f3f3e3;border-radius:24px;width:min(430px,90vw);padding:38px;box-shadow:0 30px 80px #173b3440}.result-icon{color:#bd9350;font-size:40px}.result h2{letter-spacing:-1.5px;margin:18px 0;font-family:Outfit,sans-serif;font-size:37px;line-height:1.1}.result p{font-size:14px}.result .play-button{width:100%;margin:25px 0}.result>small{color:#6f806a;font-size:11px}.touch-controls{display:none}@media (max-width:900px){.topbar{padding:22px}.edition{display:none}.intro{max-width:48%;left:6%}h1{letter-spacing:-2.5px}.brand-sub{display:none}.objective{top:90px;left:22px}.bottom-hud{bottom:22px;left:22px}.map-wrap{transform-origin:100% 100%;bottom:22px;right:22px;transform:scale(.85)}.danger{top:180px}footer{left:22px;right:22px}}@media (max-width:600px){.topbar{padding:20px}.brand{font-size:21px}.brand-mark{border-radius:11px;width:33px;height:33px;font-size:38px}.brand-mark span{font-size:11px}.icon-button{min-height:34px;padding:7px 11px}.icon-button span{display:none}.top-actions{gap:8px}.intro{width:90%;max-width:none;top:115px;left:25px;transform:none}.intro-kicker{margin-bottom:13px;font-size:11px}h1{margin-bottom:15px;font-size:48px}.intro p{font-size:13px;line-height:1.7}.desktop-br{display:none}.play-button{min-width:200px;margin-top:21px;padding:14px 20px;font-size:14px}.vignette{background:linear-gradient(#eaf0dbf0,#eaf0dbdc 35%,#eaf0db20 68%,#0000)}footer{font-size:9px;bottom:17px}footer>span:last-child{display:none}.objective{gap:9px;padding:12px;top:80px;left:15px;right:15px}.objective strong{font-size:12px}.objective small{font-size:10px}.count{white-space:nowrap;margin-left:auto;font-size:26px}.beacon-symbol{font-size:26px}.bottom-hud{bottom:155px;left:18px;right:18px}.stamina{width:145px;padding:10px}.timer{margin:0;font-size:24px}.map-wrap{transform-origin:100% 0;top:160px;bottom:auto;right:15px;transform:scale(.65)}.danger{padding:8px 12px;font-size:10px;top:148px;left:18px;transform:none}.result{padding:27px}.result h2{font-size:32px}.result .play-button{min-height:48px}}@media (pointer:coarse){.touch-controls{touch-action:none;justify-content:space-between;align-items:flex-end;display:flex;position:absolute;bottom:22px;left:22px;right:22px}.touch-sprint{color:#2c513d;touch-action:none;-webkit-user-select:none;user-select:none;background:#f5f6e7d9;border:1px solid #fff9;border-radius:12px;width:80px;height:65px;font-size:13px;font-weight:600}.in-game .map-wrap{transform-origin:100% 0;top:165px;bottom:auto;transform:scale(.7)}.bottom-hud{bottom:140px}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.highscores{text-align:left;border-top:1px solid #bbc8ad;margin-top:22px;padding-top:15px}.scores-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.scores-heading h3{margin:0;font-family:Outfit,sans-serif;font-size:17px;font-weight:600}.scores-heading>span{color:#6b7e60;font-size:10px}.score-list{margin:10px 0;padding:0;list-style:none}.score-list li{border-radius:6px;align-items:center;gap:11px;min-height:37px;padding:6px 8px;font-size:12px;display:flex}.score-rank{color:#849275;width:15px;font-size:11px}.score-outcome{flex:1}.score-outcome small{color:#587743;margin-left:7px;font-size:9px}.score-time{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.current-score{background:#dce8ca}.highscores .scores-rule{margin-top:10px;font-size:10px;line-height:1.6}.highscores .scores-storage{color:#6d7d62;margin-top:4px;font-size:10px;line-height:1.6}.highscores .scores-empty{margin:12px 0;font-size:12px;line-height:1.6}.personal-best{color:#47743e;margin-top:17px;font-size:13px;font-weight:600}.scores-home{z-index:4;width:300px;max-width:calc(100% - 40px);max-height:calc(100vh - 150px);background:#f3f3e3f2;border:1px solid #eef3e3;border-radius:13px;max-height:calc(100dvh - 150px);padding:14px 17px;position:absolute;bottom:85px;right:42px;overflow:auto;box-shadow:0 6px 24px #31563c15}.scores-home>summary{cursor:pointer;font-size:13px;font-weight:600}.scores-home>summary>span{float:right;color:#6d7d62;margin-top:2px;font-size:10px;font-weight:400}.scores-home>summary:focus-visible{outline-offset:5px;outline:3px solid #e27b4f}.scores-home .highscores{margin-top:12px}.result{max-height:calc(100vh - 30px);max-height:calc(100dvh - 30px);overflow-y:auto}.result .highscores{margin-top:16px}.result .scores-heading h3{font-size:15px}.result .score-list li{min-height:31px}.result .play-button{margin:20px 0}.overlay{padding:15px}@media (max-width:600px){.scores-home{width:280px;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);bottom:45px;right:20px}.result .result-icon{font-size:29px}.result h2{margin:12px 0;font-size:29px}.result .highscores{padding-top:10px}.result .score-list{margin:7px 0}.result .scores-rule{font-size:9px}.score-outcome small{margin:1px 0 0;display:block}}button.brand{text-align:left;background:0 0;border:0;padding:0}.support-button{color:#4c482c;background:#f4d58e;border:1px solid #d7b873;border-radius:9px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.support-button:hover{background:#f9dfa1}.result .support-button{margin-top:18px}.support-button:focus-visible{outline-offset:4px;outline:3px solid #e27b4f}@media (max-width:600px){footer .support-button{padding:7px 10px;font-size:10px}.intro-kicker{letter-spacing:0}}.difficulty-picker{border:0;max-width:340px;margin:22px 0 0;padding:0}.difficulty-picker legend{color:#56714e;margin-bottom:9px;font-size:11px}.difficulty-picker>div{gap:8px;display:flex}.difficulty-picker label{cursor:pointer;background:#eff3df88;border:1px solid #aebb9d;border-radius:8px;flex-direction:column;flex:1;gap:4px;padding:10px 12px;display:flex;position:relative}.difficulty-picker label.selected{background:#dce9cb;border-color:#628450}.difficulty-picker label:focus-within{outline-offset:2px;outline:3px solid #e27b4f}.difficulty-picker input{opacity:0;width:1px;height:1px;position:absolute}.difficulty-picker span{color:#64785a;font-size:10px}.difficulty-picker p{margin-top:8px;font-size:10px;line-height:1.6}.change-mode{color:#536e48;background:0 0;border:0;margin:15px auto 0;font-size:12px;text-decoration:underline;display:block}.intro .play-button{margin-top:20px}@media (max-height:780px) and (min-width:601px){.intro h1{margin-bottom:14px;font-size:60px}.intro-kicker{margin-bottom:14px}.intro{top:49%}.intro p{font-size:13px;line-height:1.6}.difficulty-picker{margin-top:15px}}@media (max-width:600px){.intro{top:90px}.intro h1{font-size:40px}.intro p{font-size:12px}.difficulty-picker{max-width:300px;margin-top:14px}.difficulty-picker label{padding:8px 10px}.difficulty-picker p{font-size:9px}.scores-home{bottom:42px}}@media (max-height:640px){.game .intro{max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);padding-right:8px;top:80px;overflow-y:auto;transform:none}.game .scores-home{bottom:40px}}.touch-instruction{display:none}.how-to-play{width:min(510px,100vw - 30px);max-height:calc(100vh - 30px);color:#243d35;background:#f3f3e3;border:1px solid #fff;border-radius:22px;max-height:calc(100dvh - 30px);padding:30px;overflow:auto;box-shadow:0 25px 90px #19362c55}.how-to-play::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#193b36a6}.how-to-play h2{letter-spacing:-.8px;margin:0 0 8px;font-family:Outfit,sans-serif;font-size:29px}.how-to-play>p{font-size:13px}.mission-steps{gap:18px;margin:22px 0;padding:0;list-style:none;display:grid}.mission-steps li{align-items:flex-start;gap:16px;display:flex}.mission-steps strong{font-size:15px;display:block}.mission-steps p{margin-top:5px;font-size:12px;line-height:1.65}.mission-orb,.mission-portal,.mission-key{flex-shrink:0;width:34px;height:34px;margin-top:3px}.mission-orb{background:#a923e6;border:3px solid #fff;border-radius:50%;box-shadow:0 0 0 2px #a923e6}.mission-portal{border:5px solid #279cbe;border-radius:50%;box-shadow:0 0 0 3px #caeefa,inset 0 0 0 2px #caeefa}.mission-key{background:#e5be74;border:1px solid #b08a42;border-bottom-width:4px;border-radius:7px;place-items:center;font-size:24px;display:grid}.mission-sprint{background:#f3dfae;border-radius:12px;padding:15px 12px}.mission-steps kbd,.sprint-instruction kbd{color:#384630;background:#fff;border:1px solid #c5ac75;border-bottom-width:3px;border-radius:5px;padding:2px 7px;font-family:inherit;font-weight:700}.how-to-play .play-button{gap:10px;width:100%;margin-top:20px}.escape-objective{background:#e6f9ff;border:2px solid #2699bc}.escape-objective .beacon-symbol{color:#2699bc}.stamina{width:255px;padding:14px 17px}.stamina>strong{margin-bottom:10px;font-size:13px;display:block}.stamina .sprint-instruction{margin-bottom:12px;font-size:12px}.stamina .sprint-instruction span{color:#374b31;font-size:12px}.stamina small{color:#5c7252;margin-top:8px;font-size:10px;display:block}.discover-sprint{background:#fff1cc;border:2px solid #b99440;box-shadow:0 0 0 4px #fff1cc66}.map-legend .portal-dot{background:0 0;border:2px solid #278bad;width:8px;height:8px}.touch-sprint small{margin-top:3px;font-size:9px;display:block}.objective small{max-width:300px;font-size:12px;line-height:1.45}.intro p strong{color:#36513b;font-weight:600}@media (pointer:coarse){.keyboard-instruction{display:none}.touch-instruction{display:inline}.touch-sprint{background:#ffe6a0;border:2px solid #c49336;width:94px;height:76px;font-size:16px}}@media (max-width:600px){.how-to-play{padding:22px}.how-to-play h2{font-size:25px}.mission-steps strong{font-size:13px}.mission-steps p{font-size:11px}.mission-steps{gap:15px}.mission-steps li{gap:12px}.stamina{width:215px;padding:11px 13px}.stamina>strong{font-size:12px}.stamina .sprint-instruction span{font-size:11px}.objective strong{font-size:12px}.objective small{max-width:230px;font-size:10px}.objective{align-items:flex-start}.map-title{font-size:10px}}.upper-hud{pointer-events:none;grid-template-columns:minmax(0,440px) minmax(280px,350px);justify-content:space-between;align-items:start;gap:20px;display:grid;position:absolute;top:108px;left:42px;right:42px}.upper-hud .objective{min-width:0;position:static}.upper-hud .stamina{border:2px solid #e9f3da;width:100%;padding:14px 17px;position:relative;box-shadow:0 4px 20px #214d3526}.upper-hud .stamina>strong{margin-bottom:9px;padding-right:45px;font-size:13px}.upper-hud .stamina-percent{color:#31543e;font-family:Outfit,sans-serif;font-size:20px;font-weight:600;position:absolute;top:12px;right:17px}.upper-hud .meter{background:var(--stamina-track,#294657);border:2px solid #fff;border-radius:8px;height:24px;box-shadow:0 0 0 1px #4e6859}.upper-hud .meter>div{background:var(--stamina-fill,#72dc80);border-radius:5px;transition:width .1s linear,background-color .15s}.upper-hud .discover-sprint{background:#fff1cc;border-color:#c39c41}.upper-hud .sprint-instruction{margin-bottom:10px}.upper-hud .stamina small{margin-top:7px;font-size:10px}.danger{white-space:nowrap;top:263px;left:50%;transform:translate(-50%)}.bottom-hud{justify-content:center}.bottom-hud .timer{margin:0}.restart-button{color:#355033;background:#e5ecd9;border:1px solid #829771;border-radius:11px;width:100%;margin:-7px 0 22px;padding:13px 18px;font-size:15px;font-weight:600}.restart-button:hover{background:#d7e4c5}.restart-button small{margin-top:4px;font-size:10px;font-weight:400;display:block}.intro{max-height:calc(100vh - 155px);max-height:calc(100dvh - 155px);padding-right:8px;overflow-y:auto}.intro h1{font-size:clamp(44px,4.8vw,68px)}@media (max-width:900px){.upper-hud{grid-template-columns:minmax(0,1fr) minmax(255px,.85fr);gap:12px;top:88px;left:22px;right:22px}.upper-hud .objective{padding:13px}.upper-hud .objective .count{margin-left:0}}@media (max-width:700px){.upper-hud{grid-template-columns:1fr;gap:8px;top:76px;left:15px;right:15px}.upper-hud .objective{align-items:center;gap:9px;padding:10px 12px}.upper-hud .objective strong{font-size:12px}.upper-hud .objective small{max-width:none;font-size:10px}.upper-hud .objective .count{margin-left:auto}.upper-hud .stamina{grid-template-columns:1fr auto;gap:5px 8px;padding:10px 12px;display:grid}.upper-hud .stamina>strong{margin:0;padding:0;font-size:12px}.upper-hud .stamina-percent{grid-area:1/2;font-size:16px;position:static}.upper-hud .sprint-instruction{grid-column:1/-1;margin:0;line-height:1.4}.upper-hud .meter{grid-column:1/-1;height:24px}.upper-hud .stamina small{grid-column:1/-1;margin:0;font-size:9px}.danger{white-space:normal;max-width:calc(100% - 30px);font-size:10px;top:285px}.in-game .map-wrap{transform-origin:100% 0;top:325px;bottom:auto;transform:scale(.62)}.intro{max-height:calc(100vh - 160px);max-height:calc(100dvh - 160px);top:80px;transform:none}.intro h1{font-size:39px}}@media (max-height:600px) and (min-width:701px){.upper-hud{top:76px}.upper-hud .stamina small{display:none}.upper-hud .stamina{padding:10px 14px}.upper-hud .meter{height:22px}.danger{top:222px}.intro{top:78px;transform:none}.intro h1{font-size:42px}}@media (max-height:620px) and (max-width:700px){.upper-hud .objective small,.upper-hud .stamina small{display:none}.upper-hud .meter{height:22px}.danger{top:242px}.in-game .map-wrap{top:280px;transform:scale(.5)}}.briefing-overlay{z-index:10;background:#193b36d9;justify-content:center;align-items:center;padding:15px;display:flex;position:absolute;inset:0}.briefing-overlay[hidden]{display:none}.briefing-overlay .how-to-play{margin:0}.how-to-play:focus{outline:none}@media (min-width:601px) and (max-width:700px){.intro{width:calc(100% - 50px);max-width:480px;left:25px}.vignette{background:linear-gradient(90deg,#eaf0dbf0,#eaf0dbdc 70%,#eaf0db60)}}@media (pointer:coarse) and (min-width:701px){.in-game .map-wrap{top:280px}}.overlay[hidden]{display:none}.menu-option{color:#355033;background:#e7eddd;border:1px solid #bac8ac;border-radius:9px;width:100%;min-height:44px;margin-top:10px;padding:10px 14px;font-size:14px;font-weight:500;display:block}.menu-option:hover{background:#dce7cd}.intro h1:focus{outline:none}.compact-hud-copy{display:none}.stamina>strong span{font:inherit;color:inherit}@media (max-width:700px),(max-height:600px) and (pointer:coarse){.in-game{min-height:0}.in-game .topbar{padding:10px 12px}.in-game .brand{gap:8px;font-size:18px}.in-game .brand-mark{width:30px;height:30px;font-size:35px}.in-game .brand-sub,.in-game .edition{display:none}.in-game .top-actions{gap:5px}.in-game .icon-button{min-height:40px;padding:8px 10px}.in-game .icon-button span{display:none}.upper-hud{grid-template-columns:1fr;gap:5px;top:60px;left:12px;right:12px}.upper-hud .objective{border-radius:9px;align-items:center;gap:8px;padding:5px 10px}.upper-hud .objective strong{font-size:12px}.upper-hud .objective small{margin-top:2px;font-size:10px;line-height:1.3;display:block}.upper-hud .beacon-symbol{font-size:18px}.upper-hud .objective .count{white-space:nowrap;margin-left:auto;font-size:20px;line-height:1.2}.upper-hud .count i{font-size:12px}.full-hud-copy{display:none}.compact-hud-copy{display:inline}.upper-hud .stamina{box-shadow:none;border-radius:9px;grid-template-columns:48px minmax(0,1fr) 34px;align-items:center;gap:8px;padding:6px 10px;display:grid}.upper-hud .stamina>strong{grid-area:1/1;margin:0;padding:0;font-size:11px}.upper-hud .stamina-percent{text-align:right;grid-area:1/3;font-size:12px;position:static}.upper-hud .meter{border-width:1px;grid-area:1/2;height:12px}.upper-hud .stamina{row-gap:4px}.upper-hud .stamina .sprint-instruction{grid-area:2/1/auto/-1;margin:0;font-size:10px;line-height:1.3;display:block}.upper-hud .stamina .sprint-instruction span{font-size:10px}.upper-hud .stamina small{display:none}.danger{white-space:nowrap;max-width:calc(100% - 24px);padding:7px 12px;font-size:11px;top:170px}.in-game .map-wrap.show{transform-origin:100% 0;display:block;top:209px;bottom:auto;right:12px;transform:scale(.75)}.bottom-hud{bottom:126px;left:12px;right:12px}.bottom-hud .timer{font-size:20px}.bottom-hud .timer small{display:none}}@media (min-width:600px) and (max-height:500px) and (pointer:coarse){.upper-hud{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.danger{top:118px}.in-game .map-wrap.show{top:151px}}@media (max-width:700px) and (max-height:620px){.in-game .map-wrap.show{top:184px;transform:scale(.55)}}@media (min-width:600px) and (max-height:500px) and (pointer:coarse){.in-game .map-wrap.show{top:128px;transform:scale(.55)}}.joystick-control{pointer-events:auto;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:5px;display:flex}.joystick{touch-action:none;-webkit-touch-callout:none;background:#f5f6e780;border:2px solid #fff9;border-radius:50%;width:120px;height:120px;position:relative;box-shadow:0 3px 14px #24462c20}.joystick-ring{pointer-events:none;border:1px solid #36594740;border-radius:50%;position:absolute;inset:18px}.joystick-thumb{pointer-events:none;background:#365e49;border:2px solid #f7f7e9;border-radius:50%;width:46px;height:46px;position:absolute;top:calc(50% - 23px);left:calc(50% - 23px);box-shadow:0 3px 8px #24462c40}.joystick-hint{color:#243d35;pointer-events:none;background:#f5f6e7d9;border-radius:8px;padding:3px 8px;font-size:10px;font-weight:600}@media (pointer:coarse){.touch-controls{pointer-events:none;bottom:max(14px,env(safe-area-inset-bottom));left:max(18px,env(safe-area-inset-left));right:max(18px,env(safe-area-inset-right))}.touch-sprint{pointer-events:auto}}@media (pointer:coarse) and (max-height:500px){.joystick{width:100px;height:100px}.joystick-hint{font-size:9px}}.tutorial-coach{pointer-events:auto;color:#243d35;background:#fff6dd;border:2px solid #d5b15d;border-radius:14px;min-width:0;padding:12px 15px;box-shadow:0 4px 20px #214d3526}.tutorial-heading{justify-content:space-between;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.practice-identity{flex-wrap:wrap;align-items:center;gap:5px 8px;min-width:0;display:flex}.practice-identity strong{color:#fff7dd;letter-spacing:.08em;white-space:nowrap;background:#274d3a;border-radius:5px;padding:5px 7px;font-size:11px;line-height:1.1;display:inline-block}.practice-identity span{color:#4f644b;font-size:11px;font-weight:700}.tutorial-heading button{color:#465a43;white-space:nowrap;background:0 0;border:0;min-height:32px;padding:4px 0 4px 8px;font-size:12px;text-decoration:underline}.tutorial-coach h2{margin:5px 0 7px;font-family:Outfit,sans-serif;font-size:22px;line-height:1.2}.tutorial-coach p{color:#324d3e;font-size:15px;line-height:1.5}.tutorial-coach kbd{font:inherit;background:#fff;border:1px solid #9aab90;border-bottom-width:3px;border-radius:5px;padding:0 5px;font-weight:700;display:inline-block}.practice-progress{background:#d7dfca;border-radius:4px;height:4px;margin-top:10px;overflow:hidden}.practice-progress span{background:#4a764a;height:100%;transition:width .1s linear;display:block}.tutorial-coach .play-button{gap:12px;width:100%;min-height:44px;margin-top:12px;padding:10px 16px;font-size:15px}.practice-intro{color:#294532;max-width:330px;font-weight:500;margin-top:12px!important;font-size:12px!important;line-height:1.4!important}.practice-link{color:#355033;background:0 0;border:0;min-height:44px;padding:7px 0;font-size:14px;text-decoration:underline}.skip-practice-link{color:#244331;background:#fff9e9;border:2px solid #2c513d;border-radius:10px;justify-content:center;align-items:center;margin-top:8px;padding:10px 15px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 3px 12px #24462c24}.skip-practice-link:hover{background:#fff2ce}.upper-hud .sprint-instruction .keyboard-instruction{color:#243d35;font-size:16px;font-weight:600}.touch-sprint small{font-size:11px;line-height:1.25}@keyframes practice-glow{0%{box-shadow:0 0 0 3px #e5b34699}to{box-shadow:0 0 0 7px #e5b34622}}.practice-move .joystick,.practice-sprint .touch-sprint,.practice-sprint .stamina,.practice-recover .stamina,.practice-orb .map-wrap,.practice-portal .map-wrap{outline-offset:3px;outline:2px solid #c48e23;animation:1.8s ease-in-out infinite alternate practice-glow}.practice-move .tutorial-coach kbd,.practice-sprint .tutorial-coach kbd{background:#ffe5a0;border-color:#a57626}@media (max-width:700px),(max-height:600px) and (pointer:coarse){.danger{display:none}.upper-hud .nearby-snake{background:#fff0e6;border-color:#b85336}.upper-hud .nearby-snake .compact-hud-copy{color:#853c27}.upper-hud .stamina .sprint-instruction .keyboard-instruction{font-size:11px}.practice .upper-hud{gap:6px}.tutorial-coach{border-radius:9px;padding:7px 10px}.tutorial-heading{gap:3px;font-size:10px}.practice-identity{gap:3px 6px}.practice-identity strong{padding:4px 6px;font-size:10px}.practice-identity span{font-size:10px}.tutorial-heading button{font-size:11px}.skip-practice-link{width:100%;max-width:270px}.tutorial-coach h2{margin:2px 0 5px;font-size:18px}.tutorial-coach p{font-size:13px;line-height:1.35}.practice-progress{margin-top:7px}.practice .map-wrap.show{top:268px;transform:scale(.62)}.practice .stamina .compact-hud-copy{display:none}.practice .stamina>strong .compact-hud-copy{display:inline}}@media (max-width:700px) and (max-height:650px){.practice .map-wrap.show{top:268px;transform:scale(.5)}}@media (min-width:600px) and (max-height:500px) and (pointer:coarse){.practice .map-wrap.show{transform-origin:100% 100%;top:auto;bottom:14px;right:calc(50% - 45px);transform:scale(.48)}}@media (prefers-reduced-motion:reduce){.practice *{animation:none!important}}.lesson-screen{z-index:9;pointer-events:auto;background:#193b36ad;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lesson-card{width:min(460px,100%);max-height:calc(100vh - 48px);color:#243d35;text-align:left;overscroll-behavior:contain;background:#fff6dd;border:1px solid #fff;border-radius:22px;max-height:calc(100dvh - 48px);padding:30px;overflow-y:auto;box-shadow:0 25px 90px #19362c66}.lesson-card .practice-identity span{font-size:13px}.lesson-card h2{letter-spacing:-.8px;margin:10px 0;font-family:Outfit,sans-serif;font-size:34px;line-height:1.12}.lesson-card p{color:#324d3e;font-size:18px;line-height:1.6}.lesson-card kbd{font:inherit;background:#fff;border:1px solid #9aab90;border-bottom-width:3px;border-radius:6px;padding:1px 7px;font-weight:700;display:inline-block}.lesson-card .play-button{gap:12px;width:100%;min-height:52px;margin-top:24px}.lesson-card .play-button .keyboard-instruction,.lesson-card .play-button .touch-instruction{font:inherit}.lesson-card .lesson-enter-hint{margin-top:12px;font-size:14px}.lesson-card .change-mode{min-height:44px}@media (pointer:coarse){.upper-hud .meter>div{background:var(--stamina-touch-fill,#baff80)}.lesson-screen{padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.lesson-card{max-height:calc(100vh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:16px;padding:20px 24px}.lesson-card h2{margin:8px 0;font-size:28px}.lesson-card p{font-size:16px;line-height:1.45}.lesson-card .play-button{min-height:48px;margin-top:16px;padding:12px 16px}.lesson-card .lesson-enter-hint{display:none}}@media (pointer:coarse) and (max-height:360px){.lesson-card{padding:12px 20px}.lesson-card h2{margin:6px 0;font-size:24px}.lesson-card .play-button{margin-top:10px}}.tutorial-coach.awaiting-lesson{visibility:hidden}.pause-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#1f433a29}.pause-overlay .result{max-height:calc(100vh - 24px);background:#f3f3e3f5;max-height:calc(100dvh - 24px);overflow-y:auto}.pause-view small{color:#66775e;margin-top:3px;font-size:10px;font-weight:400;display:block}.paused-peek{z-index:6;left:50%;bottom:max(20px,env(safe-area-inset-bottom));color:#2f4c3b;background:#f3f3e3e0;border:1px solid #fff9;border-radius:14px;align-items:center;gap:12px;padding:8px 8px 8px 14px;font-size:13px;font-weight:600;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 8px 28px #173b3433}.paused-peek button{color:#fffcec;background:#2c513d;border:1px solid #829771;border-radius:9px;min-height:44px;padding:9px 14px;font-size:12px;font-weight:600}.map-surface{width:160px;height:160px;position:relative}.map-wrap .map-markers{pointer-events:none;position:absolute;inset:0}.map-wrap{pointer-events:none;transition:background-color .1s ease-out,box-shadow .1s ease-out}.map-terrain,.map-markers,.map-title,.map-legend{transition:opacity .1s ease-out}@media (max-width:700px),(pointer:coarse){.in-game .map-wrap.map-covered{box-shadow:none;background-color:#f3f3e41f}.in-game .map-covered .map-terrain,.in-game .map-covered .map-title,.in-game .map-covered .map-legend{opacity:.24}.in-game .map-covered .map-markers{opacity:.72}}@media (max-width:600px){.paused-peek{width:calc(100% - 24px);bottom:max(12px,env(safe-area-inset-bottom));justify-content:space-between}.paused-peek button{flex:0 auto}}.difficulty-picker{max-width:390px}.difficulty-picker>div{gap:6px}.difficulty-picker label{padding:10px 8px}.difficulty-picker strong{font-size:11px}@media (max-width:600px){.difficulty-picker{max-width:340px}.difficulty-picker label{padding:8px 6px}}.upper-hud .nearby-snake{background:#fff0e6;border-color:#b85336}.upper-hud .nearby-snake small{color:#853c27}.intro p.island-story{text-align:left;max-width:390px;font-weight:400;line-height:1.7}.objective .count{white-space:nowrap;flex-shrink:0}.rotate-prompt{display:none}@media (pointer:coarse) and (orientation:portrait){.rotate-prompt{z-index:20;background:#193b3647;place-items:center;padding:20px;display:grid;position:fixed;inset:0;overflow-y:auto}.game:not(.allow-portrait)>:not(.rotate-prompt){filter:blur(7px);pointer-events:none}.game.allow-portrait .rotate-prompt{display:none}.rotate-card{text-align:center;background:#f8f9e9f0;border:1px solid #fff9;border-radius:20px;width:min(320px,100%);padding:28px 24px;box-shadow:0 18px 55px #173b3440}.rotate-illustration{color:#31543e;width:112px;height:90px;margin:0 auto 18px;display:block}.rotate-card h2{margin:0;font-family:Outfit,sans-serif;font-size:25px;line-height:1.15}.rotate-card button{color:#31543e;background:#eff3e4;border:1px solid #9baa8e;border-radius:9px;min-height:44px;margin-top:22px;padding:9px 16px;font-size:13px;font-weight:600}}.control-side-setting{min-width:0;display:none}@media (pointer:coarse){.control-side-setting{text-align:left;border:0;border-top:1px solid #a9bd9e;margin:14px 0 0;padding:10px 0 0;display:block}.control-side-setting legend{color:#254331;padding:0 6px 0 0;font-size:14px;font-weight:700}.control-position-options{gap:6px;margin-top:5px;display:flex}.control-position-options button{color:#254331;background:#fffef2;border:1px solid #6e8868;border-radius:9px;flex:1;min-height:44px;padding:8px 12px;font-size:14px;font-weight:600}.control-position-options button[aria-pressed=true]{color:#fffcec;background:#2c513d;border-color:#2c513d;box-shadow:inset 0 0 0 1px #fffcec}.control-position-options button[aria-pressed=true]:after{content:" ✓"}.control-side-setting small{color:#3b563e;margin-top:6px;font-size:12px;line-height:1.4;display:block}.touch-controls.joystick-right{flex-direction:row-reverse}}.practice-panel{display:contents}.lesson-compact,.landscape-objective-copy,.landscape-stamina-hint,.practice-step-short{display:none}.welcome-screen{display:contents}@media (orientation:portrait) and (max-width:900px){.game:not(.in-game) .welcome-screen{top:100px;bottom:max(60px,calc(env(safe-area-inset-bottom) + 40px));left:max(20px,env(safe-area-inset-left));right:max(20px,env(safe-area-inset-right));z-index:2;overscroll-behavior:contain;padding:0 2px 12px;display:block;position:absolute;overflow-y:auto}.game:not(.in-game) .welcome-screen .intro{width:100%;max-width:none;max-height:none;padding:0;position:static;top:auto;left:auto;overflow:visible;transform:none}.game:not(.in-game) .welcome-screen .scores-home{z-index:auto;width:100%;max-width:none;max-height:none;margin-top:20px;position:static;overflow:visible}}.practice-complete-actions{gap:8px;margin-top:12px;display:flex}.practice-complete-actions .play-button{flex:1;gap:10px;min-width:0;margin:0}.practice-again{color:#254331;background:#f7fae9;border:1px solid #64835c;border-radius:10px;flex:1;min-height:44px;padding:10px 12px;font-size:14px;font-weight:600}.practice-again:hover{background:#e3edd7}.resume-cue{z-index:4;color:#254331;text-align:center;pointer-events:none;background:#f8faeba6;border:1px solid #809777;border-radius:16px;width:225px;padding:17px 22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 24px #24462c18}.resume-cue strong{font-family:Outfit,sans-serif;font-size:30px;line-height:1.2;display:block}.resume-cue>span{margin-top:4px;font-size:13px;display:block}.resume-countdown{transform-origin:0;background:#416e46;border-radius:3px;height:4px;margin-top:12px;animation:1s linear forwards resume-ready}@keyframes resume-ready{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.resume-countdown{animation:none}}@media (pointer:coarse) and (orientation:landscape) and (max-height:600px){.game{--touch-size:clamp(88px,27vh,116px);--map-size:clamp(48px,calc(100vh - var(--touch-size) - 128px - env(safe-area-inset-bottom)),96px);--edge-left:max(12px,env(safe-area-inset-left));--edge-right:max(12px,env(safe-area-inset-right));min-height:0}.game .topbar{padding:6px var(--edge-right) 6px var(--edge-left);height:50px}.game .brand{gap:8px;font-size:18px}.game .brand-mark{width:30px;height:30px;font-size:35px}.game .brand-sub,.game .edition,.game .icon-button span{display:none}.game .top-actions{gap:5px}.game .icon-button{min-height:40px;padding:8px 10px}.game:not(.in-game) .intro{top:56px;bottom:max(8px,env(safe-area-inset-bottom));left:var(--edge-left);right:var(--edge-right);grid-template-columns:minmax(190px,1fr) minmax(245px,1fr);gap:14px;width:auto;max-width:none;max-height:none;padding:0;display:grid;overflow:hidden;transform:none}.intro-copy,.intro-actions{overscroll-behavior:contain;min-height:0;overflow-y:auto}.intro-copy{padding:5px 0}.intro-actions{color:#254331;background:#f5f6e8;border:1px solid #b5c4a9;border-radius:14px;padding:14px;scroll-padding:12px;box-shadow:0 4px 18px #24462c18}.intro .intro-kicker{margin-bottom:8px;font-size:11px}.intro h1{letter-spacing:-1.6px;margin-bottom:10px;font-size:clamp(29px,9vh,42px);line-height:1.02}.intro p.island-story{color:#314e3c;font-size:13px;line-height:1.5}.intro .difficulty-picker{max-width:none;margin:0}.intro .difficulty-picker label{background:#fffef2;min-height:44px;padding:9px 5px}.intro .difficulty-picker label.selected{background:#dce9cb;box-shadow:inset 0 0 0 1px #628450}.intro .difficulty-picker legend{color:#254331;font-size:14px;font-weight:700}.intro .difficulty-picker strong{font-size:12px}.intro .difficulty-picker span{color:#3c573d;font-size:11px}.intro .difficulty-picker p{color:#3c573d;margin-top:7px;font-size:12px;line-height:1.4}.intro .control-side-setting{margin-top:12px;padding-top:8px}.intro .play-button{width:100%;min-width:0;min-height:48px;margin-top:12px;padding:10px 13px;font-size:16px}.intro .practice-intro{color:#3c573d;margin-top:10px!important;font-size:13px!important;line-height:1.4!important}.intro .practice-link{color:#254331;min-height:44px;margin-top:4px;font-size:14px}.intro .skip-practice-link{min-height:44px;padding:8px 10px}.game:not(.in-game) footer{display:none}.game:not(.in-game) .scores-home{top:5px;right:calc(var(--edge-right) + 189px);z-index:4;width:140px;max-height:40px;padding:7px 9px;font-size:10px;bottom:auto}.game:not(.in-game) .scores-home[open]{max-height:calc(100vh - 12px);max-height:calc(100dvh - 12px);overflow-y:auto}.in-game .upper-hud{top:6px;left:var(--edge-left);right:calc(var(--edge-right) + 50px);grid-template-columns:minmax(0,1fr) minmax(120px,.65fr);align-items:start;gap:8px}.in-game .brand{display:none}.in-game .topbar{pointer-events:none}.in-game .top-actions{pointer-events:auto;margin-left:auto}.in-game .upper-hud .objective{width:auto;max-width:none;min-height:44px;box-shadow:none;border-radius:9px;gap:7px;padding:6px 8px;position:static}.in-game .objective .objective-details,.in-game .objective .count{display:none}.in-game .landscape-objective-copy{color:#294b37;font-size:12px;font-weight:600;line-height:1.4;display:inline}.in-game .escape-objective .landscape-objective-copy{color:#206b83}.game .upper-hud .stamina{pointer-events:none;z-index:2;color:#244630;width:100%;max-width:240px;text-shadow:none;background:#f8faed;border:1px solid #9cac91;border-radius:9px;grid-template-columns:55px minmax(0,1fr) 32px;justify-self:end;align-items:center;gap:5px 6px;margin:0;padding:6px 10px;display:grid;position:relative;inset:auto;box-shadow:0 2px 8px #24462c18}.game .upper-hud .stamina>strong{grid-area:1/1;margin:0;padding:0;font-size:12px}.game .upper-hud .stamina-percent{color:#244630;grid-area:1/3;font-size:12px;position:static}.game .upper-hud .stamina .meter{background:var(--stamina-track,#294657);height:12px;text-shadow:none;border:1px solid #ffffef;grid-area:2/1/auto/-1;box-shadow:0 0 0 1px #536c7c}.game .upper-hud .stamina .meter>div{background:var(--stamina-touch-fill,#baff80)}.game .upper-hud .stamina .sprint-instruction,.game .upper-hud .stamina>small{display:none}.game .upper-hud .stamina .landscape-stamina-hint{color:#344c38;text-align:center;grid-area:1/2;font-size:11px;line-height:1.3;display:block}.in-game .run-timer{top:54px;bottom:auto;left:auto;right:var(--edge-right);width:var(--map-size);justify-content:center}.in-game .run-timer .timer{color:#244630;text-shadow:0 1px 3px #ffffef;margin:0;font-size:18px;font-weight:600;line-height:22px}.in-game:not(.practice) .map-wrap.show{top:82px}.in-game .map-wrap.show{top:56px;bottom:auto;right:var(--edge-right);width:var(--map-size);transform-origin:100% 0;border-radius:10px;padding:0;transform:none}.in-game .map-surface{width:var(--map-size);height:var(--map-size)}.in-game .map-wrap canvas{width:100%;height:100%}.in-game .map-title,.in-game .map-legend{display:none}.in-game .touch-controls{left:var(--edge-left);right:var(--edge-right);bottom:max(8px,env(safe-area-inset-bottom));z-index:2;align-items:flex-start}.joystick{width:var(--touch-size);height:var(--touch-size);background:#f5f6e7ae}.joystick-ring{inset:16px}.joystick-hint{font-size:11px}.touch-sprint{width:var(--touch-size);height:var(--touch-size);border-radius:50%;margin:0;font-size:17px;box-shadow:0 3px 14px #24462c28}.touch-sprint small{max-width:85px;margin:4px auto 0;font-size:11px}.practice .upper-hud{max-width:none;display:block}.practice-panel{box-shadow:none;pointer-events:none;background:0 0;border:0;grid-template-columns:minmax(0,1fr) minmax(120px,.65fr);align-items:start;gap:8px;padding:0;display:grid}.practice-panel .tutorial-coach{box-shadow:none;background:#fff6ddf0;border:1px solid #d5b15d;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;padding:6px 8px;transition:opacity .12s ease-out;display:grid}.practice-panel .tutorial-heading{display:contents}.practice-panel .practice-identity{grid-area:1/1}.practice-panel .tutorial-coach>[role=status]{grid-area:2/1}.practice-panel .tutorial-heading button{grid-area:1/2/3;align-self:center;min-height:44px;font-size:12px}.practice-panel .practice-step-full{display:none}.practice-panel .practice-step-short{display:inline}.practice-panel .tutorial-coach h2,.practice-panel .lesson-full{display:none}.practice-panel .lesson-compact{display:inline}.practice-panel .tutorial-coach p{color:#254331;margin-top:3px;font-size:14px;line-height:1.35}.practice-panel .practice-identity strong{padding:3px 5px;font-size:11px}.practice-panel .practice-identity span{font-size:11px}.practice-panel .practice-progress{display:none}.practice-panel.coach-covered{box-shadow:none;pointer-events:none;background:#fff6dd1a;border-color:#0000}.practice-panel.coach-covered .tutorial-coach{opacity:.24;pointer-events:none}.practice-panel.coach-covered .stamina{opacity:1}.practice-panel .practice-complete-actions{grid-column:1/-1;margin-top:8px}.practice-panel .practice-complete-actions .play-button{width:auto;margin:0}.practice-done .practice-panel{grid-template-columns:minmax(0,1fr)}.practice-done .practice-panel .stamina{display:none}.result{width:min(570px,100vw - 24px);max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);padding:18px 22px;overflow-y:auto}}@supports (height:100dvh){@media (pointer:coarse) and (orientation:landscape) and (max-height:600px){.game{--touch-size:clamp(88px,27dvh,116px);--map-size:clamp(48px,calc(100dvh - var(--touch-size) - 128px - env(safe-area-inset-bottom)),96px)}}}@media (pointer:coarse) and (orientation:landscape) and (max-height:360px){.in-game .map-legend,.joystick-hint{display:none}.practice-panel .practice-identity span{font-weight:400}}.game .topbar .sound-toggle{color:#274b35;background:#e9f5dc;border-color:#749564;flex-shrink:0;justify-content:center;gap:6px;width:100px;min-width:100px;padding:8px 10px}.game .topbar .sound-toggle span{white-space:nowrap;font-size:12px;font-weight:600;display:inline}.game .topbar .sound-toggle svg{flex-shrink:0}.game .topbar .sound-toggle[aria-pressed=false]{color:#4f594e;background:#e2e7da;border-color:#7d8877}@media (pointer:coarse) and (orientation:landscape) and (max-height:600px){.game:not(.in-game) .scores-home>summary{font-size:12px}.game:not(.in-game) .scores-home>summary>span{display:none}}@media (pointer:coarse) and (orientation:landscape) and (max-height:600px) and (max-width:760px){.game .upper-hud .stamina{grid-template-columns:minmax(0,1fr) 32px}.game .upper-hud .stamina-percent{grid-column:2}.game .upper-hud .stamina .landscape-stamina-hint,.practice-panel .tutorial-heading button{display:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--welcome-surface:#f5f6e8}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (orientation:portrait) and (max-width:900px){.game:not(.in-game) .welcome-screen .intro{background:var(--welcome-surface);border-radius:14px;padding:14px}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark only}.stamina .meter{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light only}.game .topbar .theme-toggle{color:#274b35;background:#e9f5dc;border-color:#749564;flex-shrink:0;justify-content:center;gap:4px;width:72px;min-width:72px;padding:8px 6px}.game .topbar .theme-toggle span{white-space:nowrap;font-size:12px;font-weight:600;display:inline}.game .topbar .theme-toggle svg{flex-shrink:0}.pause-setting{text-align:left;justify-content:space-between;align-items:center;gap:12px;margin:14px 0;font-size:14px;font-weight:600;display:flex}.game .pause-setting .icon-button{justify-content:center;gap:6px;min-width:112px;min-height:44px;padding:9px 12px}.game .pause-setting .icon-button span{font-size:14px;font-weight:600;display:inline}.game .pause-setting .icon-button svg{flex-shrink:0}@media (pointer:coarse) and (max-width:480px){.game:not(.in-game) .brand>span:last-child{display:none}}:root[data-theme=dark]{--ui-surface:#1c3029;--ui-raised:#284237;--ui-text:#edf4e6;--ui-muted:#bbcebe;--ui-border:#76917c;--ui-action:#bddd99;--ui-action-text:#1c3029;--ui-warning:#f0d280;--ui-warning-surface:#413821;--ui-portal:#9cdeed;--ui-portal-surface:#1d3d46;--welcome-surface:var(--ui-surface)}:root[data-theme=dark] body{color:var(--ui-text);background:var(--ui-surface)}:root[data-theme=dark] .game:not(.in-game) .intro{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:16px;padding:20px}:root[data-theme=dark] .game .edition,:root[data-theme=dark] .game footer>span{background:var(--ui-surface);color:var(--ui-muted);border-radius:8px;padding:5px 8px}:root[data-theme=dark] .game .vignette{background:linear-gradient(90deg,#15271ff5,#15271fe8 23%,#15271f66 46%,#0000 70%)}:root[data-theme=dark] .game.in-game .vignette{background:linear-gradient(#15271f55,#0000 22% 85%,#15271f20)}:root[data-theme=dark] .game .brand,:root[data-theme=dark] .game h1,:root[data-theme=dark] .game .intro h1{color:var(--ui-text)}:root[data-theme=dark] .game .brand{background:var(--ui-surface);box-shadow:0 0 0 6px var(--ui-surface);border-radius:8px}:root[data-theme=dark] .game .bottom-hud .timer{background:var(--ui-surface);color:var(--ui-text);text-shadow:none;border-radius:8px;padding:2px 6px}:root[data-theme=dark] .game .brand-mark{border-color:var(--ui-border)}:root[data-theme=dark] .game .intro p,:root[data-theme=dark] .game .intro p.island-story,:root[data-theme=dark] .game .intro .practice-intro,:root[data-theme=dark] .game .intro .difficulty-picker legend,:root[data-theme=dark] .game .intro .difficulty-picker span,:root[data-theme=dark] .game .intro .difficulty-picker p,:root[data-theme=dark] .game .brand-sub,:root[data-theme=dark] .game .edition,:root[data-theme=dark] .game .intro-kicker,:root[data-theme=dark] .game footer{color:var(--ui-muted)}:root[data-theme=dark] .game .intro-actions,:root[data-theme=dark] .game .result,:root[data-theme=dark] .game .how-to-play,:root[data-theme=dark] .game .scores-home,:root[data-theme=dark] .game .lesson-card,:root[data-theme=dark] .game .rotate-card{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border)}:root[data-theme=dark] .game .pause-overlay .result{background:#1c3029f5}:root[data-theme=dark] .game .rotate-card{background:#1c3029f0}:root[data-theme=dark] .game .result p,:root[data-theme=dark] .game .result>small,:root[data-theme=dark] .game .how-to-play p,:root[data-theme=dark] .game .lesson-card p,:root[data-theme=dark] .game .scores-home>summary>span,:root[data-theme=dark] .game .scores-heading>span,:root[data-theme=dark] .game .score-rank,:root[data-theme=dark] .game .score-outcome small,:root[data-theme=dark] .game .highscores .scores-rule,:root[data-theme=dark] .game .highscores .scores-storage,:root[data-theme=dark] .game .highscores .scores-empty{color:var(--ui-muted)}:root[data-theme=dark] .game .highscores{border-color:var(--ui-border)}:root[data-theme=dark] .game .current-score{background:var(--ui-raised)}:root[data-theme=dark] .game .personal-best{color:var(--ui-action)}:root[data-theme=dark] .game .difficulty-picker legend,:root[data-theme=dark] .game .difficulty-picker span,:root[data-theme=dark] .game .difficulty-picker p,:root[data-theme=dark] .game .control-side-setting legend,:root[data-theme=dark] .game .control-side-setting small{color:var(--ui-muted)}:root[data-theme=dark] .game .difficulty-picker label,:root[data-theme=dark] .game .intro .difficulty-picker label,:root[data-theme=dark] .game .control-position-options button,:root[data-theme=dark] .game .menu-option,:root[data-theme=dark] .game .restart-button,:root[data-theme=dark] .game .practice-again,:root[data-theme=dark] .game .rotate-card button{background:var(--ui-raised);color:var(--ui-text);border-color:var(--ui-border)}:root[data-theme=dark] .game .difficulty-picker label.selected,:root[data-theme=dark] .game .intro .difficulty-picker label.selected{border-color:var(--ui-action);box-shadow:inset 0 0 0 1px var(--ui-action);background:#35503c}:root[data-theme=dark] .game .control-side-setting{border-color:var(--ui-border)}:root[data-theme=dark] .game .play-button,:root[data-theme=dark] .game .paused-peek button,:root[data-theme=dark] .game .control-position-options button[aria-pressed=true]{background:var(--ui-action);color:var(--ui-action-text);border-color:var(--ui-action)}:root[data-theme=dark] .game .play-button:hover{background:#cceaac}:root[data-theme=dark] .game .menu-option:hover,:root[data-theme=dark] .game .restart-button:hover,:root[data-theme=dark] .game .practice-again:hover{background:#35503c}:root[data-theme=dark] .game .change-mode,:root[data-theme=dark] .game .practice-link,:root[data-theme=dark] .game .intro .practice-link{color:var(--ui-text)}:root[data-theme=dark] .game .skip-practice-link{background:var(--ui-raised);border-color:var(--ui-border)}:root[data-theme=dark] .game .pause-view small{color:var(--ui-muted)}:root[data-theme=dark] .game .result-icon,:root[data-theme=dark] .game .footer-flower{color:var(--ui-warning)}:root[data-theme=dark] .game .error{color:#ffb5b5}:root[data-theme=dark] .game .icon-button,:root[data-theme=dark] .game .topbar .sound-toggle,:root[data-theme=dark] .game .topbar .sound-toggle[aria-pressed=false]{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border)}:root[data-theme=dark] .game .topbar .sound-toggle[aria-pressed=true]{background:var(--ui-raised);border-color:var(--ui-action)}:root[data-theme=dark] .game .upper-hud .objective,:root[data-theme=dark] .game .upper-hud .stamina,:root[data-theme=dark] .game .tutorial-coach,:root[data-theme=dark] .game .practice-panel .tutorial-coach{background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border)}:root[data-theme=dark] .game .upper-hud .stamina .meter{background:var(--stamina-track,#294657);border-color:var(--ui-border);box-shadow:none}:root[data-theme=dark] .game .upper-hud .discover-sprint,:root[data-theme=dark] .game .upper-hud .nearby-snake{background:var(--ui-warning-surface);border-color:var(--ui-warning)}:root[data-theme=dark] .game .upper-hud .escape-objective{background:var(--ui-portal-surface);border-color:var(--ui-portal)}:root[data-theme=dark] .game .escape-objective .beacon-symbol,:root[data-theme=dark] .game .upper-hud .escape-objective .landscape-objective-copy{color:var(--ui-portal)}:root[data-theme=dark] .game .beacon-symbol{color:#d89aff}:root[data-theme=dark] .game .upper-hud .objective small,:root[data-theme=dark] .game .upper-hud .nearby-snake small,:root[data-theme=dark] .game .upper-hud .nearby-snake .compact-hud-copy,:root[data-theme=dark] .game .upper-hud .objective .count i,:root[data-theme=dark] .game .upper-hud .landscape-objective-copy,:root[data-theme=dark] .game .upper-hud .stamina strong,:root[data-theme=dark] .game .upper-hud .stamina strong span,:root[data-theme=dark] .game .upper-hud .stamina-percent,:root[data-theme=dark] .game .upper-hud .stamina .sprint-instruction span,:root[data-theme=dark] .game .upper-hud .stamina .sprint-instruction .keyboard-instruction,:root[data-theme=dark] .game .upper-hud .stamina .landscape-stamina-hint,:root[data-theme=dark] .game .upper-hud .stamina small{color:var(--ui-text)}:root[data-theme=dark] .game .tutorial-coach p,:root[data-theme=dark] .game .practice-panel .tutorial-coach p,:root[data-theme=dark] .game .practice-identity span,:root[data-theme=dark] .game .tutorial-heading button{color:var(--ui-muted)}:root[data-theme=dark] .game .practice-identity strong{background:var(--ui-action);color:var(--ui-action-text)}:root[data-theme=dark] .game .practice-progress{background:var(--ui-raised)}:root[data-theme=dark] .game .practice-progress span{background:var(--ui-action)}:root[data-theme=dark] .game .lesson-card kbd,:root[data-theme=dark] .game .tutorial-coach kbd,:root[data-theme=dark] .game .sprint-instruction kbd{background:var(--ui-raised);color:var(--ui-text);border-color:var(--ui-border)}:root[data-theme=dark] .game .touch-sprint{background:var(--ui-warning-surface);color:var(--ui-warning);border-color:var(--ui-warning)}:root[data-theme=dark] .game .joystick{border-color:var(--ui-border);background:#1c3029b8}:root[data-theme=dark] .game .joystick-ring{border-color:var(--ui-border)}:root[data-theme=dark] .game .joystick-thumb{background:var(--ui-action);border-color:var(--ui-surface)}:root[data-theme=dark] .game .joystick-hint{background:var(--ui-surface);color:var(--ui-text)}:root[data-theme=dark] .game .map-wrap{background:#1c3029ed}:root[data-theme=dark] .game .map-title,:root[data-theme=dark] .game .map-title span,:root[data-theme=dark] .game .map-legend{color:var(--ui-muted)}:root[data-theme=dark] .game .paused-peek{color:var(--ui-text);border-color:var(--ui-border);background:#1c3029e0}:root[data-theme=dark] .game .resume-cue{color:var(--ui-text);border-color:var(--ui-border);background:#1c3029a6}:root[data-theme=dark] .game .resume-countdown{background:var(--ui-action)}:root[data-theme=dark] .game .rotate-illustration{color:var(--ui-action)}@media (orientation:portrait) and (max-width:900px){:root[data-theme=dark] .game:not(.in-game) .intro{padding:14px}:root[data-theme=dark] .game:not(.in-game) .vignette{background:linear-gradient(#15271ff5,#15271fe6 65%,#15271f99)}}@media (pointer:coarse) and (orientation:landscape) and (max-height:600px){:root[data-theme=dark] .game:not(.in-game) .intro{background:0 0;border:0;padding:0}:root[data-theme=dark] .game .intro-copy{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:14px;padding:14px}}@media (max-width:700px),(pointer:coarse){:root[data-theme=dark] .game.in-game .map-wrap.map-covered{background:#1c30291f}}
