.games-container{max-width:fit-content;margin:0 auto;padding:20px}
.games-title{font-size:2em;margin:0}
.games-desc{font-size:1.2em;color:#666;margin-bottom:40px}
.games-list{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px}
.game-card{flex:1 1 310px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.1);text-align:center;border:1px solid #eee}
.game-input{margin-bottom:10px;border-radius:10px;padding:5px;border:1px solid #777}
.game-btn{width:unset;margin:0 auto;border-radius:16px;display:inline;opacity.8!important}
.game-card h3{margin:0 0 10px}
.game-card p{color:#666;margin-bottom:20px}
.game-start-btn{background:#c2c3ff;color:#fff;border:none;padding:10px 20px;border-radius:24px;cursor:pointer;transition:.2s;font-size:16px}
.game-start-btn:hover{opacity:.8}
.rating-section{background:#f8f9fa;padding:20px;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.1);border:1px solid #eee;margin-bottom:10px}
.rating-title{margin:10px 0}
.rating-table{width:100%;border-collapse:collapse}
.rating-table th,.rating-table td{padding:10px;text-align:left;border-bottom:1px solid #ddd}
.rating-table th{background:#e9ecef;font-weight:700}
.deleted-user-name{color:#888;text-decoration:line-through;cursor:default}
.dark-theme .game-card,.dark-theme .rating-section{background:#333;color:#e0e0e0;border-color:#333}
.dark-theme .rating-table th{background:#444}
.dark-theme .rating-table td{border-bottom-color:#555}
.dark-theme .game-start-btn{background:#6f70a9;color:#e5e5e5}
.dark-theme .game-input{background:#222;color:#ccc}
.game-start-reset{background:#ff9800!important}
.dark-theme .game-start-reset{background:#994a1f!important}
.contact-action.disabled{color:#999;font-weight:500}
.contact-item.disabled-item:hover{background:#f8f9fa;border-color:transparent;cursor:default}
.dark-theme .contact-action.disabled{color:#666}
.dark-theme .contact-item.disabled-item:hover{background:#37474f}
.ttt-game{max-width:fit-content;text-align:center;padding:0 30px;margin:0 auto}
.ttt-game h3,.checkers-game h3{font-size:1.3em;margin-bottom:10px;color:#5d5fef;text-shadow:0 2px 4px rgba(0,0,0,0.1);font-weight:700}
.ttt-board{width:fit-content;display:grid;grid-template-columns:repeat(3,0fr);gap:8px;margin:25px auto;justify-content:center;background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:15px;border-radius:15px;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 5px 15px rgba(0,0,0,0.1)}
.ttt-cell{aspect-ratio:1;border:none;display:flex;align-items:center;justify-content:center;font-size:3.5em;cursor:pointer;background:white;transition:all .3s cubic-bezier(0.4,0,0.2,1);width:90px;height:90px;border-radius:12px;box-shadow:0 4px 8px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.8);position:relative;overflow:hidden}
.ttt-cell::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);transition:left .5s ease}
.ttt-cell:hover::before{left:100%}
.ttt-cell:hover{background:#f8f9ff;transform:translateY(-2px) scale(1.02);box-shadow:0 6px 12px rgba(0,0,0,0.15),inset 0 1px 0 rgba(255,255,255,0.9)}
.ttt-cell:active{transform:translateY(0) scale(0.98);transition:transform .1s ease}
.ttt-cell.disabled{cursor:not-allowed;background:#f8f9fa;opacity:.6;transform:none;box-shadow:0 2px 4px rgba(0,0,0,0.05),inset 0 1px 0 rgba(255,255,255,0.6)}
.ttt-cell.disabled:hover{background:#f8f9fa;transform:none;box-shadow:0 2px 4px rgba(0,0,0,0.05),inset 0 1px 0 rgba(255,255,255,0.6)}
.ttt-cell[data-value="X"]{color:#ff6b6b;text-shadow:0 2px 4px rgba(255,107,107,0.3);font-weight:700}
.ttt-cell[data-value="O"]{color:#4ecdc4;text-shadow:0 2px 4px rgba(78,205,196,0.3);font-weight:700}
.ttt-cell:not(:empty){animation:symbolAppear .3s cubic-bezier(0.4,0,0.2,1)}
@keyframes symbolAppear {
0%{transform:scale(0) rotate(-180deg);opacity:0}
100%{transform:scale(1) rotate(0deg);opacity:1}
}
#ttt-game #status{width:fit-content;font-style:normal;font-size:1.2em;margin:20px auto;padding:12px 20px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border-radius:25px;box-shadow:0 4px 15px rgba(102,126,234,0.3);animation:pulseGlow 3s infinite}
@keyframes pulseGlow {
0%,100%{box-shadow:0 4px 15px rgba(102,126,234,0.9);opacity:1;transform:scale(1)}
50%{box-shadow:0 4px 20px rgba(102,126,234,0.6);opacity:.75;transform:scale(.95)}
}
#ttt-game .game-start-btn,#battleship-invite-section .game-start-btn,#checkers-game .game-start-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;padding:12px 30px;border-radius:25px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px rgba(102,126,234,0.3);margin:5px}
#ttt-game .game-start-btn:hover,#battleship-invite-section .game-start-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4);opacity:1}
#ttt-game .game-start-btn:active,#battleship-invite-section .game-start-btn:active{transform:translateY(0)}
#ttt-game .avatar-delete-btn,.#checkers-game .avatar-delete-btn{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);color:white;border:none;padding:12px 30px;border-radius:25px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px rgba(255,107,107,0.3);margin:5px}
#ttt-game .avatar-delete-btn:hover,#checkers-game .avatar-delete-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,107,107,0.4)}
.ttt-cell.winning-cell{animation:winPulse .6s ease-in-out 3;background:linear-gradient(135deg,#fff9c4,#fff176)!important}
@keyframes winPulse {
0%,100%{transform:scale(1);box-shadow:0 4px 8px rgba(0,0,0,0.1)}
50%{transform:scale(1.1);box-shadow:0 6px 20px rgba(255,193,7,0.4)}
}
.ttt-cell.disabled{cursor:not-allowed;background:#f8f9fa;opacity:.6;transform:none;box-shadow:0 2px 4px rgba(0,0,0,0.05),inset 0 1px 0 rgba(255,255,255,0.6)}
.ttt-cell.disabled:hover{background:#f8f9fa;transform:none;box-shadow:0 2px 4px rgba(0,0,0,0.05),inset 0 1px 0 rgba(255,255,255,0.6)}
.dark-theme .ttt-game h3,.dark-theme .checkers-game h3{color:#6885c1;text-shadow:0 2px 4px rgba(0,0,0,0.3)}
.dark-theme .ttt-board{background:linear-gradient(145deg,#4a5568,#2d3748);box-shadow:inset 0 2px 4px rgba(0,0,0,0.3),0 5px 15px rgba(0,0,0,0.3)}
.dark-theme .ttt-cell{background:#4a5568;box-shadow:0 4px 8px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.1)}
.dark-theme .ttt-cell:hover{background:#5a6578;box-shadow:0 6px 12px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.15)}
.dark-theme .ttt-cell.disabled{background:#212835;box-shadow:0 2px 4px rgba(0,0,0,0.2),inset 0 1px 0 rgba(255,255,255,0.05);cursor:not-allowed}
.dark-theme .ttt-cell.disabled:hover{background:#3c4657}
.dark-theme #ttt-game #status{background:linear-gradient(135deg,#7a66a7 0%,#583d97 100%);box-shadow:0 4px 15px rgba(128,90,213,0.3);filter:brightness(0.9)}
.dark-theme .ttt-cell.winning-cell{background:linear-gradient(135deg,#744210,#d69e2e)!important}
@media (max-width: 480px) {
.ttt-game{max-width:320px;margin:20px auto;margin:0 auto}
.ttt-cell{width:80px;height:80px;font-size:3em}
.ttt-board{padding:12px;gap:6px}
#ttt-game #status{font-size:1.1em;padding:10px 16px}
}
@media (max-width: 360px) {
.ttt-game{max-width:280px;padding:15px}
.ttt-cell{width:70px;height:70px;font-size:2.5em}
}
.battleship-game{max-width:fit-content;margin:10px auto;text-align:center;padding:0 10px}
.battleship-game h3{font-size:1.3em;margin-bottom:25px;color:#5d5fef;text-shadow:0 2px 4px rgba(0,0,0,0.1);font-weight:700}
.battleship-container{display:flex;gap:20px;justify-content:center;margin:20px 0;flex-wrap:nowrap}
.battleship-board-container{text-align:center;padding:20px;background:linear-gradient(145deg,#e3e4ff,#c2c3ff);border-radius:20px;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1),0 5px 15px rgba(0,0,0,0.1)}
.battleship-board-container h4{margin:0;color:#5d5fef;font-weight:600;font-size:1.1em}
.battleship-board{display:grid;grid-template-columns:repeat(10,0fr);gap:3px;margin:10px 0;justify-content:center;background:rgba(255,255,255,0.5);padding:15px;border-radius:15px;box-shadow:inset 0 2px 4px rgba(0,0,0,0.1)}
.battleship-cell{width:32px;height:32px;border:none;background:white;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .3s cubic-bezier(0.4,0,0.2,1);border-radius:6px;box-shadow:0 2px 4px rgba(0,0,0,0.1),inset 0 1px 0 rgba(255,255,255,0.8);position:relative;overflow:hidden}
.battleship-cell::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);transition:left .5s ease}
.battleship-cell:hover::before{left:100%}
.battleship-cell:hover{background:#c2cbff;transform:translateY(-2px) scale(1.05);box-shadow:0 4px 8px rgba(0,0,0,0.15),inset 0 1px 0 rgba(255,255,255,0.9)}
.battleship-cell:active{transform:translateY(0) scale(0.95);transition:transform .1s ease}
.battleship-cell.ship{background:linear-gradient(135deg,#a6c4d3,#7596a5);box-shadow:0 2px 4px rgba(84,110,122,0.3),inset 0 1px 0 rgba(255,255,255,0.3)}
.battleship-cell.ship::after{content:"";width:70%;height:70%;background:rgba(255,255,255,0.2);border-radius:3px}
.battleship-cell.hit{background:linear-gradient(135deg,#ff6b6b,#f44336);color:white;animation:hitPulse .4s ease-in-out}
.battleship-cell.hit::after{content:"💥";font-size:14px;filter:drop-shadow(0 1px 2px rgba(0,0,0,0.3))}
.battleship-cell.miss{background:linear-gradient(135deg,#e0e0e0,#bdbdbd)}
.battleship-cell.miss::after{content:"•";color:#666;font-size:18px;font-weight:700}
.battleship-cell.hover-ship{background:linear-gradient(135deg,#c996ec,#bb86df)!important;box-shadow:0 0 8px rgba(76,175,80,0.5),inset 0 1px 0 rgba(255,255,255,0.4)}
.battleship-cell.hover-buffer{background:linear-gradient(135deg,#accbf3,#9bbfec)!important;opacity:.7;box-shadow:0 0 6px rgba(255,235,59,0.4),inset 0 1px 0 rgba(255,255,255,0.4)}
.battleship-cell.invalid-ship{background:linear-gradient(135deg,#ff6b6b,#f44336)!important;box-shadow:0 0 8px rgba(244,67,54,0.5),inset 0 1px 0 rgba(255,255,255,0.4);animation:shake .5s ease-in-out}
@keyframes hitPulse {
0%,100%{transform:scale(1)}
50%{transform:scale(1.2)}
}
@keyframes shake {
0%,100%{transform:translateX(0)}
25%{transform:translateX(-2px)}
75%{transform:translateX(2px)}
}
.battleship-cell.disabled{cursor:not-allowed;opacity:.6;pointer-events:none;transform:none!important}
#battleship-status,#checkers-status,#words-lobby-status{width:fit-content;margin:10px auto;padding:10px 15px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white!important;border-radius:25px;box-shadow:0 4px 15px rgba(102,126,234,0.3);animation:pulseGlow 3s infinite}
#ship-placement{margin:10px 0}
#ship-placement p{font-weight:600;color:#6f70d7;margin-bottom:15px;font-size:1.1em}
.ships-to-place{display:flex;gap:12px;justify-content:center;margin:10px 0;flex-wrap:wrap}
.ship-item{padding:6px 10px;background:white;border:2px solid #c2c3ff;border-radius:12px;cursor:pointer;transition:all .3s ease;font-weight:500;color:#5d5fef;box-shadow:0 2px 4px rgba(0,0,0,0.1)}
.ship-item.selected{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border-color:#5d5fef;transform:translateY(-2px);box-shadow:0 4px 8px rgba(102,126,234,0.3)}
.ship-item:hover{background:#f8f9ff;transform:translateY(-1px);box-shadow:0 3px 6px rgba(0,0,0,0.15);color:#755aff}
.ship-item.disabled{opacity:.5;cursor:not-allowed;background:#e9ecef;border-color:#adb5bd;color:#6c757d;transform:none;box-shadow:none}
.ship-item.disabled:hover{background:#e9ecef;transform:none;box-shadow:none}
.battleship-controls .game-start-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;padding:12px;border-radius:25px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px rgba(102,126,234,0.3);margin:5px}
.battleship-controls .game-start-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4);opacity:1}
.battleship-controls .avatar-delete-btn,.tictactoe-controls .avatar-delete-btn,.checkers-controls .avatar-delete-btn{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);color:white;border:none;padding:12px 24px;border-radius:25px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 15px rgba(255,107,107,0.3);margin:5px 8px}
.battleship-controls .avatar-delete-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,107,107,0.4)}
.dark-theme .battleship-game h3{color:#6885c1;text-shadow:0 2px 4px rgba(0,0,0,0.3)}
.dark-theme .battleship-board-container{background:linear-gradient(145deg,#4a5568,#2d3748);box-shadow:inset 0 2px 4px rgba(0,0,0,0.3),0 5px 15px rgba(0,0,0,0.3)}
.dark-theme .battleship-board-container h4{color:#6885c1}
.dark-theme .battleship-board{background:rgba(45,55,72,0.5)}
.dark-theme .battleship-controls .game-start-btn{filter:brightness(0.8)}
.dark-theme .battleship-cell{background:#4a5568;box-shadow:0 2px 4px rgba(0,0,0,0.3),inset 0 1px 0 rgba(255,255,255,0.1)}
.dark-theme .battleship-cell:hover{background:#7d83a3;box-shadow:0 4px 8px rgba(0,0,0,0.4),inset 0 1px 0 rgba(255,255,255,0.15)}
.dark-theme .battleship-cell.ship{background:linear-gradient(135deg,#546e7a,#37474f);box-shadow:0 2px 4px rgba(55,71,79,0.4),inset 0 1px 0 rgba(255,255,255,0.2)}
.dark-theme .battleship-cell.hit{background:linear-gradient(135deg,#ba3636,#b71c1c)}
.dark-theme .battleship-cell.miss{background:linear-gradient(135deg,#555,#333)}
.dark-theme .battleship-cell.hover-ship{background:linear-gradient(135deg,#436983,#376a7f)!important}
.dark-theme .battleship-cell.hover-buffer{background:linear-gradient(135deg,#675aa5,#5d4fa5)!important}
.dark-theme .battleship-cell.invalid-ship{background:linear-gradient(135deg,#83353b,#7f292f)!important}
.dark-theme #battleship-status,.dark-theme #checkers-status,.dark-theme #words-lobby-status{background:linear-gradient(135deg,#7a66a7 0%,#583d97 100%);box-shadow:0 4px 15px rgba(128,90,213,0.3);filter:brightness(0.9)}
.dark-theme .ship-item{background:#4a5568;border-color:#6f70a9;color:#a3bffa;box-shadow:0 2px 4px rgba(0,0,0,0.3);filter:brightness(0.8)}
.dark-theme .ship-item.selected{background:linear-gradient(135deg,#805ad5 0%,#6b46c1 100%);color:white;border-color:#a3bffa}
.dark-theme .ship-item:hover{background:#5a6578}
.dark-theme .ship-item.disabled{background:#37474f;border-color:#555;color:#777}
.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,0.9);z-index:4;display:none;flex-direction:column;justify-content:center;align-items:center;transition:opacity .3s ease}
body.dark-theme .loading-overlay{background:rgba(30,30,30,0.95)}
.spinner{width:50px;height:50px;border:5px solid #e0e0e0;border-top-color:#3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}
body.dark-theme .spinner{border-color:#444;border-top-color:#3498db}
@keyframes spin {
to{transform:rotate(360deg)}
}
.loading-text{font-size:1.2rem;font-weight:500;color:#333;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
body.dark-theme .loading-text{color:#fff}
.rating-tabs{display:flex;margin-bottom:20px;border-bottom:1px solid #ddd;flex-wrap:wrap}
.rating-tab{padding:10px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:16px;transition:all .3s ease;color:#666}
.rating-table a{color:#898acf;text-decoration:none}
.rating-table a:hover{text-decoration:underline}
.rating-tab:hover{color:#333;background:#f8f9fa}
.rating-tab.active{color:#c2c3ff;border-bottom-color:#c2c3ff;font-weight:700}
.rating-wrapper{overflow:auto}
.rating-tab-content{display:none;background:#fff}
.rating-tab-content.active{display:block}
.dark-theme .rating-tabs{border-bottom-color:#555}
.dark-theme .rating-tab{color:#aaa}
.dark-theme .rating-tab:hover{color:#e0e0e0;background:#444}
.dark-theme .rating-tab.active{color:#6f70a9;border-bottom-color:#6f70a9}
.dark-theme .rating-tab-content{background:#2a2a2a}
.dark-theme .rating-table th{border-bottom:1px solid #aaa}
@media (max-width: 768px) {
.rating-tabs{flex-direction:column}
.rating-tab{text-align:center;border-bottom:1px solid #ddd;border-left:3px solid transparent}
.rating-tab.active{border-bottom-color:#c2c3ff;border-left-color:#c2c3ff}
.games-desc{margin-bottom:20px}
.games-title{margin:10px 0}
.dark-theme .rating-tab{border-bottom-color:#555}
.games-container{margin:unset;padding:10px;max-width:unset}
.game-start-btn{margin-bottom:10px}
.battleship-container{gap:20px;flex-wrap:wrap}
.battleship-board-container{padding:15px}
.battleship-cell{width:28px;height:28px}
.ships-to-place{gap:8px}
.ship-item{padding:8px 12px;font-size:14px}
.backpage-btn{margin:10px auto 0!important}
}
@media (max-width: 480px) {
.battleship-game{padding:0 10px}
.battleship-game h3{margin-bottom:0}
.battleship-cell{font-size:10px}
.battleship-board-container{padding:5px}
.battleship-container{margin:10px 0;gap:10px}
.battleship-board{padding:10px;margin:0;gap:2px}
.battleship-controls .game-start-btn,.battleship-controls .avatar-delete-btn{padding:10px 16px;font-size:14px;margin:3px 5px}
}
.checkers-game{text-align:center}
.checkers-game-container{max-width:600px;margin:0 auto;padding:20px;background:var(--bg-color);border-radius:15px;box-shadow:0 4px 20px rgba(0,0,0,0.1);border:1px solid var(--border-color)}
.checkers-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--border-color)}
.checkers-game-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding:15px;background:var(--card-bg);border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.1)}
.checkers-status{font-size:1.1em;font-weight:600;color:var(--text-color)}
.checkers-status.victory{color:#4CAF50;font-weight:700}
.checkers-status.defeat{color:#f44336;font-weight:700}
.checkers-timer{font-family:'Courier New',monospace;font-size:1.3em;font-weight:700;color:var(--accent-color);background:var(--card-bg);padding:5px 12px;border-radius:8px;border:2px solid var(--border-color)}
.checkers-board-container{display:flex;flex-direction:column;align-items:center;gap:20px;margin-bottom:20px}
.checkers-board{display:grid;grid-template-columns:repeat(8,50px);grid-template-rows:repeat(8,50px);border:4px solid var(--border-color);border-radius:8px;box-shadow:0 6px 20px rgba(0,0,0,0.15);background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:10px}
.dark-theme .checkers-board{background:linear-gradient(145deg,#4a5568,#2d3748)}
.checkers-cell{display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(0.4,0,0.2,1);border-radius:4px;position:relative}
.checkers-cell.light{background-color:#f0d9b5}
.checkers-cell.dark{background-color:#b58863}
.checkers-cell.selected{background-color:#aec6cf!important;box-shadow:inset 0 0 0 3px #4CAF50,0 0 10px rgba(76,175,80,0.5);transform:scale(1.05)}
.checkers-cell.possible-move::before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:rgba(102,255,108,0.7);border:2px solid #4CAF50;animation:pulse 2s infinite}
@keyframes pulse {
0%,100%{transform:scale(1);opacity:.7}
50%{transform:scale(1.1);opacity:1}
}
.checkers-piece{width:42px;height:42px;border-radius:50%;border:3px solid transparent;transition:all .3s ease;box-shadow:0 3px 8px rgba(0,0,0,0.3);position:relative;z-index:2}
.checkers-piece.white{background:linear-gradient(135deg,#ffffff 0%,#f0f0f0 100%);border-color:#d0d0d0}
.checkers-piece.black{background:linear-gradient(135deg,#2c2c2c 0%,#1a1a1a 100%);border-color:#000}
.checkers-piece.king::after{content:"♔";font-size:26px;color:gold;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-shadow:0 1px 3px rgba(0,0,0,0.8);font-weight:700}
.checkers-piece.movable{cursor:pointer}
.checkers-piece.movable:hover{transform:translateY(-3px) scale(1.05);z-index:5}
.checkers-piece.white.movable:hover{box-shadow:0 6px 12px rgba(0,0,0,0.3),inset 0 -4px 6px rgba(0,0,0,0.15)}
.checkers-piece.black.movable:hover{box-shadow:0 6px 12px rgba(0,0,0,0.5),inset 0 -4px 6px rgba(255,255,255,0.15)}
.checkers-piece.selected{transform:translateY(-5px) scale(1.1)!important;z-index:10;transition:.2s}
.checkers-piece.white.selected{box-shadow:0 0 0 3px #FFD700,0 8px 15px rgba(0,0,0,0.4)}
.checkers-piece.black.selected{box-shadow:0 0 0 3px #a084d7,0 8px 15px rgba(0,0,0,0.6)}
.checkers-controls{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;align-items:stretch}
.checkers-btn{padding:12px 24px;border:none;border-radius:25px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s ease;box-shadow:0 3px 10px rgba(0,0,0,0.2)}
.checkers-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,0.3)}
.checkers-btn:active{transform:translateY(0)}
.surrender-btn{background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);color:white}
.surrender-btn:hover{background:linear-gradient(135deg,#ff5252 0%,#e53935 100%)}
.rematch-btn{background:linear-gradient(135deg,#4CAF50 0%,#45a049 100%);color:white;display:none}
.rematch-btn:hover{background:linear-gradient(135deg,#43A047 0%,#388E3C 100%)}
.checkers-chat{margin-top:25px;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:0 3px 10px rgba(0,0,0,0.1)}
.checkers-chat-messages{height:120px;overflow-y:auto;padding:15px;background:var(--card-bg);border-bottom:1px solid var(--border-color)}
.checkers-chat-message{margin-bottom:10px;padding:8px 12px;border-radius:18px;word-wrap:break-word;max-width:80%;animation:messageAppear .3s ease}
@keyframes messageAppear {
from{opacity:0;transform:translateY(10px)}
to{opacity:1;transform:translateY(0)}
}
.checkers-chat-message.own-message{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;margin-left:auto;border-bottom-right-radius:5px}
.checkers-chat-message.opponent-message{background:var(--border-color);margin-right:auto;border-bottom-left-radius:5px}
.checkers-chat-input{display:flex;padding:15px;background:var(--bg-color);gap:10px}
.checkers-chat-input input{flex:1;padding:12px 15px;border:1px solid var(--border-color);border-radius:25px;background:var(--input-bg);color:var(--text-color);font-size:14px}
.checkers-chat-input input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px rgba(102,126,234,0.2)}
.checkers-chat-input button{padding:12px 20px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:25px;cursor:pointer;font-weight:600;transition:all .3s ease}
.checkers-chat-input button:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(102,126,234,0.3)}
.close-game-btn{background:none;border:none;font-size:1.8em;cursor:pointer;color:var(--text-color);padding:8px 12px;border-radius:50%;transition:all .3s ease}
.close-game-btn:hover{background:var(--border-color);color:var(--accent-color);transform:rotate(90deg)}
.dark-theme .checkers-cell.light{background-color:#d1b18b}
.dark-theme .checkers-cell.dark{background-color:#8b5a2b}
.dark-theme .checkers-piece.white{background:linear-gradient(135deg,#e8e8e8 0%,#d0d0d0 100%);border-color:#b0b0b0}
.dark-theme .checkers-piece.black{background:linear-gradient(135deg,#404040 0%,#282828 100%);border-color:#1a1a1a}
@media (max-width: 768px) {
.checkers-board{grid-template-columns:repeat(8,40px);grid-template-rows:repeat(8,40px);padding:8px;width:fit-content;margin:0 auto}
.checkers-piece{width:34px;height:34px}
.checkers-piece.king::after{font-size:18px}
.checkers-game-info{flex-direction:column;gap:10px;text-align:center}
.checkers-controls{flex-direction:column;width:100%;max-width:200px;margin:0 auto}
.checkers-btn{width:100%}
.checkers-chat-messages{height:100px}
}
@media (max-width: 480px) {
.checkers-board{grid-template-columns:repeat(8,35px);grid-template-rows:repeat(8,35px);padding:6px}
.checkers-piece{width:30px;height:30px}
.checkers-piece.king::after{font-size:14px}
.checkers-game-container{padding:15px}
.checkers-chat-input{flex-direction:column;gap:10px}
.checkers-chat-input button{width:100%}
}
@keyframes pieceAppear {
0%{transform:scale(0) rotate(-180deg);opacity:0}
100%{transform:scale(1) rotate(0deg);opacity:1}
}
.checkers-piece{animation:pieceAppear .4s cubic-bezier(0.4,0,0.2,1)}
.hike-game-card{background:linear-gradient(135deg,#a8e063 0%,#56ab2f 100%);color:white}
.hike-game-card h3{color:white!important;text-shadow:0 1px 2px rgba(0,0,0,0.2)}
.hike-game-card p{color:rgba(255,255,255,0.9)!important}
.hike-game-card .game-start-btn{background:white;color:#56ab2f}
.invite-hint{font-size:.9rem;text-align:center;padding-bottom:15px}
.invite-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:10001;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease,backdrop-filter .3s ease;backdrop-filter:blur(0px)}
.invite-modal.active{opacity:1;visibility:visible;pointer-events:auto;backdrop-filter:blur(5px)}
.invite-modal-content{background:#fff;width:90%;max-width:400px;border-radius:20px;padding:20px;box-shadow:0 10px 40px rgba(0,0,0,0.3);display:flex;flex-direction:column;max-height:80vh;transform:scale(0.9) translateY(10px);opacity:0;transition:transform .4s cubic-bezier(0.34,1.56,0.64,1),opacity .3s ease}
.invite-modal.active .invite-modal-content{transform:scale(1) translateY(0);opacity:1}
.invite-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;border-bottom:1px solid #eee;padding-bottom:10px}
.invite-header h3{margin:0;font-size:1.2rem;color:#333}
.close-modal-btn{background:none;border:none;font-size:36px;cursor:pointer;color:#999;transition:.2s}
.close-modal-btn:hover{opacity:.75}
.contacts-list{overflow-y:auto;flex:1;display:flex;flex-direction:column;scrollbar-width:thin;gap:8px}
.contact-item{display:flex;align-items:center;gap:12px;padding:10px;border-radius:12px;background:#f8f9fa;cursor:pointer;transition:.2s;border:1px solid transparent}
.contact-item:hover{background:#eef2ff;border-color:#c2c3ff}
.contact-avatar{width:40px;height:40px;border-radius:50%;background:#ddd;object-fit:cover}
.contact-info{flex:1;text-align:left}
.contact-name{font-weight:600;font-size:14px;color:#333}
.contact-action{font-size:14px;color:#8d66ea;font-weight:700}
.invite-trigger-btn{background:linear-gradient(135deg,#a072bb,#5f26ae)!important;box-shadow:0 4px 15px rgb(50 0 176 / 30%)!important;margin-top:10px;width:100%}
.invite-trigger-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgb(0 4 176 / 40%)!important}
.dark-theme .invite-modal-content{background:#2d3436;color:#eceff1}
.dark-theme .invite-header{border-color:#444}
.dark-theme .invite-header h3{color:#eceff1}
.dark-theme .contact-item{background:#37474f}
.dark-theme .contact-item:hover{background:#455a64;border-color:#9fa8da}
.dark-theme .contact-name{color:#eceff1}
.dark-theme .contact-action{color:#80cbc4}
.game-over-modal{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.8);z-index:1000;display:flex;flex-direction:column;justify-content:center;align-items:center;backdrop-filter:blur(5px);animation:fadeIn .5s ease}
.game-over-content{background:white;padding:30px 40px;border-radius:25px;text-align:center;box-shadow:0 20px 50px rgba(0,0,0,0.5);max-width:300px;width:90%;transform:scale(0.8);animation:popIn .5s cubic-bezier(0.68,-0.55,0.265,1.55) forwards}
.game-over-title{font-size:2rem;margin:0 0 10px;font-weight:800}
.game-over-text{font-size:1.2rem;color:#555;margin-bottom:25px}
.game-over-victory .game-over-title{background:linear-gradient(135deg,#00b894,#00cec9);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.game-over-defeat .game-over-title{background:linear-gradient(135deg,#ff7675,#d63031);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.game-over-buttons{display:flex;flex-direction:column;gap:10px}
.game-timer{font-size:1.2em;font-weight:700;margin:10px auto;padding:5px 15px;border-radius:15px;width:fit-content;display:none;transition:color .3s ease}
.game-timer.warning{color:#f44336;animation:pulse 1s infinite}
.dark-theme .game-over-content{background:#2d3436;color:#dfe6e9}
.dark-theme .game-over-text{color:#b2bec3}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes popIn{from{transform:scale(0.8);opacity:0}to{transform:scale(1);opacity:1}}
.guest-blurred{filter:blur(5px);pointer-events:none;user-select:none;opacity:.7}
.guest-overlay-container{position:fixed;bottom:50px;left:50%;transform:translateX(-50%);z-index:2000;width:90%;max-width:400px;animation:slideUp .5s ease-out}
.guest-auth-banner{background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);border-radius:12px;padding:20px;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,0.2);border:1px solid rgba(0,0,0,0.1)}
.dark-theme .guest-auth-banner{background:rgba(45,45,45,0.95);border-color:rgba(255,255,255,0.1)}
.guest-auth-banner h3{margin:0 0 10px;color:#333;font-size:18px}
.dark-theme .guest-auth-banner h3{color:#fff}
.guest-auth-banner p{margin:0 0 15px;color:#666;font-size:14px}
.dark-theme .guest-auth-banner p{color:#ccc}
.guest-login-btn{display:inline-block;background:#633ea4;color:white;padding:10px 25px;border-radius:25px;text-decoration:none;font-weight:700;transition:.2s}
.guest-login-btn:hover{background:#503285;transform:translateY(-2px)}
@keyframes slideUp {
from{transform:translate(-50%,100%);opacity:0}
to{transform:translate(-50%,0);opacity:1}
}


.match3-game {max-width:400px;margin:20px auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
.match3-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 10px}
.match3-score {font-size:1.8em;font-weight:800;color:#5d5fef;text-shadow:0 2px 4px rgba(0,0,0,0.1);display:flex;align-items:center;gap:10px}
.match3-score span {display:inline-block;transition:transform .2s cubic-bezier(0.175,0.885,0.32,1.275),color .2s}
.match3-score span.bump {transform:scale(1.4);color:#ff4757}
.match3-board {width:340px;height:340px;display:grid;grid-template-columns:repeat(8,1fr);gap:4px;background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:10px;border-radius:16px;margin:0 auto;box-shadow:0 10px 30px rgba(0,0,0,0.1),inset 0 2px 4px rgba(255,255,255,0.5)}
.match3-cell {width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:26px;cursor:pointer;border-radius:8px;background:rgba(255,255,255,0.4);transition:transform .2s ease,background .2s,box-shadow .2s;user-select:none;z-index:1;box-shadow:inset 0 2px 4px rgba(255,255,255,0.8)}
.match3-cell.selected {background:rgba(255,255,255,0.9);transform:scale(1.15);z-index:2;box-shadow:0 0 15px rgba(255,255,255,0.9)}
.match3-cell:hover:not(.selected) {background:rgba(255,255,255,0.7)}
.match3-cell.pop {animation:match3Pop .4s cubic-bezier(0.175,0.885,0.32,1.275) forwards}
@keyframes match3Pop {
0%{transform:scale(1);opacity:1;filter:brightness(1)}
50%{transform:scale(1.5);opacity:.8;filter:brightness(1.5)}
100%{transform:scale(0);opacity:0;filter:brightness(2)}
}
.dark-theme .match3-board {background:linear-gradient(145deg,#2c3e50,#34495e);box-shadow:0 10px 30px rgba(0,0,0,0.5),inset 0 2px 4px rgba(255,255,255,0.05)}
.dark-theme .match3-cell {background:rgba(0,0,0,0.2);box-shadow:none}
.dark-theme .match3-cell.selected {background:rgba(255,255,255,0.3);box-shadow:0 0 15px rgba(255,255,255,0.4)}
.dark-theme .match3-cell:hover:not(.selected) {background:rgba(255,255,255,0.1)}
.dark-theme .match3-score {color:#a29bfe}
@media (max-width: 480px) {
.match3-board {width:300px;height:300px;padding:6px;gap:2px}
.match3-cell {font-size:22px;border-radius:6px}
}
.match3-header-stats {display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.match3-level {font-size:0.95em;font-weight:700;color:#ff9f43;background:rgba(255,159,67,0.1);padding:4px 10px;border-radius:12px;white-space:nowrap}
.match3-timer {font-size:0.95em;font-weight:700;color:#ee5253;background:rgba(238,82,83,0.1);padding:4px 10px;border-radius:12px;min-width:56px;white-space:nowrap}
.match3-close-btn {width:30px;height:30px;border-radius:50%;border:none;background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;font-size:17px;font-weight:bold;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px rgba(231,76,60,0.35);flex-shrink:0;padding:0}
.match3-close-btn:active {transform:scale(0.95)}
.dark-theme .match3-close-btn {background:linear-gradient(135deg,#c0392b,#962d22)}
.match3-addtime-btn {border:none;border-radius:12px;padding:4px 10px;background:rgba(255,159,67,0.1);color:#ff9f43;font-size:0.95em;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap;transition:background 0.15s}
.match3-addtime-btn:hover {background:rgba(255,159,67,0.2)}
.match3-addtime-btn:disabled {opacity:0.5;cursor:default}
/* единые кнопки для одиночных игр: выход-крестик и покупка времени */
.game-close-btn {width:30px;height:30px;border-radius:50%;border:none;background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;font-size:17px;font-weight:bold;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 8px rgba(231,76,60,0.35);flex-shrink:0;padding:0;line-height:1}
.game-close-btn:active {transform:scale(0.95)}
.dark-theme .game-close-btn {background:linear-gradient(135deg,#c0392b,#962d22)}
.game-addtime-btn {border:none;border-radius:14px;padding:5px 11px;background:linear-gradient(135deg,#ff9f43,#f39c12);color:#fff;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap;box-shadow:0 3px 8px rgba(243,156,18,0.35);transition:transform 0.1s}
.game-addtime-btn:active {transform:scale(0.94)}
.game-addtime-btn:disabled {opacity:0.5;cursor:default}
.match3-target-wrap {font-size:1.1em;color:#666;margin:-10px 0 15px 0;font-weight:600}
.dark-theme .match3-target-wrap {color:#aaa}
.match3-board-wrapper {position:relative;width:fit-content;margin:0 auto}
.match3-game-over {position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,0.9);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#333;border-radius:16px;z-index:10;backdrop-filter:blur(5px);box-shadow:0 4px 15px rgba(0,0,0,0.1)}
.match3-game-over h2 {font-size:2em;margin:0 0 10px;text-shadow:0 1px 2px rgba(0,0,0,0.1)}
.match3-game-over p {font-size:1.2em;margin:0 0 20px;color:#555}
.dark-theme .match3-game-over {background:rgba(0,0,0,0.85);color:white;box-shadow:none}
.dark-theme .match3-game-over h2 {text-shadow:0 2px 4px rgba(0,0,0,0.5)}
.dark-theme .match3-game-over p {color:#ccc}
.match3-overlay-btn {background:linear-gradient(135deg,#667eea,#764ba2);color:white;border:none;padding:12px 25px;border-radius:25px;font-size:1.1em;cursor:pointer;transition:transform .2s,box-shadow .2s;font-weight:700}
.match3-overlay-btn:hover {transform:translateY(-2px);box-shadow:0 5px 15px rgba(102,126,234,0.4)}
.match3-floating-score{position:absolute;color:#ff9f43;font-weight:900;font-size:2.5em;text-shadow:0 4px 8px #0000004d;pointer-events:none;z-index:100;animation:floatUp 1s ease-out forwards}
@keyframes floatUp {
0%{transform:translate(-50%,0) scale(0.5);opacity:0}
20%{transform:translate(-50%,-20px) scale(1.2);opacity:1}
100%{transform:translate(-50%,-80px) scale(1);opacity:0}
}

.tetris-game {max-width: 500px; margin: 20px auto; text-align: center; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; touch-action: manipulation;}
.tetris-header {display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; padding: 0 10px;}
.tetris-score-panel {display: flex; flex-direction: column; align-items: flex-start; gap: 5px;}
.tetris-score {font-size: 1.5em; font-weight: 800; color: #5d5fef; text-shadow: 0 2px 4px rgba(0,0,0,0.1); display: flex; align-items: center; gap: 10px;}
.tetris-score span {display: inline-block; transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), color 0.2s;}
.tetris-score span.bump {transform: scale(1.4); color: #ff4757;}
.tetris-level {font-size: 1.1em; font-weight: 700; color: #ff9f43; background: rgba(255, 159, 67, 0.1); padding: 5px 12px; border-radius: 12px;}
.tetris-board-wrapper {position: relative; width: fit-content; margin: 0 auto; display: flex; gap: 20px; align-items: flex-start;}
.tetris-board {width: 260px; height: 520px; display: grid; grid-template-columns: repeat(10, 1fr); grid-template-rows: repeat(20, 1fr); gap: 1px; background: linear-gradient(145deg, #e3e4ff, #c2c3ff); padding: 6px; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.1), inset 0 2px 4px rgba(255,255,255,0.5);}
.tetris-cell {width: 100%; height: 100%; border-radius: 2px; background: rgba(255, 255, 255, 0.4); transition: background 0.1s; box-shadow: inset 0 0 2px rgba(255,255,255,0.6);}
.tetris-cell.filled {box-shadow: inset 0 2px 4px rgba(255,255,255,0.8), 0 0 5px rgba(0,0,0,0.1);}
.tetris-cell.ghost {opacity: 0.3; box-shadow: inset 0 0 0 1px rgba(0,0,0,0.2);}
.tetris-cell.flash {animation: tetrisFlash 0.3s ease-out;}
@keyframes tetrisFlash { 0% { background: white; transform: scale(1.1); } 100% { transform: scale(1); } }
.tetris-sidebar {display: flex; flex-direction: column; gap: 15px;}
.tetris-next-piece {width: 90px; height: 90px; background: linear-gradient(145deg, #e3e4ff, #c2c3ff); border-radius: 10px; display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(4, 1fr); gap: 1px; padding: 5px; box-shadow: 0 5px 15px rgba(0,0,0,0.1);}
.tetris-next-title {font-size: 1em; font-weight: 700; color: #5d5fef; margin-bottom: 5px;}
.tetris-controls {display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat(2, 1fr); gap: 15px; margin-top: 25px; max-width: 340px; margin-left: auto; margin-right: auto;}
.tetris-btn {background: #e3e4ff; color: #5d5fef; border: none; border-radius: 30px; font-size: 2em; font-weight: normal; cursor: pointer; transition: transform 0.1s, background 0.2s; user-select: none; display: flex; align-items: center; justify-content: center; height: 60px; outline: none; -webkit-tap-highlight-color: transparent; box-shadow: 0 4px 10px rgba(0,0,0,0.05);}
.tetris-btn:active {transform: scale(0.92); background: #d1d3ff;}
.tetris-btn.drop {grid-column: span 2;}
.tetris-btn.hard-drop {grid-column: span 1;}
.dark-theme .tetris-board, .dark-theme .tetris-next-piece {background: linear-gradient(145deg, #1a1a2e, #16213e); box-shadow: 0 10px 30px rgba(0,0,0,0.5), inset 0 2px 4px rgba(255,255,255,0.05);}
.dark-theme .tetris-cell {background: rgba(0, 0, 0, 0.3); box-shadow: inset 0 0 2px rgba(0,0,0,0.5);}
.dark-theme .tetris-cell.filled {box-shadow: inset 0 2px 4px rgba(255,255,255,0.4), 0 0 5px rgba(0,0,0,0.3); opacity: 0.75;}
.dark-theme .tetris-cell.ghost {opacity: 0.2; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.5);}
.dark-theme .tetris-score, .dark-theme .tetris-next-title {color: #a29bfe;}
.dark-theme .tetris-btn {background: #2d3748; color: #a29bfe; box-shadow: 0 4px 10px rgba(0,0,0,0.3);}
.dark-theme .tetris-btn:active {background: #4a5568;}
@media (max-width: 600px) {
.tetris-board-wrapper {flex-direction: column; align-items: center; gap: 15px;}
.tetris-sidebar {flex-direction: row; width: 100%; justify-content: space-around; align-items: center;}
.tetris-next-title {margin-bottom: 0; margin-right: 10px;}
.tetris-sidebar > div {display: flex; align-items: center;}
.tetris-board {width: 65vw; height: 130vw; max-width: 260px; max-height: 520px;}
}
@media (max-width: 400px) {
.tetris-board {width: 80vw; height: 160vw;}
.tetris-controls {gap: 12px; padding: 0 10px;}
.tetris-btn {height: 55px; font-size: 1.8em;}
}


.g2048-game {max-width:500px;margin:20px auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;touch-action:none;user-select:none}
.g2048-header {display:flex;justify-content:space-between;align-items:center;margin:0 auto 20px;max-width:340px;padding:0}
.g2048-score-panel {display:flex;gap:10px}
.g2048-score-box {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;padding:8px 15px;border-radius:12px;font-weight:700;display:flex;flex-direction:column;align-items:center;min-width:60px;box-shadow:0 4px 15px rgba(102,126,234,0.3);transition:transform .1s ease}
.g2048-score-title {font-size:.7em;color:rgba(255,255,255,0.8);text-transform:uppercase;letter-spacing:1px}
.g2048-score-value {font-size:1.2em}
.g2048-board {width:340px;height:340px;background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:10px;border-radius:16px;position:relative;margin:0 auto;box-sizing:border-box;box-shadow:inset 0 2px 4px rgba(255,255,255,0.5),0 10px 30px rgba(0,0,0,0.1);touch-action:none}
.g2048-grid {display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:10px;width:100%;height:100%}
.g2048-cell {background:rgba(255,255,255,0.4);border-radius:8px;box-shadow:inset 0 1px 3px rgba(0,0,0,0.05)}
.g2048-tile-container {position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}
.g2048-tile {position:absolute;width:72.5px;height:72.5px;border-radius:8px;display:flex;justify-content:center;align-items:center;font-size:2em;font-weight:800;transition:top .15s cubic-bezier(0.2,0.8,0.2,1), left .15s cubic-bezier(0.2,0.8,0.2,1);z-index:10}
.g2048-tile-new {animation:g2048Appear .2s cubic-bezier(0.2,0.8,0.2,1) backwards}
.g2048-tile-merged {animation:g2048Pop .2s cubic-bezier(0.2,0.8,0.2,1) backwards;animation-delay:.15s;z-index:9}
@keyframes g2048Appear {0%{opacity:0;transform:scale(0)}100%{opacity:1;transform:scale(1)}}
@keyframes g2048Pop {0%{transform:scale(1)}50%{transform:scale(1.2)}100%{transform:scale(1)}}
.g2048-tile[data-val="2"] {background:#fff;color:#5d5fef;box-shadow:0 4px 8px rgba(0,0,0,0.05)}
.g2048-tile[data-val="4"] {background:#f8f9ff;color:#5d5fef;box-shadow:0 4px 8px rgba(0,0,0,0.05)}
.g2048-tile[data-val="8"] {background:#e3e4ff;color:#5d5fef}
.g2048-tile[data-val="16"] {background:#c2c3ff;color:#fff}
.g2048-tile[data-val="32"] {background:#a3a6ff;color:#fff}
.g2048-tile[data-val="64"] {background:#8488ff;color:#fff}
.g2048-tile[data-val="128"] {background:#667eea;color:#fff;font-size:1.6em;box-shadow:0 4px 10px rgba(102,126,234,0.3)}
.g2048-tile[data-val="256"] {background:#764ba2;color:#fff;font-size:1.6em;box-shadow:0 4px 10px rgba(118,75,162,0.3)}
.g2048-tile[data-val="512"] {background:#ff6b6b;color:#fff;font-size:1.6em;box-shadow:0 4px 10px rgba(255,107,107,0.3)}
.g2048-tile[data-val="1024"] {background:#feca57;color:#fff;font-size:1.2em;box-shadow:0 4px 15px rgba(254,202,87,0.4)}
.g2048-tile[data-val="2048"] {background:#ff9f43;color:#fff;font-size:1.2em;box-shadow:0 0 20px rgba(255,159,67,0.6),inset 0 0 0 1px rgba(255,255,255,0.3)}
.g2048-tile-super {background:linear-gradient(135deg,#ff9f43,#ff4757);color:#fff;font-size:1.2em;box-shadow:0 0 20px rgba(255,71,87,0.6)}
.g2048-game-over {position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.8);backdrop-filter:blur(5px);z-index:100;display:none;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;animation:g2048FadeIn .5s ease}
.g2048-game-over.active {display:flex}
.g2048-game-over h2 {font-size:2em;color:#5d5fef;margin:0 0 20px;text-shadow:0 2px 4px rgba(0,0,0,0.1)}
.g2048-btn {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:25px;padding:12px 25px;font-weight:700;font-size:16px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px rgba(102,126,234,0.3)}
.g2048-btn:hover {transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4)}
.g2048-btn:active {transform:translateY(0)}
@keyframes g2048FadeIn {0%{opacity:0}100%{opacity:1}}
.dark-theme .g2048-board {background:linear-gradient(145deg,#4a5568,#2d3748);box-shadow:inset 0 2px 4px rgba(0,0,0,0.3),0 10px 30px rgba(0,0,0,0.5)}
.dark-theme .g2048-cell {background:rgba(0,0,0,0.2)}
.dark-theme .g2048-score-box,.dark-theme .g2048-btn {background:linear-gradient(135deg,#7a66a7 0%,#583d97 100%);box-shadow:0 4px 15px rgba(128,90,213,0.3)}
.dark-theme .g2048-game-over {background:rgba(30,30,30,0.85)}
.dark-theme .g2048-game-over h2 {color:#a29bfe;text-shadow:0 2px 4px rgba(0,0,0,0.5)}
.dark-theme .g2048-tile[data-val="2"] {background:#3c4657;color:#e3e4ff;box-shadow:0 4px 8px rgba(0,0,0,0.3)}
.dark-theme .g2048-tile[data-val="4"] {background:#4a5568;color:#fff;box-shadow:0 4px 8px rgba(0,0,0,0.3)}
@media (max-width:480px) {
.g2048-header {max-width:300px}
.g2048-board {width:300px;height:300px;padding:6px}
.g2048-grid {gap:6px}
.g2048-tile {width:67.5px;height:67.5px;font-size:1.6em}
.g2048-tile[data-val="128"],.g2048-tile[data-val="256"],.g2048-tile[data-val="512"] {font-size:1.2em}
.g2048-tile[data-val="1024"],.g2048-tile[data-val="2048"],.g2048-tile-super {font-size:1em}
}


.balda-game {max-width:500px;margin:20px auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;user-select:none;touch-action:none}
.balda-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 10px}
.balda-score-panel {display:flex;flex-direction:column;align-items:flex-start}
.balda-score {font-size:1.1em;font-weight:800;color:#5d5fef;display:flex;align-items:center;gap:10px}
.balda-status {font-size:1.1em;font-weight:600;color:#ff9f43;background:rgba(255,159,67,0.1);padding:5px 12px;border-radius:12px;min-height:28px}
.balda-board {box-sizing:border-box;width:340px;height:340px;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(5,1fr);gap:6px;background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:10px;border-radius:16px;margin:0 auto;box-shadow:0 10px 30px rgba(0,0,0,0.1),inset 0 2px 4px rgba(255,255,255,0.5)}
.balda-cell {position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;text-transform:uppercase;cursor:pointer;border-radius:8px;background:rgba(255,255,255,0.6);transition:all .2s ease;box-shadow:0 2px 4px rgba(0,0,0,0.05),inset 0 1px 0 rgba(255,255,255,0.8);color:#333}
.balda-cell:hover {transform:translateY(-2px);background:rgba(255,255,255,0.9);box-shadow:0 4px 8px rgba(0,0,0,0.1)}
.balda-cell.filled {background:#fff;color:#5d5fef}
.balda-cell.selected {background:#667eea;color:#fff;transform:scale(1.05);box-shadow:0 0 15px rgba(102,126,234,0.5)}
.balda-cell.new-letter {background:#ff9f43;color:#fff;animation:baldaPop .3s ease}
.balda-cell.invalid {animation:baldaShake .4s ease;background:#ff6b6b;color:#fff}
.balda-cell.valid {background:#2ecc71;color:#fff;animation:baldaPop .3s ease}
.balda-controls {display:flex;gap:10px;justify-content:center;margin-top:20px}
.balda-btn {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:25px;padding:12px 25px;font-weight:700;font-size:16px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px rgba(102,126,234,0.3)}
.balda-btn:hover:not(:disabled) {transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4)}
.balda-btn:disabled {background:#ccc;cursor:not-allowed;box-shadow:none;transform:none}
.balda-btn.cancel {background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);box-shadow:0 4px 15px rgba(255,107,107,0.3)}
.balda-btn.cancel:hover:not(:disabled) {box-shadow:0 6px 20px rgba(255,107,107,0.4)}
.balda-keyboard {display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:20px;max-width:360px;margin-left:auto;margin-right:auto}
.balda-key {width:32px;height:42px;border-radius:6px;border:none;background:#e3e4ff;color:#5d5fef;font-weight:700;font-size:16px;cursor:pointer;box-shadow:0 2px 4px rgba(0,0,0,0.1);transition:all .1s ease}
.balda-key:active {transform:scale(0.9)}
.balda-words-list {margin-top:20px;max-height:150px;overflow-y:auto;text-align:left;background:#f8f9fa;padding:15px;border-radius:12px;box-shadow:inset 0 2px 5px rgba(0,0,0,0.05)}
.balda-word-item {display:inline-block;background:#e3e4ff;color:#5d5fef;padding:6px 12px;border-radius:15px;margin:4px;font-size:14px;font-weight:600}
@keyframes baldaPop {0%{transform:scale(0.8)}50%{transform:scale(1.1)}100%{transform:scale(1)}}
@keyframes baldaShake {0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
.dark-theme .balda-board {background:linear-gradient(145deg,#2c3e50,#34495e);box-shadow:0 10px 30px rgba(0,0,0,0.5),inset 0 2px 4px rgba(255,255,255,0.05)}
.dark-theme .balda-cell {background:rgba(0,0,0,0.3);color:#ccc;box-shadow:inset 0 1px 0 rgba(255,255,255,0.05)}
.dark-theme .balda-cell:hover {background:rgba(0,0,0,0.5)}
.dark-theme .balda-cell.filled {background:#3c4657;color:#a29bfe}
.dark-theme .balda-cell.selected {background:#6c5ce7;color:#fff}
.dark-theme .balda-key {background:#3c4657;color:#a29bfe}
.dark-theme .balda-words-list {background:#2d3748}
.dark-theme .balda-word-item {background:#4a5568;color:#a29bfe}
.balda-stats {display:flex;gap:10px;margin-top:8px;margin-bottom:8px}
.balda-level {font-size:1.1em;font-weight:700;color:#ff9f43;background:rgba(255,159,67,0.1);padding:5px 12px;border-radius:12px}
.balda-timer {font-size:1.1em;font-weight:700;color:#2ecc71;background:rgba(46,204,113,0.1);padding:5px 12px;border-radius:12px;min-width:60px;text-align:center;transition:all .3s ease}
.balda-timer.warning {color:#fff;background:#ff4757;animation:baldaPulse 1s infinite}
@keyframes baldaPulse {
0%,100%{transform:scale(1)}
50%{transform:scale(1.05);box-shadow:0 0 10px rgba(255,71,87,0.5)}
}
.dark-theme .balda-btn {opacity:0.75}
.dark-theme .balda-btn:hover:not(:disabled) {opacity:1}
.dark-theme .balda-cell.selected {background:#00b894;color:#fff;box-shadow:0 0 15px rgba(0,184,148,0.5)}
.dark-theme .balda-cell.new-letter {background:#e17055;color:#fff}

.balda-cell.bonus-x2 {color:#e67e22;box-shadow:inset 0 0 0 2px rgba(230,126,34,0.5)}
.balda-cell.bonus-x3 {color:#9b59b6;box-shadow:inset 0 0 0 2px rgba(155,89,182,0.5)}
.balda-cell::after {content:attr(data-bonus);position:absolute;bottom:2px;right:4px;font-size:11px;font-weight:900;opacity:0.8}
.dark-theme .balda-cell.bonus-x2 {color:#f39c12;box-shadow:inset 0 0 0 2px rgba(243,156,18,0.5)}
.dark-theme .balda-cell.bonus-x3 {color:#a29bfe;box-shadow:inset 0 0 0 2px rgba(162,155,254,0.5)}
.balda-time-added {position:fixed;color:#2ecc71;font-weight:900;font-size:1.5em;pointer-events:none;animation:baldaFloatUp 1s ease-out forwards;z-index:100;text-shadow:0 2px 4px rgba(0,0,0,0.2)}
.balda-mult-added {color:#f39c12}
@keyframes baldaFloatUp {
0%{transform:translateY(0) scale(0.5);opacity:0}
20%{transform:translateY(-10px) scale(1.2);opacity:1}
100%{transform:translateY(-40px) scale(1);opacity:0}
}
.balda-btn.skip {background:linear-gradient(135deg,#f39c12 0%,#d35400 100%);box-shadow:0 4px 15px rgba(243,156,18,0.3)}
.balda-btn.skip:hover:not(:disabled) {box-shadow:0 6px 20px rgba(243,156,18,0.4)}
.balda-controls {flex-wrap:wrap}
.balda-time-removed {color:#ff6b6b !important;}
@media (max-width: 480px) {
.balda-game{margin:10px auto;padding:0 10px}
.balda-header{margin-bottom:15px}
.balda-board{width:100%;height:calc(100vw - 20px);max-width:340px;max-height:340px;gap:4px;padding:6px}
.balda-cell{font-size:clamp(18px,6vw,26px);border-radius:6px}
.balda-keyboard{gap:4px;padding:0}
.balda-key{width:calc(10% - 4px);min-width:26px;height:38px;font-size:14px;border-radius:4px}
.balda-controls{gap:8px;margin-top:15px}
.balda-btn{padding:10px 16px;font-size:14px}
}

.anagram-game {max-width:500px;margin:20px auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;user-select:none;touch-action:manipulation}
.anagram-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 10px}
.anagram-score-panel {display:flex;flex-direction:column;align-items:flex-start}
.anagram-score {font-size:1.1em;font-weight:800;color:#5d5fef;display:flex;align-items:center;gap:10px}
.anagram-timer {font-size:1.1em;font-weight:700;color:#2ecc71;background:rgba(46,204,113,0.1);padding:5px 12px;border-radius:12px;min-width:60px;text-align:center;transition:all .3s ease}
.anagram-timer.warning {color:#fff;background:#ff4757;animation:anagramPulse 1s infinite}
.anagram-board-wrap {background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:15px;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.1),inset 0 2px 4px rgba(255,255,255,0.5);position:relative}
.anagram-answer-area {display:flex;justify-content:center;gap:8px;min-height:55px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px dashed rgba(255,255,255,0.8)}
.anagram-pool-area {display:flex;justify-content:center;flex-wrap:wrap;gap:8px;min-height:55px}
.anagram-letter {width:45px;height:45px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;text-transform:uppercase;cursor:pointer;border-radius:8px;background:rgba(255,255,255,0.8);color:#333;box-shadow:0 4px 8px rgba(0,0,0,0.1);transition:all .2s ease}
.anagram-letter:hover {transform:translateY(-2px);background:#fff;box-shadow:0 6px 12px rgba(0,0,0,0.15)}
.anagram-letter:active {transform:scale(0.95)}
.anagram-letter.in-answer {background:#667eea;color:#fff;box-shadow:0 0 15px rgba(102,126,234,0.5)}
.anagram-letter.valid {background:#2ecc71;color:#fff;animation:anagramPop .3s ease}
.anagram-letter.invalid {background:#ff6b6b;color:#fff;animation:anagramShake .4s ease}
.anagram-controls {display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap}
.anagram-btn {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:25px;padding:12px 25px;font-weight:700;font-size:16px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px rgba(102,126,234,0.3)}
.anagram-btn:hover {transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4)}
.anagram-btn.cancel {background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);box-shadow:0 4px 15px rgba(255,107,107,0.3)}
.anagram-btn.skip {background:linear-gradient(135deg,#f39c12 0%,#d35400 100%);box-shadow:0 4px 15px rgba(243,156,18,0.3)}
.anagram-game-over {position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.9);backdrop-filter:blur(5px);z-index:100;display:none;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;animation:anagramFadeIn .5s ease}
.anagram-game-over.active {display:flex}
.anagram-game-over h2 {font-size:2em;color:#5d5fef;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,0.1)}
.anagram-game-over p {font-size:1.2em;color:#555;margin-bottom:20px;font-weight:600}
@keyframes anagramPulse {0%,100%{transform:scale(1)}50%{transform:scale(1.05);box-shadow:0 0 10px rgba(255,71,87,0.5)}}
@keyframes anagramPop {0%{transform:scale(0.8)}50%{transform:scale(1.1)}100%{transform:scale(1)}}
@keyframes anagramShake {0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@keyframes anagramFadeIn {0%{opacity:0}100%{opacity:1}}
.dark-theme .anagram-board-wrap {background:linear-gradient(145deg,#2c3e50,#34495e);box-shadow:0 10px 30px rgba(0,0,0,0.5),inset 0 2px 4px rgba(255,255,255,0.05)}
.dark-theme .anagram-answer-area {border-bottom-color:rgba(255,255,255,0.1)}
.dark-theme .anagram-letter {background:rgba(0,0,0,0.3);color:#ccc;box-shadow:none}
.dark-theme .anagram-letter:hover {background:rgba(0,0,0,0.5)}
.dark-theme .anagram-letter.in-answer {background:#6c5ce7;color:#fff}
.dark-theme .anagram-letter.valid {background:#00b894}
.dark-theme .anagram-letter.invalid {background:#d63031}
.dark-theme .anagram-game-over {background:rgba(30,30,30,0.9)}
.dark-theme .anagram-game-over h2 {color:#a29bfe;text-shadow:0 2px 4px rgba(0,0,0,0.5)}
.dark-theme .anagram-game-over p {color:#ccc}
@media (max-width: 480px) {
.anagram-game {margin:10px auto;padding:0 10px}
.anagram-letter {width:12vw;height:12vw;font-size:18px;max-width:40px;max-height:40px}
.anagram-btn {padding:10px 16px;font-size:14px}
}
.anagram-letter{transition:transform .2s cubic-bezier(0.175,0.885,0.32,1.275),background 0.2s,box-shadow 0.2s,opacity .2s}
.anagram-letter:hover{transform:translateY(-5px) scale(1.05)}
.anagram-btn{position:relative;overflow:hidden;transition:all .3s ease}
.anagram-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.2);filter:brightness(1.1)}
.anagram-btn:active:not(:disabled){transform:translateY(0)}
.anagram-btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1)}
.time-penalty-float{position:absolute;color:#ff4757;font-weight:900;font-size:1.5em;pointer-events:none;animation:penaltyFloatUp 1s ease-out forwards;z-index:100;text-shadow:0 2px 4px rgba(0,0,0,0.2)}
@keyframes penaltyFloatUp {
0%{transform:translateY(0) scale(0.5);opacity:0}
20%{transform:translateY(-10px) scale(1.2);opacity:1}
100%{transform:translateY(-50px) scale(1);opacity:0}
}
.dark-theme .anagram-letter{background:#335a6e;color:#eceff1;box-shadow:0 4px 0 #263238}
.dark-theme .anagram-letter.in-answer{background:#5c6bc0;box-shadow:0 4px 0 #3949ab}
.dark-theme .anagram-btn.cancel{background:linear-gradient(135deg,#d32f2f,#b71c1c)}
.dark-theme .anagram-btn{opacity:.8}
.time-bonus-float{position:absolute;color:#2ecc71;font-weight:900;font-size:1.5em;pointer-events:none;animation:penaltyFloatUp 1s ease-out forwards;z-index:100;text-shadow:0 2px 4px rgba(0,0,0,0.2)}
@keyframes answerLetterAppear {
0%{transform:scale(0) translateY(10px);opacity:0}
60%{transform:scale(1.05) translateY(-5px);opacity:1}
100%{transform:scale(1) translateY(0);opacity:1}
}
@keyframes answerLetterLeave {
0%{transform:scale(1);opacity:1}
100%{transform:scale(0) rotate(15deg);opacity:0}
}
.anagram-letter.in-answer{animation:answerLetterAppear .3s cubic-bezier(0.175,0.885,0.32,1.275) forwards;transition:all .2s ease}
.anagram-letter.leaving{animation:answerLetterLeave .25s ease-in forwards;pointer-events:none}
.anagram-letter.pool-returning{animation:answerLetterAppear .3s reverse forwards;pointer-events:none}

.hangman-game {max-width:500px;margin:20px auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;user-select:none;touch-action:manipulation}
.hangman-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 10px}
.hangman-score-panel {display:flex;flex-direction:column;align-items:flex-start}
.hangman-score {font-size:1.1em;font-weight:800;color:#5d5fef;display:flex;align-items:center;gap:6px;white-space:nowrap}
.hangman-level {font-size:0.95em;font-weight:700;color:#ff9f43;background:rgba(255,159,67,0.1);padding:4px 10px;border-radius:12px;white-space:nowrap;width:fit-content}
.hangman-board-wrap {background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:20px;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.1),inset 0 2px 4px rgba(255,255,255,0.5);position:relative;margin-bottom:20px}
.hangman-drawing {width:150px;height:200px;margin:0 auto 20px;display:block}
.hangman-part {stroke:#5d5fef;stroke-width:4;stroke-linecap:round;fill:none;opacity:0;transition:opacity 0.3s ease}
.hangman-base {stroke:#333;stroke-width:4;stroke-linecap:round;fill:none}
.hangman-word-area {display:flex;justify-content:center;flex-wrap:wrap;gap:8px;min-height:50px}
.hangman-letter-box {width:40px;height:50px;border-bottom:4px solid #5d5fef;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;text-transform:uppercase;color:#333;transition:all 0.3s ease}
.hangman-keyboard {display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:400px;margin:0 auto}
.hangman-key {width:36px;height:45px;border-radius:8px;border:none;background:#e3e4ff;color:#5d5fef;font-weight:700;font-size:16px;cursor:pointer;box-shadow:0 4px 8px rgba(0,0,0,0.1);transition:all 0.2s ease}
.hangman-key:hover:not(:disabled) {transform:translateY(-2px);background:#fff;box-shadow:0 6px 12px rgba(0,0,0,0.15)}
.hangman-key:active:not(:disabled) {transform:scale(0.95)}
.hangman-key:disabled {opacity:0.5;cursor:not-allowed;box-shadow:none;transform:none}
.hangman-key.correct {background:#2ecc71;color:#fff}
.hangman-key.wrong {background:#ff6b6b;color:#fff;opacity:0.8}
.hangman-controls {display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap}
.hangman-btn {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:25px;padding:12px 25px;font-weight:700;font-size:16px;cursor:pointer;transition:all 0.2s ease;box-shadow:0 4px 15px rgba(102,126,234,0.3)}
.hangman-btn:hover {transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4)}
.hangman-btn.cancel {background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);box-shadow:0 4px 15px rgba(255,107,107,0.3)}
.hangman-game-over {position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.9);backdrop-filter:blur(5px);z-index:100;display:none;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;animation:hangmanFadeIn 0.5s ease}
.hangman-game-over.active {display:flex}
.hangman-game-over h2 {font-size:2em;color:#5d5fef;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,0.1)}
.hangman-game-over p {font-size:1.2em;color:#555;margin-bottom:20px;font-weight:600}
.hangman-game-over .correct-word {color:#2ecc71;font-size:1.4em;display:block;margin:10px 0}
@keyframes hangmanFadeIn {0%{opacity:0}100%{opacity:1}}
.dark-theme .hangman-board-wrap {background:linear-gradient(145deg,#2c3e50,#34495e);box-shadow:0 10px 30px rgba(0,0,0,0.5),inset 0 2px 4px rgba(255,255,255,0.05)}
.dark-theme .hangman-base {stroke:#888}
.dark-theme .hangman-part {stroke:#a29bfe}
.dark-theme .hangman-letter-box {border-color:#a29bfe;color:#eceff1}
.dark-theme .hangman-key {background:#3c4657;color:#a29bfe;box-shadow:0 4px 8px rgba(0,0,0,0.3)}
.dark-theme .hangman-key:hover:not(:disabled) {background:#4a5568}
.dark-theme .hangman-key.correct {background:#00b894;color:#fff}
.dark-theme .hangman-key.wrong {background:#d63031;color:#fff}
.dark-theme .hangman-game-over {background:rgba(30,30,30,0.9)}
.dark-theme .hangman-game-over h2 {color:#a29bfe;text-shadow:0 2px 4px rgba(0,0,0,0.5)}
.dark-theme .hangman-game-over p {color:#ccc}
@media (max-width: 480px) {
.hangman-game {margin:10px auto;padding:0 10px}
.hangman-key {width:30px;height:40px;font-size:14px}
.hangman-letter-box {width:30px;height:40px;font-size:22px}
}
.hangman-timer-wrap {background:rgba(0,0,0,0.05);padding:4px 10px;border-radius:20px;border:2px solid #5d5fef;margin:0}
.hangman-timer {font-family:monospace;font-size:1.05em;font-weight:700;color:#5d5fef}
.hangman-timer.warning {color:#ff4757;animation:hmPulse 1s infinite}
@keyframes hmPulse {0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}

.hm-feedback-float {position:absolute;pointer-events:none;font-weight:800;font-size:1.2em;animation:hmFloatUp 1s ease-out forwards;z-index:1000;text-shadow:0 2px 4px rgba(0,0,0,0.2)}
.hm-feedback-float.positive {color:#2ecc71}
.hm-feedback-float.negative {color:#ff4757}
@keyframes hmFloatUp {
    0% {transform:translate(-50%, 0); opacity:0}
    20% {transform:translate(-50%, -20px); opacity:1}
    100% {transform:translate(-50%, -60px); opacity:0}
}

.hm-victory-overlay {position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:50;display:none;overflow:hidden;border-radius:16px}
.hm-victory-overlay.active {display:block;animation:hmVictoryFlash 0.5s ease-out}
.hm-victory-overlay.active::before {
    content:''; position:absolute; top:0; left:0; width:100%; height:100%;
    background:radial-gradient(circle, rgba(255,255,255,0.8) 0%, transparent 70%);
    animation:hmVictoryRadial 2s infinite;
}

@keyframes hmVictoryFlash {0%{background:rgba(255,255,255,0.8)} 100%{background:transparent}}
@keyframes hmVictoryRadial {0%{transform:scale(0.5); opacity:0} 50%{opacity:1} 100%{transform:scale(1.5); opacity:0}}

.hangman-letter-box.revealed {animation:hmLetterPop 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275)}
@keyframes hmLetterPop {0%{transform:scale(0); opacity:0} 100%{transform:scale(1); opacity:1}}

.dark-theme .hangman-timer-wrap {border-color:#a29bfe}
.dark-theme .hangman-timer {color:#a29bfe}

.minesweeper-game {max-width:500px;margin:20px auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;user-select:none;touch-action:manipulation}
.minesweeper-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 10px}
.minesweeper-score-panel {display:flex;flex-direction:column;align-items:flex-start}
.minesweeper-score {font-size:1em;font-weight:800;color:#5d5fef;display:flex;align-items:center;gap:5px;white-space:nowrap}
.minesweeper-timer {font-size:0.95em;font-weight:700;color:#ff9f43;background:rgba(255,159,67,0.1);padding:4px 8px;border-radius:12px;min-width:48px;text-align:center;white-space:nowrap}
.minesweeper-board-wrap {background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:15px;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.1),inset 0 2px 4px rgba(255,255,255,0.5);position:relative;margin:0 auto;width:fit-content}
.minesweeper-board {display:grid;gap:2px;background:rgba(255,255,255,0.4);padding:4px;border-radius:8px;box-shadow:inset 0 2px 4px rgba(0,0,0,0.05)}
.minesweeper-cell {width:32px;height:32px;background:linear-gradient(135deg,#ffffff,#f0f0f0);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;cursor:pointer;box-shadow:0 2px 4px rgba(0,0,0,0.1),inset 0 -2px 0 rgba(0,0,0,0.1);transition:transform 0.1s,background 0.2s;color:transparent}
.minesweeper-cell:active:not(.revealed):not(.flagged) {transform:scale(0.95);box-shadow:none}
.minesweeper-cell.revealed {background:rgba(0,0,0,0.08);box-shadow:inset 0 2px 5px rgba(0,0,0,0.15);cursor:default}
.minesweeper-cell.flagged::after {content:"🚩";color:initial;font-size:16px}
.minesweeper-cell.mine {background:#ff6b6b}
.minesweeper-cell.mine::after {content:"💣";color:initial;font-size:18px}
.minesweeper-cell.exploded {background:#d63031}
.minesweeper-cell[data-val="1"].revealed {color:#3498db}
.minesweeper-cell[data-val="2"].revealed {color:#2ecc71}
.minesweeper-cell[data-val="3"].revealed {color:#e74c3c}
.minesweeper-cell[data-val="4"].revealed {color:#9b59b6}
.minesweeper-cell[data-val="5"].revealed {color:#f1c40f}
.minesweeper-cell[data-val="6"].revealed {color:#e67e22}
.minesweeper-cell[data-val="7"].revealed {color:#34495e}
.minesweeper-cell[data-val="8"].revealed {color:#95a5a6}
.minesweeper-controls {display:flex;gap:10px;justify-content:center;margin-top:20px;flex-wrap:wrap}
.minesweeper-btn {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:25px;padding:12px 25px;font-weight:700;font-size:16px;cursor:pointer;transition:all 0.2s ease;box-shadow:0 4px 15px rgba(102,126,234,0.3)}
.minesweeper-btn:hover {transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4)}
.minesweeper-btn.mode-toggle {background:linear-gradient(135deg,#f39c12 0%,#d35400 100%);box-shadow:0 4px 15px rgba(243,156,18,0.3)}
.minesweeper-btn.mode-toggle.flag-mode {background:linear-gradient(135deg,#e74c3c 0%,#c0392b 100%);box-shadow:0 4px 15px rgba(231,76,60,0.3)}
.minesweeper-btn.cancel {background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);box-shadow:0 4px 15px rgba(255,107,107,0.3)}
.minesweeper-game-over {position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.9);backdrop-filter:blur(5px);z-index:100;display:none;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;animation:minesweeperFadeIn 0.5s ease}
.minesweeper-game-over.active {display:flex}
.minesweeper-game-over h2 {font-size:2em;color:#5d5fef;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,0.1)}
.minesweeper-game-over p {font-size:1.2em;color:#555;margin-bottom:20px;font-weight:600}
@keyframes minesweeperFadeIn {0%{opacity:0}100%{opacity:1}}
.dark-theme .minesweeper-board-wrap {background:linear-gradient(145deg,#2c3e50,#34495e);box-shadow:0 10px 30px rgba(0,0,0,0.5),inset 0 2px 4px rgba(255,255,255,0.05)}
.dark-theme .minesweeper-board {background:rgba(0,0,0,0.2)}
.dark-theme .minesweeper-cell {background:linear-gradient(135deg,#4a5568,#2d3748);box-shadow:0 2px 4px rgba(0,0,0,0.3),inset 0 -2px 0 rgba(0,0,0,0.2)}
.dark-theme .minesweeper-cell.revealed {background:rgba(0,0,0,0.3);box-shadow:inset 0 1px 2px rgba(0,0,0,0.5)}
.dark-theme .minesweeper-game-over {background:rgba(30,30,30,0.9)}
.dark-theme .minesweeper-game-over h2 {color:#a29bfe;text-shadow:0 2px 4px rgba(0,0,0,0.5)}
.dark-theme .minesweeper-game-over p {color:#ccc}
.minesweeper-cell:hover:not(.revealed):not(.flagged){background:#f0f3ff;transform:scale(1.05);box-shadow:0 4px 8px rgba(0,0,0,0.15),inset 0 -2px 0 rgba(0,0,0,0.15);z-index:2}
.dark-theme .minesweeper-controls .minesweeper-btn{opacity:.8}
.dark-theme .minesweeper-controls .minesweeper-btn:hover{opacity:1}
.dark-theme .minesweeper-cell:hover:not(.revealed):not(.flagged) {background:linear-gradient(135deg,#5a6578,#3d4758);transform:scale(1.05);box-shadow:0 4px 8px rgba(0,0,0,0.3),inset 0 -2px 0 rgba(0,0,0,0.2);z-index:2}
.ms-hint-toast {position:absolute;bottom:20px;left:50%;transform:translateX(-50%);background:rgba(0,0,0,0.8);color:#fff;padding:10px 20px;border-radius:20px;font-size:14px;z-index:1000;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 0.3s;box-shadow:0 4px 10px rgba(0,0,0,0.2)}
.ms-hint-toast.show {opacity:1}
@media (max-width: 480px) {
.minesweeper-game {margin:10px auto;padding:0 10px}
.minesweeper-cell {width:28px;height:28px;font-size:14px}
.minesweeper-btn {padding:10px 16px;font-size:14px}
}

.wordle-game {max-width:500px;margin:20px auto;text-align:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;user-select:none;touch-action:manipulation}
.wordle-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding:0 10px}
.wordle-score-panel {display:flex;flex-wrap:wrap;gap:10px;width:100%;justify-content:center;align-items:center}

.wordle-level {font-size:1.1em;font-weight:700;color:#ff9f43;background:rgba(255,159,67,0.1);padding:5px 12px;border-radius:12px}
.wordle-score-badge {font-size:1.1em;font-weight:700;color:#2ecc71;background:rgba(46,204,113,0.1);padding:5px 12px;border-radius:12px}
.wordle-timer {font-size:1.1em;font-weight:700;color:#5d5fef;background:rgba(93,95,239,0.1);padding:5px 12px;border-radius:12px;min-width:65px;transition:all 0.3s ease}
.wordle-timer.warning {color:#fff;background:#ff4757;animation:wordlePulse 1s infinite}

.wordle-legend {display:flex;justify-content:center;gap:15px;margin-bottom:15px;font-size:0.85em;font-weight:600;color:#666;flex-wrap:wrap}
.dark-theme .wordle-legend {color:#ccc}
.wordle-legend-item {display:flex;align-items:center;gap:5px}
.wordle-legend-color {display:inline-block;width:14px;height:14px;border-radius:4px}

.w-color-correct {background:#2ecc71;box-shadow:0 3px 8px rgba(46,204,113,0.3)}
.w-color-present {background:#f39c12;box-shadow:0 3px 8px rgba(243,156,18,0.3)}
.w-color-absent {background:#95a5a6;box-shadow:0 3px 8px rgba(149,165,166,0.3)}

.wordle-board-wrap {background:linear-gradient(145deg,#e3e4ff,#c2c3ff);padding:15px;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.1),inset 0 2px 4px rgba(255,255,255,0.5);margin:0 auto 20px;width:fit-content}
.wordle-board {display:grid;grid-template-columns:repeat(5, 1fr);grid-template-rows:repeat(6, 1fr);gap:6px;padding:4px}
.wordle-cell {width:50px;height:50px;background:rgba(255,255,255,0.6);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;text-transform:uppercase;color:#333;box-shadow:0 2px 4px rgba(0,0,0,0.05),inset 0 1px 0 rgba(255,255,255,0.8);border:2px solid transparent;transition:transform 0.1s}
.wordle-cell.filled {background:#fff;border:2px solid #a3a6ff;color:#5d5fef;animation:wordlePop 0.1s ease-in-out}

.wordle-cell.correct {background:#2ecc71;color:#fff;border-color:#2ecc71;box-shadow:0 4px 10px rgba(46,204,113,0.3)}
.wordle-cell.present {background:#f39c12;color:#fff;border-color:#f39c12;box-shadow:0 4px 10px rgba(243,156,18,0.3)}
.wordle-cell.absent {background:#95a5a6;color:#fff;border-color:#95a5a6;box-shadow:none}

.wordle-cell.flip {animation:wordleFlip 0.5s ease forwards}
.wordle-row.shake {animation:wordleShake 0.4s ease}

.wordle-keyboard {display:flex;flex-direction:column;gap:6px;max-width:400px;margin:0 auto}
.wordle-kbd-row {display:flex;justify-content:center;gap:6px}
.wordle-key {flex:1;height:45px;border-radius:8px;border:none;background:#e3e4ff;color:#5d5fef;font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 4px 8px rgba(0,0,0,0.1);transition:all 0.2s ease;display:flex;align-items:center;justify-content:center;padding:0 5px;text-transform:uppercase}
.wordle-key.wide {flex:1.5;font-size:12px}
.wordle-key:active {transform:scale(0.95)}

.wordle-key:hover {
    transform: translateY(-2px);
    background: #fff;
    box-shadow: 0 6px 12px rgba(0,0,0,0.15);
}

.wordle-key:active {
    transform: scale(0.92) translateY(0);
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.wordle-key.correct:hover { background: #2ecc71; filter: brightness(1.1); }
.wordle-key.present:hover { background: #f39c12; filter: brightness(1.1); }
.wordle-key.absent:hover { background: #95a5a6; filter: brightness(1.1); }

.wordle-key.correct {background:#2ecc71;color:#fff}
.wordle-key.present {background:#f39c12;color:#fff}
.wordle-key.absent {background:#95a5a6;color:#fff;opacity:0.8}

.wordle-controls {display:flex;gap:10px;justify-content:center;margin-top:20px}
.wordle-btn {background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border:none;border-radius:25px;padding:12px 25px;font-weight:700;font-size:16px;cursor:pointer;box-shadow:0 4px 15px rgba(102,126,234,0.3);transition:all 0.2s ease}
.wordle-btn:hover {transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4)}
.wordle-btn.cancel {background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);box-shadow:0 4px 15px rgba(255,107,107,0.3)}

@keyframes wordlePop { 0%{transform:scale(0.8)} 50%{transform:scale(1.1)} 100%{transform:scale(1)} }
@keyframes wordleShake { 0%,100%{transform:translateX(0)} 20%,60%{transform:translateX(-5px)} 40%,80%{transform:translateX(5px)} }
@keyframes wordleFlip { 
    0%{transform:rotateX(0); background:#fff; color:#5d5fef; border-color:#a3a6ff} 
    50%{transform:rotateX(90deg); background:#fff; color:#5d5fef; border-color:#a3a6ff} 
    51%{border-color:transparent}
    100%{transform:rotateX(0)} 
}
@keyframes wordlePulse { 0%,100%{transform:scale(1)} 50%{transform:scale(1.05);box-shadow:0 0 10px rgba(255,71,87,0.5)} }

.dark-theme .wordle-board-wrap {background:linear-gradient(145deg,#2c3e50,#34495e);box-shadow:0 10px 30px rgba(0,0,0,0.5),inset 0 2px 4px rgba(255,255,255,0.05)}
.dark-theme .wordle-cell {background:rgba(0,0,0,0.3);color:#ccc;box-shadow:inset 0 1px 0 rgba(255,255,255,0.05);border:2px solid transparent}
.dark-theme .wordle-cell.filled {background:#3c4657;color:#a29bfe;border-color:#5a6578}

.dark-theme .wordle-cell.correct, .dark-theme .w-color-correct {background:#00b894;color:#fff;border-color:#00b894;box-shadow:0 4px 10px rgba(0,184,148,0.3)}
.dark-theme .wordle-cell.present, .dark-theme .w-color-present {background:#e17055;color:#fff;border-color:#e17055;box-shadow:0 4px 10px rgba(225,112,85,0.3)}
.dark-theme .wordle-cell.absent,  .dark-theme .w-color-absent {background:#636e72;color:#fff;border-color:#636e72;box-shadow:none}

.dark-theme .wordle-key {background:#3c4657;color:#a29bfe}
.dark-theme .wordle-key.correct {background:#00b894;color:#fff}
.dark-theme .wordle-key.present {background:#e17055;color:#fff}
.dark-theme .wordle-key.absent {background:#636e72;color:#fff}

.dark-theme .wordle-key:hover { background: #4a5568; }
.dark-theme .wordle-key.correct:hover { background: #00b894; filter: brightness(1.1); }
.dark-theme .wordle-key.present:hover { background: #e17055; filter: brightness(1.1); }
.dark-theme .wordle-key.absent:hover { background: #636e72; filter: brightness(1.1); }

.wordle-key.wide{flex:1.5;font-size:12px;background:#5d5fef;color:#ffffff;box-shadow:0 4px 10px rgba(93,95,239,0.25)}
.wordle-key.wide:hover{background:#4b4dd6;color:#ffffff;box-shadow:0 6px 14px rgba(93,95,239,0.4)}
.dark-theme .wordle-key.wide{background:#a29bfe;color:#161a23;box-shadow:0 4px 12px rgba(162,155,254,0.25)}
.dark-theme .wordle-key.wide:hover{background:#b3adff;color:#161a23;box-shadow:0 6px 16px rgba(162,155,254,0.4)}

#wordle-toast{position:absolute;top:90px;left:50%;transform:translateX(-50%) translateY(10px);background:rgba(0,0,0,0.85);color:#fff;padding:10px 20px;border-radius:20px;z-index:100;font-weight:600;white-space:nowrap;box-shadow:0 4px 15px rgba(0,0,0,0.3);opacity:0;visibility:hidden;transition:opacity .3s ease,transform .3s ease,visibility .3s ease;pointer-events:none}
#wordle-toast.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}

.wordle-buy-btn{width:28px;height:28px;border-radius:50%;border:none;background:linear-gradient(135deg,#ff9f43 0%,#ff4757 100%);color:white;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(255,159,67,0.4);transition:transform 0.2s,background .2s;line-height:1;padding:0}
.wordle-buy-btn:hover:not(:disabled){transform:scale(1.1);filter:brightness(1.1)}
.wordle-buy-btn:active:not(:disabled){transform:scale(0.95)}
.wordle-buy-btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none;opacity:.6}
.dark-theme .wordle-buy-btn{opacity:.85}

@media (max-width: 480px) {
    .wordle-cell {width:12vw;height:12vw;max-width:45px;max-height:45px;font-size:20px}
    .wordle-key {height:40px;font-size:12px;padding:0 2px}
    .wordle-key.wide {font-size:10px}
}
/* === индивидуальные фоны карточек игр === */
.games-list .game-card{background:var(--grad-l, linear-gradient(155deg,#ffffff,#f2f3f7));border-color:rgba(0,0,0,0.06)}
.dark-theme .games-list .game-card{background:var(--grad-d, linear-gradient(155deg,#2e2e2e,#242424));border-color:rgba(255,255,255,0.08)}
/* одиночные */
.gc-match3{--gh:340;--gicon:'🌟';--grad-l:linear-gradient(150deg,#fff1f4 0%,#ffd7e0 55%,#f2b6cd 100%);--grad-d:linear-gradient(150deg,#451329 0%,#2b0d1c 60%,#1a0712 100%)}
.gc-tetris{--gh:210;--gicon:'🟦';--grad-l:linear-gradient(150deg,#eef6ff 0%,#cfe3fb 55%,#b3d0f2 100%);--grad-d:linear-gradient(150deg,#10233f 0%,#0b1830 60%,#070f1f 100%)}
.gc-g2048{--gh:32;--gicon:'🔢';--grad-l:linear-gradient(150deg,#fff6e8 0%,#ffe1b8 55%,#f5c987 100%);--grad-d:linear-gradient(150deg,#3f2a10 0%,#241708 60%,#150d04 100%)}
.gc-balda{--gh:105;--gicon:'🔤';--grad-l:linear-gradient(150deg,#f3faed 0%,#dcefc8 55%,#c2e0a2 100%);--grad-d:linear-gradient(150deg,#1d3313 0%,#101f0a 60%,#081204 100%)}
.gc-anagram{--gh:262;--gicon:'🔀';--grad-l:linear-gradient(150deg,#f5f0ff 0%,#e2d6fb 55%,#cbbaf1 100%);--grad-d:linear-gradient(150deg,#251545 0%,#150c2b 60%,#0c0619 100%)}
.gc-hangman{--gh:14;--gicon:'🪢';--grad-l:linear-gradient(150deg,#fff2ec 0%,#ffd9c9 55%,#f5b89f 100%);--grad-d:linear-gradient(150deg,#3d1a0d 0%,#241006 60%,#140903 100%)}
.gc-wordle{--gh:152;--gicon:'❓';--grad-l:linear-gradient(150deg,#edfaf3 0%,#c9ecd9 55%,#a3dcbe 100%);--grad-d:linear-gradient(150deg,#0f3323 0%,#081f15 60%,#04120c 100%)}
.gc-minesweeper{--gh:0;--gicon:'💣';--grad-l:linear-gradient(150deg,#f4f5f8 0%,#dfe2e9 55%,#efc5c5 100%);--grad-d:linear-gradient(150deg,#26292f 0%,#1a1c21 55%,#331114 100%)}
.gc-mario{--gh:200;--gicon:'🏃‍♂️‍➡️';--grad-l:linear-gradient(150deg,#e8f6ff 0%,#bfe3fa 50%,#ffd9b0 100%);--grad-d:linear-gradient(150deg,#0d2a44 0%,#132335 55%,#3a1d0d 100%)}
.gc-arkanoid{--gh:285;--gicon:'🧱';--grad-l:linear-gradient(150deg,#f8efff 0%,#e4ccf7 55%,#cdaaed 100%);--grad-d:linear-gradient(150deg,#2d1247 0%,#190a2b 60%,#0e0518 100%)}
.gc-wolf{--gh:45;--gicon:'🥚';--grad-l:linear-gradient(150deg,#f7f4e4 0%,#e6dfbc 55%,#d1c689 100%);--grad-d:linear-gradient(150deg,#2e2a12 0%,#1b1809 60%,#0f0d05 100%)}
.gc-bubbles{--gh:192;--gicon:'🫧';--grad-l:linear-gradient(150deg,#eafcff 0%,#c3ecf7 55%,#9cdaee 100%);--grad-d:linear-gradient(150deg,#082c38 0%,#051c24 60%,#031017 100%)}
.gc-kosynka{--gh:262;--gicon:'♠️';--grad-l:linear-gradient(150deg,#f2edff 0%,#d8c9f6 55%,#bda6ec 100%);--grad-d:linear-gradient(150deg,#2a1553 0%,#170b31 60%,#0d061c 100%)}
.gc-spiral{--gh:172;--gicon:'🌀';--grad-l:linear-gradient(150deg,#eafaf6 0%,#c2e9e0 55%,#98d5c9 100%);--grad-d:linear-gradient(150deg,#0a3330 0%,#051f1e 60%,#031212 100%)}
.gc-hearts{--gh:345;--gicon:'♥️';--grad-l:linear-gradient(150deg,#fdeef2 0%,#f4c9d4 55%,#e5a2b7 100%);--grad-d:linear-gradient(150deg,#45101f 0%,#270811 60%,#16040a 100%)}
.gc-tower{--gh:222;--gicon:'🏗';--grad-l:linear-gradient(150deg,#eef2f9 0%,#d3ddec 55%,#b3c3dd 100%);--grad-d:linear-gradient(150deg,#131d33 0%,#0b1120 60%,#060a14 100%)}
/* совместные */
.gc-tictactoe{--gh:95;--gicon:'⭕';--grad-l:linear-gradient(150deg,#f2f9ea 0%,#dcedc9 55%,#c3dfa4 100%);--grad-d:linear-gradient(150deg,#22350f 0%,#141f07 60%,#0b1204 100%)}
.gc-battleship{--gh:212;--gicon:'🚢';--grad-l:linear-gradient(150deg,#ebf2fa 0%,#c8d9ec 55%,#a4bedd 100%);--grad-d:linear-gradient(150deg,#0d1f36 0%,#071322 60%,#040b15 100%)}
.gc-chgk{--gh:46;--gicon:'🦉';--grad-l:linear-gradient(150deg,#fbf6e7 0%,#eddfb4 55%,#dac683 100%);--grad-d:linear-gradient(150deg,#2e2408 0%,#1a1403 60%,#0e0b02 100%)}
.gc-checkers{--gh:26;--gicon:'⚫';--grad-l:linear-gradient(150deg,#faf1e7 0%,#ecd8bf 55%,#d8ba92 100%);--grad-d:linear-gradient(150deg,#33200e 0%,#1e1206 60%,#110a03 100%)}
.gc-hike{--gh:130;--gicon:'🏕';--grad-l:linear-gradient(150deg,#eff8ec 0%,#d2e9c8 55%,#afd59e 100%);--grad-d:linear-gradient(150deg,#16300f 0%,#0c1d07 60%,#061103 100%)}
.gc-words{--gh:292;--gicon:'📝';--grad-l:linear-gradient(150deg,#f9effc 0%,#e8cef2 55%,#d3a8e4 100%);--grad-d:linear-gradient(150deg,#33123d 0%,#1e0a24 60%,#110514 100%)}
.gc-durak{--gh:312;--gicon:'🃏';--grad-l:linear-gradient(150deg,#fcedf6 0%,#f0c6e2 55%,#df9fcb 100%);--grad-d:linear-gradient(150deg,#3c1230 0%,#23091c 60%,#130410 100%)}
.gc-billiard{--gh:145;--gicon:'🎱';--grad-l:linear-gradient(150deg,#ecf7ef 0%,#c6e6cf 55%,#9ed2ae 100%);--grad-d:linear-gradient(150deg,#0d331c 0%,#072010 60%,#031208 100%)}
.gc-poker{--gh:355;--gicon:'🎴';--grad-l:linear-gradient(150deg,#fff0ee 0%,#fbd2cd 55%,#f0aca9 100%);--grad-d:linear-gradient(150deg,#3d1414 0%,#250a0a 60%,#140505 100%)}
.gc-darts{--gh:0;--gicon:'🎯';--grad-l:linear-gradient(150deg,#fdeef0 0%,#f6c8ce 55%,#eb9ea8 100%);--grad-d:linear-gradient(150deg,#3a0e16 0%,#24070d 60%,#130306 100%)}
.gc-chess{--gh:36;--gicon:'♞';--grad-l:linear-gradient(150deg,#faf3e6 0%,#ecd9b6 55%,#d7b57e 100%);--grad-d:linear-gradient(150deg,#33260f 0%,#201708 60%,#110c04 100%)}
.gc-bowling{--gh:210;--gicon:'🎳';--grad-l:linear-gradient(150deg,#eaf1fb 0%,#c6d7f0 55%,#9db6e2 100%);--grad-d:linear-gradient(150deg,#101a30 0%,#0a1120 60%,#050a14 100%)}
.dark-theme .games-list .game-start-btn{background:rgba(111,112,169,0.4);color:rgba(232,232,240,0.92);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.dark-theme .games-list .game-start-btn:hover{background:rgba(111,112,169,0.65);opacity:1}

.game-card{position:relative;transition:transform .45s cubic-bezier(.22,1,.36,1), box-shadow .45s ease;will-change:transform;--gh:250}
.game-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px hsla(var(--gh),70%,45%,.28)}
.dark-theme .game-card:hover{box-shadow:0 14px 30px hsla(var(--gh),85%,55%,.35)}
.game-card h3,.game-card p,.game-card .game-start-btn{position:relative;z-index:2}
.game-card::before{content:var(--gicon,'');position:absolute;right:8px;bottom:12px;font-size:62px;line-height:1;opacity:.14;pointer-events:none;transform:rotate(-12deg);z-index:1;transition:transform .3s, opacity .3s}
.game-card:hover::before{transform:rotate(-6deg) scale(1.08);opacity:.22}
.games-list:hover .game-card .mouse-glare{opacity:1}
.dark-theme .game-card::after{content:'';position:absolute;inset:-2px;border-radius:inherit;padding:2px;background:linear-gradient(90deg,transparent,#4285f4,#9b72cb,#d96570,#f4b400,#0f9d58,transparent);background-size:300% 300%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:rainbow-border 2.5s ease-out forwards;pointer-events:none;z-index:10}
