body{animation:gradientShift 15s ease infinite;background:linear-gradient(-45deg,#fd0000,#292828,#292828,red);background-size:400% 400%;margin:0;min-height:100vh;padding:0}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.app{background:#0000;color:#fff;display:flex;flex-direction:column;min-height:100vh;padding:30px;position:relative}.linera-logo{bottom:20px;left:20px;position:fixed;z-index:100}.linera-logo img{height:40px;opacity:.8;transition:opacity .3s ease;width:auto}.linera-logo img:hover{opacity:1}.top-layout{grid-gap:30px;align-items:start;display:grid;gap:30px;grid-template-columns:1fr auto 1fr;margin:0 auto;max-width:1400px;width:100%}.game-container{align-items:center;flex-direction:column}.game,.game-container{display:flex;position:relative}.game{background-color:initial;border:3px solid #444;border-radius:8px;box-shadow:0 4px 15px #0000004d;flex-wrap:wrap;height:560px;overflow:hidden;width:560px}.game img{height:70px;width:70px}.candy-piece{-webkit-backface-visibility:hidden;backface-visibility:hidden;cursor:grab;position:relative;transform:translateZ(0);transition:transform .2s cubic-bezier(.25,.46,.45,.94),opacity .2s ease;-webkit-user-select:none;user-select:none;will-change:transform,opacity}.candy-piece.game-active{animation:candyGlow 1.5s ease-in-out infinite alternate}.candy-piece.game-over{animation:fadeOut .3s ease-out forwards}.candy-piece:active{cursor:grabbing;transform:scale(1.08) rotate(3deg);transition:all .1s cubic-bezier(.25,.46,.45,.94);z-index:1000}.candy-piece[draggable=true]:hover{transform:scale(1.03);transition:all .15s cubic-bezier(.25,.46,.45,.94)}.candy-piece:active[draggable=true]{animation:dragStart .15s cubic-bezier(.25,.46,.45,.94)}.candy-piece.drop-target{animation:dropTarget .2s cubic-bezier(.25,.46,.45,.94);border:2px solid #4caf50;border-radius:8px}.candy-piece.dragging{animation:dragStart .15s cubic-bezier(.25,.46,.45,.94);z-index:1000}.candy-piece.falling{animation:falling .4s cubic-bezier(.25,.46,.45,.94)}.candy-piece.matching{animation:matchExplosion .3s cubic-bezier(.25,.46,.45,.94) forwards}.candy-piece.spawning{animation:spawnCandy .25s cubic-bezier(.25,.46,.45,.94)}@keyframes candyGlow{0%{filter:brightness(1)}to{filter:brightness(1.05)}}@keyframes dragStart{0%{transform:scale(1)}to{transform:scale(1.08) rotate(3deg)}}@keyframes dropTarget{0%{border-color:#4caf50;transform:scale(1)}50%{border-color:#66bb6a;transform:scale(1.05)}to{border-color:#4caf50;transform:scale(1)}}@keyframes falling{0%{opacity:.8;transform:translateY(-35px)}to{opacity:1;transform:translateY(0)}}@keyframes matchExplosion{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.3)}to{opacity:0;transform:scale(1.6)}}@keyframes spawnCandy{0%{opacity:0;transform:scale(.8) rotate(90deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:.5;transform:scale(.98)}}.game:before{animation:boardShine 4s ease-in-out infinite;background:linear-gradient(45deg,#0000 40%,#4caf500d 50%,#0000 60%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}@keyframes boardShine{0%{transform:translateX(-100%)}50%{transform:translateX(100%)}to{transform:translateX(100%)}}.score-popup{animation:scorePopup .5s ease-out forwards;color:#4caf50;font-size:18px;font-weight:700;pointer-events:none;position:absolute;text-shadow:0 2px 4px #00000080;transform-origin:center;z-index:1000}@keyframes scorePopup{0%{opacity:0;transform:scale(0) translateY(0)}20%{opacity:1;transform:scale(1.2) translateY(-10px)}80%{opacity:1;transform:scale(1) translateY(-30px)}to{opacity:0;transform:scale(.8) translateY(-50px)}}.loading{background-color:#000c;height:100%;left:0;position:fixed;top:0;width:100%;z-index:1000}.loading,.loading-content{align-items:center;display:flex;justify-content:center}.loading-content{background-color:#222;border:2px solid #444;border-radius:12px;box-shadow:0 8px 32px #00000080;flex-direction:column;min-width:300px;padding:40px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #333;border-radius:50%;border-top-color:#4caf50;height:50px;margin-bottom:20px;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-content p{color:#fff;font-size:16px;margin:8px 0}.timeout-info{background-color:#ffffff1a;border-radius:8px;margin-top:15px;padding:15px;text-align:center}.skip-btn{background:linear-gradient(135deg,#ff9800,#f57c00);border:2px solid #ffb74d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;margin-top:10px;padding:10px 20px;transition:all .3s ease}.skip-btn:hover{background:linear-gradient(135deg,#ffb74d,#ff9800);transform:translateY(-1px)}.game-header{align-items:center;background-color:#222;border-radius:8px;display:flex;justify-content:space-between;margin-top:20px;padding:15px;width:560px}.timer{flex:1 1;margin-bottom:20px;order:1;text-align:center}.timer .timer-label{background:#ff9800;border-radius:15px;color:#fff;display:inline-block;font-size:12px;font-weight:700;margin-bottom:10px;padding:5px 15px;text-transform:uppercase}.timer h3,.timer p{margin:0 0 5px}.game-controls{flex:1 1;order:2;text-align:center}.blockchain-indicator{color:#4caf50;font-weight:700}.offline-indicator{color:#ff9800;font-weight:700}.start-btn{background:linear-gradient(135deg,#4caf50,#45a049);border:3px solid #66bb6a;border-radius:12px;box-shadow:0 4px 15px #4caf504d;color:#fff;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:1px;min-width:200px;padding:15px 30px;text-transform:uppercase;transition:all .3s ease}.start-btn:hover{background:linear-gradient(135deg,#66bb6a,#4caf50);border-color:#4caf50;box-shadow:0 6px 20px #4caf5080;transform:translateY(-2px)}.start-btn:disabled{background:linear-gradient(135deg,#666,#555);border-color:#777;box-shadow:0 2px 8px #0003;color:#ccc;cursor:not-allowed;transform:none}.restart-btn{background:linear-gradient(135deg,#2196f3,#1976d2);border:2px solid #42a5f5;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;margin-top:15px;padding:10px 20px;transition:all .3s ease}.restart-btn:hover{background:linear-gradient(135deg,#42a5f5,#2196f3);transform:translateY(-1px)}.reset-btn{background:linear-gradient(135deg,#f44336,#d32f2f);border:2px solid #ef5350;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px;transition:all .3s ease}.reset-btn:hover{background:linear-gradient(135deg,#ef5350,#f44336);transform:translateY(-1px)}.blockchain-status{background-color:#333;border-radius:8px;margin-top:15px;padding:15px;width:560px}.status-indicator{align-items:center;display:flex;gap:10px}.status-dot{border-radius:50%;display:inline-block;height:12px;width:12px}.status-dot.connected{background-color:#4caf50;box-shadow:0 0 10px #4caf5080}.status-dot.disconnected{background-color:#f44336;box-shadow:0 0 10px #f4433680}.game-over-overlay{align-items:center;animation:fadeIn .3s ease;background-color:#000c;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.game-over-popup{animation:slideIn .3s ease;background:linear-gradient(135deg,#222,#333);border:3px solid #af1b16;border-radius:16px;box-shadow:0 10px 40px #00000080;min-width:400px;padding:40px;text-align:center}.game-over-popup h2{color:#ac230b;font-size:28px;margin:0 0 20px}.game-over-popup p{font-size:16px;margin:10px 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-50px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.blockchain-success{color:#4caf50;font-weight:700}.offline-notice{color:#ff9800;font-weight:700}.blockchain-info{background-color:#222;border:2px solid #444;border-radius:8px;justify-self:start;max-width:350px;padding:20px}.blockchain-info>p{color:#4caf50;font-size:16px;font-weight:700;margin:0 0 15px;text-align:center}.blockchain-details,.offline-details{border-top:1px solid #444;margin-top:15px;padding-top:15px}.blockchain-details p,.offline-details p{color:#ccc;font-size:13px;margin:8px 0;word-break:break-all}.leaderboard{background-color:#222;border:2px solid #444;border-radius:8px;max-width:350px;padding:20px}.leaderboard h3{color:#fff;margin:0 0 15px;text-align:center}.leaderboard-list{display:flex;flex-direction:column;gap:8px}.leaderboard-entry{grid-gap:10px;align-items:center;background-color:#333;border-radius:6px;display:grid;gap:10px;grid-template-columns:auto 1fr auto auto;padding:8px 12px;position:relative}.leaderboard-entry.first-place{background:linear-gradient(135deg,gold,orange);color:#000;font-weight:700}.leaderboard-entry .rank{font-weight:700;min-width:25px}.leaderboard-entry .games{text-align:center}.leaderboard-entry .player{max-width:300px;opacity:.8;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.leaderboard-entry .crown{font-size:16px;position:absolute;right:-5px;top:-5px}.leaderboard-entry.empty-entry{background:linear-gradient(135deg,#4caf501a,#4caf500d);border:2px dashed #4caf50;color:#4caf50;grid-template-columns:1fr;padding:20px 12px;text-align:center}.empty-message{align-items:center;display:flex;gap:8px;justify-content:center}.empty-message,.local-notice{font-size:12px;font-style:italic}.local-notice{color:#4caf50;margin:10px 0 0;text-align:center}.login-overlay{align-items:center;animation:fadeIn .3s ease;background-color:#000c;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:2000}.login-modal{animation:slideIn .3s ease;background:linear-gradient(135deg,#222,#333);border:3px solid #4caf50;border-radius:16px;box-shadow:0 10px 40px #00000080;max-width:500px;min-width:400px;padding:40px}.login-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.login-header h2{color:#4caf50;font-size:24px;margin:0}.close-btn{background:none;border:none;border-radius:4px;color:#ccc;cursor:pointer;font-size:24px;padding:5px;transition:all .3s ease}.close-btn:hover{background-color:#ffffff1a;color:#fff}.login-form{gap:20px}.form-group,.login-form{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#fff;font-weight:700}.form-group input{background-color:#333;border:2px solid #444;border-radius:8px;font-size:16px;padding:12px 16px;transition:all .3s ease}.form-group input:focus{box-shadow:0 0 10px #4caf504d}.form-group input::placeholder{color:#888}.login-error{background-color:#f4433633;border:1px solid #f44336;border-radius:8px;color:#ffcdd2;font-size:14px;padding:12px;text-align:center}.login-btn{background:linear-gradient(135deg,#4caf50,#45a049);border:2px solid #66bb6a;border-radius:12px;box-shadow:0 4px 15px #4caf504d;color:#fff;cursor:pointer;font-size:18px;font-weight:700;letter-spacing:1px;padding:15px 30px;text-transform:uppercase;transition:all .3s ease}.login-btn:hover{background:linear-gradient(135deg,#66bb6a,#4caf50);border-color:#4caf50;box-shadow:0 6px 20px #4caf5080;transform:translateY(-2px)}.login-note{color:#999;font-size:12px;line-height:1.4;margin-top:15px;text-align:center}.security-notice{color:#4caf50!important;display:block;font-weight:700;margin-top:8px}.user-bar{align-items:center;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);border:1px solid #fff3;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px 20px}.user-info{flex:1 1}.welcome{color:#fff;display:block;font-size:18px;margin-bottom:8px}.welcome.admin{color:#ff9800}.admin-badge{background:#ff9800;border-radius:12px;color:#fff;font-size:12px;font-weight:700;margin-left:10px;padding:2px 8px}.user-stats{display:flex;flex-wrap:wrap;gap:20px}.user-stats span{color:#ccc;font-size:14px}.upcoming-tournament{border-radius:8px;display:flex;flex-direction:column;gap:4px;margin-top:10px;padding:8px 12px}.upcoming-label{color:#4caf50;font-size:12px;font-weight:700;text-transform:uppercase}.upcoming-name{color:#fff;font-size:14px;font-weight:700}.upcoming-timer{color:#4caf50;font-family:Courier New,monospace;font-size:16px;font-weight:700;text-shadow:0 0 5px #4caf5080}.user-actions{align-items:center;display:flex;gap:10px}.admin-toggle-btn{background:linear-gradient(135deg,#ff9800,#f57c00);border:2px solid #ffb74d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;min-width:100px;padding:10px 20px;transition:all .3s ease}.admin-toggle-btn:hover{background:linear-gradient(135deg,#ffb74d,#ff9800);transform:translateY(-1px)}.admin-toggle-btn.active{background:linear-gradient(135deg,#4caf50,#2e7d32);border-color:#66bb6a}.admin-toggle-btn.active:hover{background:linear-gradient(135deg,#66bb6a,#4caf50)}.logout-btn{background:linear-gradient(135deg,#f44336,#d32f2f);border:2px solid #ef5350;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;min-width:100px;padding:10px 20px;transition:all .3s ease}.logout-btn:hover{background:linear-gradient(135deg,#ef5350,#f44336);transform:translateY(-1px)}.admin-controls{background:linear-gradient(135deg,#222,#333);border:2px solid #ff9800;border-radius:12px;box-shadow:0 8px 32px #00000080;max-height:80vh;max-width:500px;min-width:300px;overflow-y:auto;padding:20px;position:fixed;right:20px;top:20px;z-index:200}.admin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.admin-header h3{color:#ff9800;font-size:18px;margin:0}.admin-actions{align-items:center;display:flex;flex-direction:column;gap:15px}.admin-btn{background:linear-gradient(135deg,#f44336,#d32f2f);border:2px solid #ef5350;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;min-width:150px;padding:10px 20px;transition:all .3s ease}.admin-btn:hover{background:linear-gradient(135deg,#ef5350,#f44336);transform:translateY(-1px)}.admin-info{background-color:#ff6b351a;border-radius:6px;margin-top:10px;padding:10px;text-align:center}.admin-info p{color:#ccc;font-size:12px;margin:4px 0}.error-banner{background-color:#c33;border-radius:8px;color:#fff;display:none!important;margin:20px auto;max-width:800px;padding:15px;text-align:center;width:100%}@media (max-width:1200px){.top-layout{gap:30px;grid-template-columns:1fr;text-align:center}.blockchain-info,.leaderboard{justify-self:center;max-width:560px}.blockchain-info{order:1}.game-container{order:2}.leaderboard{order:3}}@media (max-width:768px){.app{padding:15px}.game{height:280px;width:280px}.game img{height:35px;width:35px}.game-header{flex-direction:column;gap:15px;width:280px}.blockchain-status{width:280px}.blockchain-info,.leaderboard{max-width:280px}.linera-logo{bottom:10px;left:10px}.linera-logo img{height:30px}.login-modal{margin:20px;max-width:320px;min-width:280px;padding:30px 20px}.user-bar{flex-direction:column;gap:15px;text-align:center}.user-stats{flex-wrap:wrap;gap:10px;justify-content:center}.user-actions{flex-direction:column;gap:10px;width:100%}.admin-toggle-btn,.logout-btn{min-width:auto;width:100%}.game-over-popup{margin:20px;min-width:280px;padding:30px 20px}.game-over-popup h2{font-size:24px}.admin-controls{max-height:calc(100vh - 40px);max-width:calc(100vw - 20px);min-width:280px;right:10px;top:10px}.tournament-header-actions{flex-direction:column}.tournament-header-actions .admin-btn{min-width:auto}.tournaments-grid.scrollable{max-height:300px}.upcoming-tournament{margin-top:8px;padding:6px 10px}.upcoming-timer{font-size:14px}}.tournament-timer{background:linear-gradient(135deg,#4caf50,#2e7d32);border:2px solid #66bb6a;border-radius:12px;box-shadow:0 8px 32px #4caf504d;color:#fff;margin:20px auto;max-width:600px;padding:20px;position:relative;text-align:center}.tournament-timer:before{background:#4caf50;border-radius:15px;color:#fff;content:"🏆 TOURNAMENT TIMER";font-size:12px;font-weight:700;left:50%;padding:5px 15px;position:absolute;text-transform:uppercase;top:-10px;transform:translateX(-50%)}.tournament-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.tournament-header h3{font-size:24px;margin:0;text-shadow:2px 2px 4px #0000004d}.tournament-status{display:flex;gap:10px}.status-badge{border-radius:20px;font-size:12px;font-weight:700;padding:4px 12px;text-transform:uppercase}.status-badge.active{background:#ff9800;color:#fff}.status-badge.scheduled{background:#2196f3;color:#fff}.status-badge.ended{background:#9e9e9e;color:#fff}.status-badge.grace-period{animation:pulse 1s infinite;background:#ff5722;color:#fff}.timer-display{margin:15px 0}.timer-label{font-size:14px;margin-bottom:8px;opacity:.9}.timer-countdown{font-family:Courier New,monospace;font-size:32px;font-weight:700;text-shadow:2px 2px 4px #0000004d}.timer-countdown.normal{color:#fff}.timer-countdown.warning{animation:pulse 1s infinite;color:#ffeb3b}.timer-countdown.urgent{animation:pulse .5s infinite;color:#f44336}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.tournament-info{margin-top:15px;opacity:.9}.tournament-manager{background:#ffffff0d;border:1px solid #ff98004d;border-radius:8px;margin-top:20px;padding:20px}.tournament-manager .tournament-header{margin-bottom:20px}.tournament-manager .tournament-header h3{color:#ff9800;font-size:20px;margin-bottom:15px}.tournament-header-actions{display:flex;flex-wrap:wrap;gap:10px}.tournament-header-actions .admin-btn{flex:1 1;min-width:120px}.admin-btn.primary{background:linear-gradient(135deg,#4caf50,#2e7d32);border-color:#66bb6a}.admin-btn.primary:hover{background:linear-gradient(135deg,#66bb6a,#4caf50)}.admin-btn.secondary{background:linear-gradient(135deg,#2196f3,#1976d2);border-color:#42a5f5}.admin-btn.secondary:hover{background:linear-gradient(135deg,#42a5f5,#2196f3)}.admin-btn.small{font-size:12px;min-width:auto;padding:6px 12px}.create-tournament-form{background:#ffffff0d;border:1px solid #4caf504d;border-radius:8px;margin-bottom:20px;padding:20px}.create-tournament-form h4{color:#4caf50;margin-bottom:15px}.form-group{margin-bottom:15px}.form-group label{color:#ccc;display:block;font-size:14px;margin-bottom:5px}.form-group input{background:#333;border:1px solid #555;border-radius:4px;color:#fff;font-size:14px;padding:8px 12px;width:100%}.form-group input:focus{border-color:#4caf50;box-shadow:0 0 0 2px #4caf5033;outline:none}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.form-actions{display:flex;gap:10px;margin-top:20px}.error-message{background:#f443361a;border-radius:4px;color:#f44336;font-size:14px;margin-bottom:15px;padding:10px}.tournaments-list h4{color:#ff9800;margin-bottom:15px}.no-tournaments{color:#999;font-style:italic;text-align:center}.tournaments-grid{grid-gap:15px;display:grid;gap:15px}.tournaments-grid.scrollable{margin-right:-10px;max-height:400px;overflow-y:auto;padding-right:10px}.tournaments-grid.scrollable::-webkit-scrollbar{width:8px}.tournaments-grid.scrollable::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.tournaments-grid.scrollable::-webkit-scrollbar-thumb{background:#ff9800;border-radius:4px}.tournaments-grid.scrollable::-webkit-scrollbar-thumb:hover{background:#ffb74d}.tournament-card{background:#ffffff0d;border:1px solid #ff98004d;border-radius:8px;margin-bottom:15px;padding:15px}.tournament-card:last-child{margin-bottom:0}.tournament-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.tournament-card-header h5{color:#ff9800;font-size:16px;margin:0}.tournament-details{margin-bottom:15px}.detail-row{display:flex;font-size:12px;justify-content:space-between;margin-bottom:5px}.detail-row .label{color:#999}.tournament-results{border-top:1px solid #ffffff1a;margin-top:15px;padding-top:15px}.tournament-results h6{color:#4caf50;font-size:14px;margin-bottom:10px}.results-list{display:flex;flex-direction:column;gap:5px;max-height:200px;overflow-y:auto;padding-right:5px}.results-list::-webkit-scrollbar{width:4px}.results-list::-webkit-scrollbar-track{background:#ffffff1a;border-radius:2px}.results-list::-webkit-scrollbar-thumb{background:#4caf50;border-radius:2px}.results-list::-webkit-scrollbar-thumb:hover{background:#66bb6a}.result-entry{align-items:center;background:#4caf501a;border-radius:4px;display:flex;font-size:12px;justify-content:space-between;padding:5px 10px}.result-entry .rank{color:#ff9800;font-weight:700}.result-entry .player{color:#ccc}.result-entry .score{color:#4caf50;font-weight:700}.tournament-actions{display:flex;gap:10px;margin-top:15px}.leaderboard.tournament-mode{background:linear-gradient(135deg,#4caf501a,#2e7d321a);border-color:#4caf50}.tournament-leaderboard-info{color:#4caf50;margin-bottom:15px;text-align:center}.leaderboard-entry.tournament-entry{background:#4caf501a;border-color:#4caf50}.tournament-notice{background:#4caf501a;border:1px solid #4caf50;border-radius:6px;color:#4caf50;font-size:12px;margin-top:10px;margin:15px 0;padding:10px;text-align:center}.tournament-success{color:#4caf50;font-weight:700;margin:0}@media (max-width:768px){.tournament-timer{margin:15px;padding:15px}.tournament-header{flex-direction:column;gap:10px}.timer-countdown{font-size:24px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.tournament-card-header{align-items:flex-start;flex-direction:column;gap:10px}.tournament-actions{flex-direction:column}.admin-controls{max-height:calc(100vh - 40px);max-width:calc(100vw - 20px);min-width:280px;right:10px;top:10px}.tournament-header-actions{flex-direction:column}.tournament-header-actions .admin-btn{min-width:auto}.tournaments-grid.scrollable{max-height:300px}}.tournament-indicator{background:#4caf501a;border:1px solid #4caf50;border-radius:4px;color:#4caf50;font-size:14px;font-weight:700;margin:5px 0;padding:5px 10px}.admin-btn:disabled{background:#666!important;border-color:#999!important;cursor:not-allowed;opacity:.5}.admin-btn:disabled:hover{background:#666!important;transform:none!important}.mute-button-container{bottom:20px;position:fixed;right:20px;z-index:1000}.mute-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#4caf501a;border:2px solid #4caf50;border-radius:50%;box-shadow:0 4px 15px #0003;cursor:pointer;display:flex;height:50px;justify-content:center;transition:all .3s ease;width:50px}.mute-button:hover{background:#4caf5033;box-shadow:0 6px 20px #0000004d;transform:scale(1.1)}.mute-button:active{transform:scale(.95)}.mute-icon{font-size:20px;transition:all .3s ease}.mute-button:hover .mute-icon{transform:scale(1.1)}@media (max-width:768px){.mute-button-container{bottom:15px;right:15px}.mute-button{height:45px;width:45px}.mute-icon{font-size:18px}.candy-piece{-webkit-touch-callout:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;min-height:60px;min-width:60px;perspective:1000px;touch-action:manipulation;transform:translateZ(0);-webkit-user-select:none;user-select:none}.candy-piece:active{transform:scale(1.05);transition:transform .1s ease}.candy-piece.dragging{box-shadow:0 4px 12px #0003;transform:scale(1.1)}.candy-piece.drop-target{border:3px solid #4caf50;border-radius:12px;box-shadow:0 0 15px #4caf5080}.game{-webkit-overflow-scrolling:touch;touch-action:none}.game-container{overflow:hidden;touch-action:none}.form-group input{padding:12px 16px}.form-group input,.form-group input[type=date],.form-group input[type=time]{font-size:16px;min-height:44px}.admin-btn,.login-btn,.logout-btn,.reset-btn,.restart-btn,.start-btn{font-size:16px;min-height:44px;padding:12px 20px}.close-btn{font-size:18px;min-height:44px;min-width:44px}.results-list,.tournaments-grid.scrollable{-webkit-overflow-scrolling:touch}body.game-active{height:100%;overflow:hidden;position:fixed;width:100%}}