@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";html,:root,.theme-dark{--bg-main:#0f1117;--bg-card:#161b2cd9;--bg-card-hover:#1c2338eb;--bg-glass:#ffffff08;--border-glass:#ffffff17;--border-glass-hover:#ffffff2e;--border-glass-focus:#818cf873;--primary:#818cf8;--primary-glow:#818cf84d;--secondary:#38bdf8;--secondary-glow:#38bdf838;--accent-gold:#fbbf24;--accent-red:#f87171;--accent-green:#34d399;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#475569;--bg-input:#ffffff0a;--bg-history:#0003;--bg-stat-box:#ffffff08;--bg-active-controls:#ffffff05;--bg-radial-login:radial-gradient(circle at 50% 50%, #161b2c 0%, #0f1117 100%);--logo-gradient:linear-gradient(135deg, #f1f5f9 10%, #818cf8 60%, #38bdf8 100%);--bg-header:#12182673;--font-heading:"Outfit", system-ui, -apple-system, sans-serif;--font-body:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-full:9999px;--transition-fast:.15s ease;--transition-normal:.22s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.16, 1, .3, 1);--shadow-sm:0 2px 8px #0006;--shadow-md:0 12px 32px #00000080;--shadow-glow-purple:0 0 20px #818cf840;--shadow-glow-cyan:0 0 20px #38bdf838;--lightningcss-light: !important;--lightningcss-dark:initial!important;color-scheme:dark only!important}.chess-board-wrapper img,.chess-board-wrapper svg,[class*=piece] img,[class*=piece] svg,[data-piece] img,[data-piece] svg{-webkit-filter:none!important;--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important;forced-color-adjust:none!important}.chess-board-wrapper,[class*=chessboard],[class*=chess-board]{forced-color-adjust:none!important;--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important}html.theme-light,.theme-light{--bg-main:#f8f9fb;--bg-card:#ffffffeb;--bg-card-hover:#fff;--bg-glass:#ffffffbf;--border-glass:#0f172a14;--border-glass-hover:#0f172a29;--border-glass-focus:#4f46e559;--primary:#4f46e5;--primary-glow:#4f46e52e;--secondary:#0284c7;--secondary-glow:#0284c726;--accent-gold:#d97706;--accent-red:#dc2626;--accent-green:#059669;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#94a3b8;--bg-input:#0000000a;--bg-history:#00000008;--bg-stat-box:#00000008;--bg-active-controls:#00000005;--bg-radial-login:radial-gradient(circle at 50% 50%, #fff 0%, #f1f5f9 100%);--logo-gradient:linear-gradient(135deg, #1e293b 10%, #4f46e5 60%, #0284c7 100%);--bg-header:#ffffffb3;--shadow-sm:0 2px 8px #0f172a14;--shadow-md:0 12px 32px #0f172a1f;--shadow-glow-purple:0 0 20px #4f46e526;--shadow-glow-cyan:0 0 20px #0284c71f;--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light only!important}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-main);color:var(--text-primary);background-image:radial-gradient(at 15% 10%,#818cf814 0%,#0000 45%),radial-gradient(at 85% 90%,#38bdf80f 0%,#0000 45%);min-height:100vh;line-height:1.6;overflow-x:hidden}.theme-light body,body.theme-light{background-image:radial-gradient(at 15% 10%,#4f46e50d 0%,#0000 40%),radial-gradient(at 85% 90%,#0284c70a 0%,#0000 40%)}#root{flex-direction:column;min-height:100vh;display:flex}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-glass);border-radius:var(--radius-full);transition:all var(--transition-fast)}::-webkit-scrollbar-thumb:hover{background:var(--primary-glow)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-primary);font-weight:700}a{color:var(--secondary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--primary)}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-md);box-shadow:var(--shadow-md);transition:all var(--transition-normal)}.glass-panel:hover{border-color:var(--border-glass-hover);background:var(--bg-card-hover)}.btn{font-family:var(--font-heading);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-normal);text-transform:none;letter-spacing:.01em;border:1px solid #0000;outline:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem;font-weight:600;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, #a5b4fc 100%);color:#fff;box-shadow:0 4px 14px var(--primary-glow);border:1px solid #ffffff1a;font-weight:700}.btn-primary:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 24px #6366f180}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-glass);color:var(--text-primary);border:1px solid var(--border-glass-hover)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-accent{background:linear-gradient(135deg, var(--secondary) 0%, #20f3dc 100%);color:#07080e;border:1px solid #ffffff14;box-shadow:0 4px 16px #00dec733}.btn-accent:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 24px #00dec766}.btn-accent:active{transform:translateY(0)}.btn-danger{background:linear-gradient(135deg, var(--accent-red) 0%, #ff5252 100%);color:#fff;box-shadow:0 4px 16px #e6676726}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 8px 24px #e6676759}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none!important;transform:none!important}.input-group{width:100%;margin-bottom:20px}.input-label{font-family:var(--font-heading);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.8rem;font-weight:600;display:block}.input-field{background:var(--bg-input);border:1px solid var(--border-glass);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-family:var(--font-body);transition:all var(--transition-normal);padding:12px 16px;font-size:.95rem}.input-field:focus{border-color:var(--primary);background:#00000080;outline:none;box-shadow:0 0 0 3px #6366f12e}.badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;border:1px solid #0000;align-items:center;padding:4px 12px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-primary{color:#b3b5ff;background:#6366f11f;border-color:#6366f133}.badge-secondary{color:#00dec7;background:#00dec714;border-color:#00dec72e}.badge-gold{color:#f5cd79;background:#f5cd7914;border-color:#f5cd792e}.badge-red{color:#e74c3c;background:#e74c3c14;border-color:#e74c3c2e}.badge-green{color:#2ecc71;background:#2ecc7114;border-color:#2ecc712e}.theme-light .badge-primary{color:#4f46e5;background:#4f46e514;border-color:#4f46e526}.theme-light .badge-secondary{color:#0ea5e9;background:#0ea5e914;border-color:#0ea5e926}.theme-light .badge-gold{color:#b45309;background:#d9770614;border-color:#d9770626}.theme-light .badge-red{color:#dc2626;background:#ef444414;border-color:#ef444426}.theme-light .badge-green{color:#059669;background:#10b98114;border-color:#10b98126}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%{box-shadow:0 0 15px #6366f126}50%{box-shadow:0 0 25px #6366f14d}to{box-shadow:0 0 15px #6366f126}}@keyframes float{0%{transform:translateY(0)rotate(15deg)}50%{transform:translateY(-8px)rotate(17deg)}to{transform:translateY(0)rotate(15deg)}}.animate-fade-in{animation:fadeIn .5s var(--transition-slow) forwards}.app-container{flex-direction:column;flex:1;width:100%;max-width:1300px;margin:0 auto;padding:30px 20px;display:flex}.header{background:var(--bg-header);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;margin-bottom:30px;padding:16px 28px;display:flex}.logo-container{align-items:center;gap:12px;display:flex}.logo-text{font-family:var(--font-heading);background:var(--logo-gradient);-webkit-text-fill-color:transparent;text-shadow:0 0 40px #6366f126;letter-spacing:.02em;-webkit-background-clip:text;background-clip:text;font-size:1.6rem;font-weight:800}.user-profile-menu{align-items:center;gap:14px;display:flex}.avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);width:38px;height:38px;font-family:var(--font-heading);color:#fff;border:2px solid #fff3;justify-content:center;align-items:center;font-weight:800;display:flex;box-shadow:0 0 15px #6366f14d}.player-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.login-card{background:#0f1420bf!important;border:1px solid #ffffff14!important;border-radius:24px!important;box-shadow:0 24px 80px #0009,0 0 40px #6366f12e!important}.login-miniboard{animation:6s ease-in-out infinite float}.lobby-bracket-container{padding:24px!important}.lobby-bracket-scroll{flex-direction:row!important;gap:32px!important;width:100%!important;padding-bottom:14px!important;display:flex!important;overflow:auto hidden!important}.lobby-bracket-scroll::-webkit-scrollbar{height:8px!important;display:block!important}.lobby-bracket-scroll::-webkit-scrollbar-track{border-radius:var(--radius-full)!important;background:#ffffff03!important}.lobby-bracket-scroll::-webkit-scrollbar-thumb{border-radius:var(--radius-full)!important;background:#6366f140!important}.lobby-bracket-scroll::-webkit-scrollbar-thumb:hover{background:#6366f199!important}.lobby-bracket-column{flex-shrink:0!important;min-width:220px!important}.player-clock{letter-spacing:.04em;color:var(--text-primary);border-radius:var(--radius-sm)!important;background:#0000008c!important;border:1px solid #ffffff14!important;font-family:Outfit,monospace!important;font-weight:700!important}@media (width<=768px){.app-container,.header,.lobby-grid-container,.lobby-col-left,.lobby-col-right,.lobby-board-wrapper,.lobby-player-card,.lobby-register-cta,.lobby-bracket-container,.lobby-bracket-scroll,.game-grid-container,.game-board-col,.game-sidebar,.admin-grid-container,.admin-col-left,.admin-col-right,.arena-grid,.arena-card,.tournament-arena-card,.glass-panel{box-sizing:border-box!important;width:100%!important;max-width:100%!important}.app-container{padding:12px 10px!important}.header{margin-bottom:20px;text-align:center!important;flex-direction:column!important;align-items:center!important;gap:16px!important;padding:20px 16px!important}.user-profile-menu{justify-content:center!important;width:100%!important;margin-top:4px!important}.login-card{max-width:95vw!important;min-height:unset!important;padding:28px 18px!important}.login-card .btn{justify-content:center!important;width:100%!important}.login-miniboard{display:none!important}.dashboard-container{padding:10px 0!important}.stats-card{text-align:center!important;flex-direction:column!important;align-items:center!important;gap:20px!important;padding:24px!important}.stats-grid{grid-template-columns:repeat(2,1fr)!important;gap:10px!important;width:100%!important}.arena-grid{grid-template-columns:1fr!important;gap:20px!important}.arena-card{padding:24px!important}.t-card-header{flex-direction:column!important;align-items:flex-start!important;gap:12px!important;width:100%!important}.admin-link-btn{justify-content:center!important;width:100%!important}.tournament-row-item{flex-wrap:wrap!important;gap:8px!important;padding:12px!important}.tournament-row-title{flex:100%!important;font-size:.9rem!important}.tournament-row-meta{flex-wrap:wrap!important;flex:auto!important;gap:6px!important}.card-actions{flex-direction:column!important;gap:8px!important;width:100%!important}.card-actions .btn{width:100%!important}.game-grid-container{grid-template-columns:1fr!important;gap:20px!important}.game-board-col{max-width:100%!important}.game-sidebar{height:auto!important;min-height:unset!important;padding:16px!important}.game-history-box{flex:unset!important;max-height:200px!important;overflow-y:auto!important}.board-theme-grid{grid-template-columns:repeat(3,1fr)!important}.player-name{max-width:38vw!important}.lobby-grid-container{box-sizing:border-box!important;grid-template-columns:1fr!important;gap:20px!important;width:100%!important;max-width:100%!important;height:auto!important;overflow-x:hidden!important}.lobby-header-actions{flex-wrap:wrap!important;justify-content:center!important;gap:8px!important;width:100%!important}.lobby-header-actions .btn,.lobby-header-actions .badge{text-align:center!important;flex:auto!important;justify-content:center!important}.lobby-board-wrapper{width:100%!important;padding:16px!important}.lobby-board-grid{aspect-ratio:1!important;width:100%!important;max-width:320px!important;height:auto!important}.lobby-board-status{padding:0 8px!important}.lobby-piece{font-size:1.4rem!important}.lobby-active-match{text-align:center!important;flex-direction:column!important;align-items:center!important;gap:12px!important;padding:16px!important}.lobby-active-match button{width:100%!important}.lobby-col-left{height:auto!important}.lobby-col-right{box-sizing:border-box!important;width:100%!important;max-width:100%!important;height:auto!important;padding:20px!important;overflow:visible!important}.lobby-bracket-container{box-sizing:border-box!important;width:100%!important;max-width:100%!important;height:auto!important;overflow:visible!important}.lobby-player-grid{grid-template-columns:1fr!important}.lobby-register-cta{text-align:center!important;flex-direction:column!important;align-items:center!important;gap:12px!important}.lobby-board-header{flex-wrap:wrap!important;align-items:flex-start!important;gap:8px!important}.lobby-board-header .badge{white-space:normal!important;word-break:break-word!important;text-align:center!important;max-width:100%!important}.lobby-bracket-scroll{scroll-snap-type:x mandatory!important;box-sizing:border-box!important;gap:0!important;width:100%!important;max-width:100%!important;padding-bottom:16px!important}.lobby-bracket-column{scroll-snap-align:start!important;box-sizing:border-box!important;flex-shrink:0!important;width:min(200px,82vw)!important;min-width:min(200px,82vw)!important;max-width:100%!important;padding:0 10px!important}.admin-grid-container{grid-template-columns:1fr!important;gap:20px!important;height:auto!important}.admin-col-left,.admin-col-right{height:auto!important;min-height:unset!important}.admin-col-right{padding:20px 0!important}.match-list,.participant-grid{grid-template-columns:1fr!important}.participant-grid>div{min-width:0!important}.participant-grid>div span:last-child{text-overflow:ellipsis!important;white-space:nowrap!important;min-width:0!important;overflow:hidden!important}.tournament-arena-card{height:auto!important;min-height:unset!important}.tournament-list-container{overflow:visible!important}.tournament-list-scroll{max-height:none!important;overflow-y:visible!important}.form-row{flex-direction:column!important;gap:0!important}}@media (width<=480px){.game-player-card{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.admin-share-row{flex-direction:column!important}.admin-share-row input,.admin-share-row .btn{width:100%!important}}.game-board-col img,.game-board-col svg,.lobby-board-wrapper img,.lobby-board-wrapper svg,[class*=chessboard] img,[class*=chessboard] svg,[class*=piece] img,[class*=piece] svg{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light only!important;forced-color-adjust:none!important;filter:none!important}.google-signin-btn{text-transform:none;letter-spacing:normal;color:#1f1f1f;width:100%;font-family:var(--font-heading), sans-serif;cursor:pointer;background-color:#fff;border:1px solid #dadce0;border-radius:8px;outline:none;justify-content:center;align-items:center;gap:12px;padding:13px 0;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 2px 4px #00000014}.google-signin-btn:hover:not(:disabled){background-color:#f8f9fa;border-color:#d2d4d7;transform:translateY(-1px);box-shadow:0 4px 10px #00000026}.google-signin-btn:active:not(:disabled){background-color:#f1f3f4;transform:translateY(0);box-shadow:0 2px 4px #00000014}.google-signin-btn:disabled{opacity:.6;cursor:not-allowed}.share-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(10px);background:#0f172a66;justify-content:center;align-items:center;padding:24px 16px;transition:background .3s;display:flex;position:fixed;inset:0}.theme-dark .share-modal-overlay,html:not(.theme-light) .share-modal-overlay{background:#000000b8}.share-modal-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass-hover);width:100%;max-width:460px;box-shadow:var(--shadow-md);border-radius:18px;flex-direction:column;gap:16px;padding:28px 28px 24px;animation:.22s cubic-bezier(.34,1.56,.64,1) both modal-pop;display:flex}@keyframes modal-pop{0%{opacity:0;transform:scale(.88)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.share-modal-header{justify-content:space-between;align-items:center;display:flex}.share-modal-title-group{align-items:center;gap:10px;display:flex}.share-modal-icon{color:var(--secondary);flex-shrink:0}.share-modal-title{color:var(--text-primary);margin:0;font-size:1.15rem;font-weight:700}.share-modal-close-btn{background:var(--bg-input);border:1px solid var(--border-glass);color:var(--text-secondary);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:all .15s;display:flex}.share-modal-close-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--border-glass-hover)}.share-modal-description{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.55}.share-modal-input-group{align-items:stretch;gap:8px;display:flex}.share-modal-url-input{border:1px solid var(--border-glass-hover);background:var(--bg-input);min-width:0;color:var(--text-primary);font-size:.82rem;font-family:var(--font-mono,monospace);cursor:text;border-radius:10px;outline:none;flex:1;padding:10px 12px;transition:border-color .15s}.share-modal-url-input:focus{border-color:var(--secondary)}.share-modal-copy-btn{flex-shrink:0;padding:10px 14px!important;font-size:.82rem!important}.share-modal-actions{flex-direction:column;gap:10px;display:flex}.share-modal-btn-share{width:100%;background:linear-gradient(135deg, var(--secondary) 0%, #0284c7 100%)!important;color:#fff!important;padding:12px!important;font-size:.9rem!important}.share-modal-btn-share:hover{filter:brightness(1.08)}.share-modal-btn-enter{border-radius:var(--radius-sm);cursor:pointer;width:100%;font-family:var(--font-heading);border:none;justify-content:center;align-items:center;gap:8px;font-weight:600;transition:filter .15s,transform .1s;display:inline-flex;background:linear-gradient(135deg, var(--primary) 0%, #a5b4fc 100%)!important;color:#fff!important;padding:12px!important;font-size:.9rem!important}.share-modal-btn-enter:hover{filter:brightness(1.08);transform:translateY(-1px)}.share-modal-btn-enter:active{transform:translateY(0)}select{background-color:var(--bg-input);color:var(--text-primary)}select option{background-color:var(--bg-card)!important;color:var(--text-primary)!important}.theme-light select option{color:#1e293b!important;background-color:#fff!important}.theme-dark select option{color:#f1f5f9!important;background-color:#161b2c!important}
