:root{color-scheme:dark;--bg:#101114;--panel:#191a1f;--panel-deep:#141519;--line:#2a2b31;--text:#f0f0f2;--muted:#93959e;--lime:#d2f86a;--lime-dim:#82994e;--font:'Inter',Arial,sans-serif;--display:'Space Grotesk',Arial,sans-serif}
.upside-down{transform:rotate(180deg)}
.buddy-effects{margin-top:12px;padding:12px;border:1px solid #ac83db;border-radius:10px;color:#eddbff;background:#292034;font-size:14px;line-height:1.6;text-align:center}
.buddy-effects[hidden]{display:none}
.mascot-sprite.power-mascot{background:none}
.power-mascot>canvas{width:100%;height:100%;display:block}
.mascot-fallback .power-mascot:after{content:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.5}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default}button,a,input{outline-offset:5px}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--lime)}button{border:0}a{color:inherit;text-decoration:none}svg.icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-defs{position:absolute;width:0;height:0;overflow:hidden}button{transition:background .16s,color .16s,transform .16s}button:hover:not(:disabled){filter:brightness(1.12)}button:active:not(:disabled){transform:translateY(1px)}.site-header{height:88px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 4.8%;gap:58px;background:#111215}.brand{display:flex;align-items:center;gap:11px;font-family:var(--display);font-size:25px;font-weight:700;letter-spacing:-1.3px;white-space:nowrap}.brand-rush{color:var(--lime)}.brand sup{font-family:var(--font);font-size:12px;top:-.8em;position:relative;margin-left:3px;letter-spacing:0}.brand-mark{width:28px;height:28px;display:grid;grid-template:repeat(2,12px)/repeat(2,12px);gap:3px}.brand-mark i{background:var(--lime);border-radius:2px}.brand-mark i:last-child{grid-column:2}.site-header nav{height:100%;display:flex;align-items:center;gap:30px;font-size:14px;font-weight:500}.site-header nav button{height:100%;padding:0;background:none;color:var(--muted);font-size:14px}.site-header nav button span{margin-left:5px;font-size:17px}.nav-active{height:100%;display:flex;align-items:center;position:relative}.nav-active:after{content:'';position:absolute;height:3px;bottom:-1px;left:0;right:0;background:var(--lime)}.header-actions{margin-left:auto;display:flex;align-items:center;gap:13px}.solo-badge{font-family:var(--display);font-size:12px;letter-spacing:1.6px;font-weight:500;color:#a6a8b0}.header-divider{height:22px;width:1px;background:var(--line);margin:0 8px}.icon-button{width:36px;height:36px;display:inline-flex;justify-content:center;align-items:center;background:transparent;border-radius:8px;color:#a7a8b1;padding:0}.icon-button:hover{background:#24262c;color:var(--text)}.icon-button:disabled{opacity:.35}.icon-button.compact{width:29px;height:29px}.icon-button.compact .icon{width:16px;height:16px}main{max-width:1350px;margin:auto;padding:35px 48px 0}.arena-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2px;color:#92949e}.arena-heading h1{font-family:var(--display);font-size:36px;line-height:1.2;letter-spacing:-1.6px;margin:8px 0 0;font-weight:600}.arena-heading h1 em{font-style:normal;color:var(--lime)}.mode-switch{display:flex;gap:5px;padding:5px;border-radius:10px;background:#1a1b20;border:1px solid #28292e}.mode-switch button{height:43px;border-radius:6px;display:flex;align-items:center;gap:8px;padding:0 17px;background:transparent;color:#a8a9b2;font-size:14px;font-weight:600}.mode-switch button .icon{width:16px;height:16px}.mode-switch button.active{color:#171c0e;background:var(--lime);box-shadow:0 2px 10px #0002}.mode-mini{font-family:var(--display);font-size:12px;letter-spacing:.4px;opacity:.7;margin-left:5px;white-space:nowrap}.arena-grid{display:grid;grid-template-columns:minmax(190px,244px) minmax(400px,490px) minmax(190px,244px);gap:30px;align-items:start;justify-content:space-between}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px}.left-panel,.right-panel{padding-top:37px}.panel-label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:600;letter-spacing:1.2px;color:#b2b3ba;line-height:1.3}.panel-label>span{display:inline-flex;align-items:center;gap:7px}.panel-label .icon{width:16px;height:16px}.score-panel{padding:22px 22px 18px}.small-tag{font-size:12px;letter-spacing:.8px;border:1px solid #414738;color:var(--lime);border-radius:4px;padding:4px 6px}.score-label{font-size:13px;color:var(--muted);margin:28px 0 2px}.score-number{font-family:var(--display);font-size:39px;line-height:1.25;font-weight:600;letter-spacing:-1.7px;font-variant-numeric:tabular-nums}.score-rule{height:1px;background:var(--line);margin:24px 0 20px}.stat-pair{display:grid;grid-template-columns:1fr 1fr}.stat-pair>div{display:flex;flex-direction:column;gap:5px}.stat-pair>div:nth-child(2){border-left:1px solid var(--line);padding-left:23px}.stat-pair span{color:var(--muted);font-size:12px}.stat-pair strong{font-family:var(--display);font-size:27px;font-weight:500;letter-spacing:-.8px}.timer-row{display:flex;align-items:center;gap:7px;margin:27px 0 11px}.timer-row .icon{width:14px;height:14px;color:var(--muted)}.timer-row>span{font-size:12px;color:var(--muted)}.timer-row strong{margin-left:auto;font-family:var(--display);font-size:18px;font-weight:500;font-variant-numeric:tabular-nums}progress{display:block;width:100%;height:4px;appearance:none;border:0;border-radius:5px;overflow:hidden;background:#303239}progress::-webkit-progress-bar{background:#303239;border-radius:5px}progress::-webkit-progress-value{background:var(--lime);border-radius:5px;transition:width .15s}progress::-moz-progress-bar{background:var(--lime);border-radius:5px}.power-panel{margin-top:17px;padding:22px 19px 17px;background:linear-gradient(145deg,#1e2318 0%,#191b1c 65%);border-color:#343b27}.power-panel .panel-label>span:first-child{color:var(--lime);font-size:12px;letter-spacing:1.1px}.power-percent{font-family:var(--display);font-size:14px;letter-spacing:0;color:#b9c79d}.energy-segments{display:flex;gap:4px;margin:20px 0 14px;height:10px}.energy-segments i{flex:1;background:#31382a;border-radius:2px}.energy-segments i.filled{background:var(--lime);box-shadow:0 0 8px #d2f83220}.power-panel p{font-size:12px;line-height:1.7;color:#a4aa99;margin:0 0 17px}.power-button{display:flex;align-items:center;gap:7px;width:100%;border-radius:6px;background:#292e22;color:#b1bb9e;border:1px solid #3e4730;font-size:12px;font-weight:600;height:39px;padding:0 10px}.power-button .icon{width:15px;height:15px}.power-button kbd{margin-left:auto;min-width:22px;min-height:22px;background:#343c28;border-color:#444f35;color:#c0cda9;font-size:12px}.power-button:enabled{background:var(--lime);color:#19210d;border-color:var(--lime);box-shadow:0 0 22px #d2f82522}.power-foot{font-size:12px;color:#8d9680;margin-top:12px;white-space:nowrap}.power-foot span{padding:0 3px}.personal-record{display:flex;align-items:center;gap:12px;margin-top:24px;padding:0 9px}.personal-record>.icon{color:#c3b184;width:21px;height:21px}.personal-record>div{display:flex;flex-direction:column;gap:3px}.personal-record span{font-size:12px;color:var(--muted)}.personal-record strong{font-family:var(--display);font-size:19px;letter-spacing:.6px;font-weight:500}.game-topline{display:flex;align-items:center;justify-content:space-between;height:37px;padding:0 3px}.game-topline>div{display:flex;gap:3px}.game-state{font-family:var(--display);color:#9699a4;letter-spacing:1.25px;font-size:12px;font-weight:500}.play-stage{display:grid;grid-template-columns:72px minmax(230px,300px) 72px;gap:13px;justify-content:center;align-items:start}.board-frame{position:relative;width:100%;aspect-ratio:1/2;border:1px solid #454946;background:#0e1012;border-radius:9px;box-shadow:0 0 0 5px #1b1e1b,0 20px 60px #0002;overflow:hidden;isolation:isolate;transition:border-color .2s,box-shadow .3s}.board-frame>canvas{display:block;width:100%;height:100%}.board-top-glow{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#d2f86a90,transparent);pointer-events:none;z-index:3}.board-floor{position:absolute;bottom:0;left:0;right:0;height:3px;background:#d2f86a;box-shadow:0 0 22px #d2f86a70;pointer-events:none}.piece-rail{text-align:center;min-width:0}.rail-label{font-family:var(--display);font-size:12px;font-weight:500;letter-spacing:1.4px;color:#a2a4af;margin:1px 0 13px}.hold-container,.next-container{border:1px solid #2b2d33;background:#17191d;border-radius:8px;overflow:hidden}.hold-container{position:relative;width:100%;aspect-ratio:1.15}.hold-container canvas{display:block;width:100%;height:100%}.empty-hold{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#535660}.hold-rail>kbd{margin-top:12px;display:inline-flex;min-height:21px;font-size:12px;letter-spacing:.1px;padding:2px 4px;min-width:0}.rail-hint{display:block;font-size:12px;line-height:1.6;color:#6e717d;margin-top:16px}.next-container{padding-top:8px}.next-container canvas{width:100%;height:auto;display:block}.board-caption{display:flex;justify-content:center;gap:21px;align-items:center;margin:18px -10px 0;font-family:var(--display);font-size:12px;letter-spacing:.6px;color:#91939f;white-space:nowrap}.board-caption>span{display:flex;align-items:center;gap:7px}.board-caption i{height:5px;width:5px;background:var(--lime);border-radius:50%;box-shadow:0 0 9px #d2f85260}.board-caption kbd{font-family:var(--font);font-size:12px;min-height:19px;min-width:27px;padding:2px 4px}.game-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 22px 60px;text-align:center;background:linear-gradient(180deg,#0e101225 0%,#0e1012d9 24%,#0e1012ef 62%,#0e10127a 85%,#0e101200 100%);z-index:5}.game-overlay[hidden]{display:none}.overlay-bolt{color:var(--lime);display:flex;justify-content:center;align-items:center;width:45px;height:45px;border:1px solid #667348;background:#262e1c;border-radius:12px;transform:rotate(-6deg);margin-bottom:23px;box-shadow:0 0 38px #d2f8480c}.overlay-bolt .icon{width:25px;height:25px;fill:var(--lime);stroke-width:1}.overlay-eyebrow{font-family:var(--display);font-size:12px;letter-spacing:1.25px;color:#9a9f90;margin-bottom:12px;white-space:nowrap}.game-overlay h2{font-family:var(--display);font-weight:700;font-size:38px;line-height:1.03;letter-spacing:-1.7px;margin:0;text-wrap:balance}.game-overlay h2 em{font-style:normal;color:var(--lime)}.game-overlay p{font-size:13px;line-height:1.65;color:#a7a9b0;margin:19px 0 24px}.play-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:47px;border-radius:7px;background:var(--lime);color:#17200b;font-weight:700;font-size:14px;box-shadow:0 5px 25px #d2f82c09}.play-button .icon{width:17px;height:17px}.play-button .icon:first-child{fill:currentColor;stroke-width:1}.play-button .icon:last-child{margin-left:auto;fill:none}.play-button .icon:first-child{margin-right:3px}.play-button{padding:0 16px}.enter-hint{font-size:12px;color:#80848b;display:flex;align-items:center;gap:6px;margin-top:13px}.enter-hint kbd{min-width:0;min-height:20px;padding:2px 5px;font-size:12px}.challenge-panel{padding:21px 20px 20px;background:radial-gradient(ellipse at 100% 0,#29223680,transparent 65%),#191a1f}.challenge-panel .panel-label{font-size:12px;letter-spacing:1px}.challenge-panel .panel-label>.icon{color:#8d8e9b}.challenge-symbol{display:flex;align-items:center;justify-content:space-between;margin:22px 0 17px}.challenge-symbol>.icon{color:#c6a1f3;width:31px;height:31px;stroke-width:1.5}.challenge-symbol>span{font-family:var(--display);font-size:39px;color:#3e3948;font-weight:500;line-height:1}.challenge-panel h2{font-family:var(--display);font-size:18px;font-weight:500;letter-spacing:-.3px;margin:0 0 8px}.challenge-panel p{font-size:12px;line-height:1.8;color:#9b98a6;margin:0}.challenge-progress-label{display:flex;justify-content:space-between;font-size:12px;color:#92909b;margin:23px 0 10px}.challenge-progress-label strong{font-family:var(--display);font-size:12px;font-weight:500;color:#c5b4de}.challenge-panel progress::-webkit-progress-value{background:#ad84e0}.challenge-panel progress::-moz-progress-bar{background:#ad84e0}.controls-panel{margin-top:28px;padding:0 3px}.controls-panel .panel-label{font-size:12px;letter-spacing:1px;margin-bottom:20px}.controls-panel .panel-label .icon{width:18px;height:18px;color:#676975}.key-list{margin:0}.key-list>div{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:11px;min-height:24px}.key-list dt{font-size:12px;color:#a2a3ad}.key-list dd{display:flex;align-items:center;gap:4px;margin:0}.key-list dd>span{font-size:12px;color:#777985;padding:0 2px}kbd{font-family:var(--display);font-size:12px;min-height:24px;min-width:25px;padding:2px 6px;display:inline-flex;align-items:center;justify-content:center;background:#202228;color:#b5b7c1;border:1px solid #363840;border-bottom:2px solid #41434d;border-radius:4px;font-weight:400;white-space:nowrap}.wide-key{font-size:12px;min-width:70px;letter-spacing:.6px}.text-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 0;background:none;color:#bfc1c9;font-size:12px;margin-top:5px}.text-button .icon{width:14px;height:14px;color:#747783}.combo-tip{display:flex;gap:11px;border-top:1px solid var(--line);padding:20px 3px 0;margin-top:10px}.combo-icon{font-family:var(--display);color:var(--lime);font-weight:500;font-size:21px;white-space:nowrap}.combo-tip p{font-size:12px;line-height:1.7;margin:0;color:#777b86}.combo-tip strong{display:block;font-weight:500;color:#b5b7be;margin-bottom:4px}.arena-footer{border-top:1px solid #25262c;margin-top:35px;padding:20px 0 23px;display:flex;justify-content:space-between;align-items:center;color:#666974;font-size:12px}.arena-footer>span{font-family:var(--display);letter-spacing:1px}.arena-footer>div{display:flex;gap:28px}.footer-mark{font-family:var(--display);color:#8a8d96;letter-spacing:1px}.touch-controls{display:none}.game-callout{position:absolute;top:30%;left:0;right:0;text-align:center;z-index:4;pointer-events:none;font-family:var(--display);color:var(--lime);font-size:30px;font-weight:700;text-shadow:0 3px 15px #000;opacity:0}.game-callout.show{animation:callout 1.1s ease-out forwards}.game-callout small{display:block;color:#fff;font-size:14px;font-weight:500;letter-spacing:2px;margin-top:7px}.board-frame.overdrive{border-color:var(--lime);box-shadow:0 0 0 5px #758c3333,0 0 45px #d2f82422}.board-frame.impact{animation:impact .2s ease-out}.end-stats{width:100%;margin:0 0 20px;display:flex;justify-content:center;gap:20px}.end-stats[hidden]{display:none}.end-stats strong{display:block;color:var(--lime);font-family:var(--display);font-size:23px}.end-stats span{font-size:12px;color:#a5a7b0}.timer-row.urgent strong{color:#f58a9e}.modal{max-width:min(640px,calc(100vw - 32px));width:640px;max-height:calc(100dvh - 48px);overflow:auto;padding:32px;border:1px solid #414438;border-radius:17px;color:var(--text);background:#191b20;box-shadow:0 40px 150px #0009}.modal::backdrop{background:#07090cbf;backdrop-filter:blur(7px)}.modal-heading{display:flex;justify-content:space-between;gap:18px;align-items:start;margin-bottom:22px}.modal h2{font-family:var(--display);font-size:29px;letter-spacing:-1px;margin:5px 0 0;line-height:1.2}.modal>p{color:#abaeb9;line-height:1.7;font-size:15px}.modal .eyebrow{font-size:12px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:25px 0}.help-grid h3{font-size:14px;color:var(--lime);font-weight:500;margin-bottom:17px}.help-grid .key-list dt{font-size:13px}.help-note{display:flex;gap:13px;padding:18px;background:#252c1c;border:1px solid #3d492c;border-radius:9px}.help-note>.icon{color:var(--lime);margin-top:3px}.help-note p{font-size:13px;color:#aebc9b;line-height:1.75;margin:0}.help-note strong{display:block;color:#d4e3bc;font-weight:500}.modal .help-small{font-size:12px;color:#969ba8;margin:18px 0}.modal-done{margin-top:24px}.settings-modal{width:460px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line);cursor:pointer}.setting-row strong{font-weight:500;font-size:15px;display:block}.setting-row small{color:var(--muted);font-size:12px;display:block;margin-top:4px}.setting-row input{appearance:none;height:25px;width:44px;min-width:44px;background:#3b3d46;border-radius:20px;position:relative;cursor:pointer}.setting-row input:after{content:'';position:absolute;top:4px;left:4px;width:17px;height:17px;background:#171d0f;border-radius:50%;transition:transform .2s}.setting-row input:checked{background:var(--lime)}.setting-row input:checked:after{transform:translateX(19px)}.confirm-modal{width:470px}.confirm-actions{display:flex;gap:12px;margin-top:25px}.confirm-actions button{width:auto;flex:1;font-size:13px;white-space:nowrap}.secondary-button{background:#30333b;border:1px solid #424550;border-radius:7px;padding:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.reduced-motion *{animation:none!important;transition:none!important}.power-panel.unavailable{background:var(--panel);border-color:var(--line)}.power-panel.unavailable .panel-label>span:first-child{color:#a1a4b2}.power-panel.unavailable .energy-segments{opacity:.4}.power-panel.unavailable .power-foot{white-space:normal}.game-overlay.paused{background:#0e1012e8}.game-overlay.over h2{font-size:34px}.game-overlay.over{padding-bottom:25px}.game-overlay.over .overlay-bolt{margin-bottom:17px}.game-overlay.over p{margin:14px 0}.hold-container.used{opacity:.4}body:fullscreen{overflow:auto}#game-app:fullscreen{background:var(--bg);max-width:none;padding:25px max(30px,calc((100vw - 1254px)/2));overflow:auto}.modal button{flex-shrink:0}
@keyframes callout{0%{opacity:0;transform:translateY(8px) scale(.9)}15%,65%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-18px)}}@keyframes impact{0%,100%{transform:translateY(0)}40%{transform:translateY(4px)}70%{transform:translateY(-2px)}}
@media(min-width:1450px){main{padding-top:40px}.arena-heading{margin-bottom:32px}.arena-footer{margin-top:38px}}
@media(max-width:1180px){main{padding:28px 30px 0}.arena-grid{grid-template-columns:205px minmax(360px,460px) 205px;gap:18px}.play-stage{grid-template-columns:60px minmax(220px,280px) 60px;gap:10px}.score-panel{padding:19px 17px}.power-panel{padding:19px 14px}.challenge-panel{padding:19px 16px}.game-overlay{padding-left:17px;padding-right:17px}.game-overlay h2{font-size:34px}.power-foot{font-size:12px}.score-number{font-size:35px}.board-caption{font-size:12px;gap:12px}.rail-label{font-size:12px;letter-spacing:.6px}.rail-hint{font-size:12px}.hold-rail>kbd{font-size:12px}.game-overlay .overlay-eyebrow{font-size:12px}.site-header{padding:0 30px}}
@media(max-width:1000px){main{max-width:850px}.arena-grid{grid-template-columns:220px minmax(350px,480px);gap:32px}.right-panel{display:none}.play-stage{grid-template-columns:65px minmax(220px,285px) 65px}.site-header{gap:38px}.arena-heading h1{font-size:32px}.score-number{font-size:38px}.mode-switch button{padding:0 12px}.board-caption{font-size:12px}.caption-key{display:none!important}.mode-mini{display:none}}
@media(max-width:720px){.site-header{height:69px;padding:0 21px;gap:20px}.brand{font-size:22px}.brand-mark{transform:scale(.9)}.site-header nav{margin-left:auto;gap:0}.site-header nav .nav-active{display:none}.site-header nav button{font-size:12px}.header-actions{margin-left:0;gap:3px}.header-divider,.solo-badge{display:none}main{padding:23px 20px 0;max-width:540px}.arena-heading{gap:12px;margin-bottom:18px}.arena-heading .eyebrow{font-size:12px;letter-spacing:1.2px}.arena-heading h1{font-size:27px;letter-spacing:-1px;margin-top:5px}.mode-switch{padding:4px;gap:2px}.mode-switch button{height:36px;padding:0 9px;font-size:12px;gap:4px}.mode-switch button .icon{width:13px;height:13px}.mode-switch button[data-mode=zen] .icon{display:none}.arena-grid{display:flex;flex-direction:column;gap:15px}.left-panel{display:contents}.score-panel{order:0;width:100%;display:flex;align-items:center;gap:16px;padding:12px 15px;position:relative}.score-panel .panel-label,.score-rule,.score-label,.score-panel progress{display:none}.score-number{font-size:28px;letter-spacing:-1px;min-width:103px}.stat-pair{margin-left:auto;gap:14px}.stat-pair>div{gap:0}.stat-pair>div:nth-child(2){padding-left:14px}.stat-pair strong{font-size:20px}.stat-pair span{font-size:12px}.timer-row{margin:0 0 0 1px;display:flex;border-left:1px solid var(--line);padding-left:13px;gap:0}.timer-row .icon,.timer-row>span{display:none}.timer-row strong{font-size:19px}.power-panel{order:3;width:100%;margin-top:0;padding:14px 16px;display:grid;grid-template-columns:1fr 160px;column-gap:18px;align-items:center}.power-panel .panel-label{grid-column:1;grid-row:1}.power-panel .panel-label>span:first-child{font-size:12px}.power-panel .panel-label .icon{width:13px;height:13px}.power-percent{font-size:12px}.power-panel .energy-segments{margin:10px 0 0;height:7px;grid-column:1;grid-row:2}.power-panel p{display:none}.power-button{grid-column:2;grid-row:1/3;min-height:40px;font-size:12px;padding:0 8px}.power-foot{grid-column:1/3;font-size:12px;margin-top:10px;text-align:center}.personal-record{order:4;align-self:center;margin:0;padding:5px 0;gap:10px}.personal-record>div{display:flex;flex-direction:row;gap:10px;align-items:center}.personal-record strong{font-size:16px}.personal-record span{font-size:12px}.personal-record>.icon{width:17px;height:17px}.game-section{order:2;width:100%;margin-top:-5px}.game-topline{height:29px;margin-bottom:8px}.game-state{font-size:12px;letter-spacing:1px}.game-topline .icon-button{height:27px}.play-stage{grid-template-columns:54px minmax(180px,260px) 54px;gap:11px}.rail-label{font-size:12px;letter-spacing:.6px}.board-frame{box-shadow:0 0 0 4px #1b1e1b}.board-caption{margin-top:14px;font-size:12px}.rail-hint{font-size:12px}.next-container{padding:3px 0}.rail-label{margin-bottom:10px}.game-overlay{padding:15px 16px 35px}.overlay-bolt{margin-bottom:18px;width:39px;height:39px}.game-overlay h2{font-size:33px}.game-overlay p{font-size:12px;margin:15px 0 21px}.play-button{font-size:12px;height:43px;padding:0 12px}.game-overlay .overlay-eyebrow{font-size:12px;letter-spacing:.8px}.game-overlay.over h2{font-size:28px}.end-stats strong{font-size:21px}.end-stats{margin-bottom:14px}.touch-controls{display:grid;grid-template-columns:35px repeat(4,1fr) 1.55fr;gap:6px;margin-top:17px;touch-action:none;user-select:none}.touch-controls button{background:#25272f;border:1px solid #3a3e48;border-bottom:3px solid #414650;height:43px;border-radius:7px;font-size:22px;touch-action:none}.touch-controls button:first-child{font-size:14px;color:#a8adb8}.touch-controls .touch-drop{font-size:12px;font-weight:700;background:#d2f86a;color:#17200b;border-color:#d2f86a;border-bottom-color:#819f41}.arena-footer{margin-top:16px;justify-content:center;text-align:center;padding:17px 0 21px}.arena-footer>span{font-size:12px}.arena-footer>div{display:none}.modal{padding:23px}.modal h2{font-size:25px}.help-grid{gap:20px;grid-template-columns:1fr}.help-grid>div{border-top:1px solid var(--line)}.modal>p{font-size:14px}.confirm-actions{flex-direction:column}.game-callout{font-size:24px}}
@media(max-width:390px){main{padding-left:12px;padding-right:12px}.site-header{padding:0 12px;gap:10px}.brand{font-size:20px;gap:7px}.site-header nav button{font-size:12px}.header-actions .icon-button{width:30px}.mode-switch button{font-size:12px;padding:0 7px}.mode-switch button .icon{display:none}.arena-heading h1{font-size:24px}.play-stage{grid-template-columns:43px minmax(180px,250px) 43px;gap:8px}.score-panel{gap:10px;padding:10px 12px}.score-number{min-width:94px;font-size:25px}.stat-pair{gap:10px}.stat-pair>div:nth-child(2){padding-left:10px}.timer-row{padding-left:10px}.game-overlay h2{font-size:29px}.game-overlay .overlay-eyebrow{font-size:12px}.game-overlay{padding-left:13px;padding-right:13px}.rail-label{font-size:12px}.power-panel{grid-template-columns:1fr 153px;column-gap:13px}.power-panel .panel-label>span:first-child{font-size:12px}.power-button{font-size:12px}.brand-mark{width:25px}.rail-hint{display:none}}
@media(pointer:coarse) and (min-width:721px){.touch-controls{display:grid;grid-template-columns:35px repeat(4,1fr) 1.55fr;gap:7px;margin-top:20px;touch-action:none}.touch-controls button{min-height:45px;border-radius:7px;background:#25272f;border:1px solid #3a3e48;touch-action:none}.touch-drop{color:var(--lime)}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition:none!important;scroll-behavior:auto!important}}

/* Keep secondary labels readable on every viewport. */
.panel-label,.panel-label>span,.challenge-panel .panel-label,.controls-panel .panel-label{font-size:12px;letter-spacing:.7px}
.score-label,.stat-pair span,.key-list dt{font-size:14px}
.power-panel p,.challenge-panel p{font-size:14px;line-height:1.65}
.power-foot{font-size:12px;white-space:normal;line-height:1.6}
.rail-label{font-size:12px;letter-spacing:.3px}
.rail-hint{font-size:12px;line-height:1.6}
.overlay-eyebrow,.game-overlay .overlay-eyebrow{font-size:12px;white-space:normal;letter-spacing:.8px;line-height:1.5}
.game-overlay p{font-size:14px}
.power-button,.text-button{font-size:14px}
.game-state{font-size:12px;letter-spacing:.5px}
.board-caption{font-size:12px;letter-spacing:0;gap:14px}
.board-caption .caption-key{font-size:12px}
.combo-tip p{font-size:13px}
.mode-mini{font-size:12px}
.challenge-progress-label,.challenge-progress-label strong{font-size:12px}
.timer-row>span{font-size:12px}
@media(max-width:1180px){.power-button{font-size:12px}.panel-label,.panel-label>span,.challenge-panel .panel-label,.controls-panel .panel-label{letter-spacing:0}.power-panel p,.challenge-panel p{font-size:13px}.score-panel{padding-left:15px;padding-right:15px}.timer-row{gap:5px}.timer-row strong{font-size:17px}.rail-hint{font-size:12px}.board-caption .caption-key{display:none}}
@media(max-width:1000px){.game-state{font-size:12px}.rail-label{font-size:12px}.board-caption{font-size:12px}.power-button{font-size:13px}}
@media(max-width:720px){.arena-heading .eyebrow{font-size:12px;letter-spacing:0}.arena-heading h1{font-size:28px}.mode-switch button{font-size:12px;padding-left:8px;padding-right:8px}.mode-switch button .icon{display:none}.rail-hint{display:none}.rail-label{font-size:12px;letter-spacing:0}.play-stage{grid-template-columns:59px minmax(180px,260px) 59px;gap:10px}.game-overlay .overlay-eyebrow{font-size:12px;letter-spacing:0;max-width:170px}.overlay-bolt{margin-bottom:14px}.game-overlay{padding-top:14px;padding-bottom:28px}.game-overlay h2{font-size:32px}.game-overlay p{font-size:14px;margin:14px 0 18px}.enter-hint{font-size:12px}.game-overlay .play-button{font-size:14px}.game-overlay .play-button>.icon:last-child{display:none}.score-panel .stat-pair span{font-size:12px}.score-panel{gap:10px}.board-caption{font-size:12px}.game-state{font-size:12px}.power-panel{grid-template-columns:1fr 175px}.power-button{font-size:12px}.power-foot,.personal-record span,.arena-footer>span{font-size:12px}.hold-rail>kbd{font-size:10px;padding:2px}.arena-heading{flex-wrap:wrap}.arena-footer{line-height:1.7}.brand sup{font-size:9px}}
@media(max-width:390px){.play-stage{grid-template-columns:minmax(180px,260px) 59px;gap:12px;padding-left:7px}.hold-rail{display:none}.arena-heading{gap:13px}.arena-heading h1{font-size:27px}.arena-heading .eyebrow{font-size:12px}.mode-switch{width:100%;justify-content:space-between}.mode-switch button{flex:1;justify-content:center}.power-panel{grid-template-columns:1fr;gap:0}.power-panel .panel-label,.power-panel .energy-segments{grid-column:1}.power-button{grid-column:1;grid-row:3;margin-top:12px}.power-foot{grid-column:1}.timer-row strong{font-size:16px}.stat-pair{gap:8px}.score-number{min-width:89px;font-size:24px}.score-panel{gap:8px}.board-caption{font-size:12px}.personal-record>div{flex-direction:column;gap:0}.site-header nav{display:none}.header-actions{margin-left:auto}.game-overlay h2{font-size:30px}}

.reduced-motion .game-callout.show{opacity:1}
@media(prefers-reduced-motion:reduce){.game-callout.show{opacity:1}}

/* The surprise mix adds a small, playful layer to the original arena. */
.party-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:-8px 0 16px;min-width:0}
.mix-info{display:flex;align-items:center;gap:12px;min-width:0}.mix-chip{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-family:var(--display);font-size:.75rem;font-weight:600;letter-spacing:.6px;color:#e6bcfa}.mix-chip>span:first-child{color:#ffc67e;font-size:1.2rem}.mix-info>span:last-child{font-size:.8125rem;color:#9895a3}
.music-pill{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;min-height:36px;border:1px solid #353042;border-radius:20px;background:#201d28;white-space:nowrap;font-size:.75rem;color:#cdb9df}.music-pill #music-state{color:#93909d}.music-pill[aria-pressed=false]{border-color:#2e3036;background:#191b20;color:#989aa5}.equalizer{display:flex;align-items:center;gap:2px;width:17px;height:16px}.equalizer i{display:block;width:2px;height:5px;background:#dab6fa;border-radius:2px}.equalizer i:nth-child(2){height:12px}.equalizer i:nth-child(3){height:9px}.equalizer i:nth-child(4){height:7px}.music-pill.is-playing .equalizer i{animation:music-bounce .55s ease-in-out infinite alternate}.music-pill.is-playing .equalizer i:nth-child(2){animation-delay:-.22s}.music-pill.is-playing .equalizer i:nth-child(3){animation-delay:-.4s}.music-pill.is-playing .equalizer i:nth-child(4){animation-delay:-.13s}
.mascot-sprite{display:inline-block;flex:none;width:84px;height:84px;background-image:url('./assets/mascots.png');background-repeat:no-repeat;background-size:300% 100%;background-position:calc(var(--buddy,0) * 50%) 50%;filter:drop-shadow(0 6px 8px #0003)}
.overlay-crew{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:15px;height:77px;flex-shrink:0}.overlay-crew .mascot-sprite{width:67px;height:67px;animation:buddy-float 3s ease-in-out infinite}.overlay-crew .mascot-sprite:nth-child(2){width:79px;height:79px;animation-delay:-.8s;z-index:1;margin:0 -7px}.overlay-crew .mascot-sprite:nth-child(3){animation-delay:-1.6s}.game-overlay.over .overlay-crew{height:57px;margin-bottom:11px}.game-overlay.over .overlay-crew .mascot-sprite{width:55px;height:55px}
.companion{display:flex;align-items:center;justify-content:center;position:relative;margin:13px 0 1px;min-height:108px}.companion>.mascot-sprite{height:103px;width:103px;animation:buddy-float 3s ease-in-out infinite}.buddy-bubble{position:absolute;right:-7px;top:4px;max-width:114px;padding:6px 8px;font-size:.75rem;line-height:1.4;color:#efdaff;background:#3b2d46;border:1px solid #665070;border-radius:9px 9px 9px 2px;transform:rotate(3deg)}.buddy-name{display:block;text-align:center;color:#b6a7c2;font-size:.75rem;margin:2px 0 17px}.companion.cheering>.mascot-sprite{animation:buddy-cheer .43s ease-in-out 3}.companion.cheering .buddy-bubble{border-color:#c395dc;background:#4b365a;color:#fff0ff}
.loot-bar{display:flex;align-items:center;gap:15px;justify-content:center;min-height:43px;margin:11px 0 -2px;padding:2px 12px;border:1px solid #30303c;background:linear-gradient(105deg,#211e28,#171b20);border-radius:9px}.loot-bar[hidden]{display:none}.loot-star,.loot-buddies{display:flex;align-items:center;gap:6px;color:#eac0ef;font-size:.875rem}.loot-star{color:#ffe194}.loot-star>span{font-size:1.2rem}.loot-bar strong{font-family:var(--display);font-weight:500;font-size:1rem;font-variant-numeric:tabular-nums}.loot-buddies .mascot-sprite{width:34px;height:34px}.loot-bar #piece-name{font-size:.75rem;margin-left:auto;color:#9696a6}.loot-bar #piece-name.special{color:#d7b2f8}.pickup-notice{position:absolute;z-index:7;left:10px;right:10px;bottom:17px;pointer-events:none;text-align:center;padding:9px 7px;border-radius:8px;background:#201e31f0;border:1px solid #a986bc;font-size:.8125rem;color:#fff0bd;font-weight:600;opacity:0;transform:translateY(8px);transition:opacity .18s,transform .18s;box-shadow:0 5px 20px #0004}.pickup-notice.visible{opacity:1;transform:translateY(0)}.board-frame.special-piece:not(.overdrive){border-color:#8c6b9f;box-shadow:0 0 0 5px #352b423d,0 0 24px #c188f410}
.music-volume-control{padding:17px 0 20px;border-bottom:1px solid var(--line)}.music-volume-control label{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;color:#b7b8c5}.music-volume-control output{color:var(--lime);font-variant-numeric:tabular-nums}.music-volume-control input{width:100%;display:block;margin:16px 0 0;accent-color:var(--lime);cursor:pointer;height:22px}.surprise-guide{border:1px solid #49405b;background:#231e2d;border-radius:10px;padding:17px;margin-top:20px}.surprise-guide h3{font-family:var(--display);font-size:1rem;color:#e1bffc;margin:0 0 10px}.surprise-guide canvas{display:block;width:100%;height:auto;margin:4px 0 12px}.surprise-guide p{font-size:.875rem;line-height:1.7;color:#bcb2c9;margin:10px 0 0}.end-stats{gap:13px}.end-stats strong{font-size:21px}.end-stats span{font-size:12px}.mascot-fallback .mascot-sprite{background:none;display:inline-flex;justify-content:center;align-items:center;font-size:32px}.mascot-fallback .mascot-sprite:after{content:'🐱'}
@keyframes buddy-float{0%,100%{transform:translateY(1px) rotate(-3deg)}50%{transform:translateY(-5px) rotate(3deg)}}
@keyframes buddy-cheer{0%,100%{transform:translateY(0) rotate(-7deg) scale(1)}45%{transform:translateY(-10px) rotate(6deg) scale(1.08)}}
@keyframes music-bounce{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@media(max-width:1180px){.mix-info>span:last-child{font-size:.75rem}.party-strip{gap:12px}.buddy-bubble{max-width:105px;right:-9px}.music-pill{gap:6px}.loot-bar{gap:10px}}
@media(max-width:1000px){.mix-info>span:last-child{display:none}.companion{min-height:90px}.arena-heading{margin-bottom:25px}}
@media(max-width:720px){.party-strip{margin-top:-3px;margin-bottom:15px;gap:10px;flex-wrap:wrap}.mix-chip{font-size:.75rem;letter-spacing:0}.music-pill{font-size:.75rem;padding:7px 9px}.music-pill #music-state{display:none}.overlay-crew{height:61px;margin-bottom:11px}.overlay-crew .mascot-sprite{width:55px;height:55px}.overlay-crew .mascot-sprite:nth-child(2){width:63px;height:63px}.game-overlay .overlay-eyebrow{display:none}.game-overlay p{font-size:.875rem;line-height:1.6}.game-overlay h2{font-size:32px}.game-overlay{padding-bottom:25px}.loot-bar{margin-top:12px;padding:2px 9px;gap:11px}.loot-bar #piece-name{font-size:.75rem}.touch-controls{margin-top:12px}.pickup-notice{font-size:.75rem;left:7px;right:7px;padding:7px 5px}.surprise-guide{padding:14px}.end-stats{gap:12px}.end-stats strong{font-size:20px}.end-stats span{font-size:12px}}
@media(max-width:390px){.party-strip{flex-wrap:nowrap}.music-pill{font-size:.75rem;padding:7px 9px;gap:6px}.music-pill .equalizer{width:14px}.loot-bar{gap:8px;padding:2px 8px}.loot-buddies .mascot-sprite{width:31px;height:31px}.loot-bar #piece-name{max-width:140px;line-height:1.4}.game-overlay h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){.mascot-sprite,.equalizer i{animation:none!important}}

.music-controls{display:flex;align-items:center;gap:7px;flex-shrink:0}.shuffle-button{width:36px;height:36px;border:1px solid #3c334b;border-radius:50%;background:#221e2c;color:#d3b5ef}.shuffle-button .icon{width:17px;height:17px}.shuffle-button:hover{background:#35293f}.loot-bombs{display:flex;align-items:center;gap:5px;color:#ffc293;font-size:.875rem}.loot-bombs>span{font-size:1.05rem}.loot-bar{gap:12px}.board-frame.detonating{animation:bomb-impact .42s ease-out}.touch-controls .touch-half-turn{font-size:.875rem;font-family:var(--display);font-weight:600;color:#e0b9ff}.surprise-guide strong{color:#e1c5f8;font-weight:600}
@keyframes bomb-impact{0%,100%{transform:translate(0,0)}15%{transform:translate(-5px,6px)}35%{transform:translate(5px,-4px)}55%{transform:translate(-3px,3px)}75%{transform:translate(2px,-1px)}}
@media(pointer:coarse) and (min-width:721px){.touch-controls{grid-template-columns:35px repeat(5,minmax(0,1fr)) 1.55fr}}
@media(max-width:720px){.music-controls{gap:5px}.music-pill{gap:6px}.shuffle-button{width:34px;height:34px}.loot-bar{gap:9px}.loot-bombs{gap:4px}.loot-bar #piece-name{max-width:145px;line-height:1.4}.touch-controls{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.touch-controls button{min-height:44px}.touch-controls .touch-drop{grid-column:1/-1;min-height:42px}.music-pill #music-track{max-width:119px;overflow:hidden;text-overflow:ellipsis}.party-strip{gap:8px}}
@media(max-width:390px){.music-pill{padding:7px 8px}.music-pill #music-track{max-width:104px}.mix-chip>span:first-child{display:none}.loot-bar{gap:8px;padding:3px 8px}.loot-bar #piece-name{max-width:115px;font-size:.75rem}.loot-buddies .mascot-sprite{width:27px;height:27px}}

.board-frame>canvas.fireworks{position:absolute;inset:0;z-index:8;pointer-events:none}
.all-clear{position:absolute;z-index:9;top:21%;left:7px;right:7px;padding:17px 6px 15px;pointer-events:none;text-align:center;border:1px solid #e4f8a078;border-radius:13px;background:linear-gradient(135deg,#272c22eb,#252035eb);box-shadow:0 0 32px #d2f86a25,0 8px 35px #0008;opacity:0;visibility:hidden;font-family:var(--display)}
.all-clear.visible{opacity:1;visibility:visible;animation:all-clear-pop .45s cubic-bezier(.18,.85,.3,1.18) both}
.all-clear span{display:block;font-size:11px;font-weight:500;letter-spacing:1px;color:#ffe58b}
.all-clear strong{display:block;margin:3px 0;color:var(--lime);font-size:clamp(26px,3vw,36px);font-weight:700;line-height:1.2;letter-spacing:-1.2px;white-space:nowrap;text-shadow:0 0 20px #d2f86a55}
.all-clear small{display:block;font-size:12px;letter-spacing:2px;color:#f4e8ff}
.all-clear #all-clear-score{margin-top:3px;color:#ffe58b;font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:.6px}
.game-overlay:not([hidden])~.all-clear{top:4%}
@keyframes all-clear-pop{from{opacity:0;transform:translateY(10px) scale(.86)}to{opacity:1;transform:translateY(0) scale(1)}}

.board-frame.charged-piece{border-color:var(--power-color);box-shadow:0 0 0 5px #8975be20,0 0 26px #bb8bff30}
.piece-power{--power-color:#85e8fa;display:flex;align-items:center;gap:11px;margin:12px 0 0;padding:12px 14px;border:1px solid #464052;border-left:3px solid var(--power-color);border-radius:10px;background:linear-gradient(115deg,#262332,#19232a);color:#c9cad8}
.piece-power[hidden]{display:none}
.piece-power-symbol{color:var(--power-color);font-family:var(--display);font-size:32px;line-height:1;flex-shrink:0;width:25px;text-align:center;text-shadow:0 0 14px var(--power-color)}
.piece-power-copy{min-width:0;flex:1}.piece-power-copy strong{display:block;font-family:var(--display);font-size:.875rem;line-height:1.4;color:var(--power-color);margin-bottom:3px}.piece-power-copy>span{display:block;font-size:.875rem;line-height:1.5;overflow-wrap:anywhere}
.charged-guide{margin-top:19px;padding-top:18px;border-top:1px solid #615077}.charged-guide h3{color:#edcfff}.power-guide-list{margin:16px 0}.power-guide-list>div{margin:0 0 15px;padding-left:13px;border-left:2px solid #ffe27c}.power-guide-list>div:nth-child(2){border-color:#ff8bd1}.power-guide-list>div:nth-child(3){border-color:#85e8fa}.power-guide-list dt{font-family:var(--display);font-weight:600;color:#ffe27c;font-size:1rem;margin-bottom:4px}.power-guide-list>div:nth-child(2) dt{color:#ffabdF}.power-guide-list>div:nth-child(3) dt{color:#85e8fa}.power-guide-list dt>span{display:inline-block;width:18px;text-align:center}.power-guide-list dd{margin:0;font-size:.875rem;color:#c2b9cf;line-height:1.65}
@media(max-width:390px){.piece-power{gap:8px;padding:11px 9px;flex-wrap:wrap}.piece-power-copy{flex-basis:calc(100% - 33px)}}

/* Rush duration picker, personal scorebook and gesture affordances. */
.mode-controls{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.rush-duration-switch{display:flex;align-items:center;gap:3px;padding:3px 4px;border:1px solid #2d3037;border-radius:8px;background:#16181c}.rush-duration-label{padding:0 7px;font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:1px;color:#858995}.rush-duration-switch button{min-height:27px;padding:0 8px;border-radius:5px;background:transparent;color:#8f929e;font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.2px}.rush-duration-switch button.active{background:#343d2b;color:var(--lime);box-shadow:0 0 12px #d2f86a14}.rush-duration-switch button:focus-visible{outline-offset:2px}.personal-record{flex-wrap:wrap}.record-copy{min-width:0}.records-button{margin-left:auto;padding:6px 8px;border:1px solid #48404f;border-radius:6px;background:#211d29;color:#d3b4eb;font-size:11px;white-space:nowrap}.records-button:hover{background:#30253b}.records-modal{width:470px}.records-list{display:grid;gap:8px;margin:21px 0 17px}.record-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid #343640;border-radius:8px;background:#202128}.record-row-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.record-row strong{font-family:var(--display);font-size:14px;font-weight:600;color:#e9e8ee}.record-row small{font-size:11px;color:#858895}.record-row b{font-family:var(--display);font-size:18px;font-weight:500;color:var(--lime);font-variant-numeric:tabular-nums}.touch-hint{display:none;color:#8f96a4;font-size:11px;letter-spacing:.15px;justify-content:center;align-items:center;gap:6px;margin:10px 0 0}.touch-hint span:nth-child(odd){color:#c7d88d}.pickup-notice{top:52%;bottom:auto;left:12px;right:12px;transform:translateY(-42%) scale(.98);max-width:calc(100% - 24px);margin:auto}.pickup-notice.visible{transform:translateY(-50%) scale(1)}#board{touch-action:none}
@media(max-width:720px){.mode-controls{width:100%;align-items:stretch;gap:7px}.rush-duration-switch{width:100%;justify-content:space-between;padding:3px}.rush-duration-label{font-size:10px;padding:0 5px}.rush-duration-switch button{flex:1;min-height:29px;padding:0 4px;font-size:11px}.personal-record{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin-top:0;padding:8px 0}.personal-record>div.record-copy{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.records-button{font-size:11px;padding:7px 8px}.touch-controls{display:none!important}.touch-hint{display:flex}.pickup-notice{left:9px;right:9px;max-width:calc(100% - 18px);font-size:.75rem;padding:8px 6px}}
@media(max-width:390px){.rush-duration-label{display:none}.rush-duration-switch button{font-size:10px}.personal-record{grid-template-columns:auto minmax(0,1fr);gap:8px}.records-button{grid-column:2;justify-self:start;margin-top:2px}.touch-hint{font-size:10px;gap:4px}.pickup-notice{top:52%}}
@media(max-width:720px){.play-stage{width:100vw;margin-left:calc((100% - 100vw)/2);margin-right:calc((100% - 100vw)/2);padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));touch-action:none}}
/* The language control stays usable in compact mobile settings. */
.language-row{gap:16px}.language-row>span{min-width:0}.language-row select{flex-shrink:0;max-width:45%;font:inherit;color:var(--text,#f4f4f5);background:#25272d;border:1px solid #484a53;border-radius:8px;padding:10px 8px;cursor:pointer}.language-row select:focus-visible{outline:2px solid #d2f86a;outline-offset:3px}

/* No celular, o pulso do Overdrive fica logo abaixo das próximas peças, ao alcance do polegar. */
.rail-power,.rail-power[hidden]{display:none}
@keyframes rail-power-ready{0%,100%{box-shadow:0 0 10px #d2f82533}50%{box-shadow:0 0 22px #d2f82599}}
@media(max-width:720px){
.power-panel{display:none}
.rail-power{display:flex;flex-direction:column;align-items:center;gap:4px;width:100%;margin-top:10px;padding:7px 4px 6px;border-radius:8px;background:#292e22;border:1px solid #3e4730;color:#b1bb9e;font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.3px;line-height:1}
.rail-power[hidden]{display:none}
.rail-power .icon{width:16px;height:16px}
.rail-power-meter{width:100%;height:4px;border-radius:2px;background:#31382a;overflow:hidden}
.rail-power-meter i{display:block;height:100%;width:0;background:var(--lime);border-radius:2px;transition:width .2s}
.rail-power:enabled{background:var(--lime);color:#19210d;border-color:var(--lime);box-shadow:0 0 18px #d2f82533;animation:rail-power-ready 1.1s ease-in-out infinite}
.rail-power:enabled .rail-power-meter{background:#1c2a0a}
.rail-power.active{background:#1f2a12;border-color:var(--lime);color:var(--lime);box-shadow:0 0 18px #d2f82533;animation:none}
.rail-power.active .rail-power-meter{background:#31382a}
}
@media(prefers-reduced-motion:reduce){.rail-power:enabled{animation:none}}
/* Fora de uma partida em andamento, a página rola normalmente, inclusive sobre o tabuleiro. */
#board{touch-action:auto}
.play-stage.playing #board{touch-action:none}
@media(max-width:720px){.play-stage{touch-action:auto}.play-stage.playing{touch-action:none}}
