.login-container{min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px;background:linear-gradient(135deg,#1e3c72,#2a5298)}.login-card{background:#fffffff2;border-radius:20px;padding:50px 40px;box-shadow:0 20px 60px #0000004d;max-width:450px;width:100%;text-align:center;animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.login-card h1{color:#2c3e50;font-size:2.5rem;margin-bottom:10px;text-shadow:none}.subtitle{color:#7f8c8d;font-size:1.1rem;margin-bottom:30px}.login-form{margin-bottom:30px}.form-group{margin-bottom:25px;text-align:left}.form-group label{display:block;color:#2c3e50;font-weight:700;margin-bottom:8px;font-size:1rem}.form-group input{width:100%;padding:15px;font-size:1rem;border:2px solid #e0e0e0;border-radius:8px;transition:all .3s;outline:none}.form-group input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.error-message{display:block;color:#e74c3c;font-size:.9rem;margin-top:8px;animation:shake .3s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.btn-login{width:100%;padding:15px;font-size:1.2rem;font-weight:700;background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #27ae604d;text-transform:uppercase;letter-spacing:1px}.btn-login:hover{transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}.btn-login:active{transform:translateY(0)}.login-info{padding-top:20px;border-top:1px solid #e0e0e0}.login-info p{color:#7f8c8d;margin:10px 0;font-size:.95rem}@media (max-width: 768px){.login-card{padding:40px 30px}.login-card h1{font-size:2rem}.subtitle{font-size:1rem}}.lobby-container{min-height:100vh;background:linear-gradient(135deg,#1e3c72,#2a5298);padding:20px}.lobby-header{max-width:1000px;margin:0 auto 30px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.lobby-header h1{color:#fff;font-size:2.5rem;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.user-info{display:flex;align-items:center;gap:15px}.username{color:#fff;font-size:1.2rem;font-weight:700;background:#ffffff1a;padding:10px 20px;border-radius:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-logout{padding:10px 20px;background:#e74c3c;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700;transition:all .3s}.btn-logout:hover{background:#c0392b;transform:translateY(-2px)}.lobby-content{max-width:1000px;margin:0 auto}.lobby-main{background:#fffffff2;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d}.lobby-main h2{color:#2c3e50;text-align:center;margin-bottom:25px;text-shadow:none}.game-status{text-align:center;margin-bottom:30px}.status-badge{display:inline-block;padding:10px 25px;border-radius:20px;font-weight:700;font-size:1.1rem}.status-badge.waiting{background:#f39c12;color:#fff;animation:pulse 2s infinite}.status-badge.playing{background:#27ae60;color:#fff}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.players-section{margin-bottom:30px}.players-section h3{color:#2c3e50;margin-bottom:20px;text-align:center}.no-players{text-align:center;padding:40px 20px;color:#7f8c8d}.no-players p{font-size:1.1rem;margin:10px 0}.players-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;margin-bottom:30px}.player-card{background:#f8f9fa;border-radius:12px;padding:20px;text-align:center;border:2px solid #e0e0e0;transition:all .3s}.player-card:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000001a}.player-card.current-player{background:#e3f2fd;border-color:#3498db;border-width:3px}.player-avatar{font-size:3rem;margin-bottom:10px}.player-name{color:#2c3e50;font-weight:700;margin-bottom:5px;word-break:break-word}.player-badge{display:inline-block;background:#3498db;color:#fff;padding:3px 10px;border-radius:12px;font-size:.8rem;margin-top:5px}.lobby-actions{text-align:center;margin-bottom:30px}.waiting-message{padding:20px;color:#7f8c8d}.waiting-message p{margin:10px 0;font-size:1.1rem}.min-players{font-size:.95rem;color:#95a5a6}.btn-start-game{padding:15px 50px;background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:8px;font-size:1.3rem;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #27ae604d;text-transform:uppercase}.btn-start-game:hover{transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}.game-in-progress{padding:20px}.game-in-progress p{color:#2c3e50;font-size:1.2rem;margin-bottom:15px}.btn-join-game{padding:15px 40px;background:#3498db;color:#fff;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s}.btn-join-game:hover{background:#2980b9;transform:translateY(-2px)}.lobby-info{background:#f8f9fa;padding:25px;border-radius:12px;border-left:4px solid #3498db}.lobby-info h4{color:#2c3e50;margin-bottom:15px}.lobby-info ul{list-style:none;padding:0;margin:0}.lobby-info li{color:#34495e;padding:8px 0;font-size:1rem}@media (max-width: 768px){.lobby-header{flex-direction:column;text-align:center}.lobby-header h1{font-size:2rem}.lobby-main{padding:25px}.players-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.btn-start-game{font-size:1.1rem;padding:12px 35px}}.multiplayer-game{min-height:100vh;background:linear-gradient(135deg,#1e3c72,#2a5298);padding:20px}.game-header{max-width:1400px;margin:0 auto 30px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px}.game-header h1{color:#fff;font-size:2rem;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.btn-leave{padding:10px 20px;background:#e74c3c;color:#fff;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s}.btn-leave:hover{background:#c0392b;transform:translateY(-2px)}.room-info{color:#fff;background:#ffffff1a;padding:10px 20px;border-radius:25px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.waiting-room{max-width:800px;margin:50px auto;background:#fffffff2;padding:50px;border-radius:20px;text-align:center;box-shadow:0 20px 60px #0000004d}.waiting-room h2{color:#2c3e50;margin-bottom:30px;text-shadow:none}.players-waiting{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.player-waiting{display:flex;align-items:center;gap:15px;padding:15px 20px;background:#f8f9fa;border-radius:10px;border-left:4px solid #3498db}.player-icon{font-size:1.5rem}.player-name{flex:1;font-weight:700;color:#2c3e50;text-align:left}.ready-badge{background:#27ae60;color:#fff;padding:5px 12px;border-radius:15px;font-size:.85rem;font-weight:700}.btn-start{padding:15px 40px;background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #27ae604d}.btn-start:hover{transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}.waiting-message{color:#7f8c8d;font-size:1.1rem;margin-top:20px}.dealer-section{max-width:1400px;margin:0 auto 30px;padding:30px;background:#ffffff1a;border-radius:15px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);text-align:center}.dealer-section h2{color:#fff;margin-bottom:20px;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.hand{display:flex;justify-content:center;gap:15px;flex-wrap:wrap;min-height:140px;align-items:center}.players-grid{max-width:1400px;margin:0 auto 30px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.player-box{background:#ffffffe6;border-radius:15px;padding:20px;box-shadow:0 4px 15px #0003;transition:all .3s}.player-box.my-player{background:#fff;border:3px solid #3498db;box-shadow:0 4px 20px #3498db66}.player-box.active-player{animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 4px 15px #0003}50%{box-shadow:0 4px 25px #f1c40f99}}.player-box.busted{opacity:.6;background:#e74c3c1a}.player-box.won{background:#2ecc7133}.player-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #ecf0f1}.player-header h3{color:#2c3e50;margin:0;font-size:1.2rem}.player-score{background:#3498db;color:#fff;padding:5px 15px;border-radius:15px;font-weight:700}.player-hand{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;min-height:100px;margin-bottom:10px}.mini-card .card{width:70px;height:100px;font-size:.8rem}.mini-card .card-center{font-size:36px}.player-status{text-align:center;margin-top:10px}.status-badge{display:inline-block;padding:5px 15px;border-radius:15px;font-size:.9rem;font-weight:700}.status-badge.thinking{background:#f39c12;color:#fff;animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.5}}.status-badge.stand{background:#3498db;color:#fff}.status-badge.busted{background:#e74c3c;color:#fff}.status-badge.won{background:#27ae60;color:#fff}.status-badge.lost{background:#95a5a6;color:#fff}.status-badge.blackjack{background:linear-gradient(135deg,#f39c12,#f1c40f);color:#fff;animation:shine 1s infinite}@keyframes shine{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.game-controls{max-width:600px;margin:30px auto;text-align:center;background:#fffffff2;padding:30px;border-radius:15px;box-shadow:0 4px 15px #0003}.turn-indicator{color:#27ae60;font-size:1.5rem;font-weight:700;margin-bottom:20px;animation:fadeIn .5s}.waiting-turn{color:#7f8c8d;font-size:1.2rem}.action-buttons{display:flex;gap:15px;justify-content:center}.btn-hit{padding:15px 40px;background:#3498db;color:#fff;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s}.btn-hit:hover{background:#2980b9;transform:translateY(-2px)}.btn-stand{padding:15px 40px;background:#f39c12;color:#fff;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s}.btn-stand:hover{background:#e67e22;transform:translateY(-2px)}.game-results{max-width:600px;margin:30px auto;text-align:center;background:#fffffff2;padding:40px;border-radius:15px;box-shadow:0 4px 15px #0003;animation:fadeIn .5s}.game-results h2{color:#2c3e50;margin-bottom:25px;text-shadow:none}.btn-new-game{padding:15px 40px;background:linear-gradient(135deg,#27ae60,#2ecc71);color:#fff;border:none;border-radius:8px;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #27ae604d}.btn-new-game:hover{transform:translateY(-2px);box-shadow:0 6px 20px #27ae6066}@media (max-width: 768px){.game-header{flex-direction:column;text-align:center}.players-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.mini-card .card{width:60px;height:85px}.mini-card .card-center{font-size:28px}}
