:root{
  --game-bg:#eef3f8;--game-panel:#fff;--game-line:#dfe6ee;--game-text:#202a36;--game-muted:#718096;
  --game-accent:#6d5dfc;--game-accent-2:#22c55e;--game-shadow:0 18px 48px rgba(48,60,84,.12)
}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 0,rgba(109,93,252,.13),transparent 28%),radial-gradient(circle at 92% 0,rgba(34,197,94,.10),transparent 26%),var(--game-bg);color:var(--game-text);font:15px/1.45 'Ubuntu',Arial,sans-serif}.hidden{display:none!important}button,select{font:inherit}
.games-page{width:min(1480px,calc(100vw - 30px));margin:0 auto;padding:18px 0 36px}.games-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.games-title{display:flex;align-items:center;gap:12px}.games-title h1{margin:0;font-size:clamp(25px,3vw,38px)}.games-kicker{color:#718096;font-size:13px}.games-title-mark{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,#6d5dfc,#9b8cff);display:grid;place-items:center;color:#fff;font-size:24px;box-shadow:0 9px 24px rgba(109,93,252,.28)}.games-top-actions{display:flex;align-items:center;gap:10px}.game-profile{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--game-line);border-radius:999px;background:#fff;font-weight:700}.profile-avatar,.leaderboard-avatar{display:grid;place-items:center;overflow:hidden;border-radius:50%;background:#d7dce3;color:#707780;font-weight:900}.profile-avatar{width:31px;height:31px}.leaderboard-avatar{width:34px;height:34px}.profile-avatar img,.leaderboard-avatar img{width:100%;height:100%;object-fit:cover}
.btn{border:0;border-radius:12px;min-height:40px;padding:9px 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;font-weight:800;text-decoration:none}.btn-primary{background:var(--game-accent);color:#fff}.btn-soft{background:#fff;color:var(--game-text);border:1px solid var(--game-line)}.btn:disabled{opacity:.45;cursor:not-allowed}
.games-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.72fr);gap:16px;align-items:start}.game-main-card,.records-card{background:var(--game-panel);border:1px solid var(--game-line);border-radius:20px;box-shadow:var(--game-shadow)}.game-main-card{padding:16px}.game-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px}.game-select-btn{border:1px solid var(--game-line);background:#f8fafc;color:var(--game-text);border-radius:12px;padding:9px 10px;font-weight:800;cursor:pointer;min-height:42px}.game-select-btn.active{border-color:transparent;background:linear-gradient(135deg,#6d5dfc,#8677ff);color:#fff;box-shadow:0 7px 18px rgba(109,93,252,.25)}
.game-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.game-head h2{margin:0 0 3px;font-size:24px}.game-head p{margin:0;color:var(--game-muted)}.game-score-box{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.game-score{padding:7px 11px;border-radius:11px;background:#eef2ff;color:#4338ca;font-size:18px;font-weight:900}.game-state-badge{padding:6px 9px;border-radius:999px;font-size:12px;font-weight:900}.game-state-badge.idle{background:#edf2f7;color:#64748b}.game-state-badge.running{background:#dcfce7;color:#15803d}.game-state-badge.paused{background:#fff7d6;color:#a16207}.game-meta{min-height:18px;color:var(--game-muted);font-size:12px;margin-top:5px}
/* Светлая рамка вокруг игрового поля специально контрастирует с тёмными canvas-играми. */
.game-stage-shell{padding:10px;border:1px solid #cfd7ee;border-radius:22px;background:linear-gradient(145deg,#edf1ff,#dfe9f6 58%,#edf8f2);box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 10px 30px rgba(61,76,110,.10)}
.game-stage-wrap{display:flex;align-items:center;justify-content:center;position:relative;border-radius:17px;padding:18px;background:repeating-linear-gradient(135deg,rgba(255,255,255,.75) 0,rgba(255,255,255,.75) 14px,rgba(232,237,249,.9) 14px,rgba(232,237,249,.9) 28px);min-height:440px;overflow:hidden;border:1px solid rgba(123,139,180,.22)}
.game-canvas{display:block;width:min(100%,620px);height:auto;max-height:68vh;aspect-ratio:1/1;border-radius:13px;background:#111827;box-shadow:0 18px 46px rgba(15,23,42,.35),0 0 0 2px rgba(255,255,255,.85)}.game-canvas.is-square{aspect-ratio:1/1}.game-canvas.is-tetris{width:min(100%,390px);aspect-ratio:1/2}.game-canvas.is-wide{width:min(100%,720px);aspect-ratio:16/13}.game-canvas.is-runner{width:min(100%,960px);aspect-ratio:16/9}
.game-pause-overlay,.game-start-overlay{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;background:rgba(38,48,70,.54);backdrop-filter:blur(2px)}.game-start-overlay{background:rgba(63,73,104,.32)}.pause-card{min-width:min(330px,calc(100% - 30px));padding:22px;border-radius:18px;background:#fff;text-align:center;box-shadow:0 18px 60px rgba(0,0,0,.26);border:1px solid rgba(255,255,255,.8)}.pause-card h3{margin:0 0 12px;font-size:22px}.game-overlay-summary{margin:-3px 0 14px;color:var(--game-muted);font-size:13px;font-weight:700}
.game-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.game-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.game-hint{color:var(--game-muted);font-size:12px}.touch-controls{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:13px}.touch-btn{width:54px;height:48px;border:1px solid var(--game-line);border-radius:13px;background:#f7f9fc;font-weight:900;font-size:19px;touch-action:manipulation}.touch-btn.wide{width:auto;min-width:130px;padding:0 14px}.touch-help{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border-radius:12px;background:#f7f9fc;border:1px solid var(--game-line);color:var(--game-muted);font-size:13px;text-align:center}.compact-controls{align-items:center}.snake-pad{display:grid;grid-template-columns:repeat(3,54px);grid-template-areas:'. up .' 'left down right';gap:7px}.snake-pad [data-game-action=up]{grid-area:up}.snake-pad [data-game-action=left]{grid-area:left}.snake-pad [data-game-action=down]{grid-area:down}.snake-pad [data-game-action=right]{grid-area:right}.tetris-pad .touch-btn{width:auto;min-width:54px;padding:0 13px}
.records-column{display:grid;gap:14px;position:sticky;top:14px}.records-card{padding:15px}.records-card h3{margin:0 0 11px;font-size:18px}.records-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.records-card-head h3{margin:0}.record-select{min-height:36px;border:1px solid var(--game-line);border-radius:10px;background:#fff;padding:6px 9px;max-width:180px}.personal-record-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 3px;border-bottom:1px solid #edf0f4}.personal-record-row:last-child{border-bottom:0}.personal-record-row b{font-size:17px;color:#4f46e5}.leaderboard-row{display:grid;grid-template-columns:28px 34px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 7px;border-radius:11px}.leaderboard-row:nth-child(odd){background:#f8fafc}.leaderboard-row.is-me{background:#eef2ff;box-shadow:inset 0 0 0 1px #c7d2fe}.leaderboard-rank{font-weight:900;color:#64748b;text-align:center}.leaderboard-name{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:700}.leaderboard-score{font-size:16px}.records-empty{padding:14px;color:var(--game-muted);text-align:center}.game-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:30;padding:10px 16px;border-radius:999px;background:#202938;color:#fff;font-weight:700;box-shadow:0 12px 35px rgba(0,0,0,.25)}
@media (hover:hover){.game-select-btn:hover,.touch-btn:hover,.btn:hover{transform:translateY(-1px)}}
@media (max-width:1100px){.game-picker{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:950px){.games-layout{grid-template-columns:1fr}.records-column{position:static;grid-template-columns:1fr 1fr}.game-stage-wrap{min-height:360px}}
@media (max-width:650px){.games-page{width:min(100% - 16px,1480px);padding-top:8px}.games-topbar{align-items:flex-start}.games-title-mark{width:40px;height:40px;border-radius:12px}.games-top-actions{flex-direction:column;align-items:flex-end}.game-profile{max-width:155px}.game-main-card,.records-card{border-radius:15px}.game-main-card{padding:10px}.game-picker{grid-template-columns:1fr 1fr}.game-select-btn{min-height:46px;padding:8px 6px}.game-head{flex-direction:column}.game-score-box{justify-content:flex-start}.game-stage-shell{padding:5px;border-radius:17px}.game-stage-wrap{padding:7px;min-height:0;border-radius:13px}.game-canvas{width:100%;max-height:none}.game-canvas.is-tetris{width:min(100%,330px)}.game-toolbar{align-items:flex-start;flex-direction:column}.game-toolbar-actions{width:100%}.game-toolbar-actions .btn{flex:1}.game-hint{display:none}.records-column{grid-template-columns:1fr}.touch-btn{min-height:50px}.records-card{padding:12px}.games-title h1{font-size:23px}.records-card-head{align-items:flex-start}.record-select{max-width:150px}}
@media (hover:hover) and (pointer:fine){.touch-controls{display:none!important}}

/* --- Морской бой --- */
.battleship-root{width:100%;max-width:980px;min-width:0;padding:2px;color:var(--game-text)}
.battleship-lobby,.battleship-setup-wrap,.battleship-battle-wrap{width:100%;display:grid;gap:14px}
.battleship-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.battleship-mode-card{min-width:0;border:1px solid #cfd7ee;border-radius:16px;background:rgba(255,255,255,.94);padding:16px;text-align:left;display:grid;gap:7px;color:var(--game-text);box-shadow:0 8px 22px rgba(62,78,115,.09)}
button.battleship-mode-card{cursor:pointer}.battleship-mode-card>b{font-size:17px}.battleship-mode-card>span:not(.battleship-mode-icon){color:var(--game-muted);font-size:13px}.battleship-mode-icon{font-size:28px}
.battleship-challenge-controls{display:flex;gap:8px;margin-top:4px}.battleship-challenge-controls select{min-width:0;flex:1;border:1px solid var(--game-line);border-radius:11px;background:#fff;padding:8px 10px;min-height:42px}
.battleship-stats-strip{display:grid;grid-template-columns:1fr 1fr;gap:8px}.battleship-stats-strip>div{display:grid;gap:3px;padding:11px 13px;border:1px solid #dbe3f1;border-radius:13px;background:rgba(247,250,255,.9)}.battleship-stats-strip span{font-size:12px;color:var(--game-muted)}.battleship-stats-strip b{font-size:14px}
.battleship-list-section{border:1px solid #dce4ef;border-radius:15px;background:rgba(255,255,255,.92);padding:12px}.battleship-list-section h3{margin:0 0 9px;font-size:16px}.battleship-list-section.is-incoming{border-color:#f7c879;background:#fffaf0}.battleship-match-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 5px;border-top:1px solid #edf1f5}.battleship-match-row:first-of-type{border-top:0}.battleship-opponent{display:flex;align-items:center;gap:9px;min-width:0}.battleship-opponent>div{display:grid;min-width:0}.battleship-opponent b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.battleship-opponent span{font-size:12px;color:var(--game-muted)}.battleship-avatar{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:50%;overflow:hidden;background:#e5eaf2}.battleship-avatar img{width:100%;height:100%;object-fit:cover}.battleship-match-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.battleship-empty{padding:12px;text-align:center;color:var(--game-muted)}
.battleship-message-card{width:min(540px,100%);margin:18px auto;padding:25px;border:1px solid #d6dfec;border-radius:18px;background:#fff;text-align:center;box-shadow:0 12px 30px rgba(55,70,103,.12)}.battleship-message-card h3{margin:4px 0 7px;font-size:22px}.battleship-message-card p{margin:0 0 16px;color:var(--game-muted)}.battleship-big-icon{font-size:44px}.battleship-centered-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}
.battleship-match-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #d9e1ee;border-radius:14px;background:rgba(255,255,255,.94)}.battleship-match-title{display:flex;align-items:flex-start;gap:9px;min-width:0}.battleship-match-title h3{margin:0;font-size:18px}.battleship-match-title p{margin:3px 0 0;color:var(--game-muted);font-size:12px}.battleship-back-icon{width:35px;height:35px;flex:0 0 35px;border:1px solid var(--game-line);border-radius:10px;background:#fff;cursor:pointer;font-size:18px}.battleship-vs{white-space:nowrap;padding:7px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-weight:800;font-size:13px}.battleship-vs span{padding:0 4px}
.battleship-setup-toolbar{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.battleship-fleet-picker{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:9px 11px;border:1px solid #dbe3ee;border-radius:13px;background:rgba(255,255,255,.88)}.battleship-fleet-picker>span{font-size:12px;color:var(--game-muted);margin-right:3px}.battleship-ship-chip{border:1px solid #ccd6e5;border-radius:9px;background:#fff;padding:6px 8px;color:#64748b;cursor:pointer;font-size:12px;letter-spacing:1px}.battleship-ship-chip.active{border-color:#6d5dfc;box-shadow:0 0 0 2px rgba(109,93,252,.12);color:#4338ca}.battleship-ship-chip.placed{background:#eaf8ef;border-color:#b7e1c5;color:#15803d}.battleship-placement-hint{font-size:12px;color:var(--game-muted);text-align:center}.battleship-single-board{display:flex;justify-content:center}
.battleship-boards{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.battleship-board-card{min-width:0;padding:11px;border:1px solid #d4deeb;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(53,69,102,.08);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.battleship-board-card.is-active-target{border-color:#61b97a;background:#fbfffc;box-shadow:0 0 0 3px rgba(34,197,94,.12),0 10px 28px rgba(53,69,102,.10)}.battleship-board-heading{display:grid;justify-items:center;gap:3px;margin-bottom:8px;text-align:center}.battleship-board-card h4{margin:0;font-size:14px}.battleship-board-role{min-height:18px;padding:2px 7px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:10px;font-weight:800}.battleship-board-role.is-active{background:#dcfce7;color:#166534}.battleship-grid-wrap{width:min(100%,430px);margin:0 auto}.battleship-col-labels{display:grid;grid-template-columns:24px repeat(10,minmax(0,1fr));padding-bottom:3px}.battleship-col-labels span,.battleship-row-labels span{display:grid;place-items:center;font-size:10px;font-weight:800;color:#768397}.battleship-row-area{display:grid;grid-template-columns:24px minmax(0,1fr)}.battleship-row-labels{display:grid;grid-template-rows:repeat(10,minmax(0,1fr))}.battleship-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-template-rows:repeat(10,minmax(0,1fr));aspect-ratio:1/1;border:1px solid #8da3bb;background:#c7d9e9;overflow:hidden}.battleship-cell{appearance:none;position:relative;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;border:0;border-right:1px solid rgba(83,113,143,.45);border-bottom:1px solid rgba(83,113,143,.45);background:linear-gradient(145deg,#e9f5ff,#cce6f7);color:#fff;font-size:clamp(12px,2vw,21px);font-weight:900;line-height:1;padding:0;display:grid;place-items:center;user-select:none;-webkit-user-select:none}.battleship-cell:nth-child(10n){border-right:0}.battleship-cell:nth-last-child(-n+10){border-bottom:0}.battleship-cell.has-ship{background:linear-gradient(145deg,#7d8a9b,#586678)}.battleship-cell.can-fire{cursor:crosshair}.battleship-cell.can-fire:hover{background:#fff1b8;box-shadow:inset 0 0 0 2px #f2b84b}.battleship-cell.shot-miss{background:#d6e9f7;color:#64748b}.battleship-cell.shot-hit{background:#e7833f;color:#fff}.battleship-cell.sunk-ship,.battleship-cell.shot-sunk{background:#8f2430;color:#fff}.battleship-cell.shot-sunk{box-shadow:inset 0 0 0 2px rgba(72,12,22,.42)}.battleship-cell.shot-miss::after{content:'';position:absolute;left:50%;top:50%;width:18%;height:18%;transform:translate(-50%,-50%);border-radius:50%;background:#6f8ca4;pointer-events:none}.battleship-cell.shot-hit::after,.battleship-cell.shot-sunk::after{content:'×';position:absolute;inset:0;display:grid;place-items:center;font-size:1.2em;line-height:1;pointer-events:none}.battleship-cell.is-recent-shot{animation:battleshipShotPulse .55s ease}.battleship-cell.placement-cell{cursor:pointer}.battleship-cell.placement-cell:hover{box-shadow:inset 0 0 0 2px #6d5dfc;z-index:1}
@keyframes battleshipShotPulse{0%{transform:scale(.72);filter:brightness(1.7)}55%{transform:scale(1.08)}100%{transform:scale(1);filter:none}}
.battleship-howto{display:flex;align-items:flex-start;justify-content:center;gap:7px;flex-wrap:wrap;padding:9px 12px;border:1px solid #dbe5f0;border-radius:12px;background:#f8fbff;color:#526173;font-size:12px;text-align:center}.battleship-howto b{color:#263648}.battleship-howto strong{color:#166534}
.battleship-turn-banner{padding:10px 13px;border-radius:12px;text-align:center;font-weight:800}.battleship-turn-banner.my-turn{background:#dcfce7;color:#166534}.battleship-turn-banner.wait-turn{background:#fff7d6;color:#8a5a00}.battleship-turn-banner.win{background:#dcfce7;color:#166534}.battleship-turn-banner.lose{background:#fee2e2;color:#991b1b}.battleship-legend{display:flex;align-items:center;justify-content:center;gap:13px;flex-wrap:wrap;font-size:11px;color:var(--game-muted)}.battleship-legend span{display:flex;align-items:center;gap:5px}.legend-dot{width:11px;height:11px;border-radius:3px;display:inline-block}.legend-dot.ship{background:#64748b}.legend-dot.miss{background:#8bb3d2;border-radius:50%}.legend-dot.hit{background:#e7833f}.legend-dot.sunk{background:#8f2430}.btn-danger-soft{background:#fff1f2;color:#b42334;border:1px solid #fecdd3}.leaderboard-score small{display:block;font-size:10px;color:var(--game-muted);font-weight:700;text-align:right}.personal-record-battleship b{font-size:13px}

@media (max-width:760px){
  .battleship-mode-grid,.battleship-stats-strip,.battleship-boards{grid-template-columns:1fr}.battleship-match-top{flex-direction:column}.battleship-vs{white-space:normal}.battleship-board-card{padding:7px}.battleship-grid-wrap{width:min(100%,390px)}.battleship-cell{font-size:15px}.battleship-match-row{align-items:flex-start;flex-direction:column}.battleship-match-actions{width:100%;justify-content:flex-start}.battleship-match-actions .btn{flex:1}.battleship-challenge-controls{flex-direction:column}.battleship-challenge-controls .btn{width:100%}.battleship-setup-toolbar .btn{flex:1 1 45%}.battleship-root{padding:0}.battleship-lobby,.battleship-setup-wrap,.battleship-battle-wrap{gap:10px}
}
@media (max-width:430px){.battleship-howto{padding:8px 9px}.battleship-board-role{font-size:9px}.battleship-col-labels{grid-template-columns:19px repeat(10,minmax(0,1fr))}.battleship-row-area{grid-template-columns:19px minmax(0,1fr)}.battleship-cell{font-size:12px}.battleship-board-card{padding:5px}.battleship-fleet-picker{padding:7px}.battleship-ship-chip{padding:5px 6px}.battleship-centered-actions .btn{flex:1 1 auto}}
@media (prefers-reduced-motion:reduce){.battleship-cell.is-recent-shot{animation-duration:.01ms!important}}
.battleship-cell.sunk-ship{background:#8f2430;color:#fff}
.battleship-ranking-note{margin:-2px 0 8px;padding:7px 9px;border-radius:9px;background:#f5f7ff;color:#667085;font-size:11px;text-align:center}

/* --- Run & Gun --- */
.runner-controls{gap:12px}.runner-controls .touch-btn{width:auto;min-width:145px;height:56px;padding:0 18px;font-size:16px}.runner-jump-btn{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}.runner-fire-btn{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.game-canvas.is-runner{touch-action:manipulation}
@media (max-width:650px){.runner-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}.runner-controls .touch-btn{width:100%;min-width:0}.game-meta{line-height:1.55}}

/* --- Шахматы --- */
.special-game-root{width:100%;max-width:100%}
.chess-lobby{width:min(760px,100%);margin:0 auto}.chess-mode-card{width:100%}.chess-stats-strip{grid-template-columns:1fr 1fr}
.chess-match-wrap{display:grid;gap:12px;width:min(930px,100%);margin:0 auto}.chess-status{padding:10px 13px;border-radius:12px;text-align:center;font-weight:800}.chess-status.my-turn{background:#dcfce7;color:#166534}.chess-status.wait-turn{background:#fff7d6;color:#8a5a00}.chess-status.win{background:#dcfce7;color:#166534}.chess-status.lose{background:#fee2e2;color:#991b1b}.chess-status.draw{background:#eef2ff;color:#4338ca}
.chess-game-grid{display:grid;grid-template-columns:minmax(320px,620px) minmax(210px,1fr);gap:14px;align-items:start}.chess-board-card{padding:10px;border:1px solid #d4deeb;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(53,69,102,.10)}.chess-board{display:grid;grid-template-columns:repeat(8,1fr);width:100%;aspect-ratio:1/1;border:2px solid #5b6472;border-radius:5px;overflow:hidden;background:#e7d5b5}.chess-square{position:relative;appearance:none;border:0;padding:0;display:grid;place-items:center;min-width:0;min-height:0;cursor:default;font-family:"Segoe UI Symbol","Noto Sans Symbols 2",serif;line-height:1;user-select:none;-webkit-user-select:none}.chess-square.light{background:#eadcc2}.chess-square.dark{background:#8f765f}.chess-square.last-move{box-shadow:inset 0 0 0 999px rgba(250,204,21,.24)}.chess-square.can-select{cursor:pointer}.chess-square.can-select:hover{box-shadow:inset 0 0 0 4px rgba(79,70,229,.35)}.chess-square.selected{box-shadow:inset 0 0 0 5px rgba(79,70,229,.68)}.chess-square.move-target::after{content:"";position:absolute;width:24%;height:24%;border-radius:50%;background:rgba(30,64,175,.5);pointer-events:none}.chess-square.capture-target::after{content:"";position:absolute;inset:7%;border:5px solid rgba(185,28,28,.62);border-radius:50%;pointer-events:none}.chess-piece{position:relative;z-index:1;font-size:clamp(27px,5.6vw,58px);filter:drop-shadow(0 1px 1px rgba(0,0,0,.2));transform:translateY(-1px)}.chess-piece.white{color:#fff;text-shadow:0 0 1px #111,0 1px 2px rgba(0,0,0,.75)}.chess-piece.black{color:#171717;text-shadow:0 1px 1px rgba(255,255,255,.16)}.chess-rank-label,.chess-file-label{position:absolute;z-index:2;font-family:Ubuntu,sans-serif;font-size:10px;font-weight:800;pointer-events:none;opacity:.82}.chess-rank-label{left:3px;top:2px}.chess-file-label{right:3px;bottom:2px}.chess-square.light .chess-rank-label,.chess-square.light .chess-file-label{color:#745f4d}.chess-square.dark .chess-rank-label,.chess-square.dark .chess-file-label{color:#f4e9d8}
.chess-side-panel{display:grid;gap:10px}.chess-color-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #dce4ef;border-radius:12px;background:#fff;font-size:13px}.chess-color-row span{display:flex;align-items:center;gap:7px;color:var(--game-muted)}.chess-color-dot{width:15px;height:15px;border-radius:4px;border:1px solid #8b95a5}.chess-color-dot.white{background:#fff}.chess-color-dot.black{background:#23272f}.chess-history{min-height:190px;padding:11px;border:1px solid #dce4ef;border-radius:13px;background:#fff}.chess-history h4{margin:0 0 8px;font-size:14px}.chess-history-empty{padding:16px 5px;color:var(--game-muted);font-size:12px;text-align:center}.chess-history-list{display:grid;gap:3px;max-height:280px;overflow:auto}.chess-history-row{display:grid;grid-template-columns:30px 1fr 1fr;gap:6px;padding:4px 3px;border-bottom:1px solid #eef2f6;font-size:12px}.chess-history-row span{color:var(--game-muted)}.chess-history-row b{font-weight:700}
.chess-promotion-backdrop{position:absolute;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.42);border-radius:18px}.chess-match-wrap{position:relative}.chess-promotion-card{width:min(360px,100%);display:grid;gap:13px;padding:20px;border-radius:16px;background:#fff;box-shadow:0 18px 48px rgba(15,23,42,.25);text-align:center}.chess-promotion-card h4{margin:0}.chess-promotion-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.chess-promotion-options button{aspect-ratio:1/1;border:1px solid #d3dbea;border-radius:12px;background:#f8fafc;cursor:pointer;font-family:"Segoe UI Symbol","Noto Sans Symbols 2",serif;font-size:42px}.chess-promotion-options button:hover{border-color:#6d5dfc;background:#eef2ff}
@media (max-width:820px){.chess-game-grid{grid-template-columns:1fr}.chess-side-panel{grid-template-columns:1fr 1fr}.chess-history{grid-column:1/-1}.chess-side-panel .battleship-centered-actions{grid-column:1/-1}.chess-piece{font-size:clamp(30px,9vw,56px)}}
@media (max-width:520px){.chess-stats-strip,.chess-side-panel{grid-template-columns:1fr}.chess-history,.chess-side-panel .battleship-centered-actions{grid-column:auto}.chess-board-card{padding:4px}.chess-piece{font-size:clamp(24px,10vw,43px)}.chess-rank-label,.chess-file-label{font-size:8px}.chess-promotion-options button{font-size:34px}}

/* --- Ферма: этап 1 --- */
.farm-root{padding:0}.farm-shell{display:grid;gap:12px;width:min(1180px,100%);margin:0 auto}.farm-loading,.farm-error{padding:36px 18px;text-align:center;color:var(--game-muted);font-weight:700}.farm-error{color:#a12c38}.farm-busy{pointer-events:none;opacity:.82}.farm-summary{display:grid;grid-template-columns:120px 160px 140px minmax(220px,1fr);gap:9px}.farm-summary-stat,.farm-summary-progress{min-height:64px;padding:10px 12px;border:1px solid #dbe4ef;border-radius:13px;background:#fff;box-shadow:0 5px 16px rgba(50,68,96,.07)}.farm-summary-stat{display:grid;align-content:center;gap:3px}.farm-summary-stat span,.farm-progress-head span{font-size:11px;color:var(--game-muted);font-weight:700}.farm-summary-stat b{font-size:18px}.farm-summary-progress{display:grid;align-content:center;gap:8px}.farm-progress-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.farm-progress-head b{font-size:12px}.farm-progress-track{height:10px;border-radius:999px;background:#edf1f6;overflow:hidden}.farm-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#73ad5d,#c5b54c);transition:width .25s ease}
.farm-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px;align-items:start}.farm-main-column,.farm-side-column{display:grid;gap:12px}.farm-panel{border:1px solid #dbe4ef;border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(48,68,101,.07);padding:13px}.farm-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.farm-panel-head h3,.farm-help-panel h3{margin:0 0 3px;font-size:15px}.farm-panel-head p{margin:0;font-size:11px;color:var(--game-muted);line-height:1.45}.farm-small-btn{padding:7px 10px;font-size:11px;white-space:nowrap}.farm-small-btn.is-muted{opacity:.55}
.farm-crop-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.farm-crop-card{appearance:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;padding:8px;border:1px solid #d8e2ec;border-radius:12px;background:#fbfdf9;color:#263648;text-align:left;cursor:pointer;min-width:0}.farm-crop-card:hover:not(:disabled){border-color:#86a86e;background:#f4faef}.farm-crop-card.selected{border-color:#5f9748;box-shadow:inset 0 0 0 2px rgba(95,151,72,.18);background:#eef8e9}.farm-crop-card.locked{cursor:not-allowed;opacity:.48;filter:saturate(.65)}.farm-crop-emoji{font-size:27px;line-height:1}.farm-crop-copy{display:grid;gap:2px;min-width:0}.farm-crop-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.farm-crop-copy small{font-size:9px;color:var(--game-muted);line-height:1.25}.farm-crop-yield{display:grid;gap:1px;text-align:right;font-size:11px;font-weight:800;color:#3b6631}.farm-crop-yield small{font-size:8px;color:#8a6a20}
.farm-map{--farm-cols:12;--farm-rows:8;position:relative;display:grid;grid-template-columns:repeat(var(--farm-cols),minmax(0,1fr));grid-template-rows:repeat(var(--farm-rows),minmax(0,1fr));gap:3px;width:100%;aspect-ratio:12/8;padding:8px;border:1px solid #96ad75;border-radius:18px;overflow:hidden;background:linear-gradient(160deg,rgba(255,255,255,.16),transparent 38%),repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 30px),#8db86a;box-shadow:inset 0 0 0 3px rgba(255,255,255,.12)}.farm-map::after{content:"";position:absolute;inset:auto -8% -19% -8%;height:33%;background:#739951;border-radius:50% 50% 0 0;opacity:.7;pointer-events:none}.farm-house{grid-column:8/span 4;grid-row:1/span 3;z-index:1;display:grid;place-items:center;align-content:center;gap:1px;border:2px solid rgba(111,76,38,.25);border-radius:18px;background:linear-gradient(150deg,#efe3bc,#d6b987);box-shadow:0 5px 9px rgba(51,64,36,.18)}.farm-house span{font-size:clamp(38px,7vw,68px);line-height:1}.farm-house small{font-size:10px;font-weight:800;color:#694c2f}.farm-pond{grid-column:5/span 3;grid-row:1/span 2;z-index:1;display:grid;place-items:center;border-radius:50% 40% 50% 45%;background:#73bfd4;border:3px solid rgba(255,255,255,.24);font-size:25px;opacity:.9}.farm-plot{appearance:none;position:relative;z-index:2;display:grid;place-items:center;align-content:center;gap:1px;min-width:0;min-height:0;padding:3px;border:2px solid #875a34;border-radius:11px;background:linear-gradient(145deg,#805334,#674128);color:#fff;cursor:pointer;overflow:hidden;box-shadow:0 3px 5px rgba(57,38,22,.22)}.farm-plot:hover{transform:translateY(-1px);box-shadow:0 5px 8px rgba(57,38,22,.3)}.farm-soil-lines{position:absolute;inset:7px;background:repeating-linear-gradient(90deg,transparent 0 13%,rgba(35,18,10,.24) 14% 18%,transparent 19% 32%);border-radius:7px;pointer-events:none}.farm-plot.empty{border-style:dashed;background:#8c6342;color:#f2dfc2}.farm-empty-plus{position:relative;z-index:1;font-size:24px;font-weight:400;line-height:.8}.farm-plot.empty small{position:relative;z-index:1;font-size:8px}.farm-plant{position:relative;z-index:1;font-size:clamp(25px,5vw,46px);line-height:1;filter:drop-shadow(0 2px 1px rgba(0,0,0,.18))}.farm-plot b,.farm-plot small{position:relative;z-index:1}.farm-plot b{font-size:9px;text-shadow:0 1px 2px rgba(0,0,0,.35)}.farm-countdown{font-size:8px;font-weight:800;padding:2px 5px;border-radius:999px;background:rgba(0,0,0,.26)}.farm-plot.growing::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.1) 50%,transparent 65%);transform:translateX(-100%);animation:farmGrowShine 3.2s linear infinite;pointer-events:none}.farm-plot.ready{border-color:#f0c84c;box-shadow:0 0 0 3px rgba(255,223,91,.26),0 4px 9px rgba(57,38,22,.3);animation:farmReadyPulse 1.5s ease-in-out infinite}.farm-plot.ready .farm-countdown{background:#f5d35d;color:#4f4014}.farm-field-hint{margin-top:8px;padding:7px 9px;border-radius:10px;background:#f5f8ee;color:#5d6d54;font-size:10px;line-height:1.4}
.farm-inventory-list{display:grid;gap:6px}.farm-inventory-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;border:1px solid #e0e7ef;border-radius:11px;background:#fafcfd}.farm-inventory-row.empty{opacity:.55}.farm-inventory-icon{font-size:23px}.farm-inventory-name{display:grid;gap:1px}.farm-inventory-name b{font-size:11px}.farm-inventory-name small{font-size:9px;color:var(--game-muted)}.farm-inventory-row>strong{font-size:14px}.farm-inventory-actions{grid-column:2/4;display:grid;grid-template-columns:1fr 1fr;gap:5px}.farm-inventory-actions button{appearance:none;border:1px solid #d5deea;border-radius:8px;background:#fff;padding:5px 6px;font-size:9px;font-weight:800;color:#4f5d6f;cursor:pointer}.farm-inventory-actions button:hover:not(:disabled){background:#eef6e9;border-color:#9fbd8d;color:#416235}.farm-inventory-actions button:disabled{opacity:.45;cursor:not-allowed}.farm-help-panel ol{margin:8px 0 10px;padding-left:19px;color:#536174;font-size:11px;line-height:1.55}.farm-stage-note{padding:9px;border-radius:10px;background:#f2f0ff;color:#5a4e8c;font-size:10px;line-height:1.45}
@keyframes farmGrowShine{to{transform:translateX(100%)}}@keyframes farmReadyPulse{0%,100%{filter:none}50%{filter:brightness(1.12)}}
@media (max-width:980px){.farm-summary{grid-template-columns:repeat(3,1fr)}.farm-summary-progress{grid-column:1/-1}.farm-layout{grid-template-columns:1fr}.farm-side-column{grid-template-columns:1fr 1fr}.farm-crop-list{grid-template-columns:repeat(3,1fr)}}
@media (max-width:650px){.farm-summary{grid-template-columns:repeat(3,1fr);gap:6px}.farm-summary-stat,.farm-summary-progress{min-height:56px;padding:8px}.farm-summary-stat span{font-size:9px}.farm-summary-stat b{font-size:14px}.farm-layout{gap:8px}.farm-panel{padding:9px;border-radius:13px}.farm-panel-head{align-items:center}.farm-crop-list{grid-template-columns:1fr 1fr}.farm-crop-card{grid-template-columns:auto minmax(0,1fr);padding:7px}.farm-crop-yield{display:none}.farm-map{padding:5px;gap:2px;border-radius:13px}.farm-plot{border-width:1px;border-radius:7px}.farm-plant{font-size:clamp(20px,7vw,35px)}.farm-plot b{display:none}.farm-countdown{font-size:7px;padding:1px 3px}.farm-house{border-radius:11px}.farm-house small{display:none}.farm-side-column{grid-template-columns:1fr}.farm-help-panel{display:none}.farm-small-btn{padding:6px 8px}.farm-field-hint{font-size:9px}}
@media (max-width:420px){.farm-summary{grid-template-columns:1fr 1fr}.farm-summary-progress{grid-column:1/-1}.farm-summary-stat:nth-child(3){display:none}.farm-crop-list{grid-template-columns:1fr}.farm-crop-card{grid-template-columns:auto minmax(0,1fr) auto}.farm-crop-yield{display:grid}.farm-panel-head p{display:none}.farm-map{aspect-ratio:1.2/1}.farm-house span{font-size:34px}.farm-pond{font-size:17px}.farm-empty-plus{font-size:18px}.farm-plot.empty small{display:none}}
@media (prefers-reduced-motion:reduce){.farm-plot.growing::after,.farm-plot.ready{animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* --- Ферма: этап 2 — производство, стройка и хранилища --- */
.farm-stage2{gap:10px}.farm-stage2 .farm-summary{grid-template-columns:100px 135px 115px 135px 135px minmax(180px,1fr)}.farm-summary-storage{min-height:64px;padding:9px 11px;border:1px solid #dbe4ef;border-radius:13px;background:#fff;box-shadow:0 5px 16px rgba(50,68,96,.07);display:grid;align-content:center;gap:4px}.farm-summary-storage>span{font-size:10px;color:var(--game-muted);font-weight:800}.farm-summary-storage>b{font-size:12px}.farm-storage-track{height:7px;border-radius:999px;background:#edf1f6;overflow:hidden}.farm-storage-track i{display:block;height:100%;border-radius:inherit;background:#72a75d}.farm-storage-track.warning i{background:#d2a83e}.farm-storage-track.danger i{background:#cf5d5d}.farm-crew-banner{display:flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid #ead8aa;border-radius:11px;background:#fff8df;color:#735e24;font-size:10px}.farm-crew-banner.available{border-color:#d7e7d0;background:#f2faef;color:#45603c}.farm-crew-banner .farm-live-time{margin-left:auto;font-weight:900;white-space:nowrap}
.farm-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:5px;border:1px solid #dbe4ef;border-radius:14px;background:#eef3f7}.farm-tab-btn{appearance:none;border:0;border-radius:10px;background:transparent;padding:8px 9px;color:#667486;font-size:11px;font-weight:900;cursor:pointer}.farm-tab-btn:hover{background:rgba(255,255,255,.65)}.farm-tab-btn.active{background:#fff;color:#385b31;box-shadow:0 3px 9px rgba(44,62,86,.10)}.farm-tab-btn i{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 4px;margin-left:3px;border-radius:999px;background:#6b9e56;color:#fff;font-style:normal;font-size:8px}.farm-tab-body{min-width:0}.farm-fields-layout{grid-template-columns:minmax(0,1fr) 240px}.farm-side-column.single{grid-template-columns:1fr}.farm-copy{margin:5px 0 0;font-size:11px;color:#5f6e80;line-height:1.55}.farm-wide-btn{width:100%;margin-top:9px;font-size:10px}.farm-storage-large{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;align-items:center;padding:7px 0}.farm-storage-large>span{font-size:11px}.farm-storage-large>b{font-size:11px}.farm-storage-large .farm-storage-track{grid-column:1/-1;height:8px}.farm-storage-large.compact{min-width:170px;padding:0}
.farm-tab-heading{padding:2px 2px 0}.farm-production-layout,.farm-construction-layout,.farm-inventory-page{display:grid;gap:10px}.farm-production-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.farm-production-card{display:grid;gap:9px;border:1px solid #dbe4ef;border-radius:15px;background:#fff;padding:11px;box-shadow:0 6px 18px rgba(45,64,92,.06);min-width:0}.farm-production-card.unavailable{background:#fbfbfa}.farm-production-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.farm-building-emoji{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#f0f5ea;font-size:25px}.farm-production-card h3,.farm-building-card h3{margin:0;font-size:13px}.farm-production-card h3 small,.farm-building-card h3 small{font-size:9px;color:#6e7d8f}.farm-production-card header p,.farm-building-card p{margin:2px 0 0;color:var(--game-muted);font-size:9px;line-height:1.35}.farm-queue-count{min-width:34px;padding:4px 6px;text-align:center;border-radius:999px;background:#eef2f7;color:#607083;font-size:9px;font-weight:900}.farm-production-disabled{padding:8px;border-radius:9px;background:#fff6de;color:#806825;font-size:9px}.farm-recipe-list{display:grid;gap:5px}.farm-recipe{appearance:none;position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:7px;align-items:center;padding:7px;border:1px solid #dde6ed;border-radius:10px;background:#fbfdfb;text-align:left;cursor:pointer;color:#2f3b48}.farm-recipe:hover:not(:disabled){border-color:#89ad78;background:#f2f9ee}.farm-recipe.disabled{opacity:.53;cursor:not-allowed}.farm-recipe-emoji{font-size:21px}.farm-recipe-main{display:grid;gap:2px;min-width:0}.farm-recipe-main b{font-size:10px}.farm-recipe-main small{font-size:8px;color:#6e7d8d;line-height:1.35}.farm-recipe-main small span.missing{color:#ba4c55;font-weight:800}.farm-recipe-output{display:grid;justify-items:end;gap:1px;font-size:10px;font-weight:900;white-space:nowrap}.farm-recipe-output small{font-size:7px;color:#7a8795;font-weight:700}.farm-recipe em{position:absolute;right:5px;top:3px;padding:2px 4px;border-radius:6px;background:#eeeaf8;color:#67578c;font-size:7px;font-style:normal;font-weight:800}.farm-queue{display:grid;gap:4px;padding-top:2px}.farm-queue-title{font-size:9px;font-weight:900;color:#647386;text-transform:uppercase;letter-spacing:.04em}.farm-queue-empty{padding:8px;border:1px dashed #d7e0e8;border-radius:9px;color:#8793a1;text-align:center;font-size:9px}.farm-job{display:grid;grid-template-columns:20px 25px minmax(0,1fr) auto auto;gap:5px;align-items:center;padding:6px;border-radius:9px;background:#f6f8fa;border:1px solid #e6ebf0}.farm-job.ready{background:#f2f9e9;border-color:#c8ddb9}.farm-job.queued{opacity:.72}.farm-job-index{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e5eaf0;color:#637181;font-size:8px;font-weight:900}.farm-job-icon{font-size:18px}.farm-job-copy{display:grid;gap:1px}.farm-job-copy b{font-size:9px}.farm-job-copy small{font-size:7px;color:#7c8998}.farm-job-time{font-size:8px;font-weight:900;color:#5d6c7e;white-space:nowrap}.farm-job-collect{appearance:none;border:0;border-radius:7px;background:#6e9e56;color:#fff;padding:5px 7px;font-size:8px;font-weight:900;cursor:pointer}.farm-empty-state{text-align:center;padding:28px}.farm-empty-state>span{font-size:38px}.farm-empty-state h3{margin:6px 0 2px}.farm-empty-state p{margin:0 0 12px;color:var(--game-muted);font-size:10px}
.farm-expansion-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;background:linear-gradient(135deg,#f5f9ee,#fff)}.farm-expansion-card.building{grid-template-columns:auto minmax(0,1fr);background:#fff8df}.farm-expansion-card.maxed{grid-template-columns:auto minmax(0,1fr)}.farm-expansion-icon{font-size:30px}.farm-expansion-copy h3,.farm-expansion-card h3{margin:0 0 2px;font-size:14px}.farm-expansion-copy p,.farm-expansion-card p{margin:0;color:#677586;font-size:10px}.farm-cost,.farm-building-cost{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.farm-cost span,.farm-building-cost span{padding:3px 5px;border-radius:7px;background:#f2f4f7;color:#566476;font-size:8px;font-weight:800}.farm-building-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.farm-building-card{display:grid;align-content:start;gap:8px;min-width:0;padding:10px;border:1px solid #dbe4ef;border-radius:14px;background:#fff;box-shadow:0 5px 15px rgba(45,64,92,.05)}.farm-building-card.locked{opacity:.58;background:#f8f9fa}.farm-building-card.in-progress{border-color:#e7cf91;background:#fffbef}.farm-building-card-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;align-items:center}.farm-building-card .farm-building-emoji{width:38px;height:38px;font-size:22px}.farm-building-benefit{padding:5px 7px;border-radius:8px;background:#f2f6f0;color:#55704b;font-size:8px;font-weight:800}.farm-building-cost{margin:0}.farm-building-action{width:100%;min-height:34px;padding:6px 8px;font-size:9px}.farm-building-max{padding:7px;border-radius:8px;background:#eef4ea;color:#5d7852;text-align:center;font-size:9px;font-weight:900}.farm-building-progress{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px;border-radius:8px;background:#fff3cf;color:#786226;font-size:8px}.farm-building-progress .farm-live-time{font-weight:900}
.farm-inventory-page{grid-template-columns:1fr 1fr}.farm-inventory-page .farm-stage-note{grid-column:1/-1}.farm-inventory-group-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.farm-inventory-group-head h3{margin:0;font-size:14px}.farm-inventory-group-head p{margin:1px 0 0;font-size:9px;color:var(--game-muted)}.farm-inventory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.farm-inventory-tile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;padding:7px;border:1px solid #e0e7ef;border-radius:10px;background:#fafcfd}.farm-inventory-tile.empty{opacity:.45}.farm-inventory-tile>strong{font-size:12px}.farm-inventory-tile .farm-inventory-actions{grid-column:2/4}.farm-stage2 .farm-stage-note{font-size:9px;line-height:1.5}.farm-live-time{font-variant-numeric:tabular-nums}
@media (max-width:1100px){.farm-stage2 .farm-summary{grid-template-columns:repeat(3,1fr)}.farm-stage2 .farm-summary-progress{grid-column:1/-1}.farm-building-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:820px){.farm-fields-layout{grid-template-columns:1fr}.farm-fields-layout .farm-side-column{grid-template-columns:1fr 1fr}.farm-production-grid,.farm-inventory-page{grid-template-columns:1fr}.farm-inventory-page .farm-stage-note{grid-column:auto}.farm-building-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:650px){.farm-tabs{grid-template-columns:1fr 1fr}.farm-stage2 .farm-summary{grid-template-columns:1fr 1fr}.farm-stage2 .farm-summary-progress{grid-column:1/-1}.farm-summary-storage{min-height:52px;padding:7px}.farm-crew-banner{font-size:9px;align-items:flex-start}.farm-crew-banner .farm-live-time{margin-left:0}.farm-fields-layout .farm-side-column{grid-template-columns:1fr}.farm-production-grid,.farm-building-grid{grid-template-columns:1fr}.farm-production-card{padding:9px}.farm-expansion-card{grid-template-columns:auto minmax(0,1fr)}.farm-expansion-card>.btn{grid-column:1/-1;width:100%}.farm-inventory-group-head{align-items:flex-start;flex-direction:column}.farm-storage-large.compact{width:100%}.farm-inventory-grid{grid-template-columns:1fr 1fr}.farm-job{grid-template-columns:18px 22px minmax(0,1fr) auto}.farm-job-collect{grid-column:3/5}.farm-recipe{grid-template-columns:auto minmax(0,1fr)}.farm-recipe-output{grid-column:2;justify-items:start;grid-auto-flow:column;gap:5px}.farm-side-column .farm-help-panel{display:block}}
@media (max-width:430px){.farm-inventory-grid{grid-template-columns:1fr}.farm-stage2 .farm-summary-stat:nth-child(3){display:grid}.farm-summary-storage>span{font-size:9px}.farm-tab-btn{font-size:10px;padding:7px 5px}.farm-building-grid{grid-template-columns:1fr}.farm-production-card>header{grid-template-columns:auto minmax(0,1fr)}.farm-queue-count{grid-column:2;justify-self:start}.farm-job{grid-template-columns:18px 22px minmax(0,1fr)}.farm-job-time{grid-column:3}.farm-job-collect{grid-column:3}.farm-cost span,.farm-building-cost span{font-size:7px}}

/* --- Ферма: этап 3, экономика, задания и декор --- */
.farm-economy-page,.farm-daily-page,.farm-decor-page{display:grid;gap:10px}
.farm-orders-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.farm-order-card{display:grid;align-content:start;gap:9px;min-height:176px;padding:11px;border:1px solid #dbe4ef;border-radius:14px;background:#fff;box-shadow:0 5px 15px rgba(45,64,92,.05)}.farm-order-card.locked,.farm-order-card.cooldown{place-items:center;text-align:center;background:#f8fafb;color:#7a8795}.farm-order-card.cooldown{background:#fffaf0;border-color:#eadcb5}.farm-order-number{font-size:9px;font-weight:900;color:#6b7787;text-transform:uppercase;letter-spacing:.04em}.farm-order-lock{font-size:27px}.farm-order-card h3{margin:0;font-size:13px}.farm-order-card p{margin:0;color:var(--game-muted);font-size:9px}.farm-order-card.cooldown>b{font-size:13px;color:#765f2c;font-variant-numeric:tabular-nums}.farm-order-requirements{display:grid;gap:5px}.farm-order-requirements.large{grid-template-columns:repeat(3,minmax(0,1fr))}.farm-requirement{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 8px;border-radius:9px;background:#f6f8fa;border:1px solid #e4e9ee;font-size:9px}.farm-requirement.enough{background:#f1f8ed;border-color:#d2e3ca}.farm-requirement.missing{background:#fff3f2;border-color:#edd2d0}.farm-requirement small{font-size:8px;font-weight:900;color:#6d7885}.farm-requirement.missing small{color:#b45151}.farm-order-reward{display:flex;gap:5px;flex-wrap:wrap}.farm-order-reward span{padding:4px 7px;border-radius:999px;background:#f1f4f7;color:#556376;font-size:8px;font-weight:900}.farm-order-reward.large span{font-size:9px;padding:5px 8px}.farm-order-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:auto}.farm-order-actions .btn{min-height:34px;padding:6px 8px;font-size:9px}
.farm-caravan{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;background:linear-gradient(135deg,#f6f0ff,#fff 55%,#fff8e6)}.farm-caravan.locked{opacity:.72}.farm-caravan.completed{background:#f3f8ef}.farm-caravan-icon{font-size:39px}.farm-caravan-main{display:grid;gap:9px;min-width:0}.farm-caravan h3{margin:0;font-size:15px}.farm-caravan p{margin:2px 0 0;font-size:10px;color:var(--game-muted)}.farm-caravan .farm-panel-head>b{font-size:10px;color:#74648b;white-space:nowrap}.farm-caravan-done{padding:10px;border-radius:10px;background:#e9f5e4;color:#55774b;font-size:10px;font-weight:900}
.farm-daily-reset,.farm-token-note{padding:6px 9px;border-radius:10px;background:#f3f5f8;color:#657386;font-size:9px;font-weight:800;white-space:nowrap}.farm-daily-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.farm-daily-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;padding:11px;border:1px solid #dbe4ef;border-radius:14px;background:#fff}.farm-daily-card.ready{border-color:#bcd6ae;background:#f5faef}.farm-daily-card.claimed{opacity:.68;background:#f5f7f8}.farm-daily-icon{font-size:29px}.farm-daily-copy{display:grid;gap:5px;min-width:0}.farm-daily-copy h3{margin:0;font-size:11px}.farm-daily-copy>b{font-size:9px;color:#657385}.farm-daily-progress{height:7px;border-radius:999px;background:#e8edf1;overflow:hidden}.farm-daily-progress i{display:block;height:100%;border-radius:inherit;background:#78a85f}.farm-daily-card>.btn{grid-column:1/-1;min-height:32px;padding:5px 8px;font-size:9px}.farm-daily-bonus{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;background:linear-gradient(135deg,#fff7dc,#fff)}.farm-daily-bonus.claimed{background:#f2f7ef}.farm-daily-bonus-icon{font-size:34px}.farm-daily-bonus h3{margin:0;font-size:13px}.farm-daily-bonus p{margin:2px 0 7px;color:var(--game-muted);font-size:9px}.farm-milestones{display:grid;gap:8px}.farm-milestone-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.farm-milestone{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:center;padding:7px;border-radius:10px;background:#f7f9fb;border:1px solid #e5eaf0}.farm-milestone>b{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e8edf2;color:#647386;font-size:10px}.farm-milestone.reached{background:#f1f8ed;border-color:#d5e5ce}.farm-milestone.reached>b{background:#789e66;color:#fff}.farm-milestone span{display:grid;gap:1px}.farm-milestone strong{font-size:9px}.farm-milestone small{font-size:8px;color:#748192;line-height:1.35}
.farm-decor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.farm-decor-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:11px;border:1px solid #dbe4ef;border-radius:14px;background:#fff}.farm-decor-card.locked{opacity:.58}.farm-decor-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#fff5ef;font-size:26px}.farm-decor-card h3{margin:0;font-size:12px}.farm-decor-card p{margin:2px 0 3px;color:var(--game-muted);font-size:8px;line-height:1.4}.farm-decor-card small{font-size:8px;color:#6d7a89}.farm-decor-buy{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px}.farm-decor-buy>b{font-size:9px}.farm-decor-buy .btn{min-height:32px;padding:5px 10px;font-size:9px}.farm-placed-decor{display:grid;gap:7px}.farm-placed-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.farm-placed-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:7px;align-items:center;padding:7px;border:1px solid #e3e9ee;border-radius:10px;background:#fafcfd}.farm-placed-row>span{font-size:21px}.farm-placed-row>b{font-size:9px}.farm-placed-row>small{font-size:8px;color:#7a8795}.farm-placed-row .btn{min-height:29px;padding:4px 7px;font-size:8px}.farm-map-decor{z-index:2;display:grid;place-items:center;pointer-events:none;align-self:center;justify-self:center;width:100%;height:100%;filter:drop-shadow(0 4px 4px rgba(53,68,44,.18))}.farm-map-decor span{font-size:clamp(18px,2.5vw,31px)}.farm-plot{z-index:3}.farm-stage3 .farm-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.farm-stage3 .farm-summary-progress{grid-column:1/-1}
@media (max-width:1100px){.farm-orders-grid,.farm-decor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.farm-daily-grid{grid-template-columns:1fr 1fr}.farm-stage3 .farm-summary{grid-template-columns:repeat(3,1fr)}}
@media (max-width:820px){.farm-order-requirements.large{grid-template-columns:1fr 1fr}.farm-milestone-list{grid-template-columns:1fr}.farm-placed-list{grid-template-columns:1fr}.farm-daily-bonus{grid-template-columns:auto minmax(0,1fr)}.farm-daily-bonus>.btn{grid-column:1/-1;width:100%}}
@media (max-width:650px){.farm-orders-grid,.farm-decor-grid,.farm-daily-grid{grid-template-columns:1fr}.farm-stage3 .farm-summary{grid-template-columns:1fr 1fr}.farm-order-requirements.large{grid-template-columns:1fr}.farm-caravan{grid-template-columns:1fr}.farm-caravan-icon{font-size:32px}.farm-daily-reset{white-space:normal}.farm-placed-row{grid-template-columns:auto minmax(0,1fr) auto}.farm-placed-row .btn{grid-column:2/4}.farm-stage3 .farm-tabs{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:430px){.farm-stage3 .farm-tabs{grid-template-columns:1fr 1fr}.farm-stage3 .farm-summary{grid-template-columns:1fr 1fr}.farm-order-actions{grid-template-columns:1fr}.farm-daily-bonus{grid-template-columns:1fr}.farm-daily-bonus-icon{font-size:28px}}

/* --- Ферма: этап 4, соседи и совместные события --- */
.farm-stage4 .farm-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.farm-stage4 .farm-summary-progress{grid-column:1/-1}.farm-social-page,.farm-visit-page{display:grid;gap:10px}.farm-social-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.farm-social-limit{display:flex;align-items:center;gap:9px;padding:10px}.farm-social-limit>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#eef8ef;font-size:20px}.farm-social-limit>div{display:grid;gap:2px}.farm-social-limit small{font-size:8px;color:#718096}.farm-social-limit b{font-size:13px}.farm-neighbors-panel{display:grid;gap:8px}.farm-neighbor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.farm-neighbor-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px;border:1px solid #dce5ec;border-radius:13px;background:#fff}.farm-neighbor-avatar,.farm-visit-owner>img,.farm-visit-owner>span{width:40px;height:40px;border-radius:50%;overflow:hidden;background:#e8efe7;display:grid;place-items:center;font-weight:900;color:#5a6d59}.farm-neighbor-avatar img,.farm-visit-owner>img{width:100%;height:100%;object-fit:cover}.farm-neighbor-copy{min-width:0}.farm-neighbor-copy h3{margin:0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.farm-neighbor-copy p{margin:2px 0;color:#687587;font-size:8px}.farm-neighbor-copy small{display:block;color:#7a8794;font-size:7.5px;line-height:1.35}.farm-neighbor-card .btn{min-height:31px;padding:5px 9px;font-size:8px}.farm-loading-inline,.farm-queue-empty{padding:12px;text-align:center;color:#7b8794;font-size:9px}.farm-recent-help{display:grid;gap:8px}.farm-help-feed{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.farm-help-feed-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px;padding:8px;border:1px solid #e1e8ec;border-radius:10px;background:#fafcfb}.farm-help-feed-row>span{font-size:20px}.farm-help-feed-row b{font-size:9px}.farm-help-feed-row p{margin:1px 0;font-size:8px}.farm-help-feed-row small{font-size:7px;color:#748091}.farm-community{display:grid;gap:9px;background:linear-gradient(135deg,#f5fbf1,#fff 55%,#f7f2ff)}.farm-community.locked{grid-template-columns:auto 1fr;align-items:center;opacity:.72}.farm-community.completed{background:linear-gradient(135deg,#eef9e9,#fff)}.farm-community-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:start}.farm-community-icon{font-size:31px}.farm-community-head h3{margin:0;font-size:14px}.farm-community-head p{margin:2px 0 0;color:#718096;font-size:8px}.farm-community-head>b{font-size:8px;color:#657386;white-space:nowrap}.farm-community-progress{height:9px;border-radius:999px;background:#e5ebe2;overflow:hidden}.farm-community-progress i{display:block;height:100%;background:linear-gradient(90deg,#76a85e,#9bc779);border-radius:inherit}.farm-community-progress-label{display:flex;justify-content:space-between;gap:8px;font-size:8px;color:#687586}.farm-community-progress-label b{color:#40543c}.farm-community-requirements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.farm-community-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;align-items:center;padding:7px;border:1px solid #e0e7df;border-radius:10px;background:#fff}.farm-community-row.done{background:#f0f8ec;border-color:#cfe0c6}.farm-community-row>span{font-size:21px}.farm-community-row>div:nth-child(2){display:grid;gap:1px;min-width:0}.farm-community-row b{font-size:8px}.farm-community-row small{font-size:7px;color:#758191}.farm-community-actions{grid-column:1/-1;display:flex;gap:5px;justify-content:flex-end}.farm-community-actions button{border:1px solid #cfd9ca;background:#f3f8f0;border-radius:8px;padding:4px 7px;font-size:8px;font-weight:900;cursor:pointer}.farm-community-actions small{padding:4px 0}.farm-community-footer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding-top:3px}.farm-community-footer>div:first-child{display:grid;gap:1px}.farm-community-footer>div:first-child small{font-size:7px;color:#748091}.farm-community-footer>div:first-child b{font-size:9px}.farm-community-footer .btn{min-height:32px;padding:5px 9px;font-size:8px}.farm-community-leaders{display:flex;gap:8px;flex-wrap:wrap;padding-top:5px;border-top:1px dashed #dce4d8}.farm-community-leaders small,.farm-community-leaders span{font-size:7px;color:#6f7b86}.farm-visit-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center}.farm-visit-head>.btn{min-height:32px;padding:5px 9px;font-size:8px}.farm-visit-owner{display:flex;align-items:center;gap:8px;min-width:0}.farm-visit-owner h3{margin:0;font-size:12px}.farm-visit-owner p{margin:2px 0 0;color:#738091;font-size:8px}.farm-visit-limit{font-size:8px;font-weight:900;padding:6px 8px;border-radius:9px;background:#eef8ef;color:#537052}.farm-visit-map-panel{display:grid;gap:8px}.farm-neighbor-map .farm-neighbor-plot{cursor:default;overflow:visible}.farm-neighbor-map .farm-neighbor-plot:hover{transform:none}.farm-neighbor-plot em{position:relative;z-index:4;font-size:6.5px;font-style:normal;padding:2px 4px;border-radius:999px;background:rgba(233,255,231,.9);color:#4b7447}.farm-neighbor-plot>button{position:absolute;z-index:5;left:3px;right:3px;bottom:3px;border:0;border-radius:7px;background:#e8f7e3;color:#40663d;font-size:6.5px;font-weight:900;padding:3px 2px;cursor:pointer;box-shadow:0 2px 4px rgba(35,68,31,.13)}.farm-neighbor-plot>button:disabled{opacity:.45;cursor:not-allowed}.farm-visit-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.farm-visit-work-list{display:grid;gap:6px}.farm-visit-work{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center;padding:8px;border:1px solid #e1e7eb;border-radius:10px;background:#fafcfd}.farm-visit-work>div{display:grid;gap:1px}.farm-visit-work b{font-size:9px}.farm-visit-work small{font-size:7px;color:#768292}.farm-visit-work>span{font-size:8px;font-weight:900;color:#5e6f7e;font-variant-numeric:tabular-nums}.farm-visit-work em{font-size:7px;font-style:normal;color:#5d7a59}.farm-visit-work .btn{min-height:29px;padding:4px 7px;font-size:7px}
@media (max-width:1100px){.farm-stage4 .farm-summary{grid-template-columns:repeat(3,1fr)}.farm-community-requirements{grid-template-columns:1fr 1fr}}
@media (max-width:820px){.farm-neighbor-grid,.farm-help-feed,.farm-visit-actions-grid{grid-template-columns:1fr}.farm-community-footer{grid-template-columns:1fr 1fr}.farm-community-footer>.btn{grid-column:1/-1}.farm-visit-head{grid-template-columns:auto 1fr}.farm-visit-limit{grid-column:1/-1}}
@media (max-width:650px){.farm-stage4 .farm-summary{grid-template-columns:1fr 1fr}.farm-social-summary{grid-template-columns:1fr}.farm-community-requirements{grid-template-columns:1fr}.farm-community-head{grid-template-columns:auto 1fr}.farm-community-head>b{grid-column:2}.farm-neighbor-card{grid-template-columns:auto minmax(0,1fr)}.farm-neighbor-card>.btn{grid-column:1/-1;width:100%}.farm-neighbor-plot>button{font-size:5.5px;padding:2px 1px}.farm-visit-owner h3{font-size:10px}.farm-stage4 .farm-tabs{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:430px){.farm-stage4 .farm-tabs{grid-template-columns:1fr 1fr}.farm-community-footer{grid-template-columns:1fr}.farm-community-footer>.btn{grid-column:auto}.farm-visit-head{grid-template-columns:1fr}.farm-visit-head>.btn{justify-self:start}.farm-visit-limit{grid-column:auto}.farm-neighbor-plot em{display:none}}

/* --- Gravity Defied + Flow --- */
.game-canvas.is-gravity{width:min(100%,960px);aspect-ratio:16/9;touch-action:none;background:#dcecf5}
.game-canvas.is-flow{width:min(100%,960px);aspect-ratio:8/5;touch-action:none;background:#071820}
.gravity-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;width:min(100%,620px);margin:10px auto 0}.gravity-controls .touch-btn{width:100%;height:54px}.gravity-throttle-btn{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.gravity-brake-btn{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.flow-controls{position:relative}.flow-touch-help{position:absolute;left:calc(100% + 14px);top:50%;transform:translateY(-50%);width:235px;text-align:left}
@media (max-width:950px){.flow-touch-help{position:static;transform:none;grid-column:1/-1;width:auto;text-align:center;margin-top:4px}}
@media (max-width:650px){.gravity-controls{grid-template-columns:1fr 1fr}.gravity-controls .touch-btn{height:50px;font-size:12px}.game-canvas.is-flow{aspect-ratio:8/5}}

/* --- Игровая сводка: лидеры и последние рекорды --- */
.games-dashboard-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin:0 0 16px}.pvp-champions-block{margin-top:10px;padding-top:10px;border-top:1px solid #e7eaf0}.pvp-champions-block h4{margin:0 0 4px;font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.champion-copy{display:grid;gap:3px;min-width:0}.champion-game-icons{display:flex;align-items:center;gap:3px;min-height:17px;flex-wrap:wrap}.champion-game-icon{width:18px;height:18px;display:grid;place-items:center;border:1px solid #e1e6ef;border-radius:6px;background:#f8fafc;font-size:11px;line-height:1;box-shadow:0 1px 2px rgba(15,23,42,.05)}.games-dashboard-row .records-card{min-width:0}.champion-row,.recent-record-row{display:grid;align-items:center;gap:9px;border-bottom:1px solid #edf0f4}.champion-row:last-child,.recent-record-row:last-child{border-bottom:0}.champion-row{grid-template-columns:28px 34px minmax(0,1fr) auto;padding:8px 4px}.champion-place{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:#f1f5f9;font-weight:900;color:#475569}.champion-row:nth-child(1) .champion-place{background:#fff3bf;color:#8a5d00}.champion-row:nth-child(2) .champion-place{background:#edf1f5;color:#64748b}.champion-row:nth-child(3) .champion-place{background:#f8e3d4;color:#92552f}.champion-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:800}.champion-row>b{white-space:nowrap;color:#4f46e5}.recent-record-row{grid-template-columns:32px minmax(0,1fr) auto;padding:7px 3px}.recent-record-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#e5eaf2;font-weight:900}.recent-record-avatar img{width:100%;height:100%;object-fit:cover}.recent-record-copy{display:grid;min-width:0}.recent-record-copy>b,.recent-record-copy>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-record-copy>b{font-size:13px}.recent-record-copy>span{font-size:11px;color:var(--game-muted)}.recent-record-value{display:grid;text-align:right}.recent-record-value>b{font-size:14px;color:#4f46e5}.recent-record-value>small{font-size:9px;color:var(--game-muted)}.records-toggle-btn{border:1px solid var(--game-line);border-radius:9px;background:#f8fafc;padding:5px 8px;font-size:11px;font-weight:800;cursor:pointer;color:#475569}.records-toggle-btn.active{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.personal-records-card .personal-record-row{padding:7px 3px}.personal-records-card .personal-record-row b{font-size:14px}

/* --- Арканоид --- */
.game-canvas.is-arkanoid{width:min(100%,760px);aspect-ratio:38/31;touch-action:none;background:#05070e}

/* --- Пятнашки: 4 клетки в линию --- */
.turnboard-match{width:100%;max-width:820px;margin:0 auto;display:grid;gap:12px}.line4-info{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;color:var(--game-muted);font-size:12px}.line4-info span{display:flex;align-items:center;gap:7px}.line4-swatch{width:15px;height:15px;border-radius:5px;display:inline-block;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45),0 2px 7px rgba(0,0,0,.12)}.line4-swatch.a,.line4-cell.mark-a i{background:#377df4}.line4-swatch.b,.line4-cell.mark-b i{background:#ef5b73}.line4-board{width:min(100%,560px);aspect-ratio:1/1;margin:0 auto;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(7,1fr);gap:5px;padding:8px;border-radius:18px;background:#dfe7f2;border:1px solid #c7d2e0;box-shadow:inset 0 2px 8px rgba(53,70,100,.12)}.line4-cell{position:relative;border:0;border-radius:9px;background:#f8fafc;box-shadow:inset 0 0 0 1px #cad4e1;display:grid;place-items:center;padding:0;min-width:0;min-height:0}.line4-cell i{width:72%;height:72%;border-radius:50%;box-shadow:0 5px 12px rgba(35,52,84,.18),inset 0 2px 4px rgba(255,255,255,.35)}.line4-cell.can-place{cursor:pointer;background:#fff}.line4-cell.can-place:hover{box-shadow:inset 0 0 0 2px #6d5dfc,0 4px 12px rgba(109,93,252,.14)}

/* --- Шашки --- */
.checkers-hint{padding:9px 12px;border-radius:11px;background:#f8fafc;border:1px solid var(--game-line);text-align:center;color:#64748b;font-size:12px}.checkers-board{width:min(100%,570px);aspect-ratio:1/1;margin:0 auto;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);overflow:hidden;border-radius:15px;border:5px solid #6b513f;box-shadow:0 12px 28px rgba(56,43,34,.18)}.checkers-cell{position:relative;border:0;padding:0;display:grid;place-items:center;min-width:0;min-height:0}.checkers-cell.light{background:#e9d7bd}.checkers-cell.dark{background:#8b654e;cursor:pointer}.checkers-cell.move-origin::after{content:'';position:absolute;width:19%;height:19%;border-radius:50%;background:rgba(219,255,225,.9);box-shadow:0 0 0 2px rgba(34,197,94,.55)}.checkers-cell.move-target::after{content:'';position:absolute;width:34%;height:34%;border-radius:50%;background:rgba(255,240,132,.9);box-shadow:0 0 0 3px rgba(245,158,11,.45)}.checkers-cell.selected{box-shadow:inset 0 0 0 4px #facc15}.checkers-cell.forced{box-shadow:inset 0 0 0 4px #ef4444}.checker-piece{position:relative;z-index:2;width:72%;height:72%;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:clamp(12px,2vw,24px);font-weight:900;box-shadow:inset 0 0 0 3px rgba(255,255,255,.18),0 5px 9px rgba(0,0,0,.28)}.checker-piece.white{background:linear-gradient(145deg,#fff,#d9dee7);color:#7b5a29;border:1px solid #bfc7d0}.checker-piece.black{background:linear-gradient(145deg,#394150,#111827);color:#f5c451;border:1px solid #05070c}.checker-piece.king::after{content:'';position:absolute;inset:17%;border:2px solid currentColor;border-radius:50%;opacity:.72}

@media (max-width:950px){.games-dashboard-row{grid-template-columns:1fr 1fr}}
@media (max-width:650px){.games-dashboard-row{grid-template-columns:1fr}.line4-board,.checkers-board{width:100%}.champion-row{grid-template-columns:26px 32px minmax(0,1fr) auto}}

/* --- Ферма: читаемость и компактная карточка владельца при визите --- */
.farm-stage4 .farm-social-limit small,.farm-stage4 .farm-neighbor-copy p,.farm-stage4 .farm-neighbor-copy small,.farm-stage4 .farm-loading-inline,.farm-stage4 .farm-queue-empty,.farm-stage4 .farm-help-feed-row b,.farm-stage4 .farm-help-feed-row p,.farm-stage4 .farm-help-feed-row small,.farm-stage4 .farm-community-head p,.farm-stage4 .farm-community-head>b,.farm-stage4 .farm-community-progress-label,.farm-stage4 .farm-community-row b,.farm-stage4 .farm-community-row small,.farm-stage4 .farm-community-actions button,.farm-stage4 .farm-community-actions small,.farm-stage4 .farm-community-footer>div:first-child small,.farm-stage4 .farm-community-footer>div:first-child b,.farm-stage4 .farm-community-leaders small,.farm-stage4 .farm-community-leaders span,.farm-stage4 .farm-visit-owner p,.farm-stage4 .farm-visit-limit,.farm-stage4 .farm-visit-work b,.farm-stage4 .farm-visit-work small,.farm-stage4 .farm-visit-work>span,.farm-stage4 .farm-visit-work em{font-size:10px}.farm-stage4 .farm-neighbor-copy h3,.farm-stage4 .farm-visit-owner h3{font-size:13px}.farm-stage4 .farm-neighbor-card .btn,.farm-stage4 .farm-community-footer .btn,.farm-stage4 .farm-visit-head>.btn,.farm-stage4 .farm-visit-work .btn{font-size:10px}.farm-stage4 .farm-neighbor-plot em,.farm-stage4 .farm-neighbor-plot>button{font-size:8px}.farm-stage4 .farm-visit-owner>img,.farm-stage4 .farm-visit-owner>span{width:30px;height:30px;flex:0 0 30px}.farm-stage4 .farm-visit-owner{gap:7px}
.farm-stage1 .farm-crop-copy small,.farm-stage1 .farm-crop-yield small,.farm-stage1 .farm-plot.empty small,.farm-stage1 .farm-plot b,.farm-stage1 .farm-countdown,.farm-stage1 .farm-inventory-name small,.farm-stage1 .farm-inventory-actions button,.farm-stage1 .farm-summary-stat span,.farm-stage2 .farm-field-hint,.farm-stage2 .farm-tab-btn i,.farm-stage2 .farm-production-card h3 small,.farm-stage2 .farm-building-card h3 small,.farm-stage2 .farm-production-card header p,.farm-stage2 .farm-building-card p,.farm-stage2 .farm-queue-count,.farm-stage2 .farm-production-disabled,.farm-stage2 .farm-recipe-main small,.farm-stage2 .farm-recipe-output small,.farm-stage2 .farm-recipe em,.farm-stage2 .farm-queue-title,.farm-stage2 .farm-job-index,.farm-stage2 .farm-job-copy b,.farm-stage2 .farm-job-copy small,.farm-stage2 .farm-job-time,.farm-stage2 .farm-job-collect,.farm-stage2 .farm-cost span,.farm-stage2 .farm-building-cost span,.farm-stage2 .farm-building-benefit,.farm-stage2 .farm-building-action,.farm-stage2 .farm-building-max,.farm-stage2 .farm-building-progress,.farm-stage2 .farm-inventory-group-head p,.farm-stage2 .farm-stage-note,.farm-stage2 .farm-crew-banner,.farm-stage2 .farm-summary-storage>span,.farm-stage3 .farm-order-number,.farm-stage3 .farm-order-card p,.farm-stage3 .farm-requirement,.farm-stage3 .farm-requirement small,.farm-stage3 .farm-order-reward span,.farm-stage3 .farm-order-reward.large span,.farm-stage3 .farm-order-actions .btn,.farm-stage3 .farm-daily-reset,.farm-stage3 .farm-token-note,.farm-stage3 .farm-daily-copy>b,.farm-stage3 .farm-daily-card>.btn,.farm-stage3 .farm-daily-bonus p,.farm-stage3 .farm-milestone strong,.farm-stage3 .farm-milestone small,.farm-stage3 .farm-decor-card p,.farm-stage3 .farm-decor-card small,.farm-stage3 .farm-decor-buy>b,.farm-stage3 .farm-decor-buy .btn,.farm-stage3 .farm-placed-row>b,.farm-stage3 .farm-placed-row>small,.farm-stage3 .farm-placed-row .btn{font-size:10px}
.battleship-turn-banner.draw{background:#eef2ff;color:#4f46e5}

/* --- Тамагочи --- */
.tama-shell{width:100%;max-width:1040px;margin:0 auto;display:grid;gap:14px;color:#eaf1ff;font-size:13px}.tama-shell button{font-family:inherit}.tama-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:17px;background:linear-gradient(135deg,#11182c,#182241 58%,#10293a);box-shadow:0 12px 30px rgba(23,32,62,.18)}.tama-identity{display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:wrap}.tama-stage-badge{padding:5px 8px;border-radius:999px;background:rgba(105,119,255,.2);border:1px solid rgba(151,161,255,.28);font-size:10px;font-weight:800;color:#cdd4ff}.tama-name{border:0;background:none;color:#fff;padding:0;font-size:20px;font-weight:900;cursor:pointer}.tama-name small{font-size:11px;color:#9aa9ce}.tama-age{color:#8fa0c8;font-size:10px}.tama-currencies{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.tama-currencies>span{display:flex;align-items:center;gap:5px;padding:6px 9px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);font-size:11px}.tama-currencies b{color:#fff}
.tama-main-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:14px}.tama-scene{position:relative;min-height:470px;overflow:hidden;border-radius:23px;background:linear-gradient(180deg,#172143 0%,#24355b 58%,#4a4f71 58%,#333750 100%);border:1px solid #2b3862;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 15px 35px rgba(16,24,52,.2)}.tama-scene::before{content:'';position:absolute;left:0;right:0;bottom:0;height:42%;background:linear-gradient(90deg,rgba(255,255,255,.025),transparent 25%,rgba(255,255,255,.02) 50%,transparent 75%),linear-gradient(#3e425e,#292d43);clip-path:polygon(0 17%,100% 0,100% 100%,0 100%)}.tama-room-glow{position:absolute;border-radius:50%;filter:blur(30px);opacity:.58;animation:tamaGlow 5s ease-in-out infinite}.tama-room-glow.glow-a{width:190px;height:190px;left:-40px;top:45px;background:#735bff}.tama-room-glow.glow-b{width:170px;height:170px;right:-30px;top:110px;background:#39c7e9;animation-delay:-2.5s}.tama-window{position:absolute;right:32px;top:28px;width:118px;height:96px;border:7px solid #11182d;border-radius:15px;background:linear-gradient(180deg,#09142b,#18345e);box-shadow:inset 0 0 0 2px rgba(143,181,255,.17),0 10px 25px rgba(0,0,0,.2)}.tama-window::before,.tama-window::after{content:'';position:absolute;background:#11182d}.tama-window::before{left:50%;top:0;bottom:0;width:5px;transform:translateX(-50%)}.tama-window::after{left:0;right:0;top:50%;height:5px;transform:translateY(-50%)}.tama-moon{position:absolute;left:17px;top:14px;width:25px;height:25px;border-radius:50%;background:#fff7bb;box-shadow:0 0 18px #fff2a1}.tama-star{position:absolute;color:#f7fbff;text-shadow:0 0 8px #9edcff;animation:tamaTwinkle 2.2s ease-in-out infinite}.tama-star.s1{right:16px;top:12px}.tama-star.s2{right:28px;bottom:13px;animation-delay:-.7s}.tama-star.s3{left:16px;bottom:9px;animation-delay:-1.3s}.tama-shelf{position:absolute;left:29px;top:56px;width:120px;height:9px;border-radius:4px;background:#2e2744;box-shadow:0 5px 10px rgba(0,0,0,.18)}.tama-shelf i{position:absolute;bottom:8px;width:24px;height:35px;border-radius:7px 7px 3px 3px;background:linear-gradient(145deg,#7b6bd9,#4b4588)}.tama-shelf i:nth-child(1){left:8px}.tama-shelf i:nth-child(2){left:42px;height:28px;background:linear-gradient(145deg,#56cbd4,#337e9d)}.tama-shelf i:nth-child(3){left:77px;height:40px;background:linear-gradient(145deg,#f18bad,#9e4f82)}.tama-plant{position:absolute;left:35px;bottom:95px;width:76px;height:92px}.tama-plant b{position:absolute;left:23px;bottom:0;width:38px;height:40px;border-radius:6px 6px 14px 14px;background:linear-gradient(#765271,#4b365b)}.tama-plant i{position:absolute;left:38px;bottom:35px;width:32px;height:50px;border-radius:90% 10% 90% 10%;background:linear-gradient(135deg,#5bc49a,#2b756d);transform-origin:bottom}.tama-plant i:nth-child(1){transform:rotate(-48deg)}.tama-plant i:nth-child(2){transform:rotate(15deg);height:57px}.tama-plant i:nth-child(3){transform:rotate(58deg);height:43px}.tama-rug{position:absolute;left:50%;bottom:46px;width:280px;height:92px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse,#5d4f82 0,#40385d 65%,rgba(43,44,66,.25) 72%);filter:drop-shadow(0 10px 8px rgba(0,0,0,.12))}
.tama-pet-wrap{position:absolute;left:50%;bottom:91px;width:190px;height:220px;transform:translateX(-50%);z-index:4;display:flex;align-items:flex-end;justify-content:center;animation:tamaFloat 3s ease-in-out infinite}.tama-pet{position:relative;width:162px;height:185px;transform-origin:center 80%}.tama-body{position:absolute;left:25px;bottom:15px;width:112px;height:132px;border-radius:48% 48% 44% 44%/42% 42% 58% 58%;background:radial-gradient(circle at 36% 24%,#c8eaff 0 10%,#8da8ff 34%,#6b70da 68%,#5555ad 100%);box-shadow:inset -10px -14px 22px rgba(44,39,126,.22),inset 9px 10px 18px rgba(255,255,255,.17),0 0 24px rgba(115,124,255,.58),0 18px 28px rgba(22,20,55,.3)}.tama-belly{position:absolute;left:25px;right:25px;bottom:17px;height:47px;border-radius:50%;background:radial-gradient(ellipse,rgba(220,238,255,.62),rgba(159,177,239,.18) 68%,transparent 70%)}.tama-ear{position:absolute;top:20px;width:50px;height:75px;border-radius:75% 15% 55% 25%;background:linear-gradient(145deg,#8eaaff,#6468ce);box-shadow:inset 6px 8px 10px rgba(255,255,255,.12),0 0 16px rgba(105,113,225,.32)}.tama-ear::after{content:'';position:absolute;inset:11px 12px 16px;border-radius:inherit;background:linear-gradient(#e0a8db,#b17bc4);opacity:.72}.tama-ear.left{left:15px;transform:rotate(-24deg)}.tama-ear.right{right:15px;transform:scaleX(-1) rotate(-24deg)}.tama-tail{position:absolute;right:4px;bottom:33px;width:74px;height:76px;border:17px solid #676bd1;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(36deg);z-index:-1;animation:tamaTail 2.1s ease-in-out infinite}.tama-face{position:absolute;left:0;right:0;top:34px;height:60px}.tama-eye{position:absolute;top:4px;width:18px;height:25px;border-radius:50%;background:#17213e;box-shadow:inset 0 -5px 0 #1d2249}.tama-eye::after{content:'';position:absolute;left:4px;top:4px;width:6px;height:7px;border-radius:50%;background:#fff}.tama-eye.left{left:27px}.tama-eye.right{right:27px}.tama-cheek{position:absolute;top:36px;width:17px;height:8px;border-radius:50%;background:#ff9eb7;filter:blur(.2px);opacity:.7}.tama-cheek.left{left:17px}.tama-cheek.right{right:17px}.tama-mouth{position:absolute;left:50%;top:38px;width:18px;height:9px;border:3px solid #2f305f;border-top:0;border-radius:0 0 18px 18px;transform:translateX(-50%)}.tama-shadow{position:absolute;left:27px;bottom:1px;width:110px;height:21px;border-radius:50%;background:rgba(15,16,42,.28);filter:blur(6px);z-index:-2}.tama-wing{display:none;position:absolute;top:82px;width:38px;height:54px;border-radius:70% 30% 70% 30%;background:linear-gradient(145deg,rgba(192,245,255,.85),rgba(114,184,255,.28));filter:drop-shadow(0 0 9px rgba(108,219,255,.5));z-index:-1;animation:tamaWing 1.7s ease-in-out infinite}.stage-4 .tama-wing,.stage-5 .tama-wing{display:block}.tama-wing.left{left:4px;transform:rotate(-30deg)}.tama-wing.right{right:4px;transform:scaleX(-1) rotate(-30deg)}.stage-2 .tama-body{background:radial-gradient(circle at 36% 24%,#d1f1ff 0 10%,#91b6ff 34%,#6f75e3 68%,#5351b3 100%)}.stage-3 .tama-body{box-shadow:inset -10px -14px 22px rgba(44,39,126,.22),inset 9px 10px 18px rgba(255,255,255,.17),0 0 32px rgba(93,155,255,.7),0 18px 28px rgba(22,20,55,.3)}.stage-5 .tama-body{background:radial-gradient(circle at 34% 23%,#eefcff 0 9%,#a4d4ff 31%,#8981f4 61%,#5c54c8 100%);box-shadow:inset -10px -14px 22px rgba(44,39,126,.22),inset 9px 10px 18px rgba(255,255,255,.2),0 0 38px rgba(108,202,255,.8),0 0 60px rgba(131,110,255,.28),0 18px 28px rgba(22,20,55,.3)}.tama-accessory{position:absolute;left:50%;top:11px;z-index:8;transform:translateX(-50%) rotate(-5deg);font-size:39px;filter:drop-shadow(0 4px 5px rgba(18,18,50,.24));animation:tamaAccessory 2.5s ease-in-out infinite}.tama-zzz{position:absolute;right:-4px;top:24px;color:#d8eaff;font-size:25px;font-weight:900;text-shadow:0 0 12px #79b9ff;animation:tamaZzz 2s ease-in-out infinite}.tama-zzz i{font-size:18px}.tama-zzz b{font-size:13px}.mood-sad .tama-mouth{height:10px;border-top:3px solid #2f305f;border-bottom:0;border-radius:18px 18px 0 0;top:44px}.mood-sick .tama-body{filter:saturate(.55)}.mood-sick .tama-eye{height:13px;top:12px}.mood-sleeping .tama-eye{height:2px;top:17px;border-radius:4px;background:#2a315b}.mood-sleeping .tama-eye::after{display:none}.mood-sleeping .tama-mouth{width:12px;height:7px}.tama-scene-caption{position:absolute;left:18px;right:18px;bottom:12px;z-index:5;display:grid;text-align:center;gap:1px}.tama-scene-caption b{font-size:14px;color:#fff}.tama-scene-caption span{font-size:10px;color:#bfc9e9}
.tama-care-card,.tama-storage-card{border-radius:20px;background:linear-gradient(150deg,#11182d,#18213c);border:1px solid #253357;box-shadow:0 14px 31px rgba(14,21,45,.17)}.tama-care-card{padding:14px;display:grid;align-content:start;gap:12px}.tama-care-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.tama-care-head>div{display:grid}.tama-care-head>div>b{font-size:15px}.tama-care-head>div>span{color:#7f90b9;font-size:9px}.tama-health-orb{padding:5px 8px;border-radius:999px;background:rgba(255,102,138,.12);border:1px solid rgba(255,130,158,.22);color:#ffacbf;font-weight:900}.tama-health-orb.danger{animation:tamaPulseDanger 1s ease-in-out infinite}.tama-stats{display:grid;gap:8px}.tama-stat>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:#cbd5ef}.tama-stat>div:first-child b{color:#fff}.tama-stat-bar{height:8px;border-radius:99px;background:#26304e;overflow:hidden;margin-top:4px}.tama-stat-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7d75ff,#64c4ff);box-shadow:0 0 11px rgba(100,181,255,.36);transition:width .45s ease}.tama-stat-bar.happiness i{background:linear-gradient(90deg,#ff7caa,#ff9ecc)}.tama-stat-bar.energy i{background:linear-gradient(90deg,#ffca59,#ffe588)}.tama-stat-bar.hygiene i{background:linear-gradient(90deg,#54d8d2,#8df0e8)}.tama-stat.critical .tama-stat-bar i{background:linear-gradient(90deg,#ff5d6c,#ff9875);animation:tamaBarDanger 1s ease-in-out infinite}.tama-stat.low .tama-stat-bar i{filter:saturate(.75)}.tama-evolution{padding:9px 10px;border-radius:13px;background:rgba(118,125,255,.08);border:1px solid rgba(126,138,255,.14)}.tama-evolution>div:first-child{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:#9da9cf}.tama-evolution b{color:#dbe1ff}.tama-evo-bar{height:6px;border-radius:99px;background:#29304d;margin-top:7px;overflow:hidden}.tama-evo-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#7e74ff,#79e2ff);box-shadow:0 0 12px #7a8dff}.tama-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.tama-actions button{min-height:55px;border:1px solid #2b385f;border-radius:13px;background:linear-gradient(145deg,#1d2948,#151e36);color:#dfe7ff;padding:7px 8px;display:grid;grid-template-columns:25px 1fr;grid-template-rows:auto auto;text-align:left;column-gap:6px;cursor:pointer;transition:.18s ease}.tama-actions button:hover{transform:translateY(-1px);border-color:#5265a3;background:linear-gradient(145deg,#26355b,#18233e)}.tama-actions button>span{grid-row:1/3;font-size:19px;align-self:center}.tama-actions button>b{font-size:10px}.tama-actions button>small{font-size:8px;color:#8494bd}.tama-bonus-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tama-daily,.tama-mini-launch{border:1px solid #303d61;border-radius:13px;background:#17213a;color:#dce5ff;display:flex;align-items:center;gap:7px;padding:8px;text-align:left;min-height:52px}.tama-daily>span,.tama-mini-launch>span{font-size:19px}.tama-daily>div,.tama-mini-launch>div{display:grid}.tama-daily b,.tama-mini-launch b{font-size:9px}.tama-daily small,.tama-mini-launch small{font-size:7px;color:#8292b9}.tama-daily.ready,.tama-mini-launch.ready{cursor:pointer;border-color:#5969ad;background:linear-gradient(145deg,#202e51,#17213d);box-shadow:0 0 15px rgba(98,116,255,.09)}.tama-daily:disabled,.tama-mini-launch:disabled{opacity:.55}
.tama-storage-card{padding:12px}.tama-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.tama-tabs button{border:1px solid #2d3859;border-radius:10px;background:#131d35;color:#9aa9ca;padding:7px 10px;font-size:9px;font-weight:800;cursor:pointer}.tama-tabs button.active{color:#fff;background:#27355d;border-color:#5265a5}.tama-panel{min-height:82px}.tama-item-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.tama-item-card{display:grid;grid-template-columns:35px minmax(0,1fr) auto;gap:7px;align-items:center;min-width:0;border-radius:12px;padding:8px;background:#17213a;border:1px solid #283654}.tama-item-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#222d4b;font-size:20px}.tama-item-card>div{min-width:0;display:grid}.tama-item-card b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tama-item-card small{font-size:7px;color:#7f8fb4;line-height:1.25}.tama-item-card em{font-size:7px;color:#b3c0df;font-style:normal;margin-top:2px}.tama-item-card button{border:0;border-radius:8px;background:#5966de;color:#fff;padding:6px 7px;font-size:8px;font-weight:800;cursor:pointer}.tama-item-card button:disabled{opacity:.35;cursor:not-allowed}.tama-wardrobe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.tama-outfit-card{min-height:86px;border:1px solid #2c3959;border-radius:13px;background:#17213a;color:#dce5ff;display:grid;place-items:center;align-content:center;gap:2px;cursor:pointer}.tama-outfit-card>span{font-size:25px}.tama-outfit-card>b{font-size:9px}.tama-outfit-card>small{font-size:7px;color:#8998ba}.tama-outfit-card.equipped{border-color:#7a83ff;background:linear-gradient(145deg,#273467,#1b2850);box-shadow:inset 0 0 0 1px rgba(138,149,255,.19)}.tama-outfit-card:disabled{opacity:.42;cursor:not-allowed}.tama-empty,.tama-error,.tama-loading{min-height:115px;border-radius:14px;display:flex;align-items:center;justify-content:center;text-align:center;color:#8796ba;background:#141e35}.tama-loading{gap:8px}.tama-loading span{width:17px;height:17px;border:2px solid #39466b;border-top-color:#8290ff;border-radius:50%;animation:tamaSpin .8s linear infinite}.tama-root.is-busy,.special-game-root.is-busy{pointer-events:none;opacity:.8}
.tama-reaction-particle{position:absolute;z-index:12;left:50%;bottom:175px;font-style:normal;font-size:22px;pointer-events:none;transform:translateX(var(--x));animation:tamaParticle .95s var(--delay) ease-out forwards}.tama-pet-wrap.react-feed .tama-pet,.tama-pet-wrap.react-item .tama-pet{animation:tamaNom .75s ease-in-out}.tama-pet-wrap.react-play .tama-pet,.tama-pet-wrap.react-happy .tama-pet{animation:tamaJump .75s cubic-bezier(.2,.8,.3,1)}.tama-pet-wrap.react-clean .tama-pet{animation:tamaShake .7s ease-in-out}.tama-pet-wrap.react-dress .tama-pet{animation:tamaSpinPet .7s ease-in-out}.tama-pet-wrap.react-gift .tama-pet,.tama-pet-wrap.react-buy .tama-pet{animation:tamaJump .75s ease-in-out}
.tama-mini-overlay{position:absolute;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:14px;background:rgba(5,10,25,.72);backdrop-filter:blur(8px);border-radius:20px}.tama-mini-card{width:min(100%,720px);border-radius:20px;overflow:hidden;background:#0b1530;border:1px solid #34466f;box-shadow:0 24px 60px rgba(0,0,0,.35)}.tama-mini-head{height:62px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:linear-gradient(90deg,#151f42,#142c4b)}.tama-mini-head>div:first-child{display:grid}.tama-mini-head b{font-size:15px}.tama-mini-head span{font-size:9px;color:#91a2c8}.tama-mini-score{font-size:18px}.tama-mini-field{position:relative;height:360px;overflow:hidden;background:radial-gradient(circle at 50% 55%,#173858 0,#0b1e3d 38%,#07152d 72%,#050c1d);cursor:crosshair}.tama-mini-field::before,.tama-mini-field::after{content:'';position:absolute;border-radius:50%;filter:blur(38px);opacity:.5}.tama-mini-field::before{width:170px;height:170px;background:#6557e8;left:10%;top:18%}.tama-mini-field::after{width:160px;height:160px;background:#2fb8d6;right:8%;bottom:5%}.tama-mini-time{position:absolute;left:12px;right:12px;bottom:10px;height:6px;border-radius:99px;background:#18294a;overflow:hidden;z-index:4}.tama-mini-time i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#7b6cff,#70e6ff)}.tama-catch-star{position:absolute;z-index:3;width:42px;height:42px;border:0;background:none;color:#fff3a0;font-size:31px;line-height:1;transform:translate(-50%,-50%) scale(var(--s));filter:drop-shadow(0 0 9px #fff0a3) drop-shadow(0 0 19px #7cdfff);cursor:pointer;animation:tamaCatchStar .8s ease-in-out infinite alternate}.tama-catch-star.caught{animation:tamaCaught .18s ease-out forwards}
@keyframes tamaGlow{50%{transform:scale(1.12);opacity:.78}}@keyframes tamaTwinkle{50%{opacity:.35;transform:scale(.75)}}@keyframes tamaFloat{50%{transform:translateX(-50%) translateY(-5px)}}@keyframes tamaTail{50%{transform:rotate(50deg)}}@keyframes tamaWing{50%{filter:drop-shadow(0 0 14px rgba(108,219,255,.75));margin-top:-3px}}@keyframes tamaAccessory{50%{transform:translateX(-50%) rotate(4deg) translateY(-2px)}}@keyframes tamaZzz{50%{transform:translate(6px,-8px);opacity:.55}}@keyframes tamaPulseDanger{50%{box-shadow:0 0 15px rgba(255,78,108,.38)}}@keyframes tamaBarDanger{50%{filter:brightness(1.25)}}@keyframes tamaParticle{0%{opacity:0;transform:translateX(var(--x)) translateY(5px) scale(.6)}30%{opacity:1}100%{opacity:0;transform:translateX(calc(var(--x) * 1.25)) translateY(-95px) scale(1.2)}}@keyframes tamaNom{25%{transform:scale(1.06,.94) rotate(-3deg)}50%{transform:scale(.95,1.06) rotate(3deg)}75%{transform:scale(1.04,.96)}}@keyframes tamaJump{45%{transform:translateY(-34px) scale(.96,1.05)}70%{transform:translateY(2px) scale(1.07,.92)}}@keyframes tamaShake{20%,60%{transform:rotate(-7deg)}40%,80%{transform:rotate(7deg)}}@keyframes tamaSpinPet{45%{transform:rotate(360deg) scale(.87)}100%{transform:rotate(360deg)}}@keyframes tamaSpin{to{transform:rotate(360deg)}}@keyframes tamaCatchStar{from{transform:translate(-50%,-50%) scale(var(--s)) rotate(-8deg)}to{transform:translate(-50%,-50%) scale(calc(var(--s) * 1.14)) rotate(8deg)}}@keyframes tamaCaught{to{opacity:0;transform:translate(-50%,-50%) scale(2.2) rotate(35deg)}}
@media(max-width:950px){.tama-main-grid{grid-template-columns:1fr}.tama-scene{min-height:430px}.tama-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.tama-shell{font-size:12px}.tama-topline{align-items:flex-start;flex-direction:column}.tama-main-grid{gap:9px}.tama-scene{min-height:390px}.tama-window{right:18px;width:94px;height:80px}.tama-shelf{left:18px;transform:scale(.85);transform-origin:left top}.tama-plant{left:15px;transform:scale(.82);transform-origin:left bottom}.tama-pet-wrap{bottom:78px;transform:translateX(-50%) scale(.9);transform-origin:center bottom}.tama-care-card{padding:10px}.tama-actions{grid-template-columns:1fr 1fr}.tama-bonus-row{grid-template-columns:1fr}.tama-item-grid{grid-template-columns:1fr}.tama-item-card{grid-template-columns:38px minmax(0,1fr) auto}.tama-wardrobe-grid{grid-template-columns:1fr 1fr}.tama-mini-field{height:300px}}
.tama-accessory.accessory-crown{top:-4px;font-size:43px}.tama-accessory.accessory-bow{top:12px;margin-left:38px;font-size:34px}.tama-accessory.accessory-scarf{top:auto;bottom:55px;font-size:42px;z-index:9}

/* Poko World — platformer + community level editor */
.poko-shell{width:100%;max-width:1180px;margin:0 auto;color:#273444}.poko-shell button,.poko-shell input,.poko-shell select{font:inherit}.poko-shell button{border:1px solid #d9e3e9;background:#fff;color:#334354;border-radius:11px;min-height:38px;padding:8px 12px;font-weight:800;cursor:pointer}.poko-shell button:hover{border-color:#b8cbd6;background:#f8fbfc}.poko-shell button:disabled{opacity:.42;cursor:not-allowed}.poko-shell .poko-primary{background:linear-gradient(135deg,#f2bb4d,#e79a3d);color:#fff;border-color:#e3a145;box-shadow:0 7px 18px rgba(218,151,55,.2)}.poko-shell .danger{color:#b94d5d;border-color:#efcbd1;background:#fff7f8}.poko-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding:10px 12px;border:1px solid #dce6ea;border-radius:16px;background:rgba(255,255,255,.91)}.poko-brand{display:flex;align-items:center;gap:9px;min-width:150px}.poko-brand>div{display:grid}.poko-brand b{font-size:15px}.poko-brand small{font-size:9px;color:#7a8996}.poko-brand-blob{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 32% 27%,#fff58b 0 13%,#f5cc58 32%,#dc8b3f 90%);color:#5d4140;font-size:16px;box-shadow:0 5px 13px rgba(216,152,62,.24)}.poko-tabs{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.poko-tabs button{font-size:10px;min-height:33px;padding:6px 9px}.poko-tabs button.active{background:#314c59;color:#fff;border-color:#314c59}.poko-hero{min-height:260px;display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;border-radius:20px;background:linear-gradient(135deg,#fffaf0,#eef9f2);border:1px solid #dce9df;margin-bottom:13px}.poko-hero>div:first-child{padding:28px 26px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative;z-index:2}.poko-kicker{font-size:9px;font-weight:900;letter-spacing:.12em;color:#be7e35}.poko-hero h3{font-size:26px;line-height:1.08;margin:7px 0 9px;max-width:520px}.poko-hero p{margin:0;color:#62717d;font-size:12px;max-width:530px}.poko-hero-actions{display:flex;gap:8px;margin-top:17px;flex-wrap:wrap}.poko-hero-scene{position:relative;min-height:260px;overflow:hidden;background:linear-gradient(#96ddec 0,#d6f2e2 74%)}.poko-sun{position:absolute;width:76px;height:76px;border-radius:50%;right:50px;top:35px;background:#fff0a2;box-shadow:0 0 50px rgba(255,241,160,.65)}.poko-cloud{position:absolute;width:110px;height:30px;background:rgba(255,255,255,.73);border-radius:99px;filter:blur(.2px);animation:pokoCloud 8s ease-in-out infinite alternate}.poko-cloud:before,.poko-cloud:after{content:'';position:absolute;border-radius:50%;background:inherit}.poko-cloud:before{width:42px;height:42px;left:19px;bottom:4px}.poko-cloud:after{width:55px;height:50px;left:48px;bottom:2px}.poko-cloud.c1{left:45px;top:58px}.poko-cloud.c2{left:210px;top:112px;transform:scale(.72);animation-delay:-3s}.poko-hero-hill{position:absolute;border-radius:50% 50% 0 0;bottom:-70px;background:#5ab56e;transform:rotate(-5deg)}.poko-hero-hill.h1{left:-70px;width:390px;height:210px}.poko-hero-hill.h2{right:-80px;width:400px;height:245px;background:#3c9560;transform:rotate(7deg)}.poko-hero-char{position:absolute;left:52%;bottom:86px;width:77px;height:77px;border-radius:50%;background:radial-gradient(circle at 32% 25%,#fff77e 0 12%,#f4c953 33%,#dc8b3e 88%);box-shadow:0 10px 0 rgba(39,75,53,.13),0 14px 28px rgba(65,100,72,.2);animation:pokoBounce 1.6s ease-in-out infinite}.poko-hero-char i{position:absolute;width:8px;height:14px;border-radius:50%;background:#34404a;top:27px}.poko-hero-char i:first-child{left:23px}.poko-hero-char i:nth-child(2){right:23px}.poko-hero-char b{position:absolute;left:50%;top:46px;width:18px;height:8px;border-bottom:3px solid #8a5150;border-radius:0 0 20px 20px;transform:translateX(-50%)}.poko-section{border:1px solid #dce6ea;border-radius:18px;background:#fff;padding:14px;margin-bottom:12px}.poko-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.poko-section-head h4,.poko-editor-top h4{margin:0;font-size:16px}.poko-section-head p,.poko-editor-top p{margin:2px 0 0;color:#81909b;font-size:10px}.poko-level-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.poko-level-card{border:1px solid #dfe7eb;border-radius:15px;overflow:hidden;background:#fbfcfc;display:grid;grid-template-columns:150px minmax(0,1fr);min-height:160px}.poko-level-art{position:relative;overflow:hidden;min-height:145px;background:#dfeeed}.poko-map-preview{display:block;width:100%;height:100%;position:absolute;inset:0}.poko-map-preview path{fill:#58a86b;stroke:rgba(255,255,255,.45);stroke-width:1.1}.poko-map-preview circle:first-of-type{fill:#fff0a2;opacity:.88}.poko-map-preview circle:last-of-type{fill:#fff5aa;filter:drop-shadow(0 0 4px #fff)}.poko-map-preview.theme-night{background:linear-gradient(#1d315e,#586aa5)}.poko-map-preview.theme-sunset{background:linear-gradient(#ffc27d,#c17aa3)}.poko-map-preview.theme-candy{background:linear-gradient(#f4c3ea,#b8dcff)}.poko-map-preview.theme-forest{background:linear-gradient(#86c8bd,#b8dfb7)}.poko-map-preview.theme-meadow{background:linear-gradient(#86d8e8,#d7f1df)}.poko-difficulty{position:absolute;left:8px;top:8px;padding:4px 7px;border-radius:99px;font-size:8px;font-weight:900;background:rgba(255,255,255,.87);backdrop-filter:blur(7px)}.diff-Сложно,.diff-Безумие{color:#a94757}.poko-level-body{padding:10px;min-width:0;display:flex;flex-direction:column}.poko-level-title{display:flex;justify-content:space-between;gap:7px;align-items:flex-start}.poko-level-title b{font-size:13px}.poko-level-title span{font-size:7px;color:#7c8b96;border:1px solid #dfe7eb;border-radius:99px;padding:3px 5px;white-space:nowrap}.poko-level-body p{font-size:9px;color:#75838e;margin:5px 0 7px;line-height:1.35;min-height:24px}.poko-level-stats,.poko-level-best{display:flex;gap:8px;flex-wrap:wrap;color:#71808b;font-size:8px}.poko-level-best{margin-top:5px;color:#4f6070;font-weight:800}.poko-level-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:auto;padding-top:8px}.poko-level-actions button{min-height:30px;padding:5px 8px;font-size:8px}.poko-level-actions button.liked{color:#c64f68;border-color:#e6aaba;background:#fff4f6}.poko-empty{min-height:110px;grid-column:1/-1;border:1px dashed #cfdce2;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#82909a;text-align:center;padding:18px;font-size:10px}.poko-empty b{font-size:13px;color:#52616b}.poko-filterbar{display:grid;grid-template-columns:1fr 190px;gap:8px;margin-bottom:10px}.poko-filterbar input,.poko-filterbar select,.poko-editor-meta input,.poko-editor-meta select{min-height:38px;border:1px solid #d5e0e5;border-radius:10px;background:#fff;padding:7px 10px;color:#344550;outline:none}.poko-filterbar input:focus,.poko-editor-meta input:focus,.poko-editor-meta select:focus{border-color:#e1a24e;box-shadow:0 0 0 3px rgba(225,162,78,.12)}
.poko-modal{position:absolute;inset:0;z-index:70;background:rgba(28,40,48,.55);display:flex;align-items:center;justify-content:center;padding:18px;backdrop-filter:blur(4px);border-radius:17px}.poko-modal-card{width:min(100%,620px);max-height:82%;overflow:auto;background:#fff;border-radius:17px;padding:14px;box-shadow:0 20px 60px rgba(20,34,42,.25)}.poko-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;border-bottom:1px solid #edf1f3;padding-bottom:8px}.poko-modal-head>div{display:grid}.poko-modal-head small{font-size:9px;color:#84929b}.poko-modal-head button{min-width:35px;padding:2px;font-size:20px}.poko-board-list{display:grid;gap:5px;padding-top:8px}.poko-board-list>div:not(.poko-empty){display:grid;grid-template-columns:28px 1fr auto auto;gap:8px;align-items:center;padding:8px;border-radius:10px;background:#f6f9fa;font-size:9px}.poko-board-list strong{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#314c59;color:#fff}.poko-board-list span{font-weight:800}.poko-board-list small{color:#7e8b94}.poko-editor-wrap{border:1px solid #dce6ea;background:#fff;border-radius:18px;padding:13px}.poko-editor-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.poko-editor-status{font-size:9px;border-radius:99px;padding:5px 8px;background:#f1f6f7;color:#60717b}.poko-editor-meta{display:grid;grid-template-columns:1.1fr .65fr .65fr;gap:8px;margin-bottom:9px}.poko-editor-meta label{display:grid;gap:3px;font-size:8px;font-weight:900;color:#677782}.poko-editor-meta label.wide{grid-column:1/-1}.poko-editor-tools{display:flex;gap:5px;overflow-x:auto;padding:2px 0 7px}.poko-editor-tools button{flex:0 0 auto;min-height:38px;padding:5px 8px;font-size:8px;display:flex;align-items:center;gap:4px}.poko-editor-tools button span{font-size:14px}.poko-editor-tools button.active{background:#314c59;color:#fff;border-color:#314c59}.poko-editor-canvas-wrap{position:relative;border:1px solid #cfdce2;border-radius:14px;overflow:hidden;background:#eaf4f1}.poko-editor-canvas-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:1000/520;touch-action:none;cursor:crosshair}.poko-editor-help{position:absolute;left:8px;bottom:8px;background:rgba(28,43,53,.72);color:#fff;border-radius:8px;padding:5px 7px;font-size:7px;pointer-events:none}.poko-editor-pan{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin:8px 3px;color:#687985;font-size:8px}.poko-editor-pan input{width:100%}.poko-editor-actions{display:flex;justify-content:space-between;gap:10px;align-items:center}.poko-editor-actions>div{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.poko-play-wrap{border:1px solid #dce6ea;border-radius:18px;background:#fff;padding:10px}.poko-play-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.poko-play-head>div:first-child{display:flex;align-items:center;gap:8px}.poko-play-head>div:first-child>div{display:grid}.poko-play-head b{font-size:13px}.poko-play-head small{font-size:8px;color:#7d8c96}.poko-play-head button{min-height:32px;padding:5px 8px;font-size:8px}.poko-hud{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.poko-hud span{font-size:8px;padding:5px 7px;border-radius:99px;background:#f3f7f7;color:#50616b;font-weight:800}.poko-game-canvas-wrap{position:relative;border-radius:15px;overflow:hidden;background:#9ddce7}.poko-game-canvas-wrap canvas{display:block;width:100%;height:auto;aspect-ratio:16/9}.poko-game-message{position:absolute;inset:0;background:rgba(24,39,48,.48);display:flex;align-items:center;justify-content:center;padding:15px;backdrop-filter:blur(5px)}.poko-finish-card{width:min(100%,360px);background:rgba(255,255,255,.95);border-radius:18px;padding:20px;text-align:center;color:#33444f}.poko-finish-card>span{font-size:45px;color:#efb849;filter:drop-shadow(0 5px 9px rgba(218,157,59,.23))}.poko-finish-card h4{font-size:22px;margin:2px 0}.poko-finish-card>b{font-size:18px}.poko-finish-card p{font-size:9px;color:#72818c}.poko-finish-card>div{display:flex;justify-content:center;gap:7px}.poko-play-controls{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px}.poko-play-controls>div{display:flex;gap:6px}.poko-play-controls button{min-width:58px}.poko-play-controls p{font-size:8px;color:#75848d;margin:0;text-align:right}.poko-root.is-busy,.poko-shell.is-busy{pointer-events:none;opacity:.75}@keyframes pokoBounce{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-18px) rotate(7deg)}}@keyframes pokoCloud{from{transform:translateX(-8px)}to{transform:translateX(18px)}}
@media(max-width:900px){.poko-hero{grid-template-columns:1fr}.poko-hero-scene{min-height:210px}.poko-level-grid{grid-template-columns:1fr}.poko-level-card{grid-template-columns:145px minmax(0,1fr)}.poko-nav{align-items:flex-start;flex-direction:column}.poko-tabs{justify-content:flex-start}.poko-play-head{align-items:flex-start;flex-direction:column}.poko-hud{justify-content:flex-start}.poko-editor-meta{grid-template-columns:1fr 1fr}.poko-editor-meta label:first-child{grid-column:1/-1}}
@media(max-width:600px){.poko-shell{font-size:12px}.poko-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%}.poko-tabs button{width:100%}.poko-hero>div:first-child{padding:19px 16px}.poko-hero h3{font-size:21px}.poko-level-card{grid-template-columns:1fr}.poko-level-art{min-height:115px}.poko-level-body p{min-height:0}.poko-filterbar{grid-template-columns:1fr}.poko-editor-meta{grid-template-columns:1fr}.poko-editor-meta label,.poko-editor-meta label:first-child,.poko-editor-meta label.wide{grid-column:auto}.poko-editor-actions,.poko-play-controls{align-items:stretch;flex-direction:column}.poko-editor-actions>div{justify-content:flex-start}.poko-play-controls p{text-align:left}.poko-play-controls>div button{flex:1}.poko-play-controls>div{width:100%}.poko-board-list>div:not(.poko-empty){grid-template-columns:28px 1fr auto}.poko-board-list small{grid-column:2/-1}.poko-editor-help{display:none}}

/* Poko World v113 editor controls */
.poko-editor-options{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 8px;padding:7px 9px;border:1px solid #dce6ea;border-radius:11px;background:#f7fafb}.poko-grid-toggle{display:flex;align-items:center;gap:7px;min-height:34px;font-size:9px;font-weight:800;color:#52646f;cursor:pointer}.poko-grid-toggle input{width:16px;height:16px;accent-color:#314c59}.poko-grid-toggle small{font-size:8px;font-weight:600;color:#89959d}.poko-editor-history{display:flex;align-items:center;gap:5px}.poko-editor-history button{min-width:38px;min-height:34px;padding:3px 9px;font-size:19px;font-weight:800;line-height:1}.poko-editor-history button:disabled{opacity:.35;cursor:not-allowed}.poko-editor-history small{font-size:8px;color:#89959d;margin-left:2px}
@media(max-width:600px){.poko-editor-options{align-items:flex-start;flex-direction:column}.poko-editor-history{width:100%}.poko-editor-history small{margin-left:auto}}
