.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg-secondary);padding:20px}.auth-card{background:var(--color-bg-card);border-radius:8px;padding:40px;width:100%;max-width:450px;box-shadow:0 10px 40px #0000004d;border:1px solid var(--color-border)}.auth-card h1{margin:0 0 8px;font-size:28px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-subtitle{margin:0 0 30px;color:var(--color-text-muted);font-size:14px}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-links{margin-top:20px;text-align:center;font-size:14px;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;gap:8px}.auth-links a{color:var(--color-accent);text-decoration:none;font-weight:500}.auth-links a:hover{color:var(--color-accent-dim);text-decoration:underline}@media (max-width: 640px){.auth-card{padding:30px 20px}.auth-card h1{font-size:24px}}.language-switcher{display:flex;align-items:center;gap:.25rem}.language-btn{background:none;border:none;color:var(--text-secondary, #6b7280);font-size:.875rem;font-weight:500;padding:.25rem .5rem;cursor:pointer;transition:color .2s ease;border-radius:.25rem}.language-btn:hover:not(:disabled){color:var(--text-primary, #111827)}.language-btn:focus{outline:2px solid var(--focus-ring, #3b82f6);outline-offset:2px}.language-btn.active{color:var(--primary, #3b82f6);font-weight:600}.language-btn:disabled{opacity:.5;cursor:not-allowed}.language-divider{color:var(--border, #d1d5db);font-size:.875rem;-webkit-user-select:none;user-select:none}.nav{background-color:var(--color-bg-primary);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:100}.nav-container{max-width:1400px;margin:0 auto;padding:0 20px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:24px}.nav-brand{display:flex;align-items:center;gap:10px;font-size:1.25rem;font-weight:700;text-decoration:none;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;white-space:nowrap}.nav-logo{height:36px;width:auto}.nav-links{display:flex;align-items:center;gap:8px;flex:1}.nav-link{padding:8px 16px;color:var(--color-text-muted);text-decoration:none;border-radius:6px;font-size:.9rem;font-weight:500;transition:color .2s,background-color .2s}.nav-link:hover{color:var(--color-text-primary);background-color:var(--color-bg-shape-light)}.nav-link.active{color:var(--color-text-primary);background-color:var(--color-bg-shape)}.nav-divider{width:1px;height:24px;background-color:var(--color-border);margin:0 8px}.nav-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:6px;padding:8px 16px;color:var(--color-text-muted);background:transparent;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:color .2s,background-color .2s}.nav-dropdown-trigger:hover{color:var(--color-text-primary);background-color:var(--color-bg-shape-light)}.nav-dropdown-trigger.active{color:var(--color-text-primary);background-color:var(--color-bg-shape)}.nav-dropdown-chevron{font-size:.65rem;opacity:.7}.nav-dropdown-menu{position:absolute;top:100%;left:0;margin-top:4px;min-width:160px;background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:200;overflow:hidden}.nav-dropdown-item{display:block;padding:10px 16px;color:var(--color-text-muted);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s,background-color .2s}.nav-dropdown-item:hover{color:var(--color-text-primary);background-color:var(--color-bg-shape-light)}.nav-dropdown-item.active{color:var(--color-text-primary);background-color:var(--color-bg-shape)}.nav-user{display:flex;align-items:center;gap:16px}.nav-username-link{color:var(--color-text-muted);font-size:.9rem;text-decoration:none;padding:8px 12px;border-radius:6px;transition:color .2s,background-color .2s}.nav-username-link:hover{color:var(--color-text-primary);background-color:var(--color-bg-shape-light)}.nav-username-link.active{color:var(--color-text-primary);background-color:var(--color-bg-shape)}.nav-logout{padding:8px 16px;background:var(--color-accent);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s}.nav-logout:hover{background:var(--color-accent-dim)}.nav-auth{display:flex;align-items:center;gap:16px}.nav-auth-link{padding:8px 16px;color:var(--color-text-muted);text-decoration:none;border-radius:6px;font-size:.9rem;font-weight:500;transition:color .2s}.nav-auth-link:hover{color:var(--color-text-primary)}.nav-auth-button{padding:8px 16px;background:var(--color-accent);color:#fff;text-decoration:none;border-radius:6px;font-size:.9rem;font-weight:500;transition:background-color .2s}.nav-auth-button:hover{background:var(--color-accent-dim)}@media (max-width: 768px){.nav-container{padding:0 12px;gap:12px}.nav-brand{font-size:1rem}.nav-logo{height:28px}.nav-links{gap:4px}.nav-link,.nav-dropdown-trigger{padding:6px 10px;font-size:.85rem}.nav-dropdown-item{padding:8px 12px;font-size:.85rem}.nav-username-link{display:none}.nav-logout{padding:6px 12px;font-size:.85rem}.nav-auth{gap:12px}.nav-auth-link,.nav-auth-button{padding:6px 12px;font-size:.85rem}}@media (max-width: 600px){.nav-container{flex-wrap:wrap;height:auto;padding:12px}.nav-links{order:3;width:100%;justify-content:center;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--color-border);margin-top:12px}.nav-divider{display:none}.nav-dropdown-menu{left:50%;transform:translate(-50%)}}.profile-container{max-width:1200px;margin:0 auto;padding:40px 20px}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.profile-header h1{margin:0;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-layout{display:grid;grid-template-columns:280px 1fr;gap:30px}.profile-sidebar{background:var(--color-bg-card);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d;border:1px solid var(--color-border);text-align:center;height:fit-content}.profile-avatar-display{width:150px;height:150px;margin:0 auto 20px;border-radius:50%;overflow:hidden;border:4px solid var(--color-border)}.profile-avatar-display img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-accent-gradient);color:#fff;font-size:48px;font-weight:700}.profile-sidebar h2{margin:0 0 8px;font-size:24px;color:var(--color-text-primary)}.profile-email{margin:0 0 15px;color:var(--color-text-muted);font-size:14px}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.warning-badge{margin-top:15px;padding:8px 12px;background-color:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:4px;color:var(--color-warning);font-size:12px}.profile-content{background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000004d;border:1px solid var(--color-border);overflow:hidden}.profile-tabs{display:flex;border-bottom:1px solid var(--color-border);background-color:var(--color-bg-shape)}.tab{flex:1;padding:16px 24px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text-muted);transition:all .2s;border-bottom:3px solid transparent}.tab:hover{background-color:var(--color-bg-shape-dim);color:var(--color-text-primary)}.tab-content{padding:30px}.profile-section h3{margin:0 0 8px;font-size:24px;color:var(--color-text-heading)}.section-description{margin:0 0 24px;color:var(--color-text-muted);font-size:14px}.profile-form{max-width:500px}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--color-text-primary)}.form-group input{width:100%;padding:12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;transition:border-color .2s,box-shadow .2s;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.form-group input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.form-group input:disabled{background-color:var(--color-bg-shape-dim);cursor:not-allowed;color:var(--color-text-muted)}.form-group input::placeholder{color:var(--color-text-muted)}.form-hint{display:block;margin-top:4px;font-size:12px;color:var(--color-text-muted)}.loading{text-align:center;padding:60px 20px;color:var(--color-text-muted)}.avatar-upload-section{display:flex;gap:30px;margin-bottom:30px}.current-avatar,.preview-avatar{flex:1}.current-avatar h4,.preview-avatar h4{margin:0 0 15px;font-size:16px;color:var(--color-text-primary)}.avatar-display{width:200px;height:200px;margin-bottom:15px;border-radius:8px;overflow:hidden;border:2px solid var(--color-border)}.avatar-display img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-large{width:200px;height:200px;display:flex;align-items:center;justify-content:center;background:var(--color-accent-gradient);color:#fff;font-size:72px;font-weight:700;border-radius:8px}.upload-controls{margin-bottom:20px}.upload-controls input[type=file]{margin-bottom:15px;color:var(--color-text-primary)}.upload-controls input[type=file]::file-selector-button{padding:8px 16px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer;margin-right:12px}.upload-controls input[type=file]::file-selector-button:hover{background:var(--color-bg-shape-dim)}.button-group{display:flex;gap:10px}.upload-info{padding:15px;background-color:var(--color-bg-shape);border-radius:4px;font-size:14px;border:1px solid var(--color-border)}.upload-info p{margin:0 0 8px;font-weight:500;color:var(--color-text-primary)}.upload-info ul{margin:0;padding-left:20px;color:var(--color-text-muted)}.upload-info li{margin-bottom:4px}.current-info{padding:15px;background-color:var(--color-bg-shape);border-radius:4px;margin-bottom:20px;font-size:14px;border:1px solid var(--color-border);color:var(--color-text-primary)}.verified-badge{margin-left:10px;color:var(--color-success);font-weight:600}.unverified-badge{margin-left:10px;color:var(--color-warning);font-weight:600}.warning-box{margin-top:20px;padding:15px;background-color:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:4px;font-size:14px}.warning-box strong{display:block;margin-bottom:8px;color:var(--color-warning)}.warning-box ul{margin:0;padding-left:20px;color:var(--color-warning)}.danger-box{padding:20px;background-color:var(--color-error-bg);border:2px solid var(--color-error);border-radius:4px;margin-bottom:20px}.danger-box h4{margin:0 0 12px;color:var(--color-error);font-size:18px}.danger-box p{margin:0 0 12px;color:var(--color-error);font-size:14px}.danger-box ul{margin:0 0 12px;padding-left:20px;color:var(--color-error)}.confirmation-form{max-width:500px}.confirmation-form p{margin-bottom:12px;font-size:14px;color:var(--color-text-primary)}.confirmation-form code{background-color:var(--color-bg-shape);padding:2px 6px;border-radius:3px;font-family:monospace;font-weight:700;color:var(--color-error)}.confirmation-form input{width:100%;padding:12px;margin-bottom:20px;border:2px solid var(--color-error);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.confirmation-form input:focus{outline:none;box-shadow:0 0 0 2px var(--color-error-bg)}@media (max-width: 768px){.profile-layout{grid-template-columns:1fr}.profile-tabs{overflow-x:auto}.tab{flex:0 0 auto;min-width:100px}.avatar-upload-section{flex-direction:column}}.admin-panel{max-width:1400px;margin:0 auto;padding:40px 20px}.admin-header{margin-bottom:30px}.admin-header h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.admin-subtitle{margin:0;color:var(--color-text-muted);font-size:14px}.admin-filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.search-input{flex:2;min-width:250px;padding:10px 16px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.user-list{background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000004d;border:1px solid var(--color-border);overflow:hidden}.user-table{width:100%;border-collapse:collapse}.user-table thead{background-color:var(--color-bg-shape)}.user-table th{padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:var(--color-text-muted);border-bottom:2px solid var(--color-border)}.user-table td{padding:12px 16px;border-bottom:1px solid var(--color-border);font-size:14px;color:var(--color-text-primary)}.user-table tbody tr:hover{background-color:var(--color-bg-shape)}.deleted-user{opacity:.6;background-color:var(--color-warning-bg)!important}.user-cell{display:flex;align-items:center;gap:10px}.user-avatar-small{width:32px;height:32px;border-radius:50%;object-fit:cover}.avatar-placeholder-small{display:flex;align-items:center;justify-content:center;background:var(--color-accent-gradient);color:#fff;font-size:14px;font-weight:700}.deleted-label{color:var(--color-warning);font-size:12px;margin-left:8px}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.verified-icon{color:var(--color-success);font-size:16px}.unverified-icon{color:var(--color-error);font-size:16px}.btn{padding:12px 24px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.page-info{color:var(--color-text-muted);font-size:14px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--color-bg-card);border-radius:8px;width:90%;max-width:700px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--color-border);box-shadow:0 10px 40px #00000080}.modal-close{background:none;border:none;font-size:32px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;line-height:1}.modal-close:hover{color:var(--color-text-primary)}.user-details{display:flex;flex-direction:column;gap:16px}.detail-row{display:flex;padding:12px;background-color:var(--color-bg-shape);border-radius:4px;border:1px solid var(--color-border)}.detail-row strong{flex:0 0 140px;color:var(--color-text-muted);font-weight:600}.detail-row span{flex:1;color:var(--color-text-primary)}.user-actions{display:flex;flex-direction:column;gap:24px}.action-section h3{margin:0 0 12px;font-size:16px;color:var(--color-text-heading)}.form-group{display:flex;gap:12px;align-items:center;width:100%}.form-group select{flex:1;padding:10px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.form-group select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.form-group select option{background-color:var(--color-bg-card);color:var(--color-text-primary)}.button-group-vertical{display:flex;flex-direction:column;gap:10px}.btn-success:hover:not(:disabled){background-color:#2a2}.btn-danger{background-color:var(--color-accent-light);color:#fff}.activity-logs{overflow-x:auto}.logs-table{width:100%;border-collapse:collapse}.logs-table th{padding:10px;text-align:left;background-color:var(--color-bg-shape);border-bottom:2px solid var(--color-border);font-size:13px;font-weight:600;color:var(--color-text-muted)}.logs-table td{padding:10px;border-bottom:1px solid var(--color-border);font-size:13px;color:var(--color-text-primary)}.logs-table tbody tr:hover{background-color:var(--color-bg-shape)}.loading,.no-data{text-align:center;padding:60px 20px;color:var(--color-text-muted);background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000004d;border:1px solid var(--color-border)}.error-message{padding:12px;margin-bottom:20px;background-color:var(--color-error-bg);border:1px solid var(--color-error);border-radius:4px;color:var(--color-error);font-size:14px}.success-message{padding:12px;margin-bottom:20px;background-color:var(--color-success-bg);border:1px solid var(--color-success);border-radius:4px;color:var(--color-success);font-size:14px}@media (max-width: 1024px){.user-table{font-size:12px}.user-table th,.user-table td{padding:8px 12px}}@media (max-width: 768px){.admin-filters{flex-direction:column}.search-input,.filter-select{width:100%}.user-table{display:block;overflow-x:auto}.modal-content{width:95%}.pagination{flex-direction:column}}.venue-management{max-width:1400px;margin:0 auto;padding:40px 20px}.venue-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.venue-header-info h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.venue-subtitle{margin:0;color:var(--color-text-muted);font-size:14px}.venue-filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.venue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px}.venue-card{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);overflow:hidden;transition:transform .2s,box-shadow .2s;cursor:pointer}.venue-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000004d}.venue-card-header{padding:20px;border-bottom:1px solid var(--color-border)}.venue-card-title{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--color-text-heading)}.venue-card-address{margin:0;font-size:13px;color:var(--color-text-muted);line-height:1.4}.venue-card-body{padding:20px}.venue-card-stats{display:flex;gap:20px;margin-bottom:16px}.venue-stat{display:flex;flex-direction:column}.venue-stat-value{font-size:24px;font-weight:700;color:var(--color-text-heading)}.venue-stat-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase}.venue-card-responsible{display:flex;align-items:center;gap:10px;padding:12px;background-color:var(--color-bg-shape);border-radius:6px}.venue-responsible-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover}.venue-responsible-avatar-placeholder{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-accent-gradient);color:#fff;font-size:14px;font-weight:700}.venue-responsible-info{flex:1}.venue-responsible-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase}.venue-responsible-name{font-size:14px;font-weight:500;color:var(--color-text-primary)}.no-responsible{font-size:13px;color:var(--color-text-muted);font-style:italic}.venue-form-container{max-width:800px;margin:0 auto;padding:40px 20px}.venue-form-header{margin-bottom:30px}.venue-form-header h1{margin:0 0 8px;font-size:28px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.venue-form{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);padding:30px}.form-input,.form-textarea,.form-select{padding:10px 14px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.venue-detail{max-width:1400px;margin:0 auto;padding:40px 20px}.venue-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.venue-detail-info h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.venue-detail-address{margin:0;font-size:14px;color:var(--color-text-muted)}.venue-detail-actions{display:flex;gap:12px}.venue-detail-content{display:grid;grid-template-columns:300px 1fr;gap:24px}.venue-sidebar{display:flex;flex-direction:column;gap:20px}.venue-info-card{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);padding:20px}.venue-info-card h3{margin:0 0 16px;font-size:14px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase}.info-row{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.info-row:last-child{margin-bottom:0}.info-label{font-size:12px;color:var(--color-text-muted)}.info-value{font-size:14px;color:var(--color-text-primary)}.venue-rooms-section{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);overflow:hidden}.rooms-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--color-border)}.rooms-header h2{margin:0;font-size:18px;color:var(--color-text-heading)}.rooms-grid{padding:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.room-card{background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border);overflow:hidden;transition:transform .2s}.room-card:hover{transform:translateY(-2px)}.room-card-image{width:100%;height:140px;object-fit:cover;background-color:var(--color-bg-shape-dim)}.room-card-image-placeholder{width:100%;height:140px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg-shape-dim) 0%,var(--color-bg-shape) 100%);color:var(--color-text-muted);font-size:40px}.room-card-content{padding:16px}.room-card-title{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--color-text-heading)}.room-card-type{display:inline-block;padding:3px 8px;background-color:var(--color-accent-bg);color:var(--color-accent);border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;margin-bottom:8px}.room-card-stations{font-size:13px;color:var(--color-text-muted)}.user-selector,.user-selector-input-wrapper{position:relative}.user-selector-input{width:100%;padding:10px 40px 10px 14px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.user-selector-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.user-selector-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:18px;padding:4px}.user-selector-clear:hover{color:var(--color-text-primary)}.user-selector-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:4px;margin-top:4px;max-height:200px;overflow-y:auto;z-index:100;box-shadow:0 4px 12px #0000004d}.user-selector-option{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background-color .15s}.user-selector-option:hover{background-color:var(--color-bg-shape)}.user-selector-option-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.user-selector-option-avatar-placeholder{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-accent-gradient);color:#fff;font-size:12px;font-weight:700}.user-selector-option-info{flex:1}.user-selector-option-name{font-size:14px;color:var(--color-text-primary)}.user-selector-option-role{font-size:11px;color:var(--color-text-muted)}.user-selector-no-results,.user-selector-loading{padding:16px;text-align:center;color:var(--color-text-muted);font-size:13px}.selected-user{display:flex;align-items:center;gap:10px;padding:10px 14px;background-color:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px}.selected-user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.selected-user-avatar-placeholder{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-accent-gradient);color:#fff;font-size:14px;font-weight:700}.selected-user-info{flex:1}.selected-user-name{font-size:14px;font-weight:500;color:var(--color-text-primary)}.selected-user-remove{background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:20px;padding:4px}.selected-user-remove:hover{color:var(--color-error)}.room-type-icon{font-size:40px}.room-type-gaming_arena{color:#c80f39}.room-type-streaming_room{color:#9333cc}.room-type-social_room{color:#3b82f6}.room-type-accommodation_room{color:#10b981}.room-type-cafeteria{color:#f59e0b}@media (max-width: 1024px){.venue-detail-content{grid-template-columns:1fr}.venue-sidebar{order:2}.venue-rooms-section{order:1}}@media (max-width: 768px){.venue-header{flex-direction:column}.venue-grid{grid-template-columns:1fr}.form-row,.venue-detail-header{flex-direction:column}.venue-detail-actions{width:100%}.venue-detail-actions .btn{flex:1}}.room-form-container{max-width:900px;margin:0 auto;padding:40px 20px}.room-form-header{margin-bottom:32px}.room-form-header h1{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0}.room-type-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:12px}.room-type-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:20px 16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;background:var(--color-bg-shape)}.room-type-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #667eea26}.room-type-card.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.room-type-radio{position:absolute;opacity:0;pointer-events:none}.room-type-icon{font-size:48px;margin-bottom:12px}.room-type-label{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px;text-align:center}.room-type-description{font-size:13px;color:var(--color-text-muted);text-align:center;line-height:1.4}.image-upload{width:100%}.image-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;border:2px dashed var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;background:var(--color-bg-shape)}.image-dropzone:hover,.image-dropzone.dragging{border-color:var(--color-accent);background:var(--color-accent-bg)}.dropzone-icon{font-size:64px;margin-bottom:16px;opacity:.5}.dropzone-text{text-align:center}.dropzone-primary{font-size:16px;font-weight:500;color:var(--color-text-primary);margin:0 0 8px}.dropzone-secondary{font-size:14px;color:var(--color-text-muted);margin:0}.dropzone-help{font-size:13px;color:var(--color-text-muted);margin:16px 0 0}.image-preview-container{display:flex;flex-direction:column;align-items:center;gap:16px}.image-preview{width:100%;max-width:600px;height:auto;border-radius:8px;box-shadow:0 2px 8px #0000001a}.venue-selector-loading,.venue-selector-error{padding:12px;font-size:14px;color:var(--color-text-muted)}.venue-selector-error{color:var(--color-error)}@media (max-width: 768px){.room-type-selector{grid-template-columns:1fr}.room-type-card{flex-direction:row;justify-content:flex-start;text-align:left;padding:16px}.room-type-icon{font-size:32px;margin-right:16px;margin-bottom:0}.room-type-label,.room-type-description{text-align:left}.dropzone-icon{font-size:48px}}.equipment-management{max-width:100%;margin:0 auto;padding:40px 20px}.equipment-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.equipment-header-info h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.equipment-subtitle{margin:0;color:var(--color-text-muted);font-size:14px}.equipment-filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.filter-search{flex:1;min-width:250px;max-width:400px}.filter-select{min-width:160px}.equipment-table-container{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);overflow:hidden}.equipment-table{width:100%;border-collapse:collapse}.equipment-table th,.equipment-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--color-border)}.equipment-table th{background:var(--color-bg-shape);font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.equipment-table tbody tr:hover{background:var(--color-bg-shape)}.equipment-table tbody tr:last-child td{border-bottom:none}.equipment-name-cell{display:flex;align-items:center;gap:10px}.equipment-type-icon{font-size:20px}.equipment-name{font-weight:500;color:var(--color-text-primary)}.equipment-type-badge{display:inline-block;padding:4px 10px;background-color:var(--color-accent-bg);color:var(--color-accent);border-radius:4px;font-size:12px;font-weight:500}.equipment-ip{font-family:Fira Code,Consolas,monospace;font-size:13px;color:var(--color-text-primary);background:var(--color-bg-shape);padding:3px 8px;border-radius:4px}.equipment-room{color:var(--color-text-primary)}.equipment-venue{color:var(--color-text-muted);font-size:13px}.no-value{color:var(--color-text-muted);font-style:italic}.no-value.unassigned{color:var(--color-warning)}.equipment-actions{display:flex;gap:8px}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:20px;border-top:1px solid var(--color-border);background:var(--color-bg-card)}.pagination-info{font-size:14px;color:var(--color-text-muted)}.equipment-form-container{max-width:900px;margin:0 auto;padding:40px 20px}.equipment-form-header{margin-bottom:32px}.equipment-form-header h1{font-size:32px;font-weight:600;color:var(--color-text-primary);margin:0;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.equipment-form{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);padding:30px}.equipment-type-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-top:12px}.equipment-type-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:20px 16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;background:var(--color-bg-shape)}.equipment-type-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #c80f3933}.equipment-type-card.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.equipment-type-radio{position:absolute;opacity:0;pointer-events:none}.equipment-type-card .equipment-type-icon{font-size:48px;margin-bottom:12px}.equipment-type-card .equipment-type-label{font-size:16px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px;text-align:center}.equipment-type-card .equipment-type-description{font-size:13px;color:var(--color-text-muted);text-align:center;line-height:1.4}.input-with-status{position:relative;display:flex;align-items:center}.input-with-status .form-input{flex:1;padding-right:120px}.input-status{position:absolute;right:12px;font-size:13px;white-space:nowrap}.input-status.checking,.input-status.validating{color:var(--color-text-muted)}.input-status.available{color:var(--color-success)}.input-status.taken,.input-status.invalid{color:var(--color-error)}.room-selector{width:100%}.room-selector-loading,.room-selector-error{padding:12px;font-size:14px;color:var(--color-text-muted)}.room-selector-error{color:var(--color-error)}.form-section{margin-bottom:30px}.form-section:last-child{margin-bottom:0}.form-section-title{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--color-border)}.form-row{display:flex;gap:16px;margin-bottom:16px}.form-row:last-child{margin-bottom:0}.form-field{flex:1;display:flex;flex-direction:column;gap:6px}.form-field.full-width{flex-basis:100%}.form-input,.form-select{padding:10px 14px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.form-error{font-size:12px;color:var(--color-error)}.form-help{display:block;margin-top:6px;font-size:13px;color:var(--color-text-muted)}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:30px;padding-top:20px;border-top:1px solid var(--color-border)}.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-muted);text-decoration:none;font-size:14px;margin-bottom:16px;transition:color .2s}.back-link:hover{color:var(--color-accent)}.empty-state{text-align:center;padding:60px 20px;color:var(--color-text-muted);background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border)}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state-title{font-size:18px;font-weight:600;margin-bottom:8px;color:var(--color-text-primary)}.empty-state-text{font-size:14px;margin-bottom:20px}.error-message{background-color:#dc35451a;border:1px solid var(--color-error);color:var(--color-error);padding:12px 16px;border-radius:4px;margin-bottom:20px;font-size:14px}.confirm-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.confirm-modal-content{background:var(--color-bg-card);border-radius:8px;padding:30px;max-width:400px;width:90%;text-align:center;border:1px solid var(--color-border)}.confirm-modal-title{margin:0 0 16px;font-size:20px;color:var(--color-text-heading)}.confirm-modal-text{margin:0 0 24px;color:var(--color-text-muted);font-size:14px}.confirm-modal-actions{display:flex;justify-content:center;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background-color:#c82333}@media (max-width: 1024px){.equipment-table-container{overflow-x:auto}.equipment-table{min-width:800px}}@media (max-width: 768px){.equipment-header,.equipment-filters{flex-direction:column}.filter-search,.filter-select{max-width:none;width:100%}.equipment-type-selector{grid-template-columns:1fr 1fr}.equipment-type-card{padding:16px 12px}.equipment-type-card .equipment-type-icon{font-size:36px;margin-bottom:8px}.equipment-type-card .equipment-type-label{font-size:14px;margin-bottom:4px}.equipment-type-card .equipment-type-description{font-size:11px;display:none}.form-row{flex-direction:column}.input-with-status .form-input{padding-right:14px}.input-status{position:static;display:block;margin-top:6px}.equipment-actions{flex-direction:column}.equipment-actions .btn{width:100%}}@media (max-width: 480px){.equipment-type-selector{grid-template-columns:1fr}.equipment-type-card{flex-direction:row;justify-content:flex-start;text-align:left;padding:16px}.equipment-type-card .equipment-type-icon{font-size:32px;margin-right:16px;margin-bottom:0}.equipment-type-card .equipment-type-label,.equipment-type-card .equipment-type-description{text-align:left}.equipment-type-card .equipment-type-description{display:block}}.event-list-container{padding:40px 20px;max-width:1400px;margin:0 auto}.event-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.event-list-header h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.event-filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap;align-items:flex-end}.event-stats{margin-bottom:20px;color:var(--color-text-muted);font-size:14px}.event-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px}.event-card{background:var(--color-bg-card);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000004d;transition:all .2s;border:1px solid var(--color-border)}.event-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #c80f3966;border-color:var(--color-accent)}.event-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.event-card-header h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-card-body{margin-bottom:16px}.event-info-row{display:flex;gap:10px;margin-bottom:8px;font-size:14px}.event-label{font-weight:600;color:var(--color-text-muted);min-width:100px}.event-description{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border);font-size:14px;color:var(--color-text-muted);line-height:1.5;max-height:60px;overflow:hidden;text-overflow:ellipsis}.event-card-actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 768px){.event-grid{grid-template-columns:1fr}.event-filters{flex-direction:column;align-items:stretch}.search-input{min-width:100%}.event-list-header{flex-direction:column;align-items:flex-start;gap:15px}}.venue-selector{width:100%}.venue-select{width:100%;padding:10px 15px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s}.venue-select option{background-color:var(--color-bg-card);color:var(--color-text-primary)}.venue-select:focus{outline:none;border-color:var(--color-accent)}.select-error{border-color:#ef4444!important}.venue-select:disabled{background-color:var(--color-bg-shape-dim);cursor:not-allowed;opacity:.6}.field-error{color:#ef4444;font-size:12px;margin-top:5px}.availability-status{margin-top:10px;padding:12px;border-radius:6px;font-size:13px}.availability-status.checking{background-color:#9999991a;color:var(--color-text-muted);border-left:4px solid #999}.availability-status.available{background-color:#4caf501a;color:#4caf50;border-left:4px solid #4caf50}.availability-status.unavailable{background-color:#f443361a;color:#f44336;border-left:4px solid #f44336}.availability-status strong{display:block;margin-bottom:8px}.availability-status p{margin:8px 0}.conflict-list{margin:10px 0;padding-left:20px}.conflict-list li{margin-bottom:8px;line-height:1.5}.conflict-note{font-weight:600;margin-top:10px}.date-range-picker{width:100%}.date-inputs{display:flex;align-items:flex-end;gap:15px}.date-input-group{flex:1;display:flex;flex-direction:column;gap:5px}.date-input-group label{font-size:13px;font-weight:500;color:#666}.date-input-group input[type=date]{padding:10px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.date-input-group input[type=date]:focus{outline:none;border-color:#1976d2}.input-error{border-color:#d32f2f!important}.date-separator{padding-bottom:10px;color:#666;font-size:14px}.field-error{color:#d32f2f;font-size:12px;margin-top:5px}.date-info{margin-top:8px;padding:8px 12px;background-color:#e3f2fd;color:#1976d2;border-radius:4px;font-size:13px;font-weight:500}@media (max-width: 768px){.date-inputs{flex-direction:column;align-items:stretch}.date-separator{padding:0;text-align:center}}.organizer-selector{width:100%}.organizer-input-wrapper{display:flex;flex-direction:column;gap:10px}.organizer-select{width:100%;padding:10px 15px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s}.organizer-select:focus{outline:none;border-color:var(--color-accent)}.organizer-select:disabled{background-color:var(--color-bg-shape-dim);cursor:not-allowed}.organizer-search{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:13px;transition:border-color .2s;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.organizer-search:focus{outline:none;border-color:var(--color-accent)}.selected-user-info{margin-top:10px;padding:10px;background-color:var(--color-bg-shape-light);border-radius:6px;font-size:13px;color:var(--color-accent)}.selected-user-info strong{font-weight:600}.event-form-container{padding:40px 20px;max-width:800px;margin:0 auto}.event-form-header{margin-bottom:30px}.event-form-header h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.event-form{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d}@media (max-width: 768px){.event-form-container,.event-form{padding:20px}}.tournament-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:24px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000004d}.tournament-card:hover{box-shadow:0 4px 12px #c80f3966;transform:translateY(-2px);border-color:var(--color-accent)}.tournament-card-header{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.tournament-game-icon{width:48px;height:48px;object-fit:contain;border-radius:4px;flex-shrink:0}.tournament-card-title{flex:1;min-width:0}.tournament-card-title h3{margin:0 0 4px;font-size:18px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-game-name{font-size:14px;color:var(--color-text-muted)}.tournament-status{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.tournament-card-body{display:flex;flex-direction:column;gap:12px}.tournament-info-row{display:flex;gap:24px;flex-wrap:wrap}.tournament-info-item{display:flex;gap:8px;align-items:center}.tournament-card-footer{margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:10px}.tournament-card-footer .btn-danger{padding:4px 12px;font-size:13px}.btn-link{background:none;border:none;color:var(--color-accent);font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;transition:color .2s}.btn-link:hover{color:var(--color-accent-dim);text-decoration:underline}@media (max-width: 768px){.tournament-card{padding:20px}.tournament-card-header{flex-wrap:wrap}.tournament-game-icon{width:40px;height:40px}.tournament-card-title h3{font-size:16px}.tournament-info-row{flex-direction:column;gap:8px}}.team-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.team-selector-modal{background:var(--color-bg-card);border-radius:8px;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #00000080;border:1px solid var(--color-border)}.error-message{background-color:var(--color-error-bg);color:var(--color-error);border-radius:8px;padding:12px;margin-bottom:16px;font-size:14px;border:1px solid var(--color-error)}.empty-state p{margin:0 0 8px;font-size:16px;font-weight:500}.empty-state small{font-size:13px;color:var(--color-text-muted);opacity:.8}.tournament-info{margin-bottom:16px;padding:12px;background-color:var(--color-bg-shape);border-radius:6px;font-size:14px;color:var(--color-text-primary)}.tournament-game{color:var(--color-text-muted)}.team-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.team-count{font-size:13px;color:var(--color-text-muted)}.btn-link{background:none;border:none;color:var(--color-accent);font-size:13px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .2s}.btn-link:hover{background-color:var(--color-accent-bg)}.team-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.team-item{display:flex;align-items:center;gap:12px;padding:16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--color-bg-shape)}.team-item:hover,.team-item.selected{border-color:var(--color-accent);background-color:var(--color-bg-shape-dim)}.team-item-content{flex:1;min-width:0}.team-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.team-item-header h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.club-name{display:inline-block;padding:2px 6px;background-color:var(--color-bg-shape-dim);color:var(--color-accent);border-radius:4px;font-size:11px;font-weight:500;flex-shrink:0}.team-event,.team-supervisor{font-size:13px;color:var(--color-text-muted);margin-top:4px}.team-item-select input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-accent)}.seed-input-section{margin-top:20px;padding:16px;background-color:var(--color-bg-shape);border-radius:8px;border:1px solid var(--color-border)}.seed-input-section label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:8px}.seed-input{width:100%;padding:10px 16px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;margin-bottom:6px;background-color:var(--color-bg-card);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.seed-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.seed-help{display:block;font-size:12px;color:var(--color-text-muted)}@media (max-width: 768px){.team-selector-modal{max-height:90vh}.modal-header,.modal-body,.modal-footer{padding:16px}.modal-footer{flex-direction:column-reverse}.modal-footer button{width:100%}.team-item,.seed-input-section{padding:12px}}.club-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.club-selector-modal{background:var(--color-bg-card);border-radius:8px;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #00000080;border:1px solid var(--color-border)}.modal-header h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0}.search-box{margin-bottom:16px}.search-input{width:100%;padding:10px 16px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary)}.search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #cc335733}.club-list{display:flex;flex-direction:column;gap:12px}.club-item{display:flex;align-items:center;gap:12px;padding:16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--color-bg-shape)}.club-item:hover,.club-item.selected{border-color:var(--color-accent);background-color:var(--color-bg-shape-dim)}.club-item-content{flex:1;min-width:0}.club-item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.club-item-header h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.club-abbr{display:inline-block;padding:2px 6px;background-color:var(--color-bg-shape-dim);color:var(--color-accent);border-radius:4px;font-size:11px;font-weight:500;flex-shrink:0}.club-description{font-size:13px;color:var(--color-text-muted);margin:4px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.club-stats{display:flex;gap:12px;font-size:12px;color:var(--color-text-muted);opacity:.8;margin-top:4px}.club-item-select input[type=radio]{width:20px;height:20px;cursor:pointer}.loading,.empty-state{text-align:center;padding:32px;color:var(--color-text-muted)}.empty-state p{margin:0}@media (max-width: 768px){.club-selector-modal{max-height:90vh}.modal-header,.modal-body,.modal-footer{padding:16px}.modal-footer{flex-direction:column-reverse}.modal-footer button{width:100%}.club-item{padding:12px}.club-stats{flex-direction:column;gap:4px}}.tournament-status-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.tournament-status-selector-modal{background:var(--color-bg-card);border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000080;border:1px solid var(--color-border)}.tournament-status-selector-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--color-border)}.tournament-status-selector-header h2{margin:0;font-size:20px;color:var(--color-text-heading)}.modal-close{background:none;border:none;font-size:28px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover:not(:disabled){background-color:var(--color-bg-shape-dim);color:var(--color-text-primary)}.modal-close:disabled{opacity:.5;cursor:not-allowed}.tournament-status-selector-body{padding:24px}.current-status-info{display:flex;align-items:center;gap:12px;margin-bottom:24px;padding:16px;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.current-status-label{font-size:14px;font-weight:600;color:var(--color-text-muted)}.selector-description{font-size:14px;color:var(--color-text-muted);margin-bottom:16px}.status-options{display:flex;flex-direction:column;gap:12px}.status-option{padding:16px;background:var(--color-bg-shape);border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s;text-align:left}.status-option:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-bg-shape-dim);transform:translateY(-1px)}.status-option:disabled{opacity:.5;cursor:not-allowed}.status-option-header{margin-bottom:8px}.status-option-description{margin:0;font-size:13px;color:var(--color-text-muted);line-height:1.5}.no-transitions{padding:32px;text-align:center;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.no-transitions p{margin:0 0 12px;color:var(--color-text-primary)}.no-transitions .hint{font-size:13px;color:var(--color-text-muted);margin:0}.confirmation-message{text-align:center;padding:20px}.confirmation-message p{margin:0 0 16px;font-size:15px;color:var(--color-text-primary)}.status-transition{display:flex;align-items:center;justify-content:center;gap:16px;margin:24px 0}.status-transition .status-badge{font-size:14px;padding:6px 16px}.status-transition .arrow{font-size:24px;color:var(--color-text-muted);font-weight:600}.warning-text{margin-top:16px!important;padding:12px 16px;background:var(--color-warning-bg);border-radius:6px;color:var(--color-warning);font-size:14px!important;font-weight:500;text-align:left}.info-text{margin-top:16px!important;padding:12px 16px;background:#5ea0f71a;border-radius:6px;color:#42a5f5;font-size:14px!important;font-weight:500;text-align:left}.tournament-status-selector-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--color-border)}.status-badge{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:nowrap}.status-draft{background:var(--color-bg-shape-dim);color:var(--color-text-muted)}.status-registration-open{background:#5ea0f733;color:var(--color-text-heading)}.status-registration-closed{background:var(--color-warning-bg);color:var(--color-warning)}.status-in-progress{background:var(--color-success-bg);color:var(--color-success)}.status-completed{background:#9333cc33;color:#b366e0}.status-cancelled{background:var(--color-error-bg);color:var(--color-error)}@media (max-width: 768px){.tournament-status-selector-modal{max-width:100%;max-height:100vh;border-radius:0}.tournament-status-selector-header,.tournament-status-selector-body,.tournament-status-selector-footer{padding:16px}.current-status-info{flex-direction:column;align-items:flex-start}}.external-tournaments-tab{padding:0}.external-tournaments-tab .tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.external-tournaments-tab .tab-header h2{margin:0}.import-section{display:flex;align-items:center;gap:1rem}.import-section label{cursor:pointer}.import-section label.disabled{pointer-events:none;opacity:.6}.delimiter-selector{display:flex;align-items:center;gap:.5rem}.delimiter-selector label{font-size:.875rem;color:var(--text-muted);white-space:nowrap}.delimiter-selector select{padding:.375rem .75rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem;background:var(--bg-card);cursor:pointer}.delimiter-selector select:focus{outline:none;border-color:var(--primary-color)}.delimiter-selector select:disabled{opacity:.6;cursor:not-allowed}.csv-help{margin-bottom:1rem;font-size:.875rem}.csv-help summary{cursor:pointer;color:var(--text-muted)}.csv-help details[open] summary{margin-bottom:.5rem}.csv-help code{background:var(--bg-secondary);padding:.125rem .375rem;border-radius:4px;font-size:.8125rem}.csv-help ul{margin:.5rem 0 0 1.5rem;padding:0}.csv-help li{margin-bottom:.25rem}.import-result p{margin:0 0 .5rem}.error-list{margin:.5rem 0 0 1rem;padding:0;max-height:150px;overflow-y:auto}.error-list li{margin-bottom:.25rem;font-size:.875rem}.notification-warning{background-color:#fef3cd;border:1px solid #ffc107;color:#856404}.tournament-list{display:flex;flex-direction:column;gap:1rem}.external-tournament-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.tournament-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;transition:background-color .2s}.tournament-header:hover{background-color:var(--bg-secondary)}.tournament-info{display:flex;align-items:center;gap:1rem}.tournament-info h3{margin:0;font-size:1.125rem}.match-count{color:var(--text-muted);font-size:.875rem}.tournament-actions{display:flex;align-items:center;gap:1rem}.expand-icon{color:var(--text-muted);font-size:.75rem}.tournament-matches{border-top:1px solid var(--border-color);padding:1rem;background:var(--bg-secondary)}.matches-table{width:100%;border-collapse:collapse;font-size:.875rem}.matches-table th,.matches-table td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid var(--border-color)}.matches-table th{background:var(--bg-card);font-weight:600;white-space:nowrap}.matches-table tr:last-child td{border-bottom:none}.matches-table tr:hover td{background-color:var(--bg-card)}.score-cell{font-weight:600;text-align:center}.action-cell{white-space:nowrap}.action-cell button{margin-right:.5rem}.action-cell button:last-child{margin-right:0}.btn-xs{padding:.25rem .5rem;font-size:.75rem}.modal-content{background:var(--bg-card);padding:1.5rem;border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto}.modal-content h3{margin:0 0 1.5rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-weight:500;font-size:.875rem}.form-group input{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:4px;font-size:.875rem}.form-group input:focus{outline:none;border-color:var(--primary-color)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-muted)}.empty-state p{margin:0 0 .5rem}.empty-state-hint{font-size:.875rem}.external-match-schedule{overflow-x:auto}.schedule-table{width:100%;border-collapse:collapse;font-size:.9rem}.schedule-table th,.schedule-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color, #e5e7eb)}.schedule-table th{background:var(--bg-secondary, #f9fafb);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.025em;color:var(--text-muted, #6b7280)}.schedule-table tbody tr:hover{background-color:var(--bg-secondary, #f9fafb)}.schedule-table tbody tr.upcoming{background-color:#3b82f60d}.col-datetime{white-space:nowrap;min-width:100px}.match-date{display:block;font-weight:500}.match-time{display:block;font-size:.85em;color:var(--text-muted, #6b7280)}.col-match{min-width:200px}.team{font-weight:500}.vs{margin:0 .5rem;color:var(--text-muted, #6b7280);font-size:.85em}.col-score{text-align:center;min-width:80px}.score{font-weight:500;color:var(--text-muted, #6b7280)}.score.has-score{color:var(--text-primary, #111827);font-weight:600}.col-info{min-width:100px}.room{font-size:.85em;color:var(--text-muted, #6b7280)}.no-matches{text-align:center;color:var(--text-muted, #6b7280);padding:2rem}@media (max-width: 640px){.schedule-table th,.schedule-table td{padding:.5rem}.col-match{min-width:auto}.team{display:block}.vs{display:block;margin:.125rem 0}}.schedule-timeline{display:flex;flex-direction:column;gap:24px}.schedule-timeline__day{display:flex;flex-direction:column}.schedule-timeline__slots{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:8px;overflow:hidden;background:var(--color-bg-card)}.schedule-timeline__empty{text-align:center;padding:60px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.schedule-timeline__empty p{margin:0;color:var(--color-text-primary);font-size:16px}.schedule-timeline__empty p.text-muted{margin-top:8px;color:var(--color-text-muted);font-size:14px}.schedule-day-header{display:flex;align-items:center;padding:12px 16px;margin-bottom:8px;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.schedule-day-header__text{font-size:16px;font-weight:600;color:var(--color-text-heading)}.schedule-timeline__room-headers{display:flex;border-bottom:1px solid var(--color-border);background:var(--color-bg-shape)}.schedule-timeline__room-headers-spacer{flex:0 0 70px;border-right:1px solid var(--color-border)}.schedule-timeline__room-header{flex:1;padding:8px 12px;font-size:13px;font-weight:600;color:var(--color-text-muted);text-align:center}.schedule-timeline__room-header--bordered{border-right:1px dotted var(--color-border)}.schedule-time-slot{display:flex;min-height:50px;border-bottom:1px solid var(--color-border)}.schedule-time-slot:last-child{border-bottom:none}.schedule-time-slot--empty{background:transparent}.schedule-time-slot__label{flex:0 0 70px;display:flex;align-items:flex-start;justify-content:flex-end;padding:8px 12px 8px 8px;border-right:1px solid var(--color-border);background:var(--color-bg-shape)}.schedule-time-slot__time{font-size:13px;font-weight:500;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.schedule-time-slot__content{flex:1;padding:8px;min-height:50px}.schedule-time-slot__empty-indicator{height:100%;min-height:34px;border-radius:4px;background:var(--color-bg-shape-light);opacity:.3}.schedule-time-slot__matches{display:flex;flex-wrap:wrap;gap:8px}.schedule-time-slot__room-columns{flex:1;display:flex}.schedule-time-slot__room-column{flex:1;padding:8px;display:flex;flex-direction:column;gap:8px}.schedule-time-slot__room-column--bordered{border-right:1px dotted var(--color-border)}.schedule-match-card{display:flex;flex-direction:column;gap:6px;padding:10px 12px;min-width:180px;max-width:280px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s;text-align:left;font-family:inherit;color:var(--color-text-primary)}.schedule-match-card:hover{background:var(--color-bg-shape-dim);border-color:var(--color-accent);transform:translateY(-1px);box-shadow:0 2px 8px #0000004d}.schedule-match-card:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.schedule-match--scheduled{border-left:3px solid var(--color-text-heading)}.schedule-match--in-progress{border-left:3px solid var(--color-warning);background:var(--color-warning-bg)}.schedule-match--completed{border-left:3px solid var(--color-success);opacity:.8}.schedule-match--forfeited{border-left:3px solid var(--color-error);opacity:.7}.schedule-match-card__header{display:flex;justify-content:space-between;align-items:center;gap:8px}.schedule-match-card__time{font-size:12px;font-weight:600;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.schedule-match-card__tournament{font-size:11px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:150px}.schedule-match-card__teams{font-size:14px;font-weight:600;color:var(--color-text-primary);line-height:1.3}.schedule-match-card__footer{display:flex;justify-content:space-between;align-items:center;gap:8px}.schedule-match-card__room{font-size:11px;color:var(--color-accent);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.schedule-match-card__round{font-size:11px;color:var(--color-text-muted);white-space:nowrap}@media (max-width: 768px){.schedule-timeline__room-headers-spacer{flex:0 0 55px}.schedule-timeline__room-header{font-size:12px;padding:6px 8px}.schedule-time-slot__label{flex:0 0 55px;padding:8px 8px 8px 4px}.schedule-time-slot__time{font-size:12px}.schedule-match-card{min-width:160px;max-width:100%;flex:1}.schedule-match-card__tournament{max-width:100px}.schedule-match-card__room{max-width:80px}}@media (max-width: 480px){.schedule-timeline__room-headers-spacer{flex:0 0 50px}.schedule-timeline__room-header{font-size:11px;padding:6px 4px}.schedule-day-header{padding:10px 12px}.schedule-day-header__text{font-size:14px}.schedule-time-slot__label{flex:0 0 50px}.schedule-time-slot__content,.schedule-time-slot__room-column{padding:6px}.schedule-match-card{min-width:100%;padding:8px 10px}.schedule-match-card__header{flex-direction:column;align-items:flex-start;gap:2px}.schedule-match-card__tournament{max-width:100%}}.schedule-tab{display:flex;flex-direction:column;gap:20px}.schedule-tab__header{display:flex;flex-direction:column;gap:4px}.schedule-tab__header h2{margin:0;font-size:20px;font-weight:600;color:var(--color-text-heading)}.schedule-tab__no-matches{text-align:center;padding:60px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.schedule-tab__no-matches p{margin:0;color:var(--color-text-primary);font-size:16px}.schedule-tab__no-matches p.text-muted{margin-top:8px;color:var(--color-text-muted);font-size:14px}.schedule-tab__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.schedule-tab__loading p{margin:0;color:var(--color-text-muted);font-size:16px}.schedule-tab__spinner{width:40px;height:40px;border:3px solid var(--color-bg-shape);border-top:3px solid var(--color-accent);border-radius:50%;animation:schedule-spin .8s linear infinite}@keyframes schedule-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.schedule-tab__error{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.schedule-tab__error .error-message{margin-bottom:0}.schedule-view-selector{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.schedule-view-selector__tabs{display:flex;gap:4px;padding:4px;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.schedule-view-selector__tabs .tab{padding:8px 16px;font-size:13px;font-weight:500;border:none;border-radius:4px;background:transparent;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.schedule-view-selector__tabs .tab:hover:not(:disabled){color:var(--color-text-primary);background:var(--color-bg-shape-dim)}.schedule-view-selector__tabs .tab.active{background:var(--color-accent);color:#fff}.schedule-view-selector__tabs .tab:disabled{opacity:.4;cursor:not-allowed}.schedule-view-selector__filter{position:relative;min-width:180px}.schedule-view-selector__filter-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;font-size:13px;font-weight:500;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-primary);cursor:pointer;transition:all .2s}.schedule-view-selector__filter-trigger:hover{border-color:var(--color-accent)}.schedule-view-selector__filter-trigger[aria-expanded=true]{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.schedule-view-selector__filter-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-view-selector__filter-icon{font-size:10px;color:var(--color-text-muted);margin-left:8px}.schedule-view-selector__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:220px;max-height:320px;display:flex;flex-direction:column;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 8px 24px #0006;z-index:100;overflow:hidden}.schedule-view-selector__dropdown-actions{display:flex;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-border);background:var(--color-bg-shape)}.schedule-view-selector__dropdown-actions .btn{flex:1}.schedule-view-selector__dropdown-list{flex:1;overflow-y:auto;padding:8px 0}.schedule-view-selector__option{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;transition:background .15s}.schedule-view-selector__option:hover{background:var(--color-bg-shape)}.schedule-view-selector__option input[type=checkbox]{flex-shrink:0;width:16px;height:16px;margin:0;accent-color:var(--color-accent);cursor:pointer}.schedule-view-selector__option-name{flex:1;font-size:13px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-view-selector__option-sublabel{font-size:11px;color:var(--color-text-muted);white-space:nowrap}@media (max-width: 768px){.schedule-view-selector{flex-direction:column;align-items:stretch}.schedule-view-selector__tabs{width:100%;justify-content:stretch}.schedule-view-selector__tabs .tab{flex:1;text-align:center;padding:10px 8px}.schedule-view-selector__filter{width:100%}}@media (max-width: 480px){.schedule-view-selector__tabs .tab{padding:8px 4px;font-size:12px}.schedule-tab__header h2{font-size:18px}}.schedule-match-modal{max-width:480px;width:100%}.schedule-match-modal .modal-body{display:flex;flex-direction:column;gap:24px}.schedule-match-modal__info{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.schedule-match-modal__row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.schedule-match-modal__label{flex-shrink:0;font-size:13px;color:var(--color-text-muted);font-weight:500}.schedule-match-modal__value{font-size:14px;color:var(--color-text-primary);text-align:right}.schedule-match-modal__teams{font-weight:600}.schedule-match-modal__edit-section{display:flex;flex-direction:column;gap:16px}.schedule-match-modal__edit-section h3{margin:0;font-size:14px;font-weight:600;color:var(--color-text-heading);padding-bottom:8px;border-bottom:1px solid var(--color-border)}.schedule-match-modal__edit-section .form-group{margin-bottom:0}.schedule-match-modal__edit-section .form-group label{font-size:13px;margin-bottom:6px}@media (max-width: 480px){.schedule-match-modal{max-width:100%;margin:16px}.schedule-match-modal__row{flex-direction:column;gap:4px}.schedule-match-modal__value{text-align:left}}.event-detail-container{padding:20px;max-width:1200px;margin:0 auto}.event-detail-header{margin-bottom:30px}.event-title-section{display:flex;align-items:center;gap:15px;margin-bottom:20px}.event-title-section h1{margin:0;font-size:36px;color:var(--color-text-heading)}.event-actions{display:flex;gap:10px;flex-wrap:wrap}.event-tabs{display:flex;border-bottom:2px solid var(--color-border);margin-bottom:30px}.event-tabs .tab{margin-bottom:-2px}.tab-content{border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 4px #0000004d;background:var(--color-bg-card)}.overview-tab{display:flex;flex-direction:column;gap:30px}.info-section h2,.stats-section h2{margin:0 0 20px;font-size:24px;color:var(--color-text-heading)}.event-info-body{display:flex;flex-direction:column;gap:8px}.event-info-row{display:flex;gap:10px;font-size:14px}.event-label{font-weight:600;color:var(--color-text-muted);min-width:130px}.event-value{color:var(--color-text-primary)}.venue-address{color:var(--color-text-muted);font-size:14px}.event-description{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border);font-size:14px;color:var(--color-text-muted);line-height:1.5}.stats-section .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px}.stats-section .stat-card .stat-value{font-size:36px}.stats-section .stat-card .stat-label{font-size:14px;font-weight:500}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.tab-header h2{margin:0;font-size:24px;color:var(--color-text-heading)}.tournament-list,.tournament-grid,.team-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.tournament-header h3,.team-card h3{margin:0;font-size:18px;color:var(--color-text-heading)}.tournament-info,.team-info{margin-bottom:15px;font-size:14px;color:var(--color-text-muted);line-height:1.8}.tournament-actions,.team-actions{display:flex;gap:10px}.notification{position:relative;padding:12px 40px 12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px;line-height:1.5}.notification-success{background-color:#4caf501a;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.notification-error{background-color:#dc26261a;color:#ef4444;border:1px solid rgba(220,38,38,.3)}.notification-close{position:absolute;top:8px;right:8px;background:none;border:none;font-size:24px;color:inherit;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;opacity:.7;transition:opacity .2s}.notification-close:hover{opacity:1}.tournament-card-wrapper{display:flex;flex-direction:column;gap:10px}.tournament-actions{display:flex;gap:8px;flex-wrap:wrap;padding:12px 16px;background-color:var(--color-bg-shape);border-radius:0 0 8px 8px}.tournament-teams-groups{display:flex;flex-direction:column;gap:30px}.tournament-group{background:var(--color-bg-shape);border-radius:8px;padding:20px;border:1px solid var(--color-border)}.tournament-group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--color-border)}.tournament-group-header h3{margin:0;font-size:20px}.tournament-group-header h3 a{color:var(--color-accent);text-decoration:none;transition:color .2s}.tournament-group-header h3 a:hover{opacity:.8;text-decoration:underline}.team-count-badge{padding:6px 12px;background-color:var(--color-accent);color:#fff;border-radius:16px;font-size:13px;font-weight:600}.team-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.team-card-header h4{margin:0;font-size:16px}.team-card-header h4 a{color:var(--color-text-heading);text-decoration:none;transition:color .2s}.team-card-header h4 a:hover{color:var(--color-accent)}.team-club-info{font-size:13px;margin-top:4px}.club-link{color:var(--color-text-muted);text-decoration:none;transition:color .2s}.club-link:hover{color:var(--color-accent);text-decoration:underline}.team-info-item{display:flex;gap:8px;font-size:14px}.team-info-label{font-weight:600;color:var(--color-text-muted)}.empty-state-hint{font-size:14px;color:var(--color-text-muted);margin-top:10px}.club-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.club-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px;transition:transform .2s,box-shadow .2s}.club-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000080;border-color:var(--color-accent)}.club-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid var(--color-border)}.club-name-section{display:flex;align-items:center;gap:12px;flex:1}.club-name-section h3{margin:0;font-size:18px}.club-name-section h3 a{color:var(--color-text-heading);text-decoration:none;transition:color .2s}.club-name-section h3 a:hover{color:var(--color-accent)}.club-abbreviation{padding:4px 8px;background-color:var(--color-bg-shape-dim);border-radius:4px;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase}.club-registered-date{font-size:13px;color:var(--color-text-muted);white-space:nowrap}.club-actions{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 768px){.event-detail-header,.event-title-section{flex-direction:column;align-items:flex-start}.event-actions{width:100%}.event-actions button,.event-actions a{flex:1}.event-info-row{flex-direction:column;gap:4px}.event-label{min-width:unset}.tournament-list,.tournament-grid,.team-list,.club-list{grid-template-columns:1fr}.tab-content{padding:20px}.club-header{flex-direction:column;gap:10px}.club-registered-date{align-self:flex-start}}.tournament-card-meta{padding:12px 16px;border-top:1px solid var(--color-border);background-color:var(--color-bg-shape-dim)}.team-capacity{display:inline-block;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:500;background-color:#42a5f533;color:#42a5f5}.team-capacity.capacity-full{background-color:#ef535033;color:#ef5350}.public-event-container{min-height:100vh;background-color:var(--color-bg-primary)}.event-hero{background:var(--color-accent-gradient);color:#fff;padding:60px 20px;box-shadow:0 2px 8px #0000004d}.event-hero-content{max-width:1200px;margin:0 auto}.event-title-section{display:flex;align-items:center;gap:20px;margin-bottom:30px;flex-wrap:wrap}.event-title-section h1{margin:0;font-size:42px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2)}.status-badge{padding:8px 18px;border-radius:20px;font-size:14px;font-weight:600;text-transform:uppercase;background-color:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-badge-draft,.status-badge-upcoming{background-color:#ffffff4d}.status-badge-ongoing{background-color:#ffc1074d}.status-badge-completed{background-color:#4caf504d}.status-badge-cancelled{background-color:#f443364d}.event-meta{display:flex;flex-direction:column;gap:15px}.meta-item{display:flex;align-items:center;gap:10px;font-size:18px}.meta-icon{font-size:24px}.event-content{max-width:1200px;margin:-30px auto 0;padding:0 20px 60px}.event-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;margin-bottom:30px;box-shadow:0 2px 8px #0000004d}.event-section h2{margin:0 0 20px;font-size:28px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;border-bottom:2px solid var(--color-border);padding-bottom:10px}.event-section h3{margin:0 0 10px;font-size:20px;color:var(--color-text-heading)}.event-description{font-size:16px;line-height:1.8;color:var(--color-text-muted);margin:0}.signup-deadline{background-color:var(--color-warning-bg);border-left:4px solid var(--color-warning)}.signup-deadline h3{color:var(--color-warning)}.signup-deadline p{font-size:18px;font-weight:600;color:var(--color-warning);margin:0}.empty-message{text-align:center;color:var(--color-text-muted);font-size:16px;padding:40px 20px}.tournament-grid,.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.tournament-card,.team-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px;transition:transform .2s,box-shadow .2s;cursor:pointer;box-shadow:0 2px 8px #0000004d}.tournament-card:hover,.team-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000004d;border-color:var(--color-accent)}.tournament-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid var(--color-border)}.tournament-header h3,.team-card h3{margin:0;font-size:20px;color:var(--color-text-heading)}.tournament-status{padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;background:#5ea0f733;color:var(--color-text-heading)}.tournament-details,.team-details{margin-bottom:15px}.detail-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.detail-label{font-weight:600;color:var(--color-text-muted);text-transform:uppercase;font-size:13px}.detail-value{color:var(--color-text-primary)}.btn-view-tournament{display:block;width:100%;padding:10px;background:var(--color-accent-gradient);color:#fff;text-align:center;text-decoration:none;border-radius:4px;font-weight:500;transition:all .2s}.btn-view-tournament:hover{transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.loading,.error-message{padding:40px 20px;text-align:center;font-size:18px}.error-message{background-color:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error);border-radius:8px;margin:20px}.external-tournaments-list{display:flex;flex-direction:column;gap:2rem}.external-tournament-section{background:var(--color-card-bg, #fff);border:1px solid var(--color-border, #e5e7eb);border-radius:8px;overflow:hidden}.external-tournament-section h3{margin:0;padding:1rem 1.25rem;background:var(--color-secondary-bg, #f9fafb);border-bottom:1px solid var(--color-border, #e5e7eb);font-size:1.125rem}@media (max-width: 768px){.event-hero{padding:40px 20px}.event-title-section h1{font-size:32px}.event-meta{font-size:16px}.meta-icon{font-size:20px}.event-section{padding:20px}.event-section h2{font-size:24px}.tournament-grid,.team-grid{grid-template-columns:1fr}}.game-selector{margin-bottom:24px}.game-selector .form-select{width:100%;padding:12px 40px 12px 16px;font-size:14px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}.game-selector .form-select:hover:not(:disabled){border-color:var(--color-accent)}.game-selector .form-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #c80f391a}.game-selector .form-select:disabled{opacity:.6;cursor:not-allowed}.game-selector .form-select.error{border-color:var(--color-error)}.game-selector .form-select option{padding:8px}.loading-state{padding:40px;text-align:center;color:var(--color-text-muted)}.form-header{margin-bottom:30px}.form-header h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.event-context{color:var(--color-text-muted);font-size:14px;margin:0}.tournament-form{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d}.ffa-settings-section{margin-bottom:32px;padding:24px;background:var(--color-bg-shape);border-radius:8px;border:1px solid var(--color-border)}.section-title{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}@media (max-width: 768px){.tournament-form{padding:24px}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.match-card{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);overflow:hidden;transition:border-color .2s,box-shadow .2s}.match-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a}.match-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.match-card-info{display:flex;gap:12px;align-items:center}.match-card-round{font-weight:600;color:var(--color-text-heading);font-size:14px}.match-card-number{font-size:13px;color:var(--color-text-muted);padding:2px 8px;background:var(--color-bg-hover);border-radius:4px}.match-card-group{font-size:12px;font-weight:600;color:var(--color-accent);padding:2px 8px;background:var(--color-accent-bg, rgba(59, 130, 246, .1));border-radius:4px}.match-card-header-right{display:flex;align-items:center;gap:12px}.match-card-team-count{display:flex;align-items:baseline;gap:6px}.match-card-team-count .count-value{font-size:14px;font-weight:700;color:var(--color-text-muted)}.match-card-team-count .count-label{font-size:14px;color:var(--color-text-muted)}.match-card-body{padding:16px}.best-of-matchup{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.matchup-team{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--color-bg-shape);border-radius:6px;transition:background-color .2s}.matchup-team.winner{background:var(--color-success-bg);border:1px solid var(--color-success)}.matchup-team.placeholder{border:1px dashed var(--color-border);background:var(--color-bg-hover)}.matchup-team .team-name{font-size:14px;font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.matchup-team.placeholder .team-name{font-style:italic;color:var(--color-text-muted)}.matchup-team .team-score{font-size:18px;font-weight:700;color:var(--color-text-heading);min-width:24px;text-align:center}.matchup-team.winner .team-score{color:var(--color-success)}.matchup-vs{font-size:12px;font-weight:600;color:var(--color-text-muted);text-align:center;padding:4px 0;text-transform:uppercase}.map-progress{display:flex;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--color-border);margin-top:8px}.map-progress .map-label{font-size:12px;color:var(--color-text-muted)}.map-progress .map-count{font-size:12px;font-weight:600;color:var(--color-text-primary);padding:2px 6px;background:var(--color-bg-shape-dim);border-radius:4px}.ffa-participants{margin-bottom:16px}.top-placements{display:flex;flex-direction:column;gap:8px}.placement-item{display:grid;grid-template-columns:32px 1fr auto;gap:12px;align-items:center;padding:8px 12px;background:var(--color-bg-shape);border-radius:6px}.placement-position{font-size:16px;font-weight:700;color:var(--color-text-heading);text-align:center}.placement-item.placement-1 .placement-position{color:#d97706}.placement-item.placement-2 .placement-position{color:#6b7280}.placement-item.placement-3 .placement-position{color:#c2410c}.placement-team{font-size:14px;font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.placement-team.placeholder{font-style:italic;color:var(--color-text-muted)}.placement-points{font-size:13px;font-weight:600;color:var(--color-accent)}.participants-list{display:flex;flex-direction:column;gap:6px}.participant-chip{font-size:12px;padding:4px 10px;background:var(--color-bg-shape);border-radius:4px;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.participant-chip.placeholder{font-style:italic;color:var(--color-text-muted);background:var(--color-bg-hover);border:1px dashed var(--color-border)}.more-count{font-size:13px;padding:4px 10px;color:var(--color-text-muted);font-style:italic}.match-card-schedule{display:flex;gap:8px;font-size:13px}.match-card-schedule .schedule-label{color:var(--color-text-muted)}.match-card-schedule .schedule-value{color:var(--color-text-primary)}.match-card-actions{display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--color-border);background:var(--color-bg-shape)}@media (max-width: 768px){.match-card-actions{flex-direction:column}.match-card-actions button{width:100%}.placement-item{grid-template-columns:28px 1fr auto;padding:6px 10px}}.map-score-editor{width:100%}.map-score-editor .score-save-error{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--color-error-bg, rgba(220, 53, 69, .1));border:1px solid var(--color-error);border-radius:4px;color:var(--color-error);font-size:13px;margin-bottom:12px}.map-score-editor .btn-dismiss{background:none;border:none;color:inherit;font-size:18px;cursor:pointer;padding:0;line-height:1;opacity:.7}.map-score-editor .btn-dismiss:hover{opacity:1}.map-score-editor .score-table{width:100%;border-collapse:collapse;border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.map-score-editor .score-table th{background:var(--color-bg-shape);padding:10px 12px;text-align:center;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border)}.map-score-editor .score-table th:first-child{text-align:left}.map-score-editor .score-table td{padding:8px 12px;border-bottom:1px solid var(--color-border);vertical-align:middle}.map-score-editor .score-table tr:last-child td{border-bottom:none}.map-score-editor .map-name-cell{font-weight:500;color:var(--color-text-primary);min-width:100px}.map-score-editor .winner-cell{text-align:center;white-space:nowrap;min-width:140px}.map-score-editor .winner-buttons{display:flex;gap:4px;justify-content:center}.map-score-editor .winner-btn{flex:1;max-width:70px;padding:6px 8px;border:1px solid var(--color-border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s;background:var(--color-bg-shape);color:var(--color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-score-editor .winner-btn:hover:not(:disabled):not(.selected){border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-bg, rgba(200, 15, 57, .08))}.map-score-editor .winner-btn.selected{background:var(--color-success);border-color:var(--color-success);color:#fff;font-weight:600}.map-score-editor .winner-btn:disabled{opacity:.5;cursor:not-allowed}.map-score-editor .winner-btn:active:not(:disabled){transform:scale(.97)}.map-score-editor .score-cell{text-align:center;white-space:nowrap}.map-score-editor .score-input{width:60px;padding:8px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;text-align:center;background:var(--color-bg-shape);color:var(--color-text-primary);-moz-appearance:textfield}.map-score-editor .score-input::-webkit-outer-spin-button,.map-score-editor .score-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.map-score-editor .score-input:focus{outline:none;border-color:var(--color-accent)}.map-score-editor .score-input:disabled{opacity:.6;cursor:not-allowed}.map-score-editor .score-btn{width:32px;height:32px;border:1px solid var(--color-border);border-radius:4px;font-size:18px;font-weight:600;cursor:pointer;transition:all .15s;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.map-score-editor .score-btn-minus{background:var(--color-bg-shape);color:var(--color-text-muted);margin-right:6px}.map-score-editor .score-btn-minus:hover:not(:disabled){background:var(--color-error-bg, rgba(220, 53, 69, .15));border-color:var(--color-error);color:var(--color-error)}.map-score-editor .score-btn-plus{background:var(--color-bg-shape);color:var(--color-text-muted);margin-left:6px}.map-score-editor .score-btn-plus:hover:not(:disabled){background:var(--color-success-bg, rgba(40, 167, 69, .15));border-color:var(--color-success);color:var(--color-success)}.map-score-editor .score-btn:disabled{opacity:.4;cursor:not-allowed}.map-score-editor .score-btn:active:not(:disabled){transform:scale(.95)}.map-score-editor .save-col{width:60px;text-align:center;padding:8px!important}.map-score-editor .save-col th{width:60px}.map-score-editor .btn-inline-save{padding:6px 12px;background:var(--color-accent-gradient);color:#fff;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.map-score-editor .btn-inline-save:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #c80f394d}.map-score-editor .btn-inline-save:disabled{opacity:.6;cursor:not-allowed}.map-score-editor .score-editor-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.map-score-editor .form-hint{font-size:13px;color:var(--color-text-muted);margin:0}.map-score-editor .saving-indicator{font-size:12px;color:var(--color-accent);font-weight:500;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width: 600px){.map-score-editor .score-btn{width:28px;height:28px;font-size:16px}.map-score-editor .score-input{width:48px;padding:6px;font-size:13px}.map-score-editor .score-table th,.map-score-editor .score-table td{padding:6px 8px}.map-score-editor .btn-inline-save{padding:4px 8px;font-size:11px}.map-score-editor .winner-cell{min-width:100px}.map-score-editor .winner-btn{max-width:50px;padding:4px 6px;font-size:10px}}.match-result-entry{background:var(--color-bg-card);border-radius:8px;padding:24px}.match-result-entry .entry-header{margin-bottom:20px}.match-result-entry .entry-header h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.match-result-entry .entry-description{font-size:14px;color:var(--color-text-muted);margin:0}.match-result-entry .error-message{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.match-result-entry .btn-close{background:none;border:none;font-size:18px;color:inherit;cursor:pointer;padding:0;margin-left:12px;line-height:1}.match-result-entry .btn-close:hover{opacity:.7}.match-result-entry .form-section{margin-bottom:24px}.match-result-entry .form-section h4{font-size:14px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.match-result-entry .results-table-container{border:1px solid var(--color-border);border-radius:8px;overflow-x:auto;margin-bottom:20px}.match-result-entry .results-table{width:100%;border-collapse:collapse;min-width:500px}.match-result-entry .results-table th{background:var(--color-bg-shape);padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border);white-space:nowrap}.match-result-entry .results-table td{padding:10px 16px;border-bottom:1px solid var(--color-border);vertical-align:middle}.match-result-entry .results-table tr:last-child td{border-bottom:none}.match-result-entry .results-table tr:hover{background:var(--color-bg-hover)}.match-result-entry .team-cell{min-width:150px}.match-result-entry .team-name{font-weight:500;color:var(--color-text-primary)}.match-result-entry .placement-col{width:80px;text-align:center}.match-result-entry .placement-col input{width:60px;padding:8px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;text-align:center;background:var(--color-bg-shape);color:var(--color-text-primary)}.match-result-entry .placement-col input:focus{outline:none;border-color:var(--color-accent)}.match-result-entry .bonus-col{width:90px;text-align:center}.match-result-entry .bonus-col input{width:70px;padding:8px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;text-align:center;background:var(--color-bg-shape);color:var(--color-text-primary)}.match-result-entry .bonus-col input:focus{outline:none;border-color:var(--color-accent)}.match-result-entry .points-col{width:100px;text-align:right}.match-result-entry .calculated-points{font-weight:600;color:var(--color-accent);font-size:14px}.match-result-entry .complete-option{padding:16px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:20px}.match-result-entry .winner-options{display:flex;flex-direction:column;gap:12px}.match-result-entry .winner-option{display:flex;align-items:center;gap:12px;padding:16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--color-bg-shape)}.match-result-entry .winner-option:hover{border-color:var(--color-accent);background:var(--color-bg-shape-dim)}.match-result-entry .winner-option.selected{border-color:var(--color-success);background:var(--color-success-bg)}.match-result-entry .winner-option input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-success)}.match-result-entry .winner-option .team-name{font-size:16px;font-weight:600;color:var(--color-text-primary)}.match-result-entry .winner-option:has(input:disabled){opacity:.5;cursor:not-allowed}.match-result-entry .forfeit-option{padding:16px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:20px}.match-result-entry .forfeit-note{color:var(--color-warning);font-weight:500}.match-result-entry .checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text-primary)}.match-result-entry .checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.match-result-entry .complete-option .hint,.match-result-entry .forfeit-option .hint{display:block;margin-top:8px;margin-left:28px;font-size:13px;color:var(--color-text-muted)}.match-result-entry .entry-actions{display:flex;gap:12px;justify-content:flex-end}.match-result-entry.confirmation{padding:24px}.match-result-entry .confirmation-message{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);padding:20px;border-radius:8px;margin-bottom:20px}.match-result-entry .confirmation-message h3{margin:0 0 12px;font-size:16px;color:var(--color-warning)}.match-result-entry .confirmation-message p{margin:8px 0;color:var(--color-text-primary);font-size:14px}.match-result-entry .confirmation-message .warning{margin-top:16px;font-weight:600;color:var(--color-error)}@media (max-width: 768px){.match-result-entry{padding:16px}.match-result-entry .results-table th,.match-result-entry .results-table td{padding:8px 12px}.match-result-entry .placement-col input,.match-result-entry .bonus-col input{width:50px;padding:6px}.match-result-entry .winner-option{padding:12px}.match-result-entry .winner-option .team-name{font-size:14px}.match-result-entry .entry-actions{flex-direction:column-reverse}.match-result-entry .entry-actions button{width:100%}}.match-actions-modal.single-view{background:var(--color-bg-card);border-radius:8px;width:100%;max-width:680px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 40px #0000004d}.modal-header-unified{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.modal-header-unified h2{margin:0;font-size:18px;font-weight:600;color:var(--color-text-heading)}.modal-header-unified .btn-close{background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.modal-header-unified .btn-close:hover{color:var(--color-text-primary)}.match-actions-modal .modal-error{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.2);color:#dc2626;font-size:13px}.match-actions-modal .modal-error button{background:none;border:none;color:#dc2626;font-size:18px;cursor:pointer;padding:0 4px}.modal-body-unified{padding:20px;overflow-y:auto;flex:1}.top-section{display:flex;gap:24px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.info-column{flex:1;display:flex;flex-direction:column;gap:12px}.info-row{display:flex;align-items:center;gap:8px}.info-label{font-size:13px;color:var(--color-text-muted);font-weight:500;min-width:75px}.info-value{font-size:13px;color:var(--color-text-primary);font-weight:600}.info-value.muted{color:var(--color-text-muted);font-weight:400;font-style:italic}.info-separator{color:var(--color-text-muted);margin:0 4px}.match-actions-modal .inline-input{padding:6px 10px;font-size:13px;min-width:140px;flex:0 1 auto}.match-actions-modal .inline-input.small{min-width:100px}.match-actions-modal .btn-sm{padding:6px 12px;font-size:12px}.actions-column{display:flex;flex-direction:column;gap:8px;min-width:150px}.actions-column .btn{width:100%}.action-row{display:flex;gap:8px}.action-row .btn{flex:1}.btn-warning{background:#f59e0b26!important;border:1px solid rgba(245,158,11,.3)!important;color:#d97706!important}.btn-warning:hover:not(:disabled){background:#f59e0b40!important}.dropdown-container{position:relative;flex:1}.dropdown-menu{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:100;overflow:hidden}.dropdown-header{padding:8px 12px;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--color-text-muted);background:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.dropdown-menu>button{display:block;width:100%;padding:10px 12px;text-align:left;background:none;border:none;font-size:13px;color:var(--color-text-primary);cursor:pointer;transition:background .15s}.dropdown-menu>button:hover{background:var(--color-bg-shape)}.team-picker-panel{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;margin-bottom:16px;overflow:hidden}.picker-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--color-bg-card);border-bottom:1px solid var(--color-border);font-size:13px;font-weight:500;color:var(--color-text-primary)}.picker-header button{background:none;border:none;font-size:18px;color:var(--color-text-muted);cursor:pointer}.picker-loading,.picker-empty{padding:16px;text-align:center;color:var(--color-text-muted);font-size:13px}.picker-list{display:flex;flex-wrap:wrap;gap:8px;padding:12px}.picker-item{padding:8px 14px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;font-size:13px;color:var(--color-text-primary);cursor:pointer;transition:all .15s}.picker-item:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.picker-item:disabled{opacity:.5;cursor:not-allowed}.picker-item .seed{margin-left:6px;font-size:11px;color:var(--color-text-muted)}.add-map-section{display:flex;align-items:center;gap:10px;margin-bottom:16px}.add-map-section .section-label{font-size:13px;font-weight:500;color:var(--color-text-muted);white-space:nowrap}.add-map-section .form-input{flex:1;padding:8px 12px;font-size:13px}.map-scores-table{border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.map-scores-table table{width:100%;border-collapse:collapse}.map-scores-table th{padding:10px 12px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);background:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.map-scores-table td{padding:8px 10px;border-bottom:1px solid var(--color-border);vertical-align:middle}.map-scores-table tr:last-child td{border-bottom:none}.map-scores-table tr.played{background:#0596690d}.map-scores-table .map-name{font-weight:500;color:var(--color-text-primary);font-size:13px}.winner-cell .winner-buttons{display:flex;gap:4px}.winner-btn{padding:4px 8px;font-size:11px;font-weight:500;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-card);color:var(--color-text-muted);cursor:pointer;transition:all .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70px}.winner-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.winner-btn.selected{background:var(--color-success);border-color:var(--color-success);color:#fff}.winner-btn:disabled{opacity:.5;cursor:not-allowed}.score-cell .score-controls{display:flex;align-items:center;gap:2px}.score-btn{width:24px;height:24px;padding:0;font-size:14px;font-weight:600;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-shape);color:var(--color-text-secondary);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.score-btn:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.score-btn:disabled{opacity:.4;cursor:not-allowed}.score-input{width:44px;padding:4px;text-align:center;font-size:14px;font-weight:600;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-shape);color:var(--color-text-primary)}.score-input::-webkit-inner-spin-button,.score-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.score-input[type=number]{-moz-appearance:textfield}.delete-cell{width:28px;text-align:center}.btn-remove-map{width:22px;height:22px;padding:0;font-size:14px;background:none;border:1px solid transparent;border-radius:4px;color:var(--color-text-muted);cursor:pointer;transition:all .15s}.btn-remove-map:hover:not(:disabled){background:#ef44441a;border-color:#ef44444d;color:#dc2626}.btn-remove-map:disabled{opacity:.3;cursor:not-allowed}@media (max-width: 640px){.match-actions-modal.single-view{max-width:100%;margin:0;border-radius:0;max-height:100vh}.top-section{flex-direction:column;gap:16px}.actions-column{flex-direction:row;flex-wrap:wrap}.actions-column .btn{width:auto;flex:1}.action-row{width:100%}.info-row{align-items:flex-start;gap:6px}.match-actions-modal .inline-input{width:100%;min-width:unset}.winner-btn{max-width:55px;font-size:10px;padding:3px 6px}.score-input{width:38px}.score-btn{width:22px;height:22px}}.compact-match-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;padding:10px 12px;cursor:pointer;transition:all .15s ease}.compact-match-item:hover{background:var(--color-bg-shape);border-color:var(--color-text-muted)}.compact-match-item.selected{background:var(--color-accent-bg);border-color:var(--color-accent)}.compact-match-item.in-progress{border-left:3px solid var(--color-warning, #f59e0b)}.compact-match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.compact-match-number{font-size:11px;font-weight:500;color:var(--color-text-muted)}.compact-match-live{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--color-warning, #f59e0b);background:#f59e0b26;padding:2px 6px;border-radius:3px;letter-spacing:.5px}.compact-match-status{font-size:10px;font-weight:600;text-transform:uppercase}.compact-match-teams{display:flex;flex-direction:column;gap:4px}.compact-team-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.compact-team-name{font-size:13px;font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.compact-team-scores{display:flex;align-items:center;gap:4px;flex-shrink:0}.compact-map-wins{font-size:14px;font-weight:700;color:var(--color-text-muted);min-width:14px;text-align:center}.compact-map-wins.leading{color:var(--color-success)}.compact-map-score{font-size:11px;font-weight:500;color:var(--color-text-muted);opacity:.7}.compact-team-score{font-size:14px;font-weight:700;color:var(--color-text-muted);min-width:20px;text-align:right}.compact-team-row.leading .compact-team-name,.compact-team-row.leading .compact-team-score{color:var(--color-success)}.compact-team-row.leading .compact-map-score{color:var(--color-success);opacity:.8}.compact-match-ffa{font-size:13px;color:var(--color-text-secondary)}.compact-ffa-participants{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.compact-ffa-chip{display:inline-block;padding:2px 6px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px;font-size:11px;font-weight:500;color:var(--color-text-primary);max-width:100px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-ffa-chip.placeholder{color:var(--color-text-muted);font-style:italic;border-style:dashed}.compact-ffa-more{font-size:11px;font-weight:600;color:var(--color-text-muted);padding:2px 4px}.transition-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.transition-modal{background:var(--color-bg-card);border-radius:8px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000080;border:1px solid var(--color-border)}.transition-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--color-border)}.transition-modal-header h2{margin:0;font-size:20px;color:var(--color-text-heading)}.transition-modal-header .modal-close{background:none;border:none;font-size:28px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.transition-modal-header .modal-close:hover:not(:disabled){background-color:var(--color-bg-shape-dim);color:var(--color-text-primary)}.transition-modal-header .modal-close:disabled{opacity:.5;cursor:not-allowed}.transition-modal-body{padding:24px}.tournament-name{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 20px}.loading-state,.error-state{padding:40px;text-align:center;color:var(--color-text-muted)}.error-state{color:var(--color-error);background:var(--color-error-bg);border-radius:6px;padding:16px;margin-bottom:16px}.league-progress{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;padding:16px;margin-bottom:20px}.league-progress .progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.league-progress .progress-label{font-size:14px;font-weight:600;color:var(--color-text-primary)}.league-progress .progress-value{font-size:14px;color:var(--color-text-muted)}.league-progress .progress-bar{height:8px;background:var(--color-bg-shape-dim);border-radius:4px;overflow:hidden}.league-progress .progress-fill{height:100%;background:var(--color-accent);border-radius:4px;transition:width .3s ease}.progress-warning{margin:12px 0 0;font-size:13px;color:var(--color-warning)}.progress-success{margin:12px 0 0;font-size:13px;color:var(--color-success)}.config-section{margin-bottom:20px}.config-label{display:block;font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:8px}.format-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.format-option{display:flex;flex-direction:column;align-items:flex-start;padding:16px;background:var(--color-bg-shape);border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s;text-align:left}.format-option:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-bg-shape-dim)}.format-option.selected{border-color:var(--color-accent);background:#0070f31a}.format-option:disabled{opacity:.5;cursor:not-allowed}.format-name{font-size:14px;font-weight:600;color:var(--color-text-heading);margin-bottom:4px}.format-desc{font-size:12px;color:var(--color-text-muted)}.config-select{width:100%;padding:10px 12px;font-size:14px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary)}.config-select:focus{outline:none;border-color:var(--color-accent)}.config-select:disabled{opacity:.5;cursor:not-allowed}.config-checkbox{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--color-text-primary);cursor:pointer}.config-checkbox input{width:16px;height:16px;cursor:pointer}.config-checkbox input:disabled{cursor:not-allowed}.super-final-options{margin-top:12px;padding-left:24px}.standings-preview{margin-top:24px}.standings-preview h3{font-size:14px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.standings-table{width:100%;border-collapse:collapse;font-size:13px}.standings-table th,.standings-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--color-border)}.standings-table th{background:var(--color-bg-shape);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;font-size:11px}.standings-table tr.qualifying{background:#4caf500d}.standings-table tr.eliminated{opacity:.6}.status-qualifying{color:var(--color-success);font-weight:500}.status-eliminated{color:var(--color-text-muted)}.status-bracket{font-weight:500;padding:2px 8px;border-radius:4px;font-size:11px}.status-bracket.status-upper{background:#0070f326;color:#5ea0f7}.status-bracket.status-lower{background:#ff980026;color:#ffb74d}.confirmation-content{text-align:center}.confirmation-title{font-size:15px;color:var(--color-text-primary);margin:0 0 24px}.confirmation-title strong{color:var(--color-text-heading)}.confirmation-summary{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;padding:16px;margin-bottom:24px}.summary-item{display:flex;justify-content:space-between;padding:8px 0}.summary-item:not(:last-child){border-bottom:1px solid var(--color-border)}.summary-label{font-size:14px;color:var(--color-text-muted)}.summary-value{font-size:14px;font-weight:600;color:var(--color-text-heading)}.qualifying-teams{text-align:left;margin-bottom:24px}.qualifying-teams h4{font-size:14px;font-weight:600;color:var(--color-text-primary);margin:0 0 12px}.qualifying-teams ul{list-style:none;padding:0;margin:0;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;max-height:200px;overflow-y:auto}.qualifying-teams li{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--color-border)}.qualifying-teams li:last-child{border-bottom:none}.team-rank{font-size:13px;font-weight:600;color:var(--color-text-muted);min-width:30px}.team-name{flex:1;font-size:14px;color:var(--color-text-primary)}.bracket-assignment{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.bracket-assignment.upper{background:#0070f326;color:#5ea0f7}.bracket-assignment.lower{background:#ff980026;color:#ffb74d}.warning-text{padding:12px 16px;background:var(--color-warning-bg);border-radius:6px;color:var(--color-warning);font-size:13px;text-align:left;margin:0}.transition-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--color-border)}@media (max-width: 768px){.transition-modal{max-width:100%;max-height:100vh;border-radius:0}.transition-modal-header,.transition-modal-body,.transition-modal-footer{padding:16px}.format-options{grid-template-columns:1fr}.standings-table{font-size:12px}.standings-table th,.standings-table td{padding:8px}}.bracket-node{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:8px;padding:12px;min-width:200px;max-width:250px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000004d}.bracket-node:hover{transform:translateY(-2px);box-shadow:0 4px 12px #c80f3966}.bracket-node:focus{outline:2px solid var(--color-accent);outline-offset:2px}.bracket-node-completed{background:var(--color-success-bg)}.bracket-node-in-progress{border-color:var(--color-warning);background:var(--color-warning-bg)}.bracket-node-scheduled{border-color:var(--color-text-heading);background:#5ea0f71a}.bracket-node-forfeited{border-color:var(--color-error);background:var(--color-error-bg)}.bracket-node-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;color:var(--color-text-muted);flex-wrap:wrap;gap:4px}.bracket-node-round{font-weight:600;color:var(--color-text-primary)}.bracket-node-type{text-transform:capitalize;padding:2px 6px;background:var(--color-bg-shape);border-radius:4px;font-size:10px;color:var(--color-text-muted)}.bracket-node-status{text-transform:capitalize;font-weight:600;padding:2px 6px;border-radius:4px;font-size:10px}.bracket-node-status-completed{background:var(--color-success-bg);color:var(--color-success)}.bracket-node-status-in_progress{background:var(--color-warning-bg);color:var(--color-warning)}.bracket-node-status-scheduled{background:#5ea0f733;color:var(--color-text-heading)}.bracket-node-status-forfeited{background:var(--color-error-bg);color:var(--color-error)}.bracket-node-teams{display:flex;flex-direction:column;gap:6px}.bracket-node-team{display:flex;justify-content:space-between;align-items:center;padding:8px;background:var(--color-bg-shape);border-radius:4px;border:1px solid var(--color-border);transition:background .2s ease}.bracket-node-team-name{font-weight:500;color:var(--color-text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bracket-node-team-name.tbd{color:var(--color-text-muted);font-style:italic;font-size:12px}.bracket-node-team-name.placeholder{color:var(--color-text-heading);font-style:italic;font-size:12px;opacity:.8}.bracket-node-team-score{font-weight:700;font-size:18px;margin-left:8px;min-width:24px;text-align:right;color:var(--color-text-primary)}.bracket-node-winner{background:var(--color-success-bg);border-color:var(--color-success)}.bracket-node-winner .bracket-node-team-name{color:var(--color-success);font-weight:700}.bracket-node-winner .bracket-node-team-score{color:var(--color-success)}.bracket-node-loser{opacity:.6}.bracket-node-loser .bracket-node-team-name{text-decoration:line-through}.bracket-node-footer{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border);font-size:11px;color:var(--color-text-muted)}.bracket-node-time{display:block;font-style:italic}.bracket-node-maps{display:block;font-weight:500;color:var(--color-text-primary)}@media (max-width: 768px){.bracket-node{min-width:160px;max-width:180px;padding:10px}.bracket-node-header{font-size:10px}.bracket-node-team{padding:6px}.bracket-node-team-name{font-size:13px}.bracket-node-team-score{font-size:16px}.bracket-node-footer{font-size:10px}}.league-standings{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d}.league-standings-title{font-size:24px;font-weight:700;margin:0 0 12px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.league-standings-note{margin:0 0 20px;color:var(--color-text-muted);font-size:14px;font-style:italic}.league-standings-empty{text-align:center;padding:60px 20px;color:var(--color-text-muted);font-size:16px}.league-standings-table-container{overflow-x:auto}.league-standings-table{width:100%;border-collapse:collapse}.league-standings-table thead{background:var(--color-bg-shape);border-bottom:2px solid var(--color-border)}.league-standings-table th{padding:14px 16px;text-align:left;font-weight:600;color:var(--color-text-muted);font-size:13px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.league-standings-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.league-standings-table th.sortable:hover{background:var(--color-bg-shape-dim);color:var(--color-text-primary)}.league-standings-table tbody tr{border-bottom:1px solid var(--color-border);transition:background .2s ease}.league-standings-table tbody tr:hover{background:var(--color-bg-shape)}.league-standings-table tbody tr:last-child{border-bottom:none}.league-standings-table tbody tr.highlighted{background:var(--color-success-bg);border-top:1px solid var(--color-success);border-bottom:1px solid var(--color-success)}.league-standings-table tbody tr.highlighted:hover{background:#3ccc3c40}.league-standings-table tbody tr.highlighted td{font-weight:600;color:var(--color-success)}.league-standings-table td{padding:14px 16px;font-size:14px;color:var(--color-text-primary)}.rank-cell{width:80px}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;font-weight:700;font-size:15px;background:var(--color-bg-shape);color:var(--color-text-primary);border:2px solid var(--color-border)}.rank-badge.rank-1{background:linear-gradient(135deg,gold,#ffed4e);color:#1a1033;border-color:gold;box-shadow:0 2px 8px #ffd70066}.rank-badge.rank-2{background:linear-gradient(135deg,silver,#e8e8e8);color:#1a1033;border-color:silver;box-shadow:0 2px 8px #c0c0c066}.rank-badge.rank-3{background:linear-gradient(135deg,#cd7f32,#e89a5a);color:#fff;border-color:#cd7f32;box-shadow:0 2px 8px #cd7f3266}.team-cell{font-weight:500;min-width:150px}.wins-cell{color:var(--color-success);font-weight:600;text-align:center;width:80px}.losses-cell{color:var(--color-error);font-weight:600;text-align:center;width:80px}.points-cell{font-weight:700;text-align:center;width:100px;color:var(--color-text-heading)}.matches-cell{text-align:center;width:100px;color:var(--color-text-muted)}@media (max-width: 768px){.league-standings{padding:24px;border-radius:8px}.league-standings-title{font-size:20px}.league-standings-note,.league-standings-table{font-size:12px}.league-standings-table th,.league-standings-table td{padding:10px 12px}.league-standings-table th{font-size:11px}.rank-badge{width:32px;height:32px;font-size:13px}.team-cell{min-width:120px}.rank-cell,.wins-cell,.losses-cell,.points-cell,.matches-cell{width:auto}}@media (max-width: 480px){.league-standings{padding:20px}.league-standings-title{font-size:18px}.league-standings-table th,.league-standings-table td{padding:8px 10px}.rank-badge{width:28px;height:28px;font-size:12px}.team-cell{min-width:100px}}.super-final-display{background:linear-gradient(135deg,var(--color-bg-card) 0%,var(--color-bg-shape) 100%);border:2px solid var(--color-accent);border-radius:16px;padding:32px;margin:32px 0;position:relative;overflow:hidden}.super-final-display:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ffd700,var(--color-accent),#c0c0c0)}.super-final-display.decided{border-color:gold;box-shadow:0 0 30px #ffd7004d}.super-final-header{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:32px}.super-final-trophy{font-size:48px;animation:trophy-glow 2s ease-in-out infinite}@keyframes trophy-glow{0%,to{filter:drop-shadow(0 0 10px rgba(255,215,0,.5))}50%{filter:drop-shadow(0 0 20px rgba(255,215,0,.8))}}.super-final-title{font-size:32px;font-weight:700;margin:0;background:linear-gradient(135deg,#ffd700 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.super-final-format-badge{padding:6px 12px;background:var(--color-accent-bg);border:1px solid var(--color-accent);border-radius:16px;font-size:12px;font-weight:600;color:var(--color-accent)}.super-final-waiting{text-align:center;padding:24px}.super-final-waiting p{font-size:16px;color:var(--color-text-muted);margin-bottom:24px}.waiting-teams{display:flex;align-items:center;justify-content:center;gap:32px}.waiting-team{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 32px;border-radius:12px}.waiting-team.upper{background:#ffd7001a;border:2px dashed rgba(255,215,0,.5)}.waiting-team.lower{background:#c0c0c01a;border:2px dashed rgba(192,192,192,.5)}.waiting-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.waiting-value{font-size:18px;font-weight:600;color:var(--color-text-primary)}.vs-divider{font-size:24px;font-weight:700;color:var(--color-text-muted)}.super-final-matchup{display:flex;align-items:stretch;gap:24px;margin-bottom:24px}.super-final-team{flex:1;display:flex;flex-direction:column;align-items:center;padding:24px;background:var(--color-bg-card);border-radius:12px;border:2px solid var(--color-border);transition:all .3s}.super-final-team.upper{border-color:#ffd70080}.super-final-team.lower{border-color:#c0c0c080}.super-final-team.winner{border-color:gold;background:linear-gradient(135deg,#ffd7001a,#ffed4e0d);box-shadow:0 0 20px #ffd70033}.team-bracket-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.super-final-team.upper .team-bracket-label{color:gold}.super-final-team.lower .team-bracket-label{color:silver}.super-final-team .team-name{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:16px;text-align:center}.team-score{display:flex;flex-direction:column;align-items:center}.score-value{font-size:48px;font-weight:700;color:var(--color-text-heading);line-height:1}.score-label{font-size:12px;color:var(--color-text-muted);margin-top:4px}.advantage-badge{margin-top:12px;padding:4px 12px;background:#ffd70033;border:1px solid #ffd700;border-radius:12px;font-size:12px;font-weight:600;color:gold}.disadvantage-note{margin-top:12px;font-size:12px;color:var(--color-text-muted)}.record-win-btn{margin-top:16px;padding:10px 20px;background:var(--color-accent);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.record-win-btn:hover{background:var(--color-accent-light);transform:translateY(-2px)}.super-final-center{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:120px}.vs-text{font-size:32px;font-weight:700;color:var(--color-text-muted)}.wins-needed{font-size:14px;color:var(--color-text-muted);margin-top:8px}.champion-badge{display:flex;flex-direction:column;align-items:center;margin-top:16px;animation:champion-pulse 1.5s ease-in-out infinite}@keyframes champion-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.champion-icon{font-size:32px}.champion-text{font-size:14px;font-weight:700;color:gold;letter-spacing:2px}.super-final-games{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:24px}.games-label{font-size:14px;font-weight:600;color:var(--color-text-muted)}.games-icons{display:flex;gap:8px}.game-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:14px;font-weight:600;border:2px solid var(--color-border);background:var(--color-bg-card);color:var(--color-text-muted)}.game-icon.upper{border-color:gold;background:#ffd70033;color:gold}.game-icon.lower{border-color:silver;background:#c0c0c033;color:silver}.super-final-winner{text-align:center;padding:24px;background:linear-gradient(135deg,#ffd7001a,#ffed4e0d);border-radius:12px;border:2px solid #ffd700}.winner-celebration{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.celebration-icon{font-size:32px}.winner-name{font-size:28px;font-weight:700;color:gold}.winner-text{font-size:20px;color:var(--color-text-primary)}.super-final-rules{margin-top:24px;padding:16px;background:var(--color-bg-shape);border-radius:8px;border-left:3px solid var(--color-accent)}.super-final-rules h4{font-size:14px;font-weight:600;margin:0 0 12px;color:var(--color-text-primary)}.super-final-rules ul{list-style:none;padding:0;margin:0}.super-final-rules li{padding:6px 0 6px 20px;position:relative;font-size:13px;color:var(--color-text-muted)}.super-final-rules li:before{content:"•";position:absolute;left:0;color:var(--color-accent)}@media (max-width: 768px){.super-final-display{padding:24px 16px}.super-final-header{flex-direction:column;gap:12px}.super-final-trophy{font-size:40px}.super-final-title{font-size:24px}.super-final-matchup{flex-direction:column;gap:16px}.super-final-center{order:-1;flex-direction:row;gap:16px}.super-final-team .team-name{font-size:20px}.score-value{font-size:36px}.waiting-teams{flex-direction:column;gap:16px}.vs-divider{font-size:18px}.winner-celebration{flex-direction:column}.winner-text{font-size:16px}}.simple-bracket-grid{display:flex;gap:12px;min-width:fit-content;padding:16px}.simple-bracket-round{display:flex;flex-direction:column;min-width:180px}.simple-bracket-round-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-heading);text-align:center;margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid var(--color-accent)}.simple-bracket-round-matches{display:flex;flex-direction:column;flex:1;justify-content:space-around;position:relative}.simple-match{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;margin:4px 0;position:relative;cursor:pointer;transition:all .2s ease}.simple-match:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #c80f3933}.simple-match:focus{outline:2px solid var(--color-accent);outline-offset:2px}.simple-match--completed{border-color:var(--color-success)}.simple-match--in-progress{border-color:var(--color-warning);border-width:2px}.simple-match-team{display:flex;align-items:center;padding:8px 10px;border-bottom:1px solid var(--color-border);min-height:32px}.simple-match-team:last-child{border-bottom:none}.simple-match-team--winner{background:var(--color-success-bg)}.simple-match-team--winner .simple-match-team-name{font-weight:700;color:var(--color-success)}.simple-match-team--loser{opacity:.5}.simple-match-team-seed{font-size:11px;color:var(--color-text-muted);min-width:20px;text-align:center;margin-right:8px;font-weight:600}.simple-match-team-name{flex:1;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary)}.simple-match-team-name--tbd{color:var(--color-text-muted);font-style:italic}.simple-match-team-score{font-size:16px;font-weight:700;min-width:28px;text-align:right;margin-left:8px;color:var(--color-text-primary)}.simple-match-team--winner .simple-match-team-score{color:var(--color-success)}.simple-bracket-connector{display:flex;flex-direction:column;width:0;position:relative;z-index:1}.simple-bracket-connector-header{min-height:22px;margin-bottom:12px;flex-shrink:0}.simple-bracket-connector-body{display:flex;flex-direction:column;flex:1;position:relative}.simple-bracket-connector-pair{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center}.simple-connector-line-h{position:absolute;height:1px;background:var(--color-border);width:12px;right:0;transform:translateY(-50%)}.simple-connector-line-v{position:absolute;width:1px;background:var(--color-border);right:0}.simple-connector-line-out{position:absolute;height:1px;background:var(--color-border);width:12px;right:-12px;transform:translateY(-50%)}.simple-bracket-round-matches--ffa{justify-content:flex-start}.simple-ffa-match-slot{display:flex;flex-direction:column;justify-content:center;min-height:0;margin:8px 0}.simple-ffa-match{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s ease}.simple-ffa-match:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #c80f3933}.simple-ffa-match:focus{outline:2px solid var(--color-accent);outline-offset:2px}.simple-ffa-match--in-progress{border-color:var(--color-warning);border-width:2px}.simple-ffa-match-header{font-size:11px;font-weight:600;color:var(--color-text-heading);padding:6px 10px;background:var(--color-bg-shape);border-bottom:1px solid var(--color-border);text-align:center;text-transform:uppercase;letter-spacing:.5px;border-radius:6px 6px 0 0}.simple-ffa-team{display:flex;align-items:center;padding:5px 10px;border-bottom:1px solid var(--color-border);min-height:28px}.simple-ffa-team:last-child{border-bottom:none}.simple-ffa-team--advancing{background:var(--color-success-bg)}.simple-ffa-team--advancing .simple-ffa-team-name{font-weight:600;color:var(--color-success)}.simple-ffa-position{font-size:11px;font-weight:700;color:var(--color-text-muted);min-width:22px;text-align:center;margin-right:8px}.simple-ffa-team--advancing .simple-ffa-position{color:var(--color-success)}.simple-ffa-team-name{flex:1;font-size:12px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary)}.simple-ffa-team-name--tbd{color:var(--color-text-muted);font-style:italic}.simple-ffa-team-score{font-size:12px;font-weight:600;min-width:32px;text-align:right;margin-left:8px;color:var(--color-text-muted)}.simple-ffa-team--advancing .simple-ffa-team-score{color:var(--color-success)}.simple-bracket-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--color-text-muted);font-size:14px}@media (max-width: 768px){.simple-bracket-round{min-width:160px}.simple-match-team{padding:6px 8px;min-height:28px}.simple-match-team-name{font-size:12px}.simple-match-team-score{font-size:14px}.simple-ffa-team{padding:4px 8px;min-height:24px}.simple-ffa-team-name{font-size:11px}}.split-bracket-view{padding:20px 0}.split-bracket-controls{display:flex;justify-content:flex-end;margin-bottom:20px}.view-mode-toggle{display:flex;gap:4px;background:var(--color-bg-shape);padding:4px;border-radius:8px}.view-mode-btn{padding:8px 16px;border:none;border-radius:6px;background:transparent;color:var(--color-text-muted);font-size:14px;cursor:pointer;transition:all .2s}.view-mode-btn:hover{color:var(--color-text-primary)}.view-mode-btn.active{background:var(--color-accent);color:#fff}.split-bracket-brackets{display:flex;gap:24px;margin-bottom:32px}.split-bracket-brackets.side-by-side{flex-direction:row}.split-bracket-brackets.stacked{flex-direction:column}.split-bracket-simple{display:flex;flex-direction:column;gap:24px;margin-bottom:32px}.split-bracket-section{flex:1;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:12px;overflow:hidden}.split-bracket-section.upper{border-color:#ffd70080}.split-bracket-section.lower{border-color:#c0c0c080}.bracket-section-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--color-border)}.split-bracket-section.upper .bracket-section-header{background:linear-gradient(135deg,#ffd70033,#ffed4e1a)}.split-bracket-section.lower .bracket-section-header{background:linear-gradient(135deg,#c0c0c033,#e8e8e81a)}.bracket-section-title{margin:0;font-size:18px;font-weight:700}.split-bracket-section.upper .bracket-section-title{color:gold}.split-bracket-section.lower .bracket-section-title{color:silver}.bracket-section-stats{font-size:14px;color:var(--color-text-muted)}.bracket-rounds-container{padding:20px;overflow-x:auto}.bracket-rounds{display:flex;gap:24px;min-width:fit-content}.bracket-round{min-width:240px}.bracket-round-title{font-size:14px;font-weight:600;color:var(--color-text-muted);margin:0 0 16px;text-align:center;text-transform:uppercase;letter-spacing:.5px}.bracket-round-matches{display:flex;flex-direction:column;gap:16px}.split-bracket-legend{display:flex;flex-wrap:wrap;gap:20px;padding:16px 20px;background:var(--color-bg-shape);border-radius:8px}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-muted)}.legend-color{width:16px;height:16px;border-radius:4px}.legend-color.upper{background:linear-gradient(135deg,gold,#ffed4e)}.legend-color.lower{background:linear-gradient(135deg,silver,#e8e8e8)}.legend-color.completed{background:var(--color-success)}.legend-color.scheduled{background:var(--color-bg-shape);border:2px solid var(--color-border)}@media (max-width: 1024px){.split-bracket-brackets.side-by-side{flex-direction:column}}@media (max-width: 768px){.split-bracket-view{padding:16px 0}.split-bracket-controls{justify-content:center}.bracket-section-header{flex-direction:column;gap:8px;text-align:center}.bracket-rounds-container{padding:16px}.bracket-round{min-width:200px}.split-bracket-legend{flex-direction:column;gap:12px}}.bracket-view{min-height:100vh;background-color:var(--color-bg-primary);padding:40px 20px}.bracket-view-header{max-width:1400px;margin:0 auto 30px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d}.back-button{background-color:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border);padding:10px 20px;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:20px;transition:all .2s}.back-button:hover{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff;transform:translateY(-1px)}.bracket-view-title{font-size:32px;font-weight:700;margin:0 0 12px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.bracket-view-format{margin:0;color:var(--color-text-muted);font-size:16px}.bracket-view-format strong{color:var(--color-text-heading);text-transform:capitalize}.bracket-view-standings{max-width:1400px;margin:0 auto 30px}.bracket-view-filters{max-width:1400px;margin:0 auto 30px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px 30px;box-shadow:0 2px 8px #0000004d;display:flex;align-items:center;justify-content:space-between;gap:16px}.bracket-view-filters-left{display:flex;align-items:center;gap:16px}.bracket-view-filters label{font-weight:600;color:var(--color-text-primary);font-size:14px}.bracket-view-filters .view-mode-toggle{display:flex;gap:4px;background:var(--color-bg-shape);padding:4px;border-radius:8px}.bracket-view-filters .view-mode-btn{padding:8px 16px;border:none;border-radius:6px;background:transparent;color:var(--color-text-muted);font-size:14px;cursor:pointer;transition:all .2s}.bracket-view-filters .view-mode-btn:hover{color:var(--color-text-primary)}.bracket-view-filters .view-mode-btn.active{background:var(--color-accent);color:#fff}.match-filter-select{min-width:200px}.bracket-view-container{max-width:1400px;margin:0 auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d;overflow-x:auto}.bracket-grid{display:flex;gap:60px;min-width:fit-content;padding:20px}.bracket-round{display:flex;flex-direction:column;gap:20px;min-width:280px}.bracket-round-title{font-size:18px;font-weight:700;color:var(--color-text-heading);text-align:center;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--color-accent)}.bracket-round-matches{display:flex;flex-direction:column;gap:50px;flex:1;justify-content:space-around}.bracket-view-list{max-width:1400px;margin:0 auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d}.bracket-view .match-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.no-matches{text-align:center;padding:60px 20px;color:var(--color-text-muted);font-size:16px}.bracket-view-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.bracket-view-loading p{color:var(--color-text-muted);font-size:16px}.spinner{width:50px;height:50px;border:4px solid var(--color-bg-shape);border-top:4px solid var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.bracket-view-error,.bracket-view-empty{max-width:600px;margin:60px auto;text-align:center;padding:60px 40px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 8px #0000004d}.bracket-view-error h2,.bracket-view-empty h2{color:var(--color-text-heading);margin-bottom:16px;font-size:28px}.bracket-view-error p,.bracket-view-empty p{color:var(--color-text-muted);margin-bottom:30px;font-size:16px;line-height:1.6}.bracket-view-error button,.bracket-view-empty button{background:var(--color-accent-gradient);color:#fff;border:none;padding:12px 32px;border-radius:4px;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s}.bracket-view-error button:hover,.bracket-view-empty button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.match-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.match-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;padding:40px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 10px 40px #00000080}.match-modal-close{position:absolute;top:20px;right:20px;background:none;border:none;font-size:32px;cursor:pointer;color:var(--color-text-muted);line-height:1;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.match-modal-close:hover{background:var(--color-bg-shape);color:var(--color-text-primary)}.match-modal-title{font-size:28px;font-weight:700;margin:0 0 20px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.match-modal-header{display:flex;gap:12px;margin-bottom:30px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.match-modal-status{padding:6px 14px;border-radius:12px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.match-modal-status-completed{background-color:var(--color-success-bg);color:var(--color-success)}.match-modal-status-in_progress{background-color:var(--color-warning-bg);color:var(--color-warning)}.match-modal-status-scheduled{background-color:#5ea0f733;color:var(--color-text-heading)}.match-modal-status-forfeited{background-color:var(--color-error-bg);color:var(--color-error)}.match-modal-round{color:var(--color-text-muted);font-weight:600;font-size:14px}.match-modal-teams{display:flex;flex-direction:column;gap:12px;margin-bottom:30px}.match-modal-team{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--color-bg-shape);border-radius:8px;border:2px solid transparent;transition:all .2s}.match-modal-team.winner{background:var(--color-success-bg);border-color:var(--color-success)}.match-modal-team-name{font-size:20px;font-weight:600;color:var(--color-text-primary)}.match-modal-team.winner .match-modal-team-name{color:var(--color-success)}.match-modal-team-score{font-size:32px;font-weight:700;color:var(--color-text-primary)}.match-modal-team.winner .match-modal-team-score{color:var(--color-success)}.match-modal-vs{text-align:center;font-weight:700;color:var(--color-text-muted);padding:8px 0;font-size:14px}.match-modal-maps{margin-bottom:24px;padding:20px;background:var(--color-bg-shape);border-radius:8px}.match-modal-maps h3{font-size:16px;font-weight:700;margin:0 0 16px;color:var(--color-text-heading)}.match-modal-maps ul{list-style:none;padding:0;margin:0}.match-modal-maps li{padding:12px 16px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:4px;margin-bottom:8px;color:var(--color-text-primary)}.match-modal-maps li:last-child{margin-bottom:0}.map-score{color:var(--color-text-heading);font-weight:600;margin-left:8px}.map-winner{color:var(--color-success);font-weight:600;margin-left:8px}.match-modal-time,.match-modal-referee{padding:16px 20px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:12px;color:var(--color-text-muted)}.match-modal-time:last-child,.match-modal-referee:last-child{margin-bottom:0}.match-modal-time strong,.match-modal-referee strong{color:var(--color-text-primary);margin-right:8px}@media (max-width: 768px){.bracket-view{padding:20px 16px}.bracket-view-header{padding:24px}.bracket-view-title{font-size:24px}.bracket-view-format{font-size:14px}.bracket-view-filters{flex-direction:column;align-items:stretch;gap:12px;padding:20px}.bracket-view-filters-left{flex-direction:column;align-items:flex-start;gap:12px}.match-filter-select{width:100%}.bracket-view-filters .view-mode-toggle{justify-content:center}.bracket-view-container,.bracket-view-list{padding:20px}.bracket-grid{gap:30px;padding:16px}.bracket-round{gap:16px;min-width:240px}.bracket-round-matches{gap:30px}.bracket-view .match-list{grid-template-columns:1fr}.match-modal{padding:30px 24px;border-radius:8px}.match-modal-title{font-size:24px;padding-right:40px}.match-modal-team-name{font-size:18px}.match-modal-team-score{font-size:28px}}@media (max-width: 480px){.bracket-view{padding:16px 12px}.bracket-view-header{padding:20px}.bracket-view-title{font-size:20px}.bracket-view-filters{padding:16px}.bracket-round{min-width:220px}.match-modal{padding:24px 20px}.match-modal-title{font-size:20px}.match-modal-team{padding:16px}.match-modal-team-name{font-size:16px}.match-modal-team-score{font-size:24px}}.ffa-bracket-view{min-height:400px}.ffa-bracket-view-header{max-width:1400px;margin:0 auto 30px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d}.ffa-bracket-view-title{font-size:32px;font-weight:700;margin:0 0 12px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ffa-bracket-view-info{margin:0;color:var(--color-text-muted);font-size:16px}.ffa-bracket-view-filters{max-width:1400px;margin:0 auto 30px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px 30px;box-shadow:0 2px 8px #0000004d;display:flex;align-items:center;justify-content:space-between;gap:16px}.ffa-bracket-view-filters-left{display:flex;align-items:center;gap:16px}.ffa-bracket-view-filters label{font-weight:600;color:var(--color-text-primary);font-size:14px}.ffa-bracket-view-filters .view-mode-toggle{display:flex;gap:4px;background:var(--color-bg-shape);padding:4px;border-radius:8px}.ffa-bracket-view-filters .view-mode-btn{padding:8px 16px;border:none;border-radius:6px;background:transparent;color:var(--color-text-muted);font-size:14px;cursor:pointer;transition:all .2s}.ffa-bracket-view-filters .view-mode-btn:hover{color:var(--color-text-primary)}.ffa-bracket-view-filters .view-mode-btn.active{background:var(--color-accent);color:#fff}.ffa-bracket-view-filters .match-filter-select{min-width:200px;padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-card);color:var(--color-text-primary);font-size:14px;cursor:pointer}.ffa-bracket-view-filters .match-filter-select:focus{outline:none;border-color:var(--color-accent)}.ffa-bracket-view-container{max-width:1400px;margin:0 auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d;overflow-x:auto}.ffa-bracket-grid{display:flex;gap:60px;min-width:fit-content;padding:20px}.ffa-bracket-round{display:flex;flex-direction:column;gap:20px;min-width:280px}.ffa-bracket-round-title{font-size:18px;font-weight:700;color:var(--color-text-heading);text-align:center;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--color-accent)}.ffa-bracket-round-matches{display:flex;flex-direction:column;gap:50px;flex:1;justify-content:space-around}.ffa-bracket-node{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:8px;padding:12px;min-width:200px;max-width:280px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000004d}.ffa-bracket-node:hover{transform:translateY(-2px);box-shadow:0 4px 12px #c80f3966}.ffa-bracket-node:focus{outline:2px solid var(--color-accent);outline-offset:2px}.ffa-bracket-node-completed{background:var(--color-success-bg)}.ffa-bracket-node-in-progress{border-color:var(--color-warning);background:var(--color-warning-bg)}.ffa-bracket-node-scheduled{border-color:var(--color-text-heading);background:#5ea0f71a}.ffa-bracket-node-forfeited{border-color:var(--color-error);background:var(--color-error-bg)}.ffa-bracket-node-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:11px;color:var(--color-text-muted);flex-wrap:wrap;gap:4px}.ffa-bracket-node-round{font-weight:600;color:var(--color-text-primary)}.ffa-bracket-node-status{text-transform:capitalize;font-weight:600;padding:2px 6px;border-radius:4px;font-size:10px}.ffa-bracket-node-status-completed{background:var(--color-success-bg);color:var(--color-success)}.ffa-bracket-node-status-in_progress{background:var(--color-warning-bg);color:var(--color-warning)}.ffa-bracket-node-status-scheduled{background:#5ea0f733;color:var(--color-text-heading)}.ffa-bracket-node-status-forfeited{background:var(--color-error-bg);color:var(--color-error)}.ffa-bracket-node-teams{display:flex;flex-direction:column;gap:4px}.ffa-bracket-node-team{display:flex;align-items:center;padding:6px 8px;background:var(--color-bg-shape);border-radius:4px;border:1px solid var(--color-border);transition:background .2s ease;gap:8px}.ffa-bracket-node-position{font-weight:700;font-size:12px;color:var(--color-text-muted);min-width:18px;text-align:center}.ffa-bracket-node-team-name{font-weight:500;font-size:13px;color:var(--color-text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ffa-bracket-node-team-name.tbd{color:var(--color-text-muted);font-style:italic;font-size:12px}.ffa-bracket-node-team-score{font-weight:700;font-size:14px;margin-left:auto;min-width:28px;text-align:right;color:var(--color-text-primary)}.ffa-bracket-node-winner{background:var(--color-success-bg);border-color:var(--color-success)}.ffa-bracket-node-winner .ffa-bracket-node-team-name{color:var(--color-success);font-weight:700}.ffa-bracket-node-winner .ffa-bracket-node-team-score{color:var(--color-success)}.ffa-bracket-node-winner .ffa-bracket-node-position{color:#d97706}.ffa-bracket-node-advancing{background:#10b9811a;border-color:#10b9814d}.ffa-bracket-node-advancing .ffa-bracket-node-team-name{color:var(--color-text-primary)}.ffa-bracket-node-placeholder{border-style:dashed;opacity:.8}.ffa-bracket-node-placeholder .ffa-bracket-node-team-name{font-style:italic;color:var(--color-text-muted)}.ffa-bracket-node-more{font-size:11px;color:var(--color-text-muted);text-align:center;padding:4px;font-style:italic}.ffa-bracket-node-footer{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border);font-size:11px;color:var(--color-text-muted)}.ffa-bracket-node-advance-info{display:block;font-weight:500;color:var(--color-success)}.ffa-bracket-node-actions{margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border)}.ffa-bracket-node-actions .btn-primary{width:100%;padding:8px 12px;font-size:12px}.ffa-bracket-node-actions .btn-small{padding:6px 12px;font-size:12px}.ffa-bracket-view-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.ffa-bracket-view-loading p{color:var(--color-text-muted);font-size:16px}.ffa-bracket-view-loading .spinner{width:50px;height:50px;border:4px solid var(--color-bg-shape);border-top:4px solid var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ffa-bracket-view-error,.ffa-bracket-view-empty{max-width:600px;margin:60px auto;text-align:center;padding:60px 40px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 8px #0000004d}.ffa-bracket-view-error h2,.ffa-bracket-view-empty h2{color:var(--color-text-heading);margin-bottom:16px;font-size:28px}.ffa-bracket-view-error p,.ffa-bracket-view-empty p{color:var(--color-text-muted);margin-bottom:0;font-size:16px;line-height:1.6}@media (max-width: 768px){.ffa-bracket-view-header{padding:24px}.ffa-bracket-view-title{font-size:24px}.ffa-bracket-view-info{font-size:14px}.ffa-bracket-view-filters{flex-direction:column;align-items:stretch;gap:12px;padding:20px}.ffa-bracket-view-filters-left{flex-direction:column;align-items:flex-start;gap:12px}.ffa-bracket-view-filters .match-filter-select{width:100%}.ffa-bracket-view-filters .view-mode-toggle{justify-content:center}.ffa-bracket-view-container{padding:20px}.ffa-bracket-grid{gap:30px;padding:16px}.ffa-bracket-round{gap:16px;min-width:240px}.ffa-bracket-round-matches{gap:30px}.ffa-bracket-node{min-width:180px;max-width:220px;padding:10px}.ffa-bracket-node-header{font-size:10px}.ffa-bracket-node-team{padding:5px 6px}.ffa-bracket-node-team-name,.ffa-bracket-node-team-score{font-size:12px}.ffa-bracket-node-footer{font-size:10px}}@media (max-width: 480px){.ffa-bracket-view-header{padding:20px}.ffa-bracket-view-title{font-size:20px}.ffa-bracket-view-filters{padding:16px}.ffa-bracket-round{min-width:200px}.ffa-bracket-node{min-width:160px;max-width:200px}}.match-list{max-width:100%;margin:0 auto;padding:40px 20px;width:100%}.match-list-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.match-list-header-info h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.match-list-subtitle{margin:0;color:var(--color-text-muted);font-size:14px;display:flex;align-items:center;gap:8px}.match-list-event{color:var(--color-accent);font-weight:500}.match-list-separator{color:var(--color-text-muted);margin:0 4px}.match-list-tournament{color:var(--color-text-primary);font-weight:500}.format-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.ffa-badge{background:#7c3aed26;color:#7c3aed;border:1px solid rgba(124,58,237,.3)}.match-list-header-actions{display:flex;gap:8px;align-items:center}.list-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.list-controls-left{display:flex;align-items:center;gap:12px}.view-toggle{display:flex;gap:0;background:var(--color-bg-shape);border-radius:6px;padding:4px;border:1px solid var(--color-border)}.toggle-btn{padding:8px 16px;border:none;background:transparent;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-radius:4px;transition:all .2s}.toggle-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.toggle-btn.active{background:var(--color-accent);color:#fff}.filters-section{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;padding:16px;background:var(--color-bg-card);border-radius:8px;margin-bottom:24px;border:1px solid var(--color-border)}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:140px}.filter-group label{font-size:12px;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.filter-group select{padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer}.filter-group select:focus{outline:none;border-color:var(--color-accent)}.btn-text{background:none;border:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;padding:8px 12px;margin-left:auto}.btn-text:hover{color:var(--color-accent)}.match-filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.filter-select{min-width:160px;padding:10px 14px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s,box-shadow .2s}.empty-state{text-align:center;padding:48px 24px;color:var(--color-text-muted);background:var(--color-bg-card);border-radius:8px;border:1px dashed var(--color-border)}.phase-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-shape);color:var(--color-text-muted);border:1px solid var(--color-border)}.match-table-container{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);overflow-x:auto}.match-table{width:100%;border-collapse:collapse}.match-table th,.match-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap}.match-table th{background:var(--color-bg-shape);font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:10}.match-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s,color .2s}.match-table th.sortable:hover{background:var(--color-bg-shape-dim);color:var(--color-text-primary)}.match-table tbody tr{transition:background-color .2s}.match-table tbody tr:hover{background:var(--color-bg-shape)}.match-table tbody tr:last-child td{border-bottom:none}.match-table td{color:var(--color-text-primary)}.no-matches{text-align:center;padding:40px;color:var(--color-text-muted);font-style:italic}.match-teams .team{font-weight:500;color:var(--color-text-primary)}.match-teams .team.winner{color:var(--color-success);font-weight:700}.match-teams .vs{color:var(--color-text-muted);font-size:12px;font-weight:600}.teams-cell{white-space:normal;word-wrap:break-word;line-height:1.4;max-width:300px}.winner-name{color:var(--color-success);font-weight:700;font-size:14px}.match-maps{display:flex;flex-wrap:wrap;gap:6px}.map-badge{display:inline-block;padding:4px 10px;background:var(--color-accent-bg);color:var(--color-accent);border-radius:12px;font-size:12px;font-weight:500}.match-score{font-weight:700;font-size:16px;color:var(--color-text-primary)}.match-score.in-progress{color:var(--color-warning, #f59e0b)}.match-score .score-asterisk{color:var(--color-warning, #f59e0b);font-weight:700;margin-left:2px}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.status-scheduled{background:#dbeafe;color:#1d4ed8}.status-in-progress{background:#fef3c7;color:#b45309}.status-completed{background:#dcfce7;color:#15803d}.status-forfeited{background:#fee2e2;color:#dc2626}.room-cell{color:var(--color-text-secondary)}.room-assignments{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.room-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px;font-size:12px;color:var(--color-text-primary)}.room-badge.manual{background:#7c4dff26;border-color:#7c4dff66}.room-badge.conflict{background:#ef535026;border-color:#ef535066}.override-indicator{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:9px;font-weight:700;background:#7c4dff;color:#fff;border-radius:2px}.conflict-warning{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:12px;font-weight:700;background:#ef5350;color:#fff;border-radius:50%;margin-left:4px}.scheduled-date,.scheduled-time{font-size:13px;color:var(--color-text-primary);white-space:nowrap}.match-number{font-weight:600;color:var(--color-text-primary);font-size:13px}.referee-name{font-weight:500;color:var(--color-text-muted)}.table-actions{display:flex;gap:8px;flex-wrap:wrap}.btn-action{padding:6px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;background:var(--color-bg-card);color:var(--color-text-secondary);transition:all .15s}.btn-action:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-text-muted)}.btn-action:disabled{opacity:.5;cursor:not-allowed}.btn-action.btn-edit{color:var(--color-accent);border-color:var(--color-accent)}.btn-action.btn-edit:hover:not(:disabled){background:var(--color-accent);color:#fff}.btn-action.btn-results{color:#7c3aed;border-color:#7c3aed}.btn-action.btn-results:hover:not(:disabled){background:#7c3aed;color:#fff}.btn-action.btn-change-team{color:#7c4dff;border-color:#7c4dff}.btn-action.btn-change-team:hover:not(:disabled){background:#7c4dff;color:#fff}.btn-action.btn-revert{color:#ff9800;border-color:#ff9800}.btn-action.btn-revert:hover:not(:disabled){background:#ff9800;color:#fff}.btn-action.btn-referee{color:#0891b2;border-color:#0891b2}.btn-action.btn-referee:hover:not(:disabled){background:#0891b2;color:#fff}.btn-action.btn-delete{color:#ef5350;border-color:#ef5350}.btn-action.btn-delete:hover:not(:disabled){background:#ef5350;color:#fff}.btn-action.btn-complete{color:#059669;border-color:#059669}.btn-action.btn-complete:hover:not(:disabled){background:#059669;color:#fff}.btn-action.btn-complete.has-winner{background:#05966926;font-weight:600}.btn-action.btn-details{color:var(--color-text-muted);border-color:var(--color-border)}.btn-action.btn-details:hover:not(:disabled){background:var(--color-bg-shape);color:var(--color-text-primary)}.match-actions{display:flex;gap:8px}.phases-container{display:flex;flex-direction:column;gap:48px}.phase-header{margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid var(--color-border)}.phase-header h3{font-size:18px;font-weight:700;color:var(--color-text-heading);margin:0;text-transform:uppercase;letter-spacing:.5px}.rounds-container{display:flex;flex-direction:column;gap:24px}.round-section{padding-bottom:24px;border-bottom:1px solid var(--color-border)}.round-section:last-child{border-bottom:none;padding-bottom:0}.round-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.round-header h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0}.round-count{font-size:13px;color:var(--color-text-muted)}.matches-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.side-by-side-container{display:flex;gap:32px;overflow-x:auto;overflow-y:visible;padding-bottom:16px}.phase-section.side-by-side{flex-shrink:0}.phase-section.side-by-side .phase-header{margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--color-border);min-width:340px}.phase-section.side-by-side .phase-header h3{font-size:16px;text-align:center}.rounds-grid{display:grid;grid-auto-flow:column;grid-auto-columns:340px;gap:16px;padding-bottom:16px}.round-column{display:flex;flex-direction:column;gap:16px}.round-column-header{position:sticky;top:0;background:var(--color-bg-page);z-index:10;padding:12px 16px;border-bottom:2px solid var(--color-border);border-radius:8px 8px 0 0;background:var(--color-bg-card)}.round-column-header h4{font-size:15px;font-weight:600;color:var(--color-text-heading);margin:0 0 4px;text-align:center}.round-column-header .round-count{display:block;text-align:center;font-size:12px;color:var(--color-text-muted)}.match-cell{min-height:200px}.match-cell.empty{visibility:hidden;min-height:0;height:0}.match-list .modal-content{max-width:800px}.room-assignment-info{background:var(--color-bg-shape);padding:15px;border-radius:4px}.assigned-rooms{display:flex;flex-direction:column;gap:8px}.room-assignment-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:4px}.room-assignment-item .room-name{font-weight:500;color:var(--color-text-primary)}.room-assignment-item .team-position{font-size:12px;color:var(--color-text-muted)}.room-assignment-item .manual-badge{display:inline-block;padding:2px 6px;background:#7c4dff;color:#fff;border-radius:3px;font-size:10px;font-weight:600;text-transform:uppercase}.conflict-alert{margin-top:8px;padding:10px;background:#ef535026;border:1px solid rgba(239,83,80,.4);border-radius:4px;color:#ef5350;font-size:13px;font-weight:500}.no-room-assigned{padding:10px;text-align:center;color:var(--color-text-muted)}.room-assignment-actions{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border)}.btn-link{color:var(--color-accent);text-decoration:none;font-size:14px;font-weight:500}.btn-link:hover{text-decoration:underline}.match-editor{padding:20px}.match-editor .form-section,.winner-selector .form-section{margin-bottom:30px}.match-editor .form-section h3,.winner-selector .form-section h3{margin:0 0 15px;font-size:16px;color:var(--color-text-heading);border-bottom:1px solid var(--color-border);padding-bottom:8px}.match-info{background:var(--color-bg-shape);padding:15px;border-radius:4px}.team-display{padding:8px 0;font-size:16px;color:var(--color-text-primary)}.match-meta{padding:8px 0;color:var(--color-text-muted);font-size:14px}.map-selector{background:var(--color-bg-shape);padding:15px;border-radius:4px;border:1px solid var(--color-border)}.map-list{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.map-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px}.map-name{font-weight:500;color:var(--color-text-primary)}.btn-remove{background:#ef5350;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;line-height:1;transition:background .2s}.btn-remove:hover{background:#e53935}.map-input-group{display:flex;gap:10px}.map-input-group .form-input{flex:1}.btn-add{padding:10px 20px;background:#4caf50;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-add:hover:not(:disabled){background:#45a049}.map-score-editor{background:var(--color-bg-shape);padding:15px;border-radius:4px;border:1px solid var(--color-border)}.score-table{width:100%;border-collapse:collapse;background:var(--color-bg-card)}.score-table th,.score-table td{padding:12px;border:1px solid var(--color-border);text-align:left}.score-table th{background:var(--color-bg-shape);font-weight:600;color:var(--color-text-muted)}.map-name-cell{font-weight:500;color:var(--color-text-primary)}.score-input{width:80px;padding:6px 10px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;text-align:center;background:var(--color-bg-shape);color:var(--color-text-primary)}.score-input:focus{outline:none;border-color:var(--color-accent)}.winner-selector{padding:20px}.winner-options{display:flex;flex-direction:column;gap:15px}.winner-option{display:flex;align-items:center;gap:12px;padding:15px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--color-bg-shape)}.winner-option:hover{border-color:var(--color-accent);background:var(--color-bg-shape-dim)}.winner-option.selected{border-color:#4caf50;background:#4caf501a}.winner-option input[type=radio]{width:20px;height:20px;cursor:pointer}.winner-option .team-name{font-size:18px;font-weight:600;color:var(--color-text-primary)}.winner-option:has(input:disabled){opacity:.5;cursor:not-allowed}.confirmation{padding:20px}.confirmation-message{background:#ffc1071a;border:1px solid rgba(255,193,7,.3);padding:20px;border-radius:4px;margin-bottom:20px}.confirmation-message h3{margin:0 0 10px;color:#ffb300}.confirmation-message p{margin:8px 0;color:var(--color-text-muted)}.confirmation-message .warning{font-weight:600;color:#ef5350}@media (max-width: 1200px){.match-table-container{overflow-x:auto}.match-table{min-width:1100px}.table-actions{flex-direction:column}.btn-action{width:100%;text-align:center}}@media (max-width: 768px){.match-list{padding:40px 20px}.match-list-header{flex-direction:column;gap:15px}.match-list-header-actions{flex-wrap:wrap}.list-controls{flex-direction:column;gap:12px;align-items:stretch}.list-controls-left{justify-content:center}.view-toggle{width:100%}.toggle-btn{flex:1;text-align:center}.filters-section{flex-direction:column;align-items:stretch}.filter-group{min-width:100%}.btn-text{margin-left:0;text-align:center}.matches-grid{grid-template-columns:1fr}.rounds-grid{grid-auto-columns:300px}.round-column-header{position:relative}.modal-content{margin:0;border-radius:0;max-height:100vh}.match-teams{flex-direction:column;align-items:flex-start;gap:4px}.match-maps,.map-input-group{flex-direction:column}.btn-add{width:100%}.match-table-container{margin:0 -20px;border-radius:0;border-left:none;border-right:none}.match-table th,.match-table td{padding:10px 12px}.table-actions{flex-direction:column;gap:4px}.btn-action{width:100%;text-align:center}}.modal-complete-match{max-width:500px!important}.modal-complete-match .modal-body{padding:20px}.complete-match-summary{text-align:center;margin-bottom:24px}.complete-match-summary h3{margin:0 0 16px;color:var(--color-text-muted);font-size:14px;text-transform:uppercase;letter-spacing:.5px}.match-teams-display{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:12px}.match-teams-display .team-name{font-size:18px;font-weight:600;color:var(--color-text-primary);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-teams-display .team-name.leading{color:var(--color-success)}.match-teams-display .vs-score{font-size:24px;font-weight:700;color:var(--color-text-heading);padding:8px 16px;background:var(--color-bg-shape);border-radius:8px}.complete-match-summary .maps-info{margin:0;font-size:13px;color:var(--color-text-muted)}.modal-complete-match .warning-message{padding:12px 16px;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);border-radius:6px;margin-bottom:20px;color:var(--color-text-primary);font-size:14px}.modal-complete-match .warning-message strong{color:var(--color-warning, #f59e0b)}.winner-confirmation{text-align:center}.winner-confirmation p{margin:0 0 16px;color:var(--color-text-primary);font-size:15px}.winner-confirmation .modal-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.winner-confirmation .btn-primary{padding:14px 24px;font-size:16px}.winner-confirmation .btn-secondary{padding:10px 20px}.winner-selection{text-align:center}.winner-selection>p{margin:0 0 16px;color:var(--color-text-muted);font-size:14px}.winner-selection .winner-buttons{display:flex;gap:12px;margin-bottom:16px}.winner-selection .btn-winner{flex:1;padding:16px 20px;font-size:15px;font-weight:600;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer;transition:all .2s}.winner-selection .btn-winner:hover:not(:disabled){border-color:var(--color-success);background:#0596691a;color:var(--color-success)}.winner-selection .btn-winner:disabled{opacity:.5;cursor:not-allowed}.winner-selection .btn-cancel{width:100%;margin-top:8px}.complete-match-prompt{margin-bottom:20px;padding:16px;background:#0596691a;border:2px solid rgba(5,150,105,.3);border-radius:8px}.complete-match-prompt .prompt-content h4{margin:0 0 8px;color:var(--color-success);font-size:16px}.complete-match-prompt .prompt-content p{margin:0 0 16px;color:var(--color-text-primary);font-size:14px}.complete-match-prompt .prompt-actions{display:flex;gap:10px}.complete-match-prompt .btn-success{flex:1}.complete-match-prompt .btn-secondary{flex-shrink:0}.form-actions .btn-success{background:var(--color-success);border-color:var(--color-success);color:#fff}.form-actions .btn-success:hover:not(:disabled){background:#047857;border-color:#047857}.form-actions .btn-success.has-winner{animation:pulse-success 2s infinite}@keyframes pulse-success{0%,to{box-shadow:0 0 #05966966}50%{box-shadow:0 0 0 8px #05966900}}.compact-view-container{display:grid;grid-template-columns:320px 1fr;gap:0;height:calc(100vh - 280px);min-height:400px;overflow:hidden;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.compact-matches-list{display:flex;flex-direction:column;gap:8px;padding:12px;overflow-y:auto;border-right:1px solid var(--color-border);background:var(--color-bg-secondary)}.compact-matches-header{padding-bottom:8px;border-bottom:1px solid var(--color-border);margin-bottom:4px}.compact-matches-count{font-size:13px;font-weight:500;color:var(--color-text-muted)}.compact-empty-state{padding:24px 16px;text-align:center;color:var(--color-text-muted);font-size:14px}.compact-bracket-panel{overflow:auto;background:var(--color-bg-primary)}.compact-bracket-panel .bracket-view{padding:16px}.compact-bracket-panel .bracket-view-header,.compact-bracket-panel .bracket-view-filters{display:none}.compact-bracket-panel .ffa-bracket-view{padding:16px}.compact-bracket-panel .ffa-bracket-view-header,.compact-bracket-panel .ffa-bracket-view-filters{display:none}@media (max-width: 1024px){.compact-view-container{grid-template-columns:1fr;grid-template-rows:300px 1fr;height:auto;max-height:calc(100vh - 280px)}.compact-matches-list{border-right:none;border-bottom:1px solid var(--color-border);max-height:300px}.compact-bracket-panel{min-height:400px}}@media (max-width: 768px){.compact-view-container{grid-template-rows:250px 1fr}.compact-matches-list{max-height:250px}}.match-edit-modal{background:var(--color-bg-card);border-radius:8px;padding:24px;max-width:550px;max-height:80vh;overflow-y:auto}.match-edit-modal .modal-header{margin-bottom:24px}.match-edit-modal .modal-header h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 4px}.match-edit-modal .modal-subtitle{font-size:14px;color:var(--color-text-muted);margin:0}.match-edit-modal .error-message{padding:12px 16px;background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:6px;color:var(--color-error);font-size:14px;margin-bottom:16px}.match-edit-modal .edit-form{display:flex;flex-direction:column;gap:24px;margin-bottom:24px}.match-edit-modal .form-section{display:flex;flex-direction:column;gap:8px}.match-edit-modal .section-label{font-size:14px;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:8px}.match-edit-modal .section-hint{font-size:12px;font-weight:400;color:var(--color-text-muted)}.match-edit-modal .section-hint.disabled{color:var(--color-warning)}.match-edit-modal .teams-container{display:flex;flex-direction:column;gap:12px}.match-edit-modal .team-chips{display:flex;flex-wrap:wrap;gap:8px;min-height:36px;padding:8px;background:var(--color-bg-shape);border-radius:6px}.match-edit-modal .team-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:4px;font-size:13px;color:var(--color-text-primary)}.match-edit-modal .team-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-edit-modal .chip-remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:transparent;border:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;border-radius:50%;transition:all .2s}.match-edit-modal .chip-remove:hover{background:var(--color-error-bg);color:var(--color-error)}.match-edit-modal .add-team-row{display:flex;gap:8px}.match-edit-modal .add-team-select{flex:1;padding:8px 12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:14px;cursor:pointer}.match-edit-modal .add-team-select:focus{outline:none;border-color:var(--color-accent)}.match-edit-modal .team-count-info{font-size:12px;color:var(--color-text-muted);text-align:right}.match-edit-modal .map-selector{display:flex;flex-direction:column;gap:12px}.match-edit-modal .map-list{display:flex;flex-direction:column;gap:8px}.match-edit-modal .map-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px}.match-edit-modal .map-name{font-size:14px;color:var(--color-text-primary)}.match-edit-modal .map-selector .btn-remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;color:var(--color-text-muted);font-size:16px;cursor:pointer;border-radius:4px;transition:all .2s}.match-edit-modal .map-selector .btn-remove:hover{background:var(--color-error-bg);color:var(--color-error)}.match-edit-modal .map-input-group{display:flex;gap:8px}.match-edit-modal .map-input-group .form-input{flex:1;padding:8px 12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:14px}.match-edit-modal .map-input-group .form-input:focus{outline:none;border-color:var(--color-accent)}.match-edit-modal .map-input-group .btn-add{padding:8px 16px;background:var(--color-accent);border:none;border-radius:6px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.match-edit-modal .map-input-group .btn-add:hover:not(:disabled){background:var(--color-accent-hover)}.match-edit-modal .map-input-group .btn-add:disabled{opacity:.5;cursor:not-allowed}.match-edit-modal .map-selector .form-hint{font-size:12px;color:var(--color-text-muted);margin:0}.match-edit-modal .schedule-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.match-edit-modal .schedule-row .form-group{display:flex;flex-direction:column;gap:4px}.match-edit-modal .schedule-row label{font-size:12px;color:var(--color-text-muted)}.match-edit-modal .schedule-row input{padding:8px 12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:14px}.match-edit-modal .schedule-row input:focus{outline:none;border-color:var(--color-accent)}.match-edit-modal .room-select,.match-edit-modal .status-select{padding:10px 12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:14px;cursor:pointer}.match-edit-modal .room-select:focus,.match-edit-modal .status-select:focus{outline:none;border-color:var(--color-accent)}.match-edit-modal .room-select:disabled,.match-edit-modal .status-select:disabled{opacity:.5;cursor:not-allowed}.match-edit-modal .field-hint{font-size:12px;color:var(--color-text-muted);margin-top:4px}.match-edit-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--color-border)}.match-edit-modal .confirm-step{margin-bottom:24px}.match-edit-modal .confirm-step h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px}.match-edit-modal .changes-summary{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:20px}.match-edit-modal .summary-item{display:flex;gap:8px}.match-edit-modal .summary-label{font-size:13px;font-weight:500;color:var(--color-text-muted);min-width:80px}.match-edit-modal .summary-value{font-size:13px;color:var(--color-text-primary)}.match-edit-modal .warnings-section{padding:16px;background:var(--color-warning-bg);border:1px solid rgba(255,193,7,.3);border-radius:8px}.match-edit-modal .warnings-section h5{font-size:14px;font-weight:600;color:var(--color-warning);margin:0 0 12px}.match-edit-modal .warnings-list{display:flex;flex-direction:column;gap:8px}.match-edit-modal .warning-item{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;background:var(--color-bg-card);border-radius:6px;font-size:13px}.match-edit-modal .warning-item.warning-error{border-left:3px solid var(--color-error)}.match-edit-modal .warning-item.warning-info{border-left:3px solid var(--color-warning)}.match-edit-modal .warning-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:12px;font-weight:700;flex-shrink:0}.match-edit-modal .warning-error .warning-icon{background:var(--color-error-bg);color:var(--color-error)}.match-edit-modal .warning-info .warning-icon{background:var(--color-warning-bg);color:var(--color-warning)}.match-edit-modal .warning-content{display:flex;flex-direction:column;gap:8px;flex:1}.match-edit-modal .warning-message{color:var(--color-text-primary);line-height:1.4}.match-edit-modal .capacity-details{font-size:12px;margin-top:8px;padding:10px 12px;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.match-edit-modal .capacity-summary{display:flex;flex-direction:column;gap:4px}.match-edit-modal .capacity-summary span{color:var(--color-text-muted)}.match-edit-modal .capacity-summary strong{color:var(--color-text-primary)}.match-edit-modal .capacity-summary .overbooking{color:var(--color-error);font-weight:500}.match-edit-modal .capacity-summary .overbooking strong{color:var(--color-error)}.match-edit-modal .conflicting-matches{margin-top:10px;padding-top:10px;border-top:1px solid var(--color-border)}.match-edit-modal .conflicts-label{font-weight:500;color:var(--color-text-secondary);display:block;margin-bottom:6px}.match-edit-modal .conflicting-matches ul{margin:0;padding-left:18px;color:var(--color-text-muted)}.match-edit-modal .conflicting-matches li{margin:3px 0}.match-edit-modal .room-conflict-warning{margin-top:12px;padding:12px;background:var(--color-warning-bg);border:1px solid rgba(255,193,7,.3);border-radius:6px}.match-edit-modal .room-conflict-warning .warning-item{margin-bottom:0}.match-edit-modal .room-conflict-warning .conflict-override{margin-top:12px;padding-top:10px}.match-edit-modal .conflict-override{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,193,7,.2);font-size:13px;color:var(--color-text-primary);cursor:pointer}.match-edit-modal .conflict-override input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}@media (max-width: 768px){.match-edit-modal{padding:16px;max-width:100%}.match-edit-modal .schedule-row{grid-template-columns:1fr}.match-edit-modal .modal-actions{flex-direction:column-reverse}.match-edit-modal .modal-actions button{width:100%}.match-edit-modal .team-name{max-width:100px}}.tournament-management{display:flex;height:calc(100vh - 60px);width:100%;overflow:hidden}.tournament-list-panel{width:350px;min-width:280px;max-width:400px;display:flex;flex-direction:column;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);overflow:hidden}.panel-header{padding:20px;border-bottom:1px solid var(--color-border)}.panel-header h1{margin:0;font-size:24px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tournament-filters-compact{padding:16px;display:flex;flex-direction:column;gap:10px;border-bottom:1px solid var(--color-border);background:var(--color-bg-shape-light)}.filter-row{display:flex;gap:10px}.tournament-filters-compact .filter-select{flex:1;padding:8px 10px;font-size:13px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);cursor:pointer}.tournament-filters-compact .filter-select:focus{outline:none;border-color:var(--color-accent)}.tournament-filters-compact .checkbox-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--color-text-muted);cursor:pointer}.tournament-filters-compact .checkbox-label input{cursor:pointer}.tournament-count{padding:10px 16px;font-size:13px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.tournament-list-items{flex:1;overflow-y:auto;padding:8px}.tournament-list-item{padding:14px 16px;border-radius:6px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;border:2px solid transparent;margin-bottom:4px}.tournament-list-item:hover{background:var(--color-bg-shape)}.tournament-list-item.selected{background:var(--color-accent-bg);border-color:var(--color-accent)}.tournament-item-name{font-size:15px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-item-event{font-size:13px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-matches-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg-primary)}.tournament-matches-panel .match-list{height:100%;overflow-y:auto;padding:20px}.no-tournament-selected,.loading-tournament{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:16px}.back-button{display:none;padding:12px 16px;background:var(--color-bg-shape);border:none;border-bottom:1px solid var(--color-border);color:var(--color-text-primary);font-size:14px;cursor:pointer;text-align:left}.back-button:hover{background:var(--color-bg-shape-dim)}.tournament-list-panel .loading,.tournament-list-panel .empty-state{padding:40px 20px;text-align:center;color:var(--color-text-muted)}.empty-state-hint{margin-top:8px;font-size:13px;opacity:.7}.tournament-list-panel .error-message{margin:12px 16px}@media (max-width: 768px){.tournament-management{flex-direction:column;height:100vh}.tournament-list-panel{width:100%;max-width:none;height:100%;border-right:none}.tournament-matches-panel{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-bg-primary);z-index:10}.hidden-mobile{display:none!important}.mobile-only{display:block!important}.back-button{display:block}}@media (min-width: 769px){.mobile-only{display:none!important}}.pmdm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.pmdm-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000080}.pmdm-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--color-border);flex-shrink:0}.pmdm-header-title{display:flex;align-items:center;gap:12px}.pmdm-header-title h2{margin:0;font-size:20px;color:var(--color-text-heading)}.pmdm-status{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:nowrap}.pmdm-status.status-scheduled{background:#93939333;color:var(--color-text-muted)}.pmdm-status.status-in-progress{background:var(--color-success-bg);color:var(--color-success)}.pmdm-status.status-completed{background:#5ea0f733;color:var(--color-text-heading)}.pmdm-status.status-forfeited{background:var(--color-error-bg);color:var(--color-error)}.pmdm-close{background:transparent;border:none;font-size:28px;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1;transition:color .2s ease;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.pmdm-close:hover{color:var(--color-text-primary);background:#ffffff1a}.pmdm-close:focus{outline:2px solid var(--color-accent);outline-offset:2px}.pmdm-body{padding:24px;overflow-y:auto;flex:1}.pmdm-section{margin-bottom:24px}.pmdm-section:last-child{margin-bottom:0}.pmdm-section-title{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.pmdm-schedule-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pmdm-schedule-item{display:flex;flex-direction:column;gap:4px}.pmdm-label{font-size:12px;color:var(--color-text-muted)}.pmdm-value{font-size:14px;color:var(--color-text-primary);font-weight:500}.pmdm-teams{display:flex;align-items:stretch;gap:16px}.pmdm-team{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 16px;background:var(--color-bg-secondary);border-radius:8px;border:2px solid transparent;transition:all .2s ease}.pmdm-team.winner{background:#c80f391a;border-color:var(--color-accent)}.pmdm-team-name{font-size:16px;font-weight:600;color:var(--color-text-primary);text-align:center;margin-bottom:8px}.pmdm-team.winner .pmdm-team-name{color:var(--color-text-heading)}.pmdm-team-score{font-size:32px;font-weight:700;color:var(--color-text-muted)}.pmdm-team-score.winner{color:var(--color-text-heading)}.pmdm-vs{display:flex;align-items:center;font-size:14px;font-weight:600;color:var(--color-text-muted)}.pmdm-ffa-list{display:flex;flex-direction:column;gap:8px}.pmdm-ffa-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg-secondary);border-radius:6px;border-left:3px solid transparent}.pmdm-ffa-item.winner{background:#c80f391a;border-left-color:var(--color-accent)}.pmdm-ffa-rank{font-size:14px;font-weight:700;color:var(--color-text-muted);min-width:32px}.pmdm-ffa-item.winner .pmdm-ffa-rank{color:var(--color-accent)}.pmdm-ffa-name{flex:1;font-size:14px;color:var(--color-text-primary)}.pmdm-ffa-item.winner .pmdm-ffa-name{font-weight:600;color:var(--color-text-heading)}.pmdm-ffa-points{font-size:13px;color:var(--color-text-muted);font-weight:500}.pmdm-maps{display:flex;flex-direction:column;gap:8px}.pmdm-map-row{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--color-bg-secondary);border-radius:6px}.pmdm-map-name{flex:1;font-size:14px;color:var(--color-text-primary);font-weight:500}.pmdm-map-scores{display:flex;align-items:center;gap:8px}.pmdm-map-score{font-size:16px;font-weight:600;color:var(--color-text-muted);min-width:24px;text-align:center}.pmdm-map-score.winner{color:var(--color-text-heading)}.pmdm-map-separator{color:var(--color-text-muted)}.pmdm-map-winner{font-size:12px;color:var(--color-accent);font-weight:500;min-width:80px;text-align:right}.pmdm-final-bo{display:flex;flex-direction:column;align-items:center;padding:24px;background:var(--color-bg-secondary);border-radius:8px;text-align:center}.pmdm-winner-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.pmdm-winner-name{font-size:24px;font-weight:700;color:var(--color-text-heading);margin-bottom:8px}.pmdm-final-score{font-size:18px;font-weight:600;color:var(--color-accent)}.pmdm-no-winner{font-size:14px;color:var(--color-text-muted)}.pmdm-final-ffa{display:flex;flex-direction:column;gap:8px}.pmdm-podium{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg-secondary);border-radius:6px;border-left:4px solid transparent}.pmdm-podium.pmdm-place-1{border-left-color:gold;background:#ffd7001a}.pmdm-podium.pmdm-place-2{border-left-color:silver;background:#c0c0c01a}.pmdm-podium.pmdm-place-3{border-left-color:#cd7f32;background:#cd7f321a}.pmdm-podium-rank{font-size:16px;font-weight:700;min-width:32px}.pmdm-place-1 .pmdm-podium-rank{color:gold}.pmdm-place-2 .pmdm-podium-rank{color:silver}.pmdm-place-3 .pmdm-podium-rank{color:#cd7f32}.pmdm-podium-name{flex:1;font-size:14px;font-weight:600;color:var(--color-text-primary)}.pmdm-podium-points{font-size:13px;color:var(--color-text-muted)}.pmdm-timestamps{padding-top:16px;border-top:1px solid var(--color-border)}.pmdm-timestamp{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.pmdm-timestamp .pmdm-label{font-size:13px}.pmdm-timestamp .pmdm-value{font-size:13px;color:var(--color-text-muted)}@media (max-width: 768px){.pmdm-overlay{padding:0;align-items:flex-end}.pmdm-modal{max-width:100%;max-height:95vh;border-radius:16px 16px 0 0;border-bottom:none}.pmdm-header{padding:16px 20px}.pmdm-header-title h2{font-size:18px}.pmdm-body{padding:20px}.pmdm-schedule-grid{grid-template-columns:1fr;gap:8px}.pmdm-teams{flex-direction:column}.pmdm-vs{padding:8px 0;justify-content:center}.pmdm-team{padding:16px}.pmdm-team-score{font-size:28px}.pmdm-map-row{flex-wrap:wrap}.pmdm-map-name{flex-basis:100%;margin-bottom:8px}.pmdm-map-scores{flex:1}.pmdm-map-winner{min-width:auto}}@media (prefers-reduced-motion: reduce){.pmdm-close,.pmdm-team{transition:none}}.public-dashboard{display:flex;height:calc(100vh - 60px);width:100%;overflow:hidden}.pd-tournament-list-panel{width:350px;min-width:280px;max-width:300px;display:flex;flex-direction:column;background:var(--color-bg-secondary);border-right:1px solid var(--color-border);overflow:hidden}.pd-panel-header{padding:20px;border-bottom:1px solid var(--color-border)}.pd-panel-header h1{margin:0;font-size:24px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pd-tournament-filters{padding:12px 16px;border-bottom:1px solid var(--color-border)}.pd-club-filter{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer}.pd-club-filter:focus{outline:none;border-color:var(--color-accent)}.pd-tournament-count{padding:10px 16px;font-size:13px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border)}.pd-tournament-list-items{flex:1;overflow-y:auto;padding:8px}.pd-tournament-list-item{padding:14px 16px;border-radius:6px;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;border:2px solid transparent;margin-bottom:4px}.pd-tournament-list-item:hover{background:var(--color-bg-shape)}.pd-tournament-list-item.selected{background:var(--color-accent-bg);border-color:var(--color-accent)}.pd-tournament-list-item.external{border-left:3px solid var(--color-text-muted)}.pd-tournament-item-name{font-size:15px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-tournament-item-event{font-size:13px;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pd-content-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg-primary)}.pd-no-selection,.pd-loading-content{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:16px}.pd-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:16px;gap:12px}.pd-error h2{color:var(--color-error);margin:0}.pd-tournament-list-panel .pd-list-loading,.pd-tournament-list-panel .pd-empty-state{padding:40px 20px;text-align:center;color:var(--color-text-muted)}.pd-back-button{padding:6px 12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;color:var(--color-accent);font-size:13px;font-weight:500;cursor:pointer}.pd-back-button:active{background:var(--color-bg-selected)}.pd-list-controls{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid var(--color-border);background:var(--color-bg-card);flex-shrink:0}.pd-list-controls-left{display:flex;align-items:center;gap:12px}.pd-match-count{font-size:14px;color:var(--color-text-muted)}.pd-format-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.pd-ffa-badge{background:#7c3aed26;color:#7c3aed;border:1px solid rgba(124,58,237,.3)}.pd-view-toggle{display:flex;gap:0;background:var(--color-bg-shape);border-radius:6px;padding:4px;border:1px solid var(--color-border)}.pd-toggle-btn{padding:8px 16px;border:none;background:transparent;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-radius:4px;transition:all .2s}.pd-toggle-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.pd-toggle-btn.active{background:var(--color-accent);color:#fff}.pd-filters-section{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;padding:16px 20px;margin:0 20px 20px;background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);flex-shrink:0}.pd-filter-group{display:flex;flex-direction:column;gap:6px;min-width:140px}.pd-filter-group label{font-size:12px;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.pd-filter-group select{padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer}.pd-filter-group select:focus{outline:none;border-color:var(--color-accent)}.pd-clear-filters-btn{background:none;border:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;padding:8px 12px;margin-left:auto}.pd-clear-filters-btn:hover{color:var(--color-accent)}.pd-compact-view-container{display:grid;grid-template-columns:320px 1fr;gap:0;flex:1;overflow:hidden;background:var(--color-bg-card);border-top:1px solid var(--color-border)}.pd-compact-matches-list{display:flex;flex-direction:column;gap:8px;padding:12px;overflow-y:auto;border-right:1px solid var(--color-border);background:var(--color-bg-secondary)}.pd-compact-matches-header{padding-bottom:8px;border-bottom:1px solid var(--color-border);margin-bottom:4px}.pd-compact-matches-count{font-size:13px;font-weight:500;color:var(--color-text-muted)}.pd-compact-empty-state{padding:24px 16px;text-align:center;color:var(--color-text-muted);font-size:14px}.pd-compact-bracket-panel{overflow:auto;background:var(--color-bg-primary);position:relative}.pd-bracket-zoom-controls{position:sticky;top:0;right:0;z-index:10;display:flex;align-items:center;gap:2px;float:right;margin:8px 8px 0 0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;padding:2px;box-shadow:0 2px 6px #00000026}.pd-bracket-zoom-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--color-text-primary);font-size:16px;font-weight:600;cursor:pointer;border-radius:4px;transition:background-color .15s}.pd-bracket-zoom-btn:hover{background:var(--color-bg-hover)}.pd-bracket-zoom-label{display:flex;align-items:center;justify-content:center;min-width:44px;height:28px;border:none;background:transparent;color:var(--color-text-muted);font-size:11px;font-weight:500;cursor:pointer;border-radius:4px;transition:background-color .15s}.pd-bracket-zoom-label:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.pd-bracket-zoom-content{transition:transform .1s ease-out;width:fit-content;min-width:100%}.pd-compact-bracket-panel .bracket-view{padding:16px}.pd-compact-bracket-panel .bracket-view-header,.pd-compact-bracket-panel .bracket-view-filters{display:none}.pd-compact-bracket-panel .ffa-bracket-view{padding:16px}.pd-compact-bracket-panel .ffa-bracket-view-header,.pd-compact-bracket-panel .ffa-bracket-view-filters{display:none}.pd-bracket-container{flex:1;overflow:auto}.pd-bracket-container .bracket-view-header,.pd-bracket-container .ffa-bracket-view-header{display:none}.pd-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.pd-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:12px;max-width:900px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.pd-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;border-bottom:1px solid var(--color-border)}.pd-modal-header h2{margin:0;font-size:20px;color:var(--color-text-heading)}.pd-modal-game{margin:4px 0 0;font-size:14px;color:var(--color-text-muted)}.pd-modal-close{background:none;border:none;font-size:28px;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1;transition:color .2s}.pd-modal-close:hover{color:var(--color-text-primary)}.pd-modal-body{flex:1;overflow-y:auto;padding:20px 24px}@media (max-width: 1024px){.pd-compact-view-container{grid-template-columns:1fr;grid-template-rows:300px 1fr}.pd-compact-matches-list{border-right:none;border-bottom:1px solid var(--color-border);max-height:300px}.pd-compact-bracket-panel{min-height:400px}}@media (max-width: 768px){.public-dashboard{flex-direction:column;height:100vh;position:relative}.pd-tournament-list-panel{width:100%;max-width:none;height:100%;border-right:none}.pd-content-panel{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--color-bg-primary);z-index:10}.pd-hidden-mobile,.pd-hide-mobile{display:none!important}.pd-mobile-only,.pd-show-mobile{display:block!important}.pd-list-controls{flex-direction:column;gap:12px;align-items:stretch}.pd-list-controls-left{justify-content:center}.pd-view-toggle{width:100%}.pd-toggle-btn{flex:1;text-align:center}.pd-compact-view-container{grid-template-rows:250px 1fr}.pd-compact-matches-list{max-height:250px}.pd-filters-section{align-items:flex-end;flex-wrap:wrap}.pd-filter-group{flex:1;min-width:0}.pd-clear-filters-btn{margin-left:0;text-align:center}.pd-mobile-match-cards{flex:1;overflow:auto;padding:8px 12px;display:flex;flex-direction:column;gap:8px}.pd-mobile-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:12px;cursor:pointer;transition:background-color .15s ease}.pd-mobile-card:active{background:var(--color-bg-selected)}.pd-mobile-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pd-mobile-card-time{font-size:12px;color:var(--color-text-muted)}.pd-mobile-card-matchup{display:flex;align-items:center;justify-content:space-between;gap:8px}.pd-mobile-team{font-weight:500;font-size:14px;color:var(--color-text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pd-mobile-team:last-child{text-align:right}.pd-mobile-score{font-weight:700;font-size:16px;color:var(--color-text-primary);flex-shrink:0;text-align:center;min-width:40px}.pd-mobile-card-ffa{display:flex;flex-direction:column;gap:4px}.pd-mobile-ffa-teams{font-size:13px;color:var(--color-text-primary);line-height:1.4}.pd-mobile-card-footer{margin-top:6px;padding-top:6px;border-top:1px solid var(--color-border)}.pd-mobile-card-room{font-size:12px;color:var(--color-text-muted)}.pd-stacked-container{padding:16px}.pd-matches-grid{grid-template-columns:1fr}.pd-empty-matches{margin:16px}}@media (min-width: 769px){.pd-mobile-only,.pd-show-mobile,.pd-back-button{display:none!important}}.pd-empty-matches{display:flex;align-items:center;justify-content:center;flex:1;padding:48px 24px;color:var(--color-text-muted);font-size:16px;text-align:center;background:var(--color-bg-card);border:1px dashed var(--color-border);border-radius:8px;margin:20px}.pd-table-container{flex:1;overflow:auto;padding:0 20px 20px}.pd-match-table{width:100%;border-collapse:collapse;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.pd-match-table th,.pd-match-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap}.pd-match-table th{background:var(--color-bg-shape);font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:10}.pd-match-table tbody tr{transition:background-color .2s}.pd-match-table tbody tr:hover{background:var(--color-bg-shape)}.pd-match-table tbody tr:last-child td{border-bottom:none}.pd-match-row-clickable{cursor:pointer}.pd-match-row-clickable:focus{outline:2px solid var(--color-accent);outline-offset:-2px}.pd-match-row-clickable:active{background:var(--color-bg-selected)}.pd-match-table td{color:var(--color-text-primary)}.pd-match-number{font-weight:600;color:var(--color-text-primary);font-size:13px}.pd-phase-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-shape);color:var(--color-text-muted);border:1px solid var(--color-border)}.pd-match-teams{display:flex;align-items:center;gap:8px}.pd-match-teams .pd-team{font-weight:500;color:var(--color-text-primary)}.pd-match-teams .pd-team.winner{color:var(--color-success);font-weight:700}.pd-match-teams .pd-vs{color:var(--color-text-muted);font-size:12px;font-weight:600}.pd-teams-cell{white-space:normal;word-wrap:break-word;line-height:1.4;max-width:300px}.pd-winner-name{color:var(--color-success);font-weight:700;font-size:14px}.pd-match-score{font-weight:700;font-size:16px;color:var(--color-text-primary)}.pd-text-muted{color:var(--color-text-muted)}.pd-status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.pd-status-scheduled{background:#dbeafe;color:#1d4ed8}.pd-status-in-progress{background:#fef3c7;color:#b45309}.pd-status-completed{background:#dcfce7;color:#15803d}.pd-status-forfeited{background:#fee2e2;color:#dc2626}.pd-stacked-container{flex:1;overflow:auto;padding:20px}.pd-phase-section{margin-bottom:48px}.pd-phase-section:last-child{margin-bottom:0}.pd-phase-header{margin-bottom:24px;padding-bottom:12px;border-bottom:2px solid var(--color-border)}.pd-phase-header h3{font-size:18px;font-weight:700;color:var(--color-text-heading);margin:0;text-transform:uppercase;letter-spacing:.5px}.pd-rounds-container{display:flex;flex-direction:column;gap:24px}.pd-round-section{padding-bottom:24px;border-bottom:1px solid var(--color-border)}.pd-round-section:last-child{border-bottom:none;padding-bottom:0}.pd-round-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.pd-round-header h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0}.pd-round-count{font-size:13px;color:var(--color-text-muted)}.pd-matches-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.pd-tournament-list-item:focus{outline:2px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){.pd-tournament-list-item{transition:none}}.pd-export-buttons{display:flex;gap:6px;margin-left:12px}.pd-export-btn{padding:4px 10px;font-size:12px;font-weight:500;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);cursor:pointer;transition:all .15s ease}.pd-export-btn:hover{background:var(--color-accent-bg);border-color:var(--color-accent);color:var(--color-accent)}.pd-export-btn:focus{outline:2px solid var(--color-accent);outline-offset:1px}.pd-export-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.pd-export-dialog{position:relative;background:var(--color-bg-primary);border-radius:12px;padding:28px;max-width:420px;width:90%;box-shadow:0 8px 32px #0000004d;animation:slideUp .2s ease}.pd-export-dialog h3{margin:0 0 12px;font-size:18px;font-weight:600;color:var(--color-text-heading)}.pd-export-dialog p{margin:0 0 20px;font-size:14px;color:var(--color-text-muted);line-height:1.5}.pd-export-dialog-buttons{display:flex;flex-direction:column;gap:10px}.pd-export-dialog-btn{padding:12px 16px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:center}.pd-export-dialog-btn-primary{background:var(--color-accent);border:none;color:#fff}.pd-export-dialog-btn-primary:hover{opacity:.9}.pd-export-dialog-btn:not(.pd-export-dialog-btn-primary){background:var(--color-bg-shape);border:1px solid var(--color-border);color:var(--color-text-primary)}.pd-export-dialog-btn:not(.pd-export-dialog-btn-primary):hover{background:var(--color-bg-secondary);border-color:var(--color-accent)}.pd-export-dialog-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border:none;background:transparent;color:var(--color-text-muted);font-size:20px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.pd-export-dialog-close:hover{background:var(--color-bg-shape);color:var(--color-text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.team-form-container{max-width:800px;margin:0 auto;padding:40px 20px}.team-form-header{margin-bottom:30px}.team-form-header h1{font-size:32px;font-weight:600;margin:0 0 8px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.team-form-loading{text-align:center;padding:40px;color:var(--color-text-muted)}.team-form{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--color-text-primary);font-size:14px}.form-group input,.form-group select{width:100%;padding:10px 14px;font-size:14px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-shape);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.form-group select:disabled{opacity:.6;cursor:not-allowed}.field-note{display:block;margin-top:6px;font-size:12px;color:var(--color-text-muted)}.game-cards-container{display:flex;flex-wrap:wrap;gap:12px}.game-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 16px;min-width:100px;background-color:var(--color-bg-shape);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s}.game-card:hover{border-color:var(--color-text-muted);background-color:var(--color-bg-shape-dim)}.game-card.selected{border-color:var(--color-accent);background-color:var(--color-accent-bg)}.game-card-icon{width:32px;height:32px;object-fit:contain}.game-card-name{font-size:13px;font-weight:500;color:var(--color-text-primary);text-align:center}.game-card-abbr{font-size:11px;color:var(--color-text-muted);text-transform:uppercase}.no-games-message{color:var(--color-text-muted);font-style:italic;margin:0;padding:8px 0}@media (max-width: 768px){.team-form-container{padding:20px}.team-form{padding:24px}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}.game-cards-container{gap:8px}.game-card{min-width:80px;padding:10px 12px}}.player-form{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-bottom:24px}.player-form .error-message{padding:10px 14px;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;margin-bottom:16px;font-size:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:6px;font-weight:500;color:var(--color-text-primary);font-size:14px}.required{color:#e53e3e}.form-group input,.form-group select{padding:8px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:6px;transition:border-color .2s;background-color:var(--color-bg-shape-light);color:var(--color-text-primary)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #3b82f61a}.field-note{margin-top:4px;font-size:12px;color:var(--color-text-muted)}.field-note.warning{color:#d97706;font-weight:500}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.tournament-registration-form{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-bottom:24px}.tournament-checkboxes{max-height:400px;overflow-y:auto;margin-bottom:16px}.tournament-checkbox-item{padding:12px;border-bottom:1px solid var(--color-border)}.tournament-checkbox-item:last-child{border-bottom:none}.tournament-checkbox-item label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.tournament-checkbox-item label.disabled{cursor:not-allowed;opacity:.6}.tournament-checkbox-item input[type=checkbox]{margin-top:4px;width:18px;height:18px;cursor:pointer}.tournament-checkbox-item input[type=checkbox]:disabled{cursor:not-allowed}.tournament-info{flex:1;display:flex;flex-direction:column;gap:4px}.tournament-name{font-size:15px;font-weight:600;color:var(--color-text-primary)}.tournament-details{font-size:13px;color:var(--color-text-muted)}.tournament-status{font-size:12px;font-weight:500;color:#059669;background:#05966933;padding:2px 8px;border-radius:4px;display:inline-block;width:fit-content}.tournament-status.warning{color:#d97706;background:#d9770633}.empty-state{text-align:center;padding:24px;color:var(--color-text-muted);font-size:14px}.form-info{padding:12px;background:var(--color-bg-shape-light);border:1px solid var(--color-border);border-radius:6px;margin-bottom:16px}.info-text{margin:0;font-size:14px;color:var(--color-accent);font-weight:500}.form-actions{display:flex;gap:10px;justify-content:flex-end}.btn-primary,.btn-secondary{padding:8px 20px;font-size:14px;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all .2s}@media (max-width: 768px){.tournament-registration-form{padding:16px}.tournament-checkboxes{max-height:300px}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.player-management-container{max-width:1200px;margin:0 auto;padding:40px 20px}.player-management-loading,.player-management-error{text-align:center;padding:40px;color:var(--color-text-muted);font-size:16px}.player-management-error{color:var(--color-error)}.player-management-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.player-management-header h1{font-size:32px;font-weight:600;margin:0 0 8px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.team-subtitle{font-size:14px;color:var(--color-text-muted);margin:0}.btn-back{padding:12px 24px;font-size:14px;font-weight:500;background:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;transition:all .2s}.btn-back:hover{background:var(--color-bg-shape-dim)}.error-message{padding:12px;background-color:var(--color-error-bg);border:1px solid var(--color-error);border-radius:4px;color:var(--color-error);margin-bottom:24px;font-size:14px}.management-sections{display:flex;flex-direction:column;gap:30px}.section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000004d}.section-header h2{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0}.btn-add{padding:10px 20px;font-size:14px;font-weight:500;background:var(--color-accent-gradient);color:#fff;border:none;border-radius:4px;cursor:pointer;transition:all .2s}.btn-add:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.btn-add:disabled{opacity:.6;cursor:not-allowed}.empty-state{text-align:center;padding:30px;color:var(--color-text-muted);font-size:14px}.registered-tournaments{margin-top:16px}.tournament-list{display:flex;flex-direction:column;gap:12px}.tournament-item{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px}.tournament-name{flex:1;font-weight:500;color:var(--color-text-primary)}.tournament-game{font-size:14px;color:var(--color-text-muted)}.tournament-players{font-size:14px;color:var(--color-accent);font-weight:500}.tournament-selector{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding:12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px}.tournament-selector label{font-weight:500;color:var(--color-text-primary);white-space:nowrap}.tournament-selector select{flex:1;padding:8px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-shape);color:var(--color-text-primary)}.tournament-selector select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.players-list{margin-top:16px}.players-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.player-card{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px;transition:all .2s}.player-card:hover{background:var(--color-bg-shape-dim)}.player-info{display:flex;flex-direction:column;gap:4px;flex:1}.player-nickname{font-size:14px;font-weight:600;color:var(--color-text-primary)}.player-username{font-size:12px;color:var(--color-text-muted)}.btn-remove{padding:6px 12px;font-size:14px;color:#fff;background:var(--color-accent-light);border:1px solid var(--color-error);border-radius:4px;cursor:pointer;transition:all .2s;line-height:1}.btn-remove:hover{background:var(--color-accent)}@media (max-width: 768px){.player-management-container{padding:20px}.player-management-header{flex-direction:column;gap:16px}.player-management-header h1{font-size:24px}.btn-back{align-self:flex-start}.section{padding:20px}.section-header{flex-direction:column;align-items:flex-start;gap:12px}.btn-add{width:100%}.tournament-item{flex-direction:column;align-items:flex-start;gap:8px}.tournament-selector{flex-direction:column;align-items:flex-start}.tournament-selector select{width:100%}.players-grid{grid-template-columns:1fr}}.league-format-selector{padding:20px}.league-format-selector h2{font-size:24px;font-weight:700;margin:0 0 12px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.league-format-selector .step-description{font-size:16px;color:var(--color-text-muted);margin-bottom:24px}.format-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.format-option{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:8px;padding:16px;cursor:pointer;transition:all .2s}.format-option:hover{border-color:var(--color-accent);background:var(--color-bg-shape)}.format-option.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.format-option-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.format-option-header input[type=radio]{width:18px;height:18px;accent-color:var(--color-accent)}.format-option-name{font-size:16px;font-weight:600;color:var(--color-text-primary)}.format-option-description{font-size:14px;color:var(--color-text-muted);margin:0 0 8px 30px;line-height:1.4}.format-option-recommendation{display:inline-block;font-size:12px;color:var(--color-success);background:var(--color-success-bg);padding:4px 10px;border-radius:12px;margin-left:30px}.format-config{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-bottom:24px}.format-config h3{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600;margin:0 0 16px;color:var(--color-text-primary)}.manual-groups-badge{display:inline-block;font-size:12px;font-weight:500;color:var(--color-success);background:var(--color-success-bg);padding:4px 10px;border-radius:12px}.manual-groups-info{background:var(--color-accent-bg);border:1px solid var(--color-accent);border-radius:6px;padding:16px}.manual-groups-info .config-note{margin-bottom:8px;color:var(--color-text-primary)}.manual-groups-info .config-hint{margin:0;font-style:italic}.config-note{font-size:14px;color:var(--color-text-muted);margin-bottom:16px}.config-toggle{display:flex;gap:8px;margin-bottom:16px}.toggle-btn{flex:1;padding:10px 16px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-muted);font-size:14px;cursor:pointer;transition:all .2s}.toggle-btn:hover{border-color:var(--color-accent)}.toggle-btn.active{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.config-field{display:flex;flex-direction:column;gap:8px}.config-field label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.config-field input[type=number]{width:120px;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-primary);font-size:16px}.config-field input[type=number]:focus{outline:none;border-color:var(--color-accent)}.config-hint{font-size:13px;color:var(--color-text-muted)}.format-summary{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px}.format-summary h3{font-size:16px;font-weight:600;margin:0 0 16px;color:var(--color-text-primary)}.summary-stats{display:flex;gap:24px;flex-wrap:wrap}.summary-stat{display:flex;flex-direction:column;align-items:center;padding:16px 24px;background:var(--color-bg-shape);border-radius:8px;min-width:100px}.stat-value{font-size:28px;font-weight:700;color:var(--color-accent)}.stat-label{font-size:13px;color:var(--color-text-muted);margin-top:4px}@media (max-width: 768px){.league-format-selector{padding:16px}.league-format-selector h2{font-size:20px}.format-option{padding:14px}.format-option-name{font-size:15px}.format-option-description{font-size:13px;margin-left:0;margin-top:8px}.format-option-recommendation{margin-left:0;margin-top:8px}.config-toggle{flex-direction:column}.summary-stats{gap:12px}.summary-stat{flex:1;min-width:80px;padding:12px 16px}.stat-value{font-size:24px}}.bracket-phase-selector{padding:20px}.bracket-phase-selector h2{font-size:24px;font-weight:700;margin:0 0 12px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.bracket-phase-selector .step-description{font-size:16px;color:var(--color-text-muted);margin-bottom:24px}.bracket-format-options{display:flex;gap:16px;margin-bottom:24px}.bracket-format-option{flex:1;display:flex;gap:16px;background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:12px;padding:20px;cursor:pointer;transition:all .2s}.bracket-format-option:hover{border-color:var(--color-accent);background:var(--color-bg-shape)}.bracket-format-option.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.bracket-format-icon{font-size:48px;line-height:1}.bracket-format-content{flex:1}.bracket-format-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.bracket-format-header input[type=radio]{width:18px;height:18px;accent-color:var(--color-accent)}.bracket-format-name{font-size:18px;font-weight:600;color:var(--color-text-primary)}.bracket-format-description{font-size:14px;color:var(--color-text-muted);margin:0;line-height:1.5}.bracket-phase-config{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-bottom:24px}.bracket-phase-config h3{font-size:16px;font-weight:600;margin:0 0 16px;color:var(--color-text-primary)}.bracket-phase-config .config-field{display:flex;flex-direction:column;gap:8px}.bracket-phase-config .config-field label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.bracket-phase-config .config-field select{width:200px;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-primary);font-size:14px}.bracket-phase-config .config-field select:focus{outline:none;border-color:var(--color-accent)}.bracket-phase-config .config-field input[type=number]{width:200px;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-primary);font-size:14px}.bracket-phase-config .config-field input[type=number]:focus{outline:none;border-color:var(--color-accent)}.bracket-phase-config .config-field input[type=number].input-error{border-color:var(--color-error, #ef4444);background:#ef44440d}.bracket-phase-config .config-field input[type=number].input-error:focus{border-color:var(--color-error, #ef4444)}.bracket-phase-config .config-hint{font-size:13px;color:var(--color-text-muted)}.bracket-phase-config .config-error{font-size:13px;color:var(--color-error, #ef4444);font-weight:500}.split-bracket-preview{display:flex;gap:16px;margin-bottom:20px}.bracket-preview-section{flex:1;display:flex;flex-direction:column;align-items:center;padding:16px;border-radius:8px;text-align:center}.bracket-preview-section.upper{background:#ffd70026;border:2px solid rgba(255,215,0,.5)}.bracket-preview-section.lower{background:#c0c0c026;border:2px solid rgba(192,192,192,.5)}.bracket-label{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.bracket-preview-section.upper .bracket-label{color:gold}.bracket-preview-section.lower .bracket-label{color:silver}.bracket-count{font-size:24px;font-weight:700;color:var(--color-text-primary);margin-bottom:4px}.bracket-hint{font-size:12px;color:var(--color-text-muted)}.super-final-config{border-top:1px solid var(--color-border);padding-top:20px}.super-final-toggle{margin-bottom:16px}.super-final-toggle label{display:flex;align-items:center;gap:12px;cursor:pointer}.super-final-toggle label input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-accent)}.super-final-toggle label span{font-size:16px;font-weight:600;color:var(--color-text-primary)}.toggle-hint{font-size:13px;color:var(--color-text-muted);margin:8px 0 0 32px}.super-final-format{margin-top:16px;padding:16px;background:var(--color-bg-card);border-radius:8px}.super-final-format>label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:12px}.format-radio-group{display:flex;flex-direction:column;gap:12px}.format-radio{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s}.format-radio:hover{border-color:var(--color-accent)}.format-radio.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.format-radio input[type=radio]{width:16px;height:16px;margin-top:2px;accent-color:var(--color-accent)}.format-radio-content{display:flex;flex-direction:column;gap:4px}.format-radio-name{font-size:14px;font-weight:600;color:var(--color-text-primary)}.format-radio-description{font-size:13px;color:var(--color-text-muted)}.bracket-phase-summary{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px}.bracket-phase-summary h3{font-size:16px;font-weight:600;margin:0 0 12px;color:var(--color-text-primary)}.bracket-phase-summary ul{list-style:none;padding:0;margin:0}.bracket-phase-summary li{padding:8px 0 8px 24px;position:relative;font-size:14px;color:var(--color-text-muted)}.bracket-phase-summary li:before{content:"→";position:absolute;left:0;color:var(--color-accent)}.bracket-structure-mode-config{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-top:24px;margin-bottom:24px}.bracket-structure-mode-config h3{font-size:16px;font-weight:600;margin:0 0 8px;color:var(--color-text-primary)}.bracket-structure-mode-config .config-description{font-size:14px;color:var(--color-text-muted);margin:0 0 16px}.structure-mode-options{display:flex;flex-direction:column;gap:12px}.structure-mode-option{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--color-bg-card)}.structure-mode-option:hover{border-color:var(--color-accent)}.structure-mode-option.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.structure-mode-option input[type=radio]{width:18px;height:18px;margin-top:2px;accent-color:var(--color-accent);flex-shrink:0}.structure-mode-content{display:flex;flex-direction:column;gap:6px}.structure-mode-name{font-size:15px;font-weight:600;color:var(--color-text-primary)}.structure-mode-description{font-size:14px;color:var(--color-text-secondary);line-height:1.5}.structure-mode-hint{font-size:13px;color:var(--color-text-muted);font-style:italic}.bracket-upfront-config{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-top:24px}.bracket-upfront-toggle label{display:flex;align-items:center;gap:12px;cursor:pointer}.bracket-upfront-toggle label input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-accent)}.bracket-upfront-toggle label span{font-size:16px;font-weight:600;color:var(--color-text-primary)}@media (max-width: 768px){.bracket-phase-selector{padding:16px}.bracket-phase-selector h2{font-size:20px}.bracket-format-options{flex-direction:column}.bracket-format-option{padding:16px}.bracket-format-icon{font-size:36px}.bracket-format-name{font-size:16px}.split-bracket-preview{flex-direction:column}.bracket-phase-config .config-field select{width:100%}}.bracket-generator-container{max-width:1200px;margin:0 auto;padding:40px 20px}.generator-header{text-align:center;margin-bottom:40px}.generator-header h1{font-size:32px;margin-bottom:8px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tournament-name{font-size:18px;color:var(--color-text-muted);margin:4px 0}.team-count{font-size:16px;color:var(--color-text-muted);margin:4px 0}.wizard-steps{display:flex;justify-content:space-between;margin-bottom:40px;position:relative}.wizard-steps:before{content:"";position:absolute;top:20px;left:10%;right:10%;height:2px;background:var(--color-border);z-index:0}.step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.step-number{width:40px;height:40px;border-radius:50%;background:var(--color-bg-card);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-weight:600;margin-bottom:8px;transition:all .3s}.step-label{font-size:14px;color:var(--color-text-muted);text-align:center}.step.active .step-number{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.step.completed .step-number{background:var(--color-success);color:#fff;border-color:var(--color-success)}.step.active .step-label{color:var(--color-accent);font-weight:600}.wizard-content{min-height:400px;margin-bottom:40px}.wizard-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:1px solid var(--color-border, #e0e0e0)}.format-selector{padding:20px}.format-selector h2{font-size:24px;margin-bottom:12px}.step-description{font-size:16px;color:var(--color-text-muted);margin-bottom:24px}.format-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:30px}.format-card{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:12px;padding:24px;cursor:pointer;transition:all .3s;position:relative}.format-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.format-card.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.format-card.not-ideal{opacity:.7}.format-icon{font-size:48px;text-align:center;margin-bottom:16px}.format-name{font-size:20px;font-weight:600;margin-bottom:12px;text-align:center}.format-description{font-size:14px;color:var(--color-text-muted);margin-bottom:16px;line-height:1.5}.format-recommendation{font-size:13px;color:var(--color-success);font-weight:500;text-align:center;padding:8px;background:var(--color-success-bg);border-radius:6px}.format-warning{font-size:12px;color:var(--color-warning);margin-top:8px;text-align:center}.selected-indicator{position:absolute;top:12px;right:12px;background:var(--color-accent);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.format-info{background:var(--color-bg-shape);padding:20px;border-radius:8px;border:1px solid var(--color-border)}.format-info h3{margin-bottom:12px}.format-info ul{list-style:none;padding:0}.format-info li{padding:8px 0 8px 24px;position:relative}.format-info li:before{content:"•";position:absolute;left:8px;color:var(--color-accent);font-weight:700}.team-seeder{padding:20px}.team-seeder h2{font-size:24px;margin-bottom:12px}.seeder-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.seeder-info{font-size:14px;color:var(--color-text-muted)}.seed-list{max-height:500px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-card)}.seed-item{display:flex;align-items:center;padding:16px;border-bottom:1px solid var(--color-border);cursor:move;transition:background .2s}.seed-item:last-child{border-bottom:none}.seed-item:hover{background:var(--color-bg-shape)}.seed-item.dragging{opacity:.5}.seed-number{font-size:18px;font-weight:600;color:var(--color-accent);min-width:50px}.seed-grip{color:var(--color-text-muted);margin-right:12px;cursor:grab}.seed-team-name{flex:1;font-size:16px}.seed-controls{display:flex;gap:8px}.btn-icon:hover{background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.anti-team-selector{padding:20px}.anti-team-selector h2{font-size:24px;margin-bottom:12px}.anti-team-info{background:#5ea0f726;border-left:4px solid var(--color-text-heading);padding:12px 16px;margin-bottom:24px;border-radius:4px}.add-anti-team-btn{margin-bottom:24px}.anti-team-list{display:flex;flex-direction:column;gap:12px}.anti-team-item{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:16px;display:flex;align-items:center;gap:16px}.anti-team-names{flex:1;display:flex;align-items:center;gap:12px;font-size:16px}.team-name{font-weight:500}.vs-separator{color:var(--color-text-muted);font-size:14px}.anti-team-reason{font-size:14px;color:var(--color-text-muted);font-style:italic}.btn-remove{background:var(--color-error);color:#fff;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:18px;line-height:1;transition:background .2s}.btn-remove:hover{background:var(--color-accent-light)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--color-bg-card);border-radius:12px;padding:32px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{margin-bottom:24px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.bracket-preview{padding:20px}.bracket-preview h2{font-size:24px;margin-bottom:12px}.warnings-section{background:var(--color-warning-bg);border-left:4px solid var(--color-warning);padding:16px;margin-bottom:24px;border-radius:4px}.warnings-section h3{margin-bottom:12px}.warning-list{list-style:none;padding:0;margin-bottom:12px}.warning-item{padding:6px 0 6px 20px;position:relative}.warning-item:before{content:"⚠️";position:absolute;left:0}.warning-note{font-size:14px;color:var(--color-text-muted);margin-top:8px}.preview-summary{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-bottom:24px}.preview-summary h3{margin-bottom:16px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.summary-item{display:flex;justify-content:space-between;padding:12px;background:var(--color-bg-card);border-radius:6px}.summary-label{font-weight:600}.summary-value{color:var(--color-accent);font-weight:500}.format-description{font-size:14px;color:var(--color-text-muted);font-style:italic}.matches-preview{margin-bottom:24px}.matches-preview h3{margin-bottom:12px}.preview-note{font-size:14px;color:var(--color-text-muted);margin-bottom:16px}.rounds-container{max-height:400px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px;padding:16px;background:var(--color-bg-card)}.round-section{margin-bottom:24px}.round-section:last-child{margin-bottom:0}.round-title{font-size:18px;font-weight:600;margin-bottom:12px;color:var(--color-accent)}.round-matches{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.match-preview-item{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;padding:12px}.match-number{font-size:12px;font-weight:600;color:var(--color-text-muted);margin-bottom:8px}.match-teams{display:flex;align-items:center;gap:8px}.match-team{flex:1;font-size:14px;font-weight:500}.match-team.tbd{color:var(--color-text-muted);font-style:italic;font-size:12px;text-align:center}.match-vs{font-size:12px;color:var(--color-text-muted)}.match-bracket-type{font-size:11px;color:var(--color-text-heading);margin-top:6px;text-align:center;text-transform:capitalize}.preview-loading{text-align:center;padding:40px;color:var(--color-text-muted)}.preview-actions-info{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px}.preview-actions-info h3{margin-bottom:12px}.preview-actions-info ul{list-style:none;padding:0;margin-bottom:12px}.preview-actions-info li{padding:8px 0 8px 24px;position:relative}.preview-actions-info li:before{content:"→";position:absolute;left:8px;color:var(--color-accent)}.confirm-note{font-size:14px;color:var(--color-text-muted);font-style:italic;margin-top:12px}.loading-state,.empty-state{text-align:center;padding:40px;color:var(--color-text-muted)}.error-message{background:var(--color-error-bg);color:var(--color-error);padding:12px 16px;border-radius:6px;margin-bottom:16px;border:1px solid var(--color-error)}.warning-message{background:var(--color-warning-bg);color:var(--color-warning);padding:12px 16px;border-radius:6px;margin-bottom:16px;border:1px solid var(--color-warning)}@media (max-width: 768px){.wizard-steps{flex-wrap:wrap;gap:16px}.wizard-steps:before{display:none}.step{flex:0 0 calc(50% - 8px)}.format-cards,.summary-grid,.round-matches{grid-template-columns:1fr}}.bracket-generation-wizard{max-width:100%}.bracket-generation-wizard .wizard-header{margin-bottom:24px}.bracket-generation-wizard .wizard-header h2{font-size:24px;font-weight:600;color:var(--color-text-heading);margin:0 0 4px}.bracket-generation-wizard .wizard-subtitle{font-size:14px;color:var(--color-text-muted);margin:0}.bracket-generation-wizard .wizard-blocked{text-align:center;padding:48px 24px;background:var(--color-bg-card);border:1px dashed var(--color-border);border-radius:8px}.bracket-generation-wizard .blocked-icon{font-size:48px;margin-bottom:16px}.bracket-generation-wizard .wizard-blocked h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.bracket-generation-wizard .wizard-blocked p{font-size:14px;color:var(--color-text-muted);margin:0;line-height:1.6}.bracket-generation-wizard .wizard-steps{display:flex;justify-content:space-between;margin-bottom:32px;position:relative;padding:0 20px}.bracket-generation-wizard .wizard-steps:before{content:"";position:absolute;top:16px;left:10%;right:10%;height:2px;background:var(--color-border);z-index:0}.bracket-generation-wizard .step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.bracket-generation-wizard .step-number{width:32px;height:32px;border-radius:50%;background:var(--color-bg-card);border:2px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;margin-bottom:6px;transition:all .3s}.bracket-generation-wizard .step-label{font-size:12px;color:var(--color-text-muted);text-align:center;max-width:80px}.bracket-generation-wizard .step.active .step-number{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.bracket-generation-wizard .step.completed .step-number{background:var(--color-success);color:#fff;border-color:var(--color-success)}.bracket-generation-wizard .step.active .step-label{color:var(--color-accent);font-weight:600}.bracket-generation-wizard .wizard-content{min-height:350px;margin-bottom:24px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:24px}.bracket-generation-wizard .wizard-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--color-border)}.bracket-generation-wizard .error-message{background:var(--color-error-bg);color:var(--color-error);padding:12px 16px;border-radius:6px;margin-bottom:16px;border:1px solid var(--color-error)}@media (max-width: 768px){.bracket-generation-wizard .wizard-steps{flex-wrap:wrap;gap:12px;padding:0}.bracket-generation-wizard .wizard-steps:before{display:none}.bracket-generation-wizard .step{flex:0 0 calc(33.33% - 8px)}.bracket-generation-wizard .step-label{font-size:11px}.bracket-generation-wizard .wizard-content{padding:16px}.bracket-generation-wizard .wizard-actions{flex-wrap:wrap}.bracket-generation-wizard .wizard-actions button{flex:1;min-width:120px}}.bracket-configuration-panel{max-width:800px}.bracket-configuration-panel .panel-header{margin-bottom:24px}.bracket-configuration-panel .panel-header h2{font-size:24px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.bracket-configuration-panel .panel-description{font-size:14px;color:var(--color-text-muted);margin:0;line-height:1.5}.bracket-configuration-panel .edit-warning{color:var(--color-warning);font-style:italic}.bracket-configuration-panel .error-message{background:var(--color-error-bg);color:var(--color-error);padding:12px 16px;border-radius:6px;margin-bottom:16px;border:1px solid var(--color-error)}.bracket-configuration-panel .success-message{background:var(--color-success-bg);color:var(--color-success);padding:12px 16px;border-radius:6px;margin-bottom:16px;border:1px solid var(--color-success)}.bracket-configuration-panel .configuration-sections{display:flex;flex-direction:column;gap:24px}.bracket-configuration-panel .config-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px}.bracket-configuration-panel .config-section h3{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.bracket-configuration-panel .config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.bracket-configuration-panel .config-item{display:flex;flex-direction:column;gap:6px}.bracket-configuration-panel .config-item label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.bracket-configuration-panel .config-item select,.bracket-configuration-panel .config-item input{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-input);color:var(--color-text-primary);transition:border-color .2s}.bracket-configuration-panel .config-item select:focus,.bracket-configuration-panel .config-item input:focus{outline:none;border-color:var(--color-accent)}.bracket-configuration-panel .config-item select:disabled,.bracket-configuration-panel .config-item input:disabled{opacity:.6;cursor:not-allowed}.bracket-configuration-panel .config-help{font-size:12px;color:var(--color-text-muted);line-height:1.4}.bracket-configuration-panel .info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.bracket-configuration-panel .info-item{display:flex;flex-direction:column;gap:4px}.bracket-configuration-panel .info-label{font-size:12px;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.bracket-configuration-panel .info-value{font-size:14px;color:var(--color-text-primary);font-weight:500}.bracket-configuration-panel .format-note{font-size:13px;color:var(--color-text-muted);font-style:italic;margin-top:12px;padding-top:12px;border-top:1px dashed var(--color-border)}.bracket-configuration-panel .summary-section{background:var(--color-bg-shape)}.bracket-configuration-panel .summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.bracket-configuration-panel .summary-item{display:flex;justify-content:space-between;padding:10px 12px;background:var(--color-bg-card);border-radius:6px;border:1px solid var(--color-border)}.bracket-configuration-panel .summary-label{font-size:13px;color:var(--color-text-muted)}.bracket-configuration-panel .summary-value{font-size:13px;font-weight:600;color:var(--color-accent)}.bracket-configuration-panel .panel-actions{display:flex;align-items:center;gap:16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border)}.bracket-configuration-panel .no-changes-note{font-size:13px;color:var(--color-text-muted);font-style:italic}@media (max-width: 768px){.bracket-configuration-panel .config-grid,.bracket-configuration-panel .info-grid,.bracket-configuration-panel .summary-grid{grid-template-columns:1fr}.bracket-configuration-panel .panel-actions{flex-direction:column;align-items:stretch}}.bracket-standings-view{max-width:100%}.bracket-standings-view .standings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.bracket-standings-view .header-info{display:flex;align-items:center;gap:16px}.bracket-standings-view .header-info h2{font-size:24px;font-weight:600;color:var(--color-text-heading);margin:0}.bracket-standings-view .phase-badge{padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.bracket-standings-view .phase-league{background:var(--color-accent-bg);color:var(--color-accent)}.bracket-standings-view .phase-bracket{background:var(--color-success-bg);color:var(--color-success)}.bracket-standings-view .phase-setup{background:var(--color-warning-bg);color:var(--color-warning)}.bracket-standings-view .phase-completed{background:var(--color-text-muted);color:#fff}.bracket-standings-view .error-message{background:var(--color-error-bg);color:var(--color-error);padding:12px 16px;border-radius:6px;margin-bottom:16px;border:1px solid var(--color-error)}.bracket-standings-view .advancement-info{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-accent-bg);border:1px solid var(--color-accent);border-radius:8px;margin-bottom:20px;color:var(--color-accent);font-weight:500}.bracket-standings-view .advancement-icon{font-size:16px}.bracket-standings-view .standings-empty{text-align:center;padding:48px 24px;background:var(--color-bg-card);border:1px dashed var(--color-border);border-radius:8px}.bracket-standings-view .empty-icon{font-size:48px;margin-bottom:16px}.bracket-standings-view .standings-empty h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.bracket-standings-view .standings-empty p{font-size:14px;color:var(--color-text-muted);margin:0}.bracket-standings-view .transition-help{margin-top:24px;padding:20px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px}.bracket-standings-view .transition-help h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.bracket-standings-view .transition-help p{font-size:14px;color:var(--color-text-secondary);margin:0 0 12px;line-height:1.5}.bracket-standings-view .transition-help ul{margin:0;padding-left:20px}.bracket-standings-view .transition-help li{font-size:13px;color:var(--color-text-muted);padding:4px 0}@media (max-width: 768px){.bracket-standings-view .standings-header{flex-direction:column;gap:16px;align-items:flex-start}.bracket-standings-view .header-info{flex-direction:column;align-items:flex-start;gap:8px}}.manual-group-setup{margin-top:24px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg-card)}.manual-group-setup .section-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s}.manual-group-setup .section-header:hover{background:var(--color-bg-shape-light)}.manual-group-setup .section-header h3{margin:0;font-size:16px;color:var(--color-text-primary)}.manual-group-setup .section-header.locked h3{color:var(--color-text-muted)}.manual-group-setup .expand-icon{font-size:20px;color:var(--color-text-muted)}.manual-group-setup .unsaved-indicator{color:var(--color-warning);margin-left:8px}.manual-group-setup .section-content{padding:20px;border-top:1px solid var(--color-border)}.manual-group-setup .locked-message{padding:16px;background:var(--color-warning-bg);border-radius:6px;color:var(--color-warning)}.manual-group-setup .setup-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.manual-group-setup .team-count{color:var(--color-text-muted);font-size:13px}.manual-group-setup .group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:24px}.manual-group-setup .save-actions{display:flex;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--color-border)}.manual-group-setup .empty-state{text-align:center;padding:40px 20px;color:var(--color-text-muted)}.group-card{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:16px;transition:border-color .2s,box-shadow .2s}.group-card.drop-target{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.group-card .group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.group-card .group-header h4{margin:0;font-size:15px;color:var(--color-text-heading)}.group-card .team-count-badge{font-size:12px;color:var(--color-text-muted);background:var(--color-bg-shape-dim);padding:2px 8px;border-radius:10px}.group-card .team-list{min-height:100px;margin:12px 0}.group-card .empty-group{display:flex;align-items:center;justify-content:center;min-height:100px;color:var(--color-text-muted);font-size:13px;border:1px dashed var(--color-border);border-radius:6px}.group-card .delete-group-btn{width:100%;margin-top:12px}.team-item{display:flex;align-items:center;gap:6px;padding:6px 8px;margin-bottom:4px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:4px;cursor:grab;transition:transform .15s,box-shadow .15s,border-color .15s}.team-item:last-child{margin-bottom:0}.team-item:hover{border-color:var(--color-border-light)}.team-item:focus{outline:2px solid var(--color-accent);outline-offset:1px}.team-item.dragging{opacity:.6;transform:scale(1.02);box-shadow:0 4px 12px #0000004d;cursor:grabbing}.team-item.drop-target{border-color:var(--color-accent);border-style:dashed}.team-item .drag-handle{color:var(--color-text-muted);font-size:10px;cursor:grab;padding:0 2px}.team-item .team-info{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.team-item .team-info>*{display:inline!important;background:none!important;padding:0!important;margin:0!important;border:none!important}.team-item .item-team-name{font-size:13px;color:var(--color-text-primary)}.team-item .item-separator{margin:0 4px!important;color:var(--color-text-muted);font-size:11px}.team-item .item-club-name{font-size:11px;color:var(--color-text-muted)}.team-item .team-controls{display:flex;gap:2px}.team-item .btn-icon{width:22px;height:22px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid transparent;border-radius:3px;color:var(--color-text-muted);cursor:pointer;font-size:9px;transition:all .15s}.team-item .btn-icon:hover:not(:disabled){background:var(--color-bg-shape);border-color:var(--color-border);color:var(--color-text-primary)}.team-item .btn-icon:disabled{opacity:.3;cursor:not-allowed}.team-item .btn-remove:hover:not(:disabled){color:var(--color-error);border-color:var(--color-error)}.team-search,.team-search .search-input-wrapper{position:relative}.team-search .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--color-text-muted);font-size:14px;pointer-events:none}.team-search .search-input{width:100%;padding:8px 12px 8px 36px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-size:13px}.team-search .search-input:focus{outline:none;border-color:var(--color-accent)}.team-search .search-input::placeholder{color:var(--color-text-muted)}.team-search .search-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;max-height:200px;overflow-y:auto;z-index:100;box-shadow:0 4px 12px #0000004d}.team-search .search-dropdown.no-results{padding:12px 16px;color:var(--color-text-muted);font-size:13px}.team-search .search-result{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;cursor:pointer;transition:background-color .15s}.team-search .search-result:hover,.team-search .search-result.highlighted{background:var(--color-bg-shape)}.team-search .search-result.chosen{opacity:.6;cursor:default}.team-search .search-result.chosen:hover{background:transparent}.team-search .result-info{flex:1;min-width:0}.team-search .result-team-name{display:block;font-size:14px;color:var(--color-text-primary)}.team-search .result-club-name{display:block;font-size:12px;color:var(--color-text-muted)}.team-search .chosen-badge{font-size:11px;color:var(--color-text-muted);background:var(--color-bg-shape-dim);padding:2px 8px;border-radius:10px;margin-left:8px}@media (max-width: 768px){.manual-group-setup .group-grid{grid-template-columns:1fr}.manual-group-setup .setup-actions{flex-direction:column;gap:12px;align-items:stretch}.manual-group-setup .team-count{text-align:center}}.time-block-manager{width:100%}.time-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.time-block-header h4{margin:0;font-size:16px;font-weight:600;color:var(--color-text-heading)}.time-block-empty{padding:24px;background-color:var(--color-bg-shape);border:1px dashed var(--color-border);border-radius:8px;text-align:center}.time-block-empty p{margin:0;color:var(--color-text-muted);font-size:14px}.time-block-empty .time-block-help{margin-top:8px;font-size:13px;color:var(--color-text-muted)}.time-block-days{display:flex;flex-direction:column;gap:16px}.time-block-day{border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-card);overflow:hidden}.day-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.day-date-input{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.day-date-input input[type=date]{padding:6px 10px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.day-date-input input[type=date]:focus{outline:none;border-color:var(--color-accent)}.day-display{font-weight:500;color:var(--color-text-primary);font-size:14px}.day-blocks{padding:16px}.time-block-row{display:flex;align-items:center;gap:12px;padding:8px 0;flex-wrap:wrap}.time-block-row:not(:last-child){border-bottom:1px solid var(--color-border)}.time-inputs{display:flex;align-items:center;gap:12px}.time-inputs label{display:flex;flex-direction:column;gap:4px}.time-label{font-size:12px;color:var(--color-text-muted);font-weight:500}.time-inputs input[type=time]{padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;min-width:120px;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.time-inputs input[type=time]:focus{outline:none;border-color:var(--color-accent)}.time-separator{color:var(--color-text-muted);font-size:14px;padding-top:18px}.input-error{border-color:var(--color-error)!important}.field-error{color:var(--color-error);font-size:12px;margin-top:4px}.block-error{color:var(--color-error);font-size:12px;width:100%;padding-top:4px}.time-block-manager .btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.time-block-manager .btn:disabled{opacity:.5;cursor:not-allowed}.time-block-manager .btn-sm{padding:6px 12px;font-size:13px}.time-block-manager .btn-secondary{background-color:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border)}.time-block-manager .btn-secondary:hover:not(:disabled){background-color:var(--color-bg-shape-dim)}.time-block-manager .btn-text{background:none;padding:4px 8px;font-size:13px;color:var(--color-text-primary)}.time-block-manager .btn-text:hover:not(:disabled){background-color:var(--color-bg-shape)}.time-block-manager .btn-text.btn-danger{color:var(--color-error)}.time-block-manager .btn-text.btn-danger:hover:not(:disabled){background-color:var(--color-error-bg)}.time-block-manager .btn-icon{width:28px;height:28px;padding:0;font-size:18px;line-height:1;border-radius:50%;background-color:transparent;color:var(--color-text-muted)}.time-block-manager .btn-icon:hover:not(:disabled){background-color:var(--color-bg-shape)}.time-block-manager .btn-icon.btn-danger{color:var(--color-error)}.time-block-manager .btn-icon.btn-danger:hover:not(:disabled){background-color:var(--color-error-bg)}.btn-add-block{margin-top:8px;color:var(--color-text-heading)}.btn-add-block:hover:not(:disabled){background-color:#5ea0f726}.time-block-info{margin-top:12px;padding:8px 12px;background-color:#5ea0f726;color:var(--color-text-heading);border-radius:4px;font-size:13px}@media (max-width: 768px){.day-header{flex-direction:column;align-items:flex-start;gap:8px}.time-inputs{flex-direction:column;align-items:stretch;width:100%}.time-inputs label{width:100%}.time-inputs input[type=time]{width:100%;min-width:unset}.time-separator{padding:0;text-align:center}.time-block-row{flex-direction:column;align-items:stretch}.time-block-manager .btn-icon{align-self:flex-end}}.room-exclusion-selector{width:100%}.room-exclusion-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.room-exclusion-header h4{margin:0;font-size:16px;font-weight:600;color:var(--color-text-heading)}.room-exclusion-summary{display:flex;gap:12px;font-size:13px}.included-count{color:var(--color-success);font-weight:500}.excluded-count{color:var(--color-error);font-weight:500}.room-exclusion-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.room-search-input{flex:1;padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;max-width:300px;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.room-search-input:focus{outline:none;border-color:var(--color-accent)}.room-search-input:disabled{background-color:var(--color-bg-shape-dim);cursor:not-allowed;opacity:.6}.room-search-input::placeholder{color:var(--color-text-muted)}.room-selection-buttons{display:flex;gap:8px}.room-exclusion-list{display:flex;flex-direction:column;gap:8px;max-height:400px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-card)}.room-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background-color .2s;border-bottom:1px solid var(--color-border)}.room-item:last-child{border-bottom:none}.room-item:hover:not(.disabled){background-color:var(--color-bg-shape)}.room-item:focus{outline:2px solid var(--color-accent);outline-offset:-2px}.room-item.disabled{cursor:not-allowed;opacity:.6}.room-item.excluded{background-color:var(--color-error-bg)}.room-item.excluded:hover:not(.disabled){background-color:#ff4d6a40}.room-checkbox{flex-shrink:0}.room-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.room-checkbox input[type=checkbox]:disabled{cursor:not-allowed}.room-info{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.room-name{font-size:14px;font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-capacity{font-size:12px;color:var(--color-text-muted)}.room-status{flex-shrink:0}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.included{background-color:var(--color-success-bg);color:var(--color-success)}.status-badge.excluded{background-color:var(--color-error-bg);color:var(--color-error)}.room-exclusion-loading{padding:24px;text-align:center;color:var(--color-text-muted);font-size:14px;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-shape)}.room-exclusion-error{padding:24px;text-align:center;color:var(--color-error);font-size:14px;border:1px solid var(--color-error);border-radius:8px;background-color:var(--color-error-bg)}.room-exclusion-empty{padding:24px;background-color:var(--color-bg-shape);border:1px dashed var(--color-border);border-radius:8px;text-align:center}.room-exclusion-empty p{margin:0;color:var(--color-text-muted);font-size:14px}.room-exclusion-empty .room-exclusion-help{margin-top:8px;font-size:13px;color:var(--color-text-muted)}.room-exclusion-no-results{padding:16px;text-align:center;color:var(--color-text-muted);font-size:14px}.room-exclusion-info{margin-top:12px;padding:8px 12px;background-color:#5ea0f726;color:var(--color-text-heading);border-radius:4px;font-size:13px}.room-exclusion-selector .btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.room-exclusion-selector .btn:disabled{opacity:.5;cursor:not-allowed}.room-exclusion-selector .btn-sm{padding:6px 12px;font-size:13px}.room-exclusion-selector .btn-text{background:none;padding:4px 8px;font-size:13px;color:var(--color-text-heading)}.room-exclusion-selector .btn-text:hover:not(:disabled){background-color:#5ea0f726}@media (max-width: 768px){.room-exclusion-header{flex-direction:column;align-items:flex-start;gap:8px}.room-exclusion-controls{flex-direction:column;align-items:stretch}.room-search-input{max-width:unset;width:100%}.room-selection-buttons{justify-content:flex-end}.room-item{flex-wrap:wrap}.room-info{flex-basis:calc(100% - 50px)}.room-status{flex-basis:100%;margin-top:8px;margin-left:30px}}.scheduling-config-form{width:100%;max-width:900px}.scheduling-config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.scheduling-config-header h3{margin:0;font-size:20px;font-weight:600;color:var(--color-text-heading)}.unsaved-indicator{display:inline-block;padding:4px 10px;background-color:var(--color-warning-bg);color:var(--color-warning);border-radius:4px;font-size:12px;font-weight:500}.scheduling-config-loading{padding:32px;text-align:center;color:var(--color-text-muted);font-size:14px;background-color:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px}.scheduling-config-error{padding:12px 16px;margin-bottom:16px;background-color:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error);border-radius:4px;font-size:14px}.scheduling-config-success{padding:12px 16px;margin-bottom:16px;background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success);border-radius:4px;font-size:14px}.config-section{margin-bottom:32px;padding:20px;background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.config-section h4{margin:0 0 20px;padding-bottom:12px;border-bottom:1px solid var(--color-border);font-size:16px;font-weight:600;color:var(--color-text-heading)}.section-error{margin-top:12px;padding:8px 12px;background-color:var(--color-error-bg);color:var(--color-error);border-radius:4px;font-size:13px}.form-row{display:flex;gap:24px;flex-wrap:wrap}.form-row .form-group{flex:1;min-width:200px}.form-group:last-child{margin-bottom:0}.form-input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background-color:var(--color-bg-shape);color:var(--color-text-primary);transition:border-color .2s}.form-input:focus{outline:none;border-color:var(--color-accent)}.form-input:disabled{background-color:var(--color-bg-shape-dim);cursor:not-allowed;opacity:.6}.form-input.error{border-color:var(--color-error)}.form-input::placeholder{color:var(--color-text-muted)}.field-error{display:block;margin-top:6px;color:var(--color-error);font-size:12px}.form-hint{margin-top:6px;color:var(--color-text-muted);font-size:12px}.toggle-group{padding:12px;background-color:var(--color-bg-shape);border-radius:8px}.toggle-label{display:flex;align-items:center;gap:10px;cursor:pointer}.toggle-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.toggle-label input[type=checkbox]:disabled{cursor:not-allowed}.toggle-text{font-size:14px;font-weight:500;color:var(--color-text-primary)}.toggle-group .form-hint{margin-top:8px;margin-left:28px}.form-actions{display:flex;align-items:center;gap:12px;padding-top:24px;border-top:1px solid var(--color-border)}.action-spacer{flex:1}.scheduling-config-form .btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.scheduling-config-form .btn:disabled{opacity:.6;cursor:not-allowed}.scheduling-config-form .btn-primary{background:var(--color-accent-gradient);color:#fff}.scheduling-config-form .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.scheduling-config-form .btn-danger{background-color:transparent;color:var(--color-error);border:1px solid var(--color-error)}.scheduling-config-form .btn-danger:hover:not(:disabled){background-color:var(--color-error-bg)}@media (max-width: 768px){.scheduling-config-header{flex-direction:column;align-items:flex-start;gap:12px}.form-row{flex-direction:column;gap:0}.form-row .form-group{min-width:unset}.form-actions{flex-direction:column-reverse;gap:12px}.form-actions .btn{width:100%}.action-spacer{display:none}.config-section{padding:16px}}.scheduling-results-panel{width:100%;max-width:900px}.results-summary{padding:20px;background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;margin-bottom:20px}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.summary-header h3{margin:0;font-size:18px;font-weight:600;color:var(--color-text-heading)}.success-badge{display:inline-block;padding:4px 12px;background-color:var(--color-success-bg);color:var(--color-success);border-radius:12px;font-size:12px;font-weight:600}.summary-stats{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:16px}.stat-item{flex:1;min-width:100px;padding:16px;background-color:var(--color-bg-shape);border-radius:8px;text-align:center}.stat-value{display:block;font-size:28px;font-weight:700;color:var(--color-text-primary);line-height:1.2}.stat-label{display:block;margin-top:4px;font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.stat-item.stat-success{background-color:var(--color-success-bg)}.stat-item.stat-success .stat-value{color:var(--color-success)}.stat-item.stat-warning{background-color:var(--color-warning-bg)}.stat-item.stat-warning .stat-value{color:var(--color-warning)}.stat-item.stat-info{background-color:#5ea0f726}.stat-item.stat-info .stat-value{color:var(--color-text-heading)}.summary-alert{padding:10px 14px;border-radius:4px;font-size:13px;font-weight:500;margin-top:12px}.summary-alert.alert-error{background-color:var(--color-error-bg);color:var(--color-error);border-left:3px solid var(--color-error)}.summary-alert.alert-warning{background-color:var(--color-warning-bg);color:var(--color-warning);border-left:3px solid var(--color-warning)}.results-section{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;margin-bottom:16px;overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background-color:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.section-header.clickable{cursor:pointer;transition:background-color .2s}.section-header.clickable:hover{background-color:var(--color-bg-shape-dim)}.section-header h4{margin:0;font-size:15px;font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;gap:8px}.section-icon{font-size:16px}.toggle-icon{font-size:12px;color:var(--color-text-muted);-webkit-user-select:none;user-select:none}.section-content{padding:0}.conflicts-section .section-header{background-color:var(--color-error-bg);border-bottom-color:var(--color-error)}.conflicts-section .section-header h4{color:var(--color-error)}.conflict-item{padding:16px 20px;border-bottom:1px solid var(--color-border)}.conflict-item:last-child{border-bottom:none}.conflict-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.conflict-icon{font-size:16px}.conflict-type{font-weight:600;color:var(--color-error);font-size:14px}.conflict-message{color:var(--color-text-muted);font-size:13px;margin-bottom:12px;line-height:1.4}.conflict-detail{display:flex;gap:8px;font-size:13px;margin-bottom:4px}.detail-label{color:var(--color-text-muted)}.detail-value{color:var(--color-text-primary);font-weight:500}.conflict-matches{margin-top:12px}.matches-label{display:block;font-size:12px;color:var(--color-text-muted);margin-bottom:6px}.matches-list{margin:0;padding-left:20px}.matches-list li{font-size:13px;color:var(--color-text-primary);padding:2px 0}.matches-list li.clickable{cursor:pointer;color:var(--color-text-heading)}.matches-list li.clickable:hover{text-decoration:underline}.warnings-section .section-header{background-color:var(--color-warning-bg);border-bottom-color:var(--color-warning)}.warnings-section .section-header h4{color:var(--color-warning)}.warning-item{display:flex;align-items:flex-start;gap:12px;padding:12px 20px;border-bottom:1px solid var(--color-border)}.warning-item:last-child{border-bottom:none}.warning-item.clickable{cursor:pointer;transition:background-color .2s}.warning-item.clickable:hover{background-color:var(--color-bg-shape)}.warning-icon{font-size:16px;flex-shrink:0}.warning-content{flex:1}.warning-type{display:block;font-weight:600;color:var(--color-warning);font-size:13px;margin-bottom:2px}.warning-message{display:block;color:var(--color-text-muted);font-size:13px;line-height:1.4}.unscheduled-section .section-header{background-color:var(--color-bg-shape)}.unscheduled-match-item{padding:14px 20px;border-bottom:1px solid var(--color-border)}.unscheduled-match-item:last-child{border-bottom:none}.unscheduled-match-item.clickable{cursor:pointer;transition:background-color .2s}.unscheduled-match-item.clickable:hover{background-color:var(--color-bg-shape)}.match-info-row{display:flex;align-items:center;gap:12px;margin-bottom:4px;flex-wrap:wrap}.match-label{font-weight:600;color:var(--color-text-primary);font-size:14px}.match-teams-display{color:var(--color-text-muted);font-size:13px}.unscheduled-reason{display:flex;align-items:flex-start;gap:6px;margin-top:8px;padding:8px 12px;background-color:var(--color-bg-shape);border-radius:4px}.reason-icon{font-size:14px;flex-shrink:0}.reason-text{color:var(--color-text-muted);font-size:13px;line-height:1.4}.scheduled-section .section-header{background-color:var(--color-success-bg);border-bottom-color:var(--color-success)}.scheduled-section .section-header h4{color:var(--color-success)}.day-group{border-bottom:1px solid var(--color-border)}.day-group:last-child{border-bottom:none}.day-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background-color:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.day-date{font-weight:600;color:var(--color-text-primary);font-size:14px}.day-count{font-size:12px;color:var(--color-text-muted)}.day-matches{padding:0}.scheduled-match-item{display:flex;align-items:center;gap:16px;padding:12px 20px;border-bottom:1px solid var(--color-border)}.scheduled-match-item:last-child{border-bottom:none}.scheduled-match-item.clickable{cursor:pointer;transition:background-color .2s}.scheduled-match-item.clickable:hover{background-color:var(--color-bg-shape)}.scheduled-match-item.manual-override{background-color:#5ea0f714}.match-time-col{flex-shrink:0;width:80px;text-align:center}.match-time{display:block;font-weight:600;color:var(--color-text-primary);font-size:14px}.match-time-end{display:block;font-size:11px;color:var(--color-text-muted)}.match-details-col{flex:1;min-width:0}.override-badge{display:inline-block;padding:2px 8px;background-color:#5ea0f726;color:var(--color-text-heading);border-radius:10px;font-size:11px;font-weight:600}.match-room-col{flex-shrink:0;text-align:right}.room-label{display:inline-block;padding:4px 10px;background-color:var(--color-bg-shape);color:var(--color-text-primary);border-radius:4px;font-size:12px;font-weight:500}.results-empty{padding:40px 20px;text-align:center;background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.results-empty p{margin:0;color:var(--color-text-muted);font-size:14px}@media (max-width: 768px){.summary-stats{flex-direction:column;gap:12px}.stat-item{min-width:unset}.scheduled-match-item{flex-direction:column;align-items:flex-start;gap:8px}.match-time-col{width:auto;text-align:left;display:flex;gap:8px}.match-time-end{display:inline}.match-room-col{text-align:left}.conflict-detail,.warning-item{flex-direction:column;gap:4px}.warning-icon{margin-bottom:4px}}@media (max-width: 480px){.summary-header{flex-direction:column;align-items:flex-start;gap:8px}.section-header h4{font-size:14px}.match-info-row{flex-direction:column;align-items:flex-start;gap:4px}}.match-room-editor{padding:20px}.editor-loading{text-align:center;padding:40px;color:var(--color-text-muted)}.match-info-header{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--color-border)}.match-info-header h3{margin:0 0 10px;font-size:18px;color:var(--color-text-heading)}.match-title{font-size:15px;font-weight:500;color:var(--color-text-primary)}.match-time{font-size:13px;color:var(--color-text-muted);margin-top:5px}.existing-assignment-info{background:var(--color-bg-shape);padding:12px 15px;border-radius:6px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.existing-assignment-info .info-label{font-size:13px;color:var(--color-text-muted);font-weight:500}.existing-assignment-info .info-value{font-size:14px;color:var(--color-text-primary);font-weight:600;display:flex;align-items:center;gap:8px}.manual-badge{font-size:11px;background:#5ea0f726;color:#5ea0f7;padding:2px 8px;border-radius:10px;font-weight:500}.form-section{margin-bottom:20px}.form-hint{font-size:12px;color:var(--color-text-muted);margin-top:6px;line-height:1.4}.room-select{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-primary);cursor:pointer;transition:border-color .2s,box-shadow .2s}.room-select:hover:not(:disabled){border-color:var(--color-accent)}.room-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #5ea0f726}.room-select:disabled{opacity:.6;cursor:not-allowed}.no-rooms-message{color:var(--color-text-muted);font-style:italic;text-align:center;padding:20px;background:var(--color-bg-shape);border-radius:6px}.room-details{background:var(--color-bg-shape);padding:12px 15px;border-radius:6px;margin-top:10px}.room-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.room-details .detail-row:not(:last-child){border-bottom:1px solid var(--color-border)}.room-details .detail-label{font-size:13px;color:var(--color-text-muted)}.room-details .detail-value{font-size:13px;font-weight:500;color:var(--color-text-primary)}.team-position-options{display:flex;flex-direction:column;gap:10px}.position-option{display:flex;align-items:center;gap:12px;padding:12px 15px;border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s;background:var(--color-bg-card)}.position-option:hover{border-color:var(--color-accent);background:var(--color-bg-shape)}.position-option.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.position-option input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.position-label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.notes-input{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-card);color:var(--color-text-primary);resize:vertical;min-height:60px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.notes-input:hover:not(:disabled){border-color:var(--color-accent)}.notes-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #5ea0f726}.notes-input:disabled{opacity:.6;cursor:not-allowed}.notes-input::placeholder{color:var(--color-text-muted)}.conflict-warning{background:#ef535014;border:1px solid rgba(239,83,80,.25);border-radius:8px;padding:15px;margin-bottom:20px}.conflict-warning .warning-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.conflict-warning .warning-icon{font-size:20px;color:#ef5350}.conflict-warning .warning-title{font-size:15px;font-weight:600;color:#ef5350}.conflict-warning .warning-body{margin-bottom:12px}.conflict-warning .warning-body p{font-size:13px;color:var(--color-text-primary);margin:0 0 10px;line-height:1.5}.conflict-detail{background:#ef535014;padding:10px 12px;border-radius:4px;margin-bottom:8px}.conflict-detail:last-child{margin-bottom:0}.conflict-detail .conflict-type{display:block;font-size:12px;font-weight:600;color:#ef5350;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.conflict-detail .conflict-message{display:block;font-size:13px;color:var(--color-text-primary);line-height:1.4}.allow-double-booking-option{display:flex;align-items:center;gap:10px;cursor:pointer;padding:10px 12px;background:#ffffff0d;border-radius:4px;margin-top:12px}.allow-double-booking-option input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#ef5350}.allow-double-booking-option span{font-size:13px;color:var(--color-text-primary);font-weight:500}.editor-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:15px;border-top:1px solid var(--color-border)}.match-room-editor .btn-primary{background:linear-gradient(135deg,#5ea0f7,#4a90e2);color:#fff;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.match-room-editor .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #5ea0f766}.match-room-editor .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.match-room-editor .btn-secondary{background:var(--color-bg-shape);color:var(--color-text-primary);padding:10px 20px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.match-room-editor .btn-secondary:hover:not(:disabled){background:var(--color-bg-card);border-color:var(--color-accent)}.match-room-editor .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.match-room-editor .btn-danger-outline{background:transparent;color:#ef5350;padding:10px 20px;border:1px solid rgba(239,83,80,.5);border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.match-room-editor .btn-danger-outline:hover:not(:disabled){background:#ef53501a;border-color:#ef5350}.match-room-editor .btn-danger-outline:disabled{opacity:.6;cursor:not-allowed}.match-room-editor .error-message{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#ef53501a;border:1px solid rgba(239,83,80,.3);border-radius:6px;color:#ef5350;font-size:14px;margin-bottom:15px}.match-room-editor .error-message .btn-close{background:none;border:none;color:#ef5350;font-size:18px;cursor:pointer;padding:0 5px;line-height:1}.match-room-editor .error-message .btn-close:hover{opacity:.7}.scheduling-dashboard{width:100%;max-width:1000px;margin:0 auto}.scheduling-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.scheduling-loading .loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}.scheduling-loading p{margin-top:16px;color:var(--color-text-muted);font-size:14px}.scheduling-unsupported{text-align:center;padding:60px 40px;background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.scheduling-unsupported .unsupported-icon{font-size:48px;margin-bottom:16px}.scheduling-unsupported h3{margin:0 0 12px;font-size:20px;font-weight:600;color:var(--color-text-heading)}.scheduling-unsupported p{color:var(--color-text-muted);font-size:14px;line-height:1.6;max-width:500px;margin:0 auto 12px}.scheduling-unsupported p:last-child{margin-bottom:0}.scheduling-warning{text-align:center;padding:60px 40px;background-color:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:8px}.scheduling-warning .warning-icon{font-size:48px;color:var(--color-warning);margin-bottom:16px}.scheduling-warning h3{margin:0 0 12px;font-size:20px;font-weight:600;color:var(--color-warning)}.scheduling-warning p{color:var(--color-text-muted);font-size:14px;line-height:1.6;max-width:500px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.header-content h2{margin:0;font-size:22px;font-weight:600;color:var(--color-text-heading)}.header-content .tournament-name{display:block;margin-top:4px;font-size:14px;color:var(--color-text-muted)}.scheduling-mode-selector{display:flex;gap:8px}.scheduling-dashboard .btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.scheduling-dashboard .btn:disabled{opacity:.6;cursor:not-allowed}.scheduling-dashboard .btn-primary{background:var(--color-accent-gradient);color:#fff}.scheduling-dashboard .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.scheduling-dashboard .btn-secondary{background-color:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border)}.scheduling-dashboard .btn-secondary:hover:not(:disabled){background-color:var(--color-bg-shape-dim)}.dashboard-error,.dashboard-success{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:16px;border-radius:6px;font-size:14px}.dashboard-error{background-color:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error)}.dashboard-success{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success)}.dashboard-error .btn-close,.dashboard-success .btn-close{background:none;border:none;font-size:20px;line-height:1;cursor:pointer;padding:0 4px;opacity:.6;transition:opacity .2s}.dashboard-error .btn-close{color:var(--color-error)}.dashboard-success .btn-close{color:var(--color-success)}.dashboard-error .btn-close:hover,.dashboard-success .btn-close:hover{opacity:1}.dashboard-tabs{display:flex;gap:4px;margin-bottom:24px;border-bottom:2px solid var(--color-border)}.tab-button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:14px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .2s}.tab-button:hover:not(:disabled){color:var(--color-text-primary);background-color:var(--color-bg-shape)}.tab-button:disabled{color:var(--color-text-muted);opacity:.5;cursor:not-allowed}.tab-button.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;font-size:11px;font-weight:600}.tab-badge.new{background-color:#5ea0f726;color:var(--color-text-heading)}.tab-badge.error{background-color:var(--color-error-bg);color:var(--color-error)}.dashboard-content{min-height:400px}.config-tab,.results-tab{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.config-hint{margin-top:24px;padding:20px;background-color:#5ea0f726;border:1px solid var(--color-text-heading);border-radius:8px}.config-hint p{margin:0 0 12px;font-size:14px;color:var(--color-text-heading);line-height:1.5}.config-hint ul{margin:0;padding-left:20px}.config-hint li{font-size:13px;color:var(--color-text-heading);margin-bottom:6px;line-height:1.4}.config-hint li:last-child{margin-bottom:0}.modal-content{background-color:var(--color-bg-card);border-radius:12px;max-width:560px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #00000080;border:1px solid var(--color-border);animation:modalFadeIn .2s ease}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width: 768px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%}.scheduling-mode-selector{width:100%;flex-direction:column}.scheduling-mode-selector .btn{width:100%}.dashboard-tabs{flex-wrap:wrap}.tab-button{flex:1;justify-content:center;padding:12px 16px}.scheduling-unsupported,.scheduling-warning{padding:40px 20px}.modal-content{max-width:100%;margin:0;border-radius:12px 12px 0 0;max-height:85vh}.modal-overlay{align-items:flex-end;padding:0}}@media (max-width: 480px){.header-content h2{font-size:18px}.tab-button{padding:10px 12px;font-size:13px}.tab-badge{min-width:18px;height:18px;font-size:10px}}.replace-team-modal{padding:20px}.replace-team-modal .current-team-info{background:var(--color-bg-shape);padding:15px;border-radius:4px;margin-bottom:20px}.replace-team-modal .current-team-info h3{margin:0 0 8px;font-size:14px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.replace-team-modal .current-team-name{font-size:18px;font-weight:600;color:var(--color-text-primary)}.replace-team-modal .form-group{margin-bottom:20px}.replace-team-modal .form-label{display:block;margin-bottom:10px;font-size:14px;font-weight:500;color:var(--color-text-heading)}.replace-team-modal .form-textarea{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-card);color:var(--color-text-primary);font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s}.replace-team-modal .form-textarea:focus{outline:none;border-color:var(--color-accent)}.replace-team-modal .form-textarea::placeholder{color:var(--color-text-muted)}.replace-team-modal .team-list{display:flex;flex-direction:column;gap:10px;max-height:200px;overflow-y:auto;padding-right:5px}.replace-team-modal .team-option{display:flex;align-items:center;gap:12px;padding:12px 15px;border:2px solid var(--color-border);border-radius:6px;cursor:pointer;transition:all .2s;background:var(--color-bg-card)}.replace-team-modal .team-option:hover{border-color:var(--color-accent);background:var(--color-bg-shape)}.replace-team-modal .team-option.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.replace-team-modal .team-option input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.replace-team-modal .team-option .team-name{flex:1;font-size:15px;font-weight:500;color:var(--color-text-primary)}.replace-team-modal .team-option .team-seed{font-size:12px;color:var(--color-text-muted);background:var(--color-bg-shape);padding:4px 8px;border-radius:4px}.replace-team-modal .no-teams-message{color:var(--color-text-muted);font-style:italic;text-align:center;padding:20px}.replace-team-modal .phase-options{display:flex;flex-direction:column;gap:8px}.replace-team-modal .phase-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2px solid var(--color-border);border-radius:4px;cursor:pointer;transition:all .2s;background:var(--color-bg-card)}.replace-team-modal .phase-option:hover{border-color:var(--color-accent)}.replace-team-modal .phase-option.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.replace-team-modal .phase-option input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent)}.replace-team-modal .phase-option span{font-size:14px;color:var(--color-text-primary)}.replace-team-modal .preview-step{display:flex;flex-direction:column;gap:20px}.replace-team-modal .replacement-summary{background:var(--color-bg-shape);padding:20px;border-radius:6px;border:1px solid var(--color-border)}.replace-team-modal .replacement-summary h3{margin:0 0 15px;font-size:14px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.replace-team-modal .summary-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--color-border)}.replace-team-modal .summary-row:last-child{border-bottom:none}.replace-team-modal .summary-row .label{font-weight:500;color:var(--color-text-muted)}.replace-team-modal .summary-row .value{font-weight:600;color:var(--color-text-primary)}.replace-team-modal .summary-row.highlight{background:var(--color-accent-bg);margin:0 -20px;padding:12px 20px;border-radius:4px;border-bottom:none}.replace-team-modal .summary-row.highlight .value{font-size:18px;color:var(--color-accent)}.replace-team-modal .info-box{padding:15px;background:#5ea0f71a;border:1px solid rgba(94,160,247,.3);border-radius:6px;color:var(--color-text-primary);font-size:14px}.replace-team-modal .info-box strong{color:var(--color-text-heading)}.replace-team-modal .warning-box{padding:15px;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:6px;color:var(--color-text-primary);font-size:14px}.replace-team-modal .warning-box strong{color:#ffb300}.replace-team-modal .confirmation-step{display:flex;flex-direction:column;gap:20px}.replace-team-modal .warning-banner{display:flex;gap:15px;padding:20px;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:6px}.replace-team-modal .warning-icon{width:40px;height:40px;background:#ffb300;color:#000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;flex-shrink:0}.replace-team-modal .warning-content h3{margin:0 0 8px;font-size:18px;color:#ffb300}.replace-team-modal .warning-content p{margin:0;color:var(--color-text-muted);font-size:14px}.replace-team-modal .final-summary{padding:20px;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.replace-team-modal .final-summary p{margin:0;font-size:15px;line-height:1.6;color:var(--color-text-primary)}.replace-team-modal .final-summary .notes-preview{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border);font-size:13px;color:var(--color-text-muted)}.replace-team-modal .old-team{color:#ef5350}.replace-team-modal .new-team{color:var(--color-success)}.replace-team-modal .error-message{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#ef53501a;border:1px solid rgba(239,83,80,.3);border-radius:4px;margin-bottom:20px;color:#ef5350;font-size:14px}.replace-team-modal .btn-close{background:none;border:none;color:#ef5350;font-size:18px;cursor:pointer;padding:0 5px}.replace-team-modal .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:10px}.replace-team-modal .btn-danger{background:linear-gradient(135deg,#ef5350,#e53935);color:#fff;padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.replace-team-modal .btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef535066}.replace-team-modal .btn-danger:disabled{opacity:.6;cursor:not-allowed}.bracket-tournament-management{max-width:100%;margin:0 auto;padding:24px}.bracket-tournament-management .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--color-border)}.bracket-tournament-management .header-content h1{font-size:28px;font-weight:700;color:var(--color-text-heading);margin:0 0 4px}.bracket-tournament-management .tournament-subtitle{font-size:14px;color:var(--color-text-muted);margin:0}.bracket-tournament-management .header-stats{display:flex;gap:24px;align-items:center}.bracket-tournament-management .header-stats .stat-item{text-align:center}.bracket-tournament-management .header-stats .stat-value{display:block;font-size:24px;font-weight:700;color:var(--color-text-heading)}.bracket-tournament-management .header-stats .stat-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.bracket-tournament-management .management-tabs{display:flex;gap:4px;border-bottom:1px solid var(--color-border);margin-bottom:24px;overflow-x:auto}.bracket-tournament-management .management-tabs .tab{padding:12px 20px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.bracket-tournament-management .management-tabs .tab:hover{color:var(--color-text-primary)}.bracket-tournament-management .management-tabs .tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.bracket-tournament-management .overview-section{display:flex;flex-direction:column;gap:32px}.bracket-tournament-management .quick-actions h3,.bracket-tournament-management .tournament-info h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px}.bracket-tournament-management .actions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.bracket-tournament-management .action-card{display:flex;flex-direction:column;align-items:flex-start;padding:20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;text-align:left}.bracket-tournament-management .action-card:hover:not(:disabled){border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a}.bracket-tournament-management .action-card:disabled{opacity:.5;cursor:not-allowed}.bracket-tournament-management .action-icon{font-size:24px;margin-bottom:12px}.bracket-tournament-management .action-title{font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.bracket-tournament-management .action-description{font-size:13px;color:var(--color-text-muted)}.bracket-tournament-management .tournament-info .info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;padding:20px;background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border)}.bracket-tournament-management .tournament-info .info-item{display:flex;flex-direction:column;gap:4px}.bracket-tournament-management .tournament-info .info-label{font-size:12px;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.bracket-tournament-management .tournament-info .info-value{font-size:14px;color:var(--color-text-primary)}.bracket-tournament-management .bracket-section{max-width:100%}.bracket-tournament-management .brackets-placeholder{text-align:center;padding:48px 24px;background:var(--color-bg-card);border:1px dashed var(--color-border);border-radius:8px}.bracket-tournament-management .brackets-placeholder h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.bracket-tournament-management .brackets-placeholder p{font-size:14px;color:var(--color-text-muted);margin:0}.bracket-tournament-management .registered-teams-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px}.bracket-tournament-management .registered-teams-section h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px}.bracket-tournament-management .teams-table-wrapper{overflow-x:auto}.bracket-tournament-management .teams-table{width:100%;border-collapse:collapse}.bracket-tournament-management .teams-table th,.bracket-tournament-management .teams-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--color-border)}.bracket-tournament-management .teams-table th{font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-shape)}.bracket-tournament-management .teams-table td{font-size:14px;color:var(--color-text-primary)}.bracket-tournament-management .teams-table .team-name-cell{font-weight:500}.bracket-tournament-management .teams-table tbody tr:hover{background:var(--color-bg-shape)}.bracket-tournament-management .btn-small{padding:6px 12px;font-size:12px;border-radius:4px;cursor:pointer;transition:all .2s}.bracket-tournament-management .btn-small.btn-secondary{background:var(--color-bg-shape);border:1px solid var(--color-border);color:var(--color-text-secondary)}.bracket-tournament-management .btn-small.btn-secondary:hover{background:var(--color-bg-card);border-color:var(--color-accent);color:var(--color-accent)}.bracket-tournament-management .modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--color-border);margin-bottom:16px}.bracket-tournament-management .modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--color-text-heading)}.bracket-tournament-management .modal-close{background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.bracket-tournament-management .modal-close:hover{color:var(--color-text-primary)}@media (max-width: 768px){.bracket-tournament-management{padding:16px}.bracket-tournament-management .page-header{flex-direction:column;gap:16px}.bracket-tournament-management .header-stats{width:100%;justify-content:space-between}.bracket-tournament-management .management-tabs{flex-wrap:nowrap;padding-bottom:2px}.bracket-tournament-management .management-tabs .tab{padding:10px 14px;font-size:13px}.bracket-tournament-management .actions-grid{grid-template-columns:1fr}.bracket-tournament-management .modal-content{max-width:100%;max-height:100%;border-radius:0}}.referee-match-editor{padding:24px}.referee-match-editor .form-section{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.referee-match-editor .form-section:last-of-type{border-bottom:none}.referee-match-editor .form-section h3{margin:0 0 12px;font-size:18px;color:var(--color-text-heading)}.referee-match-editor .form-hint{margin:0 0 12px;font-size:14px;color:var(--color-text-muted)}.match-info{background-color:var(--color-bg-shape);padding:16px;border-radius:8px;border:1px solid var(--color-border)}.team-display{margin-bottom:8px;font-size:15px;color:var(--color-text-primary)}.team-display strong{color:var(--color-text-heading);min-width:80px;display:inline-block}.match-meta,.match-scheduled{margin-top:12px;padding-top:12px;border-top:1px solid var(--color-border);font-size:14px;color:var(--color-text-muted)}.match-meta strong,.match-scheduled strong{color:var(--color-text-primary)}.form-actions{display:flex;gap:12px;padding:20px 24px;background-color:var(--color-bg-shape);border-top:1px solid var(--color-border);margin:0 -24px -24px;border-radius:0 0 12px 12px}.btn-primary,.btn-secondary,.btn-success{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-success{background-color:#10b981;color:#fff}.btn-success:hover:not(:disabled){background-color:#059669}.btn-primary:disabled,.btn-secondary:disabled,.btn-success:disabled{opacity:.6;cursor:not-allowed}.winner-confirmation{padding:0}.winner-confirmation .form-section{margin-bottom:0;padding-bottom:0}.warning-message{background-color:#fef3c7;border-left:4px solid #f59e0b;color:#92400e;padding:12px;margin-bottom:20px;border-radius:4px;font-size:14px}.winner-selection{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.winner-option{border:2px solid var(--color-border);border-radius:8px;padding:16px;transition:all .2s;cursor:pointer}.winner-option:hover{border-color:var(--color-accent);background-color:var(--color-bg-shape-light)}.winner-option label{display:flex;align-items:center;cursor:pointer;width:100%}.winner-option input[type=radio]{margin-right:12px;width:18px;height:18px;cursor:pointer}.winner-option input[type=radio]:checked{accent-color:var(--color-accent)}.winner-label{display:flex;align-items:center;justify-content:space-between;flex:1;font-size:16px;font-weight:500;color:var(--color-text-heading)}.winner-score{font-size:14px;color:var(--color-text-muted);font-weight:400;margin-left:8px}.winner-option input[type=radio]:checked~.winner-label{color:var(--color-accent)}.error-message{background-color:#fee2e2;border-left:4px solid #dc2626;color:#991b1b;padding:12px 16px;margin-bottom:20px;border-radius:4px;display:flex;justify-content:space-between;align-items:center}.btn-close{background:none;border:none;font-size:20px;cursor:pointer;color:#991b1b;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}@media (max-width: 768px){.referee-match-editor{padding:16px}.form-actions{flex-direction:column;margin:0 -16px -16px;padding:16px}.form-actions button{width:100%}.winner-option{padding:12px}.winner-label{flex-direction:column;align-items:flex-start;gap:4px}}.referee-match-list{max-width:1200px;margin:0 auto;padding:20px}.referee-match-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid var(--color-border)}.referee-match-list-header h1{margin:0;font-size:28px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.info-message{background-color:#5ea0f733;border-left:4px solid var(--color-text-heading);padding:16px;margin-bottom:24px;border-radius:4px}.info-message p{margin:0;color:var(--color-text-heading);line-height:1.6}.referee-match-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px}.filter-group{display:flex;align-items:center;gap:12px}.filter-group label{font-weight:500;color:var(--color-text-muted)}.filter-select:hover{border-color:var(--color-accent)}.match-count{font-size:14px;color:var(--color-text-muted)}.match-count strong{color:var(--color-text-primary);font-size:16px}.referee-match-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px;margin-bottom:30px}.referee-match-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000004d;transition:transform .2s,box-shadow .2s;cursor:pointer}.referee-match-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000004d;border-color:var(--color-accent)}.match-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.match-round{font-weight:600;font-size:16px;color:var(--color-text-heading)}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-scheduled{background:#5ea0f733;color:var(--color-text-heading)}.status-in-progress{background:var(--color-warning-bg);color:var(--color-warning)}.status-completed{background:var(--color-success-bg);color:var(--color-success)}.status-forfeited{background:var(--color-error-bg);color:var(--color-error)}.match-card-teams{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.match-card-teams .team{flex:1;text-align:center;padding:12px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:4px;transition:background-color .2s}.match-card-teams .team.winner{background:var(--color-success-bg);border:2px solid var(--color-success);font-weight:600}.match-card-teams .vs{font-weight:600;color:var(--color-text-muted);font-size:14px}.team-name{font-size:16px;color:var(--color-text-primary);margin-bottom:4px}.team-score{font-size:24px;font-weight:700;color:var(--color-accent)}.match-card-details{margin-bottom:16px}.detail-row{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:14px}.detail-row strong{color:var(--color-text-muted);min-width:80px;text-transform:uppercase;font-size:13px}.maps-list{display:flex;flex-wrap:wrap;gap:6px}.map-badge{background:var(--color-accent-bg);color:var(--color-accent);padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.match-card-actions{display:flex;gap:10px}.match-card-actions button{flex:1}.no-matches{grid-column:1 / -1;text-align:center;padding:60px 20px;color:var(--color-text-muted);font-size:16px;background:var(--color-bg-shape);border-radius:8px;border:2px dashed var(--color-border)}.error-message{background:var(--color-error-bg);border-left:4px solid var(--color-error);color:var(--color-error);padding:16px;margin-bottom:20px;border-radius:4px;display:flex;justify-content:space-between;align-items:center}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 10px 40px #00000080;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-content.modal-large{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:20px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--color-text-muted);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.btn-close:hover{background:var(--color-bg-shape);color:var(--color-text-primary)}@media (max-width: 768px){.referee-match-list{padding:12px}.referee-match-list-header{flex-direction:column;align-items:flex-start;gap:12px}.referee-match-filters{flex-direction:column;align-items:stretch;gap:12px}.referee-match-cards{grid-template-columns:1fr}.match-card-teams{flex-direction:column}.match-card-teams .team{width:100%}.modal-content{margin:0;border-radius:0;max-height:100vh}}.club-card{background:var(--color-bg-card);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000004d;transition:all .2s;border:1px solid var(--color-border)}.club-card:hover{box-shadow:0 4px 16px #00000080;transform:translateY(-2px)}.club-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.club-logo{width:48px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0}.club-logo img{width:100%;height:100%;object-fit:cover}.club-card-title{flex:1;min-width:0}.club-card-title h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.club-abbreviation{display:inline-block;padding:2px 8px;background-color:var(--color-bg-shape-dim);color:var(--color-accent);border-radius:4px;font-size:12px;font-weight:500}.club-card-body{margin-bottom:16px}.club-description{font-size:14px;color:var(--color-text-muted);line-height:1.5;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.club-stats{display:flex;gap:16px;margin-bottom:12px}.club-stat{display:flex;align-items:center;gap:6px;font-size:14px}.stat-label{color:var(--color-text-muted);font-weight:500}.stat-value{color:var(--color-text-primary);font-weight:600}.club-contact{display:flex;align-items:center;gap:8px;font-size:14px;margin-bottom:8px}.contact-label{color:var(--color-text-muted);font-weight:500}.contact-value{color:var(--color-accent);text-decoration:none}.contact-value:hover{text-decoration:underline}.club-meta{display:flex;align-items:center;gap:8px;font-size:13px}.meta-label{color:var(--color-text-muted);opacity:.7}.meta-value{color:var(--color-text-muted)}.club-card-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--color-border)}.club-card-actions .btn-secondary,.club-card-actions .btn-danger{flex:1;padding:8px 16px;font-size:14px;text-align:center}@media (max-width: 768px){.club-card{padding:16px}.club-card-actions{flex-direction:column}}.bulk-club-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.bulk-club-modal{background:var(--color-bg-card);border-radius:8px;max-width:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #00000080;border:1px solid var(--color-border)}.bulk-club-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--color-border)}.bulk-club-modal .modal-title h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0}.bulk-club-modal .close-btn{background:none;border:none;font-size:32px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.bulk-club-modal .close-btn:hover{background-color:var(--color-bg-shape-dim);color:var(--color-text-primary)}.bulk-club-modal .modal-body{padding:24px;overflow-y:auto;flex:1}.bulk-club-modal .error-message{background-color:#dc26261a;color:#ef4444;border-radius:8px;padding:12px;margin-bottom:16px;font-size:14px;border:1px solid rgba(220,38,38,.3)}.bulk-club-modal .step-info{margin-bottom:20px}.bulk-club-modal .step-info h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.bulk-club-modal .step-info p{font-size:14px;color:var(--color-text-muted);margin:0}.bulk-club-modal .paste-textarea{width:100%;padding:16px;font-size:14px;font-family:inherit;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-shape);color:var(--color-text-primary);resize:vertical;min-height:200px}.bulk-club-modal .paste-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #cc335733}.bulk-club-modal .paste-textarea::placeholder{color:var(--color-text-muted)}.bulk-club-modal .paste-info{margin-top:12px;font-size:13px;color:var(--color-text-muted)}.clubs-table-container{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.clubs-table{width:100%;border-collapse:collapse;font-size:14px}.clubs-table th{text-align:left;padding:12px;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.clubs-table td{padding:12px;border-bottom:1px solid var(--color-border);vertical-align:middle}.clubs-table tr:last-child td{border-bottom:none}.clubs-table tr:hover{background-color:var(--color-bg-shape-dim)}.clubs-table tr.row-error{background-color:#dc26260d}.clubs-table .col-name{min-width:200px;width:40%}.clubs-table .col-abbr{min-width:100px;width:15%}.clubs-table .col-email{min-width:180px;width:35%}.clubs-table .col-actions{width:40px;text-align:center}.clubs-table input[type=text],.clubs-table input[type=email]{width:100%;padding:6px 10px;font-size:14px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-card);color:var(--color-text-primary)}.clubs-table input[type=text]:focus,.clubs-table input[type=email]:focus{outline:none;border-color:var(--color-accent)}.clubs-table input.input-error{border-color:#ef4444}.clubs-table input::placeholder{color:var(--color-text-muted);opacity:.7}.bulk-club-modal .error-hint{display:block;font-size:11px;color:#ef4444;margin-top:4px}.bulk-club-modal .remove-btn{background:none;border:none;font-size:20px;color:var(--color-text-muted);cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.bulk-club-modal .remove-btn:hover{background-color:#dc26261a;color:#ef4444}.bulk-club-modal .table-info{margin-top:12px;font-size:13px;color:var(--color-text-muted)}.bulk-club-modal .step-submitting{text-align:center;padding:40px 20px}.bulk-club-modal .loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:bulk-club-spin 1s linear infinite;margin:0 auto 20px}@keyframes bulk-club-spin{to{transform:rotate(360deg)}}.bulk-club-modal .step-submitting p{font-size:16px;color:var(--color-text-muted);margin:0}.bulk-club-modal .results-summary{display:flex;gap:12px;justify-content:center;margin-bottom:24px}.bulk-club-modal .result-badge{display:inline-flex;align-items:center;padding:8px 16px;font-size:16px;font-weight:600;border-radius:20px;background-color:var(--color-bg-shape);color:var(--color-text-muted)}.bulk-club-modal .result-badge.success{background-color:#22c55e1a;color:#22c55e}.bulk-club-modal .result-badge.failure{background-color:#dc26261a;color:#ef4444}.bulk-club-modal .results-list{max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px}.bulk-club-modal .result-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--color-border)}.bulk-club-modal .result-item:last-child{border-bottom:none}.bulk-club-modal .result-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:600}.bulk-club-modal .result-item.success .result-icon{background-color:#22c55e1a;color:#22c55e}.bulk-club-modal .result-item.failure .result-icon{background-color:#dc26261a;color:#ef4444}.bulk-club-modal .result-name{font-weight:500;color:var(--color-text-primary);flex:1}.bulk-club-modal .result-error{font-size:13px;color:#ef4444}.bulk-club-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid var(--color-border)}.bulk-club-modal .modal-footer button{padding:10px 20px}.bulk-club-modal .btn-primary,.bulk-club-modal .btn-secondary{padding:12px 24px;font-size:14px;font-weight:500;border-radius:4px;border:none;cursor:pointer;transition:all .2s}.bulk-club-modal .btn-primary{background:var(--color-accent-gradient);color:#fff}.bulk-club-modal .btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.bulk-club-modal .btn-secondary{background-color:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border)}.bulk-club-modal .btn-secondary:hover:not(:disabled){background-color:var(--color-bg-shape-dim)}.bulk-club-modal .btn-primary:disabled,.bulk-club-modal .btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.bulk-club-modal{max-height:95vh}.bulk-club-modal .modal-header,.bulk-club-modal .modal-body,.bulk-club-modal .modal-footer{padding:16px}.bulk-club-modal .modal-footer{flex-direction:column-reverse}.bulk-club-modal .modal-footer button{width:100%}.clubs-table-container{margin:0 -16px;border-radius:0;border-left:none;border-right:none}.clubs-table .col-email{display:none}}.club-list-container{max-width:1400px;margin:0 auto;padding:24px}.club-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.club-list-header h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0}.club-list-header .header-actions{display:flex;gap:12px}.club-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.club-stats{font-size:14px;color:var(--color-text-muted);margin-bottom:16px}.club-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px}@media (max-width: 768px){.club-list-container{padding:16px}.club-list-header{flex-direction:column;align-items:flex-start;gap:16px}.club-filters{flex-direction:column;width:100%}.search-input{min-width:100%}.club-grid{grid-template-columns:1fr}}.club-form-container{max-width:800px;margin:0 auto;padding:24px}.club-form-header{margin-bottom:32px}.club-form-header h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0}.club-form{background:var(--color-bg-card);border-radius:8px;padding:32px;box-shadow:0 2px 8px #0000001a}.logo-preview{margin-top:12px;max-width:200px}.logo-preview img{width:100%;height:auto;border-radius:8px;border:1px solid var(--color-border)}@media (max-width: 768px){.club-form-container{padding:16px}.club-form{padding:24px}}.bulk-team-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.bulk-team-modal{background:var(--color-bg-card);border-radius:8px;max-width:900px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #00000080;border:1px solid var(--color-border)}.modal-title h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0}.modal-subtitle{font-size:14px;color:var(--color-text-muted);margin-top:4px;display:block}.close-btn{background:none;border:none;font-size:32px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.close-btn:hover{background-color:var(--color-bg-shape-dim);color:var(--color-text-primary)}.error-message{background-color:#dc26261a;color:#ef4444;border-radius:8px;padding:12px;margin-bottom:16px;font-size:14px;border:1px solid rgba(220,38,38,.3)}.step-info{margin-bottom:20px}.step-info h4{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.step-info p{font-size:14px;color:var(--color-text-muted);margin:0}.paste-textarea{width:100%;padding:16px;font-size:14px;font-family:inherit;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-shape);color:var(--color-text-primary);resize:vertical;min-height:200px}.paste-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #cc335733}.paste-textarea::placeholder{color:var(--color-text-muted)}.paste-info{margin-top:12px;font-size:13px;color:var(--color-text-muted)}.global-defaults{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;padding:20px;margin-bottom:20px}.global-defaults h5{font-size:14px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px}.defaults-row{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px}.defaults-row:last-child{margin-bottom:0}.default-field{flex:1;min-width:150px}.default-field label{display:block;font-size:12px;font-weight:500;color:var(--color-text-muted);margin-bottom:6px}.default-field select{width:100%;padding:8px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-card);color:var(--color-text-primary)}.default-field select:focus{outline:none;border-color:var(--color-accent)}.apply-btn{flex-shrink:0;padding:8px 16px!important}.game-chips{display:flex;flex-wrap:wrap;gap:8px}.game-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;border:2px solid var(--color-border);border-radius:20px;background-color:var(--color-bg-card);color:var(--color-text-primary);cursor:pointer;transition:all .2s}.game-chip:hover{border-color:var(--color-text-muted)}.game-chip.selected{border-color:var(--color-accent);background-color:var(--color-accent-bg);color:var(--color-accent)}.game-chip-icon{width:16px;height:16px;object-fit:contain}.teams-table-container{overflow-x:auto;border:1px solid var(--color-border);border-radius:8px}.teams-table{width:100%;border-collapse:collapse;font-size:14px}.teams-table th{text-align:left;padding:12px;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.teams-table td{padding:12px;border-bottom:1px solid var(--color-border);vertical-align:middle}.teams-table tr:last-child td{border-bottom:none}.teams-table tr:hover{background-color:var(--color-bg-shape-dim)}.teams-table tr.row-error{background-color:#dc26260d}.col-name{min-width:180px}.col-games{min-width:200px}.col-supervisor,.col-hospitality{min-width:140px}.col-actions{width:40px;text-align:center}.teams-table input[type=text]{width:100%;padding:6px 10px;font-size:14px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-card);color:var(--color-text-primary)}.teams-table input[type=text]:focus{outline:none;border-color:var(--color-accent)}.teams-table input.input-error{border-color:#ef4444}.error-hint{display:block;font-size:11px;color:#ef4444;margin-top:4px}.teams-table select{width:100%;padding:6px 8px;font-size:13px;border:1px solid var(--color-border);border-radius:4px;background-color:var(--color-bg-card);color:var(--color-text-primary)}.teams-table select:focus{outline:none;border-color:var(--color-accent)}.game-chips-small{display:flex;flex-wrap:wrap;gap:4px}.game-chip-small{display:inline-block;padding:3px 8px;font-size:11px;font-weight:500;border:1px solid var(--color-border);border-radius:12px;background-color:var(--color-bg-card);color:var(--color-text-muted);cursor:pointer;transition:all .2s}.game-chip-small:hover{border-color:var(--color-text-muted)}.game-chip-small.selected{border-color:var(--color-accent);background-color:var(--color-accent-bg);color:var(--color-accent)}.remove-btn{background:none;border:none;font-size:20px;color:var(--color-text-muted);cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.remove-btn:hover{background-color:#dc26261a;color:#ef4444}.table-info{margin-top:12px;font-size:13px;color:var(--color-text-muted)}.step-submitting{text-align:center;padding:40px 20px}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{to{transform:rotate(360deg)}}.step-submitting p{font-size:16px;color:var(--color-text-muted);margin:0}.results-summary{display:flex;gap:12px;justify-content:center;margin-bottom:24px}.result-badge{display:inline-flex;align-items:center;padding:8px 16px;font-size:16px;font-weight:600;border-radius:20px;background-color:var(--color-bg-shape);color:var(--color-text-muted)}.result-badge.success{background-color:#22c55e1a;color:#22c55e}.result-badge.failure{background-color:#dc26261a;color:#ef4444}.results-list{max-height:300px;overflow-y:auto;border:1px solid var(--color-border);border-radius:8px}.result-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--color-border)}.result-item:last-child{border-bottom:none}.result-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:600}.result-item.success .result-icon{background-color:#22c55e1a;color:#22c55e}.result-item.failure .result-icon{background-color:#dc26261a;color:#ef4444}.result-name{font-weight:500;color:var(--color-text-primary);flex:1}.result-error{font-size:13px;color:#ef4444}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid var(--color-border)}.modal-footer button{padding:10px 20px}.btn-primary,.btn-secondary{padding:12px 24px;font-size:14px;font-weight:500;border-radius:4px;border:none;cursor:pointer;transition:all .2s}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.bulk-team-modal{max-height:95vh}.modal-header,.modal-body,.modal-footer{padding:16px}.modal-footer{flex-direction:column-reverse}.modal-footer button{width:100%}.defaults-row{flex-direction:column;align-items:stretch}.default-field,.apply-btn{width:100%}.teams-table-container{margin:0 -16px;border-radius:0;border-left:none;border-right:none}.col-supervisor,.col-hospitality{display:none}}.club-detail-container{max-width:1200px;margin:0 auto;padding:24px}.club-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding:24px;background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000001a}.club-logo-large{width:80px;height:80px;border-radius:12px;overflow:hidden;flex-shrink:0}.club-logo-large img{width:100%;height:100%;object-fit:cover}.club-abbreviation-badge{display:inline-block;padding:4px 12px;background-color:var(--color-bg-shape);color:var(--color-accent);border-radius:6px;font-size:14px;font-weight:500;margin-top:4px}.club-detail-content{display:flex;flex-direction:column;gap:24px}.info-block{margin-bottom:20px}.info-block h3{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.info-block p{font-size:14px;line-height:1.6;color:var(--color-text-muted);margin:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2{margin:0}.event-list{display:flex;flex-direction:column;gap:12px}.event-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.event-info{flex:1}.event-name{font-size:16px;font-weight:600;color:var(--color-accent);text-decoration:none;display:block;margin-bottom:4px}.event-name:hover{text-decoration:underline}.event-meta{display:flex;gap:12px;font-size:13px}.event-status{padding:2px 8px;background-color:var(--color-bg-shape-light);color:var(--color-accent);border-radius:4px;font-weight:500}.event-dates{color:var(--color-text-muted)}.event-registered{font-size:13px;color:var(--color-text-muted)}.team-filter{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.filter-label{font-size:13px;font-weight:500;color:var(--color-text-muted)}.filter-chips{display:flex;gap:8px;flex-wrap:wrap}.filter-chip{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:500;background-color:var(--color-bg-shape);color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:16px;cursor:pointer;transition:all .2s}.filter-chip:hover{border-color:var(--color-text-muted);background-color:var(--color-bg-shape-dim)}.filter-chip.active{background-color:var(--color-accent-bg);border-color:var(--color-accent);color:var(--color-accent)}.filter-chip-icon{width:14px;height:14px;object-fit:contain}.team-list{display:flex;flex-direction:column;gap:2px}.team-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background-color:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.team-item .team-name{flex-shrink:0}.team-item .team-games{flex:1;justify-content:flex-end}.team-name{font-size:15px;font-weight:500;color:var(--color-accent);text-decoration:none}.team-name:hover{text-decoration:underline}.team-games{display:flex;gap:6px;flex-wrap:wrap}.team-game-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:500;background-color:var(--color-bg-shape-dim);color:var(--color-text-muted);border-radius:12px;border:1px solid var(--color-border)}.team-game-icon{width:14px;height:14px;object-fit:contain}.btn-icon-edit{padding:4px 8px;font-size:14px;text-decoration:none;border-radius:4px;opacity:.6;transition:opacity .15s;margin-left:auto;flex-shrink:0}.btn-icon-edit:hover{opacity:1}.team-item:hover .btn-icon-edit{opacity:.8}.player-list{display:flex;flex-direction:column;gap:8px}.player-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.player-name{font-size:15px;font-weight:500;color:var(--color-accent);text-decoration:none}.player-name:hover{text-decoration:underline}.player-nickname{font-size:14px;color:var(--color-text-muted)}.quick-action{margin-top:16px;display:flex;gap:12px;flex-wrap:wrap}.empty-state{text-align:center;padding:32px;color:var(--color-text-muted)}.empty-state p{margin:0 0 16px}.club-detail-footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}@media (max-width: 768px){.club-detail-container{padding:16px}.club-detail-header{flex-direction:column;gap:16px}.header-left{flex-direction:column;align-items:flex-start}.header-actions{width:100%;flex-direction:column}.header-actions button,.header-actions a{width:100%}.info-grid,.contact-grid{grid-template-columns:1fr}.event-item{flex-direction:column;align-items:flex-start;gap:12px}}.player-card{background:var(--color-bg-card);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000004d;transition:all .2s;border:1px solid var(--color-border)}.player-card:hover{box-shadow:0 4px 16px #00000080;transform:translateY(-2px)}.player-card-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.player-avatar-small{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:18px;flex-shrink:0}.player-card-title{flex:1;min-width:0}.player-card-title h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-nickname{font-size:14px;color:var(--color-text-muted);font-weight:500}.player-card-body{margin-bottom:16px}.player-user-info{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;padding:8px;background-color:#10b9811a;border-radius:6px;border:1px solid rgba(16,185,129,.2)}.user-badge{display:inline-block;padding:2px 8px;background-color:#10b981;color:#fff;border-radius:4px;font-size:12px;font-weight:500;width:fit-content}.username{font-size:13px;color:#10b981;font-weight:500}.player-contact{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.contact-item a{font-size:13px;color:var(--color-accent);text-decoration:none}.contact-item a:hover{text-decoration:underline}.player-meta{display:flex;align-items:center;gap:8px;font-size:13px}.player-card-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--color-border)}.player-card-actions .btn-secondary,.player-card-actions .btn-danger{flex:1;padding:8px 16px;font-size:14px;text-align:center}@media (max-width: 768px){.player-card{padding:16px}.player-card-actions{flex-direction:column}}.player-list-container{max-width:1400px;margin:0 auto;padding:24px}.player-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.header-title{display:flex;flex-direction:column;gap:8px}.header-title h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0}.club-breadcrumb{display:flex;align-items:center;gap:8px;font-size:14px}.club-breadcrumb a{color:var(--color-accent);text-decoration:none}.club-breadcrumb a:hover{text-decoration:underline}.separator{color:var(--color-text-muted)}.player-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:8px}.filter-group label{font-size:14px;font-weight:500;color:var(--color-text-muted)}.player-filters .search-input{min-width:300px}.player-stats{font-size:14px;color:var(--color-text-muted);margin-bottom:16px}.player-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px;margin-bottom:32px}@media (max-width: 768px){.player-list-container{padding:16px}.player-list-header{flex-direction:column;align-items:flex-start;gap:16px}.player-filters{flex-direction:column;width:100%}.search-input{min-width:100%}.player-grid{grid-template-columns:1fr}}.player-form-container{max-width:800px;margin:0 auto;padding:24px}.player-form-header{margin-bottom:32px}.player-form-header h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0 0 8px}.club-info{font-size:14px;color:var(--color-text-muted)}.club-info strong{color:var(--color-accent)}.player-form{background:var(--color-bg-card);border-radius:8px;padding:32px;box-shadow:0 2px 8px #0000001a}@media (max-width: 768px){.player-form-container{padding:16px}.player-form{padding:24px}}.user-link-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.user-link-form{background:var(--color-bg-card);border-radius:8px;padding:24px;max-width:500px;width:100%;box-shadow:0 20px 25px -5px #0000001a}.user-link-form h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0 0 20px}.error-message{background-color:#fef2f2;color:#dc2626;border-radius:8px;padding:12px;margin-bottom:16px;font-size:14px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:8px}.form-group input{width:100%;padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;transition:border-color .2s;background-color:var(--color-bg-shape);color:var(--color-text-primary)}.form-group input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background-color:var(--color-bg-shape-dim);color:var(--color-text-muted);cursor:not-allowed}.field-hint{font-size:13px;color:var(--color-text-muted);margin-top:4px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.form-actions button{padding:10px 20px;font-size:14px}.btn-warning{background-color:#f59e0b;color:#fff;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-warning:hover{background-color:#d97706}.btn-warning:disabled{background-color:#fcd34d;cursor:not-allowed}@media (max-width: 768px){.user-link-form{padding:20px}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.player-detail-container{max-width:1200px;margin:0 auto;padding:24px}.player-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding:24px;background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000001a}.header-left{display:flex;align-items:center;gap:20px}.player-avatar{width:80px;height:80px;border-radius:50%;flex-shrink:0}.avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:32px}.header-text h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0 0 8px}.player-nickname{font-size:18px;color:var(--color-text-muted);font-weight:500;margin-bottom:4px}.player-club{font-size:14px}.player-club a{color:var(--color-accent);text-decoration:none}.player-club a:hover{text-decoration:underline}.header-actions{display:flex;gap:12px}.player-detail-content{display:flex;flex-direction:column;gap:24px}.detail-section{background:var(--color-bg-card);border-radius:8px;padding:24px;box-shadow:0 2px 8px #0000001a}.detail-section h2{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0 0 20px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.info-item{display:flex;justify-content:space-between;padding:12px;background-color:var(--color-bg-shape);border-radius:6px}.info-label{font-size:14px;color:var(--color-text-muted);font-weight:500}.info-value{font-size:14px;color:var(--color-text-primary);font-weight:600}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.contact-item{display:flex;flex-direction:column;gap:4px}.contact-label{font-size:13px;color:var(--color-text-muted);font-weight:500}.contact-link{font-size:14px;color:var(--color-accent);text-decoration:none}.contact-link:hover{text-decoration:underline}.user-link-info{display:flex;flex-direction:column;gap:12px;padding:16px;background-color:var(--color-bg-shape-light);border-radius:6px}.user-link-info .info-item{background-color:var(--color-bg-shape)}.no-user-link{text-align:center;padding:32px;background-color:var(--color-bg-shape);border-radius:6px}.no-user-link p{color:var(--color-text-muted);margin:0 0 16px}.player-detail-footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}.loading{text-align:center;padding:48px;color:var(--color-text-muted)}@media (max-width: 768px){.player-detail-container{padding:16px}.player-detail-header{flex-direction:column;gap:16px}.header-left{flex-direction:column;align-items:flex-start}.header-actions{width:100%;flex-direction:column}.header-actions button,.header-actions a{width:100%}.info-grid,.contact-grid{grid-template-columns:1fr}}.event-club-registration-container{max-width:1200px;margin:0 auto;padding:24px}.registration-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding:24px;background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000001a}.header-info h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0 0 8px}.event-info{display:flex;align-items:center;gap:12px;font-size:14px}.event-info a{color:var(--color-accent);text-decoration:none;font-weight:500}.event-info a:hover{text-decoration:underline}.event-dates{color:var(--color-text-muted);padding-left:12px;border-left:1px solid var(--color-border)}.registered-clubs-list{display:flex;flex-direction:column;gap:16px}.club-registration-item{display:flex;justify-content:space-between;align-items:center;padding:20px;background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000001a;transition:all .2s}.club-registration-item:hover{box-shadow:0 4px 12px #00000026}.club-info{flex:1}.club-name{font-size:18px;font-weight:600;color:var(--color-accent);text-decoration:none;display:block;margin-bottom:4px}.club-name:hover{text-decoration:underline}.registration-date{font-size:13px;color:var(--color-text-muted)}.club-actions{display:flex;gap:8px}.empty-state{text-align:center;padding:64px 24px;background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000001a}.empty-state p{font-size:16px;color:var(--color-text-muted);margin:0 0 16px}.registration-footer{margin-top:32px;padding-top:24px;border-top:1px solid var(--color-border)}.loading,.error-message{text-align:center;padding:48px;color:var(--color-text-muted)}.error-message{background-color:#fef2f2;color:#dc2626;border-radius:8px}@media (max-width: 768px){.event-club-registration-container{padding:16px}.registration-header{flex-direction:column;gap:16px}.registration-header button{width:100%}.event-info{flex-direction:column;align-items:flex-start;gap:4px}.event-dates{padding-left:0;border-left:none}.club-registration-item{flex-direction:column;align-items:flex-start;gap:16px}.club-actions{width:100%;flex-direction:column}.club-actions button,.club-actions a{width:100%}}.league-integrity-page{max-width:1200px;margin:0 auto;padding:40px 20px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;gap:20px}.header-info h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{margin:0;color:var(--color-text-muted);font-size:14px}.filter-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:15px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;color:var(--color-text-primary)}.btn-refresh{padding:8px 16px;background:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-refresh:hover{background:var(--color-bg-shape-dim)}.summary-bar{margin-bottom:20px}.summary-count{font-size:14px;color:var(--color-text-muted)}.no-issues{text-align:center;padding:60px 20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px}.no-issues-icon{width:64px;height:64px;background:var(--color-success-bg);color:var(--color-success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;margin:0 auto 20px}.no-issues h3{margin:0 0 10px;color:var(--color-success)}.no-issues p{margin:0;color:var(--color-text-muted)}.reports-list{display:flex;flex-direction:column;gap:15px}.report-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.report-header{display:flex;align-items:center;padding:20px;cursor:pointer;transition:background .2s}.report-header:hover{background:var(--color-bg-shape)}.report-info{flex:1}.tournament-name{margin:0 0 4px;font-size:18px;color:var(--color-text-heading)}.event-name{display:block;font-size:13px;color:var(--color-text-muted);margin-bottom:10px}.badges{display:flex;flex-wrap:wrap;gap:8px}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-in-progress{background:var(--color-warning-bg);color:var(--color-warning)}.badge-closed{background:#5ea0f733;color:var(--color-text-heading)}.badge-completed{background:var(--color-success-bg);color:var(--color-success)}.badge-league{background:#9c27b033;color:#ce93d8}.badge-bracket{background:#2196f333;color:#90caf9}.badge-super-final{background:#ffc10733;color:#ffd54f}.badge-format{background:var(--color-bg-shape);color:var(--color-text-muted)}.issue-badges{display:flex;gap:10px;margin-right:15px}.issue-badge{padding:6px 12px;border-radius:4px;font-size:12px;font-weight:600}.issue-uneven{background:#ff980033;color:#ff9800}.issue-duplicate{background:#ef535033;color:#ef5350}.issue-room-conflict{background:#7c4dff33;color:#b388ff}.expand-btn{background:none;border:none;font-size:16px;color:var(--color-text-muted);cursor:pointer;padding:5px}.report-details{padding:20px;border-top:1px solid var(--color-border);background:var(--color-bg-shape)}.detail-section{margin-bottom:25px}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 15px;font-size:14px;color:var(--color-text-heading);display:flex;align-items:center;gap:10px}.expected-count{font-weight:400;color:var(--color-text-muted);font-size:13px}.detail-table{width:100%;border-collapse:collapse;background:var(--color-bg-card);border-radius:6px;overflow:hidden}.detail-table th,.detail-table td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--color-border)}.detail-table th{background:var(--color-bg-shape);font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.detail-table tbody tr:last-child td{border-bottom:none}.detail-table tbody tr.outlier{background:#ff98001a}.count-cell{font-weight:600;text-align:center}.count-cell.issue{color:#ef5350}.status-outlier{color:#ff9800;font-weight:600}.status-ok{color:var(--color-success);font-weight:600}.match-links{display:flex;flex-wrap:wrap;gap:8px}.match-link{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--color-bg-shape);border-radius:4px;font-size:12px;font-weight:500}.match-status{font-size:10px;font-weight:400}.match-status.status-scheduled{color:var(--color-text-muted)}.match-status.status-in_progress{color:var(--color-warning)}.match-status.status-completed{color:var(--color-success)}.match-status.status-forfeited{color:#ef5350}.conflict-list{display:flex;flex-direction:column;gap:12px}.conflict-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;padding:15px}.conflict-card.conflict-room-double-booked{border-left:4px solid #ef5350}.conflict-card.conflict-team-double-booked{border-left:4px solid #ff9800}.conflict-card.conflict-capacity-exceeded{border-left:4px solid #ffc107}.conflict-card.conflict-cross-tournament-room-conflict{border-left:4px solid #7c4dff}.conflict-header{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.conflict-type-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;background:#7c4dff33;color:#b388ff}.conflict-room{font-weight:600;color:var(--color-text-primary)}.conflict-team{font-weight:500;color:var(--color-text-muted)}.conflict-message{margin:0 0 10px;font-size:14px;color:var(--color-text-primary)}.conflict-time{font-size:12px;color:var(--color-text-muted);margin-bottom:10px}.conflict-matches{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.conflict-matches .label,.conflict-other-tournament .label{font-size:12px;color:var(--color-text-muted);font-weight:500}.match-desc{display:inline-block;padding:4px 8px;background:var(--color-bg-shape);border-radius:4px;font-size:12px;font-weight:500}.conflict-other-tournament{margin-top:10px;font-size:13px;color:var(--color-text-muted)}.report-actions{margin-top:20px;padding-top:15px;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:10px}.btn-primary{background:var(--color-accent-gradient);color:#fff;padding:10px 20px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.btn-secondary{background-color:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border);padding:10px 20px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background-color:var(--color-bg-shape-dim)}.error-message{background-color:#dc35451a;border:1px solid var(--color-error);color:var(--color-error);padding:12px 16px;border-radius:4px;margin-bottom:20px;font-size:14px;display:flex;justify-content:space-between;align-items:center}.btn-close{background:none;border:none;font-size:24px;color:var(--color-error);cursor:pointer;padding:0;line-height:1}.loading{text-align:center;padding:60px 20px;color:var(--color-text-muted);font-size:14px}@media (max-width: 768px){.page-header{flex-direction:column}.filter-bar{flex-direction:column;gap:15px;align-items:stretch}.report-header{flex-direction:column;align-items:flex-start;gap:15px}.issue-badges{margin-right:0}.expand-btn{align-self:flex-end}.detail-table{font-size:13px}.detail-table th,.detail-table td{padding:10px}}.scheduling-page{max-width:1400px;margin:0 auto;padding:20px}.scheduling-page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px;flex-wrap:wrap}.scheduling-page-header .header-info{flex:1;min-width:200px}.scheduling-page-header h1{margin:0 0 8px;font-size:1.75rem;font-weight:600;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.scheduling-page-header .page-subtitle{margin:0;font-size:.95rem;color:var(--color-text-muted)}.scheduling-page-header .event-link{color:var(--color-text-heading);text-decoration:none}.scheduling-page-header .event-link:hover{text-decoration:underline}.scheduling-page-header .separator{margin:0 4px;color:var(--color-text-muted)}.scheduling-page-header .tournament-name{font-weight:500}.scheduling-page-header .header-actions{display:flex;gap:8px;align-items:center}.scheduling-page .loading{text-align:center;padding:40px;color:var(--color-text-muted)}.scheduling-page .error-message{padding:16px;background-color:var(--color-error-bg);border:1px solid var(--color-error);border-radius:8px;color:var(--color-error);margin-bottom:16px}.scheduling-page .btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;background:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:all .15s ease}.scheduling-page .btn-secondary:hover{background:var(--color-bg-shape-dim);border-color:var(--color-accent)}.placement-points-editor{background:var(--color-bg-card);border-radius:8px;padding:24px}.presets-section{margin-bottom:20px}.presets-section label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:8px}.presets-buttons{display:flex;flex-wrap:wrap;gap:8px}.btn-preset{padding:8px 16px;font-size:13px;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);cursor:pointer;transition:all .2s}.btn-preset:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-accent)}.btn-preset:disabled{opacity:.5;cursor:not-allowed}.points-table-container{border:1px solid var(--color-border);border-radius:8px;overflow:hidden;margin-bottom:20px}.points-table{width:100%;border-collapse:collapse}.points-table th{background:var(--color-bg-shape);padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border)}.points-table th:last-child{width:80px;text-align:center}.points-table td{padding:8px 16px;border-bottom:1px solid var(--color-border)}.points-table tr:last-child td{border-bottom:none}.points-table td input{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary)}.points-table td input:focus{outline:none;border-color:var(--color-accent)}.points-table td:last-child{text-align:center}@media (max-width: 768px){.placement-points-editor{padding:16px}.presets-buttons{flex-direction:column}.btn-preset{width:100%}.editor-actions{flex-direction:column-reverse;align-items:stretch}.left-actions{justify-content:space-between}}.bonus-categories-editor{background:var(--color-bg-card);border-radius:8px;padding:24px}.editor-header{margin-bottom:20px}.editor-header h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.editor-description{font-size:14px;color:var(--color-text-muted);margin:0}.quick-add-section{margin-bottom:20px}.quick-add-section label{display:block;font-size:14px;font-weight:500;color:var(--color-text-primary);margin-bottom:8px}.quick-add-buttons{display:flex;flex-wrap:wrap;gap:8px}.btn-quick-add{padding:6px 12px;font-size:13px;background:var(--color-bg-shape);border:1px dashed var(--color-border);border-radius:6px;color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.btn-quick-add:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-accent);border-style:solid;color:var(--color-accent)}.btn-quick-add:disabled{opacity:.4;cursor:not-allowed}.categories-table-container{border:1px solid var(--color-border);border-radius:8px;overflow:hidden;margin-bottom:20px}.categories-table{width:100%;border-collapse:collapse}.categories-table th{background:var(--color-bg-shape);padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border)}.categories-table th:first-child{width:80px;text-align:center}.categories-table th:nth-child(3){width:120px}.categories-table th:last-child{width:80px;text-align:center}.categories-table td{padding:8px 16px;border-bottom:1px solid var(--color-border)}.categories-table tr:last-child td{border-bottom:none}.categories-table td input[type=text],.categories-table td input[type=number]{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary)}.categories-table td input:focus{outline:none;border-color:var(--color-accent)}.order-cell{text-align:center}.order-buttons{display:flex;flex-direction:column;gap:2px;align-items:center}.btn-order{width:24px;height:20px;padding:0;border:1px solid var(--color-border);border-radius:3px;background:var(--color-bg-shape);color:var(--color-text-muted);cursor:pointer;font-size:12px;line-height:1;transition:all .2s}.btn-order:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-accent);color:var(--color-accent)}.btn-order:disabled{opacity:.3;cursor:not-allowed}.categories-table td:last-child{text-align:center}.empty-state{text-align:center;padding:32px!important;color:var(--color-text-muted);font-style:italic}.btn-icon{width:32px;height:32px;border:none;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:18px;transition:all .2s}.btn-remove{background:transparent;color:var(--color-text-muted)}.btn-remove:hover:not(:disabled){background:#fef2f2;color:#dc2626}.btn-remove:disabled{opacity:.5;cursor:not-allowed}.editor-actions{display:flex;justify-content:space-between;align-items:center;gap:16px}.left-actions{display:flex;gap:12px}.btn-text{background:none;border:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;padding:8px 12px}.btn-text:hover:not(:disabled){color:var(--color-text-primary)}.btn-text:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.bonus-categories-editor{padding:16px}.quick-add-buttons{flex-direction:column}.btn-quick-add{width:100%}.editor-actions{flex-direction:column-reverse;align-items:stretch}.left-actions{justify-content:space-between}}.ffa-configuration-panel{max-width:900px;margin:0 auto}.panel-header{margin-bottom:24px}.panel-header h2{font-size:24px;font-weight:700;color:var(--color-text-heading);margin:0 0 8px}.panel-description{font-size:14px;color:var(--color-text-muted);margin:0}.success-message{background-color:#f0fdf4;color:#16a34a;border-radius:8px;padding:16px;margin-bottom:20px}.tabs{display:flex;gap:4px;margin-bottom:0;border-bottom:1px solid var(--color-border)}.tab{padding:12px 20px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.tab:hover{color:var(--color-text-primary)}.tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.tab-badge{background:var(--color-bg-shape);color:var(--color-text-muted);font-size:12px;padding:2px 8px;border-radius:10px}.tab.active .tab-badge{background:var(--color-accent);color:#fff}.tab-content{padding-top:24px}.configuration-summary{margin-top:32px;padding:20px;background:var(--color-bg-shape);border-radius:8px;border:1px solid var(--color-border)}.configuration-summary h4{font-size:14px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-label{font-size:12px;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:14px;color:var(--color-text-primary)}@media (max-width: 768px){.tabs{flex-direction:column;gap:0}.tab{justify-content:space-between;border-bottom:1px solid var(--color-border);border-left:3px solid transparent}.tab.active{border-bottom-color:var(--color-border);border-left-color:var(--color-accent);background:var(--color-bg-hover)}.summary-grid{grid-template-columns:1fr}}.ffa-standings-table{max-width:100%}.standings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.standings-header h3{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0}.standings-controls{display:flex;gap:12px;align-items:center}.phase-filter{padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer}.phase-filter:focus{outline:none;border-color:var(--color-accent)}.btn-small{padding:8px 16px;font-size:13px}.loading,.empty-state{text-align:center;padding:48px 24px;color:var(--color-text-muted);background:var(--color-bg-card);border-radius:8px;border:1px dashed var(--color-border)}.error-message{background-color:#fef2f2;color:#dc2626;border-radius:8px;padding:16px;margin-bottom:20px}.standings-table-container{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);overflow-x:auto}.standings-table{width:100%;border-collapse:collapse;min-width:600px}.standings-table th{background:var(--color-bg-shape);padding:14px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--color-border)}.standings-table td{padding:12px 16px;border-bottom:1px solid var(--color-border);vertical-align:middle}.standings-table tbody tr:last-child td{border-bottom:none}.standings-table tbody tr:hover{background:var(--color-bg-hover)}.rank-col{width:50px;text-align:center}.rank-number{font-weight:600;font-size:14px;color:var(--color-text-secondary)}.rank-1 .rank-number{color:var(--color-placement-1);font-size:16px}.rank-2 .rank-number{color:var(--color-placement-2);font-size:16px}.rank-3 .rank-number{color:var(--color-placement-3);font-size:16px}.team-col{min-width:180px}.team-info{display:flex;flex-direction:column;gap:2px}.team-name{font-weight:500;color:var(--color-text-primary)}.club-name{font-size:12px;color:var(--color-text-muted)}.qualified-badge{display:inline-block;margin-left:8px;padding:2px 6px;background:#d1fae5;color:#059669;font-size:11px;font-weight:600;border-radius:3px;vertical-align:middle}.stat-col{width:90px;text-align:center;color:var(--color-text-secondary);font-size:14px}.points-col{width:100px;text-align:right;font-size:14px;color:var(--color-text-secondary)}.total-col{width:100px;text-align:right}.total-points{font-weight:700;font-size:16px;color:var(--color-accent)}.expand-col{width:50px;text-align:center}.btn-expand{width:28px;height:28px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-shape);color:var(--color-text-muted);cursor:pointer;font-size:16px;line-height:1;transition:all .2s}.btn-expand:hover{background:var(--color-bg-hover);border-color:var(--color-accent);color:var(--color-accent)}.qualified td{background:#10b9810d}.bonus-breakdown-row td{padding:0!important;background:var(--color-bg-shape)}.bonus-breakdown{padding:16px 24px}.bonus-breakdown h4{font-size:13px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.bonus-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-bottom:12px}.bonus-item{display:flex;justify-content:space-between;padding:8px 12px;background:var(--color-bg-card);border-radius:4px;font-size:13px}.bonus-name{color:var(--color-text-secondary)}.bonus-value{color:var(--color-text-primary);font-weight:500}.placement-stats{display:flex;gap:20px;font-size:13px;color:var(--color-text-muted)}.advancement-info{margin-top:16px;padding:12px 16px;background:#f0fdf4;border-radius:6px;color:#059669;font-size:14px;text-align:center}.view-mode-toggle{display:flex;border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.btn-toggle{padding:8px 16px;border:none;background:var(--color-bg-card);color:var(--color-text-secondary);font-size:13px;cursor:pointer;transition:all .2s}.btn-toggle:not(:last-child){border-right:1px solid var(--color-border)}.btn-toggle:hover{background:var(--color-bg-hover)}.btn-toggle.active{background:var(--color-accent);color:#fff}.groups-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.group-card{background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);overflow:hidden}.group-title{padding:12px 16px;margin:0;font-size:14px;font-weight:600;color:var(--color-text-heading);background:var(--color-bg-shape);border-bottom:1px solid var(--color-border)}.standings-table-container.compact{border:none;border-radius:0}.standings-table.compact{min-width:auto}.standings-table.compact th{padding:8px 10px;font-size:11px}.standings-table.compact td{padding:6px 10px}.standings-table.compact .rank-col{width:36px}.standings-table.compact .team-col{min-width:auto}.standings-table.compact .team-col .team-name{font-size:13px}.standings-table.compact .stat-col{width:40px;font-size:13px}.standings-table.compact .total-col{width:50px}.standings-table.compact .total-points{font-size:14px}.standings-table.compact .rank-number{font-size:13px}.standings-table.compact .rank-1 .rank-number,.standings-table.compact .rank-2 .rank-number,.standings-table.compact .rank-3 .rank-number{font-size:14px}.standings-table.compact .qualified-badge{margin-left:4px;padding:1px 4px;font-size:10px}.empty-state.compact{padding:24px 16px;font-size:13px}@media (max-width: 768px){.standings-header{flex-direction:column;gap:12px;align-items:flex-start}.standings-controls{width:100%;flex-wrap:wrap}.view-mode-toggle{order:-1;width:100%}.btn-toggle,.phase-filter{flex:1}.standings-table th,.standings-table td{padding:10px 12px}.team-col{min-width:140px}.stat-col,.points-col{width:70px}.groups-grid{grid-template-columns:1fr}}.ffa-league-generator{background:var(--color-bg-card);border-radius:8px;padding:24px;max-width:600px;max-height:80vh;overflow-y:auto}.generator-header{margin-bottom:24px}.generator-header h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.generator-description{font-size:14px;color:var(--color-text-muted);margin:0}.generator-form{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.manual-groups-badge{display:inline-block;padding:2px 8px;font-size:11px;font-weight:600;color:var(--color-success);background:var(--color-success-bg);border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.generator-actions{display:flex;gap:12px;justify-content:flex-end}.generation-result{padding-top:8px}.result-header h4{font-size:16px;font-weight:600;color:var(--color-success);margin:0;display:flex;align-items:center;gap:8px}.result-header h4:before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-success-bg);border-radius:50%;font-size:14px}.result-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;padding:20px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:20px}.groups-breakdown,.rounds-breakdown{margin-bottom:24px}.groups-breakdown h5,.rounds-breakdown h5{font-size:14px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.groups-list,.rounds-list{display:flex;flex-direction:column;gap:8px}.group-item,.round-item{display:flex;justify-content:space-between;padding:10px 14px;background:var(--color-bg-shape);border-radius:6px;font-size:14px}.group-number,.round-number{font-weight:500;color:var(--color-text-primary)}.group-details,.round-details{color:var(--color-text-muted)}.form-section-divider{display:flex;align-items:center;gap:12px;margin:8px 0;color:var(--color-text-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.form-section-divider:before,.form-section-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.bracket-pregeneration-result{margin-bottom:24px;padding:16px;background:linear-gradient(135deg,#6366f10d,#8b5cf60d);border:1px solid rgba(99,102,241,.2);border-radius:8px}.bracket-pregeneration-result h5{font-size:14px;font-weight:600;color:#6366f1;margin:0 0 12px}.bracket-summary{background:var(--color-bg-card)}.bracket-hint{font-size:13px;color:var(--color-text-muted);margin:12px 0 0;font-style:italic}.bracket-structure-description{font-size:13px;color:var(--color-text-secondary);margin:8px 0 0;padding:8px 12px;background:var(--color-bg-card);border-radius:4px}.structure-mode-selector{display:flex;flex-direction:column;gap:10px;margin-top:8px}.mode-option{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;background:var(--color-bg-shape);border:2px solid transparent;border-radius:8px;cursor:pointer;transition:border-color .15s,background-color .15s}.mode-option:hover{background:var(--color-bg-hover)}.mode-option.selected{border-color:var(--color-accent);background:#6366f10d}.mode-option input[type=radio]{margin-top:2px;accent-color:var(--color-accent)}.mode-content{display:flex;flex-direction:column;gap:4px}.mode-title{font-size:14px;font-weight:600;color:var(--color-text-primary)}.mode-description{font-size:13px;color:var(--color-text-muted);line-height:1.4}@media (max-width: 768px){.ffa-league-generator{padding:16px}.result-summary{grid-template-columns:repeat(2,1fr)}.generator-actions{flex-direction:column-reverse}.generator-actions button{width:100%}}.ffa-bracket-transition{background:var(--color-bg-card);border-radius:8px;padding:24px;max-width:700px}.transition-header{margin-bottom:24px}.transition-header h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.transition-description{font-size:14px;color:var(--color-text-muted);margin:0}.transition-form{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.form-group label{font-size:14px;font-weight:500;color:var(--color-text-primary)}.form-group input[type=number]{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary);width:100%}.form-group input:focus{outline:none;border-color:var(--color-accent)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.range-input{display:flex;align-items:center;gap:16px}.range-input input[type=range]{flex:1;accent-color:var(--color-accent)}.range-value{font-size:14px;font-weight:600;color:var(--color-text-heading);min-width:50px;text-align:right}.teams-preview{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.preview-section{background:var(--color-bg-shape);border-radius:8px;padding:16px}.preview-section h4{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px}.preview-section.advancing h4{color:#059669}.preview-section.eliminated h4{color:#dc2626}.teams-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.team-item{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--color-bg-card);border-radius:4px;font-size:13px}.team-rank{font-weight:600;color:var(--color-text-muted);min-width:30px}.team-name{flex:1;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-points{color:var(--color-accent);font-weight:500}.more-teams{padding:8px;text-align:center;color:var(--color-text-muted);font-size:13px;font-style:italic}.transition-actions{display:flex;gap:12px;justify-content:flex-end}.transition-result{padding-top:8px}.result-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:20px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:20px}.summary-value{display:block;font-size:28px;font-weight:700;color:var(--color-text-heading)}.summary-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.carry-over-info{padding:12px 16px;background:#fef3c7;border-radius:6px;color:#d97706;font-size:14px;margin-bottom:20px}@media (max-width: 768px){.ffa-bracket-transition{padding:16px}.teams-preview{grid-template-columns:1fr}.result-summary{grid-template-columns:repeat(3,1fr)}.transition-actions{flex-direction:column-reverse}.transition-actions button{width:100%}}.ffa-room-scheduler{background:var(--color-bg-card);border-radius:8px;padding:24px;max-width:700px}.scheduler-header{margin-bottom:24px}.scheduler-header h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 8px}.scheduler-description{font-size:14px;color:var(--color-text-muted);margin:0}.loading{text-align:center;padding:48px 24px;color:var(--color-text-muted)}.error-message{background-color:#fef2f2;color:#dc2626;border-radius:8px;padding:12px 16px;margin-bottom:16px;font-size:14px}.scheduler-form{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:var(--color-text-primary);display:flex;align-items:center;gap:8px}.room-count{font-size:12px;font-weight:400;color:var(--color-text-muted)}.form-group select,.form-group input[type=number],.form-group input[type=datetime-local]{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary);width:100%}.form-group select:focus,.form-group input:focus{outline:none;border-color:var(--color-accent)}.form-group input:disabled,.form-group select:disabled{opacity:.6;cursor:not-allowed}.checkbox-group{padding-top:8px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-accent)}.field-hint{font-size:13px;color:var(--color-text-muted)}.room-selection-actions{display:flex;gap:12px;margin-bottom:8px}.btn-text{background:none;border:none;color:var(--color-accent);font-size:13px;cursor:pointer;padding:0}.btn-text:hover{text-decoration:underline}.rooms-list{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto;padding:12px;background:var(--color-bg-shape);border-radius:6px;border:1px solid var(--color-border)}.room-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;padding:6px 8px;border-radius:4px;transition:background .2s}.room-checkbox:hover{background:var(--color-bg-hover)}.room-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);cursor:pointer}.room-name{flex:1;font-size:14px;color:var(--color-text-primary)}.room-type{font-size:12px;color:var(--color-text-muted);padding:2px 6px;background:var(--color-bg-card);border-radius:3px}.scheduler-actions{display:flex;gap:12px;justify-content:flex-end}.scheduling-result{padding-top:8px}.result-header{margin-bottom:20px}.result-header h4{font-size:16px;font-weight:600;color:#059669;margin:0;display:flex;align-items:center;gap:8px}.result-header h4:before{content:"✓";display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#d1fae5;border-radius:50%;font-size:14px}.result-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px;background:var(--color-bg-shape);border-radius:8px;margin-bottom:20px}.summary-item{text-align:center}.summary-value{display:block;font-size:24px;font-weight:700;color:var(--color-text-heading)}.summary-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.unassigned-list{margin-bottom:20px}.unassigned-list h5{font-size:14px;font-weight:600;color:#dc2626;margin:0 0 12px}.unassigned-item{display:flex;justify-content:space-between;padding:10px 14px;background:#fef2f2;border-radius:6px;margin-bottom:6px;font-size:13px}.unassigned-item .team-name{font-weight:500;color:var(--color-text-primary)}.unassigned-item .reason{color:#dc2626}@media (max-width: 768px){.ffa-room-scheduler{padding:16px}.form-row{grid-template-columns:1fr}.result-summary{grid-template-columns:repeat(2,1fr)}.scheduler-actions{flex-direction:column-reverse}.scheduler-actions button{width:100%}}.manual-bracket-editor{display:flex;flex-direction:column;height:100%;max-height:90vh;background:var(--color-bg-card);border-radius:8px}.manual-bracket-editor-header{padding:20px 24px;border-bottom:1px solid var(--color-border)}.manual-bracket-editor-header h2{margin:0 0 8px;font-size:20px;color:var(--color-text-heading)}.manual-bracket-editor-header p{margin:0;color:var(--color-text-muted);font-size:14px}.manual-bracket-editor-content{display:flex;flex:1;overflow:hidden;min-height:400px}.sources-panel{width:220px;flex-shrink:0;padding:16px;border-right:1px solid var(--color-border);overflow-y:auto;background:var(--color-bg-shape)}.sources-section{margin-bottom:24px}.sources-section h3{margin:0 0 4px;font-size:13px;font-weight:600;color:var(--color-text-heading);text-transform:uppercase;letter-spacing:.5px}.sources-hint{margin:0 0 12px;font-size:12px;color:var(--color-text-muted)}.sources-list{display:flex;flex-direction:column;gap:6px}.source-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;font-size:13px;cursor:grab;transition:all .15s ease}.source-item:hover:not(.used){background:var(--color-accent-bg);border-color:var(--color-accent)}.source-item:active:not(.used){cursor:grabbing}.source-item.used{opacity:.5;cursor:not-allowed;background:var(--color-bg-shape-light)}.source-item.bracket-source{border-left:3px solid var(--color-info)}.used-indicator{font-size:10px;color:var(--color-text-muted);background:var(--color-bg-shape);padding:2px 6px;border-radius:4px}.bracket-canvas{flex:1;padding:20px;display:flex;flex-direction:column;min-height:0;overflow:auto}.bracket-toolbar{margin-bottom:16px;flex-shrink:0}.empty-bracket{display:flex;align-items:center;justify-content:center;padding:20px;color:var(--color-text-muted);text-align:center}.rounds-container{display:flex;flex-direction:row;flex-wrap:nowrap;gap:24px;align-items:flex-start;flex:1;overflow-x:auto;overflow-y:auto;padding-bottom:16px;min-height:600px}.round-column{min-width:240px;max-width:280px;flex-shrink:0;background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column}.round-header{display:flex;justify-content:space-between;align-items:center;padding:4px 12px;background:var(--color-bg-shape-light);border-top-left-radius:4px;border-top-right-radius:4px}.round-header h3{margin:0;font-size:14px;font-weight:600;color:var(--color-text-heading)}.matches-container{padding:4px;display:flex;flex-direction:column;gap:12px;flex:1;overflow-y:auto;min-height:0}.match-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:6px;padding:12px;flex-shrink:0}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;font-weight:500;color:var(--color-text-primary)}.btn-icon{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:2px 6px;font-size:16px;line-height:1;border-radius:4px}.btn-icon:hover{background:var(--color-bg-shape);color:var(--color-error)}.participants-container{display:flex;flex-direction:column;gap:6px}.participant-slot{min-height:36px;padding:8px 10px;border:2px dashed var(--color-border);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.participant-slot.empty{background:var(--color-bg-shape)}.participant-slot.filled{border-style:solid;background:var(--color-bg-card)}.participant-slot.drag-over{border-color:var(--color-accent);background:var(--color-accent-bg)}.slot-placeholder{font-size:12px;color:var(--color-text-muted)}.participant-source{display:flex;align-items:center;justify-content:space-between;width:100%}.source-badge{font-size:12px;font-weight:500;padding:4px 8px;border-radius:4px}.source-badge.league{background:var(--color-success-bg);color:var(--color-success)}.source-badge.bracket{background:var(--color-info-bg);color:var(--color-info)}.btn-xs{padding:2px 4px;font-size:12px}.add-participant-btn{margin-top:6px;font-size:11px}.add-match-btn{margin-top:4px}.manual-bracket-editor-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--color-border);background:var(--color-bg-shape)}.error-message{margin:8px 24px 0;padding:8px 12px;background:var(--color-error-bg);color:var(--color-error);border-radius:4px;font-size:13px}.success-message{margin:12px 24px 0;padding:12px 16px;background:var(--color-success-bg);color:var(--color-success);border-radius:6px;font-size:14px}.btn-sm{padding:6px 12px;font-size:13px}.btn-text{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px 8px;font-size:12px}.btn-text:hover{color:var(--color-error);text-decoration:underline}.modal-full-width .manual-bracket-editor{width:95vw;max-width:1400px}.ffa-tournament-management{max-width:100%;margin:0 auto;padding:24px}.ffa-tournament-management .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--color-border)}.header-content h1{font-size:28px;font-weight:700;color:var(--color-text-heading);margin:0 0 4px}.tournament-subtitle{font-size:14px;color:var(--color-text-muted);margin:0}.header-stats{display:flex;gap:24px;align-items:center}.header-stats .stat-item{text-align:center}.header-stats .stat-value{display:block;font-size:24px;font-weight:700;color:var(--color-text-heading)}.header-stats .stat-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.management-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);background-color:var(--color-bg-shape);border-radius:8px 8px 0 0;margin-bottom:24px;overflow-x:auto}.management-tabs .tab{padding:14px 20px;background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;color:var(--color-text-muted);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.management-tabs .tab:hover{color:var(--color-accent);background-color:var(--color-bg-shape-dim)}.management-tabs .tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background-color:var(--color-bg-card)}.overview-section{display:flex;flex-direction:column;gap:32px}.quick-actions h3,.tournament-info h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px}.actions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.action-card{display:flex;flex-direction:column;align-items:flex-start;padding:20px;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s;text-align:left}.action-card:hover:not(:disabled){border-color:var(--color-accent);box-shadow:0 2px 8px #0000001a}.action-card:disabled{opacity:.5;cursor:not-allowed}.action-icon{font-size:24px;margin-bottom:12px}.action-title{font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.action-description{font-size:13px;color:var(--color-text-muted)}.tournament-info .info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;padding:20px;background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border)}.tournament-info .info-item{display:flex;flex-direction:column;gap:4px}.tournament-info .info-label{font-size:12px;font-weight:500;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.tournament-info .info-value{font-size:14px;color:var(--color-text-primary)}.tournament-info-inline{display:flex;flex-wrap:wrap;gap:24px;padding:12px 16px;background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border);font-size:14px;color:var(--color-text-primary)}.tournament-info-inline .info-item{display:inline-flex;gap:6px}.tournament-info-inline .info-item strong{color:var(--color-text-muted);font-weight:500}.brackets-section{max-width:100%;padding:24px}.brackets-placeholder{text-align:center;padding:48px 24px;background:var(--color-bg-card);border:1px dashed var(--color-border);border-radius:8px}.brackets-placeholder h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.brackets-placeholder p{font-size:14px;color:var(--color-text-muted);margin:0}.generation-section{max-width:800px}.generation-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.generation-card{padding:24px;background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border)}.generation-card h3{font-size:16px;font-weight:600;color:var(--color-text-heading);margin:0 0 12px}.generation-card p{font-size:14px;color:var(--color-text-muted);margin:0 0 20px;line-height:1.5}.ffa-management-modal .modal-content{max-width:600px}.ffa-management-modal .modal-content.modal-wide{max-width:800px}.ffa-tournament-management .registered-teams-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:20px}.ffa-tournament-management .registered-teams-section h3{font-size:18px;font-weight:600;color:var(--color-text-heading);margin:0 0 16px}.ffa-tournament-management .teams-table-wrapper{overflow-x:auto}.ffa-tournament-management .teams-table{width:100%;border-collapse:collapse}.ffa-tournament-management .teams-table th,.ffa-tournament-management .teams-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--color-border)}.ffa-tournament-management .teams-table th{font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-shape)}.ffa-tournament-management .teams-table td{font-size:14px;color:var(--color-text-primary)}.ffa-tournament-management .teams-table .team-name-cell{font-weight:500}.ffa-tournament-management .teams-table tbody tr:hover{background:var(--color-bg-shape)}.ffa-tournament-management .btn-small{padding:6px 12px;font-size:12px;border-radius:4px;cursor:pointer;transition:all .2s}.ffa-tournament-management .btn-small.btn-secondary{background:var(--color-bg-shape);border:1px solid var(--color-border);color:var(--color-text-secondary)}.ffa-tournament-management .btn-small.btn-secondary:hover{background:var(--color-bg-card);border-color:var(--color-accent);color:var(--color-accent)}.ffa-tournament-management .modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--color-border);margin-bottom:16px}.ffa-tournament-management .modal-header h2{margin:0;font-size:20px;font-weight:600;color:var(--color-text-heading)}.ffa-tournament-management .modal-close{background:none;border:none;font-size:24px;color:var(--color-text-muted);cursor:pointer;padding:0;line-height:1}.ffa-tournament-management .modal-close:hover{color:var(--color-text-primary)}@media (max-width: 768px){.ffa-tournament-management{padding:16px}.page-header{flex-direction:column;gap:16px}.header-stats{width:100%;justify-content:space-between}.management-tabs{flex-wrap:nowrap;border-radius:0}.management-tabs .tab{padding:12px 16px;font-size:13px;flex:0 0 auto;min-width:auto}.actions-grid,.generation-options{grid-template-columns:1fr}.modal-content{max-width:100%;max-height:100%;border-radius:0}}.game-list-container{max-width:1200px;margin:0 auto;padding:24px}.game-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.game-list-header h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0}.game-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:center}.game-stats{font-size:14px;color:var(--color-text-muted);margin-bottom:16px}.game-table-container{overflow-x:auto}.game-table{width:100%;border-collapse:collapse;background:var(--color-bg-card);border-radius:8px;overflow:hidden;box-shadow:var(--shadow-sm)}.game-table th,.game-table td{padding:16px;text-align:left;border-bottom:1px solid var(--color-border)}.game-table th{background:var(--color-bg-secondary);font-weight:600;color:var(--color-text-heading);font-size:14px;text-transform:uppercase;letter-spacing:.5px}.game-table tbody tr:hover{background:var(--color-bg-hover)}.game-table tbody tr:last-child td{border-bottom:none}.game-icon-cell{width:60px}.game-icon{width:40px;height:40px;object-fit:contain;border-radius:4px}.game-icon-placeholder{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-weight:600;font-size:16px;border-radius:4px}.game-name{font-weight:500;color:var(--color-text-primary)}.game-abbreviation{color:var(--color-text-muted);font-family:var(--font-mono)}.game-actions{display:flex;gap:8px}.btn-small{padding:6px 12px;font-size:13px}@media (max-width: 768px){.game-list-container{padding:16px}.game-list-header{flex-direction:column;align-items:flex-start;gap:16px}.game-filters{flex-direction:column;width:100%}.search-input{min-width:100%}.game-table th,.game-table td{padding:12px 8px}.game-actions{flex-direction:column;gap:4px}}.game-form-container{max-width:800px;margin:0 auto;padding:24px}.game-form-header{margin-bottom:32px}.game-form-header h1{font-size:32px;font-weight:700;color:var(--color-text-heading);margin:0}.game-form{background:var(--color-bg-card);border-radius:8px;padding:32px;box-shadow:0 2px 8px #0000001a}.icon-preview{margin-top:12px;max-width:100px}.icon-preview img{width:100%;height:auto;border-radius:8px;border:1px solid var(--color-border)}@media (max-width: 768px){.game-form-container{padding:16px}.game-form{padding:24px}}.stream-bracket{background:#000;color:#fff;font-family:Inter,Segoe UI,sans-serif;padding:16px;min-height:100%}.stream-bracket-grid{display:flex;gap:12px;min-width:fit-content}.stream-bracket-round{display:flex;flex-direction:column;min-width:160px}.stream-bracket-round-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#888;text-align:center;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #333}.stream-bracket-round-matches{display:flex;flex-direction:column;flex:1;justify-content:space-around;position:relative}.stream-match{background:#111;border:1px solid #333;margin:4px 0;position:relative}.stream-match--completed{border-color:#555}.stream-match--in-progress{border-color:#fff;border-width:2px}.stream-match-header{font-size:9px;color:#666;padding:2px 6px;background:#0a0a0a;border-bottom:1px solid #222;text-align:center}.stream-match-team{display:flex;align-items:center;padding:6px 8px;border-bottom:1px solid #222;min-height:28px}.stream-match-team:last-child{border-bottom:none}.stream-match-team--winner{background:#1a1a1a}.stream-match-team--winner .stream-match-team-name{font-weight:700}.stream-match-team--loser{opacity:.5}.stream-match-team-seed{font-size:10px;color:#666;min-width:18px;text-align:center;margin-right:6px}.stream-match-team-name{flex:1;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stream-match-team-name--tbd{color:#555;font-style:italic}.stream-match-team-score{font-size:14px;font-weight:700;min-width:24px;text-align:right;margin-left:8px}.stream-match-team--winner .stream-match-team-score{color:#fff}.stream-bracket-connector{display:flex;flex-direction:column;width:0px;position:relative;z-index:1}.stream-bracket-connector-header{min-height:22px;margin-bottom:12px;flex-shrink:0}.stream-bracket-connector-body{display:flex;flex-direction:column;flex:1;position:relative}.stream-bracket-connector-pair{position:relative;flex:1;display:flex;flex-direction:column;justify-content:center}.stream-connector-line-h{position:absolute;height:1px;background:#444;width:12px;right:0}.stream-connector-line-v{position:absolute;width:1px;background:#444;right:0}.stream-connector-line-out{position:absolute;height:1px;background:#444;width:12px;right:-12px}.stream-bracket-connector--ffa{display:flex;flex-direction:column;width:0;position:relative;z-index:1}.stream-ffa-connector-header{min-height:22px;margin-bottom:12px;flex-shrink:0}.stream-ffa-connector-body{display:flex;flex-direction:column;flex:1;position:relative}.stream-ffa-connector-slot{position:relative;margin:8px 0;min-height:0;display:flex;align-items:center}.stream-ffa-connector-slot:before{content:"";position:absolute;left:-12px;width:12px;height:1px;background:#444;top:50%}.stream-ffa-connector-vertical{position:absolute;left:0;width:1px;background:#444}.stream-ffa-connector-slot:only-child:before{width:24px}.stream-ffa-connector-out{position:absolute;left:0;top:50%;width:12px;height:1px;background:#444}.stream-bracket-round-matches--ffa{justify-content:flex-start}.stream-ffa-match-slot{display:flex;flex-direction:column;justify-content:center;min-height:0;margin:8px 0}.stream-ffa-match{background:#111;border:1px solid #333}.stream-ffa-match--completed{border-color:#555}.stream-ffa-match-header{font-size:10px;font-weight:600;color:#888;padding:4px 8px;background:#0a0a0a;border-bottom:1px solid #222;text-align:center;text-transform:uppercase;letter-spacing:.5px}.stream-ffa-team{display:flex;align-items:center;padding:4px 8px;border-bottom:1px solid #1a1a1a;min-height:24px}.stream-ffa-team:last-child{border-bottom:none}.stream-ffa-team--advancing{background:#1a1a1a}.stream-ffa-team--advancing .stream-ffa-team-name{font-weight:600}.stream-ffa-position{font-size:10px;font-weight:700;color:#666;min-width:20px;text-align:center;margin-right:6px}.stream-ffa-team--advancing .stream-ffa-position{color:#fff}.stream-ffa-team-name{flex:1;font-size:11px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stream-ffa-team-name--tbd{color:#555;font-style:italic}.stream-ffa-team-score{font-size:12px;font-weight:600;min-width:28px;text-align:right;margin-left:8px;color:#888}.stream-ffa-team--advancing .stream-ffa-team-score{color:#fff}.stream-bracket-loading,.stream-bracket-empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:#555;font-size:12px;text-transform:uppercase;letter-spacing:1px}.stream-bracket--compact .stream-bracket-round{min-width:140px}.stream-bracket--compact .stream-match-team{padding:4px 6px;min-height:22px}.stream-bracket--compact .stream-match-team-name{font-size:11px}.stream-bracket--compact .stream-match-team-score{font-size:12px}.stream-bracket--compact .stream-ffa-team{padding:3px 6px;min-height:20px}.stream-bracket--compact .stream-ffa-team-name{font-size:10px}.stream-bracket--inverted{background:#fff;color:#000}.stream-bracket--inverted .stream-bracket-round-title{color:#666;border-color:#ddd}.stream-bracket--inverted .stream-match{background:#f5f5f5;border-color:#ddd}.stream-bracket--inverted .stream-match--completed{border-color:#bbb}.stream-bracket--inverted .stream-match--in-progress{border-color:#000}.stream-bracket--inverted .stream-match-header{background:#eee;border-color:#ddd;color:#888}.stream-bracket--inverted .stream-match-team{border-color:#ddd}.stream-bracket--inverted .stream-match-team--winner{background:#e8e8e8}.stream-bracket--inverted .stream-match-team-seed{color:#999}.stream-bracket--inverted .stream-match-team-name--tbd{color:#aaa}.stream-bracket--inverted .stream-connector-line-h,.stream-bracket--inverted .stream-connector-line-v,.stream-bracket--inverted .stream-connector-line-out,.stream-bracket--inverted .stream-ffa-connector-out,.stream-bracket--inverted .stream-ffa-connector-vertical,.stream-bracket--inverted .stream-ffa-connector-slot:before{background:#bbb}.stream-bracket--inverted .stream-ffa-match{background:#f5f5f5;border-color:#ddd}.stream-bracket--inverted .stream-ffa-match-header{background:#eee;border-color:#ddd;color:#666}.stream-bracket--inverted .stream-ffa-team{border-color:#e5e5e5}.stream-bracket--inverted .stream-ffa-team--advancing{background:#e8e8e8}.stream-bracket--inverted .stream-ffa-position{color:#999}.stream-bracket--inverted .stream-ffa-team--advancing .stream-ffa-position{color:#000}.stream-bracket--inverted .stream-ffa-team-name--tbd{color:#aaa}.stream-bracket--inverted .stream-ffa-team-score{color:#666}.stream-bracket--inverted .stream-ffa-team--advancing .stream-ffa-team-score{color:#000}.stream-demo{min-height:100vh;background:#1a1a1a;color:#fff;padding:40px;font-family:Inter,Segoe UI,sans-serif}.stream-demo-header{max-width:1200px;margin:0 auto 40px;text-align:center}.stream-demo-header h1{font-size:32px;font-weight:700;margin:0 0 8px}.stream-demo-header p{color:#888;font-size:16px;margin:0 0 24px}.stream-demo-tabs{display:flex;justify-content:center;gap:8px}.stream-demo-tabs button{background:#333;border:1px solid #444;color:#888;padding:10px 24px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.stream-demo-tabs button:hover{background:#444;color:#fff}.stream-demo-tabs button.active{background:#fff;color:#000;border-color:#fff}.stream-demo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:1400px;margin:0 auto 40px}.stream-demo-card{background:#222;border:1px solid #333;border-radius:8px;padding:20px}.stream-demo-card h3{font-size:18px;font-weight:600;margin:0 0 8px}.stream-demo-card p{color:#666;font-size:13px;margin:0 0 16px}.stream-demo-preview{border:1px solid #333;border-radius:4px;overflow:auto;max-height:400px}.stream-demo-preview--light{background:#f5f5f5}.stream-demo-usage{max-width:800px;margin:0 auto;background:#222;border:1px solid #333;border-radius:8px;padding:24px}.stream-demo-usage h2{font-size:20px;font-weight:600;margin:0 0 16px}.stream-demo-usage pre{background:#111;border:1px solid #333;border-radius:4px;padding:16px;font-size:13px;line-height:1.5;overflow-x:auto;color:#ccc}@media (max-width: 900px){.stream-demo{padding:20px}.stream-demo-grid{grid-template-columns:1fr}}.btn{padding:12px 24px;border:none;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-block;text-align:center;text-decoration:none;line-height:1}.btn-primary{background:var(--color-accent-gradient);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #c80f3966}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background-color:var(--color-bg-shape);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-shape-dim)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background-color:var(--color-accent-light);color:#fff;border:1px solid var(--color-error)}.btn-danger:hover:not(:disabled){background-color:var(--color-accent)}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background-color:#2a2;transform:translateY(-1px)}.btn-success:disabled{opacity:.6;cursor:not-allowed}.btn-warning{background-color:var(--color-warning);color:#1a1033}.btn-warning:hover:not(:disabled){background-color:#e0a800}.btn-warning:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:6px 16px;font-size:13px}.btn-lg{padding:16px 32px;font-size:16px}.btn-icon{padding:10px 12px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-shape);cursor:pointer;font-size:16px;transition:all .2s}.btn-icon:hover:not(:disabled){background-color:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn-icon:disabled{opacity:.3;cursor:not-allowed}.form-group{margin-bottom:24px}.form-group label,.form-label{display:block;margin-bottom:8px;font-weight:600;color:var(--color-text-heading);font-size:14px;text-align:center}.form-label.required:after{content:" *";color:var(--color-accent)}.required{color:var(--color-accent)}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;font-family:inherit;background-color:var(--color-bg-shape);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background-color:var(--color-bg-shape-dim);cursor:not-allowed;opacity:.6}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-select{cursor:pointer}.form-select option{background-color:var(--color-bg-card);color:var(--color-text-primary)}.form-textarea{resize:vertical;min-height:100px}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-error)}.form-checkbox{display:flex;align-items:center;gap:8px}.form-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent)}.form-checkbox label{margin:0;font-weight:400;cursor:pointer}.form-hint{display:block;margin-top:4px;font-size:12px;color:var(--color-text-muted);font-style:italic}.field-error{font-size:12px;color:var(--color-error);margin-top:4px}.field-help{color:var(--color-text-muted);font-size:12px;margin-top:5px}.required{color:var(--color-error)}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:30px;padding-top:20px;border-top:1px solid var(--color-border)}.form-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--color-border)}.form-section:last-of-type{border-bottom:none;padding-bottom:0;margin-bottom:0}.form-section-title{font-size:20px;font-weight:600;color:var(--color-text-heading);margin:0 0 24px}.form-section-description{font-size:14px;color:var(--color-text-muted);margin:-16px 0 24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.search-input{padding:10px 16px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;min-width:250px;background-color:var(--color-bg-shape);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.search-input::placeholder{color:var(--color-text-muted)}.search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.filter-select{flex:1;min-width:150px;padding:10px 16px;border:1px solid var(--color-border);border-radius:4px;font-size:14px;background:var(--color-bg-shape);color:var(--color-text-primary);cursor:pointer}.filter-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-bg)}.filter-select option{background-color:var(--color-bg-card);color:var(--color-text-primary)}.card{background:var(--color-bg-card);border-radius:8px;padding:20px;box-shadow:0 2px 8px #0000004d;border:1px solid var(--color-border);transition:all .2s}.card:hover{box-shadow:0 4px 16px #00000080;transform:translateY(-2px)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border)}.card-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-heading)}.card-body{margin-bottom:16px}.card-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--color-border)}.option-card{display:flex;flex-direction:column;padding:16px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease;background:var(--color-bg-shape);text-align:left}.option-card:hover:not(.disabled):not(:disabled){border-color:var(--color-accent);box-shadow:0 2px 8px #c80f3933}.option-card.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.option-card.disabled,.option-card:disabled{opacity:.6;cursor:not-allowed}.option-card-title{font-weight:600;font-size:14px;color:var(--color-text-primary);margin-bottom:4px}.option-card-description{font-size:12px;color:var(--color-text-muted);line-height:1.4}.option-card-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.option-card-header input[type=radio]{margin:0;width:16px;height:16px;accent-color:var(--color-accent)}.option-card-icon{font-size:24px;margin-bottom:8px}.option-card-content{flex:1}.option-card-recommendation{display:block;font-size:11px;color:var(--color-text-muted);margin-top:8px;font-style:italic}.option-card-sm{padding:10px 12px}.option-card-sm .option-card-title{font-size:13px;margin-bottom:2px}.option-card-sm .option-card-description{font-size:11px}.option-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;width:100%}.option-card-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.option-card-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 768px){.option-card-grid,.option-card-grid-2,.option-card-grid-3{grid-template-columns:1fr}}.badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;white-space:nowrap}.badge-admin{background-color:var(--color-accent-bg);color:var(--color-accent)}.badge-staff{background-color:#9333cc33;color:#b366e0}.badge-moderator{background-color:var(--color-warning-bg);color:var(--color-warning)}.badge-participant{background-color:var(--color-success-bg);color:var(--color-success)}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-draft{background-color:var(--color-bg-shape-dim);color:var(--color-text-muted)}.status-upcoming{background-color:#5ea0f733;color:var(--color-text-heading)}.status-ongoing{background-color:var(--color-warning-bg);color:var(--color-warning)}.status-completed{background-color:var(--color-success-bg);color:var(--color-success)}.status-cancelled{background-color:var(--color-error-bg);color:var(--color-error)}.status-scheduled,.status-registration-open{background-color:#5ea0f733;color:var(--color-text-heading)}.status-registration-closed,.status-in-progress{background-color:var(--color-warning-bg);color:var(--color-warning)}.status-forfeited{background-color:var(--color-error-bg);color:var(--color-error)}.status-active{background-color:var(--color-success-bg);color:var(--color-success)}.status-inactive{background-color:var(--color-error-bg);color:var(--color-error)}.status-banned{background-color:var(--color-accent-bg);color:var(--color-accent)}.stats-row{display:flex;gap:24px;align-items:center}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px}.stat-item{text-align:center}.stat-value{display:block;font-size:24px;font-weight:700;color:var(--color-text-heading)}.stat-value-lg{font-size:36px}.stat-label{font-size:12px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.stat-card{padding:20px;background-color:var(--color-bg-shape);border-radius:8px;text-align:center;border:1px solid var(--color-border)}.stat-card .stat-value{color:var(--color-accent);margin-bottom:8px}.info-row{display:flex;gap:24px;margin-bottom:8px;font-size:14px;flex-wrap:wrap}.info-item{display:flex;gap:8px;align-items:center}.info-label{font-weight:500;color:var(--color-text-muted)}.info-value{color:var(--color-text-primary);font-weight:600}.info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;padding:20px;background:var(--color-bg-card);border-radius:8px;border:1px solid var(--color-border)}.info-grid .info-item{flex-direction:column;align-items:flex-start;gap:4px}.info-grid .info-label{font-size:12px;text-transform:uppercase;letter-spacing:.5px}.progress-container{background:var(--color-bg-shape);border:1px solid var(--color-border);border-radius:6px;padding:16px}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-label{font-size:14px;font-weight:600;color:var(--color-text-primary)}.progress-value{font-size:14px;color:var(--color-text-muted)}.progress-bar{height:8px;background:var(--color-bg-shape-dim);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--color-accent);border-radius:4px;transition:width .3s ease}.progress-fill-success{background:var(--color-success)}.progress-fill-warning{background:var(--color-warning)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:var(--color-bg-card);border-radius:8px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;border:1px solid var(--color-border);box-shadow:0 10px 40px #00000080}.modal-content.modal-full-width{width:95%;max-width:1400px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid var(--color-border)}.modal-header h2{margin:0;font-size:24px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.modal-close{background:none;border:none;font-size:32px;color:var(--color-text-muted);cursor:pointer;padding:0;width:32px;height:32px;line-height:1;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:var(--color-bg-shape);color:var(--color-text-primary)}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-actions{display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;border-top:1px solid var(--color-border)}.modal-tabs{display:flex;border-bottom:1px solid var(--color-border);background-color:var(--color-bg-shape)}.modal-tabs .tab{flex:1;padding:14px 20px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text-muted);transition:all .2s;border-bottom:3px solid transparent}.modal-tabs .tab:hover{background-color:var(--color-bg-shape-dim);color:var(--color-text-primary)}.modal-tabs .tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background-color:var(--color-bg-card)}.tabs{display:flex;border-bottom:2px solid var(--color-border);background-color:var(--color-bg-shape)}.tab{padding:12px 24px;background:none;border:none;font-size:16px;font-weight:500;color:var(--color-text-muted);cursor:pointer;transition:all .2s;border-bottom:3px solid transparent;margin-bottom:-2px}.tab:hover{color:var(--color-accent);background-color:var(--color-bg-shape-dim)}.tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background-color:var(--color-bg-card)}.tab-content{padding:24px}.table-container{overflow-x:auto;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 8px #0000004d}.table{width:100%;border-collapse:collapse}.table thead{background:var(--color-bg-shape);border-bottom:2px solid var(--color-border)}.table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--color-text-muted);font-size:13px;text-transform:uppercase;letter-spacing:.5px}.table tbody tr{border-bottom:1px solid var(--color-border);transition:background-color .2s}.table tbody tr:hover{background:var(--color-bg-shape)}.table tbody tr:last-child{border-bottom:none}.table td{padding:12px 16px;vertical-align:middle;color:var(--color-text-primary);font-size:14px}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:24px;padding:20px}.pagination-info{color:var(--color-text-muted);font-size:14px}.error-message{padding:12px;background-color:var(--color-error-bg);border:1px solid var(--color-error);border-radius:4px;color:var(--color-error);font-size:14px;margin-bottom:20px}.success-message{padding:12px;background-color:var(--color-success-bg);border:1px solid var(--color-success);border-radius:4px;color:var(--color-success);font-size:14px;margin-bottom:20px}.warning-message{padding:12px;background-color:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:4px;color:var(--color-warning);font-size:14px;margin-bottom:20px}.info-message{padding:12px;background-color:#5ea0f726;border:1px solid var(--color-text-heading);border-radius:4px;color:var(--color-text-heading);font-size:14px;margin-bottom:20px}.page-header{margin-bottom:30px}.page-header h1{margin:0 0 8px;font-size:32px;background:var(--color-heading-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-subtitle{margin:0;color:var(--color-text-muted);font-size:14px}.section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;padding:30px;box-shadow:0 2px 8px #0000004d;margin-bottom:24px}.section-header{margin-bottom:24px}.section-header h2{margin:0 0 8px;font-size:24px;color:var(--color-text-heading)}.section-description{margin:0;color:var(--color-text-muted);font-size:14px}@media (max-width: 768px){.form-actions{flex-direction:column-reverse}.form-actions button,.form-actions a{width:100%}.modal-content{width:95%;max-height:100vh;border-radius:0}.card-actions{flex-direction:column}.card-actions button,.card-actions a{width:100%}.table-container{overflow-x:auto}.pagination{flex-direction:column;gap:12px}.tabs{overflow-x:auto}.tab{flex:0 0 auto;min-width:100px}}.container{max-width:1400px;margin:0 auto;padding:40px 20px}.container-sm{max-width:800px;margin:0 auto;padding:40px 20px}.container-lg{max-width:1600px;margin:0 auto;padding:40px 20px}.container-xs{max-width:600px;margin:0 auto;padding:40px 20px}.container-form{max-width:800px;margin:0 auto;padding:40px 20px}.container-form-lg{max-width:900px;margin:0 auto;padding:40px 20px}.flex{display:flex}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-1{flex:1}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.gap-24{gap:24px}.gap-32{gap:32px}.m-0{margin:0}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-20{margin-bottom:20px}.mb-24{margin-bottom:24px}.mb-30{margin-bottom:30px}.mb-32{margin-bottom:32px}.p-0{padding:0}.p-8{padding:8px}.p-12{padding:12px}.p-16{padding:16px}.p-20{padding:20px}.p-24{padding:24px}.p-32{padding:32px}.text-xs{font-size:12px}.text-sm{font-size:13px}.text-base{font-size:14px}.text-lg{font-size:16px}.text-xl{font-size:18px}.text-2xl{font-size:24px}.text-3xl{font-size:32px}.text-primary{color:var(--color-text-primary)}.text-muted{color:var(--color-text-muted)}.text-heading{color:var(--color-text-heading)}.text-accent{color:var(--color-accent)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-warning{color:var(--color-warning)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.loading{text-align:center;padding:60px 20px;color:var(--color-text-muted);font-size:16px}.loading-sm{text-align:center;padding:40px 20px;color:var(--color-text-muted);font-size:14px}.empty-state{text-align:center;padding:60px 20px;color:var(--color-text-muted)}.empty-state p{margin-bottom:20px;font-size:16px}.no-data{text-align:center;padding:60px 20px;color:var(--color-text-muted);background:var(--color-bg-card);border-radius:8px;box-shadow:0 2px 8px #0000004d;border:1px solid var(--color-border)}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.border{border:1px solid var(--color-border)}.border-t{border-top:1px solid var(--color-border)}.border-b{border-bottom:1px solid var(--color-border)}.border-l{border-left:1px solid var(--color-border)}.border-r{border-right:1px solid var(--color-border)}.rounded{border-radius:4px}.rounded-md{border-radius:6px}.rounded-lg{border-radius:8px}.rounded-full{border-radius:9999px}.bg-card{background-color:var(--color-bg-card)}.bg-shape{background-color:var(--color-bg-shape)}.bg-shape-dim{background-color:var(--color-bg-shape-dim)}.bg-primary{background-color:var(--color-bg-primary)}.bg-secondary{background-color:var(--color-bg-secondary)}.shadow-sm{box-shadow:0 1px 2px #0000004d}.shadow{box-shadow:0 2px 8px #0000004d}.shadow-md{box-shadow:0 4px 12px #0006}.shadow-lg{box-shadow:0 10px 40px #00000080}.filters{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:13px;color:var(--color-text-muted);font-weight:500}.link{color:var(--color-accent);text-decoration:none;transition:color .2s}.link:hover{text-decoration:underline;opacity:.8}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.transition{transition:all .2s}.transition-colors{transition:background-color .2s,color .2s,border-color .2s}@media (max-width: 768px){.container,.container-sm,.container-lg,.container-xs,.container-form,.container-form-lg{padding:20px}.grid-auto-fill,.grid-auto-fit,.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.md\:hidden{display:none}.md\:flex-column{flex-direction:column}}@media (min-width: 769px){.md\:block{display:block}.md\:flex{display:flex}.md\:grid{display:grid}}:root{--color-accent: #cc3357;--color-accent-dim: #e54c70;--color-accent-light: #b2193d;--color-accent-bg: #3d0f1a;--color-accent-gradient: linear-gradient(143deg, #c80f39 10%, #cf5674 90%);--color-bg-primary: #0D0326;--color-bg-secondary: #1a1033;--color-bg-card: #0D0326;--color-bg-shape: #2c2245;--color-bg-shape-dim: #33274f;--color-bg-shape-light: #251d3b;--color-text-primary: #E0D6DE;--color-text-muted: rgba(224, 214, 222, .5);--color-text-heading: #5fa0f7;--color-heading-gradient: linear-gradient(143deg, #4350ef 10%, #7AF0FF 90%);--color-border: #453b5e;--color-border-light: rgba(255, 255, 255, .2);--color-success: #3c3;--color-success-bg: rgba(60, 204, 60, .15);--color-error: #ff4d6a;--color-error-bg: rgba(255, 77, 106, .15);--color-warning: #ffc107;--color-warning-bg: rgba(255, 193, 7, .15);--color-placement-1: #d97706;--color-placement-2: #6b7280;--color-placement-3: #c2410c;font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:var(--color-text-primary);background-color:var(--color-bg-secondary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root,.app{width:100%;min-height:100vh}
