:root{font-family:Inter,ui-rounded,SF Pro Rounded,system-ui,sans-serif;color:#f8fbff;background:#030719;font-synthesis:none}*{box-sizing:border-box}html,body,#app{width:100%;min-height:100%;margin:0;overflow:hidden}body{display:grid;min-height:100dvh;place-items:center;background:radial-gradient(circle at 50% 10%,#293a85 0,#090f35 42%,#020412)}button{font:inherit}button:disabled{opacity:.48;cursor:not-allowed}.hidden{display:none!important}#game-shell{position:relative;width:min(100vw,430px);height:100dvh;margin:auto;overflow:hidden;background:#071137;box-shadow:0 0 80px #000a;isolation:isolate}#game-root,#game-root canvas{width:100%;height:100%;display:block;touch-action:none}#game-root{position:absolute;inset:0}#hud{position:absolute;z-index:5;inset:max(12px,env(safe-area-inset-top)) 12px auto;display:grid;grid-template-columns:1fr 1fr 1fr 38px 38px;gap:7px;pointer-events:none}#hud.hidden{display:none}#hud div,#pause-button,#sound-button{border:1px solid #8aeaff4d;border-radius:14px;background:#06112bd9;backdrop-filter:blur(8px)}#hud div{padding:7px 6px;text-align:center}#hud span{display:block;color:#82dff0;font-size:9px;letter-spacing:.12em}#hud strong{font-size:18px}#pause-button,#sound-button{pointer-events:auto;color:#fff;font-weight:900}.overlay{position:absolute;z-index:10;inset:0;display:none;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:calc(28px + env(safe-area-inset-top)) 28px calc(24px + env(safe-area-inset-bottom));text-align:center;background:linear-gradient(180deg,#0c1a52d6,#05081cf2)}.overlay.active{display:flex}.overlay h1{margin:0;font-size:clamp(45px,14vw,62px);line-height:.9;color:#fff;text-shadow:0 0 24px #55dfff,4px 5px 0 #5e3190;letter-spacing:-.055em}.overlay h2{margin:0;font-size:30px}.overlay p{max-width:310px;margin:0;line-height:1.45;color:#dce9ff}.eyebrow{color:#7fe7f6!important;font-size:11px;font-weight:900;letter-spacing:.18em}.prize{padding:10px 16px;border:1px solid #ffe28555;border-radius:99px;color:#ffe58b;background:#4d367755}.leaderboard-note,.registration-note{margin:0;color:#c7ddf5;font-size:14px;line-height:1.45}.leaderboard-note strong{color:#f7dc7c}.primary,.secondary{width:min(100%,290px);min-height:52px;border-radius:18px;border:0;font-weight:900;cursor:pointer}.primary{background:linear-gradient(135deg,#64efff,#a96cff);color:#07102c;box-shadow:0 10px 30px #835ee052}.secondary{color:#fff;border:1px solid #8defff77;background:#132457}.overlay nav{display:flex;gap:24px}.overlay nav button{color:#b8dff7;border:0;background:none;text-decoration:underline}.overlay small{max-width:330px;color:#91a2c6;line-height:1.35;font-size:12px}#menu{justify-content:flex-start;gap:12px;overflow:hidden;padding-top:calc(clamp(58px,10dvh,92px) + env(safe-area-inset-top))}#menu>:not(#menu-starfall){position:relative;z-index:1}#menu-starfall{position:absolute;z-index:0;inset:0;width:100%;height:100%;pointer-events:none}#menu .menu-intro{max-width:326px;text-wrap:balance}#menu #menu-status{max-width:326px;min-height:0}#menu #menu-status:empty,#menu #campaign-note:empty{display:none}.menu-rider-cta{position:absolute!important;z-index:2!important;top:55dvh;left:50%;width:min(108vw,465px);aspect-ratio:520 / 924;pointer-events:none;transform:translate(-50%,-16%)}.menu-rider-image{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;filter:drop-shadow(0 12px 20px #020719c9)}.rider-board-button{position:absolute;top:16%;left:1.5%;display:grid;width:97%;height:10.8%;min-height:58px;place-items:center;padding:0;pointer-events:auto;border:0;border-radius:50%/42%;color:#fff;background:transparent;font-size:24px;font-weight:950;letter-spacing:.02em;text-transform:uppercase;cursor:pointer;touch-action:manipulation}.rider-board-button span{display:inline-block;padding:8px 22px;border-radius:99px;background:#071739d9;box-shadow:0 0 18px #53e7ff66;text-shadow:0 2px 9px #020718;transition:filter .18s ease,transform .18s ease,box-shadow .18s ease}.rider-board-button:hover:not(:disabled) span{filter:brightness(1.12);box-shadow:0 0 25px #53e7ff99}.rider-board-button:active:not(:disabled) span{transform:translateY(2px) scale(.98)}.rider-board-button:focus-visible{outline:3px solid #ffe274;outline-offset:2px}.rider-board-button:disabled span{opacity:.58;filter:saturate(.45)}#menu nav{position:absolute!important;z-index:3!important;right:0;bottom:calc(8px + env(safe-area-inset-bottom));left:0;justify-content:space-between;width:100%;padding:0 28px}#menu nav button{min-width:72px;min-height:44px;padding:10px 4px;touch-action:manipulation}#menu #campaign-note{min-height:0}@media(max-height:740px){#menu{gap:9px;padding-top:calc(40px + env(safe-area-inset-top))}#menu .menu-intro{font-size:14px}}@media(prefers-reduced-motion:reduce){.rider-board-button span{transition:none}}.overlay.scrollable{justify-content:flex-start;overflow-y:auto;padding-top:calc(42px + env(safe-area-inset-top))}.status{min-height:20px;color:#b9d8f6!important;font-size:13px}.status.error{color:#ff9ba9!important}.link-button,.inline-link{color:#8cecff;border:0;background:none;text-decoration:underline;cursor:pointer}.claim-form{display:flex;flex-direction:column;gap:8px;width:min(100%,340px);text-align:left}.claim-form>label{color:#b9d8f6;font-size:12px;font-weight:800;letter-spacing:.05em}.claim-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.claim-controls input{min-width:0;min-height:48px;padding:0 13px;color:#fff;border:1px solid #83e8ff5c;border-radius:13px;outline:none;background:#071332e8;font-size:16px}.claim-controls input:focus{border-color:#83e8ff;box-shadow:0 0 0 3px #68dcff24}.claim-controls .secondary{width:auto;min-width:98px;min-height:48px;padding:0 12px}@media(max-width:375px){.claim-controls{grid-template-columns:1fr}.claim-controls .secondary{width:100%}}#registration-form{display:flex;flex-direction:column;gap:13px;width:100%;max-width:330px;text-align:left}#registration-form>label:not(.check){display:flex;flex-direction:column;gap:6px;color:#b9d8f6;font-size:12px;font-weight:800;letter-spacing:.05em}#registration-form input:not([type=checkbox]){width:100%;min-height:48px;padding:0 14px;color:#fff;border:1px solid #83e8ff5c;border-radius:13px;outline:none;background:#071332e8;font-size:16px}#registration-form input:focus{border-color:#83e8ff;box-shadow:0 0 0 3px #68dcff24}.check{display:grid;grid-template-columns:22px 1fr;gap:8px;color:#c4d4ea;font-size:12px;line-height:1.35}.check input{width:19px;height:19px;accent-color:#6ce7f7}.inline-link{padding:0;font-size:inherit}.leaderboard-list{display:flex;flex-direction:column;gap:7px;width:100%;max-width:340px;margin:0;padding:0;list-style:none;counter-reset:rank}.leaderboard-list li{display:grid;grid-template-columns:35px 1fr auto;gap:8px;align-items:center;padding:10px 12px;border:1px solid #77dff82b;border-radius:13px;background:#0a163be0;text-align:left}.leaderboard-list .rank{color:#83edff;font-weight:900}.leaderboard-list .name{display:flex;align-items:center;gap:7px;min-width:0;overflow:hidden;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.leaderboard-list .name>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.leaderboard-list .athlete-icon{flex:0 0 auto;font-size:20px;line-height:1}.leaderboard-list .score{color:#ffe47d;font-weight:900}.personal-rank,.document-body{width:100%;max-width:340px;padding:14px;border:1px solid #ffe68138;border-radius:15px;background:#2a224a99;line-height:1.45}.document-body{color:#c7d7ee;text-align:left}.document-body strong{display:block;margin-bottom:8px;color:#fd7}.document-body p+p{margin-top:12px}.tutorial-card{display:flex;flex-direction:column;align-items:center;gap:17px;padding:28px 22px;border:1px solid #86e7ff4a;border-radius:28px;background:#0c1947e8}.tutorial-rules{width:100%;margin:-3px 0 0;padding-left:22px;color:#dce9ff;text-align:left;line-height:1.45}.tutorial-rules li+li{margin-top:7px}.gesture{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;color:#ffe671;font-size:52px;background:#71eaff1c;box-shadow:0 0 35px #5bdffa4a}#countdown{overflow:hidden;padding-right:12px;padding-left:12px;background:#07102bb5}#countdown strong{display:grid;width:100%;place-items:center;line-height:1;font-size:110px;text-shadow:0 0 35px #65e7ff}#countdown strong[data-phase=go]{max-width:100%;font-size:clamp(48px,16vw,68px);letter-spacing:-.045em;white-space:nowrap}#countdown strong.countdown-pulse{animation:countdown-pop .68s ease-out both}#countdown strong[data-phase=go].countdown-pulse{animation-duration:1.08s}.pause-overlay{background:linear-gradient(180deg,#08143be8,#040719f7)}.result-score{font-size:72px;color:#ffe76f;text-shadow:0 0 24px #ffb44c77}.stats{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.stats div{padding:11px;border-radius:13px;background:#ffffff0c;color:#bcd4ef}.stats strong{display:block;color:#fff;font-size:23px}.result-overlay{justify-content:flex-start;gap:10px}.result-overlay>*{flex-shrink:0}.result-overlay .result-score{line-height:1}.result-overlay .stats{max-width:340px}#finish-status{width:100%;max-width:340px;min-height:0;padding:10px 12px;border:1px solid #8aeaff33;border-radius:13px;background:#0a163bd9;line-height:1.45}#finish-status:empty{display:none}.result-overlay .primary,.result-overlay .secondary{min-height:46px}.status.compact{min-height:0;margin:-3px 0}#rotate-message{display:none;position:fixed;z-index:100;inset:0;place-content:center;text-align:center;background:#05091f}#rotate-message strong,#rotate-message span{display:block}#rotate-message strong{font-size:28px}#rotate-message span{margin-top:8px;color:#8ca1ca}@keyframes countdown-pop{0%{transform:scale(.8);opacity:0}28%{transform:scale(1);opacity:1}76%{transform:scale(1);opacity:1}to{transform:scale(.96);opacity:0}}html[data-design=pixel]{font-family:Courier New,ui-monospace,monospace}html[data-design=pixel] body{background:linear-gradient(90deg,#07112e 25%,transparent 25%) 0 0 / 12px 12px,linear-gradient(#07112e 25%,#020617 25%) 0 0 / 12px 12px}html[data-design=pixel] #game-shell{background:#050c26;box-shadow:0 0 0 4px #13295a,0 0 0 8px #050a20,0 0 72px #000c}html[data-design=pixel] #game-root canvas{image-rendering:pixelated}html[data-design=pixel] #menu{background:linear-gradient(180deg,#06112db8,#03071bef),url(/assets/pixel/night-slope-background.webp) center / cover no-repeat}html[data-design=pixel] .overlay:not(#menu){background:linear-gradient(180deg,#07163bea,#020617f7)}html[data-design=pixel] .overlay h1{color:#f8ffff;letter-spacing:-.08em;text-shadow:4px 0 0 #173789,-4px 0 0 #173789,0 4px 0 #ed2f9f,0 8px 0 #07132e}html[data-design=pixel] #hud div,html[data-design=pixel] #pause-button,html[data-design=pixel] #sound-button{border:2px solid #57dcf2;border-radius:4px;background-color:#061431ee;backdrop-filter:none;box-shadow:inset 0 0 0 2px #102a5d,3px 3px #020817}html[data-design=pixel] #pause-button,html[data-design=pixel] #sound-button{position:relative;overflow:hidden;color:transparent;background-position:center;background-repeat:no-repeat;background-size:82%}html[data-design=pixel] #pause-button:after,html[data-design=pixel] #sound-button:after{position:absolute;right:2px;bottom:1px;color:#fff;font-family:ui-monospace,monospace;font-size:9px;line-height:1;text-shadow:1px 1px 0 #020817}html[data-design=pixel] #pause-button:after{content:"Ⅱ"}html[data-design=pixel] #sound-button[data-enabled=true]:after{content:"♪"}html[data-design=pixel] #sound-button[data-enabled=false]:after{content:"×"}html[data-design=pixel] #pause-button{background-image:url(/assets/pixel/pause.webp)}html[data-design=pixel] #sound-button[data-enabled=true]{background-image:url(/assets/pixel/sound.webp)}html[data-design=pixel] #sound-button[data-enabled=false]{background-image:url(/assets/pixel/muted.webp)}html[data-design=pixel] .primary,html[data-design=pixel] .secondary,html[data-design=pixel] .mode-card,html[data-design=pixel] .design-card,html[data-design=pixel] .tutorial-card,html[data-design=pixel] .leaderboard-list li,html[data-design=pixel] .personal-rank,html[data-design=pixel] .document-body,html[data-design=pixel] #registration-form input:not([type=checkbox]){border-radius:4px}html[data-design=pixel] .primary{border:2px solid #e9feff;background:#46dff4;box-shadow:inset 0 -5px #1687b5,4px 5px #101d53}html[data-design=pixel] .secondary{border:2px solid #57dcf2;background:#10265b;box-shadow:4px 5px #03091e}html[data-design=pixel] .mode-card:has(input:checked),html[data-design=pixel] .design-card:has(input:checked){border-color:#f7fdff;background:#153a76;box-shadow:inset 0 0 0 2px #35cee7,3px 3px #020817}html[data-design=pixel] .prize{border:2px solid #ffd84a;border-radius:4px;background:#3a245fdd;box-shadow:3px 3px #0a102d}@media(forced-colors:active){html[data-design=pixel] #pause-button,html[data-design=pixel] #sound-button{background-image:none}html[data-design=pixel] #pause-button:after,html[data-design=pixel] #sound-button:after{inset:0;display:grid;place-items:center;color:ButtonText;font-size:18px;text-shadow:none}}@media(orientation:landscape)and (hover:none)and (pointer:coarse){#rotate-message{display:grid}}@media(min-width:700px){#game-shell{height:min(100dvh,932px);border-radius:24px}}
