:root{font-family:Nunito,ui-rounded,"SF Pro Rounded",system-ui,sans-serif;color:#fff;background:#0b0620;font-synthesis:none;--deep:#0b0620;--panel:#150c33;--cell:#1d1145;--elev:#241659;--text:#fff;--mid:#b4a8e8;--low:#6e5fa8;--yellow:#ffcc29;--pink:#ff3d8a;--cyan:#22e0ff;--green:#4dff9e;--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important;-webkit-user-drag:none}html,body,#root{margin:0;min-height:100%;background:var(--deep);overscroll-behavior:none}body{min-height:100dvh;overflow-x:hidden}button,input,textarea,select{font:inherit}input,textarea{-webkit-user-select:text!important;user-select:text!important;-webkit-touch-callout:default!important}button{border:0;outline:0}a{color:inherit;text-decoration:none}.app{min-height:100dvh;max-width:760px;margin:0 auto;padding:0 16px calc(90px + var(--safe-bottom));position:relative;overflow:hidden;background:radial-gradient(circle at 15% 10%,rgba(168,85,255,.16),transparent 34%),radial-gradient(circle at 90% 34%,rgba(34,224,255,.12),transparent 30%),var(--deep)}.app.fullscreen{padding:0;max-width:none}.topbar{height:72px;padding-top:env(safe-area-inset-top,0);display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:10}.brand{font-size:22px;font-weight:900;letter-spacing:-.5px}.brand span{color:var(--yellow)}.wallets{display:flex;gap:8px}.wallet{height:38px;padding:0 12px;border-radius:14px;background:var(--panel);display:flex;align-items:center;gap:7px;font-weight:800;box-shadow:0 8px 22px rgba(0,0,0,.22)}.avatar{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#a855ff,#22e0ff);display:grid;place-items:center;overflow:hidden;font-weight:900;box-shadow:0 8px 22px rgba(0,0,0,.28)}.avatar img{width:100%;height:100%;object-fit:cover}.hero{padding:12px 0 18px}.eyebrow{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:var(--cyan);font-weight:900}.hero h1{font-size:30px;line-height:1.04;margin:7px 0 6px;font-weight:900;letter-spacing:-1px}.muted{color:var(--mid)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.card{background:var(--panel);border-radius:22px;padding:18px;box-shadow:0 12px 30px rgba(0,0,0,.28);position:relative;overflow:hidden}.card.pressable{cursor:pointer;transition:transform .14s ease,filter .14s ease}.card.pressable:active{transform:translateY(3px) scale(.985);filter:brightness(.95)}.game-card{min-height:190px;display:flex;flex-direction:column;justify-content:space-between}.mode-figure{position:absolute;right:18px;top:18px;width:96px;height:96px;pointer-events:none;opacity:.9;filter:drop-shadow(0 0 22px rgba(168,85,255,.24));transform:rotate(7deg)}.mode-figure i{position:absolute;width:34px;height:34px;border-radius:9px;box-shadow:inset 0 4px rgba(255,255,255,.28),inset 0 -5px rgba(0,0,0,.22),0 0 18px color-mix(in srgb,var(--figure-color) 40%,transparent);background:linear-gradient(180deg,var(--figure-hi),var(--figure-color) 42%,var(--figure-low))}.blast-square{--figure-color:#ff3d9a;--figure-hi:#ff9ccc;--figure-low:#bd0058}.blast-square i{right:7px;top:8px;width:66px;height:66px;border-radius:15px}.tetris-l{--figure-color:#ffd93d;--figure-hi:#fff19a;--figure-low:#c69b00}.tetris-l i:nth-child(1){left:8px;top:8px}.tetris-l i:nth-child(2){left:8px;top:44px}.tetris-l i:nth-child(3){left:44px;top:44px}.tetris-l i:nth-child(4){left:80px;top:44px}.game-card>div:last-child{position:relative;z-index:2}.mode-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:var(--elev);font-size:26px;box-shadow:inset 0 -5px 0 rgba(0,0,0,.18)}.card h3{font-size:21px;margin:14px 0 5px}.card p{font-size:14px;line-height:1.45;margin:0;color:var(--mid)}.record{font-size:12px;color:var(--low);font-weight:800;margin-top:12px}.wide-stack{display:grid;gap:12px;margin-top:12px}.feature-card{display:flex;align-items:center;gap:14px}.feature-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--elev);flex:0 0 auto}.feature-main{min-width:0;flex:1}.feature-main h3{font-size:17px;margin:0 0 3px}.feature-main p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pill{height:31px;padding:0 10px;border-radius:12px;background:var(--elev);display:inline-flex;align-items:center;gap:6px;color:var(--mid);font-size:12px;font-weight:900}.primary{min-height:54px;padding:0 18px;border-radius:18px;background:var(--yellow);color:#2a1a00;font-weight:900;box-shadow:inset 0 -4px 0 rgba(116,80,0,.32),0 10px 24px rgba(255,204,41,.18);cursor:pointer;transition:transform .1s ease}.primary:active{transform:translateY(4px) scale(.985)}.primary.compact{min-height:38px;padding:0 12px;border-radius:13px;font-size:12px;white-space:nowrap}.secondary{min-height:50px;padding:0 17px;border-radius:17px;background:var(--elev);color:#fff;font-weight:850;cursor:pointer}.hot{background:linear-gradient(135deg,#ff3d8a,#a855ff);color:#fff;box-shadow:inset 0 -4px 0 rgba(78,0,78,.3),0 10px 25px rgba(255,61,138,.2)}.cool{background:linear-gradient(135deg,#22e0ff,#3d7bff);color:#07162a}.section-head{display:flex;align-items:center;justify-content:space-between;margin:24px 2px 10px}.section-head h2{font-size:20px;margin:0}.quest{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:12px;padding:14px 16px}.progress{height:7px;border-radius:99px;background:#241659;overflow:hidden;margin-top:8px}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--green));border-radius:99px}.bottom-nav{position:fixed;z-index:50;left:50%;bottom:0;transform:translateX(-50%);width:min(760px,100%);height:calc(70px + var(--safe-bottom));padding:8px 12px var(--safe-bottom);display:grid;grid-template-columns:repeat(4,1fr);background:rgba(21,12,51,.97);box-shadow:0 -18px 35px rgba(0,0,0,.32)}.nav-btn{background:transparent;color:var(--low);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px;font-weight:800;border-radius:16px}.nav-btn.active{color:var(--yellow);background:var(--elev)}.page-title{font-size:28px;margin:12px 0 18px}.tabs{display:flex;gap:6px;padding:6px;background:var(--panel);border-radius:18px;margin-bottom:14px}.tab{flex:1;min-height:42px;border-radius:13px;background:transparent;color:var(--mid);font-weight:850}.tab.active{background:var(--elev);color:#fff}.rating-tabs{display:grid;grid-template-columns:repeat(4,1fr)}.rating-tabs .tab{font-size:12px;padding:0 5px}.scope-tabs{max-width:320px;margin-left:auto;margin-right:auto}.leader-row{display:grid;grid-template-columns:34px 44px 1fr auto;align-items:center;gap:10px;padding:11px 14px;margin-bottom:8px}.leader-row.me{background:linear-gradient(135deg,#241659,#2f1b70)}.leader-rank{font-weight:900;color:var(--mid);text-align:center}.leader-score{font-weight:900}.empty{padding:34px 20px;text-align:center;color:var(--mid)}.modal-backdrop{position:fixed;inset:0;z-index:100;background:rgba(11,6,32,.76);backdrop-filter:blur(8px);display:flex;align-items:flex-end;justify-content:center}.modal{width:min(760px,100%);max-height:92dvh;overflow:auto;background:var(--panel);border-radius:28px 28px 0 0;padding:24px 18px calc(24px + var(--safe-bottom));box-shadow:0 -20px 50px rgba(0,0,0,.44)}.modal h2{font-size:26px;margin:0 0 8px}.modal-actions{display:grid;gap:10px;margin-top:20px}.game-shell{min-height:100dvh;background:radial-gradient(circle at 50% 30%,#1a0f3d,#0b0620 64%);padding:calc(env(safe-area-inset-top,0px) + 8px) 10px calc(env(safe-area-inset-bottom,0px) + 10px);display:flex;flex-direction:column}.game-head{height:70px;display:grid;grid-template-columns:60px 1fr 60px;align-items:center}.score-box{text-align:center}.score-number{font-size:38px;line-height:1;font-weight:950;font-variant-numeric:tabular-nums}.score-label{font-size:11px;color:var(--mid);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.icon-btn{width:48px;height:48px;border-radius:16px;background:var(--panel);color:#fff;display:grid;place-items:center;justify-self:center}.game-canvas{width:100%;flex:1;min-height:520px;display:flex;align-items:center;justify-content:center}.game-canvas canvas{width:100%!important;height:auto!important;max-height:calc(100dvh - 150px);touch-action:none}.booster-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:520px;width:100%;margin:8px auto 0}.booster{background:var(--panel);border-radius:16px;color:#fff;min-height:52px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:850}.booster.active{background:var(--elev);box-shadow:0 0 20px rgba(34,224,255,.2)}.share-preview{width:100%;border-radius:20px;background:#0b0620;margin-top:14px;display:block}.ladder-map{display:grid;gap:14px;padding:12px 0 24px}.level-node{width:76px;height:76px;border-radius:24px;background:var(--elev);display:grid;place-items:center;font-size:23px;font-weight:950;position:relative;box-shadow:0 10px 22px rgba(0,0,0,.3)}.level-node:nth-child(even){margin-left:auto;margin-right:15%}.level-node:nth-child(odd){margin-left:15%}.level-node.current{background:linear-gradient(145deg,var(--yellow),#ff8a3d);color:#2a1a00;animation:pulse 1.8s infinite}.level-node.locked{opacity:.4}.stars{position:absolute;bottom:-10px;font-size:13px;letter-spacing:-2px}@keyframes pulse{50%{transform:scale(1.06);box-shadow:0 0 28px rgba(255,204,41,.35)}}.switch{width:52px;height:30px;border-radius:99px;background:var(--elev);padding:3px}.switch span{display:block;width:24px;height:24px;border-radius:50%;background:var(--mid);transition:.18s}.switch.on{background:var(--green)}.switch.on span{transform:translateX(22px);background:#072316}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;margin-bottom:9px}.admin-shell{max-width:1180px;margin:0 auto;padding:28px 20px;min-height:100dvh}.admin-grid{display:grid;grid-template-columns:220px 1fr;gap:20px}.admin-sidebar{position:sticky;top:20px;height:max-content}.admin-nav{display:grid;gap:7px}.admin-nav button{text-align:left}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric{padding:18px}.metric b{font-size:28px;display:block;margin-top:6px}.admin-table{width:100%;border-collapse:separate;border-spacing:0 8px}.admin-table td,.admin-table th{text-align:left;padding:11px 12px;background:var(--panel)}.admin-table td:first-child,.admin-table th:first-child{border-radius:14px 0 0 14px}.admin-table td:last-child,.admin-table th:last-child{border-radius:0 14px 14px 0}.field{width:100%;min-height:50px;border:0;outline:0;border-radius:16px;padding:0 15px;background:var(--elev);color:#fff;margin-bottom:10px}.field.area{min-height:180px;padding:14px;resize:vertical}@media(max-width:620px){.grid2{grid-template-columns:1fr 1fr}.game-card{min-height:175px;padding:15px}.metric-grid{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}.admin-sidebar{position:static}.admin-nav{grid-template-columns:repeat(2,1fr)}.admin-table{font-size:12px}.admin-table .hide-mobile{display:none}}@media(max-width:380px){.app{padding-left:12px;padding-right:12px}.game-card{min-height:164px}.hero h1{font-size:27px}.wallet{padding:0 9px}.card{border-radius:19px}}
/* Vanilla PHP build additions */
[hidden]{display:none!important}.screen{animation:screenIn .18s ease}.screen.game-screen{animation:none}@keyframes screenIn{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}.logo-mark{display:inline-grid;grid-template-columns:repeat(3,7px);gap:2px;transform:rotate(-7deg);margin-right:8px}.logo-mark i{width:7px;height:7px;border-radius:2px;background:var(--yellow);box-shadow:0 0 8px rgba(255,204,41,.35)}.logo-mark i:nth-child(2),.logo-mark i:nth-child(5){background:var(--pink)}.logo-mark i:nth-child(3),.logo-mark i:nth-child(6),.logo-mark i:nth-child(9){background:var(--cyan)}.splash{position:fixed;inset:0;z-index:999;background:var(--deep);display:grid;place-items:center;transition:.35s}.splash.hide{opacity:0;pointer-events:none}.splash-logo{font-size:28px;font-weight:950;display:flex;align-items:center}.splash-cubes{width:90px;height:90px;position:relative;margin:0 auto 18px}.splash-cubes span{position:absolute;width:27px;height:27px;border-radius:7px;background:var(--cyan);box-shadow:inset 0 -5px rgba(0,0,0,.2),0 0 18px rgba(34,224,255,.35);animation:cubeBuild 1.1s infinite alternate}.splash-cubes span:nth-child(1){left:0;top:31px}.splash-cubes span:nth-child(2){left:31px;top:0;background:var(--pink);animation-delay:.12s}.splash-cubes span:nth-child(3){left:31px;top:31px;background:var(--yellow);animation-delay:.24s}.splash-cubes span:nth-child(4){left:62px;top:31px;background:var(--green);animation-delay:.36s}.splash-cubes span:nth-child(5){left:31px;top:62px;background:#a855ff;animation-delay:.48s}@keyframes cubeBuild{from{transform:scale(.6) rotate(-12deg);opacity:.45}to{transform:scale(1);opacity:1}}.toast-wrap{position:fixed;top:calc(env(safe-area-inset-top,0px) + 12px);left:50%;transform:translateX(-50%);z-index:300;width:min(92%,480px);display:grid;gap:8px;pointer-events:none}.toast{background:#241659;color:#fff;border-radius:17px;padding:13px 15px;box-shadow:0 14px 40px rgba(0,0,0,.45);animation:toastIn .2s ease}.toast.error{background:#65153f}.toast.success{background:#114f3b}@keyframes toastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}.loading-card{min-height:150px;display:grid;place-items:center;color:var(--mid)}.spinner{width:30px;height:30px;border-radius:50%;background:conic-gradient(var(--yellow),transparent 65%);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 0);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.blast-wrap{width:min(100%,560px);margin:auto}.blast-board{display:grid;grid-template-columns:repeat(8,1fr);gap:3px;aspect-ratio:1;background:radial-gradient(circle at 50% 42%,#1a0f3d,#0b0620);padding:6px;border-radius:20px;touch-action:none;box-shadow:0 18px 45px rgba(0,0,0,.35)}.blast-cell{position:relative;background:var(--cell);border-radius:22%;min-width:0;transition:transform .1s,background .1s;overflow:hidden}.blast-cell.filled{background:linear-gradient(180deg,var(--block-hi),var(--block) 34%,var(--block-low));box-shadow:0 0 10px color-mix(in srgb,var(--block) 34%,transparent),inset 0 3px rgba(255,255,255,.25),inset 0 -4px var(--block-low);animation:blockDrop .14s cubic-bezier(.2,1.4,.4,1)}.blast-cell.valid{background:color-mix(in srgb,var(--drag-color) 35%,var(--cell));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--drag-color) 55%,transparent)}.blast-cell.invalid{background:rgba(255,61,138,.3)}.blast-cell.clearing{animation:clearBlock .28s ease forwards}.blast-cell.special:after{content:attr(data-special);position:absolute;inset:20%;border-radius:30%;background:rgba(255,255,255,.45);font-size:0}.blast-cell[data-special=stone]:after{inset:10%;background:#6e5fa8}.blast-cell[data-special=ice]:after{inset:12%;background:rgba(190,240,255,.5)}@keyframes blockDrop{from{transform:scale(.65) translateY(-8px)}to{transform:none}}@keyframes clearBlock{35%{background:#fff;transform:scale(1.08)}to{opacity:0;transform:scale(.25) rotate(18deg)}}.tray{height:126px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px auto 0;width:min(100%,520px)}.tray-slot{background:rgba(21,12,51,.72);border-radius:20px;display:grid;place-items:center;position:relative;touch-action:none}.tray-slot.used{opacity:.18}.piece-preview{position:relative;touch-action:none;cursor:grab}.piece-preview.dragging{position:fixed;z-index:250;pointer-events:none;filter:drop-shadow(0 14px 14px rgba(0,0,0,.45));transform:scale(1.08)}.mini-block{position:absolute;border-radius:22%;background:linear-gradient(180deg,var(--block-hi),var(--block) 38%,var(--block-low));box-shadow:inset 0 3px rgba(255,255,255,.28),inset 0 -4px var(--block-low),0 0 11px color-mix(in srgb,var(--block) 30%,transparent)}.combo-pop{position:fixed;left:50%;top:43%;z-index:220;transform:translate(-50%,-50%);font-size:34px;font-weight:950;color:var(--yellow);text-shadow:0 5px 18px rgba(0,0,0,.55);animation:comboPop .8s ease forwards;pointer-events:none}@keyframes comboPop{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}100%{opacity:0;transform:translate(-50%,-90%) scale(.95)}}.shake{animation:shake .26s linear}@keyframes shake{0%,100%{transform:none}20%{transform:translateX(-6px)}40%{transform:translateX(5px)}60%{transform:translateX(-3px)}80%{transform:translateX(2px)}}.tetris-layout{display:grid;grid-template-columns:minmax(0,1fr) 84px;gap:9px;width:min(100%,500px);margin:auto;align-items:start}.tetris-board{width:100%;aspect-ratio:10/20;background:#0f0928;border-radius:17px;touch-action:none;image-rendering:pixelated;box-shadow:0 18px 45px rgba(0,0,0,.4)}.tetris-side{display:grid;gap:8px}.tetris-panel{background:var(--panel);border-radius:16px;padding:9px;text-align:center}.tetris-panel small{font-size:9px;color:var(--low);text-transform:uppercase;font-weight:900}.tetris-panel canvas{width:100%;aspect-ratio:1;display:block}.tetris-controls{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;width:min(100%,500px);margin:9px auto 0}.control-btn{min-height:48px;border-radius:15px;background:var(--panel);color:#fff;font-size:20px;font-weight:900}.control-btn:active{background:var(--elev);transform:translateY(2px)}.result-score{font-size:58px;font-weight:950;line-height:1;margin:18px 0 5px;color:var(--yellow)}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.result-stat{background:var(--elev);border-radius:15px;padding:12px;text-align:center}.result-stat b{display:block;font-size:19px}.result-stat span{font-size:11px;color:var(--mid)}.timer-ring{font-variant-numeric:tabular-nums;color:var(--pink);font-weight:900}.profile-hero{text-align:center;padding:20px}.profile-big-avatar{width:94px;height:94px;border-radius:30px;margin:0 auto 14px;background:linear-gradient(145deg,#a855ff,#22e0ff);overflow:hidden;display:grid;place-items:center;font-size:34px;font-weight:950}.profile-big-avatar img{width:100%;height:100%;object-fit:cover}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat-card b{font-size:25px;display:block}.shop-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.shop-item{min-height:160px;display:flex;flex-direction:column;justify-content:space-between}.price-star{color:var(--yellow);font-weight:950}.arena-active{background:linear-gradient(135deg,#471153,#17104a)}.daily-active{background:linear-gradient(135deg,#063e55,#241659)}.friend-row{display:grid;grid-template-columns:44px 1fr auto;gap:11px;align-items:center;padding:12px;margin-bottom:8px}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--low)}.status-dot.active{background:var(--green);box-shadow:0 0 10px rgba(77,255,158,.5)}.native-back-note{font-size:11px;color:var(--low);text-align:center;margin:5px 0}.tutorial-hand{position:fixed;z-index:230;font-size:34px;pointer-events:none;animation:tutorialHand 1.3s ease-in-out infinite}@keyframes tutorialHand{50%{transform:translateY(-18px) scale(1.05)}}.onboarding-text{position:fixed;z-index:231;left:50%;transform:translateX(-50%);bottom:160px;background:var(--yellow);color:#2a1a00;padding:10px 16px;border-radius:15px;font-weight:950;pointer-events:none}.no-copy{-webkit-touch-callout:none}.admin-login{min-height:100dvh;display:grid;place-items:center;padding:20px}.admin-login-card{width:min(100%,420px)}.admin-page{display:none}.admin-page.active{display:block}.chart{display:flex;align-items:flex-end;gap:5px;height:170px;padding:12px 0}.chart-bar{flex:1;min-width:8px;background:linear-gradient(180deg,var(--cyan),#3d7bff);border-radius:8px 8px 3px 3px;position:relative}.chart-bar:hover:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);background:#000;padding:5px 7px;border-radius:8px;font-size:10px;white-space:nowrap}.danger{background:#5e173c;color:#fff}.success{background:#124c38;color:#fff}.admin-modal{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.62);display:grid;place-items:center;padding:18px}.admin-modal>.card{width:min(100%,620px);max-height:90dvh;overflow:auto}.code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all;background:#0b0620;padding:10px;border-radius:12px}.safe-area-spacer{height:env(safe-area-inset-bottom,0px)}
@media(max-height:720px){.tray{height:96px}.game-head{height:58px}.score-number{font-size:31px}.booster{min-height:45px}.game-canvas{min-height:0}.blast-board{max-height:53dvh;max-width:53dvh}.tetris-board{max-height:66dvh;width:auto;max-width:100%}}

/* Public domain landing: shown outside Telegram. */
.web-landing{min-height:100svh;display:grid;place-items:center;padding:28px 18px;background:radial-gradient(circle at 18% 12%,rgba(168,85,255,.27),transparent 34%),radial-gradient(circle at 82% 78%,rgba(34,224,255,.18),transparent 34%),#0b0620;overflow:hidden}.landing-glow{width:min(100%,980px);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:46px;align-items:center;position:relative}.landing-brand,.landing-copy,.landing-features{grid-column:1}.landing-brand{display:flex;gap:18px;align-items:center}.landing-brand h1{font-size:clamp(42px,8vw,82px);line-height:.95;margin:6px 0 0;letter-spacing:-.055em}.landing-brand h1 span{color:var(--yellow,#ffcc29)}.landing-logo{width:76px;height:76px;flex:0 0 76px;transform:rotate(-5deg)}.landing-copy h2{font-size:clamp(28px,4vw,48px);line-height:1.08;margin:24px 0 12px;max-width:680px}.landing-copy p{font-size:18px;line-height:1.6;color:#b4a8e8;max-width:620px;margin:0}.landing-card{grid-column:2;grid-row:1/4;background:#150c33;border-radius:32px;padding:24px;box-shadow:0 28px 80px rgba(0,0,0,.48);display:flex;flex-direction:column;gap:16px;align-items:stretch}.qr-shell{background:#fff;border-radius:24px;padding:16px;aspect-ratio:1;display:grid;place-items:center}.qr-shell img{width:100%;height:100%;object-fit:contain;image-rendering:crisp-edges}.landing-button{display:flex!important;text-decoration:none;justify-content:center;align-items:center;width:100%;min-height:58px}.landing-note{text-align:center;color:#8e82c7;font-size:13px}.landing-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.landing-features span{background:#241659;color:#fff;border-radius:999px;padding:10px 14px;font-size:12px;font-weight:800;letter-spacing:.06em}.web-landing .logo-mark i{box-shadow:0 0 14px rgba(255,204,41,.3)}
@media(max-width:760px){.web-landing{padding:22px 16px}.landing-glow{grid-template-columns:1fr;gap:24px;text-align:center}.landing-brand,.landing-copy,.landing-features,.landing-card{grid-column:1}.landing-brand{justify-content:center}.landing-card{grid-row:auto;width:min(100%,380px);justify-self:center}.landing-copy p{margin-inline:auto}.landing-features{justify-content:center;margin-top:4px}.landing-logo{width:62px;height:62px;flex-basis:62px}}
.system-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.system-checks>div{display:flex;align-items:center;justify-content:space-between;background:#1d1145;border-radius:14px;padding:12px 14px}.status-ok{color:#4dff9e}.status-bad{color:#ff5e91}@media(max-width:620px){.system-checks{grid-template-columns:1fr}}

/* Production icon system: vector-only, no platform emoji rendering. */
.ui-icon{width:22px;height:22px;display:block;fill:currentColor;flex:0 0 auto}.inline-icon{width:15px;height:15px;display:inline-block;vertical-align:-2px;fill:currentColor;margin-right:5px}.wallet .ui-icon{width:18px;height:18px;color:var(--yellow)}.wallet:nth-child(2) .ui-icon{color:var(--cyan)}.mode-icon .ui-icon{width:27px;height:27px}.feature-icon .ui-icon{width:24px;height:24px}.nav-btn .ui-icon{width:21px;height:21px}.nav-btn.active .ui-icon{filter:drop-shadow(0 0 8px rgba(255,204,41,.35))}.icon-button{width:42px;min-height:42px!important;padding:0;display:grid;place-items:center}.stars-label{font-size:10px;letter-spacing:.08em}.tutorial-hand .ui-icon{width:34px;height:34px;color:var(--yellow);filter:drop-shadow(0 8px 12px rgba(0,0,0,.45));transform:rotate(-90deg)}
@media(max-width:380px){.app{padding-left:12px;padding-right:12px}.wallet{padding:0 9px}.brand{font-size:20px}.hero h1{font-size:27px}.game-card{min-height:176px}.card{padding:16px}.feature-card{gap:11px}.feature-main h3{font-size:16px}.feature-main p{font-size:12px}.bottom-nav{padding-left:8px;padding-right:8px}.nav-btn{font-size:10px}}


/* Production responsive pass v4 */
:root{--tg-height:100dvh;--safe-top:env(safe-area-inset-top,0px)}
html,body{height:100%;min-height:var(--tg-height)}
body.tg-desktop .app{max-width:none;width:100%;min-height:var(--tg-height);padding-inline:clamp(18px,4vw,64px)}
body.tg-desktop .screen{width:min(100%,1180px);margin-inline:auto}
body.tg-desktop .bottom-nav{width:min(760px,calc(100% - 40px));bottom:18px;border-radius:24px;padding-bottom:8px}
body.tg-desktop .game-shell{width:100%;max-width:none}
body.tg-mobile .app{min-height:var(--tg-height);padding-top:max(8px,var(--safe-top))}
.topbar{min-width:0}.brand{white-space:nowrap}.wallets{min-width:0}.wallet span{font-variant-numeric:tabular-nums}
.primary:disabled,.secondary:disabled,button:disabled{opacity:.48;cursor:not-allowed;transform:none!important;box-shadow:none}
.is-disabled{pointer-events:none;opacity:.72}.arena-closed{background:linear-gradient(135deg,#20183f,#120d29);min-height:92px}.arena-lock-overlay{position:absolute;inset:0;background:rgba(11,6,32,.66);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;font-size:14px}.arena-lock-overlay .ui-icon{width:20px;height:20px;color:var(--yellow)}
.booster .ui-icon,.control-btn .ui-icon,.icon-btn .ui-icon{width:23px;height:23px}.control-btn{display:grid;place-items:center}.control-btn .ui-icon{width:25px;height:25px}
.stars{display:flex;align-items:center;justify-content:center;gap:1px}.stars .inline-icon{margin:0;width:12px;height:12px;color:var(--yellow)}
.share-preview{animation:previewIn .24s ease}@keyframes previewIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.game-shell{height:var(--tg-height);min-height:var(--tg-height);overflow:hidden}.game-screen{padding-top:max(calc(var(--safe-top) + 6px),10px)}
.game-canvas{min-height:0;overflow:hidden}.blast-wrap{max-height:100%;display:flex;flex-direction:column}.blast-board{width:min(100%,calc(var(--tg-height) - 285px));max-width:560px}.tray{flex:0 0 auto}
.tetris-layout{height:min(calc(var(--tg-height) - 160px),760px);grid-template-columns:minmax(0,1fr) clamp(64px,15vw,88px)}.tetris-board{height:100%;width:auto;max-width:100%;justify-self:center}.tetris-side{max-height:100%;overflow:hidden}.tetris-controls{flex:0 0 auto}
.admin-shell{max-width:1440px}.admin-grid{min-width:0}.admin-grid>section{min-width:0}.admin-table{min-width:720px}
@media(max-width:900px){.admin-shell{padding:14px}.admin-grid{grid-template-columns:1fr;gap:14px}.admin-sidebar{position:static;padding:10px}.admin-nav{display:flex;overflow-x:auto;gap:8px;scrollbar-width:none}.admin-nav::-webkit-scrollbar{display:none}.admin-nav button{flex:0 0 auto;min-height:44px;white-space:nowrap}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{height:auto;min-height:64px}.admin-shell .topbar{padding:0 4px 8px}.page-title{font-size:25px}}
@media(max-width:600px){.app{padding-left:12px;padding-right:12px}.topbar{height:62px;gap:7px}.brand{font-size:18px}.logo-mark{transform:scale(.88);transform-origin:left center}.wallets{gap:5px}.wallet{height:35px;padding:0 8px;font-size:13px}.avatar{width:38px;height:38px;border-radius:13px}.hero{padding-top:6px}.hero h1{font-size:clamp(25px,8vw,31px)}.grid2{gap:9px}.game-card{min-height:170px;padding:15px}.card h3{font-size:18px}.feature-card{padding:14px}.feature-main p{font-size:12px}.quest{grid-template-columns:40px minmax(0,1fr) auto;gap:9px}.bottom-nav{height:calc(66px + var(--safe-bottom));padding-top:6px}.nav-btn{font-size:10px}.modal{padding:20px 14px calc(18px + var(--safe-bottom));max-height:94dvh}.result-stats{gap:6px}.result-stat{padding:10px 6px}.game-head{height:58px;grid-template-columns:50px 1fr 50px}.icon-btn{width:42px;height:42px;border-radius:14px}.score-number{font-size:34px}.booster-bar{gap:6px}.booster{min-height:46px;font-size:12px}.tray{height:104px}.tetris-controls{gap:5px}.control-btn{min-height:46px;border-radius:13px}.metric-grid{grid-template-columns:1fr 1fr}.metric{padding:14px}.metric b{font-size:23px}.admin-shell{padding:10px}.admin-sidebar{border-radius:16px}.admin-table{min-width:620px}.field{min-height:46px}.admin-login{padding:12px}}
@media(max-width:390px){.topbar .brand{max-width:122px;overflow:hidden}.wallet{padding:0 7px}.wallet .ui-icon{width:16px;height:16px}.hero p{font-size:13px}.game-card{min-height:158px}.mode-icon{width:48px;height:48px}.feature-icon{width:44px;height:44px}.section-head{margin-top:19px}.quest{padding:12px}.quest .primary.compact,.quest .secondary.compact{padding-inline:8px}.tetris-layout{grid-template-columns:minmax(0,1fr) 58px;gap:5px}.tetris-panel{padding:5px;border-radius:12px}}
@media(max-height:700px){.game-head{height:50px}.score-number{font-size:29px}.game-shell{padding-top:max(var(--safe-top),4px)}.blast-board{width:min(100%,calc(var(--tg-height) - 235px))}.tray{height:86px;margin-top:6px}.booster{min-height:42px}.tetris-layout{height:calc(var(--tg-height) - 132px)}.tetris-controls{margin-top:5px}.control-btn{min-height:40px}}

body.tg-mobile .app{padding-left:max(12px,var(--safe-left));padding-right:max(12px,var(--safe-right))}body.tg-mobile .topbar{padding-top:var(--safe-top);height:calc(62px + var(--safe-top))}.game-screen{padding-left:max(10px,var(--safe-left));padding-right:max(10px,var(--safe-right));padding-bottom:max(10px,var(--safe-bottom))}.bottom-nav{padding-left:max(12px,var(--safe-left));padding-right:max(12px,var(--safe-right))}

/* Grid Crush production release 5.0 */
:root{--app-top-offset:0px}
.app{overflow:visible}
.topbar{position:static!important;padding-top:0!important;height:auto!important;min-height:62px;margin:0 0 4px}
.screen{width:100%;min-width:0;overflow:visible}
.screen>*{min-width:0}
body.tg-mobile .app{padding-top:var(--app-top-offset)!important}
body.tg-mobile .topbar{height:62px!important;padding-top:0!important}
.game-screen{padding-top:var(--app-top-offset)!important}
.game-head{flex:0 0 auto}
.rating-list,.friends-content{width:100%;display:block;min-height:0}
.rating-list .leader-row,.friends-content>.card,.friends-content>.stat-grid{width:100%;max-width:none}
.leader-row{width:100%;grid-template-columns:32px 44px minmax(0,1fr) minmax(58px,auto)}
.leader-row>div:nth-child(3){min-width:0}.leader-row>div:nth-child(3) b,.leader-row>div:nth-child(3) p{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rating-tabs{width:100%;grid-template-columns:repeat(4,minmax(0,1fr))}.rating-tabs .tab{min-width:0;line-height:1.15;padding:0 7px}.scope-tabs{width:min(100%,420px);max-width:none}
.shop-grid{width:100%;align-items:stretch}.shop-item{min-width:0}.shop-item-copy{display:flex;align-items:flex-start;gap:12px;min-width:0}.shop-item-copy>div:last-child{min-width:0}.shop-item h3{margin:5px 0 5px;line-height:1.2}.shop-item p{margin:0;color:var(--mid);line-height:1.35}.shop-buy{width:100%;margin-top:14px}.price-star{color:#2a1a00!important;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:950}.telegram-star-icon{width:18px;height:19px;display:block;fill:currentColor;flex:0 0 auto}.shop-item>.feature-icon{display:none}.shop-error{grid-column:1/-1}
.ladder-result-stars{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 4px}.ladder-result-stars span{width:36px;height:36px;display:grid;place-items:center;color:var(--low);transform:scale(.9)}.ladder-result-stars span.earned{color:var(--yellow);filter:drop-shadow(0 0 10px rgba(255,204,41,.3));transform:scale(1)}.ladder-result-stars .ui-icon{width:31px;height:31px}
.mobile-only-landing .landing-copy h2{max-width:720px}.mobile-only-landing .landing-card{border-radius:28px}.landing-mode{overflow:auto}
@media(max-width:600px){
  .app{padding-left:max(14px,var(--safe-left));padding-right:max(14px,var(--safe-right))}
  .topbar{gap:8px;min-height:58px!important}.brand{font-size:19px}.wallets{margin-left:auto}.wallet{padding:0 8px}.avatar{flex:0 0 auto}
  .hero{padding-top:10px}.hero h1{font-size:clamp(27px,8.4vw,34px);line-height:1.08}.hero p{font-size:14px;line-height:1.45}
  .grid2{grid-template-columns:1fr 1fr}.game-card{min-height:168px}.feature-card{width:100%}
  .rating-tabs{gap:4px;padding:5px}.rating-tabs .tab{font-size:11px;padding-inline:4px}.leader-row{padding:11px 10px;gap:8px;grid-template-columns:27px 42px minmax(0,1fr) minmax(48px,auto)}.leader-score{font-size:14px}
  .shop-grid{grid-template-columns:1fr!important;gap:10px}.shop-item{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:15px}.shop-item-copy{align-items:center}.shop-item .feature-icon{width:46px;height:46px;border-radius:15px}.shop-buy{width:auto;min-width:104px;margin:0;min-height:48px;padding:0 14px}.price-star{font-size:15px}.telegram-star-icon{width:17px;height:18px}
  .game-screen{padding-left:max(10px,var(--safe-left))!important;padding-right:max(10px,var(--safe-right))!important;padding-bottom:max(10px,var(--safe-bottom))!important}.game-head{height:60px}.score-number{font-size:34px}
  .modal{max-height:calc(var(--tg-height) - 12px);padding-bottom:calc(24px + var(--safe-bottom))}
}
@media(max-width:390px){
  .brand{font-size:18px}.topbar .brand{max-width:132px}.wallet{font-size:12px}.wallets{gap:4px}.avatar{width:36px;height:36px}
  .grid2{gap:8px}.game-card{padding:14px;min-height:158px}.feature-main h3{font-size:16px}.feature-main p{font-size:12px}
  .rating-tabs .tab{font-size:10px}.leader-row{grid-template-columns:24px 38px minmax(0,1fr) minmax(42px,auto);padding-inline:8px}.leader-row .avatar{width:38px;height:38px}
  .shop-item{grid-template-columns:minmax(0,1fr) 94px;gap:8px;padding:13px}.shop-item-copy{gap:9px}.shop-item h3{font-size:16px}.shop-item p{font-size:12px}.shop-buy{min-width:94px;padding-inline:10px}.price-star{gap:5px}
}

/* Compact-height game layout */
.blast-wrap{height:100%;justify-content:center}
.blast-board{width:min(100%,calc(var(--tg-height) - var(--app-top-offset) - 210px))}
.tray{height:clamp(68px,12dvh,104px);margin-top:7px}
.tetris-layout{height:min(calc(var(--tg-height) - var(--app-top-offset) - 132px),720px)}
.booster[data-booster="hammer"] .ui-icon{color:var(--cyan)}
.booster[data-booster="swap"] .ui-icon{color:#b978ff}
.booster[data-booster="bomb"] .ui-icon{color:var(--pink)}
@media(max-height:620px){
  .game-head{height:50px;grid-template-columns:46px 1fr 46px}.icon-btn{width:40px;height:40px;border-radius:13px}.score-number{font-size:28px}.score-label{font-size:9px}
  .blast-board{width:min(100%,calc(var(--tg-height) - var(--app-top-offset) - 210px))}.tray{height:66px;margin-top:5px}.booster-bar{margin-top:5px;gap:5px}.booster{min-height:38px;border-radius:12px}
  .tetris-layout{height:calc(var(--tg-height) - var(--app-top-offset) - 128px)}.tetris-controls{margin-top:4px;gap:4px}.control-btn{min-height:38px}
}

/* Grid Crush production release 7.0 — adaptive mobile layout */
:root{--content-max:760px;--page-gutter:16px;--nav-h:70px}
html{background:var(--deep);scroll-behavior:smooth}
html,body,#root{height:auto;min-height:100%}
body{overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:auto}
.app{width:100%;max-width:var(--content-max);height:auto!important;min-height:100dvh;overflow:visible!important;padding:max(var(--app-top-offset),0px) var(--page-gutter) calc(var(--nav-h) + var(--safe-bottom) + 24px);background:radial-gradient(circle at 15% 8%,rgba(168,85,255,.16),transparent 32%),radial-gradient(circle at 92% 33%,rgba(34,224,255,.1),transparent 30%),var(--deep)}
.screen{width:100%;height:auto;min-width:0;overflow:visible!important}
.topbar{position:relative!important;inset:auto!important;z-index:2;width:100%;min-height:62px!important;height:auto!important;margin:0 0 8px;padding:0!important;display:flex;align-items:center;gap:10px;background:transparent;transform:none!important}
.brand{display:flex;align-items:center;min-width:0;white-space:nowrap}.wallets{margin-left:auto;min-width:0}.wallet{flex:0 0 auto}.avatar{flex:0 0 auto}
.hero{padding-top:8px}.hero h1{max-width:620px}.game-card,.feature-card,.quest,.leader-row,.friend-row,.shop-item{min-width:0}
.quest-list{gap:11px}.quest{grid-template-columns:48px minmax(0,1fr) auto;gap:16px;padding:15px 16px}.quest-icon{width:48px;height:48px}.quest-copy{min-width:0}.quest-copy b{display:block;line-height:1.25}.quest-copy p{margin-top:5px}.quest-reward{min-width:82px;justify-content:center}
.streak-card{padding:14px}.streak-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.streak-day{height:46px;border-radius:13px;background:var(--elev);display:grid;place-items:center;font-size:20px;color:#fff}.streak-day.active{background:var(--yellow);color:#2a1a00;box-shadow:inset 0 -4px 0 rgba(116,80,0,.28)}
.bottom-nav{position:fixed;z-index:60;bottom:0;left:50%;transform:translateX(-50%);width:min(var(--content-max),100%);height:calc(var(--nav-h) + var(--safe-bottom));padding:7px max(12px,var(--safe-left)) var(--safe-bottom) max(12px,var(--safe-right));background:rgba(21,12,51,.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.toast-wrap{position:fixed!important;z-index:300!important;left:50%!important;top:calc(var(--app-top-offset) + 6px)!important;transform:translateX(-50%);width:min(calc(100% - 28px),720px);pointer-events:none}.toast{width:100%;margin-bottom:8px}

/* Interactive onboarding */
.tutorial-screen{height:var(--tg-height);min-height:var(--tg-height);padding-top:var(--app-top-offset)!important;overflow:hidden}
.tutorial-coach{flex:0 0 auto;width:min(100%,560px);margin:0 auto 10px;padding:14px 16px;background:linear-gradient(135deg,#241659,#17103b);border-radius:19px;box-shadow:0 12px 30px rgba(0,0,0,.24)}
.tutorial-step{font-size:11px;letter-spacing:.12em;font-weight:950;color:var(--cyan);margin-bottom:5px}.tutorial-coach h2,.tutorial-rules h2{margin:0 0 5px;font-size:22px}.tutorial-coach p{margin:0;font-size:13px;line-height:1.42;color:var(--mid)}
.tutorial-screen .game-canvas{align-items:flex-start;justify-content:center;min-height:0;overflow:visible}.tutorial-screen .blast-wrap{height:auto;justify-content:flex-start;width:100%}.tutorial-screen .blast-board{width:min(calc(100vw - 24px),calc(var(--tg-height) - var(--app-top-offset) - 230px),560px)}.tutorial-screen .tray{height:clamp(78px,13dvh,108px);margin-top:8px}
.tutorial-screen .tray-slot:not(.tutorial-piece){opacity:.28;filter:saturate(.5)}.tutorial-piece{background:rgba(34,224,255,.08);box-shadow:0 0 0 2px rgba(34,224,255,.22),0 0 25px rgba(34,224,255,.18)}.tutorial-target{animation:tutorialPulse 1s ease-in-out infinite}.tutorial-guide{position:fixed;inset:0;z-index:260;width:100vw;height:100vh;pointer-events:none;filter:drop-shadow(0 3px 6px rgba(0,0,0,.45));animation:guideFade 1.5s ease-in-out infinite}
@keyframes tutorialPulse{50%{filter:brightness(1.45);box-shadow:0 0 16px rgba(255,204,41,.75)}}@keyframes guideFade{50%{opacity:.55}}
.tutorial-rule-list{display:grid;gap:10px;margin:16px 0 18px}.tutorial-rule-list>div{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;padding:11px;background:var(--elev);border-radius:15px}.tutorial-rule-list .ui-icon{width:25px;height:25px;color:var(--yellow);justify-self:center}.tutorial-rule-list span{display:grid;gap:2px}.tutorial-rule-list b{font-size:14px}.tutorial-rule-list small{font-size:12px;line-height:1.35;color:var(--mid)}.tutorial-rules>.primary{width:100%}

/* Game screens fit the stable Telegram viewport */
.game-shell{height:var(--tg-height)!important;min-height:var(--tg-height)!important;max-height:var(--tg-height);overflow:hidden!important;padding:max(var(--app-top-offset),6px) max(10px,var(--safe-right)) max(8px,var(--safe-bottom)) max(10px,var(--safe-left));display:flex;flex-direction:column}
.game-head{flex:0 0 58px;height:58px}.game-canvas{flex:1 1 auto;min-height:0!important;height:auto;align-items:flex-start;overflow:hidden}.blast-wrap{height:100%;width:100%;justify-content:flex-start;align-items:center}.blast-board{flex:0 1 auto;width:min(calc(100vw - max(20px,var(--safe-left) + var(--safe-right))),calc(var(--tg-height) - var(--app-top-offset) - 220px),560px);max-width:560px}.tray{flex:1 1 auto;min-height:68px;max-height:108px;height:auto;margin-top:7px}.booster-bar{flex:0 0 auto;margin-top:6px}.booster{min-height:44px}
.tetris-layout{height:100%!important;min-height:0;width:100%;grid-template-columns:minmax(0,1fr) clamp(54px,14vw,82px);gap:6px;align-items:stretch}.tetris-board{height:100%!important;width:auto!important;max-width:calc(100% - 2px);aspect-ratio:1/2;justify-self:center;align-self:stretch}.tetris-side{height:100%;min-height:0;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:5px}.tetris-panel{min-height:0;padding:5px}.tetris-panel small{font-size:8px;letter-spacing:.08em}.tetris-panel canvas{width:100%!important;height:100%!important;object-fit:contain}.tetris-controls{flex:0 0 54px;margin-top:6px}.control-btn{min-height:50px}
.revive-modal{text-align:center}.revive-description{max-width:520px;margin:8px auto!important}.revive-countdown{display:inline-flex;align-items:center;gap:5px;margin-top:8px;padding:7px 12px;border-radius:12px;background:var(--elev);color:var(--mid);font-size:13px}.revive-countdown span{font-weight:950;color:#fff}.primary:disabled,.secondary:disabled{opacity:.48;pointer-events:none;box-shadow:none}

/* Result and sharing */
.modal-backdrop{padding-top:var(--app-top-offset)}.modal{max-height:calc(var(--tg-height) - var(--app-top-offset));overscroll-behavior:contain}.share-preview{max-width:520px;margin:14px auto 0}.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.result-stat{min-width:0}

/* Ladder as an actual path */
.ladder-life-card{margin-bottom:12px}.ladder-map{position:relative;display:grid;gap:0;padding:14px 8px 38px;overflow:hidden}.ladder-step{position:relative;min-height:120px;display:flex;align-items:flex-start;z-index:1}.ladder-step.left{justify-content:flex-start;padding-left:7%}.ladder-step.center{justify-content:center}.ladder-step.right{justify-content:flex-end;padding-right:7%}.level-node{position:relative;z-index:2;margin:0!important;flex:0 0 78px;width:78px;height:78px}.level-number{line-height:1}.level-node .stars{bottom:-14px;width:max-content}.mini-star{display:inline-flex;color:var(--low)}.mini-star.earned{color:var(--yellow);filter:drop-shadow(0 0 6px rgba(255,204,41,.3))}.ladder-bridge{position:absolute;z-index:0;top:66px;width:46%;height:8px;border-radius:20px;background:linear-gradient(90deg,#2d1c68,#44258f);box-shadow:0 4px 14px rgba(0,0,0,.28)}.ladder-step.left .ladder-bridge{left:18%;transform:rotate(17deg);transform-origin:left center}.ladder-step.right .ladder-bridge{right:18%;transform:rotate(-17deg);transform-origin:right center}.ladder-step.center:nth-child(4n+2) .ladder-bridge{left:50%;transform:rotate(17deg);transform-origin:left center}.ladder-step.center:nth-child(4n) .ladder-bridge{right:50%;transform:rotate(-17deg);transform-origin:right center}

/* Ratings and friends */
.rating-list,.friends-content{width:100%}.leader-row{grid-template-columns:34px 44px minmax(0,1fr) minmax(54px,auto);width:100%}.leader-name{min-width:0}.leader-name b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friends-hero p{max-width:520px;margin:0 auto}.friend-row{grid-template-columns:44px minmax(0,1fr) auto}

@media(max-width:600px){
 :root{--page-gutter:14px;--nav-h:68px}.topbar{min-height:58px!important;gap:7px}.brand{font-size:19px}.logo-mark{transform:scale(.88);transform-origin:left center}.wallets{gap:4px}.wallet{height:36px;padding:0 8px;font-size:12px}.wallet .ui-icon{width:16px;height:16px}.avatar{width:38px;height:38px;border-radius:13px}.hero{padding:7px 0 16px}.hero h1{font-size:clamp(27px,8.2vw,34px)}
 .grid2{gap:9px}.game-card{min-height:166px;padding:15px}.quest{grid-template-columns:44px minmax(0,1fr) auto;gap:13px;padding:13px}.quest-icon{width:44px;height:44px}.quest-reward{min-width:76px;padding-inline:9px}.streak-days{gap:5px}.streak-day{height:43px;font-size:18px}
 .rating-tabs{gap:3px;padding:5px}.rating-tabs .tab{font-size:10px;padding-inline:3px;line-height:1.15}.scope-tabs{width:100%}.leader-row{grid-template-columns:27px 40px minmax(0,1fr) minmax(45px,auto);gap:8px;padding:11px 9px}.leader-row .avatar{width:40px;height:40px}.leader-score{font-size:14px}
 .game-head{flex-basis:54px;height:54px;grid-template-columns:46px 1fr 46px}.icon-btn{width:40px;height:40px;border-radius:13px}.score-number{font-size:31px}.score-label{font-size:9px;line-height:1.2}.booster{font-size:12px}.tetris-controls{flex-basis:50px}.control-btn{min-height:46px;border-radius:13px}
 .modal{padding:20px 14px calc(18px + var(--safe-bottom))}.modal h2{font-size:24px}.result-score{font-size:72px}.tutorial-rule-list{gap:8px}.tutorial-rule-list>div{padding:9px}.ladder-step{min-height:110px}.level-node{width:72px;height:72px;flex-basis:72px}
}
@media(max-width:390px){
 :root{--page-gutter:12px}.brand{font-size:17px}.topbar .brand{max-width:132px}.wallet{padding:0 7px}.avatar{width:36px;height:36px}.hero h1{font-size:27px}.grid2{gap:8px}.game-card{min-height:154px;padding:13px}.card h3{font-size:17px}.feature-card{padding:13px}.quest{grid-template-columns:42px minmax(0,1fr) 70px;gap:11px}.quest-icon{width:42px;height:42px}.quest-reward{min-width:70px}.streak-day{height:40px;font-size:17px}
 .tutorial-coach{padding:12px 13px;margin-bottom:7px}.tutorial-coach h2{font-size:19px}.tutorial-coach p{font-size:12px}.tutorial-screen .blast-board{width:min(calc(100vw - 18px),calc(var(--tg-height) - var(--app-top-offset) - 215px))}.tutorial-screen .tray{min-height:70px}
 .tetris-layout{grid-template-columns:minmax(0,1fr) 52px;gap:4px}.tetris-panel{padding:3px}.control-btn{min-height:43px}.level-node{width:68px;height:68px;flex-basis:68px;font-size:20px}.ladder-step{min-height:104px}
}
@media(max-height:700px){
 .tutorial-coach{padding:9px 13px}.tutorial-coach h2{font-size:18px}.tutorial-coach p{font-size:11px}.tutorial-screen .blast-board{width:min(calc(100vw - 20px),calc(var(--tg-height) - var(--app-top-offset) - 185px))}.tutorial-screen .tray{min-height:58px;max-height:74px}
 .game-head{flex-basis:48px;height:48px}.score-number{font-size:27px}.blast-board{width:min(calc(100vw - 20px),calc(var(--tg-height) - var(--app-top-offset) - 180px))}.tray{min-height:58px;max-height:76px}.booster-bar{margin-top:4px}.booster{min-height:38px}.tetris-controls{flex-basis:42px;margin-top:4px}.control-btn{min-height:38px}
}

/* Release 7.1 finishing pass */
.brand{gap:4px}.brand>.brand-grid{color:#fff}.brand>.brand-crush{color:var(--yellow)}
.ladder-map{padding-inline:4px}.ladder-step{min-height:110px;isolation:isolate}.ladder-step.left{justify-content:flex-start;padding-left:6%}.ladder-step.center{justify-content:center;padding-inline:0}.ladder-step.right{justify-content:flex-end;padding-right:6%}
.ladder-connector{position:absolute;z-index:-1;inset:0 0 auto;width:100%;height:110px;overflow:visible;pointer-events:none}.ladder-connector path{fill:none;stroke:#3d2389;stroke-width:5.5;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 5px 7px rgba(0,0,0,.35))}.ladder-step.gate .level-node{box-shadow:0 0 0 4px rgba(255,204,41,.08),0 12px 25px rgba(0,0,0,.3)}.level-gate{position:absolute;top:-9px;padding:3px 7px;border-radius:8px;background:#ff3d8a;color:#fff;font-size:8px;letter-spacing:.09em;font-weight:950}.ladder-bridge{display:none!important}
@media(max-width:390px){.ladder-step,.ladder-connector{min-height:102px;height:102px}.ladder-connector{height:102px}.level-node{width:66px;height:66px;flex-basis:66px}.level-node .stars{bottom:-13px}}


/* Production 8.0: guided onboarding and compact economy UI */
.tutorial-screen .tutorial-coach{flex:0 0 auto}
.tutorial-screen .game-canvas{flex:1 1 auto;min-height:0}
.tutorial-screen .blast-wrap{display:flex;flex-direction:column;min-height:0}
.tutorial-screen .blast-board{flex:0 1 auto}
.tutorial-screen .tray{flex:0 0 clamp(68px,12dvh,104px)}
.tutorial-piece{opacity:1!important;filter:none!important}
@media(max-width:390px){.tutorial-coach{margin-top:2px}.tutorial-screen .blast-board{max-width:calc(100vw - 18px)}}
@media(max-height:640px){.tutorial-step{font-size:9px}.tutorial-coach h2{font-size:17px}.tutorial-coach p{font-size:10px;line-height:1.3}.tutorial-screen .tray{flex-basis:56px}}

/* Improved whole-slot piece pickup */
.tray-slot:not(.used){cursor:grab;-webkit-tap-highlight-color:transparent;transition:transform .12s ease,background .12s ease,box-shadow .12s ease;user-select:none}
.tray-slot:not(.used):active,.tray-slot.picked{transform:translateY(-4px) scale(1.025);background:rgba(36,22,89,.96);box-shadow:0 0 0 2px rgba(255,204,41,.35),0 16px 34px rgba(0,0,0,.38),0 0 28px rgba(168,85,255,.24)}
.tray-slot.picked .piece-preview,.piece-preview.picked-piece{transform:scale(1.18);filter:brightness(1.15) saturate(1.16) drop-shadow(0 0 16px color-mix(in srgb,var(--block) 65%,transparent));transition:transform .1s ease,filter .1s ease}
.piece-preview{pointer-events:none;transition:transform .12s ease,filter .12s ease}
.piece-preview.dragging{transform:scale(1.22);filter:brightness(1.15) saturate(1.18) drop-shadow(0 16px 18px rgba(0,0,0,.5)) drop-shadow(0 0 18px color-mix(in srgb,var(--block) 55%,transparent))}
@media (max-width:380px){.tray{gap:7px}.tray-slot{border-radius:17px}}


/* Grid Crush production 8.2 — locked Mini App and unified scrolling */
html,body,#root{overscroll-behavior-x:none!important;overscroll-behavior-y:none!important}
body{overscroll-behavior:none!important;-webkit-overflow-scrolling:touch}
.app{overflow:visible!important;overscroll-behavior:none!important}
.topbar{position:static!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;margin-top:0!important;margin-bottom:10px!important;flex-shrink:0}
.screen{overflow:visible!important}
.game-shell{height:var(--tg-height)!important;min-height:var(--tg-height)!important;max-height:none!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior:none!important;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.game-head{position:static!important;top:auto!important;inset:auto!important;transform:none!important;z-index:auto!important;flex-shrink:0}
.game-canvas{overflow:visible!important;flex:0 0 auto!important;min-height:calc(var(--tg-height) - var(--app-top-offset) - 150px)!important}
.game-screen .booster-bar,.game-screen .tetris-controls{flex-shrink:0}
@media(max-height:720px){.game-canvas{min-height:calc(var(--tg-height) - var(--app-top-offset) - 126px)!important}}

/* Grid Crush production 8.3 — monetization, wallet navigation and accessibility */
.wallet-button{border:0;color:#fff;appearance:none;-webkit-appearance:none;cursor:pointer;transition:transform .12s ease,filter .12s ease;white-space:nowrap}
.wallet-button:active{transform:translateY(2px) scale(.97);filter:brightness(.92)}
.header-avatar{position:relative;padding:0!important;line-height:0;background:var(--panel)!important}
.header-avatar img{position:absolute!important;inset:-2px!important;width:calc(100% + 4px)!important;height:calc(100% + 4px)!important;max-width:none!important;object-fit:cover!important;object-position:center!important;border-radius:inherit;display:block}

.offer-carousel{width:100%;margin:0 0 14px;overflow:hidden}
.offer-viewport{overflow:hidden;border-radius:22px;box-shadow:0 14px 34px rgba(0,0,0,.3)}
.offer-track{display:flex;width:100%;transition:transform .48s cubic-bezier(.22,.8,.25,1);will-change:transform}
.offer-slide{position:relative;flex:0 0 100%;min-width:100%;min-height:132px;padding:18px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:14px;overflow:hidden}
.offer-slide:before,.offer-slide:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.offer-slide:before{width:170px;height:170px;right:-54px;top:-74px;background:rgba(255,255,255,.12);filter:blur(2px)}
.offer-slide:after{width:95px;height:95px;right:70px;bottom:-62px;background:rgba(255,255,255,.08)}
.offer-starter{background:linear-gradient(135deg,#ff3d8a,#7d35d8 62%,#3d2389)}
.offer-plus{background:linear-gradient(135deg,#095a75,#176a9d 48%,#6f2bbd)}
.offer-boosters{background:linear-gradient(135deg,#33176c,#8b36dd 52%,#ff3d8a)}
.offer-coins{background:linear-gradient(135deg,#8c4f00,#e68c12 48%,#ffcc29);color:#291700}
.offer-gems{background:linear-gradient(135deg,#075675,#128da8 48%,#22e0ff);color:#031c26}
.offer-special{background:linear-gradient(135deg,#1a5a46,#1aa06b 55%,#4dff9e);color:#062118}
.offer-copy{position:relative;z-index:2;min-width:0}.offer-copy h3{margin:4px 0 5px;font-size:23px;line-height:1.04;letter-spacing:-.45px}.offer-copy p{margin:0;color:inherit;opacity:.82;font-size:13px;line-height:1.35;white-space:normal}.offer-kicker{font-size:9px;letter-spacing:.13em;font-weight:950;opacity:.76}
.offer-buy{position:relative;z-index:2;min-width:90px;height:48px;padding:0 13px;border-radius:15px;background:rgba(11,6,32,.86);color:#fff;display:flex;align-items:center;justify-content:center;gap:7px;font-weight:950;box-shadow:inset 0 -3px 0 rgba(0,0,0,.28),0 9px 20px rgba(0,0,0,.2);cursor:pointer}.offer-buy:active{transform:translateY(3px)}.offer-buy .telegram-star-icon{width:17px;height:18px;fill:#fff}
.offer-dots{height:18px;display:flex;align-items:end;justify-content:center;gap:6px}.offer-dot{width:6px;height:6px;padding:0;border-radius:99px;background:#4b397d;transition:width .2s ease,background .2s ease}.offer-dot.active{width:20px;background:var(--yellow)}
.loading-offers{height:150px}.offer-skeleton{height:132px;border-radius:22px;background:linear-gradient(90deg,var(--panel),var(--elev),var(--panel));background-size:220% 100%;animation:offerLoading 1.25s linear infinite}@keyframes offerLoading{to{background-position:-220% 0}}

.resource-offer{text-align:center}.resource-offer h2{margin:10px 0 6px}.resource-offer>p{max-width:470px;margin:0 auto 15px;color:var(--mid)}.resource-offer-icon{width:64px;height:64px;margin:0 auto;border-radius:20px;background:linear-gradient(145deg,#3e2388,#241659);display:grid;place-items:center;color:var(--yellow);box-shadow:0 12px 28px rgba(0,0,0,.3)}.resource-offer-icon .ui-icon{width:31px;height:31px}.resource-offer-list{display:grid;gap:9px;margin:15px 0}.resource-product{width:100%;min-height:68px;padding:11px 13px;border-radius:17px;background:var(--elev);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left;cursor:pointer}.resource-product>span:first-child{display:grid;gap:3px;min-width:0}.resource-product b{font-size:15px}.resource-product small{color:var(--mid);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-product .price-star{min-width:78px;justify-content:center}.resource-offer>.secondary{width:100%}
.shop-highlight{animation:shopHighlight 1.4s ease}@keyframes shopHighlight{0%,100%{box-shadow:0 12px 30px rgba(0,0,0,.28)}35%{box-shadow:0 0 0 3px rgba(255,204,41,.58),0 18px 38px rgba(255,204,41,.2);transform:scale(1.012)}}

.colorblind-mode .blast-cell.filled,.colorblind-mode .mini-block{position:relative}
.colorblind-mode .blast-cell.filled:after,.colorblind-mode .mini-block:after{content:attr(data-symbol);position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.94);font-weight:950;text-shadow:0 1px 3px rgba(0,0,0,.55);pointer-events:none}
.colorblind-mode .blast-cell.filled:after{font-size:clamp(9px,3.7vw,20px)}
.colorblind-mode .mini-block:after{font-size:10px;line-height:1}

@media(max-width:430px){
 .offer-slide{min-height:124px;padding:15px;grid-template-columns:minmax(0,1fr) 84px;gap:9px}.offer-copy h3{font-size:20px}.offer-copy p{font-size:11px;line-height:1.3}.offer-buy{min-width:84px;height:44px;padding-inline:9px}.offer-dots{height:17px}
 .resource-product{min-height:64px;padding:10px 11px}.resource-product .price-star{min-width:72px}
}
@media(max-width:350px){.offer-slide{grid-template-columns:minmax(0,1fr) 74px}.offer-copy h3{font-size:18px}.offer-buy{min-width:74px}.wallet{padding-inline:6px!important;gap:4px!important}.wallet span{font-size:11px}}

/* Grid Crush production 9.1 — transactional actions, Tetris monetization and resilient sharing */
.action-busy button{pointer-events:none}.action-busy .modal button,.action-busy [data-modal-close]{pointer-events:auto}
.tetris-powerups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(520px,100%);margin:6px auto 8px;padding:0 2px}
.tetris-power{min-width:0;min-height:58px;padding:8px 6px;border-radius:16px;background:linear-gradient(145deg,#241659,#1b1042);color:#fff;display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:6px;text-align:left;box-shadow:0 9px 22px rgba(0,0,0,.25);transition:transform .1s ease,filter .1s ease}
.tetris-power:active{transform:translateY(3px) scale(.98);filter:brightness(.94)}
.tetris-power>.ui-icon{grid-row:1/3;width:23px;height:23px;color:var(--cyan)}
.tetris-power>span{font-size:10px;line-height:1.1;font-weight:900;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tetris-power>b{font-size:10px;color:var(--yellow);display:flex;align-items:center;gap:3px}.tetris-power b .inline-icon{width:12px;height:12px}
.booster[data-busy="1"],.tetris-power[data-busy="1"]{opacity:.58;pointer-events:none}
.resource-product:disabled,.secondary:disabled,.primary:disabled{opacity:.45;pointer-events:none;box-shadow:none}
@media(max-width:360px){.tetris-powerups{gap:5px}.tetris-power{padding:7px 4px;column-gap:4px}.tetris-power>.ui-icon{width:20px;height:20px}.tetris-power>span,.tetris-power>b{font-size:9px}}
@media(max-height:680px){.tetris-powerups{margin-block:3px}.tetris-power{min-height:50px}.game-screen .tetris-controls{margin-top:2px}}
.tetris-screen{overflow:hidden!important}
.tetris-screen .game-canvas{flex:1 1 auto!important;min-height:0!important;overflow:hidden!important;align-items:stretch!important}
.tetris-screen .tetris-layout{height:100%!important;min-height:0!important;margin:auto!important}
.tetris-screen .tetris-powerups,.tetris-screen .tetris-controls{flex:0 0 auto}
@media(max-height:680px){.tetris-screen{padding-bottom:max(5px,var(--safe-bottom))!important}.tetris-screen .game-head{height:44px!important;flex-basis:44px!important}.tetris-screen .score-number{font-size:26px}.tetris-screen .tetris-powerups{margin:2px auto 3px}.tetris-screen .tetris-power{min-height:44px}.tetris-screen .tetris-controls{margin-top:2px}.tetris-screen .control-btn{min-height:38px}}

/* Grid Crush production 9.2 — compact shop, clickable Plus and coin Arena tickets */
.shop-page-stack{display:grid;gap:10px;width:100%}
.shop-plus-banner{margin:0!important;min-height:132px;background:linear-gradient(135deg,#0c536e,#236c9b 50%,#6d2fb2);display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;user-select:none}
.shop-plus-banner:active{transform:translateY(3px) scale(.987)}
.shop-plus-copy{min-width:0}.shop-plus-copy h2{margin:5px 0 5px}.shop-plus-copy p{white-space:normal}
.shop-plus-action{flex:0 0 auto;min-height:42px;padding:0 12px;border-radius:14px;background:rgba(11,6,32,.55);display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:900;color:#fff}
.shop-grid{margin-top:0!important}
.shop-ticket-coins{background:linear-gradient(145deg,#241659,#342073)}
.coin-buy{background:var(--elev);color:#fff;box-shadow:inset 0 -3px 0 rgba(0,0,0,.22)}
.coin-price{display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--yellow);font-weight:950}.coin-price .inline-icon{width:17px;height:17px}
.ticket-confirm .primary{width:100%;display:flex;align-items:center;justify-content:center;gap:6px}
@media(max-width:430px){.shop-plus-banner{min-height:118px;padding:15px;gap:10px}.shop-plus-copy h2{font-size:20px}.shop-plus-copy p{font-size:12px}.shop-plus-action{padding-inline:9px}}

/* Production 9.3: instant round locking and faster perceived navigation. */
.round-over .tray-slot,.round-over .booster,.round-over .tetris-controls,.round-over .tetris-powerups{pointer-events:none;filter:saturate(.65);opacity:.72}
.finalizing-run{min-height:210px;display:grid;place-items:center;text-align:center;align-content:center;gap:12px}.finalizing-run .spinner{width:42px;height:42px}.finalizing-run h2{margin:4px 0 0}.finalizing-run p{margin:0;color:var(--mid)}
.finish-retry{text-align:center}.screen{animation:screenIn .12s ease-out}@keyframes screenIn{from{opacity:.65;transform:translateY(3px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.screen{animation:none}}


/* Grid Crush production 10.0 — crisp responsive Tetris and monochrome Nostalgia mode */
.tetris-picker{text-align:center}.tetris-picker>p{max-width:520px;margin:0 auto 16px}.tetris-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.tetris-choice{min-width:0;min-height:210px;border-radius:22px;padding:16px;background:var(--elev);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;text-align:center;box-shadow:0 12px 28px rgba(0,0,0,.28);transition:transform .12s ease,filter .12s ease}.tetris-choice:active{transform:translateY(3px) scale(.985);filter:brightness(.95)}.tetris-choice.classic{background:linear-gradient(145deg,#deded3,#a9ada1);color:#171b16}.tetris-choice b{font-size:20px}.tetris-choice small{font-size:12px;line-height:1.4;color:inherit;opacity:.76}.tetris-choice-preview{position:relative;width:104px;height:82px;border-radius:16px;display:block;overflow:hidden;margin-bottom:3px}.modern-preview{background:linear-gradient(180deg,#1d1145,#0b0620)}.classic-preview{background:#d8d9cf;box-shadow:inset 0 0 0 5px #343b32}.tetris-choice-preview i{position:absolute;width:25px;height:25px;border-radius:6px}.modern-preview i:nth-child(1){left:13px;top:42px;background:#22e0ff}.modern-preview i:nth-child(2){left:39px;top:42px;background:#22e0ff}.modern-preview i:nth-child(3){left:65px;top:42px;background:#22e0ff}.modern-preview i:nth-child(4){left:65px;top:16px;background:#a855ff}.modern-preview i:nth-child(5){left:39px;top:16px;background:#a855ff}.modern-preview i:nth-child(6){left:39px;top:42px;background:#a855ff}.classic-preview i{width:21px;height:21px;border-radius:1px;background:#20261d;box-shadow:inset 0 0 0 2px #050705}.classic-preview i:nth-child(1){left:18px;top:44px}.classic-preview i:nth-child(2){left:40px;top:44px}.classic-preview i:nth-child(3){left:62px;top:44px}.classic-preview i:nth-child(4){left:62px;top:22px}.classic-preview i:nth-child(5){left:40px;top:22px}.classic-preview i:nth-child(6){left:40px;top:44px}.tetris-picker-close{width:100%;margin-top:12px}
.tetris-screen{height:var(--tg-height)!important;min-height:var(--tg-height)!important;max-height:var(--tg-height)!important;overflow:hidden!important;touch-action:none!important}.tetris-screen .game-head{flex:0 0 52px!important;height:52px!important}.tetris-screen .game-canvas{flex:1 1 0!important;min-height:0!important;height:auto!important;overflow:hidden!important;align-items:center!important;justify-content:center!important;padding:0!important}.tetris-screen .tetris-layout{width:auto;height:auto;min-height:0!important;margin:auto!important;display:grid;align-items:stretch;justify-content:center}.tetris-screen .tetris-board{display:block;max-width:none!important;max-height:none!important;align-self:center;justify-self:center;touch-action:none;image-rendering:auto}.tetris-screen .tetris-side{min-height:0;overflow:hidden;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));gap:5px}.tetris-screen .tetris-panel{min-height:0;overflow:hidden;padding:5px;border-radius:13px}.tetris-screen .tetris-panel canvas{display:block;max-width:100%;max-height:100%;margin:auto}.tetris-mode-badge{flex:0 0 auto;align-self:center;margin:-2px 0 3px;padding:3px 9px;border-radius:99px;background:rgba(36,22,89,.76);color:var(--cyan);font-size:8px;letter-spacing:.14em;font-weight:950}.tetris-screen .tetris-powerups{flex:0 0 auto;margin:3px auto 5px}.tetris-screen .tetris-controls{flex:0 0 48px;margin:0 auto;min-height:48px}.tetris-screen .control-btn{min-height:46px}
.tetris-classic{background:#272b26!important;color:#151914}.tetris-classic .game-head{color:#fff}.tetris-classic .score-label{color:#c9c9c1}.tetris-classic .tetris-mode-badge{background:#d6d7cf;color:#20261d}.retro-console{max-width:100%;max-height:100%;padding:23px 11px 11px;border-radius:22px;background:linear-gradient(145deg,#c8c9c1,#92978d);box-shadow:inset 0 -7px 0 rgba(0,0,0,.18),0 16px 34px rgba(0,0,0,.36);position:relative}.retro-console-label{position:absolute;top:6px;left:0;right:0;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:950;letter-spacing:.19em;color:#333a31}.tetris-classic .tetris-layout{background:#767d70;padding:6px;border-radius:10px;box-shadow:inset 0 0 0 2px #4d534a}.tetris-classic .tetris-board{background:#deded3}.tetris-classic .tetris-side{grid-template-rows:auto auto minmax(0,1fr);gap:7px}.retro-stat{background:#d8d9cf;border-radius:6px;padding:6px;text-align:center;box-shadow:inset 0 0 0 2px #4d534a}.retro-stat small,.retro-next small{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7px;letter-spacing:.08em;color:#30372e}.retro-stat b{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:18px;color:#20261d}.retro-next{background:#d8d9cf!important;box-shadow:inset 0 0 0 2px #4d534a}.retro-controls{grid-template-columns:repeat(4,1fr)!important}.tetris-classic .control-btn{background:linear-gradient(145deg,#d6d7cf,#8f958a);color:#20261d;box-shadow:inset 0 -4px 0 rgba(0,0,0,.22)}.tetris-classic .control-btn:active{background:#a5aa9f}.tetris-classic .icon-btn{background:#343933}.tetris-classic .score-number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em}
@media(max-width:430px){.tetris-picker-grid{gap:8px}.tetris-choice{min-height:190px;padding:13px}.tetris-choice-preview{width:92px;height:74px;transform:scale(.9)}.tetris-choice b{font-size:18px}.tetris-choice small{font-size:10px}.retro-console{padding:21px 8px 8px}.tetris-screen .tetris-controls{flex-basis:44px;min-height:44px}.tetris-screen .control-btn{min-height:42px}}
@media(max-width:350px){.tetris-picker-grid{grid-template-columns:1fr}.tetris-choice{min-height:150px;display:grid;grid-template-columns:92px 1fr;text-align:left;align-items:center}.tetris-choice-preview{grid-row:1/3;margin:0}.tetris-choice small{font-size:10px}.tetris-screen .game-head{flex-basis:46px!important;height:46px!important}.tetris-mode-badge{margin-bottom:1px}.tetris-screen .tetris-controls{flex-basis:40px;min-height:40px}.tetris-screen .control-btn{min-height:38px}}
@media(max-height:700px){.tetris-screen .game-head{flex-basis:44px!important;height:44px!important}.tetris-screen .score-number{font-size:26px}.tetris-screen .tetris-mode-badge{margin:0 0 1px}.tetris-screen .tetris-powerups{margin:1px auto 2px}.tetris-screen .tetris-power{min-height:42px}.tetris-screen .tetris-controls{flex-basis:40px;min-height:40px}.tetris-screen .control-btn{min-height:38px}.retro-console{padding-top:19px}.retro-console-label{top:4px}}

/* Grid Crush production 10.1 — precise touch Tetris, optional controls, ultra-adaptive layout */
.tetris-mode-row{flex:0 0 34px;min-height:34px;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;position:relative}
.tetris-mode-row .tetris-mode-badge{margin:0}
.tetris-controls-toggle{width:34px;height:30px;border-radius:11px;background:rgba(36,22,89,.72);color:var(--mid);display:grid;place-items:center;box-shadow:inset 0 -2px 0 rgba(0,0,0,.22);transition:transform .1s ease,background .12s ease,color .12s ease}
.tetris-controls-toggle .ui-icon{width:18px;height:18px}
.tetris-controls-toggle.active{background:var(--elev);color:var(--yellow)}
.tetris-controls-toggle:active{transform:translateY(2px) scale(.96)}
.tetris-screen.controls-hidden .tetris-controls{display:none!important}
.tetris-screen.controls-hidden .game-canvas{flex-grow:1!important}
.tetris-board.gesture-active{filter:brightness(1.08);box-shadow:0 0 22px rgba(34,224,255,.16)}
.tetris-board{cursor:grab;contain:strict}
.tetris-board.gesture-active{cursor:grabbing}
.control-btn.pressed{transform:translateY(3px) scale(.97);filter:brightness(.92)}
.tetris-screen .game-canvas,.tetris-screen .tetris-layout,.tetris-screen .tetris-side{contain:layout paint}
.tetris-screen.tetris-ultra-compact .tetris-panel{padding:3px;border-radius:10px}
.tetris-screen.tetris-ultra-compact .tetris-panel small{font-size:6px}
.tetris-screen.tetris-ultra-compact .tetris-powerups{gap:4px}
.tetris-screen.tetris-ultra-compact .tetris-power{min-height:38px;padding:4px 3px;border-radius:12px;grid-template-columns:18px minmax(0,1fr)}
.tetris-screen.tetris-ultra-compact .tetris-power>.ui-icon{width:18px;height:18px}
.tetris-screen.tetris-ultra-compact .tetris-power>span,.tetris-screen.tetris-ultra-compact .tetris-power>b{font-size:8px}
.tetris-screen.tetris-ultra-compact .retro-console{padding:17px 5px 5px;border-radius:14px}
.tetris-screen.tetris-ultra-compact .retro-console-label{font-size:7px;top:3px}
@media(max-height:620px){.tetris-mode-row{flex-basis:28px;min-height:28px}.tetris-controls-toggle{width:31px;height:27px}.tetris-controls-toggle .ui-icon{width:16px;height:16px}.tetris-screen .tetris-powerups{margin:0 auto 2px}.tetris-screen .tetris-power{min-height:38px}.tetris-screen .game-head{flex-basis:40px!important;height:40px!important}.tetris-screen .score-number{font-size:24px}.tetris-screen .score-label{font-size:8px}}
@media(max-height:540px){.tetris-screen .tetris-powerups{display:none}.tetris-mode-row{flex-basis:25px;min-height:25px}.tetris-screen .game-head{flex-basis:36px!important;height:36px!important}.tetris-screen .icon-btn{width:34px;height:34px}.tetris-screen .score-number{font-size:21px}}
@media(max-width:320px){.tetris-screen{padding-left:5px!important;padding-right:5px!important}.tetris-mode-row{gap:5px}.tetris-controls-toggle{width:30px}.tetris-screen .tetris-side{gap:3px}.tetris-screen .tetris-panel{padding:3px}.tetris-screen .tetris-controls{gap:4px}.tetris-screen .control-btn{border-radius:11px}}
@media(orientation:landscape) and (max-height:520px){.tetris-screen .tetris-powerups{display:none}.tetris-screen .game-head{flex-basis:34px!important;height:34px!important}.tetris-mode-row{position:absolute;right:8px;top:calc(var(--app-top-offset) + 38px);width:auto;z-index:4}.tetris-mode-badge{display:none}.tetris-controls-toggle{background:rgba(21,12,51,.9)}}


/* Grid Crush production 10.2 — rectangular Tetris field and explicit controls */
.tetris-screen .game-canvas{padding:0 10px!important}
.tetris-screen .tetris-layout{background:transparent!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important}
.tetris-screen .tetris-board{border-radius:0!important;overflow:hidden!important;box-shadow:0 14px 34px rgba(0,0,0,.32)!important;outline:0!important}
.tetris-screen .tetris-side{border-radius:0!important}
.tetris-screen .tetris-panel{border-radius:0!important;background:rgba(21,12,51,.82)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important}
.tetris-screen .tetris-panel small{width:100%;text-align:center;margin:0 0 3px}
.tetris-screen .tetris-mode-row{justify-content:space-between!important;padding:0 10px!important;gap:10px!important}
.tetris-controls-toggle{width:auto!important;min-width:136px!important;height:34px!important;padding:0 12px!important;border-radius:10px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;font-size:11px!important;font-weight:900!important;line-height:1!important;white-space:nowrap!important}
.tetris-controls-toggle .ui-icon{width:17px!important;height:17px!important;flex:0 0 17px!important}
.tetris-controls-toggle span{display:block!important}
.tetris-screen.controls-hidden .tetris-controls-toggle{color:var(--cyan)!important}
.tetris-screen .tetris-controls{padding:0 10px!important}
.tetris-screen .tetris-powerups{padding:0 10px!important}
.tetris-classic .tetris-layout{border-radius:0!important}
.tetris-classic .tetris-board{border-radius:0!important}
@media(max-width:360px){.tetris-screen .game-canvas{padding:0 6px!important}.tetris-screen .tetris-mode-row{padding:0 6px!important}.tetris-controls-toggle{min-width:122px!important;padding:0 9px!important;font-size:10px!important}.tetris-screen .tetris-controls,.tetris-screen .tetris-powerups{padding-left:6px!important;padding-right:6px!important}}
@media(max-height:620px){.tetris-controls-toggle{height:28px!important;min-width:118px!important;font-size:9px!important}.tetris-controls-toggle .ui-icon{width:14px!important;height:14px!important}}


/* Grid Crush 10.4 — ambient tetromino background and booster effects */
.ambient-tetromino-bg{position:fixed;inset:0;z-index:0;width:100%;height:100%;pointer-events:none;opacity:1;transition:opacity .24s ease;will-change:transform;contain:strict}
body:not(.ambient-active) .ambient-tetromino-bg{opacity:0}
body.ambient-active #app{position:relative;z-index:1}
body.ambient-active .app{background:radial-gradient(circle at 15% 8%,rgba(168,85,255,.15),transparent 32%),radial-gradient(circle at 92% 33%,rgba(34,224,255,.09),transparent 30%),linear-gradient(180deg,rgba(11,6,32,.88),rgba(11,6,32,.78) 55%,rgba(11,6,32,.9))}
body.ambient-active .bottom-nav{background:rgba(21,12,51,.92)}
body.ambient-active .card,body.ambient-active .tabs,body.ambient-active .streak-card{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.game-fx-layer{position:fixed;inset:0;z-index:380;pointer-events:none;overflow:hidden}.game-fx{position:absolute;width:1px;height:1px;transform:translate(-50%,-50%);pointer-events:none}.game-fx .ui-icon{width:100%;height:100%;fill:currentColor}.fx-particle{position:absolute;border-radius:3px;background:var(--fx-color);box-shadow:0 0 12px var(--fx-color);transform:translate(-50%,-50%);animation:fxParticle .62s cubic-bezier(.12,.7,.22,1) var(--fx-delay) both}
.fx-impact-ring,.fx-swap-ring,.fx-slow-ring{position:absolute;left:50%;top:50%;width:max(52px,var(--fx-w));height:max(52px,var(--fx-h));border:4px solid rgba(255,255,255,.92);border-radius:50%;transform:translate(-50%,-50%) scale(.16);opacity:0;animation:fxRing .52s ease-out both}.fx-impact-ring.second,.fx-slow-ring.second{animation-delay:.1s}.fx-hammer-icon{position:absolute;left:50%;top:50%;width:64px;height:64px;color:#22e0ff;filter:drop-shadow(0 0 14px rgba(34,224,255,.8));transform-origin:80% 80%;animation:fxHammer .46s cubic-bezier(.2,.85,.22,1) both}.fx-hammer-icon .ui-icon{width:64px;height:64px}.fx-hammer .fx-impact-ring{border-color:#a8f5ff}.fx-bomb-flash{position:absolute;left:50%;top:50%;width:70px;height:70px;border-radius:50%;background:radial-gradient(circle,#fff 0,#ffcc29 24%,#ff3d8a 52%,rgba(255,61,138,0) 74%);transform:translate(-50%,-50%) scale(.2);animation:fxBombFlash .55s ease-out both;filter:blur(.5px)}.fx-bomb .fx-impact-ring{width:max(90px,calc(var(--fx-w) * 3.2));height:max(90px,calc(var(--fx-h) * 3.2));border-color:#ffcc29}.fx-bomb .fx-impact-ring.second{border-color:#ff3d8a}.fx-swap-icon{position:absolute;left:50%;top:50%;width:62px;height:62px;color:#b978ff;filter:drop-shadow(0 0 18px rgba(168,85,255,.8));animation:fxSwap .56s cubic-bezier(.2,.8,.25,1) both}.fx-swap-icon .ui-icon{width:62px;height:62px}.fx-swap-ring{width:max(90px,var(--fx-w));height:max(90px,var(--fx-h));border-color:#a855ff;animation:fxSwapRing .56s ease-out both}.fx-slow-ring{width:max(120px,var(--fx-w));height:max(120px,var(--fx-h));border-color:#22e0ff;border-style:dashed;animation:fxSlow .7s ease-out both}.fx-row-sweep{position:absolute;left:50%;top:50%;width:max(180px,var(--fx-w));height:10px;border-radius:99px;background:linear-gradient(90deg,transparent,#22e0ff,#fff,#ff3d8a,transparent);box-shadow:0 0 24px rgba(34,224,255,.9);transform:translate(-50%,-50%) scaleX(.05);animation:fxSweep .55s ease-out both}.fx-row-sweep.second{top:calc(50% + 20px);animation-delay:.08s}.fx-shake{animation:fxScreenShake .26s linear}.fx-shake-strong{animation:fxScreenShakeStrong .38s linear}
@keyframes fxParticle{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(calc(-50% + var(--fx-x)),calc(-50% + var(--fx-y))) rotate(var(--fx-r)) scale(.25)}}
@keyframes fxRing{0%{opacity:.95;transform:translate(-50%,-50%) scale(.15)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.45)}}
@keyframes fxHammer{0%{opacity:0;transform:translate(-92px,-92px) rotate(-48deg) scale(.7)}45%{opacity:1;transform:translate(-44px,-48px) rotate(12deg) scale(1.08)}65%{transform:translate(-36px,-35px) rotate(34deg) scale(.96)}100%{opacity:0;transform:translate(-34px,-34px) rotate(42deg) scale(.8)}}
@keyframes fxBombFlash{0%{opacity:0;transform:translate(-50%,-50%) scale(.08)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.35)}100%{opacity:0;transform:translate(-50%,-50%) scale(2.2)}}
@keyframes fxSwap{0%{opacity:0;transform:translate(-50%,-50%) rotate(-140deg) scale(.5)}35%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(180deg) scale(1.18)}}
@keyframes fxSwapRing{0%{opacity:.85;transform:translate(-50%,-50%) scale(.5) rotate(0)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.25) rotate(130deg)}}
@keyframes fxSlow{0%{opacity:.85;transform:translate(-50%,-50%) scale(.45) rotate(0)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.15) rotate(150deg)}}
@keyframes fxSweep{0%{opacity:0;transform:translate(-50%,-50%) scaleX(.05)}35%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scaleX(1.25)}}
@keyframes fxScreenShake{0%,100%{transform:translate3d(0,0,0)}25%{transform:translate3d(-3px,2px,0)}50%{transform:translate3d(3px,-2px,0)}75%{transform:translate3d(-2px,-1px,0)}}
@keyframes fxScreenShakeStrong{0%,100%{transform:translate3d(0,0,0)}16%{transform:translate3d(-6px,3px,0)}33%{transform:translate3d(6px,-4px,0)}50%{transform:translate3d(-4px,-3px,0)}66%{transform:translate3d(5px,2px,0)}83%{transform:translate3d(-2px,1px,0)}}
@media(prefers-reduced-motion:reduce){.fx-particle{display:none}.game-fx *{animation-duration:.18s!important}.ambient-tetromino-bg{opacity:.65}.fx-shake,.fx-shake-strong{animation:none}}

/* Grid Crush 10.5 patch — interaction lock and requested visual corrections */
html,body,#root,#app{touch-action:pan-y;-webkit-text-size-adjust:100%;text-size-adjust:100%}img,svg,canvas{pointer-events:auto;-webkit-user-drag:none;user-drag:none}.no-copy,.no-copy *{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}

.tetris-picker>p{display:none!important}
.tetris-choice-preview{width:106px!important;height:82px!important;border-radius:16px!important}
.tetris-choice-preview i{width:25px!important;height:25px!important}
.modern-preview i{background:linear-gradient(180deg,#d49aff,#a855ff 45%,#6b21c7)!important;box-shadow:inset 0 3px rgba(255,255,255,.26),inset 0 -4px #6b21c7,0 0 14px rgba(168,85,255,.35)!important}
.modern-preview i:nth-child(1){left:39px!important;top:15px!important}.modern-preview i:nth-child(2){left:65px!important;top:15px!important}.modern-preview i:nth-child(3){left:13px!important;top:41px!important}.modern-preview i:nth-child(4){left:39px!important;top:41px!important}.modern-preview i:nth-child(n+5){display:none!important}
.classic-preview i{background:#20261d!important;box-shadow:inset 0 0 0 2px #050705!important;border-radius:1px!important}
.classic-preview i:nth-child(1){left:40px!important;top:20px!important}.classic-preview i:nth-child(2){left:18px!important;top:43px!important}.classic-preview i:nth-child(3){left:40px!important;top:43px!important}.classic-preview i:nth-child(4){left:62px!important;top:43px!important}.classic-preview i:nth-child(n+5){display:none!important}
.stars.stars-empty{display:none!important}

/* More visible falling tetromino layer on every non-game screen. */
.ambient-tetromino-bg{opacity:1!important;filter:saturate(1.08)}
body.ambient-active .app{background:radial-gradient(circle at 15% 8%,rgba(168,85,255,.11),transparent 32%),radial-gradient(circle at 92% 33%,rgba(34,224,255,.07),transparent 30%),linear-gradient(180deg,rgba(11,6,32,.80),rgba(11,6,32,.70) 55%,rgba(11,6,32,.84))!important}

/* Nostalgia Tetris: clean LCD frame, no clipped bottom row, consistent side panel. */
.tetris-classic .game-canvas{padding:0 8px 3px!important;overflow:hidden!important}
.tetris-classic .retro-console{box-sizing:border-box!important;overflow:hidden!important;border-radius:16px!important;background:linear-gradient(145deg,#d1d2ca,#969b91)!important;box-shadow:inset 0 -7px 0 rgba(0,0,0,.16),0 14px 30px rgba(0,0,0,.32)!important}
.tetris-classic .tetris-layout{padding:0!important;background:#71786c!important;box-shadow:0 0 0 4px #565c53!important;overflow:hidden!important}
.tetris-classic .tetris-board{background:#deded3!important;box-shadow:none!important;image-rendering:pixelated!important}
.tetris-classic .tetris-side{background:#71786c!important;gap:5px!important;overflow:hidden!important}
.tetris-classic .tetris-panel,.tetris-classic .retro-stat,.tetris-classic .retro-next{background:#d8d9cf!important;color:#20261d!important;box-shadow:inset 0 0 0 2px #4d534a!important;border-radius:4px!important;overflow:hidden!important}
.tetris-classic .retro-next{min-height:0!important}
.tetris-classic .retro-next canvas{display:block!important;max-height:calc(100% - 14px)!important}
.tetris-classic .retro-console-label{color:#30372e!important;z-index:2}
@media(max-height:700px){.tetris-classic .game-canvas{padding-bottom:5px!important}.tetris-classic .retro-console{border-radius:12px!important}}
@media(max-width:360px){.mode-figure{right:7px;top:14px;transform:scale(.82) rotate(7deg);transform-origin:top right}}

/* Grid Crush 10.6 — pixel-perfect Blast drag and denser optimized ambient layer */
.blast-board{contain:layout paint style;isolation:isolate}
.blast-cell{contain:strict}
.tray{contain:layout paint}
.tray-slot{contain:layout paint;touch-action:none!important}
.piece-preview.dragging{
  left:0!important;
  top:0!important;
  margin:0!important;
  transform:translate3d(-9999px,-9999px,0);
  transform-origin:0 0!important;
  transition:none!important;
  will-change:transform;
  contain:layout paint;
  opacity:.98;
}
.piece-preview.dragging.snapped{filter:brightness(1.18) saturate(1.2) drop-shadow(0 8px 12px rgba(0,0,0,.42)) drop-shadow(0 0 14px color-mix(in srgb,var(--block) 48%,transparent))}
.blast-cell.valid{transform:scale(.94);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--drag-color) 88%,white 12%),0 0 15px color-mix(in srgb,var(--drag-color) 45%,transparent)}
.blast-cell.invalid{transform:scale(.94)}
.ambient-tetromino-bg{opacity:1!important;image-rendering:auto;contain:strict}
body.ambient-active .app{background:linear-gradient(180deg,rgba(11,6,32,.72),rgba(11,6,32,.63) 55%,rgba(11,6,32,.78))!important}
@media(max-width:430px){body.ambient-active .card,body.ambient-active .tabs,body.ambient-active .streak-card{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}
@media(prefers-reduced-motion:reduce){.piece-preview.dragging{transition:none!important}.blast-cell{transition:none!important}}

/* 10.7 — статичный фон без Canvas/RAF и точный drag в Бласте */
.ambient-tetromino-bg{display:none!important}
body::before{content:"";display:none}
body.ambient-active::before{
  content:"";
  display:block;
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background-image:url('/assets/tetromino-static-bg.svg?v=10.7.0');
  background-repeat:repeat-y;
  background-position:center top;
  background-size:min(100vw,760px) auto;
  opacity:.92;
  contain:strict;
}
body.ambient-active #app{position:relative;z-index:1}
body.ambient-active .app{
  background:linear-gradient(180deg,rgba(11,6,32,.80),rgba(11,6,32,.73) 55%,rgba(11,6,32,.84))!important;
}
body.ambient-active .card,
body.ambient-active .tabs,
body.ambient-active .streak-card{
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.piece-preview.dragging{
  position:fixed!important;
  left:0!important;
  top:0!important;
  margin:0!important;
  transform-origin:0 0!important;
  transition:none!important;
  will-change:transform;
  contain:layout paint style;
}
.piece-preview.dragging .mini-block{
  position:absolute!important;
  margin:0!important;
  transform:none!important;
}
.mini-block{position:absolute!important}
.blast-cell.filled{animation:none!important;box-shadow:inset 0 3px rgba(255,255,255,.24),inset 0 -4px var(--block-low)}
.blast-cell.valid,.blast-cell.invalid{transform:none!important}
.game-card,.card,.blast-board,.tray-slot{will-change:auto!important}
@media(max-width:430px){
  body.ambient-active::before{background-size:100vw auto;opacity:.88}
}

/* Grid Crush 11.0 — Hex Puzzle and Minesweeper */
.mode-grid{align-items:stretch}.mode-grid .game-card{min-height:238px}.game-card.hex-mode{background:radial-gradient(circle at 86% 12%,rgba(34,224,255,.22),transparent 34%),linear-gradient(160deg,#191044,#110a2e)}.game-card.mines-mode{background:radial-gradient(circle at 86% 12%,rgba(255,217,61,.2),transparent 34%),linear-gradient(160deg,#20133d,#110a2e)}
.hex-cluster{position:absolute;right:14px;top:10px;width:108px;height:94px;opacity:.82}.hex-cluster i{position:absolute;width:42px;height:36px;background:linear-gradient(180deg,#a8f5ff,#22e0ff 55%,#0e93b8);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);filter:drop-shadow(0 6px 10px rgba(34,224,255,.25))}.hex-cluster i:nth-child(1){left:0;top:29px}.hex-cluster i:nth-child(2){left:31px;top:11px}.hex-cluster i:nth-child(3){left:31px;top:47px}.hex-cluster i:nth-child(4){left:62px;top:29px}
.mine-mark{position:absolute;right:20px;top:16px;width:92px;height:92px;border-radius:26px;display:grid;place-items:center;background:linear-gradient(145deg,#ffd93d,#ff8a3d);color:#160a2d;box-shadow:0 18px 42px rgba(255,217,61,.2);opacity:.88}.mine-mark .ui-icon{width:48px;height:48px}

.hex-game{overflow:hidden}.hex-game-area{min-height:0;display:grid;grid-template-rows:minmax(300px,1fr) 128px;gap:12px;padding:0 14px 18px}.hex-board{display:block;width:100%;height:100%;max-height:62vh;margin:auto;touch-action:none;overflow:visible}.hex-cell polygon{fill:#21134b;stroke:rgba(255,255,255,.055);stroke-width:3;transition:fill .12s,stroke .12s,filter .12s}.hex-cell.filled polygon{fill:var(--hex);stroke:var(--hex-hi);filter:drop-shadow(0 5px 6px color-mix(in srgb,var(--hex),transparent 72%))}.hex-cell.preview polygon{fill:rgba(255,217,61,.62);stroke:#fff1ac;stroke-width:5;filter:drop-shadow(0 0 10px rgba(255,217,61,.58))}.hex-tray{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;min-height:112px}.hex-tray-slot{border:0;background:#160d3c;border-radius:22px;display:grid;place-items:center;min-width:0;min-height:104px;padding:10px;touch-action:none;color:inherit}.hex-tray-slot:active{transform:scale(.98)}.hex-tray-slot.used{opacity:.25}.hex-piece-svg{display:block;width:100%;height:82px;overflow:visible}.hex-piece-svg polygon{fill:var(--hex);stroke:var(--hex-hi);stroke-width:3;filter:drop-shadow(0 5px 5px color-mix(in srgb,var(--hex),transparent 68%))}.hex-drag-ghost{position:fixed;left:0;top:0;width:118px;height:100px;z-index:500;pointer-events:none;transform:translate3d(-999px,-999px,0);margin-left:-59px;margin-top:-50px;will-change:transform}.hex-drag-ghost .hex-piece-svg{width:118px;height:100px;filter:drop-shadow(0 16px 16px rgba(0,0,0,.4))}

.mine-picker{text-align:center}.mine-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.mine-picker-grid button{border:0;border-radius:20px;background:#21134b;color:#fff;padding:18px 8px;display:grid;gap:6px;min-width:0}.mine-picker-grid button.active{background:linear-gradient(145deg,#ffcc29,#ff8a3d);color:#160a2d}.mine-picker-grid small{font-size:11px;line-height:1.35;opacity:.72}
.mines-game{overflow:hidden}.mine-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 16px 12px;padding:11px 14px;background:#160d3c;border-radius:18px;color:#b4a8e8;font-size:12px}.mine-status span:first-child{display:flex;align-items:center;gap:7px;color:#ffd93d;font-size:17px}.mine-status .ui-icon{width:20px;height:20px}.mine-board{--mine-gap:4px;display:grid;grid-template-columns:repeat(var(--mine-cols),minmax(0,1fr));gap:var(--mine-gap);width:min(calc(100vw - 28px),calc(var(--tg-height) - 210px));max-width:520px;aspect-ratio:1;margin:0 auto 18px;padding:7px;background:#10082e;border-radius:18px;contain:layout paint style}.mine-cell{border:0;border-radius:8px;background:linear-gradient(145deg,#32236a,#20134b);color:#fff;display:grid;place-items:center;font-weight:900;font-size:clamp(12px,4vw,22px);min-width:0;min-height:0;aspect-ratio:1;touch-action:manipulation;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 3px 0 #130a31}.mine-cell.open{background:#130c31;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}.mine-cell.flagged{background:linear-gradient(145deg,#4b2d78,#281452);color:#ffd93d}.mine-cell.mine-reveal{background:#5d164f;color:#ff3d9a}.mine-cell-icon{width:52%;height:52%}.mine-cell.n1{color:#22e0ff}.mine-cell.n2{color:#9bff3d}.mine-cell.n3{color:#ffd93d}.mine-cell.n4{color:#ff8a3d}.mine-cell.n5{color:#ff3d9a}.mine-cell.n6{color:#a855ff}.mine-cell.n7,.mine-cell.n8{color:#fff}
.rating-tabs{overflow-x:auto;scrollbar-width:none;justify-content:flex-start}.rating-tabs::-webkit-scrollbar{display:none}.rating-tabs .tab{flex:0 0 auto;min-width:96px}
@media(max-width:360px){.mode-grid{grid-template-columns:1fr}.mode-grid .game-card{min-height:190px}.mine-picker-grid{grid-template-columns:1fr}.mine-picker-grid button{padding:13px}.hex-game-area{grid-template-rows:minmax(270px,1fr) 108px;padding-inline:8px}.hex-tray-slot{min-height:92px;border-radius:16px}.hex-piece-svg{height:68px}.mine-status{margin-inline:8px}.mine-board{width:calc(100vw - 16px);--mine-gap:3px;padding:5px}.mine-cell{border-radius:6px}}
@media(max-height:620px){.hex-game-area{grid-template-rows:minmax(245px,1fr) 92px;gap:6px}.hex-tray-slot{min-height:82px;padding:5px}.hex-piece-svg{height:60px}.mine-status{padding:7px 11px;margin-bottom:7px}.mine-board{width:min(calc(100vw - 20px),calc(100vh - 185px));margin-bottom:8px;padding:5px}}

/* 11.1 — polished Hex Puzzle and Minesweeper */
.hex-game,.mines-game{overflow-y:auto;overscroll-behavior:none;padding-bottom:max(14px,var(--safe-bottom))}
.hex-game .game-head,.mines-game .game-head{flex:0 0 auto}
.hex-stage{width:calc(100% - 24px);max-width:520px;margin:0 auto 10px;padding:10px 10px 8px;background:linear-gradient(160deg,rgba(34,224,255,.075),rgba(168,85,255,.055)),#10092d;border-radius:24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.045);contain:layout paint style}
.hex-help{min-height:20px;padding:0 8px 7px;color:#b8afe1;font-size:12px;font-weight:650;line-height:1.35;text-align:center}
.hex-board{display:block;width:100%;height:auto;aspect-ratio:440/396;margin:0 auto;touch-action:none;overflow:visible;-webkit-tap-highlight-color:transparent}
.hex-cell{cursor:pointer}.hex-cell polygon{fill:#21134b;stroke:rgba(255,255,255,.065);stroke-width:2.2;transition:fill .1s ease,stroke .1s ease,filter .1s ease}
.hex-cell.filled polygon{fill:var(--hex);stroke:var(--hex-hi);filter:none}
.hex-cell.preview polygon{fill:rgba(255,204,41,.74);stroke:#fff2b3;stroke-width:4;filter:drop-shadow(0 0 7px rgba(255,204,41,.42))}
.hex-tray{width:calc(100% - 24px);max-width:520px;margin:0 auto 10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;min-height:104px}
.hex-tray-slot{position:relative;border:0;background:#160d3c;border-radius:20px;display:grid;place-items:center;min-width:0;height:104px;padding:9px;touch-action:none;color:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:transform .12s ease,background .12s ease,box-shadow .12s ease}
.hex-tray-slot.selected{background:#25145a;box-shadow:0 0 0 2px rgba(34,224,255,.56),0 10px 25px rgba(34,224,255,.09)}
.hex-tray-slot.dragging{transform:translateY(-5px) scale(1.025);background:#2b1766}
.hex-tray-slot.used{opacity:.24}
.hex-piece-svg{display:block;width:100%;height:78px;max-width:118px;overflow:visible;pointer-events:none}
.hex-piece-svg polygon{fill:var(--hex);stroke:var(--hex-hi);stroke-width:2.7;filter:none}
.mode-powerbar{width:calc(100% - 24px);max-width:520px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.mode-power{border:0;min-width:0;min-height:73px;padding:9px 6px;border-radius:18px;background:#160d3c;color:#fff;display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-areas:"icon label" "price price";align-items:center;text-align:left;column-gap:7px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:transform .12s ease,background .12s ease}
.mode-power:active{transform:scale(.975)}.mode-power:disabled{opacity:.48}.mode-power.active{background:#2b1766;box-shadow:0 0 0 2px rgba(34,224,255,.42)}
.mode-power>.ui-icon{grid-area:icon;width:23px;height:23px;color:#22e0ff}.mode-power>span{grid-area:label;font-size:11px;font-weight:800;line-height:1.15;overflow-wrap:anywhere}.mode-power>b{grid-area:price;display:flex;align-items:center;justify-content:center;gap:5px;color:#ffd93d;font-size:11px}.mode-power .inline-icon{width:14px;height:14px}

.mines-game{display:flex;flex-direction:column}
.mine-status{width:calc(100% - 24px);max-width:520px;margin:0 auto 9px;padding:10px 12px;background:#160d3c;border-radius:18px;color:#b4a8e8}
.mine-status-main{display:flex;align-items:center;justify-content:center;gap:16px}.mine-status-main>span{display:grid;grid-template-columns:19px auto;grid-template-areas:"icon number" "caption caption";align-items:center;gap:0 5px;color:#fff}.mine-status-main .ui-icon{grid-area:icon;width:19px;height:19px;color:#ffd93d}.mine-status-main b{grid-area:number;font-size:17px}.mine-status-main small{grid-area:caption;color:#9c91cc;font-size:9px;text-transform:uppercase;letter-spacing:.09em}.mine-status-main .shield-active .ui-icon{color:#51f69c}.mine-status p{margin:7px 0 0;text-align:center;font-size:11px;line-height:1.35;color:#a99fd5}
.mine-board-wrap{width:100%;min-height:0;display:grid;place-items:center;padding:0 12px 9px;contain:layout style}
.mine-board{--mine-gap:4px;display:grid;grid-template-columns:repeat(var(--mine-cols),minmax(0,1fr));gap:var(--mine-gap);width:min(calc(100vw - 24px),min(520px,calc(var(--tg-height) - 310px)));max-width:520px;aspect-ratio:1;margin:0;padding:6px;background:#10082e;border-radius:18px;contain:layout paint style}
.mine-cell{border:0;border-radius:clamp(4px,1.5vw,8px);background:linear-gradient(145deg,#32236a,#20134b);color:#fff;display:grid;place-items:center;font-weight:900;font-size:clamp(11px,3.8vw,21px);min-width:0;min-height:0;aspect-ratio:1;touch-action:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.075),0 2px 0 #130a31;-webkit-tap-highlight-color:transparent}
.mine-cell:active{transform:scale(.94)}.mine-cell.open{background:#130c31;box-shadow:inset 0 0 0 1px rgba(255,255,255,.045)}.mine-cell.flagged{background:linear-gradient(145deg,#4b2d78,#281452);color:#ffd93d}.mine-cell.mine-reveal{background:#5d164f;color:#ff3d9a}.mine-cell-icon{width:50%;height:50%}
.mine-powerbar{margin-bottom:2px}

@media(max-width:360px){
 .hex-stage,.hex-tray,.mode-powerbar,.mine-status{width:calc(100% - 16px)}
 .hex-stage{padding:7px;border-radius:18px}.hex-help{font-size:10px}.hex-tray{gap:6px;min-height:88px}.hex-tray-slot{height:88px;border-radius:15px;padding:5px}.hex-piece-svg{height:65px}
 .mode-powerbar{gap:5px}.mode-power{min-height:65px;padding:7px 4px;border-radius:14px;grid-template-columns:19px minmax(0,1fr);column-gap:4px}.mode-power>.ui-icon{width:19px;height:19px}.mode-power>span,.mode-power>b{font-size:9px}
 .mine-board-wrap{padding-inline:8px}.mine-board{width:calc(100vw - 16px);--mine-gap:3px;padding:4px;border-radius:13px}
 .mine-status-main{gap:10px}.mine-status p{font-size:10px}
}
@media(max-height:700px){
 .hex-stage{width:min(calc(100% - 20px),460px);padding:5px 8px}.hex-help{display:none}.hex-board{max-height:43vh}
 .hex-tray{min-height:78px;margin-bottom:6px}.hex-tray-slot{height:78px}.hex-piece-svg{height:58px}.mode-power{min-height:58px}.mode-power>span{font-size:9px}
 .mine-status{padding-block:7px;margin-bottom:6px}.mine-status p{display:none}.mine-board{width:min(calc(100vw - 20px),calc(100vh - 270px))}.mode-powerbar{margin-bottom:0}
}
@media(orientation:landscape) and (max-height:560px){
 .hex-game{display:grid;grid-template-columns:minmax(280px,1fr) minmax(260px,.8fr);grid-template-rows:auto 1fr;column-gap:10px}.hex-game .game-head{grid-column:1/-1}.hex-stage{grid-column:1;grid-row:2;width:100%;margin:0}.hex-board{max-height:calc(100vh - 150px)}.hex-tray{grid-column:2;grid-row:2;width:100%;align-self:start}.hex-powerbar{position:absolute;right:10px;bottom:10px;width:min(44vw,440px)}
 .mines-game .mine-board{width:min(58vh,440px)}
}

/* Grid Crush 11.2 — exact Hex geometry and Arena attempt states */
.hex-game{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  padding-bottom:max(8px,var(--safe-bottom))!important;
}
.hex-content{
  flex:1 1 auto;
  min-height:0;
  width:100%;
  max-width:540px;
  margin:0 auto;
  display:grid;
  grid-template-rows:34px minmax(0,1fr) clamp(78px,12vh,104px) clamp(64px,9.5vh,78px);
  gap:8px;
  overflow:hidden;
}
.hex-guide{
  min-width:0;
  height:34px;
  padding:0 12px;
  border-radius:14px;
  background:rgba(29,17,69,.86);
  color:#bdb3e4;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:11px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.hex-guide.active{background:#2b1766;color:#fff}
.hex-guide .ui-icon{width:18px;height:18px;flex:0 0 auto;color:var(--cyan)}
.hex-guide span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.hex-stage{
  min-height:0;
  width:100%;
  height:100%;
  margin:0;
  padding:5px;
  border-radius:20px;
  overflow:hidden;
  display:grid;
  place-items:center;
  background:linear-gradient(160deg,rgba(34,224,255,.055),rgba(168,85,255,.04)),#10092d;
  contain:layout paint style;
}
.hex-board{
  display:block;
  width:auto!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:auto!important;
  margin:0 auto!important;
  overflow:visible;
  touch-action:none;
}
.hex-cell polygon{
  stroke-width:2.1px!important;
  transition:none!important;
}
.hex-cell.preview polygon{
  stroke-width:3.2px!important;
  filter:none!important;
}
.hex-tray{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:100%!important;
  margin:0!important;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.hex-tray-slot{
  position:relative;
  width:100%;
  height:100%!important;
  min-height:0!important;
  padding:7px!important;
  border-radius:18px!important;
  overflow:hidden;
  background:#160d3c;
  display:grid;
  place-items:center;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .08s ease,background .08s ease,box-shadow .08s ease!important;
}
.hex-tray-slot.selected{box-shadow:inset 0 0 0 2px rgba(34,224,255,.72)!important;background:#25145a!important}
.hex-tray-slot.dragging{transform:scale(.985)!important}
.hex-slot-index{
  position:absolute;
  top:6px;
  left:7px;
  width:18px;
  height:18px;
  border-radius:7px;
  background:rgba(255,255,255,.06);
  color:#8f82c4;
  display:grid;
  place-items:center;
  font-size:9px;
  font-weight:900;
}
.hex-piece-svg{
  width:100%!important;
  height:100%!important;
  max-width:116px!important;
  max-height:76px!important;
  overflow:visible;
}
.hex-piece-svg polygon{stroke-width:2.1px!important;filter:none!important}
.hex-powerbar{
  width:100%!important;
  max-width:none!important;
  height:100%;
  margin:0!important;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.hex-powerbar .mode-power{
  width:100%;
  min-width:0;
  min-height:0!important;
  height:100%;
  padding:6px 5px!important;
  border-radius:16px!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:22px minmax(18px,1fr) 17px!important;
  grid-template-areas:"icon" "label" "price"!important;
  align-items:center!important;
  justify-items:center!important;
  gap:1px!important;
  text-align:center!important;
  overflow:hidden;
}
.hex-powerbar .mode-power>.ui-icon{grid-area:icon!important;width:21px!important;height:21px!important}
.hex-powerbar .mode-power>span{
  grid-area:label!important;
  width:100%;
  font-size:10px!important;
  line-height:1.08!important;
  text-align:center!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:auto;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hex-powerbar .mode-power>b{
  grid-area:price!important;
  width:100%;
  justify-content:center!important;
  font-size:10px!important;
  line-height:1!important;
}
.arena-closed.is-disabled{pointer-events:none}

@media(max-width:360px){
  .hex-content{grid-template-rows:30px minmax(0,1fr) 72px 61px;gap:5px}
  .hex-guide{height:30px;border-radius:12px;padding-inline:8px;font-size:9px}
  .hex-stage{padding:3px;border-radius:15px}
  .hex-tray{gap:5px}
  .hex-tray-slot{padding:4px!important;border-radius:14px!important}
  .hex-piece-svg{max-height:58px!important}
  .hex-powerbar{gap:5px}
  .hex-powerbar .mode-power{padding:4px 3px!important;border-radius:13px!important;grid-template-rows:18px minmax(16px,1fr) 15px!important}
  .hex-powerbar .mode-power>.ui-icon{width:18px!important;height:18px!important}
  .hex-powerbar .mode-power>span,.hex-powerbar .mode-power>b{font-size:8.5px!important}
}
@media(max-height:650px){
  .hex-content{grid-template-rows:minmax(0,1fr) 70px 58px;gap:5px}
  .hex-guide{display:none}
  .hex-stage{border-radius:15px;padding:3px}
  .hex-tray{gap:5px}
  .hex-tray-slot{border-radius:14px!important;padding:4px!important}
  .hex-piece-svg{max-height:56px!important}
  .hex-powerbar{gap:5px}
  .hex-powerbar .mode-power{border-radius:13px!important;padding:4px 3px!important;grid-template-rows:18px minmax(15px,1fr) 14px!important}
  .hex-powerbar .mode-power>span,.hex-powerbar .mode-power>b{font-size:8.5px!important}
}
@media(orientation:landscape) and (max-height:560px){
  .hex-game{display:flex!important}
  .hex-content{max-width:none;grid-template-columns:minmax(0,1fr) minmax(250px,.72fr);grid-template-rows:minmax(0,1fr) 62px;gap:6px}
  .hex-guide{display:none}
  .hex-stage{grid-column:1;grid-row:1/3}
  .hex-tray{grid-column:2;grid-row:1;height:100%!important;align-self:stretch}
  .hex-tray-slot{height:100%!important}
  .hex-powerbar{position:static!important;grid-column:2;grid-row:2;width:100%!important}
}

/* 11.3 — polished navigation, prices, ladder and Hex drag */
.leave-game-confirm{text-align:center}.leave-game-icon{width:64px;height:64px;margin:0 auto 14px;border-radius:20px;background:linear-gradient(145deg,#65153f,#3b1234);display:grid;place-items:center;color:#fff}.leave-game-icon .ui-icon{width:30px;height:30px}.leave-game-confirm p{max-width:440px;margin:0 auto;color:var(--mid);line-height:1.5}.danger-action{min-height:52px;border-radius:17px;background:#65153f;color:#fff;font-weight:900;box-shadow:inset 0 -4px 0 rgba(45,0,22,.38)}
.resource-product .price-star{color:var(--yellow)!important;background:rgba(255,204,41,.1);padding:8px 10px;border-radius:12px}.primary.hot .price-star,.primary.hot .telegram-star-icon{color:#fff!important;fill:currentColor!important}.resource-product .telegram-star-icon{filter:drop-shadow(0 0 6px rgba(255,204,41,.34))}
.level-node.perfect-complete{background:linear-gradient(145deg,#33206f,#21134f);box-shadow:0 0 0 2px rgba(255,204,41,.16),0 12px 26px rgba(0,0,0,.32);opacity:1}.level-node.perfect-complete .level-number{color:#fff}.level-node.perfect-complete:after{content:'✓';position:absolute;right:-5px;top:-5px;width:22px;height:22px;border-radius:8px;background:var(--green);color:#062214;display:grid;place-items:center;font-size:13px;font-weight:950}.level-node .stars{z-index:4}.mini-star .inline-icon{width:15px!important;height:15px!important}.mini-star.earned{color:#ffd93d!important;filter:drop-shadow(0 0 7px rgba(255,217,61,.55))}
.hex-drag-ghost{position:fixed;left:0;top:0;width:118px;height:100px;z-index:520;pointer-events:none;opacity:0;transform:translate3d(-999px,-999px,0);will-change:transform;transition:opacity .08s ease;filter:drop-shadow(0 18px 18px rgba(0,0,0,.42))}.hex-drag-ghost.visible{opacity:.96}.hex-drag-ghost .hex-piece-svg{width:118px;height:100px;transform:scale(var(--ghost-scale,1));transform-origin:center}.hex-cell.preview polygon{fill:rgba(255,204,41,.86)!important;stroke:#fff6c7!important;stroke-width:4.5!important;filter:drop-shadow(0 0 8px rgba(255,204,41,.48))}.hex-tray-slot.dragging{opacity:.48;transform:scale(.97)!important}


/* Grid Crush 11.4 — exact Hex placement preview */
.hex-drag-ghost{display:none!important}
.hex-board.drag-active .hex-cell:not(.preview) polygon{opacity:.78}
.hex-cell.preview polygon{
  fill:var(--preview-hex,#ffcc29)!important;
  stroke:var(--preview-hi,#fff7ca)!important;
  stroke-width:3.2px!important;
  opacity:.9!important;
  filter:none!important;
}
.hex-tray-slot.dragging{opacity:1!important;transform:scale(.985)!important;background:#22134f!important}
.hex-tray-slot.dragging .hex-piece-svg{opacity:.3;transform:scale(.94)}
.hex-tray-slot .hex-piece-svg{max-width:136px!important;max-height:88px!important;transition:opacity .08s ease,transform .08s ease}
.hex-stage{padding:8px!important}
.hex-board{max-width:100%!important;max-height:100%!important}
@media(max-width:360px){
  .hex-stage{padding:5px!important}
  .hex-tray-slot .hex-piece-svg{max-width:118px!important;max-height:72px!important}
}
@media(max-height:650px){
  .hex-stage{padding:4px!important}
  .hex-tray-slot .hex-piece-svg{max-height:66px!important}
}
