/* SHIGE: a single-screen luminous arcade. */
.immersive{--paper:#f6f8ff;--ink:#263455;--muted:#7887a1;--line:#dce4f2;--blue:#5270ed;--lime:#f8d971;--board-size:min(540px,calc(100dvh - 300px),calc(100vw - 36px));--fall-height:min(590px,calc(100dvh - 255px));height:100dvh;overflow:hidden;background:var(--paper);overscroll-behavior:none}
.immersive .page{position:relative;max-width:none;height:100dvh;padding:0 28px;display:flex;flex-direction:column;z-index:1}.immersive main{position:relative;flex:1;min-height:0;display:grid;place-items:center;padding:6px 0 12px}.immersive .topbar{height:70px;min-height:70px;border:0;gap:16px}.immersive .brand{font:700 24px/1 var(--sans);letter-spacing:.12em;gap:10px;color:#35436a}.brand>span:last-child{display:flex;flex-direction:column;gap:5px}.brand small{font:500 9px/1 var(--sans);letter-spacing:.35em;color:#8997b0}.shige-mark{font:400 38px/1 var(--sans);color:#5270ed;filter:drop-shadow(0 3px 6px #6287e12f)}.immersive .edition,.immersive .hero,.immersive .mode-bar>p,.immersive .right-panel,.immersive .puzzle-notes,.immersive .arena-caption,.immersive footer{display:none!important}.immersive .top-actions{gap:5px}.immersive .top-actions .icon-button,.immersive .share-button{background:#ffffffa6;border:1px solid #e0e7f7;color:#7182a0;box-shadow:0 3px 10px #5077b208}.immersive .share-button{width:44px;padding:0;justify-content:center}.immersive .share-button span{display:none}.immersive .language-label select{font-size:11px;width:106px;padding:0 4px;color:#7182a0}.immersive .mode-bar{position:fixed;top:14px;left:50%;transform:translateX(-50%);padding:0;z-index:3}.immersive .game-modes{background:#e8eef8;border:0;padding:4px;box-shadow:inset 0 1px 3px #64759b0a;gap:0;white-space:nowrap}.immersive .game-modes button{font-size:11px;min-height:38px;padding-inline:20px;color:#7e8ca4;gap:6px}.immersive .game-modes [aria-pressed=true]{background:white;color:#4f68d6;box-shadow:0 3px 10px #30467513}.immersive .game-modes small{display:none}
.ambient-world{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 50% 34%,#fff 0%,#fff9 30%,#e9effb66 68%,#dae6f133 100%);transition:background 1s}.ambient-orbit{position:absolute;width:min(90vw,1000px);height:min(90vw,1000px);border:1px solid #b6cbe329;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-45%) rotateX(55deg);box-shadow:0 0 0 80px #dce7fb12,0 0 0 160px #dce7fb10}.ambient-cube{position:absolute;display:block;width:78px;height:78px;border-radius:17px;background:linear-gradient(145deg,#fff,#d6e4fb);box-shadow:inset 3px 3px 0 #fff9,inset -8px -8px 0 #758bb51a,20px 30px 50px #768dbf12;transform:rotate(-15deg) skewY(7deg);animation:float-cube 9s ease-in-out infinite;opacity:.55}.ambient-cube.a{left:9%;top:24%;width:65px;height:65px}.ambient-cube.b{right:10%;bottom:15%;background:linear-gradient(145deg,#fff5cc,#f2d39e);animation-delay:-4s;width:96px;height:96px}.ambient-cube.c{left:19%;bottom:17%;width:34px;height:34px;animation-delay:-2s;opacity:.25}.ambient-spark{position:absolute;color:#91abd42e;font:400 42px var(--sans);animation:spark-breathe 4s ease-in-out infinite}.ambient-spark.s1{left:24%;top:23%}.ambient-spark.s2{right:22%;top:35%;animation-delay:-2s}.ambient-spark.s3{right:18%;bottom:32%;font-size:21px}.bonus-mode .ambient-world{background:radial-gradient(ellipse at 50% 38%,#fffdf2,#fff4d8 38%,#edf2fb 85%)}.bonus-mode .ambient-cube{filter:sepia(.35);opacity:.8}.bonus-mode .ambient-spark{color:#d1a74c55}
.immersive .arena{display:flex!important;flex-direction:column;align-items:stretch;gap:8px;width:var(--board-size);position:relative}.immersive .left-panel{display:flex;width:100%;padding:0!important;gap:16px;align-items:center;justify-content:space-between;min-height:65px}.immersive .score-panel{display:grid;grid-template-columns:auto auto;gap:0 22px;align-items:center}.immersive .score-panel>.eyebrow{font-size:9px;letter-spacing:.08em;grid-column:1}.immersive .score-number{font:600 44px/.95 var(--mono);color:#3a4c79;margin:2px 0 0;grid-column:1;letter-spacing:0;text-shadow:0 3px 8px #6084c012}.immersive .best-line{grid-column:2;grid-row:1/3;display:flex;flex-direction:column;gap:5px;margin:0;font-size:8px;color:#99a5b9;align-items:flex-start}.immersive .best-line strong{font:500 23px/1 var(--mono);color:#96a3bb}.immersive .metrics{display:flex;margin:0;padding:0;border:0;gap:18px}.immersive .metrics span{font-size:9px}.immersive .metrics strong{font-size:24px}.immersive .drag-mode .metrics,.immersive.drag-mode .metrics{display:none}.immersive .level-track,.immersive .hold-panel{display:none}.immersive .player-card{position:fixed;bottom:13px;left:28px;max-width:220px;margin:0;border:0;padding:0;display:flex;flex-direction:column;gap:0;z-index:3}.immersive .player-card>.eyebrow{display:none}.immersive .player-card>button{padding:0;width:auto;max-width:170px;font-size:10px;min-height:24px;gap:8px;color:#8d9cb4}.immersive .connection{font-size:8px;min-height:18px;gap:5px}.immersive .charge-hud{width:145px;max-width:45%;margin-inline-start:auto}.charge-heading{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:9px;color:#a0a9ba}.charge-heading strong{font:600 16px/1 var(--mono);color:#8394b7;direction:ltr}.charge-track{display:flex;gap:5px;margin:8px 0 5px}.charge-track i{height:6px;background:#dfe6f2;border-radius:8px;flex:1;transition:background .2s,box-shadow .2s,transform .2s}.charge-track i.lit{background:#88a0ff;box-shadow:0 0 10px #7d9bf344;transform:scaleY(1.15)}#charge-hint{font-size:8px;color:#9ca8bd;line-height:1.4;display:block}.bonus-mode .charge-track i.lit{background:#e7b752;box-shadow:0 0 10px #e7b75255}.bonus-mode .charge-heading strong{color:#bb902b}
.immersive .play-column{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:0}.immersive .stage-top{min-height:19px;font-size:8px;color:#96a5bc;padding-inline:10px}.immersive #timer{font-size:11px}.immersive .stage{width:100%;height:var(--fall-height);border-radius:26px;background:#e5edf884;box-shadow:inset 0 1px 0 #fff,0 20px 60px #5475ad15,0 2px 5px #5973a00a;border:1px solid #dce5f5a6;transition:background .5s,box-shadow .5s}.immersive.drag-mode .stage{height:var(--board-size);aspect-ratio:1}.immersive .stage-grain{display:none}.immersive .overlay{background:#edf3fc66;backdrop-filter:blur(5px);border-radius:26px;padding:20px}.immersive .overlay h2{font-size:32px!important;color:#344773;font-weight:600;letter-spacing:-.03em;line-height:1.3}.immersive .overlay p{font-size:11px;margin:14px auto 18px;color:#8a98b1;max-width:230px}.immersive .tiny-mark{background:#fef1c9;box-shadow:0 5px 20px #e6c3551f;color:#c39a30;width:48px;height:48px;font-size:30px;margin-bottom:14px}.immersive .primary-button{background:linear-gradient(160deg,#6e8af9,#526ee5);box-shadow:0 5px 0 #405ac6,0 12px 22px #4d6ee831;border:1px solid #ffffff4d;border-radius:16px;font-size:13px;min-width:140px;min-height:48px}.immersive .primary-button:active{box-shadow:0 1px 0 #405ac6,0 4px 12px #4d6ee831;transform:translateY(4px)}.immersive .overlay small{font-size:8px;margin-top:16px;color:#a1aec3}.reward-demo{display:block;font-size:10px;color:#b1934a;margin:12px auto 0;padding:9px 13px;min-height:36px}.immersive .stage-full{opacity:1;bottom:8px;inset-inline-end:8px;background:#ffffff6e;color:#8b9bb6;width:34px;height:34px}.immersive .stage-tools{order:5;min-height:36px;gap:12px;justify-content:center;border:0;padding:0 8px;color:#93a3bd}.immersive .stage-tools button{font-size:9px;min-height:36px}.immersive .stage-tools button:first-child{margin-inline-end:auto}.immersive .stage-tools button svg{width:15px}.immersive .stage-tools kbd{display:none}.immersive .view-cube{font-size:17px}
.immersive .puzzle-tray-section{margin:10px 0 0}.immersive .tray-heading{display:none}.immersive .puzzle-tray{margin:0;border:0;background:#ffffff94;border-radius:22px;box-shadow:0 8px 25px #7191c211;gap:5px;padding:4px}.immersive .tray-piece{min-height:90px;padding:12px 4px;--piece-size:18px;border-radius:17px;border:0!important;transition:background .2s,box-shadow .2s,transform .2s}.immersive .tray-piece:hover:not(:disabled){background:#e9effe}.immersive .tray-piece[aria-pressed=true]{background:#ecf0ff;box-shadow:inset 0 0 0 2px #aabbfc}.immersive .piece-slot-index{font-size:9px;color:#b2bed2;top:8px;left:10px}.immersive .tray-shape i{border-radius:4px;box-shadow:inset 2px 2px 0 #ffffff65,inset -2px -3px 0 #00000012,0 2px 0 #738aa622}.immersive .puzzle-tray-section>p{font-size:8px;color:#a0aec4;margin-top:5px;line-height:1.4}.immersive .puzzle-feedback{position:fixed;bottom:17px;left:50%;transform:translateX(-50%);margin:0!important;font-size:9px!important;max-width:45vw;pointer-events:none;color:#98a8c5!important;z-index:2}.immersive .used-piece{color:#c6d2e5;font-size:25px}.immersive .puzzle-grid{z-index:2}.immersive .puzzle-cell:focus-visible{outline-color:#6880ef}.immersive .puzzle-cell.will-clear{background:#e7c25444;border-color:#e7c25422}.bonus-mode .stage{background:#fcf1dabb;border-color:#e8d6a35e;box-shadow:0 20px 70px #dfb45420,0 0 0 5px #e5c66b13}.bonus-mode .tray-piece[aria-pressed=true]{background:#fff4cd;box-shadow:inset 0 0 0 2px #ecd392}.bonus-mode .puzzle-tray{background:#fff9eb}
.reward-badge{position:absolute;top:13px;left:50%;transform:translateX(-50%);font-size:10px;background:#fffcf2e8;color:#b18b2e;padding:7px 15px;border:1px solid #efd897;border-radius:30px;box-shadow:0 3px 16px #c7a33810;z-index:3;pointer-events:none;white-space:nowrap}.reward-banner{position:absolute;inset:0;z-index:6;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#fff4d0c9;backdrop-filter:blur(5px);opacity:0;visibility:hidden;transform:scale(.95);transition:opacity .3s,transform .3s,visibility .3s;text-align:center;padding:16px;border-radius:25px}.reward-banner.show{opacity:1;visibility:visible;transform:scale(1)}.reward-emblem{font:400 78px/1 var(--sans);color:#d6ab3b;text-shadow:0 4px 0 #fff4c7,0 0 40px #f4ce67}.reward-banner strong{font-size:29px;color:#af8221;font-weight:600;text-wrap:balance}.reward-banner>span:last-child{font-size:11px;color:#b99c60;line-height:1.8}.immersive .clear-toast{z-index:5;color:#5677dd;font-size:26px;text-shadow:0 2px 0 #fff,0 0 18px #fff;top:37%;transition:opacity .2s,transform .25s;transform:scale(.8) translateY(20px)}.immersive .clear-toast.show{transform:scale(1) translateY(0)}.immersive .clear-toast small{font:600 42px/1 var(--mono);color:#bd9330;text-shadow:0 2px 0 #fff}.immersive .stage.celebrate{animation:stage-pop .5s cubic-bezier(.2,.8,.2,1)}.immersive .stage.reward-enter{animation:reward-open .8s cubic-bezier(.2,.8,.2,1)}
.immersive .mobile-pieces{display:flex;gap:22px;justify-content:center;border:0;min-height:42px;margin-top:7px;background:#ffffff75;border-radius:14px}.immersive .mobile-pieces>div{display:flex;align-items:center;gap:10px;font-size:8px;color:#a0aec4}.immersive .mobile-pieces .piece-svg{height:23px;width:auto;max-width:66px}.immersive .mobile-pieces .hold-placeholder{font-size:20px}.immersive .touch-controls{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:8px 0 0}.immersive .touch-controls button{min-height:42px;background:#ffffffbf;border:1px solid #e1e8f6;box-shadow:0 3px 0 #d5def0;border-radius:12px;color:#8298bf;display:grid;place-items:center;font-size:22px}.immersive .touch-controls button:last-child{background:#6c84e8;color:white;border-color:#a5b5f4;box-shadow:0 3px 0 #526ac2}.immersive.drag-mode .touch-controls,.immersive.drag-mode .mobile-pieces{display:none}.immersive:not(.drag-mode) .arena{width:min(390px,calc(var(--fall-height) * .66),calc(100vw - 36px))}.immersive:not(.drag-mode) #charge-hud{display:none}.immersive:not(.drag-mode) .score-panel{gap:0 18px}
.immersive dialog{border-radius:24px;background:#f8faff;max-height:calc(100dvh - 28px);overflow:auto;border-color:#dbe5f7;box-shadow:0 40px 140px #4b648a2b}.immersive dialog::backdrop{background:#93a6cc33;backdrop-filter:blur(12px)}.immersive #leaderboard-dialog{max-width:560px}.immersive #leaderboard{border:0;padding-top:0}.immersive .board-heading h2{font-size:28px;margin:8px 0}.immersive .board-heading p:last-child{font-size:10px}.immersive .board-toolbar{margin-top:16px;padding-bottom:10px}.immersive .board-game-label{margin-top:14px;font-size:9px}.immersive .table-wrap{max-height:45dvh;overflow:auto}.immersive .board-foot{font-size:10px}.immersive .toast{z-index:60;background:#7086b5;font-size:11px;bottom:20px}.immersive .reward-help{color:#b09a62!important;margin-top:12px}.immersive .play-column:fullscreen{padding:16px;justify-content:center;gap:4px;background:#f4f7ff}.immersive .play-column:fullscreen .stage{width:min(67dvh,calc(100vw - 32px));height:min(67dvh,calc(100vw - 32px));align-self:center}.immersive .play-column:fullscreen .stage-top,.immersive .play-column:fullscreen .stage-tools,.immersive .play-column:fullscreen .puzzle-tray-section{width:min(67dvh,calc(100vw - 32px));align-self:center}
@keyframes float-cube{50%{transform:translateY(-22px) rotate(-6deg) skewY(7deg)}}@keyframes spark-breathe{50%{opacity:.25;transform:scale(.75) rotate(15deg)}}@keyframes stage-pop{35%{transform:scale(1.015)}65%{transform:scale(.994)}}@keyframes reward-open{0%{transform:scale(.94) rotate(-1deg)}45%{transform:scale(1.035) rotate(1deg)}100%{transform:none}}
@media(max-width:1000px){.immersive .ambient-cube.a{left:4%}.immersive .ambient-cube.b{right:3%}.immersive .mode-bar{top:78px}.immersive .topbar{height:122px;min-height:122px;align-items:flex-start;padding-top:15px}.immersive{--board-size:min(520px,calc(100dvh - 345px),calc(100vw - 36px));--fall-height:min(560px,calc(100dvh - 310px))}}
@media(max-width:600px){.immersive .page{padding:0 16px}.immersive .topbar{height:106px;min-height:106px;padding-top:max(12px,env(safe-area-inset-top));gap:6px}.immersive .brand{font-size:18px;gap:6px;letter-spacing:.08em}.immersive .brand small{font-size:8px;letter-spacing:.22em}.shige-mark{font-size:29px}.immersive .top-actions{gap:3px;align-items:center}.immersive .top-actions .icon-button,.immersive .share-button{width:34px;height:38px;min-height:38px;border-radius:13px}.immersive .top-actions .icon-button svg,.immersive .share-button svg{width:16px;height:16px}.immersive .language-label select{width:76px;max-width:76px;height:38px;font-size:10px;padding:0 2px}.immersive #help-open{display:none}.immersive .mode-bar{top:62px;width:230px;max-width:calc(100vw - 30px)}.immersive .game-modes{width:100%}.immersive .game-modes button{min-height:32px;font-size:10px;padding-inline:12px;flex:1}.immersive main{padding:0 0 calc(32px + env(safe-area-inset-bottom))}.immersive{--board-size:min(calc(100vw - 32px),calc(100dvh - 340px));--fall-height:calc(100dvh - 295px)}.immersive .arena{gap:6px}.immersive .left-panel{min-height:51px;gap:10px}.immersive .score-number{font-size:38px}.immersive .score-panel{gap:0 13px}.immersive .score-panel>.eyebrow{font-size:8px}.immersive .best-line{font-size:7px}.immersive .best-line strong{font-size:19px}.immersive .charge-hud{width:122px}.charge-heading{font-size:8px}.charge-heading strong{font-size:15px}.charge-track{margin:6px 0 4px;gap:4px}.charge-track i{height:5px}#charge-hint{font-size:7px}.immersive .stage{border-radius:23px}.immersive .overlay{border-radius:23px;padding:15px}.immersive .overlay h2{font-size:26px!important}.immersive .overlay p{font-size:10px;margin:10px auto 13px;max-width:220px;line-height:1.6}.immersive .tiny-mark{width:34px;height:34px;font-size:24px;margin-bottom:9px}.immersive .overlay small{display:none}.immersive .primary-button{min-height:44px;font-size:12px;padding:10px 19px;min-width:130px}.reward-demo{font-size:9px;min-height:32px;margin-top:9px;padding:5px 8px}.immersive .puzzle-tray-section{margin-top:9px}.immersive .tray-piece{min-height:80px;--piece-size:15px;padding:8px 3px}.immersive .puzzle-tray{border-radius:20px;padding:3px;gap:2px}.immersive .puzzle-tray-section>p{font-size:7px;margin-top:4px}.immersive .stage-tools{min-height:34px}.immersive .stage-tools button{min-height:34px}.immersive .player-card{left:16px;bottom:8px;max-width:130px}.immersive .player-card>button{font-size:8px;min-height:18px;max-width:125px}.immersive .connection{font-size:7px;min-height:14px}.immersive .player-card svg{width:11px;height:11px}.immersive .puzzle-feedback{left:auto;right:16px;bottom:9px;transform:none;max-width:50vw;font-size:7px!important;text-align:end}.immersive .ambient-cube{opacity:.16!important}.ambient-cube.a{width:35px;height:35px;top:21%}.ambient-cube.b{width:50px;height:50px;bottom:8%}.ambient-cube.c,.ambient-spark{display:none}.reward-banner strong{font-size:24px}.reward-emblem{font-size:62px}.reward-banner>span:last-child{font-size:9px}.reward-badge{top:9px;font-size:8px;padding:6px 12px}.immersive .clear-toast{font-size:22px}.immersive .clear-toast small{font-size:36px}.immersive:not(.drag-mode) .score-number{font-size:32px}.immersive:not(.drag-mode) .metrics{gap:10px}.immersive:not(.drag-mode) .metrics span{font-size:7px}.immersive:not(.drag-mode) .metrics strong{font-size:21px}.immersive .touch-controls button{min-height:38px}.immersive .touch-controls{margin-top:7px;gap:5px}}
@media(max-width:360px){.immersive .page{padding-inline:12px}.immersive .top-actions .icon-button,.immersive .share-button{width:32px}.immersive .language-label select{width:67px;max-width:67px}.immersive #sound-toggle{display:grid}.immersive .brand{font-size:16px;gap:4px}.shige-mark{font-size:26px}.immersive #share-button{display:none}.immersive{--board-size:min(calc(100vw - 24px),calc(100dvh - 333px))}.immersive .score-panel{gap:0 10px}.immersive .charge-hud{width:112px}.immersive .reward-demo{font-size:8px}.immersive .overlay h2{font-size:23px!important}.immersive .overlay p{font-size:9px}}
@media(max-height:600px) and (min-width:601px){.immersive{--board-size:min(340px,calc(100dvh - 165px));--fall-height:calc(100dvh - 170px)}.immersive .topbar{height:65px;min-height:65px;padding-top:8px}.immersive .mode-bar{top:12px}.immersive .arena{width:calc(var(--board-size) + 175px)}.immersive .play-column{display:grid;grid-template-columns:var(--board-size) 160px;gap:10px 15px;align-items:start}.immersive .stage-top{display:none}.immersive .stage{grid-column:1;grid-row:1/4}.immersive .puzzle-tray-section{grid-column:2;grid-row:1;margin-top:0}.immersive .puzzle-tray{grid-template-columns:1fr;background:none;box-shadow:none}.immersive .tray-piece{min-height:68px;--piece-size:13px;background:#ffffffaa}.immersive .puzzle-tray-section>p{display:none}.immersive .stage-tools{grid-column:2;grid-row:2;flex-wrap:wrap}.immersive .stage-tools button{min-height:26px}.immersive .left-panel{min-height:50px}.immersive .score-number{font-size:34px}.immersive .player-card{bottom:8px}.immersive:not(.drag-mode) .arena{width:min(400px,calc(100vw - 32px))}.immersive:not(.drag-mode) .play-column{grid-template-columns:minmax(150px,1fr) 170px}.immersive:not(.drag-mode) .mobile-pieces{grid-column:2;flex-direction:column;align-items:center}.immersive:not(.drag-mode) .touch-controls{grid-column:2;grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){.ambient-cube,.ambient-spark,.immersive .stage{animation:none!important}.reward-banner{transition:none!important}}
.immersive{--board-size:min(540px,calc(100dvh - 365px),calc(100vw - 36px));--fall-height:min(590px,calc(100dvh - 280px))}.immersive .tray-piece{height:96px;min-height:96px;padding-block:6px;--piece-size:16px}.immersive:not(.drag-mode) .mobile-pieces{position:absolute;top:106px;left:calc(100% + 15px);width:95px;flex-direction:column;gap:20px;padding:14px 8px;background:#ffffff85}.immersive:not(.drag-mode) .mobile-pieces>div{flex-direction:column;gap:7px}.immersive:not(.drag-mode) .arena{width:min(360px,calc(var(--fall-height) * .58),calc(100vw - 125px));transform:translateX(-35px)}
@media(max-width:1000px){.immersive{--board-size:min(520px,calc(100dvh - 420px),calc(100vw - 36px));--fall-height:min(560px,calc(100dvh - 335px))}}
@media(max-width:600px){.immersive{--board-size:min(calc(100vw - 32px),calc(100dvh - 375px));--fall-height:calc(100dvh - 350px)}.immersive .tray-piece{height:84px;min-height:84px;--piece-size:14px;padding-block:5px}.immersive:not(.drag-mode) .mobile-pieces{top:95px;left:calc(100% + 8px);width:78px;padding:12px 5px;gap:14px}.immersive:not(.drag-mode) .arena{width:min(calc(var(--fall-height) * .58),calc(100vw - 120px));transform:translateX(-32px)}.immersive:not(.drag-mode) .touch-controls{grid-template-columns:repeat(3,1fr);gap:6px}.immersive:not(.drag-mode) .touch-controls button{min-height:38px}.immersive:not(.drag-mode) .left-panel{gap:8px}.immersive:not(.drag-mode) .score-panel{gap:0 9px}.immersive:not(.drag-mode) .best-line{display:none}}
@media(max-height:650px) and (max-width:600px){.immersive .overlay .tiny-mark{display:none}.immersive .overlay h2{font-size:20px!important}.immersive .overlay p{font-size:9px;margin:8px auto 10px;line-height:1.4}.immersive .overlay .primary-button{min-height:40px;padding:8px 15px}.immersive .reward-demo{min-height:28px;margin-top:5px;font-size:8px}.immersive .overlay{padding:12px}}
@media(max-height:600px) and (min-width:601px){.immersive{--board-size:min(340px,calc(100dvh - 165px));--fall-height:calc(100dvh - 170px)}.immersive:not(.drag-mode) .arena{transform:none;width:min(420px,calc(100vw - 32px))}.immersive:not(.drag-mode) .mobile-pieces{position:static;grid-column:2;width:auto;flex-direction:row}.immersive .tray-piece{height:68px;min-height:68px;--piece-size:12px}}
@media(max-width:600px){.immersive{--board-size:min(calc(100vw - 32px),calc(100dvh - 385px));--fall-height:calc(100dvh - 365px)}.immersive .top-actions .icon-button{width:44px;height:44px;min-height:44px}.immersive #help-open{display:grid}.immersive #share-button{display:none}.immersive .top-actions{gap:1px}.immersive .language-label select{width:70px;max-width:70px}.immersive .stage-tools,.immersive .stage-tools button{min-height:44px}}
@media(max-width:360px){.immersive .brand{font-size:15px}.immersive .language-label select{width:63px;max-width:63px}.immersive .top-actions .icon-button{width:44px}.immersive .topbar{gap:4px}.shige-mark{font-size:24px}}
@media(max-height:650px) and (max-width:600px){.immersive .overlay p{display:none}.immersive .overlay h2{margin-bottom:14px}}
.reward-banner>span:last-child{white-space:pre-line}#help-share{margin-top:14px;margin-inline-start:8px}
@media(max-width:600px) and (max-height:650px){.reward-banner{gap:6px}.reward-emblem{font-size:40px}.reward-banner strong{font-size:20px}.reward-banner>span:last-child{font-size:8px;line-height:1.5}}
.immersive:not(.drag-mode) .arena{min-width:180px}
.immersive .topbar .player-card{position:relative;inset:auto;max-width:180px;min-width:0;height:44px;margin:0;padding-inline-start:16px;border-inline-start:1px solid #dce4f2;flex-shrink:1}
.immersive .topbar .player-card>button{min-height:44px;max-width:164px;padding:0 0 12px;gap:7px;font-size:11px;text-align:start;color:#5c6e90}
.immersive .topbar #player-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px;unicode-bidi:plaintext}
.immersive .topbar .connection{position:absolute;bottom:0;inset-inline-start:16px;min-height:12px;font-size:8px;max-width:164px;white-space:nowrap;pointer-events:none}
.immersive .topbar .player-card svg{width:12px;height:12px;flex-shrink:0}.immersive .topbar .player-card>button:focus-visible{outline:2px solid #5270ed;outline-offset:3px;border-radius:5px}
.rush-mode .charge-track{display:none}.rush-track{height:7px;border-radius:8px;background:#e9ddb8;margin:8px 0 5px;overflow:hidden}.rush-track>span{display:block;height:100%;background:linear-gradient(90deg,#e9b544,#ffe59c);border-radius:inherit;transition:width .12s linear;box-shadow:0 0 8px #fbd76b88}.rush-mode .charge-heading strong{color:#ae761b;white-space:nowrap;font-variant-numeric:tabular-nums}.rush-mode #charge-hint{color:#9b8657}.time-low .charge-heading strong{color:#c36b3a}.time-low.game-live .rush-track{animation:clock-pulse .8s ease-in-out infinite}
.time-toast{position:absolute;bottom:18%;left:50%;transform:translate(-50%,8px);opacity:0;pointer-events:none;z-index:9;background:#fff8dce8;border:1px solid #f1d48b;border-radius:30px;padding:9px 20px;color:#a47116;font:700 19px/1.2 var(--sans);box-shadow:0 8px 30px #d0a73825;white-space:nowrap}.time-toast.show{animation:time-rise 1.4s ease-out both}.time-gain .rush-track>span{filter:brightness(1.2)}
@keyframes time-rise{0%{opacity:0;transform:translate(-50%,12px) scale(.85)}15%,70%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-18px)}}@keyframes clock-pulse{50%{opacity:.55}}
@media(min-width:601px) and (max-width:850px) and (min-height:601px){.immersive .topbar .player-card{position:absolute;top:73px;inset-inline-start:28px;border:0;padding:0;max-width:150px}.immersive .topbar .connection{inset-inline-start:0}}
@media(max-width:600px){.immersive .topbar .player-card{position:absolute;top:58px;inset-inline-start:16px;max-width:110px;height:44px;padding:0;border:0}.immersive .topbar .player-card>button{font-size:9px;max-width:110px;min-height:44px;padding-bottom:12px}.immersive .topbar #player-name{max-width:90px}.immersive .topbar .connection{inset-inline-start:0;max-width:110px;font-size:7px}.immersive .mode-bar{top:62px;left:auto;right:16px;transform:none;width:min(230px,calc(100vw - 150px));max-width:none}.rush-track{height:5px;margin:6px 0 4px}.time-toast{font-size:14px;padding:7px 14px}.rush-mode #charge-hint{font-size:7px}}
@media(max-width:360px){.immersive .topbar .player-card{inset-inline-start:12px}.immersive .mode-bar{right:12px}}
@media(max-width:600px){.immersive:dir(rtl) .mode-bar{left:16px;right:auto}}
@media(max-width:360px){.immersive:dir(rtl) .mode-bar{left:12px}}
@media(max-width:360px) and (max-height:650px){.immersive.drag-mode .best-line{display:none}}
@media(min-width:601px) and (max-width:850px) and (max-height:600px){.immersive .topbar{height:112px;min-height:112px}.immersive .mode-bar{top:62px}.immersive .topbar .player-card{position:absolute;top:58px;inset-inline-start:28px;max-width:150px;padding:0;border:0}.immersive .topbar .player-card>button{max-width:150px}.immersive .topbar #player-name{max-width:130px}.immersive .topbar .connection{inset-inline-start:0}.immersive{--board-size:min(340px,calc(100dvh - 220px));--fall-height:calc(100dvh - 220px)}}
@media(prefers-reduced-motion:reduce){.time-toast.show{animation:none;opacity:1;transform:translate(-50%,0)}.rush-track,.rush-track>span{animation:none!important;transition:none!important}}
@media(max-height:650px) and (max-width:600px){.immersive .overlay h2{font-size:18px!important;line-height:1.12!important}}
@media(min-width:1001px) and (min-height:601px){.immersive{--board-size:min(620px,calc(100dvh - 365px),calc(100vw - 36px))}.immersive .charge-hud{width:168px}.charge-heading{font-size:10px;color:#7586a3}.charge-heading strong{font-size:20px}.charge-track i{height:7px}#charge-hint{font-size:9px;color:#8a9bb6}.immersive .score-panel>.eyebrow{font-size:10px}.immersive .best-line{font-size:9px}}
