.st-nudge{font-family:var(--font-display);color:var(--ink-soft);align-items:center;gap:6px;font-size:15px;font-weight:600;line-height:1;animation:.52s cubic-bezier(.2,.9,.3,1) both st-nudge-in;display:inline-flex}.st-nudge-paint{border:2px solid var(--ink);background:var(--gr-paint,var(--snow-deep));border-radius:999px;flex:none;width:14px;height:14px}@keyframes st-nudge-in{0%{opacity:0;transform:translateY(4px)}}@media (prefers-reduced-motion:reduce){.st-nudge{animation:none}}.st-map-wrap{z-index:0;touch-action:manipulation;--st-node:44px;--st-node-name:54px;--st-rail:52px;background:#4f9be0;position:fixed;inset:0;overflow:clip}@media (width>=640px){.st-map-wrap{--st-node:48px}}@media (height<=480px){.st-map-wrap{--st-node:44px}}.st-map{width:100%;height:100%;display:block}.st-track-kerb-base{fill:none;stroke:#fff;stroke-width:4.8px;stroke-linecap:butt}.st-track-kerb{fill:none;stroke:var(--kerb);stroke-width:4.8px;stroke-linecap:butt;stroke-dasharray:.55 .55}.st-track{fill:none;stroke:var(--asphalt);stroke-width:3.2px;stroke-linecap:round}.st-track-line{fill:none;stroke:#ffffffd9;stroke-width:.28px;stroke-linecap:round;stroke-dasharray:1.3 1.1}.st-region-div .st-track-kerb{stroke:#d2452f}.st-region-div .st-track{stroke:#4a4239}.st-region-mul .st-track-kerb{stroke:#e2533f}.st-region-mul .st-track{stroke:#5c6068}.st-region-sub .st-track-kerb{stroke:#ef6d4a}.st-region-sub .st-track{stroke:#2f4250}.st-track-kerb-base.st-edge-locked{stroke:#fdfefe}.st-region .st-track-kerb.st-edge-locked{stroke:#eca8a7}.st-region .st-track.st-edge-locked{stroke:#a7acb4}.st-track-line.st-edge-locked{stroke:#fff6}.st-peak-far{fill:#a9bcd3}.st-peak-near{fill:#7d93b0}.st-peak-cap{fill:#f7fafe}.st-ground{fill:var(--snow)}.st-drift{fill:var(--ice);opacity:.45}.st-sprig{fill:var(--pine)}.st-sprig-mark{fill:none;stroke:#fff;stroke-width:.35px;stroke-linecap:round}.st-sea{fill:#4fb3d9}.st-region-div .st-peak-far{fill:#d29a6c}.st-region-div .st-peak-near{fill:#a5643f}.st-region-div .st-peak-cap{fill:#f2ddb6}.st-region-div .st-ground{fill:#d99f66}.st-region-div .st-drift{fill:#f2c98a;opacity:.4}.st-region-div .st-sprig{fill:#6e9a5c}.st-region-div .st-sprig-mark{stroke:#4f7743}.st-region-mul .st-peak-far{fill:#93b9cb}.st-region-mul .st-peak-near{fill:#719fb7}.st-region-mul .st-ground{fill:#eddfb8}.st-region-mul .st-drift{fill:#fdfbf3;opacity:.5}.st-region-mul .st-sprig{fill:#a9743f}.st-region-mul .st-sprig-mark{stroke:#86b25c;stroke-width:.5px}.st-region-sub .st-peak-far{fill:#1d5a72}.st-region-sub .st-peak-near{fill:#16536b}.st-region-sub .st-ground{fill:#cfc08f}.st-region-sub .st-drift{fill:#8a7d55;opacity:.45}.st-region-sub .st-sprig{fill:#3fb98c}.st-region-sub .st-sprig-mark{stroke:#1b7660}.st-map-nodes,.st-map-board{pointer-events:none;position:absolute;inset:0}.st-node{width:var(--st-node);height:var(--st-node);pointer-events:auto;cursor:pointer;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.st-node:focus-visible{outline:3px solid var(--sky);outline-offset:5px;border-radius:50%}.st-node-disc{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:50%;place-items:center;display:grid;position:absolute;inset:0}.st-node-open .st-node-disc{background:#fff}.st-node-started .st-node-disc{background:var(--go)}.st-node-mastered .st-node-disc{background:var(--sun)}.st-node-locked .st-node-disc{background:var(--rock);border-color:var(--ink-soft);box-shadow:0 3px 0 var(--ink-soft)}.st-node-on .st-node-disc{box-shadow:0 3px 0 var(--ink), 0 0 0 4px #fff, 0 0 0 7px var(--ink)}.st-node:hover .st-node-disc{transform:translateY(-1px)}.st-node-glyph{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);pointer-events:none;font-size:17px;font-weight:700;line-height:1}.st-node-locked .st-node-glyph{color:#22263a8c}.st-node-next{border:3px solid var(--go-deep);border-radius:50%;position:absolute;inset:-6px}.st-node-lock{width:19px;height:19px;position:absolute;top:-4px;right:-6px}.st-node-lock-plate{fill:var(--snow);stroke:var(--ink);stroke-width:1.1px}.st-node-lock-body{fill:var(--ink)}.st-node-lock-shackle{fill:none;stroke:var(--ink);stroke-width:1.7px;stroke-linecap:round}.st-node-flag{width:20px;height:22px;position:absolute;top:-15px;right:-12px}.st-node-flag-pole{stroke:var(--ink);stroke-width:1.4px;stroke-linecap:round}.st-node-flag-dark{fill:#22263a;stroke:#22263a;stroke-width:.4px}.st-node-flag-pale{fill:#fff;stroke:#22263a;stroke-width:.4px}.st-node-stars{pointer-events:none;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)}.st-node-stars .st-star-row svg{width:13px;height:13px;display:block}.st-node-name{width:var(--st-node-name);font-family:var(--font-display);text-align:center;color:var(--ink);text-shadow:0 1px #fff,0 -1px #fff,1px 0 #fff,-1px 0 #fff;pointer-events:none;font-size:11px;font-weight:600;line-height:1.18;position:absolute;top:calc(100% + 22px);left:50%;transform:translate(-50%)}.st-node-above .st-node-name{top:auto;bottom:calc(100% + 10px)}.st-node-locked .st-node-name{color:var(--ink-soft)}.st-map-plate{font-family:var(--font-display);white-space:nowrap;color:var(--ink);border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);pointer-events:none;background:#fff;border-radius:999px;padding:3px 12px 4px;font-size:15px;font-weight:700;line-height:1.15;position:absolute;transform:translateY(-50%)}.st-map-regions{padding:6px calc(8px + var(--safe-right)) calc(6px + var(--safe-bottom)) calc(8px + var(--safe-left));z-index:3;gap:6px;display:flex;position:absolute;bottom:0;left:0;right:0}.st-map-region{min-width:0;min-height:40px;font-family:var(--font-display);color:var(--ink);border:3px solid var(--ink);cursor:pointer;touch-action:manipulation;background:#ffffffe0;border-radius:14px;flex:1 1 0;padding:5px 4px;font-size:min(14px,3.3vw);font-weight:600;line-height:1.12}.st-map-region-on{background:var(--sun);box-shadow:0 3px 0 var(--ink)}.st-map-region:focus-visible{outline:3px solid var(--sky);outline-offset:2px}@media (width<=480px){.st-node-name{font-size:13px}}.st-map-bar{z-index:5;padding:calc(10px + var(--safe-top)) calc(clamp(10px, 3vw, 32px) + var(--safe-right)) 10px calc(clamp(10px, 3vw, 32px) + var(--safe-left));pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:fixed;top:0;left:0;right:0}.st-map-bar>*{pointer-events:auto}.st-map-car{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:inline-flex}@media (width<=400px){.st-map-bar{gap:8px}.st-map-car{padding:8px 16px;font-size:16px}}.st-map-tray{z-index:4;width:300px;position:absolute}.st-map-tray-docked{left:calc(8px + var(--safe-left));right:calc(8px + var(--safe-right));bottom:calc(var(--st-rail) + 8px + var(--safe-bottom));width:auto;max-width:420px;margin:0 auto}@media (width>=480px) and (height<=480px){.st-map-tray-docked{left:auto;right:calc(8px + var(--safe-right));width:clamp(230px,30vw,300px);max-width:none;margin:0}}@media (prefers-reduced-motion:reduce){.st-node:hover .st-node-disc{transform:none}}.st-map-3d{touch-action:none;z-index:0;position:absolute;inset:0}.st-map-board{z-index:1}.st-map-pin{visibility:hidden;width:0;height:0;position:absolute;top:0;left:0}.st-won{flex-direction:column;align-items:center;gap:8px;animation:.46s cubic-bezier(.2,1.4,.4,1) .76s both st-won-in;display:flex}.st-won-paints{gap:10px;display:flex}.st-won-paint{border:3px solid var(--ink);width:46px;height:46px;box-shadow:0 4px 0 var(--ink);background:var(--gr-paint,var(--snow-deep));border-radius:14px}.st-won-line{font-family:var(--font-display);font-weight:700;font-size:var(--step-2);margin:0}.st-big-stars .st-star-row{gap:inherit}@keyframes st-won-in{0%{opacity:0;transform:scale(.8)}}@media (orientation:landscape) and (height<=520px){.st-won{flex-direction:row;gap:10px}.st-won-paints{gap:6px}.st-won-paint{width:30px;height:30px;box-shadow:0 3px 0 var(--ink);border-width:2px;border-radius:10px}.st-won-line{font-size:var(--step-1)}}@media (prefers-reduced-motion:reduce){.st-won{animation:none}}.st-title{min-height:100dvh;padding:max(24px, var(--safe-top)) max(20px, var(--safe-right)) max(24px, var(--safe-bottom)) max(20px, var(--safe-left));background:linear-gradient(180deg, var(--sky) 0%, var(--ice) 45%, var(--snow) 70%);place-items:start center;display:grid;position:relative;overflow:hidden}.st-title-peaks{pointer-events:none;height:min(42vh,300px);position:absolute;bottom:0;left:0;right:0}.st-title-peaks span{position:absolute;inset:0}.st-title-ridge-far{background:var(--rock);clip-path:polygon(0 100%,0 62%,14% 30%,27% 58%,43% 18%,58% 52%,72% 26%,88% 56%,100% 38%,100% 100%)}.st-title-ridge-near{background:var(--snow-deep);clip-path:polygon(0 100%,0 78%,18% 48%,34% 76%,52% 40%,70% 72%,86% 54%,100% 80%,100% 100%)}.st-title-stage{pointer-events:none;animation:.7s ease-out both st-title-arrive;position:absolute;inset:0}@keyframes st-title-arrive{0%{opacity:0}to{opacity:1}}.st-title-col{text-align:center;flex-direction:column;align-items:center;gap:clamp(8px,2.2vh,20px);width:100%;max-width:560px;display:flex;position:relative}.st-title-name{font-family:var(--font-display);color:var(--snow);text-shadow:.07em .07em 0 var(--ink);margin:0;font-size:clamp(34px,min(11vw,9vh),64px);font-weight:700;line-height:1.05}.st-title-play{padding:.45em 1.6em;font-size:clamp(24px,3.6vh,34px)}@media (prefers-reduced-motion:reduce){.st-title-stage{animation:none}}@font-face{font-family:Fredoka;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Fredoka-SemiBold.woff2)format("woff2")}@font-face{font-family:Fredoka;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Fredoka-Bold.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/AtkinsonHyperlegible-Regular.woff2)format("woff2")}:root{--snow:#f6f9fc;--snow-deep:#dde7f0;--ice:#bfe0f7;--sky:#4f9be0;--ink:#22263a;--ink-soft:#5b6275;--asphalt:#474d5b;--asphalt-deep:#2c3039;--kerb:#e0463f;--go:#4cbb6a;--go-deep:#2f8f4e;--sun:#ffc53d;--sun-deep:#e6a600;--stop:#e8465e;--rock:#a7b0c0;--pine:#2f6f53;--font-display:"Fredoka", "Atkinson Hyperlegible", system-ui, -apple-system, sans-serif;--font-body:"Atkinson Hyperlegible", system-ui, -apple-system, sans-serif;--step-0:17px;--step-1:21px;--step-2:27px;--step-3:34px;--step-4:44px;--step-5:56px}*,:before,:after{box-sizing:border-box}: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,#root{height:100%}body{font-family:var(--font-body);font-size:var(--step-0);color:var(--ink);background:var(--snow);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}button{font:inherit}.st-btn{font-family:var(--font-display);font-weight:600;font-size:var(--step-1);color:var(--ink);background:var(--sun);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;touch-action:manipulation;border-radius:999px;padding:10px 26px;transition:transform 80ms,box-shadow 80ms}.st-btn:hover{box-shadow:0 5px 0 var(--ink);transform:translateY(-1px)}.st-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.st-btn:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.st-star-row{gap:2px;display:inline-flex}.st-star-row svg path{fill:var(--snow-deep);stroke:var(--ink);stroke-width:1.5px}.st-star-row svg.on path{fill:var(--sun)}.st-results{min-height:100dvh;padding:max(24px, var(--safe-top)) max(24px, var(--safe-right)) max(24px, var(--safe-bottom)) max(24px, var(--safe-left));background:linear-gradient(180deg, var(--sky) 0%, var(--ice) 45%, var(--snow) 70%);place-items:center;display:grid}.st-results-card{border:4px solid var(--ink);box-shadow:0 8px 0 var(--ink);text-align:center;background:#fff;border-radius:32px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:520px;padding:32px 36px 36px;display:flex}.st-results-card h1{font-family:var(--font-display);font-weight:700;font-size:var(--step-4);margin:0;line-height:1.05}.st-results-sub{color:var(--ink-soft);margin:0}.st-big-stars{gap:8px;margin:8px 0;display:flex}.st-big-stars svg{width:84px;height:84px;animation:.42s cubic-bezier(.2,1.5,.4,1) forwards st-star-in;transform:scale(0)}.st-big-stars svg:nth-child(2){animation-delay:.22s}.st-big-stars svg:nth-child(3){animation-delay:.44s}.st-big-stars svg path{fill:var(--snow-deep);stroke:var(--ink);stroke-width:1.4px}.st-big-stars svg.on path{fill:var(--sun)}@keyframes st-star-in{to{transform:scale(1)}}.st-results-line{font-family:var(--font-display);font-weight:600;font-size:var(--step-2);margin:0}.st-results-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:12px;display:flex}@media (orientation:landscape) and (height<=520px){.st-results{padding-top:max(10px, var(--safe-top));padding-bottom:max(10px, var(--safe-bottom))}.st-results-card{gap:6px;padding:12px 20px 16px}.st-results-card h1{font-size:var(--step-2)}.st-big-stars{gap:6px;margin:2px 0}.st-big-stars svg{width:44px;height:44px}.st-results-line{font-size:var(--step-1)}.st-results-actions{margin-top:4px}}.st-rotate{place-items:center;height:96px;margin:4px 0;display:grid}.st-rotate-phone{border:3px solid var(--ink);background:var(--sky);width:44px;height:72px;box-shadow:0 4px 0 var(--ink);border-radius:10px;animation:2.4s ease-in-out infinite st-rotate-turn}@keyframes st-rotate-turn{0%,25%{transform:rotate(0)}55%,85%{transform:rotate(-90deg)}to{transform:rotate(0)}}@media (prefers-reduced-motion:reduce){.st-big-stars svg{animation:none;transform:none}.st-btn{transition:none}.st-rotate-phone{animation:none;transform:rotate(-90deg)}}.gr-root{background:#4f9be0;position:fixed;inset:0;overflow:hidden}.gr-canvas,.gr-stage{touch-action:none;-webkit-user-select:none;user-select:none;display:block}.gr-canvas{width:100%;height:100%}.gr-stage{cursor:grab}.gr-stage:active{cursor:grabbing}.gr-btn{pointer-events:auto;font-family:var(--font-display);color:var(--ink);background:var(--sun);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;touch-action:manipulation;border-radius:999px;padding:10px 22px;font-size:18px;font-weight:600;transition:transform 80ms,box-shadow 80ms}.gr-btn:hover{box-shadow:0 5px 0 var(--ink);transform:translateY(-1px)}.gr-btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.gr-btn:focus-visible{outline:3px solid var(--sky);outline-offset:3px}.gr-btn-quiet{background:var(--snow);padding:8px 16px;font-size:16px}.gr-btn-quiet[aria-pressed=true]{background:var(--stop);color:#fff}.gr-btn-go{padding:14px 44px;font-size:26px}.gr-note kbd{font-family:var(--font-display);border:2px solid var(--ink);color:var(--ink);background:#fff;border-bottom-width:4px;border-radius:8px;padding:1px 8px;font-size:.85em;font-weight:600}.gr-overlay{padding:max(16px, var(--safe-top)) max(16px, var(--safe-right)) max(16px, var(--safe-bottom)) max(16px, var(--safe-left));background:#22263a52;place-items:center;display:grid;position:absolute;inset:0;overflow:auto}.gr-card{background:var(--snow);border:4px solid var(--ink);box-shadow:0 8px 0 var(--ink);text-align:center;border-radius:28px;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:880px;padding:28px 32px 30px;display:flex}.gr-card-title{font-family:var(--font-display);color:var(--ink);margin:0;font-size:34px;font-weight:700;line-height:1.1}.gr-card-body{color:var(--ink);max-width:40ch;margin:0;font-size:18px;line-height:1.45}.gr-card-actions{flex-direction:column;align-items:center;gap:4px;margin-top:4px;display:flex}.gr-show-wait{padding:max(12px, var(--safe-top)) 0 0 max(16px, var(--safe-left));position:absolute;top:0;left:0}@media (height<=820px){.gr-card{gap:10px;padding:20px 24px 22px}.gr-btn-go{padding:11px 36px;font-size:22px}}@media (width<=640px){.gr-card{gap:6px;padding:12px 12px 14px}.gr-card-title{font-size:26px}.gr-card-actions{flex-flow:wrap;justify-content:center;gap:8px}}@media (orientation:landscape) and (height<=520px){.gr-btn-go{padding:8px 26px;font-size:17px}}@media (prefers-reduced-motion:reduce){.gr-btn{transition:none}}.st-tray{text-align:center;border:3px solid var(--ink);box-shadow:0 6px 0 var(--ink);background:#fff;border-radius:20px;flex-direction:column;align-items:center;gap:8px;padding:12px 14px 14px;display:flex}.st-tray-blurb{color:var(--ink-soft);margin:0;font-size:14px;line-height:1.35}.st-tray-title{font-family:var(--font-display);color:var(--ink);margin:0;font-size:20px;font-weight:700;line-height:1.1}.st-tray .st-star-row svg{width:20px;height:20px}.st-tray-locked,.st-tray-fine{color:var(--ink-soft);margin:0;font-size:14px;line-height:1.35}.st-tray-tiers{gap:6px;width:100%;display:flex}.st-tray-tier{border:3px solid var(--snow-deep);min-width:0;color:var(--ink);cursor:pointer;touch-action:manipulation;background:#fff;border-radius:14px;flex-direction:column;flex:1 1 0;align-items:center;gap:2px;padding:7px 4px 8px;transition:transform 80ms;display:flex}.st-tray-tier:hover{transform:translateY(-2px)}.st-tray-tier:focus-visible{outline:3px solid var(--sky);outline-offset:2px}.st-tray-tier-on{border-color:var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff8dd}.st-tray-tier-name{font-family:var(--font-display);font-size:15px;font-weight:700;line-height:1}.st-tray-tier-tag{color:var(--ink-soft);font-size:11px;line-height:1.2}.st-tray-go{padding:6px 34px;font-size:22px}.st-tray-go[aria-disabled=true],.st-tray-go[aria-disabled=true]:hover,.st-tray-go[aria-disabled=true]:active{background:var(--snow-deep);border-color:var(--ink-soft);color:var(--ink-soft);box-shadow:0 4px 0 var(--ink-soft);cursor:progress;transform:none}@media (width<=480px){.st-tray{border-radius:16px;gap:5px;padding:8px 10px 10px}.st-tray-title{font-size:16px}.st-tray .st-star-row svg{width:15px;height:15px}.st-tray-tier{border-width:2px;border-radius:11px;padding:5px 3px 6px}.st-tray-tier-name{font-size:13px}.st-tray-tier-tag{font-size:12px}.st-tray-go{padding:4px 26px;font-size:18px}.st-tray-blurb,.st-tray-locked,.st-tray-fine{font-size:14px}}@media (prefers-reduced-motion:reduce){.st-tray-tier{transition:none}}
