*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--accent: #8746ff;--accent-light: #a97bff;--accent-dark: #6230cc;--accent-glow: rgba(135,70,255,.35);--bg: #06040f;--bg2: #0d0820;--glass: rgba(255,255,255,.04);--glass-border: rgba(255,255,255,.09);--glass-hover: rgba(255,255,255,.07);--text: #f0ecff;--text-muted: rgba(240,236,255,.5);--text-dim: rgba(240,236,255,.25);--red: #ff4d6d;--green: #3dffb0;--gold: #ffd166;--radius: 16px;--radius-sm: 10px;--radius-lg: 24px}html,body{height:100%}body{font-family:Inter,sans-serif;background:var(--bg);color:var(--text);overflow:hidden;height:100vh}#root{height:100vh;overflow:hidden}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#8746ff4d;border-radius:9px}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 20px var(--accent-glow)}50%{box-shadow:0 0 40px var(--accent-glow),0 0 80px #8746ff26}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slide-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes blob{0%,to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}50%{border-radius:30% 60% 70% 40%/50% 60% 30%}}.app-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden}.blob{position:absolute;border-radius:60% 40% 30% 70%/60% 30% 70% 40%;filter:blur(80px);opacity:.18;animation:blob 12s ease-in-out infinite}.blob-1{width:600px;height:600px;background:var(--accent);top:-200px;left:-100px;animation-delay:0s}.blob-2{width:400px;height:400px;background:#ff4d6d;top:30%;right:-100px;animation-delay:-4s;opacity:.1}.blob-3{width:500px;height:500px;background:#3dffb0;bottom:-150px;left:30%;animation-delay:-8s;opacity:.06}.app-shell{position:relative;z-index:1;display:flex;height:100vh;overflow:hidden}.sidebar{width:240px;flex-shrink:0;background:#0d0820b3;border-right:1px solid var(--glass-border);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);display:flex;flex-direction:column;padding:24px 16px;gap:8px}.sidebar-logo{display:flex;align-items:center;gap:10px;padding:0 8px 20px;border-bottom:1px solid var(--glass-border);margin-bottom:8px}.logo-mark{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent-light));display:flex;align-items:center;justify-content:center;font-family:Syne,sans-serif;font-weight:800;font-size:16px;color:#fff;box-shadow:0 4px 20px var(--accent-glow)}.logo-text{font-family:Syne,sans-serif;font-weight:800;font-size:18px;letter-spacing:-.5px}.logo-text span{color:var(--accent-light)}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;font-size:14px;font-weight:500;color:var(--text-muted);border:1px solid transparent;text-decoration:none}.nav-item:hover{background:var(--glass-hover);color:var(--text);border-color:var(--glass-border)}.nav-item.active{background:#8746ff26;color:var(--accent-light);border-color:#8746ff40}.nav-icon{width:18px;height:18px;opacity:.8;flex-shrink:0}.nav-section{font-size:10px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:1.5px;padding:12px 12px 4px}.sidebar-footer{margin-top:auto;padding-top:16px;border-top:1px solid var(--glass-border)}.user-pill{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--glass);border:1px solid var(--glass-border);cursor:pointer;transition:all .2s}.user-pill:hover{background:var(--glass-hover)}.user-pill:hover .logout-hint{opacity:1}.avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#ff4d6d);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0}.user-info{flex:1;min-width:0}.user-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:11px;color:var(--text-muted)}.main-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:32px;animation:fadeIn .3s ease}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:32px;gap:16px}.page-title{font-family:Syne,sans-serif;font-weight:800;font-size:28px;line-height:1.1;letter-spacing:-.5px}.page-subtitle{font-size:14px;color:var(--text-muted);margin-top:4px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-size:14px;font-weight:600;cursor:pointer;border:1px solid var(--glass-border);background:var(--glass);color:var(--text);transition:all .2s ease;white-space:nowrap}.btn:hover{background:var(--glass-hover);border-color:#ffffff26}.btn-primary{background:linear-gradient(135deg,var(--accent),var(--accent-light));color:#fff;box-shadow:0 4px 20px var(--accent-glow)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 30px #8746ff80}.btn-ghost{background:var(--glass);color:var(--text-muted);border:1px solid var(--glass-border)}.btn-ghost:hover{background:var(--glass-hover);color:var(--text)}.btn-danger{background:#ff4d6d26;color:var(--red);border:1px solid rgba(255,77,109,.25)}.btn-danger:hover{background:#ff4d6d40}.btn-sm{padding:6px 14px;font-size:12px}.btn-icon{padding:8px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.glass-card{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:all .25s ease}.glass-card:hover{border-color:#8746ff33;background:var(--glass-hover)}.glass-card.clickable{cursor:pointer}.glass-card.clickable:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #8746ff26}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:100px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-dot{width:6px;height:6px;border-radius:50%}.badge-open{background:#3dffb01a;color:var(--green)}.badge-open .badge-dot{background:var(--green);box-shadow:0 0 6px var(--green)}.badge-ongoing{background:#8746ff26;color:var(--accent-light)}.badge-ongoing .badge-dot{background:var(--accent-light);box-shadow:0 0 6px var(--accent-light);animation:glow-pulse 2s infinite}.badge-closed{background:#ffffff0d;color:var(--text-dim)}.badge-closed .badge-dot{background:var(--text-dim)}.badge-finished{background:#ffd1661a;color:var(--gold)}.badge-finished .badge-dot{background:var(--gold)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px}.stat-card{padding:20px;border-radius:var(--radius);background:var(--glass);border:1px solid var(--glass-border)}.stat-value{font-family:Syne,sans-serif;font-weight:800;font-size:32px;letter-spacing:-1px;line-height:1}.stat-label{font-size:12px;color:var(--text-muted);margin-top:6px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-trend{font-size:11px;margin-top:8px}.stat-up{color:var(--green)}.stat-down{color:var(--red)}.tournaments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.tournament-card{padding:22px;border-radius:var(--radius-lg);background:var(--glass);border:1px solid var(--glass-border);cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}.tournament-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(135,70,255,.04),transparent);pointer-events:none}.tournament-card:hover{transform:translateY(-3px);border-color:#8746ff4d;box-shadow:0 12px 40px #0006,0 0 0 1px #8746ff1a}.tc-game-tag{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-muted);font-weight:500;margin-bottom:10px}.game-icon{width:18px;height:18px;border-radius:4px;flex-shrink:0}.tc-title{font-family:Syne,sans-serif;font-weight:700;font-size:18px;line-height:1.2;margin-bottom:8px}.tc-meta{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text-muted);margin:12px 0;flex-wrap:wrap}.tc-meta-item{display:flex;align-items:center;gap:5px}.tc-footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid var(--glass-border)}.tc-participants{display:flex;align-items:center}.participant-avatar{width:24px;height:24px;border-radius:50%;border:2px solid var(--bg);font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.prize-badge{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--gold)}.form-group{margin-bottom:20px}.form-label{display:block;font-size:13px;font-weight:600;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.form-input,.form-select,.form-textarea{width:100%;padding:12px 16px;background:#ffffff0a;border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text);font-family:Inter,sans-serif;font-size:14px;transition:all .2s ease;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-dim)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent);background:#8746ff0f;box-shadow:0 0 0 3px #8746ff1f}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.form-select option{background:#1a1030}.form-textarea{resize:vertical;min-height:100px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-hint{font-size:12px;color:var(--text-dim);margin-top:5px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#06040fd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s ease}.modal{background:#0d0820f2;border:1px solid var(--glass-border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);width:100%;max-width:580px;max-height:90vh;overflow-y:auto;animation:slide-up .3s ease;box-shadow:0 24px 80px #00000080}.modal-header{padding:24px 28px 20px;border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#0d0820f2;-webkit-backdrop-filter:blur(40px);backdrop-filter:blur(40px);z-index:1}.modal-title{font-family:Syne,sans-serif;font-weight:800;font-size:20px}.modal-body{padding:28px}.modal-footer{padding:20px 28px;border-top:1px solid var(--glass-border);display:flex;justify-content:flex-end;gap:12px}.close-btn{width:32px;height:32px;border-radius:8px;border:none;background:var(--glass);cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:all .2s;font-size:16px}.close-btn:hover{background:#ff4d6d26;color:var(--red)}.tab-list{display:flex;gap:4px;background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-sm);padding:4px;width:fit-content;margin-bottom:28px}.tab-btn{padding:8px 18px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:none;background:transparent;color:var(--text-muted);transition:all .2s ease}.tab-btn.active{background:#8746ff33;color:var(--accent-light)}.tab-btn:hover:not(.active){color:var(--text);background:var(--glass-hover)}.bracket-container{overflow-x:auto;padding-bottom:16px}.bracket{display:flex;gap:0;align-items:flex-start;min-width:fit-content}.bracket-round{display:flex;flex-direction:column;gap:0;min-width:180px}.bracket-round-title{font-size:11px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;text-align:center;padding:8px 0;margin-bottom:8px;border-bottom:1px solid var(--glass-border)}.bracket-match{margin:0;background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-sm);overflow:hidden;width:160px;flex-shrink:0;cursor:pointer;transition:all .2s}.bracket-match:hover{border-color:#8746ff4d}.bracket-team{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;font-size:13px;border-bottom:1px solid rgba(255,255,255,.04)}.bracket-team:last-child{border-bottom:none}.bracket-team.winner{color:var(--accent-light);font-weight:600}.bracket-team.loser{color:var(--text-dim)}.bracket-score{font-weight:700;font-size:14px}.participants-list{display:flex;flex-direction:column;gap:10px}.participant-row{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius-sm);background:var(--glass);border:1px solid var(--glass-border);transition:all .2s}.participant-row:hover{border-color:#8746ff33;background:var(--glass-hover)}.participant-rank{font-family:Syne,sans-serif;font-weight:800;font-size:16px;color:var(--text-dim);width:28px;text-align:right;flex-shrink:0}.participant-rank.gold{color:var(--gold)}.participant-rank.silver{color:silver}.participant-rank.bronze{color:#cd7f32}.participant-info{flex:1}.participant-name{font-weight:600;font-size:14px}.participant-members{font-size:12px;color:var(--text-muted);margin-top:2px}.tournament-hero{border-radius:var(--radius-lg);padding:32px;margin-bottom:28px;position:relative;overflow:hidden;background:linear-gradient(135deg,#8746ff26,#8746ff0d);border:1px solid rgba(135,70,255,.2)}.tournament-hero:before{content:"";position:absolute;top:-50px;right:-50px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(135,70,255,.2),transparent 70%);pointer-events:none}.hero-title{font-family:Syne,sans-serif;font-weight:800;font-size:36px;letter-spacing:-1px;line-height:1.1;margin-bottom:12px}.hero-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:16px 0}.hero-meta-item{display:flex;align-items:center;gap:7px;font-size:14px;color:var(--text-muted)}.hero-actions{display:flex;gap:12px;margin-top:20px}.progress-bar{height:4px;background:#ffffff14;border-radius:9px;overflow:hidden;margin-top:10px}.progress-fill{height:100%;border-radius:9px;background:linear-gradient(90deg,var(--accent),var(--accent-light));transition:width .5s ease}.filter-bar{display:flex;align-items:center;gap:12px;margin-bottom:24px;flex-wrap:wrap}.search-input-wrapper{position:relative;flex:1;min-width:200px;max-width:320px}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-dim);pointer-events:none}.search-input{width:100%;padding:10px 16px 10px 38px;background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text);font-family:Inter,sans-serif;font-size:14px;transition:all .2s;outline:none}.search-input::placeholder{color:var(--text-dim)}.search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #8746ff1f}.filter-chip{padding:7px 14px;border-radius:100px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--glass-border);background:var(--glass);color:var(--text-muted);transition:all .2s}.filter-chip:hover{color:var(--text);border-color:#8746ff4d}.filter-chip.active{background:#8746ff26;color:var(--accent-light);border-color:#8746ff59}.empty-state{text-align:center;padding:60px 20px;display:flex;flex-direction:column;align-items:center;gap:16px}.empty-icon{width:64px;height:64px;border-radius:20px;background:var(--glass);border:1px solid var(--glass-border);display:flex;align-items:center;justify-content:center;font-size:28px}.empty-title{font-family:Syne,sans-serif;font-weight:700;font-size:20px}.empty-subtitle{font-size:14px;color:var(--text-muted);max-width:300px;line-height:1.6}.toast-container{position:fixed;bottom:24px;right:24px;z-index:200;display:flex;flex-direction:column;gap:10px}.toast{padding:14px 20px;border-radius:var(--radius-sm);background:#0d0820f2;border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);font-size:14px;font-weight:500;display:flex;align-items:center;gap:10px;animation:slide-up .3s ease;min-width:240px;box-shadow:0 8px 32px #0006}.toast-success{border-color:#3dffb04d}.toast-success .toast-icon{color:var(--green)}.toast-error{border-color:#ff4d6d4d}.toast-error .toast-icon{color:var(--red)}.format-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.format-card{padding:16px;border-radius:var(--radius-sm);background:var(--glass);border:2px solid var(--glass-border);cursor:pointer;transition:all .2s;text-align:center}.format-card:hover{border-color:#8746ff4d}.format-card.selected{border-color:var(--accent);background:#8746ff1a}.format-icon{font-size:24px;margin-bottom:8px}.format-name{font-size:13px;font-weight:600}.format-desc{font-size:11px;color:var(--text-muted);margin-top:4px}.step-indicator{display:flex;align-items:center;gap:0;margin-bottom:32px}.step{display:flex;align-items:center;gap:8px;flex:1;font-size:12px;font-weight:600}.step-num{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;border:2px solid var(--glass-border);background:var(--glass);color:var(--text-dim)}.step.active .step-num{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 0 16px var(--accent-glow)}.step.done .step-num{background:#3dffb026;border-color:#3dffb066;color:var(--green)}.step-label{color:var(--text-dim)}.step.active .step-label,.step.done .step-label{color:var(--text)}.step-line{flex:1;height:1px;background:var(--glass-border);margin:0 8px}.step-line.done{background:#8746ff4d}.detail-layout{display:grid;grid-template-columns:1fr 300px;gap:24px;align-items:start}.info-panel{display:flex;flex-direction:column;gap:16px}.info-block{padding:20px;border-radius:var(--radius);background:var(--glass);border:1px solid var(--glass-border)}.info-block-title{font-size:11px;font-weight:700;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:14px}.info-row{display:flex;justify-content:space-between;align-items:center;font-size:13px;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.04)}.info-row:last-child{border-bottom:none}.info-row-label{color:var(--text-muted)}.info-row-value{font-weight:600}.spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(135,70,255,.2);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.loading-center{display:flex;align-items:center;justify-content:center;height:200px}
