.scoreboard{position:fixed;top:12px;left:12px;background:#0a0a1eb3;padding:10px 12px;border-radius:16px;box-shadow:0 8px 32px #0006;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);min-width:170px;max-width:190px;z-index:50}.score-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.game-mode-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:700;letter-spacing:1px}.timer{background:linear-gradient(135deg,#ff6b6b,#ff5252);color:#fff;padding:8px 16px;border-radius:20px;font-size:1.2rem;font-weight:700;min-width:60px;text-align:center}.players{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.player-card{padding:8px 12px;border-radius:12px;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.player-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.1;transition:opacity .3s ease}.player-card.player1{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.25)}.player-card.player1:before{background:linear-gradient(135deg,#ff6b6b,#ff5252)}.player-card.player2{background:#4ecdc41a;border:1px solid rgba(78,205,196,.25)}.player-card.player2:before{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.player-card.active{transform:scale(1.03);animation:activePlayerPulse 1.8s ease-in-out infinite}.player-card.player1.active{border-color:#ff6b6bcc;border-width:2px;box-shadow:0 0 16px #ff6b6b59,inset 0 0 12px #ff6b6b14;background:#ff6b6b33}.player-card.player1.active .player-name{color:#ff8a8a;text-shadow:0 0 8px rgba(255,107,107,.4)}.player-card.player2.active{border-color:#4ecdc4cc;border-width:2px;box-shadow:0 0 16px #4ecdc459,inset 0 0 12px #4ecdc414;background:#4ecdc433}.player-card.player2.active .player-name{color:#6ee7de;text-shadow:0 0 8px rgba(78,205,196,.4)}@keyframes activePlayerPulse{0%,to{box-shadow:0 0 14px #ffffff14}50%{box-shadow:0 0 22px #ffffff2e}}.player-card.player1.active{animation-name:p1ActivePulse}@keyframes p1ActivePulse{0%,to{box-shadow:0 0 14px #ff6b6b40,inset 0 0 12px #ff6b6b0f}50%{box-shadow:0 0 24px #ff6b6b73,inset 0 0 16px #ff6b6b1a}}.player-card.player2.active{animation-name:p2ActivePulse}@keyframes p2ActivePulse{0%,to{box-shadow:0 0 14px #4ecdc440,inset 0 0 12px #4ecdc40f}50%{box-shadow:0 0 24px #4ecdc473,inset 0 0 16px #4ecdc41a}}.player-name{color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;display:flex;align-items:center}.player-avatar{margin-right:4px;font-size:1rem}.player-score{color:#fff;font-size:1.8rem;font-weight:700;margin-bottom:4px}.player-captured{color:#ffffffb3;font-size:.7rem}.captured-icon{margin-right:5px}.vs-divider{color:#fff;font-weight:700;font-size:.8rem;opacity:.25;letter-spacing:2px}.target-score-display{text-align:center;color:#ffd700b3;font-size:.75rem;font-weight:600;margin-top:6px;padding-top:6px;border-top:1px solid rgba(255,255,255,.08)}.xp-bar-container{display:flex;align-items:center;gap:6px;margin-top:6px;padding:4px 8px}.xp-level-badge{font-size:.7rem;font-weight:700;white-space:nowrap}.xp-bar-track{flex:1;height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.xp-bar-fill{height:100%;background:linear-gradient(90deg,#f1c40f,#e67e22);border-radius:3px;transition:width .6s ease}.xp-label{font-size:.6rem;color:#ffffff73;font-weight:600;white-space:nowrap}.board-control-indicator{text-align:center;color:#4ecdc4;font-size:.7rem;font-weight:700;margin-top:6px;padding:4px 8px;border-radius:8px;background:#4ecdc41a;border:1px solid rgba(78,205,196,.25);animation:controlPulse 2s ease-in-out infinite}@keyframes controlPulse{0%,to{box-shadow:0 0 6px #4ecdc41a}50%{box-shadow:0 0 14px #4ecdc440}}.competitive-timer.blitz{background:#ffa50026;border-color:#ffa50066;color:orange}.blitz-badge{font-size:.6rem;font-weight:800;letter-spacing:1px;padding:1px 5px;border-radius:4px;background:#ffa50033;color:orange}.competitive-timer{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;margin-bottom:8px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);font-weight:700;color:#fffc;font-size:.85rem;transition:all .3s ease}.competitive-timer.urgent{background:#ff6b6b26;border-color:#ff6b6b66;color:#ff6b6b;animation:timerPulse .5s ease-in-out infinite}.timer-icon{font-size:.9rem}.timer-value{font-variant-numeric:tabular-nums;min-width:28px;text-align:center}.player-discs{color:#ffffff80;font-size:.65rem;margin-top:2px}.disc-icon{margin-right:3px}@keyframes timerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05);box-shadow:0 0 15px #ff6b6b4d}}.turn-status{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1)}.turn-indicator-scoreboard{padding:6px 12px;border-radius:10px;font-weight:600;font-size:.8rem;text-align:center;transition:all .3s ease;border:1px solid}.turn-indicator-scoreboard.your-turn{background:#4ecdc41f;color:#4ecdc4;border-color:#4ecdc44d;animation:scorePulse 2s ease-in-out infinite}.turn-indicator-scoreboard.opponent-turn{background:#ff6b6b14;color:#ff6b6bcc;border-color:#ff6b6b33}@keyframes scorePulse{0%,to{box-shadow:0 0 8px #4ecdc426}50%{box-shadow:0 0 20px #4ecdc44d}}@media (max-width: 768px){.scoreboard{top:5px;left:5px;right:5px;min-width:auto;max-width:none;padding:6px 8px}.score-header{margin-bottom:4px;flex-wrap:wrap;gap:4px}.game-mode-badge{padding:4px 8px;font-size:.65rem}.timer{padding:4px 8px;font-size:.9rem;min-width:50px}.players{flex-direction:row;gap:8px;justify-content:space-between;align-items:center}.player-card{padding:6px 8px;flex:1;min-width:0}.player-name{font-size:.6rem;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vs-divider{font-size:.8rem;flex-shrink:0}.player-score{font-size:1.2rem;margin-bottom:2px}.player-captured{font-size:.6rem}.target-score-display{font-size:.6rem;margin-top:4px;padding-top:4px}.competitive-timer{padding:4px 8px;font-size:.75rem;margin-bottom:4px}.turn-status{margin-top:8px;padding-top:8px}.turn-indicator-scoreboard{padding:5px 10px;font-size:.75rem}}.letter-rack{position:fixed;bottom:0;left:0;right:0;background:#0a0a1ed9;padding:6px 10px;padding-bottom:max(6px,env(safe-area-inset-bottom));border-radius:0;box-shadow:0 -8px 32px #00000080;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.06);z-index:100}.rack-header{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:6px;position:relative}.rack-header-left{display:flex;gap:6px;position:absolute;left:0}.rack-header-buttons{display:flex;gap:6px;position:absolute;right:0}.rack-title{color:#fff;text-align:center;margin:0 0 6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rack-letters{display:flex;gap:6px;justify-content:center;align-items:center}.power-up-hint{display:flex;align-items:center;justify-content:center;padding:3px 0 4px;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.hint-pill{display:flex;align-items:center;gap:8px;padding:5px 14px 5px 10px;border-radius:20px;background:linear-gradient(135deg,#667eea1f,#9b59b61a);border:1px solid rgba(102,126,234,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.hint-pill:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent);animation:hintShimmer 3s ease-in-out infinite}@keyframes hintShimmer{0%,to{transform:translate(-100%)}50%{transform:translate(100%)}}.power-up-hint:hover .hint-pill,.power-up-hint:active .hint-pill{background:linear-gradient(135deg,#667eea38,#9b59b62e);border-color:#667eea59;box-shadow:0 0 20px #667eea1f;transform:translateY(-1px)}.power-up-hint.has-items .hint-pill{border-color:#667eea40}.power-up-hint.has-active .hint-pill{border-color:#f1c40f66;background:linear-gradient(135deg,#f1c40f26,#ff8c001a);box-shadow:0 0 16px #f1c40f1f}.hint-icons{display:flex;align-items:center;gap:2px}.hint-icon-dot{font-size:13px;line-height:1;filter:grayscale(.15);transition:transform .2s}.power-up-hint:hover .hint-icon-dot{filter:grayscale(0)}.hint-more{font-size:9px;color:#ffffff80;font-weight:700}.hint-label{font-size:11px;font-weight:700;color:#ffffff8c;letter-spacing:.04em;text-transform:uppercase}.hint-badge{font-size:10px;font-weight:800;color:#fff;background:linear-gradient(135deg,#667eea,#9b59b6);min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:10px;padding:0 5px;line-height:1;box-shadow:0 2px 8px #667eea59}.hint-arrow{font-size:16px;font-weight:300;color:#ffffff4d;transform:rotate(-90deg);transition:transform .2s;line-height:1;margin-left:-2px}.power-up-hint:hover .hint-arrow{transform:rotate(-90deg) translate(2px);color:#ffffff80}.letter-container{display:flex;flex-direction:column;align-items:center;gap:3px}.keep-badge{position:absolute;bottom:-4px;right:-4px;font-size:11px;line-height:1;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6));pointer-events:none;z-index:2}.powerup-badge{position:absolute;top:-6px;right:-6px;font-size:14px;line-height:1;filter:drop-shadow(0 1px 4px rgba(0,0,0,.7));pointer-events:none;z-index:3;animation:powerupBadgePop .3s cubic-bezier(.16,1,.3,1)}.letter-tile.has-powerup{box-shadow:0 0 12px #667eea80,0 0 24px #9b59b640;border:1.5px solid rgba(102,126,234,.45)}@keyframes powerupBadgePop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}.keep-btn-spacer{width:20px;height:0;visibility:hidden}.letter-tile{width:46px;height:46px;font-size:22px;font-weight:700;border:none;border-radius:50%;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0006;position:relative;overflow:visible;display:flex;align-items:center;justify-content:center;transform-style:preserve-3d;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.letter-tile:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(255,255,255,.3),transparent);opacity:1;border-radius:50%;pointer-events:none}.letter-tile:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:80%;height:30%;background:radial-gradient(ellipse,rgba(0,0,0,.3),transparent);border-radius:50%;filter:blur(3px)}.letter-tile:hover:before{background:linear-gradient(135deg,rgba(255,255,255,.5),transparent)}.letter-tile.kept{border:3px solid #ffd700;box-shadow:0 0 20px #ffd700cc,0 4px 12px #0006}.letter-tile.player-player1{background:linear-gradient(135deg,#ff6b6b,#ff5252);color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.letter-tile.player-player2{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.letter-tile.blank{background:linear-gradient(135deg,#666,#444);color:#fff;font-size:28px;box-shadow:0 4px 12px #00000080}.letter-tile.selected{transform:scale(1.15) translateY(-6px);box-shadow:0 6px 20px #4ecdc4cc,0 0 30px #4ecdc480;border:3px solid #4ecdc4}.letter-tile:hover{transform:scale(1.08) translateY(-3px);box-shadow:0 6px 16px #00000080}.letter-tile:active{transform:scale(1.02) translateY(-1px)}@keyframes letterFall{0%{transform:translateY(-60px);opacity:0}50%{transform:translateY(5px)}to{transform:translateY(0);opacity:1}}.letter-tile.new-letter{animation:letterFall .5s cubic-bezier(.34,1.56,.64,1)}@media (max-width: 768px){.letter-rack{padding:6px 8px;padding-bottom:max(8px,env(safe-area-inset-bottom))}.rack-header{margin-bottom:4px;min-height:28px}.rack-title{font-size:.6rem;margin:0}.letter-tile{width:36px;height:36px;font-size:16px}.rack-letters{gap:4px;padding:2px 0}.keep-badge{font-size:10px;bottom:-3px;right:-3px}.letter-container{gap:2px}.rack-help-button{width:26px;height:26px;font-size:13px}.rack-header-left{gap:4px}.rack-header-buttons{gap:3px}}.forfeit-btn:hover{background:#ff505040!important;border-color:#ff505080!important}.undo-btn{transition:opacity .2s}.undo-btn.disabled{opacity:.3;cursor:not-allowed}.undo-btn:not(.disabled):hover{background:#4ecdc440!important;border-color:#4ecdc480!important}.rack-help-button{width:28px;height:28px;border-radius:50%;background:#ffffff0f;color:#ffffff80;border:1px solid rgba(255,255,255,.1);font-size:14px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:none;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rack-help-button:hover{background:#667eea33;border-color:#667eea66;color:#fff;transform:scale(1.1)}.rack-help-button:active{transform:scale(.95)}.forfeit-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.forfeit-dialog{background:#141432f2;border:1px solid rgba(255,255,255,.15);border-radius:16px;padding:24px 32px;text-align:center;box-shadow:0 16px 48px #00000080;max-width:320px}.forfeit-dialog p{color:#fff;font-size:1rem;margin:0 0 20px;font-weight:600}.forfeit-buttons{display:flex;gap:12px;justify-content:center}.forfeit-cancel,.forfeit-confirm{padding:8px 24px;border-radius:10px;font-weight:600;font-size:.85rem;cursor:pointer;border:1px solid;transition:all .2s ease}.forfeit-cancel{background:#ffffff14;border-color:#fff3;color:#fff}.forfeit-cancel:hover{background:#ffffff26}.forfeit-confirm{background:#ff505033;border-color:#ff505080;color:#ff6b6b}.forfeit-confirm:hover{background:#ff505059}.wildcard-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1001;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.wildcard-dialog{background:#141432f7;border:2px solid rgba(241,196,15,.4);border-radius:20px;padding:20px 24px;text-align:center;box-shadow:0 16px 48px #0009,0 0 30px #f1c40f26;max-width:340px;width:90%}.wildcard-dialog h3{color:#f1c40f;margin:0 0 14px;font-size:1.1rem;font-weight:700}.wildcard-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:14px}.wildcard-letter-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;font-size:1rem;font-weight:700;padding:8px 0;cursor:pointer;transition:all .15s ease}.wildcard-letter-btn:hover{background:#f1c40f4d;border-color:#f1c40f;transform:scale(1.1);box-shadow:0 0 8px #f1c40f66}.wildcard-cancel{background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:10px;color:#aaa;font-size:.85rem;font-weight:600;padding:8px 24px;cursor:pointer;transition:all .2s ease}.wildcard-cancel:hover{background:#ffffff26;color:#fff}.powerup-tray-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:1001;display:flex;align-items:flex-end;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:trayOverlayIn .2s ease-out}@keyframes trayOverlayIn{0%{opacity:0}to{opacity:1}}.powerup-tray{background:#121228f7;border:1px solid rgba(255,255,255,.12);border-bottom:none;border-radius:20px 20px 0 0;width:100%;max-width:480px;padding:8px 20px 24px;box-shadow:0 -8px 40px #00000080,0 0 30px #667eea14;animation:traySlideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes traySlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.tray-handle{width:36px;height:4px;background:#fff3;border-radius:2px;margin:0 auto 12px}.tray-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.tray-title{font-size:16px;font-weight:700;color:#fff}.tray-close{background:none;border:none;color:#fff6;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s}.tray-close:hover{color:#fff;background:#ffffff1a}.tray-cards{display:flex;flex-direction:column;gap:8px}.tray-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.tray-card:hover:not(.disabled){background:#ffffff14;border-color:#ffffff26}.tray-card.disabled{opacity:.3;cursor:not-allowed}.tray-card.active{border-color:#667eea80;background:#667eea26;box-shadow:0 0 16px #667eea33}.tray-card.gravity-lock.active{border-color:#9b59b680;background:#9b59b626;box-shadow:0 0 16px #9b59b633}.tray-card.shield.active{border-color:#3498db80;background:#3498db26;box-shadow:0 0 16px #3498db33}.tray-card.bomb.active{border-color:#e74c3c80;background:#e74c3c26;box-shadow:0 0 16px #e74c3c33}.tray-card.wildcard.active{border-color:#f1c40f80;background:#f1c40f26;box-shadow:0 0 16px #f1c40f33}.tray-card.column-bomb.active{border-color:#ff8c0080;background:#ff8c0026;box-shadow:0 0 16px #ff8c0033}.tray-card-emoji{font-size:28px;line-height:1;flex-shrink:0;width:36px;text-align:center}.tray-card-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.tray-card-name{font-size:15px;font-weight:700;color:#fff}.tray-card-desc{font-size:12px;color:#ffffff73;line-height:1.3}.tray-card-count{font-size:16px;font-weight:700;color:#fff9;flex-shrink:0;min-width:30px;text-align:center}.word-bank{position:fixed;left:12px;width:200px;max-height:calc(100vh - 320px);max-height:calc(100dvh - 320px);background:#0a0a1eb3;border-radius:16px;padding:12px;box-shadow:0 8px 32px #0006;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);z-index:50;overflow:hidden;display:flex;flex-direction:column}.word-bank-title{color:#4ecdc4cc;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin:0 0 10px;text-align:center;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:6px}.word-bank-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.word-bank-list::-webkit-scrollbar{width:6px}.word-bank-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.word-bank-list::-webkit-scrollbar-thumb{background:#4ecdc480;border-radius:3px}.word-bank-list::-webkit-scrollbar-thumb:hover{background:#4ecdc4b3}.word-bank-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#ffffff0d;border-radius:6px;transition:all .2s ease;border-left:3px solid #4ecdc4;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.word-bank-item:hover{background:#ffffff1a;transform:translate(3px)}.word-text{color:#fff;font-weight:700;font-size:.9rem;letter-spacing:.5px}.word-score{color:gold;font-weight:700;font-size:.85rem;background:#ffd70026;padding:2px 8px;border-radius:4px}.word-bank-empty{text-align:center;color:#fff6;font-size:.85rem;padding:20px 10px;font-style:italic}.word-bank-item{cursor:pointer;position:relative}.word-bank-item.expanded{background:#4ecdc41a;border-left-color:gold}.word-def-icon{font-size:.6rem;color:#ffffff4d;background:#ffffff14;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:4px;font-weight:700;transition:all .2s}.word-bank-item:hover .word-def-icon{color:#4ecdc4cc;background:#4ecdc426}.word-definition{padding:6px 10px;background:#4ecdc40f;border-radius:0 0 6px 6px;border-left:3px solid rgba(255,215,0,.4);margin-top:-2px;animation:defSlideIn .2s ease;display:flex;flex-direction:column;gap:2px}@keyframes defSlideIn{0%{opacity:0;max-height:0}to{opacity:1;max-height:80px}}.def-pos{font-size:.6rem;color:#4ecdc4b3;font-style:italic;text-transform:capitalize}.def-text{font-size:.7rem;color:#ffffffb3;line-height:1.3}.def-loading{font-size:.7rem;color:#fff6;font-style:italic}.def-none{font-size:.7rem;color:#ffffff4d;font-style:italic}@media (max-width: 768px){.word-bank{display:none}}.word-feed{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:220px;animation:feedSlideIn .4s cubic-bezier(.16,1,.3,1) forwards}.word-feed.exiting{animation:feedSlideOut .6s ease-in forwards}@keyframes feedSlideIn{0%{opacity:0;transform:translate(-50%,-45%) scale(.8)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes feedSlideOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-60%) scale(.7)}}.word-feed-header{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:#ffffffb3;background:#0a0a1e99;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:6px 20px;border-radius:20px;border:1px solid rgba(255,255,255,.12)}.word-feed-header.player1{color:#ff9a9a}.word-feed-header.player2{color:#7eddd6}.word-feed-entries{display:flex;flex-direction:column;align-items:center;gap:6px}.word-feed-entry{display:flex;align-items:center;gap:14px;padding:10px 28px;border-radius:16px;background:#0a0a1ebf;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d inset;animation:entryPop .5s cubic-bezier(.16,1,.3,1) both}.word-feed-entry.player1{border-color:#ff6b6b4d;box-shadow:0 8px 32px #0006,0 0 30px #ff6b6b26}.word-feed-entry.player2{border-color:#4ecdc44d;box-shadow:0 8px 32px #0006,0 0 30px #4ecdc426}@keyframes entryPop{0%{opacity:0;transform:scale(.5) translateY(20px)}60%{transform:scale(1.08) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}.word-feed-word{font-size:2rem;font-weight:900;letter-spacing:4px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5)}.word-feed-score{font-size:1.2rem;font-weight:800;color:gold;text-shadow:0 0 12px rgba(255,215,0,.5);white-space:nowrap}.word-feed-total{display:flex;align-items:center;gap:16px;padding:12px 32px;border-radius:16px;background:linear-gradient(135deg,#ffd70026,#ffa5001a);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,215,0,.3);box-shadow:0 8px 32px #0006,0 0 40px #ffd70026;animation:totalReveal .6s cubic-bezier(.16,1,.3,1) both;margin-top:4px}.word-feed-total span:first-child{font-size:1rem;font-weight:800;letter-spacing:3px;color:#ffd700e6;text-transform:uppercase}.word-feed-total-score{font-size:1.8rem;font-weight:900;color:gold;text-shadow:0 0 20px rgba(255,215,0,.6);animation:scoreGlow 1.5s ease-in-out infinite alternate}@keyframes totalReveal{0%{opacity:0;transform:scale(.6) translateY(10px)}70%{transform:scale(1.1) translateY(-3px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes scoreGlow{0%{text-shadow:0 0 10px rgba(255,215,0,.4)}to{text-shadow:0 0 25px rgba(255,215,0,.8),0 0 50px rgba(255,215,0,.3)}}@media (max-width: 768px){.word-feed{min-width:160px}.word-feed-entry{padding:8px 20px;gap:10px}.word-feed-word{font-size:1.4rem;letter-spacing:3px}.word-feed-score{font-size:1rem}.word-feed-total{padding:10px 24px;gap:12px}.word-feed-total-score{font-size:1.4rem}.word-feed-header{font-size:.75rem;padding:5px 16px}}.effect-fire .word-feed-entry{border-color:#ff450080;background:linear-gradient(135deg,#ff450033,#ff8c001a,#0a0a1ebf);box-shadow:0 8px 32px #0006,0 0 40px #ff450040,0 0 80px #ff8c001a;animation:entryPop .5s cubic-bezier(.16,1,.3,1) both,fireFlicker 1.5s ease-in-out infinite alternate}.effect-fire .word-feed-word{background:linear-gradient(90deg,#ff4500,#ff8c00,gold,#ff4500);background-size:300% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:fireShift 2s ease infinite}@keyframes fireFlicker{0%{box-shadow:0 8px 32px #0006,0 0 30px #ff450033}to{box-shadow:0 8px 32px #0006,0 0 50px #ff450059,0 0 80px #ff8c0026}}@keyframes fireShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.effect-ice .word-feed-entry{border-color:#87ceeb80;background:linear-gradient(135deg,#87ceeb26,#c8e6ff14,#0a0a1ebf);box-shadow:0 8px 32px #0006,0 0 40px #87ceeb33,0 0 0 1px #c8e6ff26 inset;animation:entryPop .5s cubic-bezier(.16,1,.3,1) both,iceShimmer 2s ease-in-out infinite alternate}.effect-ice .word-feed-word{background:linear-gradient(90deg,#87ceeb,#e0f4ff,#b0e0ff,#87ceeb);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:iceShift 3s ease infinite;filter:drop-shadow(0 0 6px rgba(135,206,235,.5))}@keyframes iceShimmer{0%{box-shadow:0 8px 32px #0006,0 0 25px #87ceeb26}to{box-shadow:0 8px 32px #0006,0 0 45px #87ceeb4d,0 0 0 1px #c8e6ff40 inset}}@keyframes iceShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.effect-rainbow .word-feed-entry{border-color:#ff64644d;background:linear-gradient(135deg,#ff646414,#ffc83214,#64ff6414,#6464ff14,#0a0a1ebf);box-shadow:0 8px 32px #0006,0 0 35px #ff64c826;animation:entryPop .5s cubic-bezier(.16,1,.3,1) both,rainbowBorder 3s linear infinite}.effect-rainbow .word-feed-word{background:linear-gradient(90deg,#ff6b6b,#ffd93d,#6bff6b,#6bd4ff,#d46bff,#ff6b6b);background-size:400% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbowShift 3s linear infinite}@keyframes rainbowShift{0%{background-position:0% 50%}to{background-position:400% 50%}}@keyframes rainbowBorder{0%{border-color:#ff646466}25%{border-color:#ffd70066}50%{border-color:#64ff6466}75%{border-color:#6464ff66}to{border-color:#ff646466}}.effect-neon .word-feed-entry{border-color:#00ffaa80;background:#0a0a1ed9;box-shadow:0 8px 32px #0006,0 0 20px #00ffaa4d,0 0 60px #00ffaa1a;animation:entryPop .5s cubic-bezier(.16,1,.3,1) both,neonPulse 1.5s ease-in-out infinite alternate}.effect-neon .word-feed-word{color:#0fa;text-shadow:0 0 10px rgba(0,255,170,.8),0 0 30px rgba(0,255,170,.4),0 0 60px rgba(0,255,170,.2)}@keyframes neonPulse{0%{box-shadow:0 8px 32px #0006,0 0 15px #0fa3}to{box-shadow:0 8px 32px #0006,0 0 30px #0fa6,0 0 70px #00ffaa26}}.effect-gold .word-feed-entry{border-color:#ffd70080;background:linear-gradient(135deg,#ffd7001f,#daa52014,#0a0a1ebf);box-shadow:0 8px 32px #0006,0 0 40px #ffd70033;animation:entryPop .5s cubic-bezier(.16,1,.3,1) both,goldGlow 2s ease-in-out infinite alternate}.effect-gold .word-feed-word{background:linear-gradient(90deg,gold,#fff8dc,#daa520,gold);background-size:300% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:goldShift 2.5s ease infinite;filter:drop-shadow(0 0 8px rgba(255,215,0,.5))}@keyframes goldGlow{0%{box-shadow:0 8px 32px #0006,0 0 25px #ffd70026}to{box-shadow:0 8px 32px #0006,0 0 50px #ffd7004d,0 0 80px #daa5201a}}@keyframes goldShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.effect-galaxy .word-feed-entry{border-color:#8a2be266;background:linear-gradient(135deg,#4b008233,#8a2be21a,#19197026,#0a0a1ebf);box-shadow:0 8px 32px #0006,0 0 40px #8a2be233,0 0 80px #4b00821a;animation:entryPop .5s cubic-bezier(.16,1,.3,1) both,galaxyPulse 3s ease-in-out infinite alternate}.effect-galaxy .word-feed-word{background:linear-gradient(90deg,#8a2be2,orchid,#87ceeb,#e6e6fa,#8a2be2);background-size:400% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:galaxyShift 4s ease infinite;filter:drop-shadow(0 0 8px rgba(138,43,226,.6))}@keyframes galaxyPulse{0%{box-shadow:0 8px 32px #0006,0 0 25px #8a2be226}to{box-shadow:0 8px 32px #0006,0 0 50px #8a2be24d,0 0 90px #4b008226}}@keyframes galaxyShift{0%{background-position:0% 50%}to{background-position:400% 50%}}.help-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px 20px 50px;overflow-y:auto}.help-modal-content{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:40px;max-width:700px;width:100%;max-height:72vh;overflow-y:auto;position:relative;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f}.help-modal-content::-webkit-scrollbar{width:8px}.help-modal-content::-webkit-scrollbar-track{background:#ffffff1a;border-radius:10px}.help-modal-content::-webkit-scrollbar-thumb{background:#4ecdc480;border-radius:10px}.close-button{position:absolute;top:15px;right:15px;background:none;border:none;color:#ffffffb3;font-size:36px;cursor:pointer;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.close-button:hover{background:#ffffff1a;color:#fff;transform:rotate(90deg)}.help-title{font-size:2.5rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:30px;text-align:center}.help-section{margin-bottom:30px}.help-section h2{color:#4ecdc4;font-size:1.5rem;margin-bottom:15px;display:flex;align-items:center;gap:10px}.help-section h3{color:#ff6b6b;font-size:1.2rem;margin-bottom:10px}.help-section p,.help-section li{color:#ffffffd9;line-height:1.6;font-size:1rem}.help-section ul,.help-section ol{padding-left:25px;margin:10px 0}.help-section li{margin-bottom:8px}.help-section strong{color:#4ecdc4;font-weight:600}.mechanic{background:#4ecdc41a;padding:15px;border-radius:10px;margin-bottom:15px;border-left:3px solid #4ecdc4}.mechanic:last-child{margin-bottom:0}.start-button{width:100%;background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;padding:15px 40px;font-size:1.2rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #4ecdc466;text-transform:uppercase;letter-spacing:2px;margin-top:20px}.start-button:hover{transform:translateY(-2px);box-shadow:0 12px 32px #4ecdc499}.start-button:active{transform:translateY(0)}@media (max-width: 768px){.help-modal-content{padding:30px 20px}.help-title{font-size:2rem}.help-section h2{font-size:1.3rem}.help-section p,.help-section li{font-size:.95rem}}.auth-section{width:100%;display:flex;flex-direction:column;align-items:center;gap:10px}.auth-heading{color:#4ecdc4;margin:0 0 4px;font-size:1.2rem;font-weight:700}.auth-note{color:#fff6;font-size:.8rem;margin:0}.auth-btn{width:100%;padding:12px 18px;font-size:.95rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .25s ease;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:10px}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.google-btn{background:#fff;color:#3c4043;border:1px solid #dadce0}.google-btn:hover:not(:disabled){background:#f7f8f8;box-shadow:0 2px 8px #00000026}.google-icon{flex-shrink:0}.auth-skip-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff}.auth-skip-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #4ecdc44d}.auth-divider{width:100%;display:flex;align-items:center;gap:12px;color:#ffffff4d;font-size:.75rem;text-transform:uppercase;letter-spacing:1px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.auth-form{width:100%;display:flex;flex-direction:column;gap:10px}.auth-input{width:100%;padding:12px 16px;font-size:.95rem;border:2px solid rgba(78,205,196,.2);border-radius:12px;background:#ffffff0d;color:#fff;transition:all .25s ease;font-family:inherit;box-sizing:border-box}.auth-input:focus{outline:none;border-color:#4ecdc4;background:#ffffff14;box-shadow:0 0 20px #4ecdc41a}.auth-input::placeholder{color:#ffffff4d}.auth-submit-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;margin-top:2px}.auth-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #4ecdc44d}.auth-error{color:#ff6b6b;font-size:.8rem;text-align:center;padding:6px;background:#ff6b6b14;border-radius:8px;border:1px solid rgba(255,107,107,.15)}.auth-success{color:#4ecdc4;font-size:.8rem;text-align:center;padding:6px;background:#4ecdc414;border-radius:8px;border:1px solid rgba(78,205,196,.15)}.auth-link{background:none;border:none;color:#4ecdc4;font-size:.8rem;cursor:pointer;padding:0;font-family:inherit;text-decoration:underline;text-underline-offset:2px}.auth-link:hover{color:#6ee7de}.auth-toggle{color:#ffffff80;font-size:.8rem;margin-top:2px}@media (max-height: 650px){.auth-heading{font-size:1rem;margin-bottom:0}.auth-btn,.auth-input{padding:10px 14px;font-size:.85rem}.auth-divider{margin:-2px 0}}.lobby-overlay{position:fixed;top:0;left:0;width:100%;height:100%;height:100dvh;background:linear-gradient(135deg,#0a0a1a,#1a0a2e,#0f1a3e,#0a2a2e,#0a0a1a);background-size:400% 400%;animation:gradientShift 15s ease infinite;display:flex;flex-direction:column;z-index:3000;overflow:hidden}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.particle-canvas{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.lobby-header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:#0a0a1eb3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(78,205,196,.12);flex-shrink:0;animation:headerSlideDown .6s cubic-bezier(.16,1,.3,1);gap:8px;flex-wrap:wrap}@keyframes headerSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.header-logo{font-size:1.3rem;font-weight:900;letter-spacing:1px;display:flex;gap:1px}.header-logo-letter{-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:titleGradient 6s ease infinite}.header-logo-lexi{background:linear-gradient(135deg,#667eea,#a78bfa,#c084fc);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-logo-drop{background:linear-gradient(135deg,#4ecdc4,#06b6d4,#22d3ee);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-user{display:flex;align-items:center;gap:10px;flex-shrink:1;min-width:0}.header-username{color:#ffffffb3;font-size:.85rem;font-weight:600;white-space:nowrap}.header-nav-buttons,.header-stats{display:flex;align-items:center;gap:6px}.lobby-tab-bar{display:none;visibility:hidden;opacity:0}.lobby-main{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:20px 20px 12px;gap:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.lobby-main.setup-active{justify-content:center;overflow-y:hidden}.lobby-hero{text-align:center;display:flex;flex-direction:column;align-items:center;animation:containerSlideIn .8s cubic-bezier(.16,1,.3,1);position:relative;padding:16px 0 8px}.lobby-hero:before{content:"";position:absolute;top:-20px;left:50%;transform:translate(-50%);width:280px;height:140px;background:radial-gradient(ellipse at center,rgba(102,126,234,.12) 0%,rgba(78,205,196,.06) 40%,transparent 70%);pointer-events:none;animation:heroBgPulse 4s ease-in-out infinite}@keyframes heroBgPulse{0%,to{opacity:.7;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.15)}}@keyframes containerSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.lobby-title-wrapper{position:relative;margin-bottom:0;overflow:visible}.lobby-title{font-size:3rem;font-weight:900;margin:0;letter-spacing:3px;position:relative;z-index:1}.title-letter{display:inline-block;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 20px rgba(102,126,234,.4))}.title-lexi{background:linear-gradient(135deg,#667eea,#a78bfa,#c084fc);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:titleLetterIn .6s cubic-bezier(.16,1,.3,1) both,titleGradient 6s ease infinite}.title-drop{background:linear-gradient(135deg,#4ecdc4,#06b6d4,#22d3ee);background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:titleLetterIn .6s cubic-bezier(.16,1,.3,1) both,titleGradient 6s ease infinite,dropBounce 2s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(78,205,196,.5))}@keyframes dropBounce{0%,to{transform:translateY(0)}15%{transform:translateY(3px)}30%{transform:translateY(0)}}@keyframes titleLetterIn{0%{opacity:0;transform:translateY(-30px) rotateX(90deg);filter:drop-shadow(0 0 0px rgba(102,126,234,0))}to{opacity:1;transform:translateY(0) rotateX(0);filter:drop-shadow(0 0 20px rgba(102,126,234,.4))}}@keyframes titleGradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.title-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:130%;height:180%;background:radial-gradient(ellipse at 35% 50%,rgba(102,126,234,.2) 0%,transparent 50%),radial-gradient(ellipse at 65% 50%,rgba(78,205,196,.2) 0%,transparent 50%);pointer-events:none;animation:titleGlowPulse 3s ease-in-out infinite}@keyframes titleGlowPulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}.lobby-subtitle{color:#ffffff80;font-size:.78rem;margin-bottom:2px;letter-spacing:3px;text-transform:uppercase;font-weight:400;animation:subtitleFadeIn 1s ease .8s both}@keyframes subtitleFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.lobby-version{color:#4ecdc459;font-size:.7rem;font-weight:600;letter-spacing:2px;animation:subtitleFadeIn 1s ease 1s both;display:flex;align-items:center;justify-content:center;gap:6px}.beta-badge{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;font-size:.55rem;font-weight:800;padding:2px 8px;border-radius:10px;letter-spacing:1.5px;text-transform:uppercase;display:inline-block;animation:betaPulse 3s ease-in-out infinite;box-shadow:0 2px 8px #e74c3c4d}@keyframes betaPulse{0%,to{opacity:.9;box-shadow:0 2px 8px #e74c3c33}50%{opacity:1;box-shadow:0 2px 16px #e74c3c80}}.lobby-hero:after{content:"";width:80px;height:2px;margin-top:10px;background:linear-gradient(90deg,transparent,rgba(102,126,234,.5),rgba(78,205,196,.5),transparent);border-radius:1px}.lobby-auth-section{width:100%;max-width:420px;animation:containerSlideIn .8s cubic-bezier(.16,1,.3,1) .2s both}.register-section h2{color:#4ecdc4;margin-bottom:16px;font-size:1.3rem;font-weight:600;text-align:center}.username-input{width:100%;padding:14px 18px;font-size:1rem;border:2px solid rgba(78,205,196,.3);border-radius:14px;background:#ffffff0d;color:#fff;margin-bottom:14px;transition:all .3s ease;font-family:inherit;box-sizing:border-box}.username-input:focus{outline:none;border-color:#4ecdc4;background:#ffffff14;box-shadow:0 0 30px #4ecdc426,0 0 0 4px #4ecdc41a}.username-input::placeholder{color:#ffffff59}.username-input-wrapper{position:relative;width:100%;margin-bottom:6px}.username-input-wrapper .username-input{margin-bottom:0;padding-right:44px}.username-status{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:1.2rem;font-weight:700;pointer-events:none}.username-status.checking{color:#ffffff80;animation:pulse 1s ease-in-out infinite}.username-status.available{color:#4ecdc4}.username-status.taken{color:#ff6b6b}.username-input.input-error{border-color:#ff6b6b}.username-input.input-error:focus{border-color:#ff6b6b;box-shadow:0 0 30px #ff6b6b26,0 0 0 4px #ff6b6b1a}.username-input.input-success{border-color:#4ecdc4}.username-error{color:#ff6b6b;font-size:.85rem;margin:4px 0 10px;text-align:center}.lobby-button:disabled{opacity:.5;cursor:not-allowed}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.lobby-modes-section{width:100%;max-width:680px;display:flex;flex-direction:column;align-items:center;animation:containerSlideIn .8s cubic-bezier(.16,1,.3,1) .15s both}.wotd-banner{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;border-radius:14px;background:linear-gradient(135deg,#ffd70014,#ffa5000f);border:1px solid rgba(255,215,0,.2);margin-bottom:4px}.wotd-banner.formed{background:linear-gradient(135deg,#4ecdc414,#4ecdc40a);border-color:#4ecdc440}.wotd-label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#ffffff80;font-weight:600}.wotd-word{font-size:18px;font-weight:800;background:linear-gradient(135deg,gold,#ff8c00);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:2px}.wotd-banner.formed .wotd-word{background:linear-gradient(135deg,#4ecdc4,#44b8b0);-webkit-background-clip:text;background-clip:text}.wotd-status{font-size:11px;color:#ffd700b3;font-weight:600}.wotd-status.done{color:#4ecdc4}.mode-selection{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%}.mode-button{padding:20px 10px 16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;overflow:hidden;border-radius:20px;transition:all .4s cubic-bezier(.16,1,.3,1);cursor:pointer;color:#fff;font-family:inherit;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 4px 20px #00000040,inset 0 1px #ffffff0f}.mode-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;background:radial-gradient(circle at 50% 0%,rgba(78,205,196,.08) 0%,transparent 70%);opacity:0;transition:opacity .4s}.mode-button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;padding:1px;background:linear-gradient(135deg,transparent 30%,rgba(78,205,196,.3) 50%,transparent 70%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .4s ease}.mode-button:hover:before,.mode-button:hover:after{opacity:1}.mode-button:hover{background:#ffffff12;border-color:#4ecdc44d;transform:translateY(-3px);box-shadow:0 8px 30px #0000004d,0 0 20px #4ecdc41a,inset 0 1px #ffffff14}.mode-button.online:hover{border-color:#667eea4d;box-shadow:0 12px 35px #0000004d,0 0 20px #667eea1a,inset 0 1px #ffffff14}.mode-icon{font-size:2rem;filter:drop-shadow(0 4px 10px rgba(0,0,0,.3));line-height:1;margin-bottom:2px}.mode-title{font-size:.85rem;font-weight:700;color:#fff;text-transform:none}.mode-description{font-size:.62rem;color:#fff6;text-transform:none;font-weight:400;line-height:1.3;text-align:center;max-width:140px}.lobby-button{padding:12px 30px;font-size:1rem;font-weight:600;border:none;border-radius:14px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);text-transform:uppercase;letter-spacing:1.5px;position:relative;overflow:hidden;font-family:inherit}.lobby-button.primary{width:100%;background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;box-shadow:0 8px 25px #4ecdc459}.lobby-button.primary:hover{transform:translateY(-2px);box-shadow:0 12px 35px #4ecdc480}.lobby-button.primary:active{transform:translateY(-1px)}.lobby-icon-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:10px;width:36px;height:36px;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.lobby-icon-btn:hover{background:#4ecdc41f;border-color:#4ecdc44d}.admin-nav-btn{border-color:#ffd7004d}.admin-nav-btn:hover{background:#ffd70026!important;border-color:#ffd70099!important}.signout-btn:hover{background:#ff6b6b1f;border-color:#ff6b6b4d}.lobby-coins{display:flex;align-items:center;gap:4px;background:#ffd70014;border:1px solid rgba(255,215,0,.2);border-radius:10px;padding:4px 10px;font-size:.8rem;font-weight:700;color:gold}.lobby-level{font-size:.75rem;font-weight:700;background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:4px 10px;white-space:nowrap}.match-setup{display:flex;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:460px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:28px 24px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f;animation:setupSlideIn .4s cubic-bezier(.16,1,.3,1) both}.match-setup.online{box-shadow:0 8px 32px #0000004d,0 0 40px #667eea14,inset 0 1px #ffffff0f;border-color:#667eea26}@keyframes setupSlideIn{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.back-button{align-self:flex-start;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#fff9;font-size:.8rem;font-weight:600;cursor:pointer;padding:6px 14px;border-radius:20px;transition:all .25s ease;display:flex;align-items:center;gap:4px;font-family:inherit}.back-button .back-arrow{font-size:.9rem;transition:transform .2s ease}.back-button:hover{color:#4ecdc4;background:#4ecdc41a;border-color:#4ecdc440}.back-button:hover .back-arrow{transform:translate(-3px)}.setup-header{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:4px}.setup-icon-badge{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#4ecdc426,#44a08d14);border:1px solid rgba(78,205,196,.2);display:flex;align-items:center;justify-content:center;font-size:1.8rem;box-shadow:0 4px 16px #4ecdc41f}.setup-icon-badge.online{background:linear-gradient(135deg,#667eea26,#764ba214);border-color:#667eea33;box-shadow:0 4px 16px #667eea1f}.setup-title{font-size:1.3rem;font-weight:700;color:#fffffff2;margin:0;letter-spacing:.5px}.setup-subtitle{font-size:.75rem;color:#fff6;margin:0;font-weight:400;letter-spacing:.5px}.setup-section{width:100%;background:#ffffff06;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:14px 16px;text-align:center}.difficulty-selection{width:100%;text-align:center}.difficulty-selection .target-btn{width:auto;min-width:80px;padding:0 14px;height:42px;font-size:.85rem;font-weight:700;white-space:nowrap}.match-mode-selection{display:flex;gap:10px;width:100%}.match-mode-btn{flex:1;background:#ffffff0a;border:2px solid rgba(255,255,255,.1);border-radius:14px;padding:10px;cursor:pointer;transition:all .3s ease;text-align:center;color:#ffffffb3}.match-mode-btn:hover{border-color:#4ecdc44d;background:#4ecdc40f}.match-mode-btn.active{border-color:#4ecdc4;background:#4ecdc41f;color:#fff;box-shadow:0 0 20px #4ecdc426}.match-mode-icon{font-size:1.2rem;margin-bottom:2px}.match-mode-label{font-size:.9rem;font-weight:700;margin-bottom:2px}.match-mode-desc{font-size:.65rem;opacity:.6}.target-score-selection{width:100%;text-align:center}.target-label{font-size:.72rem;color:#ffffff73;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px;font-weight:600;text-align:left}.target-options{display:flex;gap:10px;justify-content:center}.target-btn{min-width:56px;height:42px;border-radius:12px;background:#ffffff0a;border:2px solid rgba(255,255,255,.1);color:#ffffffb3;font-size:.95rem;font-weight:800;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-family:inherit}.target-btn:hover{border-color:#ffd7004d;background:#ffd7000f;transform:scale(1.05)}.target-btn.active{border-color:gold;background:#ffd70024;color:gold;box-shadow:0 0 18px #ffd7002e;transform:scale(1.07)}.target-btn.difficulty-btn{flex:1;flex-direction:column;gap:4px;height:54px;padding:6px 8px}.diff-icon{font-size:1.1rem;line-height:1}.diff-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.target-btn.difficulty-easy:hover{border-color:#2ecc7159;background:#2ecc7114}.target-btn.difficulty-easy.active{border-color:#2ecc71;background:#2ecc7126;color:#2ecc71;box-shadow:0 0 18px #2ecc7133}.target-btn.difficulty-medium:hover{border-color:#4ecdc459;background:#4ecdc414}.target-btn.difficulty-medium.active{border-color:#4ecdc4;background:#4ecdc426;color:#4ecdc4;box-shadow:0 0 18px #4ecdc433}.target-btn.difficulty-hard:hover{border-color:#ff6b6b59;background:#ff6b6b14}.target-btn.difficulty-hard.active{border-color:#ff6b6b;background:#ff6b6b26;color:#ff6b6b;box-shadow:0 0 18px #ff6b6b33}.start-game-btn{width:100%;margin-top:6px;font-size:1.05rem;padding:14px;letter-spacing:1.5px;position:relative;overflow:hidden}.start-game-btn:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);animation:btnShimmer 3s ease-in-out infinite}@keyframes btnShimmer{0%,to{left:-100%}50%{left:100%}}.start-game-btn.online{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 8px 25px #667eea59}.start-game-btn.online:hover{box-shadow:0 12px 35px #667eea80}.invite-link-btn{background:#ffffff14!important;border:1px solid rgba(255,255,255,.15)!important;color:#fffc!important;font-size:.85rem!important;padding:10px 18px!important;margin-top:6px;transition:all .2s ease}.invite-link-btn:hover{background:#ffffff24!important;border-color:#ffffff4d!important;color:#fff!important}.searching-section{display:flex;flex-direction:column;align-items:center;gap:14px;margin-top:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:24px;width:100%;max-width:460px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:setupSlideIn .4s cubic-bezier(.16,1,.3,1) .1s both}.searching-spinner-ring{position:relative;width:52px;height:52px;display:flex;align-items:center;justify-content:center}.searching-spinner-ring:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:radial-gradient(circle,rgba(102,126,234,.15),transparent 70%);animation:spinnerPulse 2s ease-in-out infinite}@keyframes spinnerPulse{0%,to{transform:scale(.9);opacity:.5}50%{transform:scale(1.2);opacity:1}}.searching-spinner{width:36px;height:36px;border:3px solid rgba(255,255,255,.12);border-top-color:#667eea;border-right-color:#764ba2;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.searching-text{color:#ffffffb3;font-size:.95rem;font-weight:500;animation:fadeInText .5s ease .3s both}@keyframes fadeInText{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.cancel-button{background:#ff6b6b14;color:#ff6b6b;border:1px solid rgba(255,107,107,.25);border-radius:20px;padding:8px 24px;font-size:.85rem}.cancel-button:hover{background:#ff6b6b2e;border-color:#ff6b6b;transform:translateY(-2px)}.lobby-footer-bar{position:relative;z-index:2;flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 20px;background:#0a0a1e80;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.06)}.lobby-footer-tutorial-btn{background:none;border:1px solid rgba(78,205,196,.3);color:#4ecdc4cc;padding:4px 14px;border-radius:8px;cursor:pointer;font-size:.8rem;font-weight:600;font-family:inherit;transition:all .2s}.lobby-footer-tutorial-btn:hover{background:#4ecdc41a;border-color:#4ecdc480;color:#4ecdc4}.lobby-footer-divider{color:#ffffff26;font-size:.9rem}.lobby-footer-hint{color:#ffffff4d;font-size:.75rem}.lobby-footer-hint strong{color:#4ecdc499;font-size:.85rem}@media (max-width: 768px){.lobby-header{padding:6px 12px;gap:0}.header-logo{font-size:1.1rem}.header-username,.header-nav-buttons{display:none}.lobby-icon-btn{width:30px;height:30px;font-size:.85rem;border-radius:8px}.lobby-coins{padding:3px 8px;font-size:.75rem;border-radius:8px}.lobby-level{font-size:.7rem;padding:3px 8px;border-radius:8px}.header-stats{gap:4px}.lobby-footer-bar{display:none}.lobby-tab-bar.visible{display:flex;visibility:visible;opacity:1;position:fixed;bottom:0;left:0;right:0;z-index:10000;justify-content:space-around;align-items:center;padding:6px 8px;padding-bottom:max(6px,env(safe-area-inset-bottom));background:#0a0a1eeb;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(78,205,196,.15);animation:tabBarSlideUp .4s cubic-bezier(.16,1,.3,1) both}@keyframes tabBarSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tab-bar-item{display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:none;color:#ffffff80;cursor:pointer;padding:6px 12px;border-radius:12px;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.tab-bar-item:active{transform:scale(.92);background:#667eea26}.tab-bar-icon{font-size:1.3rem;line-height:1}.tab-bar-label{font-size:.6rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.lobby-main{padding:12px 14px 68px;gap:14px;overflow-y:auto}.lobby-title{font-size:2.8rem;letter-spacing:2px}.lobby-subtitle{font-size:.7rem;letter-spacing:2px}.mode-selection{grid-template-columns:repeat(2,1fr);gap:10px}.mode-button{padding:16px 10px 14px;gap:5px;border-radius:18px}.mode-icon{font-size:1.7rem}.mode-title{font-size:.8rem}.mode-description{font-size:.58rem;max-width:130px}.match-mode-selection{gap:8px}.match-mode-btn{padding:8px}.match-setup{padding:20px 16px;gap:14px;border-radius:18px}.setup-icon-badge{width:48px;height:48px;font-size:1.5rem;border-radius:14px}.setup-title{font-size:1.15rem}.setup-section{padding:12px 14px}.target-btn{min-width:48px;height:38px;font-size:.85rem}.lobby-button{padding:10px 24px;font-size:.95rem}.start-game-btn{padding:12px;font-size:.95rem}.searching-section{padding:18px 16px;border-radius:16px}.lobby-footer-bar{padding:8px 14px}}@media (max-width: 380px){.lobby-title{font-size:2.2rem}.mode-selection{grid-template-columns:1fr 1fr;gap:8px}.mode-button{padding:14px 6px 12px}.mode-icon{font-size:1.5rem}.mode-title{font-size:.75rem}.mode-description{display:none}}@media (max-height: 600px){.lobby-main{padding:8px 14px 6px;gap:10px;justify-content:flex-start}.lobby-hero{gap:0}.lobby-title{font-size:2rem}.lobby-subtitle{font-size:.6rem;margin-bottom:0}.lobby-version{font-size:.6rem}.title-glow{display:none}.mode-button{padding:10px 6px 8px}.mode-icon{font-size:1.4rem}.mode-title{font-size:.8rem}.mode-description{display:none}.match-setup{gap:8px;padding:16px 14px;border-radius:16px}.setup-header{gap:4px;margin-bottom:0}.setup-icon-badge{width:40px;height:40px;font-size:1.3rem;border-radius:12px}.setup-title{font-size:1rem}.setup-subtitle{display:none}.setup-section{padding:10px 12px;border-radius:10px}.target-label{font-size:.6rem;margin-bottom:6px}.target-btn{min-width:42px;height:34px;font-size:.8rem;border-radius:8px}.start-game-btn{padding:10px;font-size:.9rem}.searching-section{padding:16px 12px;gap:10px}.searching-spinner-ring{width:40px;height:40px}.searching-spinner{width:28px;height:28px}.lobby-footer-bar{display:none}.register-section h2{font-size:1.1rem;margin-bottom:10px}.username-input{padding:10px 14px;font-size:.9rem;margin-bottom:10px}}@media (min-width: 1200px){.lobby-title{font-size:3.5rem;letter-spacing:4px}.lobby-subtitle{font-size:.9rem;letter-spacing:5px}.lobby-modes-section{max-width:750px}.mode-selection{gap:14px}.mode-button{padding:20px 14px 16px;border-radius:18px}.mode-icon{font-size:2.2rem}.mode-title{font-size:1rem}.mode-description{font-size:.72rem}}.welcome-section{text-align:center}.welcome-subtitle{color:#ffffff80;font-size:.9rem;margin:-8px 0 20px}.welcome-section .username-input-wrapper{display:flex;align-items:center;gap:8px}.welcome-section .username-input-wrapper .username-input{padding-right:44px;flex:1}.reroll-btn{background:#4ecdc426;border:2px solid rgba(78,205,196,.3);border-radius:14px;width:50px;height:50px;font-size:1.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.reroll-btn:hover{background:#4ecdc440;border-color:#4ecdc4;transform:rotate(90deg) scale(1.1)}.reroll-btn:active{transform:rotate(180deg) scale(.95)}.reroll-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.play-now-btn{font-size:1.15rem!important;padding:16px 32px!important;margin-top:8px;letter-spacing:1px;animation:playBtnGlow 2s ease-in-out infinite}@keyframes playBtnGlow{0%,to{box-shadow:0 4px 20px #4ecdc44d}50%{box-shadow:0 4px 30px #4ecdc499,0 0 40px #4ecdc433}}.welcome-signin-link{margin-top:20px;color:#ffffff80;font-size:.85rem}.welcome-signin-link .auth-link{color:#4ecdc4;background:none;border:none;cursor:pointer;font-size:.85rem;text-decoration:underline;padding:0;font-family:inherit}.welcome-signin-link .auth-link:hover{color:#7fffe0}.create-account-btn{background:#4ecdc426!important;border:1px solid rgba(78,205,196,.4)!important;border-radius:8px!important;font-size:.85rem!important;padding:4px 8px!important}.create-account-btn:hover{background:#4ecdc44d!important}.signup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:9000;display:flex;align-items:center;justify-content:center;padding:20px;animation:overlayFadeIn .3s ease}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.signup-modal{background:linear-gradient(145deg,#1a1a2e,#16213e);border:2px solid rgba(78,205,196,.4);border-radius:20px;padding:32px 28px;max-width:380px;width:100%;text-align:center;box-shadow:0 20px 60px #00000080,0 0 40px #4ecdc41a;animation:modalSlideUp .4s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.signup-modal-icon{font-size:2.5rem;margin-bottom:8px}.signup-modal-title{color:#4ecdc4;font-size:1.4rem;margin:0 0 8px;font-weight:700}.signup-modal-desc{color:#ffffffa6;font-size:.9rem;margin:0 0 16px}.signup-modal-features{list-style:none;padding:0;margin:0 0 24px;text-align:left}.signup-modal-features li{color:#ffffffd9;font-size:.9rem;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06)}.signup-modal-features li:last-child{border-bottom:none}.signup-modal-actions{display:flex;flex-direction:column;gap:10px;align-items:center}.signup-modal-btn{width:100%;font-size:1.05rem!important;padding:14px 24px!important;letter-spacing:.5px}.signup-modal-later{background:none;border:none;color:#ffffff59;font-size:.82rem;cursor:pointer;padding:6px 12px;font-family:inherit;transition:color .2s}.signup-modal-later:hover{color:#ffffffa6}.chat-container{display:flex;flex-direction:column;width:320px;height:500px;background:linear-gradient(135deg,#1a1a2ef2,#16213ef2);border-radius:16px;box-shadow:0 8px 32px #0006;overflow:hidden;border:2px solid rgba(78,205,196,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-header{background:linear-gradient(135deg,#667eea4d,#764ba24d);color:#fff;padding:12px 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid rgba(78,205,196,.3)}.chat-header h3{margin:0;font-size:18px;font-weight:600;background:linear-gradient(135deg,#4ecdc4,#44a08d);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.chat-minimize-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);color:#fff;width:28px;height:28px;border-radius:6px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s}.chat-minimize-button:hover{background:#ff6b6b4d;border-color:#ff6b6b;transform:scale(1.1)}.chat-minimize-button:active{transform:scale(.95)}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:#0003}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#0000000d}.chat-messages::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.chat-messages::-webkit-scrollbar-thumb:hover{background:#0000004d}.chat-message{display:flex;flex-direction:column;max-width:80%;animation:messageSlideIn .2s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.local{align-self:flex-end}.chat-message.remote{align-self:flex-start}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:8px}.message-sender{font-size:12px;font-weight:600;color:#ffffffb3}.message-time{font-size:10px;color:#fff6}.message-content{padding:10px 14px;border-radius:12px;word-wrap:break-word;line-height:1.4;font-size:14px}.chat-message.local .message-content{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 8px #4ecdc44d}.chat-message.remote .message-content{background:#667eea33;color:#fff;border:1px solid rgba(102,126,234,.4);border-bottom-left-radius:4px}.chat-input-form{display:flex;padding:12px;background:#0003;border-top:1px solid rgba(78,205,196,.3);gap:8px}.chat-input{flex:1;padding:10px 14px;border:2px solid rgba(78,205,196,.3);border-radius:20px;font-size:14px;outline:none;transition:border-color .2s;background:#ffffff0d;color:#fff}.chat-input::placeholder{color:#fff6}.chat-input:focus{border-color:#4ecdc4;background:#ffffff14}.chat-send-button{padding:10px 20px;background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .1s,opacity .2s;box-shadow:0 4px 12px #4ecdc44d}.chat-send-button:hover:not(:disabled){transform:scale(1.05)}.chat-send-button:active:not(:disabled){transform:scale(.95)}.chat-send-button:disabled{opacity:.5;cursor:not-allowed}.emote-trigger{position:fixed;bottom:20px;left:20px;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:2px solid rgba(255,255,255,.2);font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #667eea66;transition:transform .2s,opacity .2s;z-index:100}.emote-trigger:hover{transform:scale(1.1)}.emote-trigger.emote-cooldown{opacity:.5;cursor:not-allowed}.emote-picker{position:fixed;bottom:78px;left:20px;display:flex;gap:6px;padding:8px 10px;background:#141428f2;border-radius:16px;border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #00000080;animation:emotePickerIn .2s ease-out;z-index:101}@keyframes emotePickerIn{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.emote-option{width:44px;height:44px;border-radius:12px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}.emote-option:hover:not(:disabled){background:#fff3;transform:scale(1.15)}.emote-option:disabled{opacity:.4;cursor:not-allowed}.emote-float{position:fixed;z-index:200;pointer-events:none;animation:emoteFloatUp 2.5s ease-out forwards}.emote-float-received{top:120px;right:60px}.emote-float-sent{bottom:80px;left:40px}.emote-float-emoji{font-size:48px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.4))}@keyframes emoteFloatUp{0%{opacity:0;transform:scale(.3) translateY(20px)}15%{opacity:1;transform:scale(1.3) translateY(-10px)}30%{transform:scale(1) translateY(-20px)}80%{opacity:1;transform:scale(1) translateY(-60px)}to{opacity:0;transform:scale(.8) translateY(-80px)}}@media (max-width: 768px){.emote-trigger{width:38px;height:38px;font-size:18px;bottom:130px;left:10px}.emote-picker{bottom:175px;left:10px;gap:4px;padding:6px 8px}.emote-option{width:36px;height:36px;font-size:18px}.emote-float-emoji{font-size:40px}}.shop-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:4000;animation:shopFadeIn .25s ease}@keyframes shopFadeIn{0%{opacity:0}to{opacity:1}}.shop-modal{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;width:92%;max-width:480px;max-height:100%;display:flex;flex-direction:column;overflow:hidden;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f;animation:shopSlideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes shopSlideIn{0%{transform:translateY(30px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.shop-header{display:flex;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.shop-title{font-size:1.3rem;font-weight:800;color:#fff;margin:0;flex:1}.shop-coins{display:flex;align-items:center;gap:6px;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:20px;padding:4px 12px;margin-right:12px}.coin-icon{font-size:1rem}.coin-amount{font-size:.95rem;font-weight:700;color:gold}.shop-close{background:none;border:none;color:#ffffff80;font-size:1.6rem;cursor:pointer;padding:0 4px;line-height:1;transition:color .2s}.shop-close:hover{color:#fff}.shop-inventory{display:flex;justify-content:center;gap:6px;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.06)}.inventory-item{display:flex;align-items:center;gap:3px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:3px 8px}.inventory-emoji{font-size:.85rem}.inventory-count{font-size:.75rem;font-weight:700;color:#ffffffb3;min-width:12px;text-align:center}.shop-tabs{display:flex;justify-content:center;padding:8px 12px;gap:6px;border-bottom:1px solid rgba(255,255,255,.06)}.shop-tab{display:flex;align-items:center;gap:4px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:24px;color:#fff9;font-size:.78rem;font-weight:600;padding:6px 10px;cursor:pointer;transition:all .25s ease;white-space:nowrap}.shop-tab .tab-icon{font-size:1rem;line-height:1}.shop-tab .tab-label{font-size:.72rem;font-weight:700}.shop-tab:hover{background:#ffffff14;border-color:#ffffff26;color:#ffffffe6}.shop-tab.active{background:#4ecdc41f;border-color:#4ecdc466;color:#4ecdc4}.shop-items{flex:1;overflow-y:auto;padding:12px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-content:start}.shop-items::-webkit-scrollbar{width:4px}.shop-items::-webkit-scrollbar-thumb{background:#4ecdc44d;border-radius:2px}.shop-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:8px;transition:all .25s ease}.shop-card:hover{border-color:#4ecdc44d;background:#ffffff0d}.shop-card.equipped{border-color:#4ecdc480;background:#4ecdc414}.skin-preview{display:flex;gap:8px}.skin-disc{width:32px;height:32px;border-radius:50%;border:2px solid rgba(255,255,255,.15)}.theme-preview{width:100%;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.theme-frame{width:50%;height:24px;border-radius:4px;opacity:.8}.avatar-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center}.avatar-emoji{font-size:2rem}.effect-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center}.effect-emoji{font-size:1.8rem}.frame-preview{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.frame-emoji{font-size:1.4rem}.shop-card-info{text-align:center;width:100%}.shop-card-name{font-size:.85rem;font-weight:700;color:#fff}.shop-card-desc{font-size:.65rem;color:#fff6;margin-top:2px}.card-badge{font-size:.7rem;font-weight:700;padding:4px 12px;border-radius:10px;text-transform:uppercase;letter-spacing:1px}.equipped-badge{background:#4ecdc426;color:#4ecdc4;border:1px solid rgba(78,205,196,.3)}.card-btn{font-size:.75rem;font-weight:700;padding:6px 16px;border-radius:10px;border:none;cursor:pointer;transition:all .2s;font-family:inherit}.equip-btn{background:#4ecdc426;color:#4ecdc4;border:1px solid rgba(78,205,196,.3)}.equip-btn:hover{background:#4ecdc440}.buy-btn{background:#ffd7001f;color:gold;border:1px solid rgba(255,215,0,.3)}.buy-btn:hover:not(:disabled){background:#ffd70038}.buy-btn:disabled{opacity:.4;cursor:not-allowed}.powerup-reserve{font-size:.65rem;color:#4ecdc4;font-weight:700;margin-top:2px}@media (max-width: 768px){.shop-overlay{top:40px;bottom:62px}}@media (max-height: 600px){.shop-overlay{top:36px;bottom:0}}@media (max-width: 400px){.shop-items{grid-template-columns:repeat(2,1fr);gap:8px;padding:8px}.shop-card{padding:8px}.shop-tab{padding:5px 8px}.shop-tab .tab-icon{font-size:.9rem}.shop-tab .tab-label{font-size:.65rem}.inventory-item{padding:2px 6px;gap:2px}.inventory-emoji{font-size:.75rem}.inventory-count{font-size:.68rem}}.coin-packs-grid{display:flex;flex-direction:column;gap:12px;padding:4px;grid-column:1 / -1}.coin-packs-notice{text-align:center;color:#ffd700cc;font-size:.85rem;padding:12px;background:#ffd70014;border-radius:12px;border:1px solid rgba(255,215,0,.15)}.coin-pack-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#ffffff0a;border:1px solid rgba(255,215,0,.15);border-radius:14px;transition:all .2s}.coin-pack-card:hover{background:#ffd7000f;border-color:#ffd7004d}.coin-pack-amount{display:flex;align-items:center;gap:6px;min-width:100px}.coin-pack-icon{font-size:1.4rem}.coin-pack-coins{font-size:1.2rem;font-weight:800;color:gold}.coin-pack-label{font-size:.78rem;color:#ffffff8c;flex:1}.coin-pack-buy-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;border-radius:10px;padding:8px 18px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}.coin-pack-buy-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 0 16px #4ecdc466}.coin-pack-buy-btn:disabled{opacity:.5;cursor:not-allowed}.coin-packs-footer{text-align:center;padding:12px;border-top:1px solid rgba(255,255,255,.06);margin-top:4px}.coin-packs-footer p{margin:4px 0;font-size:.8rem;color:#ffffff80}.coin-earn-rates{font-size:.72rem!important;color:#ffd70080!important}.trail-preview{display:flex;flex-direction:column;align-items:center;gap:4px}.trail-emoji{font-size:1.5rem}.trail-color-dots{display:flex;gap:3px;justify-content:center}.trail-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.achievements-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:4000;animation:achFadeIn .25s ease}@keyframes achFadeIn{0%{opacity:0}to{opacity:1}}.achievements-modal{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;width:94%;max-width:520px;max-height:100%;display:flex;flex-direction:column;overflow:hidden;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f;animation:achSlideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes achSlideIn{0%{transform:translateY(30px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.achievements-header{display:flex;align-items:center;padding:16px 20px 12px;gap:10px}.achievements-title{font-size:1.3rem;font-weight:800;color:#fff;margin:0;flex:1}.achievements-progress-summary{display:flex;align-items:center;gap:8px;background:#ffd7001a;border:1px solid rgba(255,215,0,.25);border-radius:20px;padding:4px 12px}.achievements-count{font-size:.85rem;font-weight:700;color:gold}.achievements-percent{font-size:.75rem;font-weight:600;color:#ffd700b3}.achievements-close{background:#ffffff14;border:none;color:#fff9;font-size:1.2rem;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.achievements-close:hover{background:#ffffff26;color:#fff}.achievements-progress-bar-container{height:4px;background:#ffffff0f;margin:0 20px;border-radius:2px;overflow:hidden}.achievements-progress-bar{height:100%;background:linear-gradient(90deg,gold,#fa0);border-radius:2px;transition:width .5s ease}.achievements-stats{display:flex;gap:4px;padding:12px 20px;justify-content:space-around}.stat-item{display:flex;flex-direction:column;align-items:center;gap:2px}.stat-value{font-size:1.15rem;font-weight:800;color:#fff}.stat-label{font-size:.65rem;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:.5px}.achievements-tabs{display:flex;justify-content:center;gap:6px;padding:0 16px 12px;flex-wrap:wrap}.achievements-tab{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:#ffffff08;color:#ffffff80;cursor:pointer;font-size:.73rem;font-weight:600;white-space:nowrap;transition:all .2s}.achievements-tab:hover{background:#ffffff0f;color:#fffc}.achievements-tab.active{background:#ffd7001f;border-color:#ffd7004d;color:gold}.tab-icon{font-size:.9rem}.tab-label{font-size:.73rem}.tab-count{font-size:.63rem;opacity:.6}.achievements-grid{flex:1;min-height:0;overflow-y:auto;padding:0 16px 16px;display:flex;flex-direction:column;gap:8px}.achievements-grid::-webkit-scrollbar{width:4px}.achievements-grid::-webkit-scrollbar-track{background:transparent}.achievements-grid::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.achievement-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,255,255,.06);background:#ffffff05;transition:all .2s}.achievement-card.unlocked{background:#ffd7000f;border-color:#ffd70026}.achievement-card.locked{opacity:.45}.achievement-card.unlocked:hover{background:#ffd7001a;border-color:#ffd70040}.achievement-badge{position:relative;width:48px;height:48px;min-width:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem}.unlocked .achievement-badge{background:radial-gradient(circle,#ffd70033,#ffd7000d);border:2px solid rgba(255,215,0,.35);box-shadow:0 0 12px #ffd70026}.locked .achievement-badge{background:#ffffff0a;border:2px solid rgba(255,255,255,.08)}.locked .achievement-icon{filter:grayscale(1)}.achievement-check{position:absolute;bottom:-2px;right:-2px;width:18px;height:18px;background:#22c55e;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.55rem;font-weight:900;color:#fff;border:2px solid rgba(12,12,32,.95)}.achievement-info{flex:1;min-width:0}.achievement-name{font-size:.88rem;font-weight:700;color:#fff;margin-bottom:2px}.locked .achievement-name{color:#fff9}.achievement-desc{font-size:.73rem;color:#ffffff73;line-height:1.3}.unlocked .achievement-desc{color:#ffd70099}@media (max-width: 768px){.achievements-overlay{top:40px;bottom:60px}}@media (max-height: 600px){.achievements-overlay{top:36px;bottom:0}}@media (max-width: 420px){.achievements-modal{width:98%;border-radius:16px}.achievements-header{padding:12px 14px 10px}.achievements-title{font-size:1.1rem}.achievements-stats{padding:10px 14px}.achievements-tabs{padding:0 12px 10px}.achievements-grid{padding:0 12px 12px}.achievement-badge{width:42px;height:42px;min-width:42px;font-size:1.3rem}}.profile-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:3500;animation:profileFadeIn .25s ease-out}@keyframes profileFadeIn{0%{opacity:0}to{opacity:1}}.profile-modal{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;width:90vw;max-width:520px;max-height:100%;overflow-y:auto;padding:0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f;animation:profileSlideUp .3s ease-out}@keyframes profileSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.profile-modal::-webkit-scrollbar{width:6px}.profile-modal::-webkit-scrollbar-track{background:transparent}.profile-modal::-webkit-scrollbar-thumb{background:#4ecdc44d;border-radius:3px}.profile-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.profile-identity{display:flex;align-items:center;gap:14px}.profile-avatar-large{font-size:48px;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#4ecdc41a;border-radius:50%;border:2px solid rgba(78,205,196,.3)}.profile-name-area h2{margin:0;color:#fff;font-size:22px}.profile-name-area p{margin:4px 0 0;color:#ffffff80;font-size:13px}.profile-close{background:none;border:none;color:#ffffff80;font-size:22px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s}.profile-close:hover{color:#fff;background:#ffffff1a}.profile-winrate-section{display:flex;align-items:center;justify-content:center;gap:32px;padding:20px 24px}.winrate-ring{position:relative;width:100px;height:100px}.winrate-ring svg{transform:rotate(-90deg);width:100px;height:100px}.winrate-ring .ring-bg{fill:none;stroke:#ffffff14;stroke-width:8}.winrate-ring .ring-fill{fill:none;stroke:#4ecdc4;stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset 1s ease-out}.winrate-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.winrate-value{font-size:26px;font-weight:700;color:#4ecdc4}.winrate-text{font-size:10px;color:#ffffff80;text-transform:uppercase;letter-spacing:1px}.profile-quick-stats{display:flex;flex-direction:column;gap:8px}.quick-stat{display:flex;align-items:center;gap:8px;font-size:14px;color:#ffffffb3}.quick-stat-icon{font-size:18px;width:24px;text-align:center}.quick-stat-val{color:#fff;font-weight:600;margin-left:auto;min-width:30px;text-align:right}.profile-tabs{display:flex;gap:0;border-bottom:1px solid rgba(255,255,255,.08);padding:0 24px}.profile-tab{flex:1;background:none;border:none;color:#fff6;font-size:13px;padding:12px 4px;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.profile-tab:hover{color:#ffffffb3}.profile-tab.active{color:#4ecdc4;border-bottom-color:#4ecdc4}.profile-tab-content{padding:16px 24px 24px;min-height:200px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:14px;text-align:center}.stat-card-value{font-size:24px;font-weight:700;color:#fff}.stat-card-label{font-size:11px;color:#ffffff73;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.stat-card.highlight{border-color:#4ecdc433;background:#4ecdc40f}.stat-card.highlight .stat-card-value{color:#4ecdc4}.chart-section{margin-top:16px;padding:12px;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.chart-title{font-size:13px;color:#fff9;margin-bottom:10px;font-weight:600}.chart-svg{width:100%;height:auto;display:block}.chart-legend{display:flex;gap:14px;justify-content:center;margin-top:8px;font-size:11px;color:#ffffff80}.legend-item{display:flex;align-items:center;gap:4px}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.bar-chart{display:flex;align-items:flex-end;gap:6px;height:100px;padding:0 4px}.bar-column{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px}.bar-value{font-size:10px;color:#ffffff80;font-weight:600}.bar-fill-container{width:100%;height:70px;display:flex;align-items:flex-end}.bar-fill{width:100%;background:linear-gradient(180deg,#667eea,#4ecdc4);border-radius:4px 4px 0 0;min-height:3px;transition:height .3s ease}.bar-label{font-size:10px;color:#fff6}.ai-stats-section{margin-top:16px}.ai-stats-title{font-size:13px;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.ai-difficulty-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.04)}.ai-diff-label{font-size:14px;color:#ffffffb3;min-width:70px}.ai-diff-bar-bg{flex:1;height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.ai-diff-bar-fill{height:100%;border-radius:4px;transition:width .8s ease-out}.ai-diff-bar-fill.easy{background:#4ecdc4}.ai-diff-bar-fill.medium{background:gold}.ai-diff-bar-fill.hard{background:#ff6b6b}.ai-diff-record{font-size:13px;color:#ffffff80;min-width:50px;text-align:right}.history-empty{text-align:center;color:#ffffff4d;padding:40px 0;font-size:14px}.history-list{display:flex;flex-direction:column;gap:8px}.history-item{display:flex;align-items:center;gap:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:10px 14px;transition:background .2s}.history-item:hover{background:#ffffff0f}.history-result-badge{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.history-result-badge.win{background:#4ecdc426;color:#4ecdc4;border:1px solid rgba(78,205,196,.3)}.history-result-badge.loss{background:#ff6b6b26;color:#ff6b6b;border:1px solid rgba(255,107,107,.3)}.history-result-badge.draw{background:#ffd70026;color:gold;border:1px solid rgba(255,215,0,.3)}.history-details{flex:1;min-width:0}.history-opponent{font-size:14px;color:#fff;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-meta{font-size:11px;color:#fff6;margin-top:2px}.history-score{font-size:16px;font-weight:600;color:#fffc;flex-shrink:0}.showcase-section{margin-bottom:20px}.showcase-label{font-size:13px;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}.showcase-achievements{display:flex;gap:12px;flex-wrap:wrap}.showcase-achievement{display:flex;align-items:center;gap:8px;background:#ffd7000f;border:1px solid rgba(255,215,0,.15);border-radius:10px;padding:10px 14px}.showcase-achievement-icon{font-size:24px}.showcase-achievement-name{font-size:13px;color:gold;font-weight:500}.showcase-cosmetics{display:flex;gap:12px}.showcase-cosmetic{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 16px;text-align:center}.showcase-cosmetic-emoji{font-size:28px;display:block;margin-bottom:4px}.showcase-cosmetic-label{font-size:11px;color:#fff6}.showcase-cosmetic-name{font-size:12px;color:#ffffffb3;font-weight:500}.showcase-empty{color:#ffffff4d;font-size:13px;font-style:italic}@media (max-width: 768px){.profile-overlay{top:40px;bottom:60px}}@media (max-height: 600px){.profile-overlay{top:36px;bottom:0}}@media (max-width: 500px){.profile-modal{width:95vw}.profile-winrate-section{gap:20px}.winrate-ring{width:80px;height:80px}.winrate-ring svg{width:80px;height:80px}.stats-grid{grid-template-columns:1fr 1fr;gap:8px}}.daily-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:3500;animation:dailyFadeIn .25s ease-out}@keyframes dailyFadeIn{0%{opacity:0}to{opacity:1}}.daily-modal{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;width:90vw;max-width:480px;max-height:100%;overflow-y:auto;padding:24px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f;animation:dailySlideUp .3s ease-out}@keyframes dailySlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.daily-modal::-webkit-scrollbar{width:6px}.daily-modal::-webkit-scrollbar-track{background:transparent}.daily-modal::-webkit-scrollbar-thumb{background:#ffd7004d;border-radius:3px}.daily-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.daily-title{font-size:22px;font-weight:700;color:#fff;margin:0}.daily-close{background:none;border:none;color:#ffffff80;font-size:22px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s}.daily-close:hover{color:#fff;background:#ffffff1a}.daily-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.daily-countdown{font-size:13px;color:#ffffff73}.daily-countdown span{color:gold;font-weight:600}.daily-streak{display:flex;align-items:center;gap:6px;font-size:13px;color:#fff9}.daily-streak-value{color:#ff6b6b;font-weight:700;font-size:15px}.daily-streak-bonus{color:gold;font-size:11px}.daily-challenges-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.daily-section-label{font-size:12px;color:#fff6;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:4px}.challenge-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:14px;transition:all .2s}.challenge-card.completed{border-color:#4ecdc44d;background:#4ecdc40f}.challenge-card.claimed{opacity:.5}.challenge-icon{font-size:28px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.challenge-info{flex:1;min-width:0}.challenge-desc{font-size:14px;color:#fff;font-weight:500;margin-bottom:6px}.challenge-progress-bar{height:6px;background:#ffffff14;border-radius:3px;overflow:hidden}.challenge-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,#4ecdc4,#44b8b0);transition:width .5s ease-out}.challenge-progress-fill.full{background:linear-gradient(90deg,gold,#f0c040)}.challenge-progress-text{font-size:11px;color:#fff6;margin-top:4px}.challenge-reward{display:flex;flex-direction:column;align-items:center;gap:4px;flex-shrink:0}.challenge-reward-amount{font-size:16px;font-weight:700;color:gold}.challenge-claim-btn{background:linear-gradient(135deg,gold,#f0a030);color:#1a1a2e;border:none;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.challenge-claim-btn:hover{transform:scale(1.05);box-shadow:0 4px 15px #ffd7004d}.challenge-claimed-check{font-size:20px;color:#4ecdc4}.weekly-card{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid rgba(102,126,234,.25);border-radius:14px;padding:18px}.weekly-card .challenge-progress-fill{background:linear-gradient(90deg,#667eea,#764ba2)}.weekly-card .challenge-progress-fill.full{background:linear-gradient(90deg,gold,#f0c040)}.weekly-label{display:inline-block;background:#667eea33;color:#a8b8ff;font-size:10px;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-weight:600}@media (max-width: 768px){.daily-overlay{top:40px;bottom:62px}}@media (max-height: 600px){.daily-overlay{top:36px;bottom:0}}@media (max-width: 460px){.daily-modal{width:95vw;padding:18px}}.campaign-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;background:transparent;display:flex;align-items:center;justify-content:center;z-index:3500;animation:campaignFadeIn .25s ease-out}@keyframes campaignFadeIn{0%{opacity:0}to{opacity:1}}.campaign-modal{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;width:92vw;max-width:560px;max-height:100%;overflow-y:auto;padding:24px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f;animation:campaignSlideUp .3s ease-out}@keyframes campaignSlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.campaign-modal::-webkit-scrollbar{width:6px}.campaign-modal::-webkit-scrollbar-track{background:transparent}.campaign-modal::-webkit-scrollbar-thumb{background:#667eea4d;border-radius:3px}.campaign-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.campaign-title{font-size:22px;font-weight:700;color:#fff;margin:0}.campaign-close{background:none;border:none;color:#ffffff80;font-size:22px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s}.campaign-close:hover{color:#fff;background:#ffffff1a}.campaign-total-stars{font-size:14px;color:#ffffff80;margin-bottom:20px}.campaign-total-stars span{color:gold;font-weight:600}.campaign-worlds-wrapper{position:relative;margin-bottom:20px}.campaign-worlds{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-right:32px}.campaign-worlds::-webkit-scrollbar{display:none}.scroll-indicator{position:absolute;right:0;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:#667eea40;border:1px solid rgba(102,126,234,.4);display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000004d;animation:chevronBounce 1.8s ease-in-out infinite}.scroll-chevron{color:#ffffffd9;font-size:18px;font-weight:700;line-height:1;margin-left:1px}@keyframes chevronBounce{0%,to{transform:translateY(-50%) translate(0)}50%{transform:translateY(-50%) translate(3px)}}.world-tab{flex:0 0 auto;min-width:72px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 8px;text-align:center;cursor:pointer;transition:all .2s}.world-tab:hover{background:#ffffff14}.world-tab.active{border-color:var(--world-color, rgba(102, 126, 234, .5));background:color-mix(in srgb,var(--world-color, #667eea) 10%,transparent)}.world-tab-icon{font-size:24px;display:block;margin-bottom:4px}.world-tab-name{font-size:12px;color:#ffffffb3;font-weight:600}.world-tab-progress{font-size:10px;color:#ffffff59;margin-top:2px}.campaign-levels{display:flex;flex-direction:column;gap:10px}.level-card{display:flex;align-items:center;gap:14px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:14px 16px;cursor:pointer;transition:all .2s}.level-card:hover:not(.locked){background:#ffffff12;border-color:#ffffff1f}.level-card.locked{opacity:.45;cursor:not-allowed}.level-card.completed{border-color:#4ecdc433}.level-number{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0;background:#ffffff0f;color:#fff9;border:1px solid rgba(255,255,255,.1)}.level-card.completed .level-number{background:#4ecdc426;color:#4ecdc4;border-color:#4ecdc44d}.level-card.locked .level-number{background:#ffffff08;color:#ffffff4d}.level-info{flex:1;min-width:0}.level-name{font-size:15px;color:#fff;font-weight:600;margin-bottom:3px}.level-desc{font-size:12px;color:#fff6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.level-meta{display:flex;gap:8px;margin-top:5px}.level-tag{font-size:10px;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.level-tag.difficulty-easy{background:#4ecdc426;color:#4ecdc4}.level-tag.difficulty-medium{background:#ffd70026;color:gold}.level-tag.difficulty-hard{background:#ff6b6b26;color:#ff6b6b}.level-tag.special{background:#f093fb26;color:#f093fb}.level-tag.turns{background:#667eea26;color:#a8b8ff}.level-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.level-stars{display:flex;gap:2px;font-size:16px}.level-star{opacity:.2}.level-star.earned{opacity:1}.level-best-score{font-size:11px;color:#ffffff59}.level-lock-icon{font-size:20px;color:#ffffff40}.level-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:3600}.level-detail-card{background:linear-gradient(145deg,#1e1e3a,#1a2040);border:1px solid rgba(102,126,234,.3);border-radius:16px;padding:28px;max-width:380px;width:85vw;text-align:center;animation:campaignSlideUp .25s ease-out}.level-detail-icon{font-size:48px;margin-bottom:8px}.level-detail-name{font-size:22px;font-weight:700;color:#fff;margin:0 0 6px}.level-detail-desc{font-size:14px;color:#fff9;margin-bottom:16px;line-height:1.5}.level-detail-rules{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:18px}.level-detail-stars{margin-bottom:18px}.level-detail-stars-label{font-size:12px;color:#fff6;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.star-thresholds{display:flex;justify-content:center;gap:16px}.star-threshold{display:flex;flex-direction:column;align-items:center;gap:2px}.star-threshold-stars{font-size:14px}.star-threshold-score{font-size:13px;color:#fff9;font-weight:600}.level-detail-best{font-size:13px;color:#fff6;margin-bottom:18px}.level-detail-best span{color:#4ecdc4;font-weight:600}.level-detail-buttons{display:flex;gap:10px;justify-content:center}.level-play-btn{background:linear-gradient(135deg,#4ecdc4,#44b8b0);color:#1a1a2e;border:none;font-size:16px;font-weight:700;padding:12px 32px;border-radius:12px;cursor:pointer;transition:all .2s}.level-play-btn:hover{transform:scale(1.03);box-shadow:0 4px 20px #4ecdc44d}.level-back-btn{background:none;border:1px solid rgba(255,255,255,.15);color:#fff9;font-size:14px;padding:12px 20px;border-radius:12px;cursor:pointer;transition:all .2s}.level-back-btn:hover{border-color:#ffffff4d;color:#fff}@media (max-width: 768px){.campaign-overlay{top:40px;bottom:62px}}@media (max-height: 600px){.campaign-overlay{top:36px;bottom:0}}@media (max-width: 500px){.campaign-modal{width:95vw;padding:16px}.campaign-worlds{gap:4px}.world-tab{padding:10px 4px}}.puzzle-overlay{position:fixed;top:48px;left:0;right:0;bottom:56px;background:transparent;display:flex;align-items:center;justify-content:center;z-index:3500;padding:8px 16px}.puzzle-setup{max-height:100%;overflow:hidden;display:flex;flex-direction:column;gap:10px!important;padding:18px 20px!important}.puzzle-header-row{display:flex;align-items:center;gap:14px;width:100%}.puzzle-icon-badge{width:44px!important;height:44px!important;font-size:1.4rem!important;border-radius:12px!important;flex-shrink:0}.puzzle-header-info{flex:1;min-width:0}.puzzle-header-info .setup-title{font-size:1.1rem;margin:0;line-height:1.2}.puzzle-header-meta{display:flex;align-items:center;gap:8px;margin-top:4px}.puzzle-progress-inline{font-size:.7rem;color:#ffffff73;font-weight:600;white-space:nowrap}.puzzle-progress-bar-mini{flex:1;height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden}.puzzle-progress-fill-mini{height:100%;background:linear-gradient(90deg,#4ecdc4,#44bd56);border-radius:3px;transition:width .5s ease}.puzzle-difficulty-row{display:flex;gap:6px;width:100%}.puzzle-difficulty-row .target-btn{flex:1;min-width:0;height:36px;font-size:.8rem}.puzzle-list-section{flex:1;min-height:0;overflow-y:auto;padding:8px 12px!important}.puzzle-list-section::-webkit-scrollbar{width:5px}.puzzle-list-section::-webkit-scrollbar-track{background:transparent}.puzzle-list-section::-webkit-scrollbar-thumb{background:#4ecdc44d;border-radius:3px}.puzzle-list{display:flex;flex-direction:column;gap:6px}.puzzle-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 12px;cursor:pointer;transition:all .2s}.puzzle-card:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-1px)}.puzzle-card.completed{border-color:#4ecdc44d;background:#4ecdc40d}.puzzle-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.puzzle-card-name{font-size:.82rem;font-weight:700;color:#fff}.puzzle-card-moves{font-size:.68rem;color:#ffffff80;background:#ffffff0f;padding:2px 7px;border-radius:6px}.puzzle-card-desc{font-size:.72rem;color:#ffffff73;margin-bottom:4px}.puzzle-card-footer{display:flex;justify-content:space-between;align-items:center}.puzzle-card-target{font-size:.7rem;font-weight:600;color:#f1c40f}.puzzle-card-best{font-size:.68rem;color:#4ecdc4;font-weight:600}@media (max-width: 768px){.puzzle-overlay{top:40px;bottom:60px}.puzzle-setup{gap:8px!important;padding:14px 16px!important}.puzzle-icon-badge{width:38px!important;height:38px!important;font-size:1.2rem!important}}@media (max-height: 600px){.puzzle-overlay{top:36px;bottom:0}.puzzle-setup{gap:6px!important;padding:12px 14px!important}}.tutorial-overlay{position:fixed;top:8px;left:50%;transform:translate(-50%);z-index:1500;pointer-events:none;width:90vw;max-width:340px}.tutorial-bubble{background:linear-gradient(145deg,#1a1a2eee,#16213eee);border:1.5px solid rgba(78,205,196,.45);border-radius:14px;padding:12px 14px 10px;box-shadow:0 8px 30px #00000080,0 0 15px #4ecdc41a;pointer-events:auto;animation:tutBubbleIn .3s ease-out}@keyframes tutBubbleIn{0%{transform:translateY(-12px);opacity:0}to{transform:translateY(0);opacity:1}}.tutorial-bubble-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.tutorial-step-counter{font-size:10px;color:#4ecdc499;text-transform:uppercase;letter-spacing:1.2px;font-weight:600}.tutorial-close-btn{background:none;border:none;color:#ffffff59;font-size:16px;cursor:pointer;padding:0 2px;line-height:1;transition:color .15s}.tutorial-close-btn:hover{color:#ffffffb3}.tutorial-title{font-size:15px;font-weight:700;color:#fff;margin:0 0 4px;line-height:1.2}.tutorial-instruction{font-size:12px;color:#ffffffb8;line-height:1.5;margin:0 0 10px}.tutorial-buttons{display:flex;justify-content:flex-end;align-items:center}.tutorial-waiting-hint{font-size:12px;color:#4ecdc4;font-weight:600;animation:hintPulse 1.6s ease-in-out infinite}@keyframes hintPulse{0%,to{opacity:.7}50%{opacity:1}}.tutorial-next-btn{background:linear-gradient(135deg,#4ecdc4,#44b8b0);color:#1a1a2e;border:none;font-size:13px;font-weight:700;padding:7px 18px;border-radius:8px;cursor:pointer;transition:all .15s}.tutorial-next-btn:hover{transform:scale(1.03);box-shadow:0 3px 10px #4ecdc44d}.tutorial-next-btn:active{transform:scale(.98)}.tutorial-progress{display:flex;justify-content:center;gap:5px;margin-top:8px}.tutorial-dot{width:6px;height:6px;border-radius:50%;background:#ffffff26;transition:all .3s}.tutorial-dot.completed{background:#4ecdc4}.tutorial-dot.current{background:#4ecdc4;box-shadow:0 0 6px #4ecdc480;transform:scale(1.3)}@media (max-width: 500px){.tutorial-overlay{top:4px;width:92vw;max-width:300px}.tutorial-bubble{padding:10px 12px 8px;border-radius:12px}.tutorial-title{font-size:13px;margin-bottom:3px}.tutorial-instruction{font-size:11px;line-height:1.4;margin-bottom:8px}.tutorial-next-btn{font-size:12px;padding:6px 14px}.tutorial-dot{width:5px;height:5px}.tutorial-progress{margin-top:6px;gap:4px}}.admin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;z-index:10000;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:20px}.admin-dashboard{background:linear-gradient(145deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1);border-radius:16px;width:100%;max-width:1000px;max-height:90vh;overflow-y:auto;padding:24px;color:#e0e0e0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-dashboard::-webkit-scrollbar{width:8px}.admin-dashboard::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.admin-dashboard::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-header h2{margin:0;font-size:1.5rem;background:linear-gradient(135deg,#f9a825,#ff6f00);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.admin-close{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:background .2s}.admin-close:hover{background:#fff3}.admin-refresh{background:#4ecdc433;border:1px solid rgba(78,205,196,.4);color:#4ecdc4;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;margin-right:8px;transition:background .2s}.admin-refresh:hover{background:#4ecdc44d}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px}.admin-stat-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px;text-align:center}.admin-stat-card .stat-value{font-size:1.8rem;font-weight:700;color:#fff;line-height:1.2}.admin-stat-card .stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:#ffffff80;margin-top:4px}.admin-stat-card.highlight{border-color:#4ecdc44d;background:#4ecdc414}.admin-stat-card.highlight .stat-value{color:#4ecdc4}.admin-stat-card.live{border-color:#4caf504d;background:#4caf5014}.admin-stat-card.live .stat-value{color:#4caf50}.admin-section-title{font-size:1.1rem;font-weight:600;margin:24px 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.08);color:#fffc}.admin-tabs{display:flex;gap:4px;margin-bottom:16px;background:#ffffff0d;border-radius:10px;padding:4px}.admin-tab{flex:1;padding:10px 12px;background:transparent;border:none;color:#ffffff80;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s}.admin-tab.active{background:#ffffff1a;color:#fff}.admin-tab:hover:not(.active){color:#fffc}.admin-chart{display:flex;align-items:flex-end;gap:4px;height:120px;padding:8px 0;margin-bottom:16px}.admin-chart-bar{flex:1;background:linear-gradient(to top,#4ecdc499,#4ecdc433);border-radius:4px 4px 0 0;min-height:2px;position:relative;transition:height .3s}.admin-chart-bar:hover{background:linear-gradient(to top,#4ecdc4e6,#4ecdc466)}.admin-chart-bar .bar-tooltip{display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#222;color:#fff;padding:4px 8px;border-radius:6px;font-size:.7rem;white-space:nowrap;margin-bottom:4px}.admin-chart-bar:hover .bar-tooltip{display:block}.admin-chart-labels{display:flex;gap:4px;margin-bottom:16px}.admin-chart-labels span{flex:1;text-align:center;font-size:.6rem;color:#ffffff4d}.admin-table-wrap{overflow-x:auto;margin-bottom:16px}.admin-table{width:100%;border-collapse:collapse;font-size:.82rem}.admin-table th{text-align:left;padding:10px 8px;color:#ffffff80;font-weight:600;text-transform:uppercase;font-size:.7rem;letter-spacing:.5px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-table td{padding:8px;border-bottom:1px solid rgba(255,255,255,.04);color:#fffc}.admin-table tr:hover td{background:#ffffff08}.admin-loading{text-align:center;padding:40px;color:#ffffff80;font-size:1rem}.admin-error{text-align:center;padding:20px;color:#ef5350;background:#ef53501a;border-radius:8px;margin-bottom:16px}@media (max-width: 600px){.admin-dashboard{padding:16px;border-radius:12px}.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-stat-card .stat-value{font-size:1.4rem}.admin-table{font-size:.75rem}}.leaderboard-overlay{position:fixed;top:48px;left:0;right:0;bottom:56px;background:transparent;z-index:5000;display:flex;align-items:center;justify-content:center;padding:8px 16px}.leaderboard-overlay .match-setup{max-width:540px;max-height:100%;overflow:hidden;display:flex;flex-direction:column}.lb-scroll-area{flex:1;min-height:0;overflow-y:auto;padding:10px 16px!important}.lb-tabs{display:flex;gap:6px;padding:0 16px 8px}.lb-tab{flex:1;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:8px 0;color:#ffffff80;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;text-align:center}.lb-tab:hover{background:#ffffff12;color:#fffc}.lb-tab.active{background:#4ecdc41f;border-color:#4ecdc459;color:#4ecdc4}.lb-scroll-area::-webkit-scrollbar{width:5px}.lb-scroll-area::-webkit-scrollbar-track{background:transparent}.lb-scroll-area::-webkit-scrollbar-thumb{background:#4ecdc44d;border-radius:3px}.leaderboard-loading{text-align:center;padding:40px 20px;color:#ffffff80;font-size:15px}.leaderboard-error{text-align:center;padding:20px;color:#ff6b6b;font-size:14px}.lb-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;margin-bottom:4px;background:#ffffff08;transition:background .15s}.lb-row:hover{background:#ffffff0f}.lb-row.is-you{background:#ffd70014;border:1px solid rgba(255,215,0,.25)}.lb-row.top-3{background:#ffd7000d}.lb-rank{width:32px;text-align:center;font-weight:700;font-size:16px;color:#fff9;flex-shrink:0}.lb-row.top-3:nth-child(1) .lb-rank{color:gold;font-size:20px}.lb-row.top-3:nth-child(2) .lb-rank{color:silver;font-size:18px}.lb-row.top-3:nth-child(3) .lb-rank{color:#cd7f32;font-size:18px}.lb-rank-medal{font-size:20px}.lb-tier{font-size:18px;flex-shrink:0;width:24px;text-align:center}.lb-info{flex:1;min-width:0}.lb-name{font-weight:600;font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-row.is-you .lb-name{color:gold}.lb-stats{display:flex;gap:10px;font-size:11px;color:#ffffff73;margin-top:2px}.lb-right{text-align:right;flex-shrink:0}.lb-level{font-size:14px;font-weight:700;color:#4ecdc4}.lb-xp{font-size:10px;color:#ffffff59;margin-top:1px}@media (max-width: 768px){.leaderboard-overlay{top:40px;bottom:60px}.lb-row{padding:8px 10px;gap:8px}.lb-name{font-size:13px}.lb-stats{font-size:10px;gap:6px}}@media (max-height: 600px){.leaderboard-overlay{top:36px;bottom:0}}.login-reward-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:4000;animation:lrFadeIn .3s ease-out}@keyframes lrFadeIn{0%{opacity:0}to{opacity:1}}.login-reward-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.12);border-radius:22px;width:92vw;max-width:420px;max-height:100%;overflow:hidden;display:flex;flex-direction:column;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 8px 32px #00000059,0 0 60px #ffd7000f,inset 0 1px #ffffff14;animation:lrSlideUp .35s ease-out}@keyframes lrSlideUp{0%{transform:translateY(40px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.lr-header{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 12px}.lr-title{font-size:20px;font-weight:700;color:#fff;margin:0;display:flex;align-items:center;gap:8px}.lr-title-icon{font-size:24px}.lr-close{background:none;border:none;color:#ffffff80;font-size:20px;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .2s}.lr-close:hover{color:#fff;background:#ffffff1a}.lr-streak-banner{text-align:center;padding:0 22px 14px;font-size:13px;color:#ffffff80}.lr-streak-count{color:#ff6b6b;font-weight:700;font-size:16px}.lr-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:0 16px;flex:1;min-height:0;overflow-y:auto}.lr-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 4px;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);transition:all .25s;position:relative}.lr-day.claimed{background:#4ecdc41a;border-color:#4ecdc44d}.lr-day.today{background:#ffd70014;border-color:#ffd70066;box-shadow:0 0 16px #ffd70026;animation:lrPulse 2s ease-in-out infinite}.lr-day.today.claimed{background:#4ecdc41f;border-color:#4ecdc466;box-shadow:0 0 16px #4ecdc426;animation:none}.lr-day.future{opacity:.4}@keyframes lrPulse{0%,to{box-shadow:0 0 16px #ffd70026}50%{box-shadow:0 0 24px #ffd7004d}}.lr-day-label{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:#fff6;font-weight:600}.lr-day-icon{font-size:22px;line-height:1}.lr-day-reward{font-size:9px;color:#ffffff8c;font-weight:500;text-align:center;line-height:1.2}.lr-day-check{position:absolute;top:-4px;right:-4px;font-size:14px}.lr-claim-area{padding:18px 22px 20px;display:flex;flex-direction:column;align-items:center;gap:10px}.lr-claim-btn{width:100%;background:linear-gradient(135deg,gold,#f0a030);color:#1a1a2e;border:none;border-radius:14px;padding:14px;font-size:16px;font-weight:800;cursor:pointer;text-transform:uppercase;letter-spacing:1px;transition:all .25s;box-shadow:0 4px 20px #ffd7004d}.lr-claim-btn:hover{transform:translateY(-2px);box-shadow:0 6px 28px #ffd70073}.lr-claim-btn:active{transform:translateY(0)}.lr-claim-btn:disabled{background:#ffffff14;color:#ffffff4d;box-shadow:none;cursor:default;transform:none}.lr-claim-confetti{font-size:28px;animation:lrBounce .6s ease-out}@keyframes lrBounce{0%{transform:scale(0)}60%{transform:scale(1.3)}to{transform:scale(1)}}.lr-total-days{font-size:11px;color:#ffffff59}@media (max-width: 768px){.login-reward-overlay{top:40px;bottom:62px}}@media (max-height: 600px){.login-reward-overlay{top:36px;bottom:0}}@media (max-width: 400px){.lr-grid{gap:4px;padding:0 10px}.lr-day{padding:8px 2px;border-radius:10px}.lr-day-icon{font-size:18px}.lr-day-reward{font-size:8px}}.sp-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:4100;animation:spFadeIn .25s ease-out}@keyframes spFadeIn{0%{opacity:0}to{opacity:1}}.sp-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:18px;width:80vw;max-width:300px;overflow:hidden;display:flex;flex-direction:column;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 6px 28px #00000059,inset 0 1px #ffffff1a;animation:spSlideUp .35s cubic-bezier(.34,1.56,.64,1)}@keyframes spSlideUp{0%{transform:translateY(30px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.sp-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 6px}.sp-title{font-size:17px;font-weight:700;color:#fff;margin:0;display:flex;align-items:center;gap:8px}.sp-title-icon{font-size:20px;animation:spBounce .5s ease-out}@keyframes spBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}70%{transform:scale(.9)}to{transform:scale(1)}}.sp-close{background:none;border:none;color:#fff6;font-size:16px;cursor:pointer;padding:2px 6px;border-radius:6px;transition:all .2s}.sp-close:hover{color:#fff;background:#ffffff1a}.sp-items{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px 14px}.sp-item{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);transition:all .3s}.sp-item-reveal{animation:spItemPop .3s cubic-bezier(.34,1.56,.64,1) both}@keyframes spItemPop{0%{transform:scale(.85);opacity:.3}to{transform:scale(1);opacity:1;background:#ffffff14;border-color:#ffffff26}}.sp-item-emoji{font-size:18px;line-height:1;flex-shrink:0}.sp-item-label{font-size:12px;font-weight:600;color:#ffffffd9;white-space:nowrap}.sp-claim-area{padding:10px 14px 14px}.sp-claim-btn{width:100%;background:linear-gradient(135deg,gold,#f0a030);color:#1a1a2e;border:none;border-radius:12px;padding:11px;font-size:14px;font-weight:700;cursor:pointer;letter-spacing:.5px;transition:all .25s;box-shadow:0 3px 16px #ffd7004d;position:relative;overflow:hidden}.sp-claim-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:spShimmer 2.5s ease-in-out infinite}@keyframes spShimmer{0%{left:-100%}to{left:100%}}.sp-claim-btn:active{transform:scale(.97)}.sp-claim-btn.sp-claimed{background:linear-gradient(135deg,#4ecdc4,#45b7aa);box-shadow:0 3px 14px #4ecdc440;cursor:default}.sp-claim-btn.sp-claimed:before{display:none}.sp-claim-confetti{margin-right:6px;font-size:16px}.friends-overlay{position:fixed;top:48px;left:0;right:0;bottom:56px;background:transparent;display:flex;align-items:center;justify-content:center;z-index:3500;padding:8px 16px}.friends-overlay .match-setup{max-width:520px;max-height:100%;overflow:hidden;display:flex;flex-direction:column}.friends-tab-badge{background:#e74c3c;color:#fff;font-size:.6rem;min-width:16px;height:16px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;font-weight:700;margin-left:4px;vertical-align:middle}.friends-scroll-area{flex:1;min-height:0;overflow-y:auto;padding:10px 16px!important}.friends-scroll-area::-webkit-scrollbar{width:5px}.friends-scroll-area::-webkit-scrollbar-track{background:transparent}.friends-scroll-area::-webkit-scrollbar-thumb{background:#4ecdc44d;border-radius:3px}.friends-empty{text-align:center;color:#fff6;padding:40px 16px;font-size:.9rem}.friends-empty-icon{font-size:2.5rem;margin-bottom:12px;opacity:.5}.friend-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;background:#ffffff08;margin-bottom:8px;transition:background .2s}.friend-row:hover{background:#ffffff0f}.friend-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#4ecdc4,#44a08d);display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;color:#fff;flex-shrink:0;position:relative}.friend-status-dot{position:absolute;bottom:-1px;right:-1px;width:12px;height:12px;border-radius:50%;border:2px solid #1a1a2e}.friend-status-dot.online{background:#2ecc71}.friend-status-dot.in-game{background:#f39c12}.friend-status-dot.offline{background:#666}.friend-info{flex:1;min-width:0}.friend-name{font-size:.95rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friend-meta{font-size:.75rem;color:#fff6;margin-top:2px}.friend-meta .online{color:#2ecc71}.friend-meta .in-game{color:#f39c12}.friend-actions{display:flex;gap:6px;flex-shrink:0}.friend-action-btn{background:#4ecdc426;border:1px solid rgba(78,205,196,.3);color:#4ecdc4;padding:6px 12px;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.friend-action-btn:hover{background:#4ecdc440}.friend-action-btn.danger{background:#e74c3c1a;border-color:#e74c3c4d;color:#e74c3c}.friend-action-btn.danger:hover{background:#e74c3c33}.friend-action-btn.accept{background:#2ecc7126;border-color:#2ecc714d;color:#2ecc71}.friend-action-btn.accept:hover{background:#2ecc7140}.friend-action-btn:disabled{opacity:.4;cursor:not-allowed}.friend-action-btn.pending{background:#ffffff0d;border-color:#ffffff26;color:#fff6;cursor:default}.request-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;background:#ffffff08;margin-bottom:8px}.request-info{flex:1;min-width:0}.request-label{font-size:.7rem;color:#ffffff59;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.invite-settings{display:flex;flex-direction:column;gap:10px;padding:16px;background:#0003;border-radius:12px;margin-top:8px}.invite-settings h4{margin:0 0 4px;color:#fff;font-size:.9rem}.invite-mode-row{display:flex;gap:6px}.invite-mode-btn{flex:1;padding:8px 4px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0d;color:#fff9;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;text-align:center}.invite-mode-btn.active{border-color:#4ecdc4;background:#4ecdc426;color:#4ecdc4}.invite-send-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);border:none;color:#fff;padding:10px;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s}.invite-send-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #4ecdc44d}.friends-loading{text-align:center;padding:40px;color:#fff6}.friends-loading-spinner{width:32px;height:32px;border:3px solid rgba(78,205,196,.2);border-top-color:#4ecdc4;border-radius:50%;animation:friendsSpin .8s linear infinite;margin:0 auto 12px}@keyframes friendsSpin{to{transform:rotate(360deg)}}.search-input-wrapper{position:relative;margin-bottom:12px}.search-input{width:100%;padding:10px 36px 10px 14px;border-radius:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#fff;font-size:.9rem;font-family:inherit;box-sizing:border-box;transition:border-color .2s}.search-input::placeholder{color:#ffffff4d}.search-input:focus{outline:none;border-color:#4ecdc4}.search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:#fff6;font-size:1rem;cursor:pointer;padding:4px;line-height:1}.search-clear:hover{color:#fff}@media (max-width: 768px){.friends-overlay{top:40px;bottom:60px}}@media (max-height: 600px){.friends-overlay{top:36px;bottom:0}}.feedback-overlay{position:fixed;top:48px;bottom:56px;left:0;right:0;z-index:9999;background:transparent;display:flex;align-items:center;justify-content:center}.feedback-modal{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:22px;width:90%;max-width:440px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 8px 32px #0000004d,0 0 40px #4ecdc40f,inset 0 1px #ffffff0f;animation:feedbackSlideIn .3s ease}@keyframes feedbackSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.feedback-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.feedback-header h3{margin:0;color:#fff;font-size:1.1rem}.feedback-close{background:none;border:none;color:#ffffff80;font-size:1.2rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.feedback-close:hover{color:#fff;background:#ffffff1a}.feedback-body{padding:20px}.feedback-label{color:#ffffffb3;font-size:.8rem;font-weight:600;margin-bottom:8px;display:block;text-transform:uppercase;letter-spacing:.5px}.feedback-categories{display:flex;gap:8px;margin-bottom:16px}.feedback-cat{flex:1;padding:8px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fff;cursor:pointer;font-size:.85rem;transition:all .2s}.feedback-cat:hover{background:#ffffff1a}.feedback-cat.active{background:#4ecdc433;border-color:#4ecdc4;color:#4ecdc4}.feedback-textarea{width:100%;padding:12px;border-radius:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fff;font-size:.9rem;resize:vertical;font-family:inherit;box-sizing:border-box;min-height:100px;transition:border-color .2s}.feedback-textarea::placeholder{color:#ffffff4d}.feedback-textarea:focus{outline:none;border-color:#4ecdc4}.feedback-char-count{text-align:right;color:#ffffff4d;font-size:.7rem;margin-top:4px}.feedback-footer{display:flex;gap:12px;padding:16px 20px;border-top:1px solid rgba(255,255,255,.1);justify-content:flex-end}.feedback-cancel{padding:8px 20px;border-radius:8px;background:transparent;border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;font-size:.9rem;transition:all .2s}.feedback-cancel:hover{background:#ffffff1a}.feedback-submit{padding:8px 24px;border-radius:8px;background:linear-gradient(135deg,#4ecdc4,#44a08d);border:none;color:#fff;font-weight:600;cursor:pointer;font-size:.9rem;transition:all .2s}.feedback-submit:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4ecdc44d}.feedback-submit:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.feedback-overlay{top:40px;bottom:62px}}@media (max-height: 600px){.feedback-overlay{top:36px;bottom:0}}.settings-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.settings-modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:20px;padding:32px;max-width:420px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #00000080;border:2px solid rgba(78,205,196,.3)}.settings-modal-content h2{text-align:center;margin:0 0 24px;font-size:1.5rem;color:#fff}.settings-section{margin-bottom:20px}.settings-section h3{margin:0 0 12px;font-size:1rem;color:#ffffffb3;text-transform:uppercase;letter-spacing:1px;font-weight:600}.settings-row{display:flex;align-items:center;justify-content:space-between;padding:10px 0}.settings-row label{color:#fff;font-size:.95rem;font-weight:500}.settings-toggle{position:relative;width:48px;height:26px;flex-shrink:0}.settings-toggle input{opacity:0;width:0;height:0}.settings-toggle .toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#ffffff26;border-radius:26px;transition:.3s}.settings-toggle .toggle-slider:before{content:"";position:absolute;height:20px;width:20px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}.settings-toggle input:checked+.toggle-slider{background:#4ecdc4}.settings-toggle input:checked+.toggle-slider:before{transform:translate(22px)}.settings-volume{display:flex;align-items:center;gap:10px;padding:6px 0}.settings-volume label{color:#fff;font-size:.9rem;min-width:60px;font-weight:500}.settings-volume input[type=range]{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff26;border-radius:3px;outline:none}.settings-volume input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#4ecdc4;cursor:pointer;box-shadow:0 2px 6px #0000004d}.settings-volume input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#4ecdc4;cursor:pointer;border:none}.settings-volume .vol-pct{color:#ffffff80;font-size:.8rem;min-width:32px;text-align:right}.settings-close-btn{display:block;margin:24px auto 0;padding:10px 40px;border:none;border-radius:10px;background:linear-gradient(135deg,#4ecdc4,#44a8a0);color:#fff;font-weight:700;font-size:1rem;cursor:pointer;transition:transform .15s}.settings-close-btn:hover{transform:scale(1.05)}.settings-replay-btn{padding:6px 14px;border:1px solid rgba(102,126,234,.4);border-radius:8px;background:#667eea1a;color:#667eea;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.settings-replay-btn:hover{background:#667eea33;border-color:#667eea99;transform:scale(1.03)}.settings-hint{font-size:.72rem;color:#ffffff59;margin-top:4px;padding-left:2px}@media (max-width: 480px){.settings-modal-content{padding:24px 18px;border-radius:16px}}.game-summary-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#05050fe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:summaryFadeIn .3s ease}@keyframes summaryFadeIn{0%{opacity:0}to{opacity:1}}.game-summary-modal{background:linear-gradient(160deg,#141432fa,#0a0a1efc);border-radius:24px;padding:32px 28px 28px;max-width:380px;width:90%;box-shadow:0 25px 80px #0009,0 0 60px #4ecdc414,inset 0 1px #ffffff1a;border:1px solid rgba(78,205,196,.2);animation:summarySlideIn .5s cubic-bezier(.16,1,.3,1);text-align:center;max-height:85vh;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent}@keyframes summarySlideIn{0%{transform:translateY(60px) scale(.85);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.summary-header-icon{font-size:3rem;margin-bottom:8px;animation:summaryHeaderPop .6s cubic-bezier(.16,1,.3,1) .2s both}@keyframes summaryHeaderPop{0%{transform:scale(0) rotate(-15deg);opacity:0}50%{transform:scale(1.2) rotate(3deg)}to{transform:scale(1) rotate(0);opacity:1}}.summary-title{font-size:1.5rem;font-weight:800;margin-bottom:20px;background:linear-gradient(135deg,#4ecdc4,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.5px}.summary-rewards{display:flex;flex-direction:column;gap:0;margin-bottom:24px}.summary-reward-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.06);opacity:0;transform:translate(-20px);animation:rewardSlideIn .4s ease forwards}.summary-reward-row:last-child{border-bottom:none}@keyframes rewardSlideIn{to{opacity:1;transform:translate(0)}}.reward-icon{font-size:1.5rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#ffffff0f;border-radius:10px}.reward-info{flex:1;text-align:left}.reward-label{font-size:.75rem;color:#ffffff73;text-transform:uppercase;letter-spacing:.8px;font-weight:600}.reward-value{font-size:1.1rem;font-weight:700;color:#fff}.reward-value.coins{color:#f9d423}.reward-value.xp{color:#4ecdc4}.reward-value.powerup{color:#a78bfa}.reward-value.level-up{color:#f093fb}.summary-xp-bar-container{margin:0 16px 20px;opacity:0;animation:rewardSlideIn .4s ease .8s forwards;transform:translate(-20px)}.summary-xp-bar-label{display:flex;justify-content:space-between;font-size:.7rem;color:#ffffff73;margin-bottom:6px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.summary-xp-bar-track{height:10px;background:#ffffff14;border-radius:5px;overflow:hidden;position:relative}.summary-xp-bar-fill{height:100%;background:linear-gradient(90deg,#4ecdc4,#667eea);border-radius:5px;transition:width 1.2s cubic-bezier(.16,1,.3,1);box-shadow:0 0 12px #4ecdc466}.summary-level-up{background:linear-gradient(135deg,#f093fb26,#667eea26);border:1px solid rgba(240,147,251,.3);border-radius:12px;padding:12px 16px;margin:0 0 20px;opacity:0;animation:levelUpPop .6s cubic-bezier(.16,1,.3,1) 1s forwards}@keyframes levelUpPop{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.level-up-text{font-size:1.1rem;font-weight:800;background:linear-gradient(135deg,#f093fb,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.level-up-label{font-size:.75rem;color:#ffffff80;margin-top:2px}.summary-stats-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:24px;padding:0 4px}.summary-stat-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:10px 8px;opacity:0;animation:rewardSlideIn .4s ease forwards;transform:translate(-20px)}.summary-stat-icon{font-size:1.2rem;margin-bottom:4px}.summary-stat-value{font-size:1rem;font-weight:800;color:#fff}.summary-stat-label{font-size:.65rem;color:#fff6;text-transform:uppercase;letter-spacing:.5px;margin-top:2px}.summary-play-again-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;padding:14px 48px;font-size:1.1rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 25px #4ecdc459;text-transform:uppercase;letter-spacing:2px;position:relative;overflow:hidden;width:100%;margin-bottom:10px}.summary-play-again-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transition:left .5s ease}.summary-play-again-btn:hover:before{left:100%}.summary-play-again-btn:hover{transform:translateY(-2px);box-shadow:0 12px 35px #4ecdc480}.summary-share-btn{background:linear-gradient(135deg,#4ecdc426,#44a08d26);color:#fffc;border:1px solid rgba(78,205,196,.25);padding:10px 24px;font-size:.85rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .2s ease;width:100%}.summary-share-btn:hover{background:linear-gradient(135deg,#4ecdc440,#44a08d40);color:#fff}.summary-action-btn{border:none;padding:12px 24px;font-size:.95rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .2s ease;width:100%;margin-bottom:8px;color:#fff;text-transform:uppercase;letter-spacing:1px}.summary-action-btn:hover{transform:translateY(-1px);filter:brightness(1.1)}.summary-action-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.summary-friend-btn{background:#3498db33;border:1px solid rgba(52,152,219,.35);color:#fffc;padding:10px 24px;font-size:.8rem;font-weight:600;border-radius:50px;cursor:pointer;width:100%;transition:all .2s ease}.summary-friend-btn:hover{background:#3498db4d}@media (max-width: 480px){.game-summary-modal{padding:24px 18px 22px;max-width:340px;border-radius:20px}.summary-header-icon{font-size:2.5rem}.summary-title{font-size:1.3rem}.summary-reward-row{padding:10px 12px}.reward-icon{width:32px;height:32px;font-size:1.3rem}.summary-stats-grid{gap:6px}.summary-stat-card{padding:8px 6px}.summary-play-again-btn{padding:12px 32px;font-size:1rem}}.achievement-toast-container{position:fixed;top:20px;right:20px;z-index:2000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.achievement-toast{display:flex;align-items:center;gap:12px;padding:14px 18px;background:#0a0a1ed9;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid rgba(255,215,0,.3);border-radius:16px;box-shadow:0 8px 32px #ffd70026,0 0 40px #ffd7000d;animation:achievementSlideIn .5s cubic-bezier(.16,1,.3,1) forwards,achievementFadeOut .5s ease-in 3.5s forwards;min-width:260px;max-width:340px}.achievement-toast-icon{font-size:2rem;flex-shrink:0;animation:achievementBounce .6s ease .3s}.achievement-toast-content{display:flex;flex-direction:column;gap:2px}.achievement-toast-label{font-size:.65rem;text-transform:uppercase;letter-spacing:2px;color:#ffd700cc;font-weight:700}.achievement-toast-name{font-size:1rem;font-weight:800;color:#fff}.achievement-toast-desc{font-size:.75rem;color:#fff9}.achievement-toast-reward{font-size:.8rem;font-weight:600;color:gold;margin-top:2px}@keyframes achievementSlideIn{0%{transform:translate(100px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes achievementFadeOut{0%{transform:translate(0);opacity:1}to{transform:translate(60px);opacity:0}}@keyframes achievementBounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@media (max-width: 768px){.achievement-toast-container{top:10px;right:10px;left:10px}.achievement-toast{min-width:auto;padding:10px 14px}.achievement-toast-icon{font-size:1.5rem}.achievement-toast-name{font-size:.85rem}}.privacy-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#000000d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:20px;animation:privacyFadeIn .4s ease}@keyframes privacyFadeIn{0%{opacity:0}to{opacity:1}}.privacy-modal{background:linear-gradient(145deg,#1a1a2e,#16213e);border:1px solid rgba(102,126,234,.3);border-radius:20px;padding:36px 32px;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080,0 0 40px #667eea1a;animation:privacySlideUp .5s ease}@keyframes privacySlideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.privacy-modal h1{color:#fff;font-size:1.6rem;margin:8px 0 4px;text-align:center}.privacy-icon{text-align:center;font-size:2.8rem;margin-bottom:4px}.privacy-subtitle{text-align:center;color:#aaa;font-size:.95rem;margin-bottom:24px}.privacy-summary{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.privacy-point{display:flex;align-items:flex-start;gap:10px;font-size:.92rem;color:#ccc;line-height:1.5}.privacy-point strong{color:#e0e0e0}.privacy-check{flex-shrink:0;font-size:1rem;margin-top:1px}.privacy-full-link{display:block;text-align:center;color:#667eea;font-size:.9rem;text-decoration:none;margin-bottom:24px;transition:color .2s;background:none;border:none;cursor:pointer;padding:0;width:100%;font-family:inherit}.privacy-full-link:hover{color:#a78bfa;text-decoration:underline}.policy-viewer-modal{max-width:640px;max-height:85vh;display:flex;flex-direction:column;padding:0;overflow:hidden}.policy-viewer-close{background:none;border:none;border-bottom:1px solid rgba(102,126,234,.2);color:#667eea;font-size:1rem;font-weight:600;cursor:pointer;padding:16px 24px;text-align:left;transition:background .2s;flex-shrink:0}.policy-viewer-close:hover{background:#667eea1a}.policy-viewer-content{padding:8px 28px 28px;overflow-y:auto;flex:1}.policy-viewer-content h1{color:#667eea;font-size:1.5rem;margin:16px 0 4px}.policy-viewer-content h2{color:#a78bfa;font-size:1.05rem;margin-top:24px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:6px}.policy-viewer-content p,.policy-viewer-content li{color:#ccc;font-size:.9rem;line-height:1.7}.policy-viewer-content ul{padding-left:20px}.policy-viewer-content .policy-date{color:#888;font-size:.85rem}.policy-viewer-content::-webkit-scrollbar{width:6px}.policy-viewer-content::-webkit-scrollbar-track{background:transparent}.policy-viewer-content::-webkit-scrollbar-thumb{background:#667eea4d;border-radius:3px}.privacy-actions{display:flex;gap:12px;justify-content:center}.privacy-btn{padding:12px 32px;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.privacy-btn-accept{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.privacy-btn-accept:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}.privacy-btn-decline{background:#ffffff14;color:#999;border:1px solid rgba(255,255,255,.12)}.privacy-btn-decline:hover{background:#ff464626;color:#ff6b6b;border-color:#ff46464d}.privacy-declined{text-align:center;max-width:420px}.privacy-declined h2{color:#ff6b6b;margin:8px 0 12px}.privacy-declined p{color:#aaa;font-size:.95rem;line-height:1.6;margin-bottom:24px}.privacy-modal::-webkit-scrollbar{width:6px}.privacy-modal::-webkit-scrollbar-track{background:transparent}.privacy-modal::-webkit-scrollbar-thumb{background:#667eea4d;border-radius:3px}@media (max-width: 480px){.privacy-modal{padding:24px 20px;border-radius:16px}.privacy-modal h1{font-size:1.3rem}.privacy-point{font-size:.85rem}.privacy-btn{padding:10px 24px;font-size:.9rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.app{position:relative;width:100vw;height:100vh;height:100dvh;overflow:hidden}.game-over-modal{position:absolute;top:0;left:0;width:100%;height:100%;background:#05050fd9;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(160deg,#141432f2,#0a0a1efa);padding:50px 70px;border-radius:30px;text-align:center;box-shadow:0 25px 80px #0009,0 0 100px #4ecdc414,inset 0 1px #ffffff1a;border:1px solid rgba(78,205,196,.2);animation:modalSlideIn .6s cubic-bezier(.16,1,.3,1);max-width:450px;width:90%}@keyframes modalSlideIn{0%{transform:translateY(40px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.winner-trophy{font-size:5rem;margin-bottom:10px;animation:trophyBounce 1s cubic-bezier(.16,1,.3,1) .3s both;filter:drop-shadow(0 8px 20px rgba(255,215,0,.4))}@keyframes trophyBounce{0%{transform:scale(0) rotate(-20deg);opacity:0}50%{transform:scale(1.2) rotate(5deg)}to{transform:scale(1) rotate(0);opacity:1}}.winner-title{font-size:2.8rem;font-weight:900;background:linear-gradient(135deg,#4ecdc4,#667eea,#f093fb);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:15px;animation:titleGradientWin 4s ease infinite;letter-spacing:1px}@keyframes titleGradientWin{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.final-scores{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:15px;animation:fadeIn .8s ease .4s both}.final-score{display:flex;flex-direction:column;align-items:center;gap:4px}.final-score-label{font-size:.8rem;color:#ffffff80;text-transform:uppercase;letter-spacing:1px;font-weight:600}.final-score-value{font-size:2.5rem;font-weight:900;color:#fff}.player1-score .final-score-value{color:#ff6b6b}.player2-score .final-score-value{color:#4ecdc4}.final-score-divider{color:#fff3;font-size:1.5rem;font-weight:300}.winner-subtitle{font-size:1.1rem;color:#ffffff80;margin-bottom:16px;font-weight:400}.game-over-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;background:#ffffff0d;border-radius:12px;padding:14px 18px;margin-bottom:20px;border:1px solid rgba(255,255,255,.08)}.stat-row{display:flex;align-items:center;gap:6px;padding:3px 0}.stat-icon{font-size:.85rem}.stat-label{color:#ffffff80;font-size:.8rem;flex:1}.stat-value{color:#fff;font-weight:700;font-size:.85rem}.restart-button{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;border:none;padding:16px 50px;font-size:1.2rem;font-weight:700;border-radius:50px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 25px #4ecdc459;text-transform:uppercase;letter-spacing:2px;position:relative;overflow:hidden}.restart-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transition:left .5s ease}.restart-button:hover:before{left:100%}.restart-button:hover{transform:translateY(-3px);box-shadow:0 12px 35px #4ecdc480}.restart-button:active{transform:translateY(-1px)}.help-button{position:absolute;top:20px;right:20px;width:44px;height:44px;border-radius:50%;background:#0f0f23b3;color:#ffffffb3;border:1px solid rgba(255,255,255,.15);font-size:20px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0000004d;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.help-button:hover{background:#667eea4d;border-color:#667eea80;color:#fff;transform:scale(1.1);box-shadow:0 6px 20px #667eea4d}.help-button:active{transform:scale(.95)}.online-status{position:absolute;top:20px;right:130px;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.opponent-info{background:#0f0f23bf;padding:10px 16px;border-radius:14px;color:#ffffffb3;border:1px solid rgba(255,255,255,.1);font-size:.85rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.opponent-info strong{color:#4ecdc4}.turn-indicator{padding:8px 18px;border-radius:14px;font-weight:700;font-size:.9rem;transition:all .3s ease;border:1px solid;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.turn-indicator.your-turn{background:#4ecdc426;color:#4ecdc4;border-color:#4ecdc44d;animation:turnPulse 2s ease-in-out infinite}.turn-indicator.opponent-turn{background:#ff6b6b1a;color:#ff6b6bcc;border-color:#ff6b6b33}@keyframes turnPulse{0%,to{box-shadow:0 0 10px #4ecdc433}50%{box-shadow:0 0 25px #4ecdc466}}.chat-wrapper{position:absolute;bottom:180px;right:20px;z-index:50}.floating-chat-button{position:absolute;bottom:120px;right:20px;width:50px;height:50px;border-radius:50%;background:#0f0f23bf;color:#fff;border:1px solid rgba(78,205,196,.3);font-size:22px;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #0000004d;display:flex;align-items:center;justify-content:center;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.floating-chat-button:hover{background:#4ecdc433;border-color:#4ecdc480;transform:scale(1.1);box-shadow:0 8px 25px #4ecdc433}.floating-chat-button:active{transform:scale(.95)}.chat-notification-badge{position:absolute;top:-4px;right:-4px;background:#ff6b6b;color:#fff;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid rgba(15,15,35,.9);box-shadow:0 2px 8px #ff6b6b80}@media (max-width: 768px){.modal-content{padding:30px 25px}.winner-title{font-size:1.8rem}.winner-trophy{font-size:3.5rem}.final-score-value{font-size:1.8rem}.winner-subtitle{font-size:.9rem}.restart-button{padding:12px 30px;font-size:1rem}.help-button{top:10px;right:10px;width:36px;height:36px;font-size:16px}.online-status{top:5px;right:95px}.opponent-info{padding:6px 10px;font-size:.7rem}.turn-indicator{padding:5px 10px;font-size:.75rem}.chat-wrapper{position:fixed;bottom:0;top:auto;left:0;right:0;transform:none;z-index:1000;background:#00000080;padding:0}.chat-wrapper .chat-container{width:100%;height:50vh;border-radius:16px 16px 0 0;border-bottom:none}.floating-chat-button{position:fixed;bottom:130px;right:10px;width:40px;height:40px;font-size:18px;z-index:101}.chat-notification-badge{width:16px;height:16px;font-size:9px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}*:focus-visible{outline:2px solid rgba(100,200,255,.8);outline-offset:2px}button:focus-visible{outline:2px solid rgba(100,200,255,.8);outline-offset:2px;box-shadow:0 0 0 4px #64c8ff33}.pwa-install-banner{position:fixed;top:0;left:0;right:0;z-index:10000;display:flex;align-items:center;gap:10px;padding:12px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:14px;box-shadow:0 4px 20px #0006;animation:slideDown .3s ease-out}.pwa-ios-hint{background:linear-gradient(135deg,#4ecdc4,#44a8a0)}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.pwa-install-icon{font-size:24px;flex-shrink:0}.pwa-install-text{flex:1;line-height:1.3}.pwa-install-btn{padding:8px 20px;background:#fff;color:#667eea;border:none;border-radius:20px;font-weight:700;font-size:14px;cursor:pointer;flex-shrink:0;transition:transform .15s}.pwa-install-btn:active{transform:scale(.95)}.pwa-install-dismiss{background:none;border:none;color:#fffc;font-size:18px;cursor:pointer;padding:4px 8px;flex-shrink:0}.admin-trigger-btn{position:fixed;bottom:12px;right:12px;z-index:9000;width:44px;height:44px;border-radius:50%;border:2px solid rgba(255,215,0,.6);background:#0009;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .2s,border-color .2s}.admin-trigger-btn:hover{transform:scale(1.1);border-color:gold}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffe6;background-color:#080818;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}body{margin:0;min-width:320px;min-height:100vh;overscroll-behavior:none}#root{width:100%;height:100vh}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#ffffff05}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#fff3}::selection{background:#4ecdc44d;color:#fff}
