:root{--bg-main:#0b111a;--bg-surface:#131e2e;--bg-surface-hover:#19273c;--border-subtle:#ffffff14;--border-focus:#00f298;--emerald:#00f298;--emerald-dark:#052618;--red:#ff4757;--blue:#2ed573;--blue-team:#1e90ff;--gold:#ffa502;--text-main:#f8fafc;--text-muted:#94a3b8;--text-dim:#64748b;--font-family:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--radius:10px;--radius-lg:14px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-family);color:var(--text-main);-webkit-font-smoothing:antialiased;background-color:#070d15;background-image:radial-gradient(80% 50% at 50% -10%,#00f2981f,#0000 70%),radial-gradient(60% 40% at 85% 10%,#1e90ff26,#0000 60%),radial-gradient(60% 40% at 15% 10%,#00f2981f,#0000 60%),linear-gradient(#070d15a6 0%,#0b111ad9 320px,#0b111af5 100%),url(/stadium-bg.jpg);background-position:top;background-repeat:no-repeat;background-size:cover,cover,cover,cover,cover;background-attachment:fixed;min-height:100vh;line-height:1.5}.container{max-width:760px;margin:0 auto;padding:12px 16px 60px}.clean-card{-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-lg);background:#131e2ed1;border:1px solid #ffffff17;margin-bottom:12px;padding:14px 16px;box-shadow:0 6px 24px #00000059}.btn{font-family:var(--font-family);border-radius:var(--radius);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:9px 15px;font-size:.9rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--emerald);color:#03140c;font-weight:700}.btn-primary:hover{background:#00de8b}.btn-secondary{color:var(--text-main);background:#ffffff0f;border-color:#ffffff1a}.btn-secondary:hover{background:#ffffff1f}.btn-zalo{color:#fff;background:#0068ff}.btn-zalo:hover{background:#0056d6}.btn-danger{color:#ff6b81;background:#ff475726;border-color:#ff47574d}.btn-danger:hover{background:#ff475740}.clean-input{border-radius:var(--radius);color:#fff;width:100%;font-family:var(--font-family);background:#0b131e;border:1px solid #ffffff1f;outline:none;padding:10px 14px;font-size:.95rem;transition:border-color .15s}.clean-input:focus{border-color:var(--emerald)}.clean-input::placeholder{color:var(--text-dim)}.badge{text-transform:uppercase;letter-spacing:.02em;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-live{color:var(--emerald);background:#00f29826}.badge-balanced{color:#70a1ff;background:#1e90ff26}.badge-admin{color:#ffa502;background:#ffa50226}.pulse-dot{background:var(--emerald);border-radius:50%;width:6px;height:6px;animation:1.5s infinite pulse-dot}@keyframes pulse-dot{0%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.info-chip{color:var(--text-muted);background:#ffffff0a;border-radius:6px;align-items:center;gap:5px;padding:4px 9px;font-size:.82rem;display:inline-flex}.player-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}@media (width<=600px){.player-grid{grid-template-columns:1fr}}.player-item{-webkit-backdrop-filter:blur(8px);border-radius:var(--radius);background:#0e1724bf;border:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:8px 12px;transition:all .15s;display:flex}.player-item:hover{background:#142032e6;border-color:#ffffff1f}.teams-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;display:grid}.team-box{-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#131e2ed9;padding:14px;box-shadow:0 4px 20px #0000004d}.team-box-red{border-top:3px solid var(--red)}.team-box-blue{border-top:3px solid var(--blue-team)}.team-box-yellow{border-top:3px solid var(--gold)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#03070dd9;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);background:#101b2bf0;border:1px solid #ffffff1f;width:100%;max-width:480px;max-height:90vh;padding:20px;overflow-y:auto;box-shadow:0 10px 40px #0009}.toast-notice{color:#03140c;z-index:999;background:#00f298;border-radius:30px;align-items:center;gap:6px;padding:9px 18px;font-size:.88rem;font-weight:700;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00f29859}.site-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:8px 0 12px;display:flex}.header-brand-row{align-items:center;gap:10px;display:flex}.header-logo-group{align-items:center;gap:6px;display:flex}.header-ball-icon{font-size:1.35rem;line-height:1}.header-app-title{color:#fff;letter-spacing:.01em;white-space:nowrap;font-size:1.05rem;font-weight:800}.header-actions-row{align-items:center;gap:6px;display:flex}.header-primary-actions,.header-utility-actions,.header-guest-actions{display:contents}.btn-header{white-space:nowrap;padding:6px 12px;font-size:.8rem}.btn-header-music-on{color:var(--emerald);background:#00f2981f;border-color:#00f29859}.btn-header-music-on:hover{background:#00f29833}.btn-header-music-off{color:var(--text-muted);background:#ffffff0d;border-color:#ffffff1a}.btn-header-music-off:hover{background:#ffffff1a}.btn-header-admin{color:#ffa502;background:#ffa5021f;border-color:#ffa50259}.btn-header-admin:hover{background:#ffa50238}.btn-header-logout{color:#ff6b81;background:#ff47571f;border-color:#ff47574d;padding:6px 9px}.btn-header-logout:hover{background:#ff475738}.badge-locked{color:#f87171;background:#ef444433}@media (width<=600px){.site-header{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:12px;padding:4px 0 10px}.header-brand-row{justify-content:space-between;align-items:center;width:100%;display:flex}.header-actions-row{flex-direction:column;gap:6px;width:100%;display:flex}.header-primary-actions{grid-template-columns:1fr 1fr;gap:6px;width:100%;display:grid}.header-primary-actions .btn-header{justify-content:center;font-weight:700;padding:8px 10px!important;font-size:.8rem!important}.header-utility-actions{align-items:center;gap:5px;width:100%;display:flex}.header-utility-actions .btn-header{flex:1 1 0;justify-content:center;gap:4px;min-width:0;padding:7px 4px!important;font-size:.74rem!important}.header-utility-actions .btn-header-pitch{flex:1.3 1 0}.header-utility-actions .btn-header-logout{justify-content:center;flex:0 0 34px!important;padding:7px 0!important}.header-guest-actions{align-items:center;gap:6px;width:100%;display:flex}.header-guest-actions .btn-header{flex:1 1 0;justify-content:center;padding:7px 8px!important;font-size:.76rem!important}}@media (width<=520px){.team-divider-card-header{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.team-divider-card-header .team-header-actions{gap:8px!important;width:100%!important;display:flex!important}.team-divider-card-header .team-header-actions>button,.team-divider-card-header .team-header-actions>div{flex:1 1 0!important}.team-divider-card-header .team-header-actions button{justify-content:center!important;width:100%!important;padding:8px 10px!important}}.admin-tabs-grid{border-radius:var(--radius-md);background:#ffffff0a;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px;padding:4px;display:grid}.admin-tab-btn{border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;outline:none;flex-direction:row;justify-content:center;align-items:center;gap:8px;padding:10px 8px;font-size:.88rem;font-weight:700;transition:all .15s;display:flex}.admin-tab-btn:hover{color:#fff;background:#ffffff0f}.admin-tab-btn.active{background:var(--emerald);color:#03140c;box-shadow:0 2px 8px #00f2984d}.modal-overlay{z-index:1000}.modal-content{animation:.2s cubic-bezier(.16,1,.3,1) modalPopIn}@keyframes modalPopIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.teams-arena-container{flex-direction:column;gap:8px;display:flex}.teams-vs-divider-desktop{display:none}.teams-vs-divider-mobile{justify-content:center;align-items:center;height:24px;margin:4px 0;display:flex;position:relative}.team-players-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px;display:grid}@media (width>=640px){.teams-arena-container{align-items:stretch;gap:12px;display:grid}.teams-arena-container.teams-count-2{grid-template-columns:1fr auto 1fr}.teams-arena-container.teams-count-3{grid-template-columns:repeat(3,1fr);gap:10px}.teams-vs-divider-mobile{display:none!important}.teams-vs-divider-desktop{justify-content:center;align-items:center;padding:0 4px;display:flex;position:relative}.teams-arena-container.teams-count-2 .team-players-grid{grid-template-columns:1fr;gap:6px;padding:10px}.teams-arena-container.teams-count-3 .team-players-grid{grid-template-columns:1fr;gap:5px;padding:8px}}
