@import"https://fonts.googleapis.com/css2?family=Black+Han+Sans&family=Chivo+Mono:wght@500;700&display=swap";:root{color-scheme:dark;font-family:Chivo Mono,monospace;--canvas: #111412;--surface: #202420;--surface-raised: #303530;--ink: #ece9df;--muted: #9f9f98;--acid: #d7ec00;--orange: #ff6542;--r-sm: 4px;--r-md: 9px;--r-lg: 15px;--r-pill: 999px;--viewport-height: 100vh;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}@supports (height: 100dvh){:root{--viewport-height: 100dvh}}@supports (color: oklch(50% 0 0)){:root{--canvas: oklch(13% .008 150);--surface: oklch(18% .01 150);--surface-raised: oklch(23% .012 150);--ink: oklch(91% .018 100);--muted: oklch(66% .015 120);--acid: oklch(87% .19 112);--orange: oklch(72% .2 42)}}*{box-sizing:border-box}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}.access-controls{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.access-controls:focus-within{position:fixed;z-index:20;left:50%;bottom:max(12px,env(safe-area-inset-bottom));width:min(94vw,460px);height:auto;margin:0;padding:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;overflow:visible;clip:auto;white-space:normal;transform:translate(-50%);background:var(--surface);box-shadow:0 8px 28px #0000008c,inset 0 0 0 1px #ffffff14}.access-controls button{min-height:44px;border:0;border-radius:var(--r-sm);color:var(--ink);background:var(--surface-raised);font-size:11px;font-weight:700}.access-controls button:active{transform:scale(.96)}html,body{margin:0;width:100%;height:100%;min-height:100%;overflow:hidden;background:var(--canvas);overscroll-behavior:none;touch-action:none}body{min-height:var(--viewport-height);color:var(--ink);background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:24px 24px}button{font:inherit}button,input{touch-action:manipulation}button:focus-visible{outline:2px solid var(--acid);outline-offset:3px}.game-shell{position:relative;width:min(100%,720px);min-height:var(--viewport-height);margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 18px max(14px,env(safe-area-inset-bottom));display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:12px;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.brand-row{display:flex;align-items:start;justify-content:space-between}.header-actions{display:flex;gap:7px}.eyebrow,.rack-label,.score-strip span,footer{margin:0 0 5px;color:var(--acid);font-size:9px;font-weight:700;letter-spacing:.16em}h1{margin:0;font-family:Black Han Sans,sans-serif;font-size:clamp(34px,9vw,54px);font-weight:400;line-height:.75;letter-spacing:-.04em}h1 span{color:var(--orange)}.icon-button{width:42px;height:42px;border:0;border-radius:var(--r-pill);color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff14;transition:transform .12s ease-out,opacity .12s ease-out}.profile-button{position:relative}.profile-button>span{display:inline-block}.profile-notification-dot{position:absolute;top:1px;right:1px;width:10px;height:10px;border-radius:var(--r-pill);background:var(--acid);box-shadow:0 0 0 3px var(--canvas),0 0 14px #e9f65b8c;box-shadow:0 0 0 3px var(--canvas),0 0 14px color-mix(in oklab,var(--acid) 75%,transparent)}.profile-notification-dot[hidden]{display:none}button:active{transform:scale(.96)}body.playing .home-only-action,.playing-only-action{display:none}body.playing .playing-only-action{display:inline-grid;place-items:center}.app-panel{position:fixed;z-index:24;inset:0;overflow-y:auto;overscroll-behavior:contain;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:var(--canvas)}.app-panel[hidden]{display:none}.app-panel-shell{width:min(100%,620px);margin:0 auto}.app-panel-head{position:sticky;z-index:2;top:calc(-1*max(18px,env(safe-area-inset-top)));display:flex;align-items:center;justify-content:space-between;margin:0 -4px 18px;padding:max(18px,env(safe-area-inset-top)) 4px 12px;background:var(--canvas);background:color-mix(in oklab,var(--canvas) 96%,transparent)}.app-panel-head p,.section-heading p{margin:0 0 4px;color:var(--acid);font-size:8px;font-weight:700;letter-spacing:.18em}.app-panel-head h2{margin:0;font-family:Black Han Sans,sans-serif;font-size:30px;font-weight:400;line-height:1;letter-spacing:-.022em}.panel-close{width:44px;height:44px;border:0;border-radius:var(--r-pill);color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff14;font-size:23px}.profile-identity{display:flex;align-items:center;gap:14px;padding:20px;background:var(--surface);box-shadow:inset 0 0 0 1px #ffffff0f}.profile-mark{display:grid;place-items:center;width:58px;height:58px;flex:0 0 auto;border-radius:var(--r-md);color:#101500;color:#171802;background:var(--acid);box-shadow:0 5px #687800;box-shadow:0 5px oklch(52% .12 112);font-family:Black Han Sans,sans-serif;font-size:22px}.profile-identity p{margin:0 0 5px;color:var(--muted);font:11px/1.3 system-ui,sans-serif}.profile-identity strong{display:block;font-size:clamp(18px,5vw,24px);overflow-wrap:anywhere}.profile-badges{display:flex;flex-wrap:wrap;gap:6px;min-height:0;margin-top:9px}.profile-badges:empty{display:none}.profile-badges span{padding:6px 8px;color:#101500;background:var(--acid);font-size:8px;font-weight:700;letter-spacing:.08em}.nickname-form{margin-top:12px}.nickname-form>label{display:block;margin-bottom:7px;color:var(--acid);font-size:9px;font-weight:700;letter-spacing:.12em}.nickname-form>div{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:7px}.nickname-form input,.nickname-form button,.social-connect{min-height:46px;border:0;border-radius:var(--r-sm);font:700 12px Chivo Mono,monospace}.nickname-form input{min-width:0;padding:0 12px;outline:1px solid rgba(255,255,255,.1);color:var(--ink);background:var(--surface-raised)}.nickname-form input:focus{outline:2px solid var(--acid);outline-offset:1px}.nickname-form button{color:#101500;background:var(--acid);box-shadow:0 4px #687800;box-shadow:0 4px oklch(52% .12 112)}.nickname-form button:disabled{color:var(--muted);background:var(--surface);box-shadow:none}.nickname-form small{display:block;min-height:17px;margin-top:7px;color:var(--muted);font:11px/1.45 system-ui,sans-serif}.social-connect{width:100%;margin-top:10px;color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff17}.social-connect[disabled]{color:var(--acid)}.profile-section{margin-top:25px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:10px}.section-heading h3{margin:0;font-size:16px;letter-spacing:-.012em}.season-platforms{display:grid;grid-template-columns:1fr;gap:8px}.season-platforms article{min-height:108px;padding:14px;background:#ffffff09;box-shadow:inset 0 0 0 1px #ffffff0e}.season-platforms strong{display:block;margin:8px 0 4px;font-size:20px;font-variant-numeric:tabular-nums}.season-platforms small{color:var(--muted);font:10px/1.3 system-ui,sans-serif}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:0;background:#ffffff09}.profile-stats div{min-width:0;padding:13px 10px;box-shadow:inset -1px -1px #ffffff0e}.profile-stats dt{color:var(--muted);font:10px/1.3 system-ui,sans-serif}.profile-stats dd{margin:8px 0 0;color:var(--ink);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.account-delete-section{padding:15px;background:#ff464609;box-shadow:inset 0 0 0 1px #ff5e5e1f}.account-delete-section>p{margin:0 0 12px;color:var(--muted);font:11px/1.55 system-ui,sans-serif;text-wrap:pretty}.account-delete-button{width:100%;min-height:46px;border:0;border-radius:var(--r-sm);padding:0 13px;color:#fff0f0;background:#8f2525;box-shadow:0 4px #4f1515;font:700 12px Chivo Mono,monospace;transition:transform .12s ease-out,opacity .12s ease-out}.account-delete-button:active{transform:scale(.96)}.account-delete-button:disabled{opacity:.55;box-shadow:none}@media(prefers-reduced-motion:reduce){.account-delete-button{transition:none}}.theme-options{display:flex;gap:10px;margin-inline:0;padding:2px 4px 10px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-width:none;touch-action:pan-x}.theme-options::-webkit-scrollbar{display:none}.theme-options button{position:relative;flex:0 0 min(72%,220px);min-height:138px;display:grid;grid-template-rows:1fr auto;gap:10px;border:0;border-radius:var(--r-sm);padding:12px;color:var(--muted);background:var(--surface);box-shadow:inset 0 0 0 1px #ffffff0f;scroll-snap-align:start;text-align:left;transition:transform .12s ease-out,box-shadow .12s ease-out}.theme-options button:active{transform:scale(.97)}.theme-options button[aria-pressed=true]{color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 2px var(--acid),0 6px 18px #0000003d}.theme-options button[aria-pressed=true]:after{content:"SELECTED";position:absolute;top:8px;right:8px;padding:3px 5px;border-radius:2px;color:#101500;background:var(--acid);font-size:7px;font-weight:700;letter-spacing:.08em}.theme-preview{min-height:72px;display:grid;grid-template-columns:repeat(2,31px);grid-template-rows:repeat(2,31px);place-content:center;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),#070909;background-size:12px 12px;overflow:hidden}.theme-preview i{display:block;margin:2px;border-radius:5px;background:var(--preview-color);box-shadow:inset 0 4px #ffffff3d}.theme-copy{display:grid;gap:2px}.theme-copy strong{color:var(--ink);font-size:12px}.theme-copy small{color:var(--muted);font:9px/1.3 system-ui,sans-serif}button[data-theme=pixel] .theme-preview{image-rendering:pixelated}button[data-theme=pixel] .theme-preview i{margin:1px;border-radius:0;box-shadow:inset -4px -4px #07090947,inset 0 4px #ffffff47}button[data-theme=neon] .theme-preview{background-color:#03050a}button[data-theme=neon] .theme-preview i{margin:4px;border-radius:3px;background:#07090ce0;box-shadow:inset 0 0 0 2px var(--preview-color),0 0 9px var(--preview-color)}.spark-balance{color:var(--acid);font-size:12px;font-variant-numeric:tabular-nums}.shop-heading{display:flex;align-items:end;justify-content:space-between;gap:16px}.shop-heading p{margin:0 0 4px;color:var(--acid);font-size:9px;font-weight:700;letter-spacing:.16em}.shop-heading h3{margin:0;font:800 17px/1.2 system-ui,sans-serif}.shop-spark-balance{padding:8px 10px;border:1px solid rgba(233,246,91,.32);background:#e9f65b0f;white-space:nowrap}.shop-guidance{margin:12px 0 0;color:var(--muted);font:11px/1.5 system-ui,sans-serif}.economy-balance-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.economy-balance-row>strong:first-child{color:var(--muted);font-size:10px;letter-spacing:.08em}.lab-view[hidden]{display:none}.lab-view>.profile-section:first-child{margin-top:4px}.mission-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;background:#ffffff09}.mission-tabs button{min-height:40px;border:0;border-radius:var(--r-sm);color:var(--muted);background:transparent;font-size:10px;font-weight:700;transition:transform .12s ease-out,background-color .12s ease-out,color .12s ease-out}.mission-tabs button[aria-selected=true]{color:#101500;color:#171802;background:var(--acid)}.mission-list,.shop-list{display:grid;margin-top:7px}.mission-list:empty,.shop-list:empty{min-height:48px}.mission-item,.shop-item{min-height:62px;display:flex;align-items:center;gap:11px;padding:10px 12px;background:#ffffff09;box-shadow:inset 0 -1px #ffffff0e}.mission-item>div,.shop-item>div{min-width:0;flex:1}.mission-item strong,.shop-item strong{display:block;font:700 14px/1.4 system-ui,sans-serif;text-wrap:pretty}.mission-item small,.shop-item small{display:block;margin-top:5px;color:var(--muted);font:10px/1.45 Chivo Mono,monospace}.mission-item>b{color:var(--orange);font-size:11px;font-variant-numeric:tabular-nums}.mission-item.complete>b{color:var(--acid)}.shop-swatch{width:36px;height:36px;flex:0 0 auto;background:var(--acid);box-shadow:inset 0 0 0 5px #0a0e0c57}.shop-crystal .shop-swatch{background:repeating-linear-gradient(135deg,var(--acid) 0 7px,var(--orange) 7px 14px)}.shop-default-theme .shop-swatch{background:linear-gradient(135deg,#e9f65b 0 50%,#ff6542 50%)}.shop-pixel-theme .shop-swatch{background:conic-gradient(from 90deg,#ff6542 0 25%,#e9f65b 0 50%,#45d6a5 0 75%,#f28bd5 0);image-rendering:pixelated}.shop-neon-theme .shop-swatch{background:#03050a;box-shadow:inset 0 0 0 3px var(--acid),0 0 12px #e9f65b6b}.shop-jelly .shop-swatch{border-radius:10px;background:linear-gradient(145deg,#f28bd5,#45d6a5);box-shadow:inset 3px 3px #ffffff57,inset -4px -5px #0709093d}.shop-prism .shop-swatch{background:conic-gradient(from 30deg,#f28bd5,#45d6a5,#e9f65b,#ff6542,#f28bd5);clip-path:polygon(50% 0,100% 30%,82% 100%,18% 100%,0 30%)}.shop-pulse .shop-swatch{border-radius:50%;background:var(--orange);box-shadow:0 0 0 5px #ff654229,inset 0 0 0 8px var(--surface)}.shop-night-drive .shop-swatch{background:linear-gradient(180deg,var(--surface-raised) 0 48%,var(--orange) 48% 54%,var(--acid) 54%)}.shop-chroma-line .shop-swatch{background:transparent;box-shadow:inset 0 0 0 3px var(--acid),inset 0 0 0 7px var(--surface)}.shop-item button{min-width:82px;min-height:40px;border:0;border-radius:var(--r-sm);color:#101500;color:#171802;background:var(--acid);font-size:9px;font-weight:700;transition:transform .12s ease-out,opacity .12s ease-out}.shop-item button:disabled{color:var(--muted);background:var(--surface-raised);opacity:.72}.shop-item button:not(:disabled):active{transform:translateY(2px) scale(.98)}.panel-status{min-height:20px;margin:18px 0 0;color:var(--acid);font:11px/1.5 system-ui,sans-serif}.app-toast{position:fixed;z-index:1000;left:50%;bottom:calc(22px + env(safe-area-inset-bottom));width:min(calc(100% - 32px),430px);padding:13px 16px;border:1px solid rgba(233,246,91,.34);color:var(--text);background:#0c100ef5;box-shadow:0 14px 36px #0000006b;font:700 12px/1.5 system-ui,sans-serif;text-align:center;opacity:0;transform:translate(-50%,10px);transition:opacity .16s ease-out,transform .16s ease-out}.app-toast.visible{opacity:1;transform:translate(-50%)}.app-toast[data-tone=success]{border-color:#45d6a585}.app-toast[data-tone=error]{border-color:#ff654294}.settings-form{display:grid;gap:24px}.settings-form fieldset{margin:0;padding:0;border:0}.settings-form legend{width:100%;margin-bottom:8px;color:var(--acid);font-size:10px;font-weight:700;letter-spacing:.14em}.settings-form label{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 13px;background:#ffffff09;box-shadow:inset 0 -1px #ffffff0e}.settings-form label span{min-width:0}.settings-form label b{display:block;margin-bottom:3px;font:700 13px/1.3 system-ui,sans-serif}.settings-form label small{display:block;color:var(--muted);font:10px/1.35 system-ui,sans-serif;text-wrap:pretty}.settings-form input[type=checkbox]{width:46px;height:26px;flex:0 0 auto;margin:0;appearance:none;border-radius:var(--r-pill);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff1a}.settings-form input[type=checkbox]:after{content:"";display:block;width:20px;height:20px;margin:3px;border-radius:50%;background:var(--muted);transform:translate(0);transition:transform .12s cubic-bezier(.2,0,0,1),background-color .12s}.settings-form input[type=checkbox]:checked{background:color-mix(in oklab,var(--acid) 32%,var(--surface))}.settings-form input[type=checkbox]:checked:after{background:var(--acid);transform:translate(20px)}.settings-form select{min-width:92px;min-height:40px;border:0;border-radius:var(--r-sm);padding:0 8px;color:var(--ink);background:var(--surface-raised);font:700 11px Chivo Mono,monospace}.settings-form input:focus-visible,.settings-form select:focus-visible{outline:2px solid var(--acid);outline-offset:2px}.settings-links{display:grid;margin-top:28px}.settings-links a,.settings-links button{min-height:48px;display:flex;align-items:center;justify-content:space-between;border:0;padding:0 13px;color:var(--ink);background:transparent;box-shadow:inset 0 -1px #ffffff12;font:12px Chivo Mono,monospace;text-align:left;text-decoration:none}.settings-links .danger-action{margin-top:12px;color:var(--orange);background:#ff65420f}.settings-version{margin:22px 0 0;color:var(--muted);font-size:9px;text-align:center;letter-spacing:.1em}@media(min-width:620px){.app-panel{padding-top:30px}.app-panel-head{top:-30px;padding-top:30px}}@media(max-width:460px){.profile-stats{grid-template-columns:repeat(2,1fr)}.app-panel-head h2{font-size:27px}}@media(any-pointer:fine)and (min-width:620px){.mobile-setting{display:none!important}}.score-strip{display:grid;grid-template-columns:1.6fr 1fr 1fr;padding:9px 12px;background:#ffffff09;border-radius:var(--r-md);box-shadow:inset 0 0 0 1px #ffffff0e}.score-strip div{display:flex;flex-direction:column}.score-strip div:not(:first-child){padding-left:12px;box-shadow:inset 1px 0 #ffffff14}.score-strip span{margin:0;color:var(--muted);font-size:8px}.score-strip strong{margin-top:2px;font-size:15px;font-variant-numeric:tabular-nums}.play-area{min-height:0;display:grid;grid-template-columns:52px minmax(0,320px) 52px;justify-content:center;align-items:start;gap:8px}body:not(.playing) .score-strip,body:not(.playing) .piece-rack,body:not(.playing) #gameCanvas,body:not(.playing) .gesture-hint{display:none}body:not(.playing) .play-area{display:block}body:not(.playing) .game-shell{width:100%;max-width:none}body:not(.playing) .brand-row,body:not(.playing) footer{position:relative;z-index:4}body:not(.playing) footer{align-self:end;min-height:14px}body:not(.playing) .board-frame{width:100%;height:100%;min-height:0;aspect-ratio:auto;background:transparent;box-shadow:none}body:not(.playing) .board-frame:after{display:none}body:not(.playing) .game-overlay{position:fixed;inset:0;padding:max(82px,calc(env(safe-area-inset-top) + 70px)) max(22px,env(safe-area-inset-right)) max(58px,calc(env(safe-area-inset-bottom) + 44px)) max(22px,env(safe-area-inset-left));background:transparent}.board-frame{position:relative;width:100%;aspect-ratio:1 / 2;overflow:hidden;border-radius:0;background:#070909;box-shadow:0 18px 42px #0000005c,inset 0 0 0 2px #ffffff14}.board-frame:after{content:"";position:absolute;z-index:5;inset:0;pointer-events:none;box-shadow:inset 0 0 0 1px #ffffff47}@supports ((-webkit-mask-composite: xor) or (mask-composite: exclude)){.board-frame:after{padding:1px;background:linear-gradient(90deg,#ff6542,#e9f65b,#45d6a5,#f28bd5,#ff6542) 0 0 / 300% 100%;box-shadow:none;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;animation:board-border-flow 6s linear infinite}}@keyframes board-border-flow{to{background-position:300% 0}}#gameCanvas{width:100%;height:100%;display:block;touch-action:none;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-user-drag:none}.ranked-loading{position:absolute;z-index:4;inset:0;display:grid;place-content:center;justify-items:center;padding:24px;background:linear-gradient(rgba(69,214,165,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(69,214,165,.04) 1px,transparent 1px),#070909;background-size:34px 34px;text-align:center}.ranked-loading[hidden]{display:none}.ranked-loading-mark{width:72px;display:grid;grid-template-columns:repeat(3,18px);gap:6px;margin-bottom:20px}.ranked-loading-mark i{width:18px;aspect-ratio:1;border-radius:4px;background:var(--acid);box-shadow:0 0 16px #e9f65b4d;box-shadow:0 0 16px color-mix(in oklab,var(--acid) 38%,transparent);animation:ranked-cell-sync .9s cubic-bezier(.22,.8,.36,1) infinite alternate}.ranked-loading-mark i:nth-child(2),.ranked-loading-mark i:nth-child(5){background:var(--orange);animation-delay:.12s}.ranked-loading-mark i:nth-child(3),.ranked-loading-mark i:nth-child(4){background:#45d6a5;animation-delay:.24s}.ranked-loading-mark i:nth-child(6){background:#f28bd5;animation-delay:.36s}.ranked-loading p{margin:0 0 9px;color:var(--acid);font-size:9px;font-weight:700;letter-spacing:.18em}.ranked-loading strong{color:var(--ink);font:700 15px/1.4 system-ui,sans-serif}.ranked-loading small{margin-top:6px;color:var(--muted);font:11px/1.4 system-ui,sans-serif}.board-frame.is-ranked-loading:after{opacity:1}@keyframes ranked-cell-sync{0%{opacity:.28;transform:translateY(-8px) scale(.82)}to{opacity:1;transform:translateY(8px) scale(1)}}.piece-rack{display:flex;flex-direction:column;align-items:center;padding-top:10px}.piece-rack canvas{width:100%;height:auto}.piece-rack small{margin-top:2px;color:var(--muted);font-size:7px}.game-overlay{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center;background:#070909e6;opacity:0;pointer-events:none;transform:translateY(-12px);transition:opacity .15s ease-in,transform .15s ease-in}.game-overlay.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.game-overlay.game-over{justify-content:flex-start;padding:30px 22px;overflow-y:auto;overscroll-behavior:contain}.overlay-kicker{color:var(--acid);font-size:9px;letter-spacing:.18em}.game-overlay h2{margin:8px 0 12px;font-family:Black Han Sans;font-size:clamp(25px,7vw,38px);font-weight:400;line-height:1.02;letter-spacing:-.022em;text-wrap:balance}.game-overlay>p:not(.overlay-kicker){max-width:240px;margin:0 0 22px;color:var(--muted);font-family:system-ui,sans-serif;font-size:13px;line-height:1.55;text-wrap:pretty}.game-overlay button{min-width:150px;min-height:48px;border:0;border-radius:var(--r-sm);background:var(--acid);color:#101500;color:#171802;font-weight:700;box-shadow:0 5px #687800;box-shadow:0 5px oklch(52% .12 112);transition:transform .12s ease-out}.game-overlay small{margin-top:20px;color:var(--muted);font-size:10px}.ranked-energy-panel{width:min(100%,310px);margin:0 0 12px;padding:10px 12px;background:#ffffff09;box-shadow:inset 0 0 0 1px #fff1;text-align:left}.ranked-energy-panel p{max-width:none!important;margin:0 0 5px!important;display:flex;align-items:center;justify-content:space-between}.ranked-energy-panel p span{color:var(--muted);font-size:8px;letter-spacing:.1em}.ranked-energy-panel p strong{color:var(--acid);font-size:12px;font-variant-numeric:tabular-nums}.ranked-energy-panel>small{margin:0;color:var(--muted);font:10px/1.4 system-ui,sans-serif}body.playing .ranked-energy-panel{display:none}.end-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;width:min(100%,310px)}.season-result-nudge{width:min(100%,310px);margin:0 0 12px;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:var(--r-md);background:#e9f65b14;background:color-mix(in oklab,var(--acid) 10%,var(--surface-raised));box-shadow:inset 0 0 0 1px #e9f65b3d;box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--acid) 30%,transparent);text-align:left;animation:season-result-enter .36s cubic-bezier(.16,1,.3,1) both}.season-result-nudge[hidden]{display:none}.season-result-nudge p{margin:0 0 4px;color:var(--acid);font-size:8px;font-weight:700;letter-spacing:.16em}.season-result-nudge strong{display:block;color:var(--ink);font:700 12px/1.35 system-ui,sans-serif;text-wrap:balance}.season-result-nudge small{display:block;margin-top:5px;color:var(--muted);font:10px/1.35 system-ui,sans-serif;text-wrap:pretty}.game-overlay .season-result-nudge button{min-width:90px;min-height:44px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:5px;box-shadow:0 4px #687800;box-shadow:0 4px oklch(52% .12 112);font-size:10px}@keyframes season-result-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.end-actions button{flex:1;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.end-actions button span{flex:0 0 auto;font-size:.88em;line-height:1}.end-actions button[hidden]{display:none}#rankedStartButton{flex-basis:100%;min-height:58px;color:#101500;background:var(--acid);box-shadow:0 6px #687800,0 0 22px #e9f65b2e;box-shadow:0 6px #687800,0 0 22px color-mix(in oklab,var(--acid) 18%,transparent);font-size:15px}#rankedStartButton:disabled{color:var(--muted);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff14;cursor:not-allowed}#shareButton{color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff1a,0 5px #050606}#homeButton{color:#101500;color:#171802;background:var(--acid);box-shadow:0 5px #687800;box-shadow:0 5px oklch(52% .12 112)}#missionButton,#shopButton{color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff1a,0 5px #050606}#homeHelpButton{color:var(--ink);background:transparent;box-shadow:inset 0 0 0 1px #ffffff24}body:not(.playing) #missionButton,body:not(.playing) #shopButton{flex-basis:calc((100% - 8px)/2);font-size:11px}.home-utility-links{flex:1 0 100%;min-height:40px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted)}.game-overlay .home-utility-links button{min-width:0;min-height:40px;padding:0 3px;color:var(--muted);background:transparent;box-shadow:none;font-size:9px}.home-utility-links button span{color:var(--acid)}body.playing .home-utility-links{display:none}body[data-theme=pixel]{--r-sm: 0px;--r-md: 2px;--r-lg: 4px}body[data-theme=neon]{--canvas: #070911;--surface: #121824;--surface-raised: #202a3a;--acid: #4be8e4;--orange: #f06ec9}@supports (color: oklch(50% 0 0)){body[data-theme=neon]{--canvas: oklch(10% .025 255);--surface: oklch(15% .025 255);--surface-raised: oklch(20% .035 255);--acid: oklch(86% .14 195);--orange: oklch(72% .2 335)}}body[data-theme=ember]{--acid: #f0b13f;--orange: #ef6247}body[data-theme=aurora]{--acid: #4fd8bd;--orange: #dc78e4}body[data-board-theme=neon-grid] .board-frame{box-shadow:0 0 0 2px var(--acid),0 0 26px #4be8e43d}body[data-profile-frame=chroma-line] .profile-identity{box-shadow:inset 0 0 0 2px var(--acid),inset 0 0 0 5px var(--surface)}body[data-lobby-bgm=night-drive]:not(.playing){--canvas: #151117;--surface: #211a24;--surface-raised: #2d2430}@supports (color: oklch(50% 0 0)){body[data-theme=ember]{--acid: oklch(79% .18 55);--orange: oklch(69% .22 25)}body[data-theme=aurora]{--acid: oklch(82% .16 180);--orange: oklch(72% .19 315)}body[data-lobby-bgm=night-drive]:not(.playing){--canvas: oklch(12% .025 315);--surface: oklch(18% .028 315);--surface-raised: oklch(23% .03 315)}}@supports (color: color-mix(in oklab,black,white)){body[data-board-theme=neon-grid] .board-frame{box-shadow:0 0 0 2px var(--acid),0 0 26px color-mix(in oklab,var(--acid) 24%,transparent)}}.score-record{width:min(100%,310px);margin:-8px 0 18px}.score-status{min-height:17px;margin:0 0 10px!important;color:var(--acid)!important;font:700 11px/1.45 system-ui,sans-serif!important;text-wrap:balance}.result-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border-radius:var(--r-sm);background:#ffffff12}.result-stats div{padding:10px;background:var(--surface-raised);text-align:left}.result-stats dt{margin-bottom:4px;color:var(--muted);font:8px/1.2 Chivo Mono,monospace;letter-spacing:.08em}.result-stats dd{margin:0;color:var(--ink);font:700 13px/1.2 Chivo Mono,monospace;font-variant-numeric:tabular-nums}.result-stats .result-spark{background:var(--surface-raised);background:color-mix(in srgb,var(--acid) 9%,var(--surface-raised));outline:1px solid color-mix(in srgb,var(--acid) 28%,transparent);outline-offset:-1px}.result-stats .result-spark dt{color:var(--acid);color:color-mix(in srgb,var(--acid) 72%,var(--muted))}.result-stats .result-spark dd{color:var(--acid)}.result-stats .result-spark[hidden]{display:none}.leaderboard{margin-top:12px;text-align:left}.leaderboard h3{margin:0 0 6px;color:var(--acid);font-size:11px;letter-spacing:.16em}.leaderboard ol{max-height:190px;margin:0;padding:0;overflow-y:auto;list-style:none;counter-reset:rank}.leaderboard li{counter-increment:rank;display:grid;grid-template-columns:26px minmax(0,1fr) auto auto;gap:7px;align-items:baseline;padding:6px 4px;box-shadow:inset 0 -1px #ffffff0f;color:var(--muted);font-size:11px}.leaderboard li:before{content:counter(rank,decimal-leading-zero);color:var(--acid)}.leaderboard li strong{color:var(--ink);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard li span{font-variant-numeric:tabular-nums}.leaderboard li .leaderboard-level{color:var(--acid);font-size:9px;letter-spacing:.04em;white-space:nowrap}.leaderboard li.leaderboard-skeleton{align-items:center;min-height:25px}.leaderboard li.leaderboard-skeleton:before{content:"";width:14px;height:6px;border-radius:2px;background:#d2ff002e;animation:leaderboard-skeleton-pulse 1.05s ease-in-out var(--skeleton-delay) infinite alternate}.skeleton-bar{display:block;height:7px;border-radius:2px;background:#ffffff17;animation:leaderboard-skeleton-pulse 1.05s ease-in-out var(--skeleton-delay) infinite alternate}.skeleton-name{width:min(76%,94px)}.skeleton-level{width:30px;background:#d2ff0021}.skeleton-score{width:42px}@keyframes leaderboard-skeleton-pulse{0%{opacity:.42;transform:scaleX(.96)}to{opacity:1;transform:scaleX(1)}}.home-ranking{width:min(100%,340px);min-height:0;padding:18px;border-radius:var(--r-md);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff14,0 18px 42px #00000052;text-align:left}.home-ranking[hidden]{display:none}.home-ranking-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.home-ranking-head p{margin:0 0 3px;color:var(--muted);font-size:8px;letter-spacing:.16em}.home-ranking-head h3{margin:0;color:var(--acid);font-size:18px;letter-spacing:.12em}.ranking-platform-label{margin:0 0 10px;color:var(--muted);font-size:8px;letter-spacing:.16em}.ranking-my-best{margin:0 0 8px;color:var(--acid);font:700 9px/1.4 Chivo Mono,monospace;letter-spacing:.08em;font-variant-numeric:tabular-nums}.game-overlay .ranking-close{min-width:38px;min-height:38px;border-radius:50%;color:var(--ink);background:#ffffff12;box-shadow:inset 0 0 0 1px #ffffff1a;font-size:20px}.home-ranking ol{height:clamp(216px,calc(var(--viewport-height) * .43),340px);margin:0;padding:0;overflow-y:auto;list-style:none;counter-reset:rank}.home-ranking li{counter-increment:rank;display:grid;grid-template-columns:30px 1fr auto;gap:8px;padding:8px 4px;box-shadow:inset 0 -1px #ffffff0f;color:var(--muted);font-size:12px}.home-ranking li:before{content:counter(rank,decimal-leading-zero);color:var(--acid)}.home-ranking li strong{overflow:hidden;color:var(--ink);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.home-ranking li span{font-variant-numeric:tabular-nums}.game-overlay.ranking-view>:not(.home-ranking){display:none}.impact-flash{position:absolute;z-index:1;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle at center,rgba(233,246,91,.38),transparent 62%)}.impact-flash.clear{animation:impact-clear .26s ease-out}.impact-flash.surge{animation:impact-surge .36s ease-out}.impact-flash.overload{animation:impact-overload .52s ease-out}@keyframes impact-clear{0%{opacity:.58;transform:scale(.82)}to{opacity:0;transform:scale(1.04)}}@keyframes impact-surge{0%{opacity:.7;transform:scale(.72)}to{opacity:0;transform:scale(1.08)}}@keyframes impact-overload{0%{opacity:1;transform:scale(.55)}45%{opacity:.45}to{opacity:0;transform:scale(1.18)}}.chain-callout{position:absolute;z-index:2;top:44%;left:0;right:0;text-align:center;font-family:Black Han Sans;font-size:36px;color:var(--acid);opacity:0;pointer-events:none;text-shadow:0 3px 0 #111}.chain-callout.pop{animation:chain-pop .52s cubic-bezier(.16,1,.3,1)}@keyframes chain-pop{0%{opacity:0;transform:scale(.65)}25%{opacity:1;transform:scale(1.08)}to{opacity:0;transform:scale(1)}}.level-callout{position:absolute;z-index:4;top:35%;left:0;right:0;color:var(--acid);font-family:Black Han Sans;font-size:44px;text-align:center;text-shadow:0 4px 0 #111;opacity:0;pointer-events:none}.level-callout.pop{animation:level-pop .9s cubic-bezier(.16,1,.3,1)}@keyframes level-pop{0%{opacity:0;transform:translateY(16px) scale(.7)}24%{opacity:1;transform:translateY(0) scale(1.08)}72%{opacity:1;transform:scale(1)}to{opacity:0;transform:translateY(-12px)}}footer{display:flex;align-items:center;justify-content:center;margin:0;color:var(--muted);font-size:7px}#buildVersion{color:var(--acid);font-variant-numeric:tabular-nums;letter-spacing:.08em}.gesture-hint{position:absolute;z-index:2;left:50%;bottom:14px;padding:7px 10px;border-radius:var(--r-pill);color:var(--ink);background:#0a0c0bd1;font-size:11px;font-weight:700;letter-spacing:.04em;opacity:0;pointer-events:none;transform:translate(-50%,8px);transition:opacity .18s ease-out,transform .18s ease-out}.gesture-hint.visible{opacity:1;transform:translate(-50%)}.tutorial{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));background:#050706f0;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.tutorial[hidden]{display:none}.resume-dialog{position:fixed;z-index:22;inset:0;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));background:#050706eb;overscroll-behavior:contain;-webkit-user-select:none;user-select:none}.resume-dialog[hidden]{display:none}.reward-dialog{position:fixed;z-index:24;inset:0;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));background:#050706f0;overscroll-behavior:contain}.reward-dialog[hidden]{display:none}.reward-card{width:min(100%,310px);padding:25px 22px 22px;border-radius:var(--r-lg);background:var(--surface);box-shadow:inset 0 0 0 1px #ffffff14,0 24px 60px #0000007a;text-align:center;animation:reward-dialog-enter .22s cubic-bezier(.16,1,.3,1) both}.reward-energy-mark{margin:14px 0 10px;color:var(--acid);font-size:28px;font-weight:700;letter-spacing:.08em}.reward-energy-mark span{color:var(--orange);font-size:16px}.reward-card h2{margin:0 0 12px;font-family:Black Han Sans,sans-serif;font-size:32px;font-weight:400;line-height:1.02;letter-spacing:-.022em;text-wrap:balance}.reward-card>p:not(.overlay-kicker){margin:0 0 20px;color:var(--muted);font:12px/1.55 system-ui,sans-serif;text-wrap:pretty}.reward-actions{display:grid;gap:10px}.reward-actions button{width:100%;min-height:50px;border:0;border-radius:var(--r-sm);font-weight:700;transition:transform .12s ease-out;touch-action:manipulation}.reward-actions button:active{transform:scale(.96)}.reward-actions button:focus-visible{outline:2px solid var(--orange);outline-offset:3px}#rewardConfirmButton{color:#101500;background:var(--acid);box-shadow:0 5px #687800}#rewardCancelButton{color:var(--muted);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff14}@keyframes reward-dialog-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.reward-card{animation:none}}.resume-card{width:min(100%,310px);padding:28px 24px 24px;border-radius:var(--r-lg);background:var(--surface);box-shadow:inset 0 0 0 1px #ffffff14,0 24px 60px #0000007a;text-align:center}.resume-card h2{margin:8px 0 12px;font-family:Black Han Sans,sans-serif;font-size:34px;font-weight:400;line-height:1.02;letter-spacing:-.022em}.resume-card>p:not(.overlay-kicker){margin:0 0 20px;color:var(--muted);font:13px/1.5 system-ui,sans-serif}.resume-card button{width:100%;min-height:50px;border:0;border-radius:var(--r-sm);color:#101500;color:#171802;background:var(--acid);box-shadow:0 5px #687800;box-shadow:0 5px oklch(52% .12 112);font-weight:700;transition:transform .12s ease-out}.resume-card button span{margin-left:5px;font-size:.88em}.resume-actions{display:grid;gap:10px}.resume-card #resumeDiscardButton{color:var(--muted);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff14}.tutorial-sheet{width:min(100%,390px);max-height:calc(var(--viewport-height) - max(36px,env(safe-area-inset-top) + env(safe-area-inset-bottom)));padding:25px 24px 22px;overflow-y:auto;border-radius:var(--r-lg);background:var(--surface);box-shadow:inset 0 0 0 1px #ffffff12,0 24px 60px #00000073}.tutorial-head{position:sticky;z-index:2;top:-25px;display:flex;align-items:center;justify-content:space-between;margin:-1px -1px 0;padding:1px 1px 8px;background:linear-gradient(var(--surface) 76%,transparent)}.tutorial-dismiss{flex:0 0 auto;width:40px;height:40px;border:0;border-radius:50%;color:var(--ink);background:var(--surface-raised);box-shadow:inset 0 0 0 1px #ffffff1a;font-size:22px;line-height:1}.tutorial h2{margin:8px 0 22px;font-family:Black Han Sans,sans-serif;font-size:30px;font-weight:400;line-height:1.02;letter-spacing:-.022em}.tutorial-demo{margin-bottom:12px}.demo-board{position:relative;height:164px;overflow:hidden;background-color:#070909;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:32px 32px;box-shadow:inset 0 0 0 1px #ffffff24}.demo-scene{position:absolute;inset:0;overflow:hidden}.demo-mode{position:absolute;top:13px;left:14px;color:var(--acid);font-size:11px;letter-spacing:.12em}.demo-instruction{position:absolute;top:30px;left:14px;color:var(--muted);font:11px/1.3 system-ui,sans-serif}.demo-cluster{position:absolute;left:50%;bottom:21px;display:grid;grid-template-columns:repeat(3,28px);gap:4px;transform:translate(-50%)}.demo-cluster>i{position:relative;width:28px;height:28px;border-radius:5px;background:var(--acid);box-shadow:inset 0 4px #ffffff40,0 0 12px #e9f65b40;box-shadow:inset 0 4px #ffffff40,0 0 12px color-mix(in oklab,var(--acid) 30%,transparent)}.demo-clear-scene{animation:demo-scene-clear 10s linear infinite}.demo-clear-cluster>i{animation:demo-clear-block 10s cubic-bezier(.16,1,.3,1) infinite}.demo-clear-cluster>i.demo-drop-cell{animation-name:demo-drop-block}.demo-drop-label{position:absolute;left:calc(50% - 43px);bottom:102px;color:var(--acid);font-size:9px;font-weight:700;letter-spacing:.08em;opacity:0;animation:demo-drop-label 10s ease-out infinite}.demo-result{position:absolute;right:14px;bottom:14px;color:var(--orange);font:700 11px Chivo Mono,monospace;opacity:0}.demo-clear-scene .demo-result{animation:demo-clear-result 10s ease-out infinite}.demo-shards{position:absolute;inset:0;pointer-events:none}.demo-shards b{position:absolute;left:46%;top:46%;width:7px;height:7px;background:var(--acid);opacity:0;animation:demo-shard 10s cubic-bezier(.16,1,.3,1) infinite}.demo-shards b:nth-child(2){--shard-x: 58px;--shard-y: -34px}.demo-shards b:nth-child(3){--shard-x: -54px;--shard-y: 30px}.demo-shards b:nth-child(4){--shard-x: 66px;--shard-y: 24px}.demo-shards b:nth-child(5){--shard-x: -68px;--shard-y: -26px}.demo-shards b:nth-child(6){--shard-x: 12px;--shard-y: -52px}.demo-shards b:nth-child(7){--shard-x: -18px;--shard-y: 50px}.demo-shards b:nth-child(8){--shard-x: 42px;--shard-y: 46px}.demo-reactor-scene{opacity:0;animation:demo-scene-reactor 10s linear infinite}.demo-reactor-cluster>i{background:var(--orange)}.demo-reactor-cluster>i[data-arrow]:after{content:attr(data-arrow);position:absolute;inset:0;display:grid;place-items:center;border-radius:inherit;color:#171909;background:var(--acid);box-shadow:inset 0 4px #ffffff40,0 0 14px #e9f65b73;box-shadow:inset 0 4px #ffffff40,0 0 14px color-mix(in oklab,var(--acid) 55%,transparent);font:700 17px Chivo Mono,monospace;opacity:0;animation:demo-reactor-arrow 10s cubic-bezier(.16,1,.3,1) infinite}.demo-reactor-beam{position:absolute;left:10px;right:10px;bottom:49px;height:4px;background:linear-gradient(90deg,transparent,var(--acid) 14%,#fff 50%,var(--acid) 86%,transparent);box-shadow:0 0 16px var(--acid);opacity:0;transform:scaleX(.05);animation:demo-reactor-beam 10s ease-out infinite}.demo-reactor-scene .demo-result{animation:demo-reactor-result 10s ease-out infinite}.demo-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:7px;color:var(--muted);font-size:10px;letter-spacing:.04em;text-align:center}.demo-tabs b{padding:6px 4px;background:#ffffff09}.demo-tabs b:first-child{animation:demo-tab-clear 10s linear infinite}.demo-tabs b:last-child{animation:demo-tab-reactor 10s linear infinite}.tutorial-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-bottom:10px}.tutorial-mobile{display:none}.tutorial-actions span{padding:8px 5px;color:var(--muted);background:#ffffff09;font:12px/1.35 system-ui,sans-serif;text-align:center}.tutorial-actions b{display:block;margin-bottom:3px;color:var(--acid);font:700 12px Chivo Mono,monospace}.event-guide{display:flex;align-items:center;gap:12px;margin-top:8px;padding:10px 12px;border-radius:var(--r-sm);color:var(--muted);background:#ffffff0a;font:12px/1.45 system-ui,sans-serif;text-align:left}.event-guide strong{flex:0 0 auto;color:var(--acid);font:700 12px Chivo Mono,monospace;letter-spacing:.08em}.tutorial-close{width:100%;min-height:50px;margin-top:22px;border:0;border-radius:var(--r-sm);color:#101500;color:#171802;background:var(--acid);box-shadow:0 5px #687800;box-shadow:0 5px oklch(52% .12 112);font-weight:700;transition:transform .12s ease-out}.tutorial-sheet>small{display:block;margin-top:16px;color:var(--muted);font:12px/1.5 system-ui,sans-serif;text-align:center}@keyframes demo-scene-clear{0%,44%{opacity:1}49%,95%{opacity:0}to{opacity:1}}@keyframes demo-clear-block{0%,17%{opacity:.58;transform:scale(.92)}22%{opacity:1;transform:scale(1.08)}29%{opacity:1;transform:scale(1)}36%,to{opacity:0;transform:scale(1.34)}}@keyframes demo-drop-block{0%,6%{opacity:.9;transform:translateY(-68px) scale(.96)}18%{opacity:1;transform:translateY(0) scale(1)}22%{opacity:1;transform:translateY(0) scale(1.08)}29%{opacity:1;transform:translateY(0) scale(1)}36%,to{opacity:0;transform:translateY(0) scale(1.34)}}@keyframes demo-drop-label{0%,5%{opacity:0;transform:translateY(-8px)}8%,15%{opacity:1;transform:translateY(0)}20%,to{opacity:0;transform:translateY(8px)}}@keyframes demo-clear-result{0%,24%{opacity:0;transform:translateY(5px)}30%,39%{opacity:1;transform:translateY(0)}45%,to{opacity:0;transform:translateY(-5px)}}@keyframes demo-shard{0%,27%{opacity:0;transform:translate(0) scale(1)}31%{opacity:1}42%,to{opacity:0;transform:translate(var(--shard-x, -42px),var(--shard-y, -42px)) scale(.35)}}@keyframes demo-scene-reactor{0%,47%{opacity:0}52%,95%{opacity:1}to{opacity:0}}@keyframes demo-reactor-arrow{0%,63%{opacity:0;transform:scale(.45) rotate(-20deg)}69%,92%{opacity:1;transform:scale(1) rotate(0)}98%,to{opacity:0;transform:scale(1.2)}}@keyframes demo-reactor-beam{0%,70%{opacity:0;transform:scaleX(.05)}74%{opacity:1;transform:scaleX(1)}82%,to{opacity:0;transform:scaleX(1)}}@keyframes demo-reactor-result{0%,69%{opacity:0;transform:translateY(5px)}75%,91%{opacity:1;transform:translateY(0)}97%,to{opacity:0;transform:translateY(-5px)}}@keyframes demo-tab-clear{0%,44%,to{color:var(--acid)}49%,95%{color:var(--muted)}}@keyframes demo-tab-reactor{0%,47%,to{color:var(--muted)}52%,95%{color:#f28bd5}}body.playing .brand-row{position:absolute;z-index:8;top:max(4px,env(safe-area-inset-top));right:4px}body.playing .brand-lockup{display:none}body.playing .icon-button{width:38px;height:38px;background:#ffffff0e}body.playing .game-shell{width:min(100%,900px);height:var(--viewport-height);min-height:0;padding:max(4px,env(safe-area-inset-top)) 0 max(8px,env(safe-area-inset-bottom));grid-template-rows:auto minmax(0,1fr);gap:7px;overflow:hidden}body.playing .score-strip{width:calc(100% - 94px);height:43px;margin-left:4px;padding:6px 8px 5px;grid-template-columns:1.6fr 1fr 1fr;border-radius:var(--r-sm)}body.playing .score-strip div:not(:first-child){padding-left:6px}body.playing .score-strip span{font-size:10px}body.playing .score-strip strong{font-size:14px}body.playing .play-area{position:relative;display:block;min-height:0;padding-top:0}body.playing .board-frame{width:min(100%,calc((var(--viewport-height) - max(4px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)) - 50px) / 2));height:auto;margin:0 auto;aspect-ratio:1 / 2;border-radius:0}body.playing .piece-rack{position:absolute;z-index:2;top:6px;padding-top:0;pointer-events:none}body.playing .hold-rack{left:calc(50% - min(50vw,calc((var(--viewport-height) - max(4px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)) - 50px) / 4)) + 4px);width:34px}body.playing .next-rack{left:auto;right:calc(50% - min(50vw,calc((var(--viewport-height) - max(4px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)) - 50px) / 4)) + 4px);width:96px;align-items:flex-end}body.playing .rack-label{margin-bottom:0;font-size:10px;line-height:11px}body.playing .piece-rack small{display:none}body.playing footer{display:none}@media(any-pointer:coarse),(max-width:619px){.score-record input{font-size:16px}.tutorial-mobile{display:grid}.tutorial-desktop{display:none}.tutorial-actions{grid-template-columns:repeat(2,1fr)}.tutorial-actions span:last-child:nth-child(odd){grid-column:1 / -1}body.playing .game-shell{grid-template-rows:auto minmax(0,1fr)}body.playing .board-frame{width:min(100%,calc((var(--viewport-height) - max(4px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)) - 50px) / 2));max-height:none}body.playing .hold-rack{left:calc(50% - min(50vw,calc((var(--viewport-height) - max(4px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)) - 50px) / 4)) + 4px)}body.playing .next-rack{right:calc(50% - min(50vw,calc((var(--viewport-height) - max(4px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)) - 50px) / 4)) + 4px)}}@media(min-width:620px){.game-shell{padding-inline:48px}.play-area{grid-template-columns:72px minmax(0,320px) 72px;gap:16px}body.playing .play-area{padding-top:0}body.playing .brand-row{top:max(10px,env(safe-area-inset-top));right:10px}body.playing .game-shell{padding:max(10px,env(safe-area-inset-top)) 48px max(8px,env(safe-area-inset-bottom))}body.playing .score-strip{width:auto;height:auto;margin-left:0;padding:7px 96px 7px 12px;grid-template-columns:1.6fr 1fr 1fr;border-radius:var(--r-md)}body.playing .score-strip div:not(:first-child){padding-left:12px}body.playing .score-strip span{font-size:8px}body.playing .score-strip strong{font-size:14px}body.playing .board-frame{width:min(440px,calc((var(--viewport-height) - 76px) / 2));height:auto;margin-inline:auto;aspect-ratio:1 / 2;border-radius:0}body.playing .piece-rack{top:0;width:52px}body.playing .rack-label{margin-bottom:5px;font-size:9px;line-height:normal}body.playing .hold-rack{left:calc(50% - 292px)}body.playing .next-rack{left:calc(50% + 240px);right:auto;width:168px;align-items:flex-end}}@media(max-height:720px){.game-shell{gap:7px;padding-top:10px}h1{font-size:31px}.eyebrow{display:none}.score-strip{padding-block:6px}.play-area{max-height:calc(var(--viewport-height) - 245px)}.board-frame{max-height:100%;width:auto;justify-self:center}body.playing .play-area{max-height:none}body.playing .board-frame{width:min(100%,calc((var(--viewport-height) - 10px - max(8px,env(safe-area-inset-bottom)) - 50px) / 2));max-height:calc(var(--viewport-height) - 68px)}}@media(max-width:350px){footer{font-size:6px;letter-spacing:.08em}footer span{white-space:nowrap}.end-actions button{gap:4px;font-size:11px}.end-actions button span{font-size:9px}}@media(max-height:600px){.game-overlay{padding:14px}.game-overlay h2{margin:5px 0 7px;font-size:24px}.game-overlay>p:not(.overlay-kicker){margin-bottom:9px;font-size:11px;line-height:1.4}}@media(prefers-reduced-motion:reduce){.leaderboard-skeleton:before,.skeleton-bar{animation:none!important}.board-frame:after{animation:none!important;background-position:50% 0;opacity:1}.demo-scene,.demo-clear-cluster>i,.demo-drop-label,.demo-shards b,.demo-result,.demo-reactor-beam,.demo-reactor-cluster>i[data-arrow]:after,.demo-tabs b{animation:none!important}.demo-clear-scene,.demo-clear-cluster>i{opacity:1;transform:none}.demo-reactor-scene{display:none}.demo-tabs b:first-child{color:var(--acid)}.ranked-loading-mark i{opacity:1;transform:none}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.attendance-strip{margin:20px 0;padding:16px 0;border-block:1px solid rgba(255,255,255,.08)}.attendance-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.attendance-heading h3{margin:0;font-size:18px}.attendance-heading p,.attendance-note{color:#b8bdb4;font-size:12px;line-height:1.5;margin:6px 0}.attendance-heading button{min-height:44px;flex-shrink:0;padding:8px 12px;border:0;border-radius:8px;background:#d7ef35;color:#171b0c;font-weight:700;touch-action:manipulation;transition:transform .12s ease-out}.attendance-heading button:active{transform:scale(.96)}.attendance-heading button:disabled{background:#30352c;color:#c3c9b9}.attendance-heading button:focus-visible{outline:2px solid #ff805b;outline-offset:3px}.attendance-track{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;list-style:none;padding:0;margin:16px 0 10px}.attendance-track li{display:grid;gap:8px;text-align:center;padding:10px 0;background:#ffffff0a;border-radius:4px;color:#b8bdb4;font-variant-numeric:tabular-nums}.attendance-track span{font-size:11px}.attendance-track strong{font-size:14px}.attendance-track .claimed{color:#d7ef35;background:#d7ef3514}.attendance-track .current{color:#f0f0e8;outline:1px solid #ff805b;outline-offset:-1px}.attendance-track .claimed strong{animation:attendance-ignite .22s ease-out}@keyframes attendance-ignite{0%{opacity:.4;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.attendance-track .claimed strong{animation:none}.attendance-heading button{transition:none}}.first-skin-guide{margin:16px 0;padding:18px;background:#dfff000f;border-radius:12px}.first-skin-guide h4{font-size:21px;margin:6px 0 10px}.first-skin-guide p{margin:8px 0}.first-skin-guide small{display:block;line-height:1.6}.first-skin-guide progress{width:100%;accent-color:#dfff00;margin:8px 0}.first-skin-result{width:100%;min-height:44px;padding:10px;margin-top:12px;color:#dfff00;background:#dfff0014;border:0;border-radius:8px;font:inherit}.shop-starter-pop .shop-swatch{background:#ff805b;box-shadow:inset 0 0 0 8px #ff805b,inset 0 0 0 10px #fff7db}
