:root{--ink:#f9f5e9;--muted:#a9b9d2;--navy:#0a1025;--panel:#121f36;--line:rgba(189,219,255,.18);--gold:#ffd27b;--glow:#ffe8ac;--mint:#8ddfcb;--danger:#fa7789;--cell:min(4.8vw,calc((100dvh - 210px)/9),52px);font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#070f21}body{touch-action:manipulation}button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid #ffe3a4;outline-offset:2px}#app{height:100vh;height:100dvh;min-height:0;position:relative;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse 60% 65% at 78% 48%,#2b2454 0%,transparent 78%),radial-gradient(ellipse 75% 80% at 13% 100%,#13334c 0%,transparent 70%),#0a1025}#app::after{pointer-events:none;content:"";position:absolute;inset:0;background-image:radial-gradient(#d7e7ff 1px, transparent 1px),radial-gradient(#d7e7ff .7px,transparent .7px);background-size:117px 111px,79px 93px;background-position:20px 33px,62px 60px;opacity:.13}.topbar{position:relative;z-index:3;flex:0 0 55px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 clamp(12px,2.7vw,34px);border-bottom:1px solid var(--line);background:rgba(6,14,31,.68)}.brand{font-size:clamp(14px,1.55vw,19px);font-weight:1000;letter-spacing:.045em;display:flex;align-items:center;gap:8px;white-space:nowrap}.brand-light{color:#ffd886;font-size:27px;filter:drop-shadow(0 0 8px #ffd36b)}.top-actions{display:flex;gap:12px;align-items:center}.chapter-mark{color:var(--muted);font-size:11px;letter-spacing:.11em;font-weight:800;text-transform:uppercase}.iconbtn{width:37px;height:37px;flex-shrink:0;border:1px solid #415274;border-radius:11px;color:#faf7eb;background:#1b2a46;display:grid;place-items:center;font-size:19px;font-weight:800}.iconbtn:hover{background:#334566}.mainstage{position:relative;z-index:1;flex:1;min-height:0;width:100%;max-width:1450px;margin:0 auto}.screen{position:relative;width:100%;height:100%;min-height:0}.screen[hidden],.overlay[hidden]{display:none!important}.menu-screen{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:1%;padding:clamp(10px,2vw,28px) clamp(14px,4vw,55px)}.menu-art{position:relative;height:100%;min-height:0;display:flex;align-items:center;justify-content:center}.scene-illustration{height:100%;width:100%;max-height:640px;max-width:640px;filter:drop-shadow(0 0 45px rgba(255,179,86,.08))}.art-pill{position:absolute;left:9%;bottom:4%;padding:9px 15px;border:1px solid rgba(245,209,145,.45);background:#15223c;border-radius:99px;font-size:clamp(9px,1.05vw,13px);font-weight:900;color:#ffda8d;letter-spacing:.09em;white-space:nowrap}.menu-copy{position:relative;z-index:2;max-width:595px}.eyebrow{font-size:clamp(9px,1.1vw,14px);color:var(--mint);font-weight:950;letter-spacing:.15em}.menu-copy h1{font-size:clamp(49px,7.2vw,116px);line-height:.94;font-weight:1000;letter-spacing:-.065em;margin:12px 0 17px;white-space:nowrap;text-shadow:0 8px 0 #172440,0 0 35px rgba(245,194,119,.14)}.menu-copy h1 em{font-style:normal;color:var(--gold)}.lead{font-size:clamp(14px,1.8vw,23px);font-weight:720;line-height:1.31;max-width:500px;margin:0 0 12px}.premise{font-size:clamp(12px,1.18vw,15px);line-height:1.4;color:#bac9dc;margin:0 0 24px;max-width:500px}.premise span{color:#ffdb92}.primary-btn{border:0;border-radius:15px;padding:16px 21px;color:#16203a;background:linear-gradient(135deg,#ffe4a2 0%,#ffb861 100%);box-shadow:0 6px 0 #9f683e,0 12px 36px rgba(252,187,100,.16);font-weight:1000;letter-spacing:.025em;font-size:clamp(14px,1.5vw,19px);min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:15px;min-width:min(100%,360px);transition:transform .12s}.primary-btn:active{transform:translateY(3px);box-shadow:0 3px 0 #9f683e}.primary-btn span{font-size:23px}.menu-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:19px}.text-btn{color:#d3e2f5;font-weight:800;font-size:clamp(11px,1.1vw,14px);padding:8px 5px;border:0;border-bottom:1px solid #6b89b5;background:transparent}.text-btn:hover{color:#ffcf80}.subline{color:#7791b6;margin-top:10px;font-size:12px;font-weight:750}.footer{position:relative;z-index:2;flex:0 0 28px;border-top:1px solid var(--line);background:rgba(4,10,24,.6);display:flex;justify-content:space-between;align-items:center;padding:0 26px;color:#879fbb;font-size:10px;font-weight:850;letter-spacing:.12em}
/* Game board */
.play-screen{padding:10px clamp(10px,2.2vw,24px);display:flex;flex-direction:column;gap:8px}.game-top{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:49px;flex:0 0 auto}.game-name{display:flex;align-items:center;gap:9px;min-width:0}.game-name strong{font-size:clamp(12px,1.5vw,19px);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.game-name small{font-size:11px;font-weight:850;white-space:nowrap;color:#a9bedb}.tag{background:rgba(138,220,203,.18);color:#b0f4df;border:1px solid rgba(138,220,203,.4);border-radius:7px;padding:6px 8px;font-size:10px;font-weight:950;letter-spacing:.07em;white-space:nowrap}.game-top-right{display:flex;align-items:center;gap:7px}.hud-mini{display:flex;gap:5px;align-items:center;font-size:clamp(12px,1.3vw,17px);font-weight:950;border:1px solid var(--line);border-radius:10px;padding:7px 11px;background:rgba(23,35,64,.8)}.hud-mini span{color:var(--gold)}.game-top-right .hud-mini:nth-child(2) span{color:#ff86a0}.play-content{flex:1;min-height:0;display:flex;gap:clamp(12px,2.3vw,26px);align-items:center;justify-content:center}.board-column{display:flex;flex-direction:column;align-items:center;gap:11px;min-width:0}.world-frame{position:relative;padding:7px;background:linear-gradient(145deg,#344564,#14233d);border:2px solid #5b6b91;border-radius:15px;box-shadow:0 18px 42px #050a18a8,0 0 40px #385d7c30;flex-shrink:0}.board{position:relative;display:grid;grid-template-columns:repeat(11,var(--cell));grid-template-rows:repeat(9,var(--cell));user-select:none;touch-action:none;overflow:hidden;border-radius:8px;background:#111a2a}.tile{position:relative;width:var(--cell);height:var(--cell);display:grid;place-items:center;overflow:hidden;isolation:isolate}.tile.floor{background:radial-gradient(circle at 48% 47%,#304663 0,#1b2e47 79%);box-shadow:inset 0 0 0 1px #ffffff06}.tile.floor.alt{background:radial-gradient(circle at 48% 50%,#2d405a 0,#16283f 80%)}.tile.wall{background:linear-gradient(130deg,#3d4d70,#283754 50%,#202d46);box-shadow:inset -3px -4px #14223e,inset 2px 2px #66749a70}.tile.wall:after{content:"";position:absolute;inset:19% 13%;border-top:1px solid #b7c5d633;border-left:1px solid #b7c5d633;transform:skew(18deg)}.tile.wall.b{background:linear-gradient(130deg,#475578,#2e3d5a 50%,#253352)}.tile.fog::after{content:"";position:absolute;inset:0;background:#0b1223;opacity:.77;z-index:5}.tile.dim::after{content:"";position:absolute;inset:0;background:#0c1425;opacity:.36;z-index:5}.tile .object{font-size:calc(var(--cell)*.63);line-height:1;filter:drop-shadow(0 2px 2px #080e1e);z-index:2;display:flex;align-items:center;justify-content:center}.object.spark{font-size:calc(var(--cell)*.70);color:#ffe8a4;text-shadow:0 0 9px #ffd277,0 0 18px #ffc56c;animation:shimmer 1.8s ease-in-out infinite alternate}.object.exit{font-size:calc(var(--cell)*.86);color:#bad8ff;text-shadow:0 0 15px #64a7e3}.object.exit.open{color:#91ffe4;text-shadow:0 0 17px #7dfbd0}.object.trap{font-size:calc(var(--cell)*.62);color:#fd8095;filter:drop-shadow(0 0 6px #e55c72)}.object.tonic{color:#87f9bd}.object.enemy{width:58%;height:68%;border-radius:48% 48% 45% 45%;background:#13152d;border:2px solid #9479c4;box-shadow:0 0 17px #9b70d488;position:relative;animation:float 1.4s ease-in-out infinite alternate}.object.enemy:after{content:"• •";position:absolute;top:20%;font-size:calc(var(--cell)*.25);letter-spacing:-.11em;color:#fc8cde;white-space:nowrap}.object.enemy.stunned{opacity:.5;filter:grayscale(1)}.object.hero{width:65%;height:72%;border-radius:48%;background:radial-gradient(circle at 45% 35%,#fffaf1 10%,#ffe3a4 57%,#ffa959 93%);box-shadow:0 0 11px 5px #ffc7769e,0 0 23px #ffbd7499;position:relative;animation:float 1.3s ease-in-out infinite alternate;z-index:4}.object.hero:before,.object.hero:after{content:"";position:absolute;top:33%;width:12%;height:16%;border-radius:50%;background:#3a3658}.object.hero:before{left:30%}.object.hero:after{right:30%}.tile .object.ambient{position:absolute;font-size:calc(var(--cell)*.24);opacity:.28;color:#85acc9;bottom:9%;right:14%}.tile.hit{animation:shake .25s}.light-bar{width:100%;padding:0 5px}.light-caption{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.09em;font-weight:950;color:#a9c4e0;margin:0 0 4px}.light-caption strong{font-size:11px;color:var(--gold)}.meter{height:9px;border:1px solid #647593;border-radius:99px;background:#0c172c;overflow:hidden}.meter-fill{width:100%;height:100%;border-radius:99px;background:linear-gradient(90deg,#f28c69,#ffe394);transition:width .16s ease}.game-side{width:clamp(185px,22vw,270px);flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;gap:clamp(8px,2vh,19px)}.objective{background:#111c32d9;border:1px solid var(--line);border-radius:15px;padding:13px}.objective-label{font-size:10px;font-weight:950;color:#91dfcb;letter-spacing:.15em}.objective p{font-size:clamp(12px,1.25vw,15px);line-height:1.45;font-weight:750;margin:7px 0 0}.control-wrap{display:flex;gap:10px;align-items:center;justify-content:center}.direction-pad{display:grid;grid-template-areas:"x up y" "left down right";grid-template-columns:repeat(3,46px);grid-template-rows:repeat(2,44px);gap:5px}.dpad{border:1px solid #6d80a4;border-radius:12px;background:linear-gradient(180deg,#2e4668,#1a2e4c);box-shadow:0 3px 0 #0b1328;color:#f8f0da;font-size:19px;font-weight:950;touch-action:manipulation}.dpad:active{transform:translateY(2px);box-shadow:0 1px 0 #0b1328}.dpad.up{grid-area:up}.dpad.down{grid-area:down}.dpad.left{grid-area:left}.dpad.right{grid-area:right}.pulse-btn{border:1px solid #f8ca86;border-radius:17px;background:linear-gradient(155deg,#f5ca85,#d78d68);color:#15233e;min-width:80px;min-height:93px;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:3px;box-shadow:0 4px 0 #7a514b}.pulse-btn span{font-size:35px;line-height:1}.pulse-btn small{font-size:9px;font-weight:950;line-height:1.15;letter-spacing:.035em}.pulse-btn:active{transform:translateY(2px)}.game-hint{color:#9eb0cf;text-align:center;font-size:11px;line-height:1.4}.toast{font-size:11px;font-weight:800;color:#fce0a2;text-align:center;min-height:15px}
/* Panels */
.panel-screen,.result-screen{display:grid;place-items:center;padding:15px;overflow:auto}.panel{width:min(760px,100%);max-height:100%;min-height:0;display:flex;flex-direction:column;gap:13px;background:#101d34f5;border:1px solid #4b6282;border-radius:22px;padding:clamp(13px,2.8vh,25px);box-shadow:0 20px 60px #0008}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.panel h2,.result-card h2{font-size:clamp(25px,3.7vw,46px);line-height:1.03;margin:7px 0 0;letter-spacing:-.05em}.rooms-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;overflow:auto;padding:5px}.room-btn{border:1px solid #536d8a;border-radius:8px;color:#dbedfa;background:#263954;min-height:34px;font-size:12px;font-weight:950}.room-btn.done{background:#375b69;border-color:#7cd6a4;color:#d4fff1}.room-btn.current{background:#f0bd77;color:#14203b;border-color:#ffe8b3}.room-btn:disabled{opacity:.29;cursor:not-allowed}.wallet{display:inline-flex;align-self:flex-start;gap:6px;border:1px solid #e4bb75;color:#ffe8ac;padding:7px 11px;background:#3a3242;border-radius:11px;font-weight:950}.upgrade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;overflow:auto;padding:2px}.upgrade-card{padding:13px;border-radius:15px;border:1px solid #536580;background:#1e2e4b;display:flex;flex-direction:column;gap:7px;min-width:0}.upgrade-icon{font-size:27px}.upgrade-card h3{font-size:15px;margin:0}.upgrade-card p{font-size:12px;line-height:1.4;color:#b8c9de;margin:0;flex:1}.upgrade-card small{font-size:11px;color:#abbbd0}.upgrade-card button{border:0;border-radius:9px;background:#f7cf87;padding:9px;color:#1c2941;font-weight:950}.upgrade-card button:disabled{background:#4b5c75;color:#c5d0de;cursor:default}.how-panel{max-width:620px}.how-steps{display:grid;gap:9px;overflow:auto}.how-steps>div{display:flex;gap:12px;align-items:center;border-radius:12px;padding:9px;background:#263653}.how-steps strong{font-size:19px;color:#ffce87}.how-steps p{margin:0;font-size:13px;line-height:1.45}.how-panel .primary-btn{align-self:center}.result-card{width:min(540px,100%);max-height:100%;overflow:auto;text-align:center;border:1px solid #4f6a91;border-radius:23px;background:radial-gradient(circle at 50% 0,#374263,#131f37 70%);padding:clamp(13px,2.5vh,28px);display:flex;flex-direction:column;align-items:center;gap:10px}.result-icon{font-size:clamp(38px,7vh,75px);color:#ffcf89;filter:drop-shadow(0 0 14px #ffc479)}.result-card h2{margin:0}.result-card p{margin:0;color:#c6d4e6;line-height:1.4;font-size:14px}.results-stats{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.results-stats>div{border:1px solid #506482;background:#1d314b;border-radius:12px;padding:10px 4px;display:flex;flex-direction:column;gap:5px}.results-stats span{font-size:9px;letter-spacing:.12em;color:#a9c2d9;font-weight:950}.results-stats strong{font-size:19px;color:#ffe1a4}.result-card .primary-btn{width:100%;max-width:340px}.result-card .menu-links{margin-top:0}.overlay{position:absolute;z-index:9;inset:0;background:#050d20d9;display:grid;place-items:center;padding:12px;backdrop-filter:blur(7px)}.overlay-card{width:min(410px,100%);background:#1a2b49;border:1px solid #5d7a99;border-radius:20px;padding:30px;display:flex;align-items:center;flex-direction:column;gap:14px;text-align:center}.overlay-card h2{font-size:50px;margin:0}.overlay-card p{margin:0 0 5px;color:#bac9df}
@keyframes float{to{transform:translateY(-2px)}}@keyframes shimmer{to{opacity:.65;transform:scale(.86)}}@keyframes shake{25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}
#app[data-world="1"]{--mint:#a9eba4;--gold:#f8e0a2}#app[data-world="2"]{--mint:#a7e6ff;--gold:#daf3ff}#app[data-world="3"]{--mint:#eca5e5;--gold:#fec7bd}#app[data-world="4"]{--mint:#f0b999;--gold:#ffce77}#app[data-world="5"]{--mint:#ebadfc;--gold:#f4c5fe}
#app[data-world="1"] .tile.floor{background:radial-gradient(circle,#264946,#152e34 80%)}#app[data-world="2"] .tile.floor{background:radial-gradient(circle,#324a67,#1b2a4c 80%)}#app[data-world="3"] .tile.floor{background:radial-gradient(circle,#4b385b,#241a42 80%)}#app[data-world="4"] .tile.floor{background:radial-gradient(circle,#54443d,#2b292c 80%)}#app[data-world="5"] .tile.floor{background:radial-gradient(circle,#514067,#201c42 80%)}
/* Bounded viewport / embedded iframes */
@media(max-height:620px) and (min-width:641px){:root{--cell:min(4.6vw,calc((100dvh - 159px)/9),48px)}.topbar{flex-basis:44px}.footer{flex-basis:19px}.menu-screen{padding:9px 25px}.menu-copy h1{font-size:clamp(47px,6.25vw,80px);margin:7px 0 9px}.lead{font-size:clamp(13px,1.4vw,19px);margin-bottom:7px}.premise{margin-bottom:12px}.menu-links{margin-top:10px}.primary-btn{min-height:43px;padding:11px 17px}.art-pill{bottom:1%}.game-side{gap:8px}.objective{padding:9px}.play-screen{gap:3px;padding-top:5px;padding-bottom:5px}.game-top{min-height:36px}.board-column{gap:5px}.direction-pad{grid-template-columns:repeat(3,38px);grid-template-rows:repeat(2,36px)}.pulse-btn{min-width:65px;min-height:75px}.pulse-btn span{font-size:28px}.game-hint{font-size:10px}.world-frame{padding:5px}.light-caption{margin-bottom:2px}}
@media(max-width:640px){:root{--cell:min(calc((100vw - 28px)/11),calc((100dvh - 252px)/9),36px)}.topbar{flex-basis:43px;padding:0 10px}.brand{font-size:14px}.brand-light{font-size:21px}.top-actions{gap:5px}.chapter-mark{font-size:9px}.iconbtn{height:31px;width:31px;border-radius:9px;font-size:17px}.footer{flex-basis:18px;padding:0 10px;font-size:7px;letter-spacing:.045em}.footer span:last-child{display:none}.menu-screen{display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;padding:10px 17px 20px;background:linear-gradient(0deg,#0a1125 14%,#0a1125e8 34%,#0d173055 80%,transparent)}.menu-art{position:absolute;z-index:-1;inset:-10% 0 32% 0;opacity:.77}.art-pill{display:none}.menu-copy{width:100%}.eyebrow{font-size:10px}.menu-copy h1{font-size:clamp(40px,12vw,76px);margin:6px 0 9px;letter-spacing:-.07em}.lead{font-size:clamp(13px,3.7vw,19px);margin-bottom:7px;line-height:1.25}.premise{font-size:clamp(11px,3vw,13px);margin-bottom:14px}.primary-btn{width:100%;min-width:0;min-height:47px;font-size:14px;padding:10px 14px}.menu-links{margin-top:10px;justify-content:space-between;gap:5px}.text-btn{font-size:11px;padding:8px 3px}.subline{font-size:10px;margin-top:7px}.play-screen{padding:5px 6px;gap:3px}.game-top{min-height:40px;gap:4px}.game-name{gap:5px}.game-name strong{font-size:11px}.game-name small{display:none}.tag{font-size:9px;padding:5px 5px}.game-top-right{gap:3px}.hud-mini{font-size:12px;padding:5px 6px;border-radius:7px;gap:3px}.pausebtn{width:27px;height:28px}.play-content{flex-direction:column;justify-content:flex-start;gap:5px;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.board-column{gap:5px;flex-shrink:0}.world-frame{padding:4px;border-width:1px;border-radius:10px}.light-bar{max-width:calc(11*var(--cell) + 9px);padding:0 3px}.light-caption{font-size:9px;margin-bottom:2px}.meter{height:6px}.game-side{width:100%;max-width:330px;gap:4px;flex:1;justify-content:flex-start}.objective{padding:6px 9px;text-align:center;border-radius:10px}.objective-label{font-size:9px}.objective p{font-size:11px;line-height:1.25;margin:2px 0 0}.control-wrap{gap:17px}.direction-pad{grid-template-columns:repeat(3,39px);grid-template-rows:repeat(2,35px);gap:4px}.dpad{font-size:16px;border-radius:10px}.pulse-btn{min-width:72px;min-height:72px;border-radius:11px}.pulse-btn span{font-size:28px}.pulse-btn small{font-size:8px}.game-hint{font-size:9px;line-height:1.1}.toast{min-height:0;font-size:10px}.panel-screen,.result-screen{padding:5px}.panel{padding:12px;gap:9px}.panel h2,.result-card h2{font-size:28px}.rooms-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}.room-btn{font-size:10px;min-height:31px}.upgrade-grid{grid-template-columns:1fr;gap:7px}.upgrade-card{padding:9px;gap:3px}.upgrade-icon{font-size:22px}.upgrade-card p{font-size:11px}.how-steps{gap:5px}.how-steps>div{padding:7px}.how-steps p{font-size:11px}.result-card{gap:8px;padding:12px}.result-icon{font-size:41px}.result-card p{font-size:12px}.results-stats>div{padding:7px 4px}.results-stats strong{font-size:15px}}
@media(max-width:640px) and (max-height:620px){:root{--cell:min(calc((100vw - 22px)/11),calc((100dvh - 238px)/9),31px)}.menu-screen{padding:8px 14px 12px}.menu-copy h1{font-size:clamp(40px,10.5vw,65px)}.menu-art{inset:-25% 0 36% 0}.lead{font-size:12px}.premise{font-size:10px;margin-bottom:9px}.menu-links{margin-top:6px}.primary-btn{min-height:41px}.subline{margin-top:3px}.game-top{min-height:33px}.direction-pad{grid-template-columns:repeat(3,35px);grid-template-rows:repeat(2,30px)}.pulse-btn{min-height:64px}.game-hint{display:none}}
@media(max-height:390px) and (min-width:641px){.menu-copy h1{font-size:48px}.menu-copy .premise{display:none}.menu-copy .lead{font-size:12px}.subline{display:none}.art-pill{display:none}.footer{display:none}.topbar{flex-basis:37px}.game-hint{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
/* Ultra-low embeds: keep the complete controls visible, even with little vertical space. */
@media(max-width:640px) and (max-height:430px) and (min-width:450px){
:root{--cell:min(calc((100vw - 310px)/11),calc((100dvh - 137px)/9),28px)}
.play-content{flex-direction:row;align-items:center;justify-content:center;gap:8px;overflow:hidden}
.board-column{flex:0 0 auto}.game-side{width:195px;max-width:195px;flex:0 0 195px;justify-content:center;gap:7px}
.control-wrap{gap:4px}.game-hint,.toast{display:none}.objective{padding:8px}.objective-label{font-size:9px}
.objective p{font-size:11px}.direction-pad{grid-template-columns:repeat(3,35px);grid-template-rows:repeat(2,32px)}
.pulse-btn{min-width:67px;min-height:70px}.world-frame{padding:3px}.play-screen{gap:2px}.game-top{min-height:31px}
}
@media(max-width:420px) and (max-height:530px){
:root{--cell:min(calc((100vw - 26px)/11),calc((100dvh - 290px)/9),36px)}
.game-side{gap:2px}.objective{padding:3px 6px}.objective-label{font-size:8px}.objective p{font-size:10px}
.control-wrap{gap:9px}.direction-pad{grid-template-columns:repeat(3,34px);grid-template-rows:repeat(2,29px)}
.pulse-btn{min-height:62px;min-width:65px}.pulse-btn span{font-size:24px}
.play-screen{gap:1px}.board-column{gap:3px}.game-hint{display:none}
}
