:root{color:#fff7df;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#07111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{overscroll-behavior:none;touch-action:none;-webkit-text-size-adjust:100%;background:#07111f;width:100%;height:100%;overflow:hidden}body{width:100%;min-width:320px;height:var(--app-viewport-height,100svh);overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;overflow:hidden}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}#root{width:100%;height:var(--app-viewport-height,100svh);overscroll-behavior:none;touch-action:none;overflow:hidden}:root{--page-bg:#405d9d;--card-bg:#405d9d;--panel-bg:#11182733;--panel-deep:#11182747;--panel-soft:#ffffff14;--text-main:#f8fafc;--text-muted:#f8fafca3;--line-soft:#ffffff1a;--line-strong:#ffffff29;--board-outer:#3b2a20;--board-inner:#513727;--cell-empty:#152038;--accent:#f0b43c;--accent-text:#211505;--accent-dark:#9b6120;--cyan:#80deea;--green:#5ee08a;--danger:#db5364;--tg-safe-area-top:0px;--tg-safe-area-right:0px;--tg-safe-area-bottom:0px;--tg-safe-area-left:0px;--tg-content-safe-area-top:0px;--tg-content-safe-area-right:0px;--tg-content-safe-area-bottom:0px;--tg-content-safe-area-left:0px}.app-shell{height:var(--app-viewport-height,100svh);background:var(--page-bg);color:var(--text-main);padding:clamp(16px,3vw,42px);overflow:hidden}.app-shell--telegram{padding:0}.game-card{max-width:1280px;height:calc(var(--app-viewport-height,100svh) - clamp(32px, 6vw, 84px));border:1px solid color-mix(in srgb, var(--text-main) 8%, transparent);background:var(--card-bg);box-shadow:none;border-radius:28px;margin:0 auto;animation:.36s ease-out both shell-enter;position:relative;overflow:hidden}.app-shell--telegram .game-card{min-height:var(--app-viewport-height,100svh);box-shadow:none;border:0;border-radius:0}.topbar,.game-layout{z-index:1;position:relative}.topbar{justify-content:space-between;align-items:center;gap:24px;padding:clamp(16px,2.4vw,26px);display:flex}.brand{align-items:center;gap:16px;display:flex}.brand p,.metric-card span,.combo-card span,.eyebrow,.tray-heading,.stat-item span,.tips-card span,.status-card>span,.stats-progress-copy span,.stats-combo-card span,.stats-score-lockup span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:700}.brand h1{color:var(--text-main);letter-spacing:-.045em;text-transform:uppercase;margin:2px 0 0;font-size:clamp(1.55rem,3vw,3rem);line-height:.98}.brand-mark{border:1px solid var(--line-strong);background:var(--panel-bg);border-radius:14px;grid-template-columns:repeat(2,20px);gap:5px;padding:10px;display:grid;box-shadow:inset 0 0 0 1px #ffffff0a}.brand-mark span{aspect-ratio:1;background:#f0b43c;border-radius:3px;animation:1.8s ease-in-out infinite logo-tile;box-shadow:inset 0 3px #ffffff47,inset 0 -4px #0000002e}.brand-mark span:nth-child(2){background:#3498db;animation-delay:.12s}.brand-mark span:nth-child(3){background:#4cc27c;animation-delay:.24s}.brand-mark span:nth-child(4){background:#e05268;animation-delay:.36s}.topbar-actions,.status-actions{align-items:center;gap:12px;display:flex}.mobile-tabs,.mobile-score-strip,.profile-action{display:none}.telegram-badge{border:1px solid var(--line-soft);background:var(--panel-bg);max-width:180px;min-height:46px;box-shadow:none;cursor:pointer;font:inherit;border-radius:999px;justify-content:center;gap:2px;padding:7px 16px;display:grid}.telegram-badge span{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.62rem;font-weight:900}.telegram-badge strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;line-height:1.05;overflow:hidden}.primary-button,.soft-button{min-height:42px;font:inherit;cursor:pointer;border:0;border-radius:999px;padding:0 20px;font-size:.95rem;font-weight:800;transition:transform .15s,box-shadow .15s,border-color .15s,opacity .15s}.primary-button{color:var(--accent-text);background:var(--accent);box-shadow:0 10px 24px #00000024}.soft-button{border:1px solid var(--line-strong);color:var(--text-main);background:var(--panel-bg);box-shadow:none}.soft-button--danger{border-color:color-mix(in srgb, var(--danger) 54%, transparent);color:#ffd7dd}.primary-button:hover,.soft-button:hover,.tray-piece:hover:not(:disabled){transform:translateY(-1px)}.primary-button:active,.soft-button:active{box-shadow:none;transform:translateY(1px)}.primary-button:focus-visible,.soft-button:focus-visible,.tray-piece:focus-visible,.board-cell:focus-visible{outline-offset:3px;outline:3px solid #80deeabd}.primary-button:disabled,.soft-button:disabled{cursor:not-allowed;opacity:.48;transform:none}.game-layout{grid-template-columns:minmax(160px,210px) minmax(410px,540px) minmax(220px,280px);align-items:start;gap:clamp(14px,2.2vw,24px);max-height:calc(100% - 112px);padding:0 clamp(22px,3vw,34px) clamp(24px,3.2vw,38px);display:grid;overflow:hidden}.score-rail,.rules-panel,.tray-panel{border:1px solid var(--line-soft);background:var(--panel-bg);box-shadow:none;contain:layout paint style;border-radius:24px}.score-rail,.rules-panel{overscroll-behavior:contain;gap:14px;max-height:100%;display:grid;overflow-y:auto}.metric-card,.combo-card,.live-note,.panel-section,.tips-card,.leaderboard-card{border:1px solid var(--line-soft);background:var(--panel-deep);box-shadow:none;border-radius:20px}.metric-card{padding:16px;animation:.3s ease-out both panel-in}.metric-card strong{letter-spacing:-.06em;margin-top:8px;font-size:clamp(1.65rem,3.2vw,2.6rem);line-height:.95;animation:.22s ease-out both number-pop;display:block}.metric-card--gold strong{color:var(--accent)}.metric-card--cyan strong{color:var(--cyan)}.combo-card{padding:16px}.combo-card>div:first-child{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.combo-card strong{color:var(--text-main);font-size:1.55rem;line-height:1}.combo-card p,.panel-section p,.tips-card p,.status-card p{color:#d1d9e6;margin:10px 0 0;font-size:.94rem;line-height:1.55}.meter{background:#344055;border-radius:999px;height:10px;margin-top:14px;overflow:hidden;box-shadow:inset 0 2px 4px #0000003d}.meter span{border-radius:inherit;background:var(--accent);height:100%;transition:width .22s;display:block;box-shadow:inset 0 -2px #0000002e}.live-note{gap:4px;padding:16px;animation:.28s ease-out both live-bump;display:grid}.live-note strong{color:var(--green);font-size:1.7rem}.live-note span{color:var(--text-muted);font-size:.95rem}.play-area{min-width:0}.board-meta{color:var(--text-muted);justify-content:space-between;gap:12px;margin:0 8px 12px;font-size:.86rem;font-weight:800;display:flex}.board-frame{box-shadow:none;contain:layout paint style;background:#0a102357;border:1px solid #ffffff17;border-radius:22px;padding:clamp(6px,1.1vw,10px);position:relative}.board-frame--combo{will-change:transform;animation:.26s ease-out both board-nudge}.board-frame--clear-kick{will-change:transform;animation:.26s ease-out both board-clear-kick}.board-frame--locked{border-color:color-mix(in srgb, var(--danger) 52%, transparent);box-shadow:0 18px 42px #0000002e, 0 0 0 5px color-mix(in srgb, var(--danger) 10%, transparent), 0 0 34px color-mix(in srgb, var(--danger) 18%, transparent)}.board-frame--game-over{will-change:transform;animation:.88s cubic-bezier(.18,.84,.24,1) both board-game-over}.board{width:min(100%, 500px, calc(var(--app-viewport-height,100svh) - 300px));aspect-ratio:1;touch-action:none;contain:layout paint;background:#1c2544;border:1px solid #0003;border-radius:14px;grid-template-columns:repeat(8,1fr);gap:0;min-width:280px;margin:0 auto;padding:0;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff08}.board:after{z-index:8;pointer-events:none;content:"";position:absolute;inset:0}.board-frame--locked .board:after{background:radial-gradient(circle,#0000 34%,#db53643d),linear-gradient(#ffffff0d,#0000 22% 78%,#00000038);animation:.9s ease-out both board-lock-flash}.board-cell{background:var(--cell-empty);min-width:0;box-shadow:none;cursor:pointer;border:1px solid #090e1f33;border-radius:0;transition:transform .13s,background-color .13s,box-shadow .13s;position:relative;overflow:hidden}.board-cell:not(:disabled):hover{transform:scale(.96)}.board-cell:disabled{cursor:default}.cell-fill,.cell-flash{border-radius:inherit;pointer-events:none;position:absolute;inset:-1px}.cell-fill{background:linear-gradient(135deg, var(--block-edge) 0 16%, var(--block-facet) 16% 35%, var(--block-color) 35% 64%, color-mix(in srgb, var(--block-color) 78%, var(--block-shade) 22%) 64% 80%, var(--block-shade) 80% 100%);box-shadow:inset 0 0 0 1px #ffffff29, inset 0 5px 0 color-mix(in srgb, var(--block-edge) 80%, white 8%), inset 5px 0 0 color-mix(in srgb, var(--block-facet) 74%, white 5%), inset -5px 0 0 color-mix(in srgb, var(--block-shade) 82%, black 5%), inset 0 -6px 0 var(--block-shade);will-change:transform, opacity;overflow:hidden}.cell-fill--placed{animation:.22s cubic-bezier(.2,.95,.28,1.18) both tile-drop}.cell-fill:before,.cell-fill:after{content:"";pointer-events:none;position:absolute}.cell-fill:before{background:color-mix(in srgb, var(--block-edge) 82%, white 10%);opacity:.68;border-radius:0;height:16%;inset:14% 16% auto}.cell-fill:after{border:1px solid color-mix(in srgb, var(--block-edge) 40%, transparent);background:color-mix(in srgb, var(--block-color) 72%, var(--block-edge) 18%);box-shadow:inset 0 -4px 0 color-mix(in srgb, var(--block-shade) 64%, transparent);opacity:.78;border-radius:0;inset:22%}.cell-fill--clearing{z-index:4;animation:.64s cubic-bezier(.14,.88,.22,1) forwards tile-clear}.board-cell--preview:not(.board-cell--filled) .cell-fill{opacity:.5;animation:.78s ease-in-out infinite preview-pulse;transform:scale(.96)}.board-cell--will-clear{z-index:2;background:color-mix(in srgb, var(--accent) 18%, var(--cell-empty));box-shadow:inset 0 0 0 2px #fff4d8c2,inset 0 0 18px #f0b43c38,0 0 16px #f0b43c38}.board-cell--will-clear:after{z-index:5;content:"";opacity:.86;pointer-events:none;background:linear-gradient(90deg,#0000 0 42%,#fff4d8b8 42% 58%,#0000 58%),linear-gradient(0deg,#0000 0 42%,#fff4d8b8 42% 58%,#0000 58%);border:2px solid #fff4d8d1;animation:.62s ease-in-out infinite alternate clear-preview-mark;position:absolute;inset:18%}.board-cell--will-clear .cell-fill{opacity:.94;filter:brightness(1.24)saturate(1.12);animation:.62s ease-in-out infinite alternate clear-preview-tile}.board-cell--invalid{background:#321924;box-shadow:inset 0 0 0 2px #db536480}.board-cell--invalid .cell-fill{opacity:.42}.app-shell--game-over .board-cell{background:color-mix(in srgb, var(--cell-empty) 82%, #1f0b14 18%)}.app-shell--game-over .board-cell--filled .cell-fill{animation:.98s cubic-bezier(.2,.9,.22,1) both tile-game-over}.app-shell--game-over .board-cell:nth-child(3n) .cell-fill{animation-delay:34ms}.app-shell--game-over .board-cell:nth-child(4n) .cell-fill{animation-delay:70ms}.app-shell--game-over .board-meta span:last-child{color:#ffd7dd}.app-shell--game-over .tray-piece--blocked{border-color:color-mix(in srgb, var(--danger) 50%, transparent);opacity:.62;animation:.56s ease-out both tray-blocked-jolt}.effects-layer{z-index:7;pointer-events:none;contain:layout paint;position:absolute;inset:0;overflow:visible}.particle{left:var(--particle-left);top:var(--particle-top);width:var(--particle-size);height:var(--particle-size);background:var(--particle-color);box-shadow:inset 0 -2px 0 var(--particle-shade), 0 0 10px #fff4d847;animation:particle-burst var(--particle-duration) ease-out forwards;animation-delay:var(--particle-delay);opacity:0;will-change:transform, opacity;border-radius:3px;position:absolute}.particle--clear{box-shadow:inset 0 -2px 0 var(--particle-shade), 0 0 14px #fff4d857;animation-name:particle-burst}.score-burst{z-index:12;min-width:132px;color:var(--text-main);pointer-events:none;will-change:transform, opacity;background:#111a2b;border:2px solid #fff4d8c7;border-radius:18px;justify-items:center;padding:10px 16px;animation:.98s cubic-bezier(.15,.95,.25,1) forwards score-burst;display:grid;position:absolute;inset:46% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 12px 28px #00000057,0 0 0 6px #f0b43c2e}.score-burst:before,.score-burst:after{background:var(--accent);width:12px;height:12px;box-shadow:28px 12px 0 -2px #fff4d8, -22px 18px 0 -3px var(--cyan), 18px -18px 0 -4px var(--green);content:"";pointer-events:none;border-radius:4px;position:absolute}.score-burst:before{animation:.72s ease-out forwards sparkle-left;inset:-12px auto auto 16px}.score-burst:after{animation:.72s ease-out forwards sparkle-right;inset:auto 18px -10px auto}.score-burst--clear{border-color:#fff4d8f5;min-width:160px;animation-duration:1.08s;box-shadow:0 18px 42px #0000006b,0 0 0 8px #f0b43c3d,0 0 34px #f0b43c52}.score-burst strong{color:var(--accent);letter-spacing:-.04em;font-size:clamp(1.8rem,5vw,3.2rem);line-height:.95}.score-burst span{color:var(--text-muted);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:900}.tray-panel{box-shadow:none;background:0 0;border:0;margin-top:14px;padding:0}.tray-heading{display:none}.piece-tray{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--panel-bg) 74%, transparent);box-shadow:none;contain:layout paint style;border-radius:24px;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;display:grid}.tray-slot{min-width:0;min-height:106px}.tray-piece,.empty-slot{width:100%;min-height:106px;font:inherit;border:1px solid #0000;border-radius:18px;place-items:center;gap:0;display:grid}.tray-piece{color:var(--text-main);box-shadow:none;cursor:grab;touch-action:none;background:#ffffff0a;transition:transform .16s,border-color .16s,box-shadow .16s,opacity .16s;animation:.26s ease-out both tray-rise}.tray-piece:active{cursor:grabbing}.tray-piece>span:last-child,.empty-slot span{display:none}.tray-piece--selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);animation:none}.tray-piece--blocked{cursor:not-allowed;opacity:.48;animation:none}.tray-piece:disabled{cursor:not-allowed;transform:none}.empty-slot{box-shadow:none;opacity:.42;background:linear-gradient(90deg,#0000 48%,#ffffff14 48% 52%,#0000 52%),linear-gradient(#0000 48%,#ffffff14 48% 52%,#0000 52%)}.piece-preview{min-width:26px;min-height:26px;display:block;overflow:visible}.piece-preview--ghost{--piece-cell:var(--ghost-cell)}.piece-block-svg{fill:var(--piece-color,#f0b43c);stroke:#0003;stroke-width:.04px;shape-rendering:crispedges}.piece-block-svg-edge{fill:var(--piece-edge,#fff1a6);opacity:.9;shape-rendering:crispedges}.piece-block-svg-facet{fill:var(--piece-facet,#f8d95b);opacity:.82;shape-rendering:crispedges}.piece-block-svg-shade{fill:var(--piece-shade,#9b5a12);opacity:.9;shape-rendering:crispedges}.piece-block-svg-side{fill:color-mix(in srgb, var(--piece-shade) 76%, black 6%);opacity:.82;shape-rendering:crispedges}.drag-ghost{z-index:30;transform:translate3d(var(--drag-x), var(--drag-y), 0) translate(-50%, -50%);pointer-events:none;will-change:transform, opacity;position:fixed;top:0;left:0}.drag-ghost--valid .piece-block-svg{animation:.42s ease-in-out infinite alternate ghost-valid}.drag-ghost--invalid{opacity:.62}.rules-panel{padding:12px}.panel-section,.tips-card{padding:16px}.panel-section h2{color:var(--text-main);letter-spacing:-.035em;margin:10px 0 0;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.04}.stats-dashboard{gap:12px;display:grid}.stats-hero{border-color:color-mix(in srgb, var(--accent) 24%, transparent);background:#1e2933;gap:18px;min-height:216px;display:grid;position:relative;overflow:hidden}.stats-hero:before{content:"";opacity:.78;background:linear-gradient(135deg,#f0b43cd1 0 48%,#0000 48%),linear-gradient(45deg,#2f8cffc2 0 48%,#0000 48%),#ffffff0d;border:1px solid #ffffff14;border-radius:30px;width:132px;height:132px;position:absolute;bottom:-38px;right:-32px;transform:rotate(10deg);box-shadow:inset 0 -14px #00000029}.stats-hero-heading,.stats-hero-footer,.stats-progress-copy,.stats-combo-card>div,.tips-card>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.stats-hero-heading{z-index:1;align-items:flex-start;position:relative}.stats-hero-heading h2{max-width:9ch}.stats-hero-heading strong{border:1px solid color-mix(in srgb, var(--accent) 36%, transparent);min-width:52px;height:52px;color:var(--accent);background:#f0b43c1a;border-radius:16px;place-items:center;font-size:1rem;font-weight:1000;line-height:1;display:grid}.stats-score-lockup{z-index:1;gap:8px;display:grid;position:relative}.stats-score-lockup strong{color:var(--text-main);letter-spacing:-.08em;font-size:clamp(2.7rem,6.4vw,4.8rem);line-height:.82}.stats-hero-footer{z-index:1;color:#d1d9e6;align-items:flex-end;font-size:.84rem;font-weight:800;position:relative}.stats-hero-footer em{min-width:64px;color:var(--accent-text);background:var(--accent);border-radius:999px;justify-content:center;padding:7px 10px;font-style:normal;font-weight:1000;animation:.22s ease-out both number-pop;display:inline-flex}.stats-progress-card,.stats-combo-card{gap:12px;display:grid}.stats-progress-copy strong,.stats-combo-card strong,.tips-card strong{color:var(--text-main);letter-spacing:-.045em;font-size:1.35rem;line-height:1}.stats-progress-card p{color:#d1d9e6;margin:0;font-size:.9rem;line-height:1.45}.stats-field-meter{border:1px solid color-mix(in srgb, var(--text-main) 10%, transparent);background:repeating-linear-gradient(90deg,#0000 0 11.7%,#ffffff0d 11.7% 12.5%),#0e15276b;border-radius:12px;height:28px;overflow:hidden}.stats-field-meter span{border-radius:inherit;background:linear-gradient(90deg, var(--green), var(--cyan) 52%, var(--accent));height:100%;transition:width .22s;display:block;box-shadow:0 0 18px #80deea38}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.stat-item{border:1px solid color-mix(in srgb, var(--text-main) 10%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--stat-tone) 13%, transparent), transparent 68%), #ffffff09;min-height:82px;box-shadow:none;border-radius:16px;gap:10px;padding:14px;display:grid;position:relative;overflow:hidden}.stat-item:after{background:var(--stat-tone);width:20px;height:20px;box-shadow:-12px -10px 0 -6px color-mix(in srgb, var(--stat-tone) 72%, white 12%), inset 0 -4px 0 #0000002e;content:"";opacity:.86;border-radius:6px;position:absolute;bottom:10px;right:12px}.stat-item--neutral{--stat-tone:var(--text-main)}.stat-item--gold{--stat-tone:var(--accent)}.stat-item--blue{--stat-tone:#4aa2ff}.stat-item--green{--stat-tone:var(--green)}.stat-item--red{--stat-tone:#ff7185}.stat-item span{margin:0}.stat-item strong{color:var(--text-main);letter-spacing:-.04em;font-size:clamp(1.25rem,2.1vw,1.6rem);line-height:1;display:block}.tips-card{border-color:color-mix(in srgb, var(--green) 22%, transparent);background:linear-gradient(135deg,#5ee08a1a,#0000 48%),0 0;gap:10px;display:grid}.leaderboard-card{gap:12px;padding:18px;display:grid}.leaderboard-tabs{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--panel-deep) 88%, #000 12%);border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.leaderboard-tabs button{min-width:0;color:var(--text-muted);cursor:pointer;font:inherit;text-transform:uppercase;background:0 0;border:0;border-radius:14px;padding:10px 8px;font-size:.82rem;font-weight:1000;line-height:1;transition:background .18s,color .18s,transform .18s}.leaderboard-tabs button:hover{color:var(--text-main);background:color-mix(in srgb, var(--text-main) 8%, transparent)}.leaderboard-tabs button:active{transform:translateY(1px)}.leaderboard-tabs .leaderboard-tab--active{color:var(--accent-text);background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 82%, white 18%), var(--accent))}.leaderboard-period-summary{gap:10px;display:grid}.leaderboard-countdown{border:1px solid color-mix(in srgb, var(--cyan) 28%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--cyan) 12%, transparent), transparent 62%), color-mix(in srgb, var(--panel-deep) 86%, #000 14%);border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.leaderboard-countdown span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:1000}.leaderboard-countdown strong{color:var(--cyan);white-space:nowrap;font-size:1.12rem;font-weight:1000;line-height:1}.nft-reward-link{width:34px;height:34px;color:inherit;border-radius:12px;place-items:center;text-decoration:none;display:grid}.nft-reward-thumb{border:1px solid color-mix(in srgb, var(--text-main) 24%, transparent);background:linear-gradient(135deg,#ffe09a 0 18%,#0000 18%),linear-gradient(45deg,#7dd3fc 0 48%,#8b5cf6 48% 100%);border-radius:10px;width:30px;height:30px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff29,0 8px 18px #00000029}.nft-reward-thumb:before{content:"";background:linear-gradient(135deg,#0000 0 48%,#ffffffd1 48% 54%,#0000 54%),linear-gradient(45deg,#1f2937 0 50%,#f0b43c 50% 100%);border-radius:6px;position:absolute;inset:7px 8px 9px;box-shadow:0 0 0 1px #fff3}.nft-reward-thumb span{background:#fff;border-radius:3px;width:7px;height:7px;position:absolute;bottom:4px;right:4px}.leaderboard-podium{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--line-soft));background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 12%, transparent), transparent 54%), color-mix(in srgb, var(--panel-deep) 92%, #000 8%);border-radius:20px;gap:10px;padding:10px;display:grid}.podium-card{--rank-tone:var(--line-soft);border:1px solid var(--rank-tone);background:linear-gradient(135deg, color-mix(in srgb, var(--rank-tone) 13%, transparent), transparent 58%), color-mix(in srgb, var(--panel-deep) 90%, #000 10%);border-radius:18px;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.podium-card-rank{place-items:center;gap:4px;min-width:0;display:grid}.podium-card-rank span{color:var(--rank-tone);font-size:.94rem;font-weight:1000;line-height:1}.podium-card-rank strong{background:color-mix(in srgb, var(--rank-tone) 15%, transparent);border-radius:999px;place-items:center;width:34px;height:34px;font-size:1rem;display:grid}.podium-player-button{min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:0;display:grid}.podium-player-button .leaderboard-avatar{width:48px;height:48px}.podium-card-body{gap:8px;min-width:0;display:grid}.podium-player-button>span,.podium-empty{gap:5px;min-width:0;display:grid}.podium-player-button strong,.podium-empty span{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:1000;line-height:1.08;overflow:hidden}.podium-player-button em,.podium-reward strong{color:var(--rank-tone);font-size:.86rem;font-style:normal;font-weight:1000;line-height:1}.podium-reward{border:1px solid color-mix(in srgb, var(--rank-tone) 28%, transparent);background:color-mix(in srgb, var(--rank-tone) 8%, transparent);border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px 8px;display:grid}.podium-reward strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.podium-empty span{color:var(--text-muted)}.leaderboard-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.leaderboard-heading span,.leaderboard-status{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.76rem;font-weight:900}.leaderboard-heading strong{color:var(--accent);font-size:.95rem}.leaderboard-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.leaderboard-list li{--rank-tone:var(--line-soft);border:1px solid var(--rank-tone);background:linear-gradient(135deg, color-mix(in srgb, var(--text-main) 9%, transparent), transparent 52%), color-mix(in srgb, var(--panel-deep) 88%, var(--accent) 12%);min-width:0;box-shadow:none;border-radius:22px}.leaderboard-list-item{position:relative}.leaderboard-list-item--gold{--rank-tone:color-mix(in srgb, var(--accent) 72%, white 8%);background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 18%, transparent), transparent 58%), color-mix(in srgb, var(--panel-deep) 84%, var(--accent) 16%)}.leaderboard-list-item--silver{--rank-tone:#cdd7e5cc}.leaderboard-list-item--bronze{--rank-tone:#d39564cc;background:linear-gradient(135deg, #cf8c5729, transparent 56%), color-mix(in srgb, var(--panel-deep) 88%, #cf8c57 12%)}.leaderboard-entry-button{border-radius:inherit;width:100%;min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:34px 24px 44px minmax(0,1fr);align-items:center;gap:9px;padding:10px;display:grid}.leaderboard-entry-button:hover{background:color-mix(in srgb, var(--text-main) 7%, transparent)}.leaderboard-entry-button:focus-visible,.leaderboard-tabs button:focus-visible,.nft-reward-link:focus-visible,.telegram-badge:focus-visible,.profile-close:focus-visible,.profile-tabs button:focus-visible,.privacy-toggle:focus-within{outline-offset:3px;outline:3px solid #80deeabd}.leaderboard-rank{color:var(--text-main);text-align:center;font-size:1.04rem;font-weight:1000;line-height:1}.leaderboard-medal{width:24px;height:24px;color:var(--rank-tone);border-radius:999px;place-items:center;font-size:.88rem;font-weight:1000;line-height:1;display:grid}.leaderboard-list-item--gold .leaderboard-medal{background:#f0b43c29}.leaderboard-list-item--silver .leaderboard-medal{background:#c7d2e224}.leaderboard-list-item--bronze .leaderboard-medal{background:#cf8c5724}.leaderboard-avatar{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 72%, white 28%), var(--accent));width:44px;height:44px;color:var(--accent-text);border-radius:999px;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 -4px #0000002e}.leaderboard-avatar img{z-index:2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.leaderboard-avatar strong{z-index:1;color:var(--accent-text);font-size:1.15rem;font-weight:1000;line-height:1;position:relative}.leaderboard-player{gap:3px;min-width:0;display:grid}.leaderboard-player strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:1.02rem;font-weight:1000;line-height:1.08;overflow:hidden}.leaderboard-player span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;font-weight:900;line-height:1.15;overflow:hidden}.leaderboard-score{color:var(--accent);grid-column:3/-1;justify-self:end;font-size:1.08rem;font-style:normal;font-weight:1000;line-height:1}.leaderboard-empty,.leaderboard-status,.leaderboard-error{margin:0}.leaderboard-empty{color:#d1d9e6;font-size:.94rem}.leaderboard-load-more{border:1px solid color-mix(in srgb, var(--cyan) 36%, var(--line-soft));color:var(--cyan);background:linear-gradient(135deg, color-mix(in srgb, var(--cyan) 10%, transparent), transparent 58%), color-mix(in srgb, var(--panel-deep) 88%, #000 12%);cursor:pointer;font:inherit;text-transform:uppercase;border-radius:16px;padding:12px 14px;font-size:.8rem;font-weight:1000}.leaderboard-load-more:hover{background:color-mix(in srgb, var(--cyan) 13%, var(--panel-deep))}.leaderboard-load-more:disabled{cursor:wait;opacity:.58}.leaderboard-error{color:var(--danger);font-size:.78rem;font-weight:800;line-height:1.35}.profile-toast{z-index:42;border:1px solid color-mix(in srgb, var(--danger) 42%, var(--line-strong));color:#ffd7dd;background:color-mix(in srgb, var(--panel-deep) 90%, var(--danger) 10%);border-radius:18px;max-width:min(420px,100% - 32px);padding:14px 16px;font-weight:900;line-height:1.3;animation:.18s ease-out both modal-in;position:absolute;bottom:clamp(86px,10vw,112px);right:clamp(16px,3vw,30px);box-shadow:0 18px 42px #00000038}.profile-modal-overlay{z-index:40;background:linear-gradient(#0000 0%,#0307122e 38%),#03071257;place-items:end center;padding:clamp(18px,3vw,34px) clamp(14px,3vw,34px) 0;display:grid;position:absolute;inset:0}.profile-modal{border:1px solid var(--line-strong);background:color-mix(in srgb, var(--panel-deep) 92%, #0b1224 8%);border-bottom:0;border-radius:28px 28px 0 0;grid-template-rows:auto auto auto minmax(0,1fr);gap:16px;width:min(100%,760px);max-height:min(90%,820px);padding:clamp(18px,3vw,24px);animation:.24s cubic-bezier(.18,.82,.22,1) both profile-sheet-in;display:grid;position:relative;overflow:hidden;box-shadow:0 28px 70px #0000004d}.profile-modal:before{background:color-mix(in srgb, var(--text-main) 28%, transparent);content:"";border-radius:999px;justify-self:center;width:46px;height:5px}.profile-close{border:1px solid var(--line-soft);width:38px;height:38px;color:var(--text-main);background:var(--panel-bg);cursor:pointer;font:inherit;border-radius:999px;place-items:center;font-size:1.35rem;line-height:1;display:grid;position:absolute;top:14px;right:14px}.profile-header{grid-template-columns:72px minmax(0,1fr);align-items:center;gap:14px;padding-right:48px;display:grid}.profile-avatar{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 74%, white 26%), var(--accent));width:72px;height:72px;color:var(--accent-text);border-radius:22px;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 -6px #0000002e}.profile-avatar img{z-index:2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.profile-avatar strong{z-index:1;color:var(--accent-text);font-size:1.8rem;line-height:1;position:relative}.profile-header h2{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;margin:6px 0 0;font-size:clamp(1.8rem,5vw,3rem);line-height:.95;overflow:hidden}.profile-header p,.profile-loading p,.profile-empty{color:var(--text-muted);margin:6px 0 0;font-size:.92rem;font-weight:800}.profile-tabs{border:1px solid var(--line-soft);background:var(--panel-bg);border-radius:18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;display:grid}.profile-tabs button{min-height:42px;color:var(--text-muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:13px;font-weight:1000}.profile-tabs .profile-tab--active{color:var(--accent-text);background:var(--accent)}.profile-tab-panel{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;padding:0 4px max(22px, env(safe-area-inset-bottom)) 0;align-content:start;gap:14px;display:grid;overflow-y:auto}.privacy-toggle{border:1px solid var(--line-soft);background:var(--panel-bg);cursor:pointer;border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.privacy-toggle input{opacity:0;pointer-events:none;position:absolute}.privacy-toggle span{background:color-mix(in srgb, var(--text-main) 18%, transparent);border-radius:999px;width:50px;height:28px;transition:background-color .16s;position:relative}.privacy-toggle span:after{background:var(--text-main);content:"";border-radius:999px;width:20px;height:20px;transition:transform .16s;position:absolute;top:4px;left:4px}.privacy-toggle input:checked+span{background:var(--danger)}.privacy-toggle input:checked+span:after{transform:translate(22px)}.privacy-toggle strong{color:var(--text-main);font-size:.95rem}.stats-privacy-toggle{border-color:color-mix(in srgb, var(--cyan) 22%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--cyan) 9%, transparent), transparent 52%), var(--panel-deep)}.profile-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.profile-summary,.profile-private,.profile-loading,.profile-game-row{border:1px solid var(--line-soft);background:var(--panel-bg);border-radius:18px}.profile-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.profile-summary>div{background:color-mix(in srgb, var(--panel-deep) 76%, transparent);gap:8px;padding:14px;display:grid}.profile-summary span,.profile-games-heading span,.profile-game-row span,.profile-game-row em{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:900}.profile-summary strong{color:var(--text-main);font-size:1rem;line-height:1.15}.profile-private,.profile-loading{text-align:center;place-items:center;gap:8px;min-height:180px;padding:24px;display:grid}.profile-private strong,.profile-loading strong{color:var(--text-main);font-size:1.28rem;line-height:1.15}.profile-games-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.profile-games-heading strong{color:var(--accent);font-size:.95rem}.profile-games-list{gap:8px;display:grid}.profile-game-row{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.profile-game-row>div{min-width:0}.profile-game-row strong{color:var(--text-main);font-size:1.05rem;line-height:1;display:block}.profile-game-row em{color:var(--green);font-style:normal}.admin-panel{border:1px solid color-mix(in srgb, var(--line-soft) 70%, transparent);background:linear-gradient(180deg, #ffffff09, transparent 170px), var(--panel-bg);border-radius:22px;grid-column:1/-1;height:100%;min-height:0;padding:18px;display:none;overflow:hidden}.app-shell--tab-admin .score-rail,.app-shell--tab-admin .play-area,.app-shell--tab-admin .rules-panel{display:none}.app-shell--tab-admin .admin-panel{grid-template-rows:auto auto auto auto minmax(0,1fr);gap:14px;display:grid}.admin-toolbar,.admin-card-heading,.admin-row,.admin-actions,.admin-toolbar-actions{align-items:center;display:flex}.admin-toolbar,.admin-card-heading{justify-content:space-between;gap:16px}.admin-toolbar h2{color:var(--text-main);margin:6px 0 0;font-size:clamp(1.7rem,3vw,2.45rem);line-height:1}.admin-toolbar p{max-width:560px;color:var(--text-muted);margin:8px 0 0;font-size:.92rem;font-weight:700}.admin-toolbar-actions{justify-content:flex-end;gap:10px;min-width:0}.admin-status{border:1px solid var(--line-soft);max-width:260px;min-height:34px;color:var(--text-muted);background:var(--panel-deep);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;padding:0 12px;font-size:.78rem;font-weight:1000;display:inline-flex;overflow:hidden}.admin-status--ok{color:var(--green);border-color:color-mix(in srgb, var(--green) 32%, transparent)}.admin-status--sync{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 32%, transparent)}.admin-status--alert{color:var(--red);border-color:color-mix(in srgb, var(--red) 32%, transparent)}.admin-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.admin-metric,.admin-card{border:1px solid color-mix(in srgb, var(--line-soft) 82%, transparent);background:var(--panel-deep);border-radius:16px}.admin-metric{min-height:92px;padding:13px;position:relative;overflow:hidden}.admin-metric:before{background:var(--admin-metric-accent,var(--accent));content:"";width:3px;position:absolute;inset:0 auto 0 0}.admin-metric--blue{--admin-metric-accent:#4aa2ff}.admin-metric--green{--admin-metric-accent:var(--green)}.admin-metric--gold{--admin-metric-accent:var(--accent)}.admin-metric--purple{--admin-metric-accent:#ad80ff}.admin-metric--cyan{--admin-metric-accent:#4cd3ff}.admin-metric--red{--admin-metric-accent:var(--red)}.admin-metric span,.admin-card-heading span,.admin-row span,.admin-card-heading p,.admin-section-summary span,.admin-control-group-heading span,.admin-prize-fields span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.admin-metric em{color:var(--text-muted);margin-top:3px;font-size:.72rem;font-style:normal;font-weight:800;display:block}.admin-metric strong{color:var(--text-main);margin-top:12px;font-size:1.45rem;line-height:1;display:block}.admin-content{grid-template-columns:1fr;gap:14px;min-height:0;display:grid}.admin-card{grid-template-rows:auto minmax(0,1fr);min-height:0;padding:14px;display:grid;overflow:hidden}.admin-card--wide{min-width:0}.admin-tabs{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--panel-deep) 70%, transparent);border-radius:16px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:6px;min-width:0;padding:5px;display:grid}.admin-tabs button{min-width:0;min-height:42px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:0 12px;font-size:.84rem;font-weight:1000;display:flex}.admin-tabs button span{min-width:26px;height:24px;color:var(--text-muted);background:color-mix(in srgb, var(--panel-bg) 84%, transparent);border-radius:999px;place-items:center;font-size:.72rem;display:grid}.admin-tabs .admin-tab--active{color:var(--text-main);background:color-mix(in srgb, var(--accent) 16%, var(--panel-bg))}.admin-tabs .admin-tab--active span{color:var(--panel-bg);background:var(--accent)}.admin-section-summary{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--panel-deep) 66%, transparent);border-radius:16px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:12px 14px;display:flex}.admin-section-summary strong{color:var(--text-main);margin-top:3px;font-size:.96rem;line-height:1.35;display:block}.admin-section-summary input{flex:0 0 min(100%,340px);width:min(100%,340px)}.admin-card-heading{border-bottom:1px solid var(--line-soft);padding-bottom:12px}.admin-card-heading strong{color:var(--text-main);margin-top:3px;font-size:1.05rem;display:block}.admin-card-heading p{text-align:right;margin:0;line-height:1.35}.admin-card-heading input,.admin-section-summary input,.admin-field input,.admin-prize-fields input{border:1px solid var(--line-strong);min-height:40px;color:var(--text-main);background:var(--panel-bg);font:inherit;border-radius:12px;outline:none;padding:0 14px;font-size:.9rem}.admin-card-heading input::placeholder,.admin-section-summary input::placeholder,.admin-prize-fields input::placeholder{color:var(--text-muted)}.admin-table{overscroll-behavior:contain;gap:7px;min-height:0;padding:12px 4px 0 0;display:grid;overflow-y:auto}.admin-row{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--panel-bg) 78%, transparent);border-radius:14px;grid-template-columns:minmax(210px,1.5fr) minmax(90px,.5fr) minmax(90px,.45fr) minmax(130px,.65fr) auto;align-items:center;gap:10px;min-width:0;padding:9px;display:grid}.admin-table--scores .admin-row{grid-template-columns:minmax(210px,1.6fr) minmax(110px,.55fr) minmax(160px,.8fr) auto}.admin-row-identity{align-items:center;gap:10px;min-width:0;display:flex}.admin-avatar{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);width:38px;height:38px;color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);border-radius:12px;flex:none;place-items:center;font-weight:1000;display:grid}.admin-avatar--score{color:#4cd3ff;background:#4cd3ff1f;border-color:#4cd3ff4d}.admin-avatar--prize{color:var(--green);border-color:color-mix(in srgb, var(--green) 30%, transparent);background:color-mix(in srgb, var(--green) 12%, transparent)}.admin-row-identity strong,.admin-prize-winner strong{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;display:block;overflow:hidden}.admin-row-stat{gap:3px;min-width:0;display:grid}.admin-row-stat em,.admin-row-stat strong{color:var(--green);font-style:normal;font-weight:1000;line-height:1}.admin-row-stat--score em{color:var(--accent)}.admin-badges{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.admin-badge{border:1px solid var(--line-soft);min-height:24px;color:var(--text-muted);background:color-mix(in srgb, var(--panel-deep) 70%, transparent);white-space:nowrap;border-radius:999px;align-items:center;padding:0 8px;font-size:.7rem;font-weight:1000;display:inline-flex}.admin-badge--ok{color:var(--green);border-color:color-mix(in srgb, var(--green) 28%, transparent)}.admin-badge--danger{color:var(--red);border-color:color-mix(in srgb, var(--red) 28%, transparent)}.admin-badge--muted{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 28%, transparent)}.admin-row .soft-button{min-height:32px;padding-inline:11px;font-size:.78rem}.admin-actions{justify-content:flex-end;gap:6px;min-width:max-content}.admin-control-grid,.admin-prize-grid{gap:12px;min-height:0;padding-right:4px;display:grid;overflow-y:auto}.admin-control-grid{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-content:start;padding-top:12px}.admin-switch,.admin-field,.admin-prize-board,.admin-prize-row,.admin-control-group{border:1px solid var(--line-soft);background:color-mix(in srgb, var(--panel-bg) 78%, transparent);border-radius:14px}.admin-control-group{align-content:start;gap:10px;min-width:0;padding:12px;display:grid}.admin-control-group-heading{border-bottom:1px solid var(--line-soft);padding-bottom:10px}.admin-control-group-heading strong{color:var(--text-main);margin-top:3px;font-size:.94rem;display:block}.admin-control-inline{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-switch{min-height:52px;color:var(--text-main);grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;padding:10px;font-weight:900;display:grid}.admin-switch input{opacity:0;position:absolute}.admin-switch>span{border:1px solid var(--line-strong);background:var(--panel-deep);border-radius:999px;width:40px;height:24px}.admin-switch>span:before{background:var(--text-muted);content:"";border-radius:999px;width:18px;height:18px;margin:2px;transition:transform .16s,background .16s;display:block}.admin-switch input:checked+span:before{background:var(--green);transform:translate(16px)}.admin-field{gap:8px;padding:10px;display:grid}.admin-field--wide{min-width:0}.admin-control-save{grid-column:1/-1;justify-self:end;min-width:190px}.admin-field span,.admin-prize-board-heading span,.admin-checkbox span,.admin-prize-empty{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:900}.admin-field input{width:100%}.admin-field textarea{resize:vertical;border:1px solid var(--line-strong);min-height:72px;color:var(--text-main);background:var(--panel-bg);font:inherit;border-radius:12px;outline:none;padding:10px}.admin-prize-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:12px}.admin-prize-board{align-content:start;gap:10px;padding:12px;display:grid}.admin-prize-board-heading{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:10px;padding-bottom:10px;display:flex}.admin-prize-board-heading strong{color:var(--text-main);margin-top:3px;font-size:1.05rem;display:block}.admin-prize-board-heading em{color:var(--text-muted);background:var(--panel-bg);white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:.72rem;font-style:normal;font-weight:1000}.admin-prize-row{grid-template-columns:44px minmax(0,1fr);gap:10px;padding:10px;display:grid}.admin-prize-rank{width:36px;height:36px;color:var(--panel-bg);background:var(--accent);border-radius:12px;place-items:center;font-weight:1000;display:grid}.admin-prize-fields,.admin-prize-winner{gap:7px;min-width:0;display:grid}.admin-prize-fields,.admin-prize-winner,.admin-prize-save{grid-column:1/-1}.admin-prize-fields{grid-template-columns:minmax(0,1fr)}.admin-prize-fields label{gap:5px;min-width:0;display:grid}.admin-prize-fields input{border-radius:10px;width:100%;min-height:34px;font-size:.82rem}.admin-prize-winner{border-top:1px solid var(--line-soft);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;padding-top:8px}.admin-prize-winner .admin-row-identity span,.admin-empty{color:var(--text-muted);margin:0;font-size:.82rem;font-weight:800}.admin-checkbox{align-items:center;gap:8px;display:flex}.status-overlay{z-index:20;background:#03071275;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.status-overlay--game-over{background:radial-gradient(circle at 50% 40%,#db536438,#0000 34%),#03071294;animation:.96s ease-out both defeat-vignette;overflow:hidden}.status-overlay--game-over:before,.status-overlay--game-over:after{pointer-events:none;content:"";position:absolute}.status-overlay--game-over:before{border:2px solid color-mix(in srgb, var(--danger) 38%, transparent);box-shadow:inset 0 0 42px color-mix(in srgb, var(--danger) 16%, transparent), 0 0 44px color-mix(in srgb, var(--danger) 12%, transparent);border-radius:34px;animation:.96s ease-out both defeat-warning-ring;inset:clamp(12px,3vw,34px)}.status-overlay--game-over:after{opacity:0;mix-blend-mode:screen;background:linear-gradient(90deg,#0000 0 47%,#ffffff21 50%,#0000 53%),repeating-linear-gradient(0deg,#ffffff09 0 1px,#0000 1px 8px);animation:.82s ease-out both defeat-scan;inset:0}.status-card{border:1px solid var(--line-strong);text-align:center;background:var(--panel-deep);border-radius:30px;width:min(100%,430px);padding:clamp(24px,4vw,34px);animation:.22s ease-out both modal-in;box-shadow:0 28px 70px #00000042}.status-card--game-over{border-color:color-mix(in srgb, var(--danger) 48%, var(--line-strong));background:linear-gradient(145deg, #db53642e, #111827d1 44%), var(--panel-deep);box-shadow:0 28px 70px #00000052, 0 0 0 6px color-mix(in srgb, var(--danger) 10%, transparent), 0 0 48px color-mix(in srgb, var(--danger) 20%, transparent);animation:.68s cubic-bezier(.16,.92,.2,1.12) .36s both defeat-card-in;position:relative;overflow:hidden}.status-card--game-over:before{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--danger) 40%, transparent);background:radial-gradient(circle, color-mix(in srgb, var(--danger) 22%, transparent), transparent 64%);content:"";pointer-events:none;border-radius:999px;width:260px;position:absolute;inset:-34% auto auto 50%;transform:translate(-50%)}.status-card--game-over>span{color:#ffd7dd;position:relative}.status-card h2{color:var(--text-main);letter-spacing:-.07em;margin:8px 0 0;font-size:clamp(2rem,7vw,3.8rem);line-height:.92}.status-score{gap:2px;margin:22px auto;display:grid}.status-score strong{color:var(--accent);font-size:3rem;line-height:1}.status-score small{color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;font-weight:800}.status-actions{justify-content:center}@keyframes shell-enter{0%{opacity:0;transform:translateY(10px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes logo-tile{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-2px)}}@keyframes number-pop{0%{transform:scale(.92)}70%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes live-bump{0%{transform:translateY(8px)}60%{transform:translateY(-2px)}to{transform:translateY(0)}}@keyframes tray-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes selected-pulse{0%,to{transform:translateY(0);box-shadow:0 0 0 3px #f0b43c24,inset 0 -5px #0000002e,0 10px 22px #00000029}50%{transform:translateY(-2px);box-shadow:0 0 0 6px #f0b43c29,inset 0 -5px #0000002e,0 15px 26px #00000038}}@keyframes piece-pop{0%{opacity:0;transform:translateY(8px)scale(.84)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tile-drop{0%{transform:translateY(-8px)scale(.84)}70%{transform:translateY(1px)scale(1.05)}to{transform:translateY(0)scale(1)}}@keyframes tile-clear{0%{opacity:1;filter:brightness();transform:scale(1)}18%{opacity:1;filter:brightness(1.5);transform:scale(1.22)rotate(1deg)}38%{opacity:1;filter:brightness(1.22);transform:scale(.96)rotate(-2deg)}64%{opacity:.86;transform:scale(.72)rotate(-5deg)}to{opacity:0;transform:scale(.16)rotate(12deg)}}@keyframes preview-pulse{0%,to{opacity:.42}50%{opacity:.68}}@keyframes clear-preview-tile{0%{transform:scale(.94)}to{transform:scale(1.03)}}@keyframes clear-preview-mark{0%{opacity:.48;transform:scale(.78)rotate(0)}to{opacity:.95;transform:scale(1.04)rotate(2deg)}}@keyframes particle-burst{0%{opacity:0;transform:translate(-50%, -50%) scale(calc(var(--particle-scale) * .55)) rotate(0)}12%{opacity:1;transform:translate(-50%, -50%) scale(calc(var(--particle-scale) * 1.24)) rotate(18deg)}72%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--particle-x)), calc(-50% + var(--particle-y))) scale(calc(var(--particle-scale) * .18)) rotate(var(--particle-rotation))}}@keyframes score-burst{0%{opacity:0;transform:translate(-50%,-34%)scale(.68)rotate(-2deg)}18%{opacity:1;transform:translate(-50%,-62%)scale(1.22)rotate(2deg)}72%{opacity:1;transform:translate(-50%,-82%)scale(1)rotate(0)}88%{opacity:.72;transform:translate(-50%,-102%)scale(.96)rotate(-1deg)}to{opacity:0;transform:translate(-50%,-124%)scale(.82)rotate(2deg)}}@keyframes sparkle-left{0%{opacity:0;transform:translate(0)rotate(0)scale(.4)}20%{opacity:1}to{opacity:0;transform:translate(-32px,-28px)rotate(-42deg)scale(1.4)}}@keyframes sparkle-right{0%{opacity:0;transform:translate(0)rotate(0)scale(.4)}20%{opacity:1}to{opacity:0;transform:translate(34px,24px)rotate(48deg)scale(1.4)}}@keyframes ghost-valid{0%{transform:scale(.98)}to{transform:scale(1.04)}}@keyframes board-nudge{0%{transform:scale(1)}50%{transform:scale(1.012)}to{transform:scale(1)}}@keyframes board-clear-kick{0%{transform:translate(0)scale(1)}18%{transform:translate(-7px,3px)scale(1.018)}36%{transform:translate(7px,-2px)scale(1.01)}56%{transform:translate(-4px,1px)scale(1.012)}to{transform:translate(0)scale(1)}}@keyframes board-game-over{0%{transform:translate(0)scale(1)}12%{transform:translate(-10px,2px)scale(1.012)}24%{transform:translate(9px,-3px)scale(1.006)}38%{transform:translate(-6px,2px)scale(1.01)}54%{transform:translate(4px,-1px)scale(1.004)}to{transform:translate(0)scale(1)}}@keyframes board-lock-flash{0%{opacity:0}18%{opacity:1}44%{opacity:.46}to{opacity:.82}}@keyframes tile-game-over{0%{filter:brightness()saturate();transform:translateY(0)scale(1)}18%{filter:brightness(1.32)saturate(1.1);transform:translateY(-2px)scale(1.04)}48%{filter:brightness(.82)saturate(.72);transform:translateY(1px)scale(.96)}to{filter:brightness(.64)saturate(.52);transform:translateY(0)scale(.92)}}@keyframes tray-blocked-jolt{0%{transform:translate(0)}22%{transform:translate(-4px)}42%{transform:translate(4px)}64%{transform:translate(-2px)}to{transform:translate(0)}}@keyframes defeat-vignette{0%{opacity:0}36%{opacity:1}to{opacity:1}}@keyframes defeat-warning-ring{0%{opacity:0;transform:scale(.94)}22%{opacity:1;transform:scale(1.018)}58%{opacity:.74;transform:scale(1)}to{opacity:.38;transform:scale(1)}}@keyframes defeat-scan{0%{opacity:0;transform:translate(-18%)}18%{opacity:.9}54%{opacity:.28}to{opacity:0;transform:translate(18%)}}@keyframes defeat-card-in{0%{opacity:0;transform:translateY(28px)scale(.84)}58%{opacity:1;transform:translateY(-5px)scale(1.035)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes profile-sheet-in{0%{opacity:0;transform:translateY(34px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width<=1080px){.game-layout{grid-template-columns:minmax(0,1fr)}.score-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.combo-card,.live-note{grid-column:span 1}.rules-panel{grid-template-columns:minmax(0,1.35fr) minmax(260px,.85fr)}.stats-dashboard,.leaderboard-card{align-content:start}}@media (width<=720px){.app-shell{padding:0}.game-card{height:var(--app-viewport-height,100svh);box-shadow:none;border:0;border-radius:0}.topbar{align-items:center;gap:10px;padding:12px 12px 8px}.app-shell--telegram{--tg-top-chrome-offset:max(env(safe-area-inset-top), var(--tg-safe-area-top), var(--tg-content-safe-area-top), 78px);--tg-bottom-chrome-offset:max(env(safe-area-inset-bottom), var(--tg-safe-area-bottom), var(--tg-content-safe-area-bottom))}.app-shell--telegram .topbar{min-height:var(--tg-top-chrome-offset);padding:max(10px, calc(var(--tg-safe-area-top) + 8px)) max(74px, calc(var(--tg-safe-area-right) + 54px)) 8px max(74px, calc(var(--tg-safe-area-left) + 54px));justify-content:center}.app-shell--telegram .brand{text-align:center;justify-content:center;min-width:0}.app-shell--telegram .brand h1{max-width:calc(100vw - 148px - var(--tg-safe-area-left) - var(--tg-safe-area-right));text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.28rem,6vw,1.72rem);line-height:1;overflow:hidden}.app-shell--telegram .topbar-actions{top:max(10px, calc(var(--tg-safe-area-top) + 8px));right:max(10px, calc(var(--tg-safe-area-right) + 10px));display:flex;position:absolute}.app-shell--telegram .topbar-actions>:not(.profile-action){display:none}.brand{gap:10px}.brand-mark,.brand p{display:none}.brand h1{letter-spacing:-.06em;font-size:1.65rem}.topbar-actions,.status-actions{gap:8px;width:auto}.telegram-badge{display:none}.profile-action{align-items:center;display:inline-flex}.primary-button,.soft-button{min-height:38px;padding-inline:13px;font-size:.82rem}.mobile-tabs{right:12px;bottom:max(10px, env(safe-area-inset-bottom));z-index:18;border:1px solid color-mix(in srgb, var(--text-main) 12%, transparent);background:color-mix(in srgb, var(--card-bg) 84%, #0b1224 16%);box-shadow:none;border-radius:24px;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:6px;padding:6px;display:grid;position:absolute;left:12px}.app-shell--telegram .mobile-tabs{right:max(12px, calc(var(--tg-safe-area-right) + 12px));bottom:max(10px, calc(var(--tg-bottom-chrome-offset) + 10px));left:max(12px, calc(var(--tg-safe-area-left) + 12px))}.mobile-tabs button{min-height:48px;color:color-mix(in srgb, var(--text-main) 66%, transparent);font:inherit;background:0 0;border:0;border-radius:18px;grid-template-columns:auto auto;justify-content:center;align-items:center;gap:7px;transition:background-color .16s,color .16s,transform .16s;display:grid}.mobile-tabs button span{background:0 0;border-radius:7px;place-items:center;width:21px;height:21px;font-size:.9rem;line-height:1;display:grid}.mobile-tabs button strong{letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:1000}.mobile-tabs .mobile-tab--active{color:var(--accent-text);background:var(--accent);box-shadow:none;transform:none}.mobile-tabs .mobile-tab--active span{background:#fff3}.game-layout{height:calc(var(--app-viewport-height,100svh) - 154px - env(safe-area-inset-bottom));max-height:none;padding:0 10px 10px;display:block;overflow:hidden}.app-shell--telegram .game-layout{height:calc(var(--app-viewport-height,100svh) - var(--tg-top-chrome-offset) - 76px - var(--tg-bottom-chrome-offset));padding-inline:max(10px, calc(var(--tg-safe-area-left) + 10px)) max(10px, calc(var(--tg-safe-area-right) + 10px))}.score-rail,.rules-panel{grid-template-columns:1fr}.score-rail,.rules-panel,.play-area,.admin-panel{height:100%;display:none;overflow:hidden}.app-shell--tab-game .play-area,.app-shell--tab-stats .rules-panel,.app-shell--tab-leaders .rules-panel,.app-shell--tab-admin .admin-panel{display:grid}.app-shell--tab-stats .rules-panel,.app-shell--tab-leaders .rules-panel,.app-shell--tab-admin .admin-panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}.app-shell--tab-stats .rules-panel{align-content:start}.app-shell--tab-stats .rules-panel .leaderboard-card,.app-shell--tab-leaders .rules-panel>:not(.leaderboard-card){display:none}.app-shell--tab-leaders .leaderboard-card{align-content:start;gap:12px}.app-shell--tab-leaders .leaderboard-list,.app-shell--tab-leaders .leaderboard-podium{gap:10px}.app-shell--tab-leaders .leaderboard-entry-button{border-radius:24px;grid-template-columns:34px 26px 50px minmax(0,1fr) auto;gap:8px;min-height:82px;padding:12px 10px}.app-shell--tab-leaders .leaderboard-avatar{width:50px;height:50px}.app-shell--tab-leaders .leaderboard-avatar strong{font-size:1.32rem}.app-shell--tab-leaders .leaderboard-rank{font-size:1.26rem}.app-shell--tab-leaders .leaderboard-medal{width:26px;height:26px;font-size:.98rem}.app-shell--tab-leaders .leaderboard-player strong{font-size:1.2rem}.app-shell--tab-leaders .leaderboard-player span{font-size:.86rem}.app-shell--tab-leaders .leaderboard-score{grid-column:auto;font-size:1.06rem}.profile-modal-overlay{padding:10px 10px 0}.profile-modal{border-bottom:0;border-radius:22px 22px 0 0;max-height:calc(100% - 10px);padding:16px}.profile-header{grid-template-columns:58px minmax(0,1fr);padding-right:42px}.profile-avatar{border-radius:18px;width:58px;height:58px}.profile-stat-grid,.profile-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-game-row{grid-template-columns:minmax(0,1fr) auto}.profile-game-row span:last-child{display:none}.score-rail,.rules-panel,.tray-panel,.admin-panel{border-radius:20px}.admin-panel{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;gap:12px;padding:12px;display:block;overflow:hidden auto}.admin-toolbar{flex-direction:column;align-items:flex-start}.admin-toolbar h2{font-size:1.5rem}.admin-toolbar-actions{justify-content:space-between;width:100%}.admin-status{max-width:min(100%,190px)}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.admin-content{gap:12px;min-height:auto;margin-top:12px;display:block;overflow:visible}.admin-tabs{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px}.admin-section-summary{flex-direction:column;align-items:stretch;margin-top:12px}.admin-section-summary input{flex-basis:auto;width:100%}.admin-card{min-height:280px;display:block;overflow:visible}.admin-card-heading{flex-direction:column;align-items:flex-start}.admin-card-heading input{width:100%}.admin-card-heading p{text-align:left}.admin-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.admin-table--scores .admin-row{grid-template-columns:minmax(0,1fr) auto}.admin-row-stat,.admin-badges,.admin-actions{grid-column:1/-1}.admin-actions{justify-content:flex-start;min-width:0}.admin-control-grid,.admin-prize-grid{grid-template-columns:1fr;padding-right:0;display:grid;overflow:visible}.admin-control-inline{grid-template-columns:1fr}.admin-prize-row{grid-template-columns:38px minmax(0,1fr)}.admin-prize-winner{grid-template-columns:1fr;align-items:start}.play-area{grid-template-rows:auto auto auto auto;align-content:start}.mobile-score-strip{border:1px solid var(--line-soft);background:var(--panel-bg);border-radius:18px;grid-template-columns:1fr auto auto;align-items:center;gap:8px;margin:0 0 8px;padding:10px 12px;display:grid;box-shadow:inset 0 -4px #00000024}.mobile-score-strip strong{color:var(--accent);font-size:1.6rem;line-height:1}.mobile-score-strip span{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:1000}.board-meta{margin:0 4px 8px;font-size:.74rem}.board-frame{border-radius:20px;padding:6px}.board{width:min(100%, calc(var(--app-viewport-height,100svh) - 360px));border-radius:15px;gap:0;min-width:280px;padding:0}.app-shell--telegram .board{width:min(100%, calc(var(--app-viewport-height,100svh) - var(--tg-top-chrome-offset) - var(--tg-bottom-chrome-offset) - 282px))}.board-cell{border-radius:0}.tray-panel{margin-top:8px;padding:0}.tray-heading{display:none}.piece-tray{border-radius:20px;gap:8px;padding:8px}.tray-slot,.tray-piece,.empty-slot{min-height:72px}.tray-piece{border-radius:14px;gap:0}.piece-preview{--piece-cell:20px;gap:0}.tray-piece>span:last-child,.empty-slot span{font-size:.64rem}.panel-section,.tips-card,.leaderboard-card,.metric-card,.combo-card,.live-note{border-radius:18px;padding:14px}.panel-section h2{font-size:1.45rem}.status-overlay{padding:14px}.status-card{border-radius:22px}}
