.box-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #00000026;overflow:hidden;border:1px solid #e5e7eb}.box-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#f1f5f9;border-bottom:2px solid #e2e8f0}.box-title-section{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.box-header h2{margin:0;font-size:1.35rem;font-weight:700;color:#0f172a}.match-completion{display:flex;align-items:center;gap:.375rem;font-size:.85rem}.completion-label{color:#475569;font-weight:500}.completion-stats{color:#1e293b;font-weight:700}.completion-percentage{font-weight:700}.completion-percentage.high{color:#15803d}.completion-percentage.medium{color:#a16207}.completion-percentage.low{color:#b91c1c}.box-actions{display:flex;gap:.5rem}.players-table{padding:0}.box-container .players-table .table-header{display:grid;grid-template-columns:40px 1fr 70px 60px 70px 60px 100px;padding:.75rem 1rem;font-size:.75rem;font-weight:800;color:#000;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #94a3b8;background:#cbd5e1}.box-container .players-table .table-header span{color:#000;font-weight:800}.table-header .col-stat,.table-header .col-rank,.table-header .col-actions{text-align:center}.player-row{display:grid;grid-template-columns:40px 1fr 70px 60px 70px 60px 100px;padding:.875rem 1rem;align-items:center;border-bottom:1px solid #f1f5f9;transition:background-color .15s ease}.player-row:last-child{border-bottom:none}.player-row:hover{background:#f8fafc}.player-row.position-top{background:#22c55e1a;border-left:4px solid #22c55e}.player-row.position-top:hover{background:#22c55e26}.player-row.position-bottom{background:#ef44441a;border-left:4px solid #ef4444}.player-row.position-bottom:hover{background:#ef444426}.player-row.position-middle{border-left:4px solid transparent}.player-row .col-rank{font-weight:700;color:#475569;text-align:center;font-size:1rem}.player-row .col-name{font-weight:600;color:#0f172a;font-size:1rem}.player-row .col-name.clickable-name{cursor:pointer;transition:color .15s ease}.player-row .col-name.clickable-name:hover{color:#2563eb;text-decoration:underline}.player-row .col-stat{text-align:center;color:#1e293b;font-weight:600;font-size:.95rem}.player-row .col-stat.points-highlight{font-weight:800;color:#1d4ed8;font-size:1.1rem}.player-row .col-actions{display:flex;justify-content:center;gap:.5rem}.btn-small{padding:.375rem .75rem;font-size:.85rem;border-radius:6px;border:none;cursor:pointer;font-weight:600;transition:all .2s ease}.btn-small.btn-primary{background:#3b82f6;color:#fff}.btn-small.btn-primary:hover{background:#2563eb}.btn-small.btn-secondary{background:#e2e8f0;color:#334155}.btn-small.btn-secondary:hover{background:#cbd5e1}.btn-icon{width:34px;height:34px;border-radius:6px;border:none;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#475569;transition:all .15s ease}.btn-icon:hover{background:#e2e8f0;color:#1e293b}.btn-icon.btn-record{background:#dbeafe;font-size:1.4rem;font-weight:700;color:#2563eb}.btn-icon.btn-record:hover{background:#bfdbfe;transform:scale(1.05)}.btn-icon.btn-danger{background:#fee2e2;color:#dc2626}.btn-icon.btn-danger:hover{background:#fecaca;color:#b91c1c}.empty-slots{padding:1.25rem;text-align:center;color:#64748b;font-size:.9rem;font-style:italic;background:#f8fafc}.box-footer{padding:.75rem 1rem;background:#f8fafc;border-top:1px solid #e2e8f0}.promotion-info{display:flex;gap:1.5rem;justify-content:center}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#475569;font-weight:500}.legend-top{background:#22c55e}.legend-bottom{background:#ef4444}@media(max-width:900px){.box-container .players-table .table-header,.player-row{grid-template-columns:35px 1fr 55px 50px 60px 50px 85px;padding:.625rem .75rem}.box-container .players-table .table-header{font-size:.65rem}.box-container .players-table .table-header span{color:#000}.player-row .col-name{font-size:.9rem}.player-row .col-stat{font-size:.85rem}.btn-icon{width:30px;height:30px;font-size:1rem}}@media(max-width:700px){.box-container .players-table .table-header,.player-row{grid-template-columns:28px 1fr 42px 42px 50px 42px 65px;gap:.125rem;padding:.5rem .625rem}.box-container .players-table .table-header span{color:#000}.box-header{flex-direction:column;align-items:flex-start;gap:.75rem}.box-title-section{flex-direction:column;align-items:flex-start;gap:.375rem}.box-header h2{font-size:1.15rem}.player-row .col-name{font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-row .col-stat{font-size:.75rem}.player-row .col-stat.points-highlight{font-size:.85rem}.btn-icon{width:28px;height:28px;font-size:.95rem}.btn-icon.btn-record{font-size:1.3rem}.promotion-info{flex-direction:column;gap:.5rem;align-items:center}}@media(max-width:500px){.box-container .players-table .table-header{display:none}.player-row{grid-template-columns:24px 1fr 50px 50px;gap:.375rem;padding:.625rem .5rem}.player-row .col-rank{font-size:.85rem}.player-row .col-name{font-size:.8rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-row .col-stat:not(.points-highlight){display:none}.player-row .col-stat.points-highlight{font-size:.9rem;text-align:center}.player-row .col-actions{display:flex;justify-content:flex-end;gap:.25rem}.btn-icon{width:32px;height:32px;font-size:1.1rem}.btn-icon.btn-record{font-size:1.5rem}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.match-modal{max-width:600px}.admin-login-modal{max-width:450px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;color:#333;font-size:1.3rem}.modal-close{background:none;border:none;font-size:2rem;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;line-height:1;transition:color .2s}.modal-close:hover{color:#333}.modal-body{padding:20px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px;border-top:1px solid #e0e0e0}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#555;font-weight:500}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#4caf50}.error-message{margin-top:8px;color:#f44336;font-size:.9rem}.info-message{padding:12px;background-color:#e3f2fd;border-left:4px solid #2196F3;border-radius:4px;color:#1976d2;font-size:.9rem}.vs-divider{text-align:center;font-weight:700;font-size:1.2rem;color:#666;margin:16px 0}.winner-selection{margin-top:24px}.winner-buttons{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.winner-btn{padding:16px 20px;border:2px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;font-size:1rem;font-weight:500;transition:all .2s;color:#333}.winner-btn:hover{border-color:#4caf50;background-color:#f1f8f4}.winner-btn.selected{border-color:#4caf50;background-color:#4caf50;color:#fff}.btn-primary:hover{background-color:#45a049}.btn-secondary{background-color:#f0f0f0;color:#333}.btn-secondary:hover{background-color:#e0e0e0}.score-section{margin-top:24px;padding:20px;background:#f8f9fa;border-radius:8px}.score-section h4{margin:0 0 16px;color:#333;font-size:1.1rem}.score-inputs{display:flex;align-items:center;gap:20px;margin-bottom:20px}.player-score{flex:1;text-align:center}.player-score label{display:block;font-weight:600;margin-bottom:8px;color:#333}.score-input{width:80px;height:60px;font-size:2rem;text-align:center;border:2px solid #ddd;border-radius:8px;font-weight:700;transition:border-color .2s}.score-input:focus{outline:none;border-color:#4caf50}.games-label{display:block;margin-top:4px;font-size:.85rem;color:#666}.score-divider{font-size:2rem;font-weight:700;color:#999}.quick-scores{margin-top:16px}.quick-scores label{display:block;margin-bottom:8px;font-weight:500;color:#555}.quick-score-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick-score-btn{padding:10px;border:2px solid #ddd;border-radius:6px;background:#fff;cursor:pointer;font-weight:600;transition:all .2s}.quick-score-btn:hover{border-color:#4caf50;background:#f1f8f4}.quick-score-btn.active{border-color:#4caf50;background:#4caf50;color:#fff}.points-preview{margin-top:20px;padding:16px;background:#fff;border-radius:6px;border:1px solid #e0e0e0}.points-preview h5{margin:0 0 12px;color:#333;font-size:1rem}.points-breakdown{display:flex;flex-direction:column;gap:8px}.points-breakdown>div{padding:8px 12px;border-radius:4px;background:#f8f9fa}.winner-points{background:#e8f5e9!important;border-left:4px solid #4CAF50;font-weight:600}.breakdown-detail{display:block;font-size:.85rem;color:#666;font-weight:400;margin-top:4px}@media(max-width:576px){.modal-content{max-width:100%;margin:0}.modal-header h3{font-size:1.1rem}.winner-buttons{grid-template-columns:1fr}.score-inputs{flex-direction:column;gap:12px}.score-divider{transform:rotate(90deg)}.quick-score-buttons{grid-template-columns:repeat(2,1fr)}.match-history-modal{max-width:650px}.player-stats-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.stat-card{background:#f8f9fa;padding:16px;border-radius:8px;text-align:center;border:2px solid transparent;transition:all .2s}.stat-card.highlight{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#4caf50}.stat-label{font-size:.85rem;color:#666;margin-bottom:8px;font-weight:500}.stat-value{font-size:1.8rem;font-weight:700;color:#333;line-height:1}.stat-value.points{color:#4caf50;font-size:2.2rem}.stat-subtext{font-size:.75rem;color:#888;margin-top:4px}.points-breakdown-card{background:#f8f9fa;padding:16px;border-radius:8px;margin-bottom:24px}.points-breakdown-card h4{margin:0 0 12px;font-size:1rem;color:#333}.breakdown-items{display:flex;flex-direction:column;gap:8px}.breakdown-item{display:flex;justify-content:space-between;padding:8px 12px;background:#fff;border-radius:4px}.breakdown-total{display:flex;justify-content:space-between;padding:12px;background:#4caf50;color:#fff;border-radius:4px;font-weight:600;margin-top:8px}.match-history-section h4{margin:0 0 16px;font-size:1.1rem;color:#333}.matches-list{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding-right:8px}.match-item{background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:12px;transition:all .2s}.match-item:hover{box-shadow:0 2px 8px #0000001a}.match-item.match-win{border-left:4px solid #4CAF50;background:#f1f8f4}.match-item.match-loss{border-left:4px solid #f44336;background:#fff5f5}.match-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.match-result{font-weight:700;font-size:.85rem;padding:4px 8px;border-radius:4px}.match-result.win{background:#4caf50;color:#fff}.match-result.loss{background:#f44336;color:#fff}.match-date{font-size:.85rem;color:#666}.match-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.match-opponent{font-weight:500;color:#333}.match-score{display:flex;align-items:center;gap:8px;font-size:1.2rem;font-weight:700}.winner-score{color:#4caf50}.score-divider{color:#999;font-weight:400}.match-points{text-align:right;font-size:.9rem;color:#4caf50;font-weight:600}.no-matches{text-align:center;padding:40px 20px;color:#999;font-style:italic}@media(max-width:768px){.player-stats-summary{grid-template-columns:repeat(2,1fr)}.stat-value{font-size:1.5rem}.stat-value.points{font-size:1.8rem}}@media(max-width:480px){.match-history-modal{max-width:100%}.player-stats-summary{grid-template-columns:1fr}.match-details{flex-direction:column;align-items:flex-start;gap:8px}}}.match-history-modal{max-width:600px;max-height:90vh;display:flex;flex-direction:column}.match-history-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px 12px 0 0;display:flex;justify-content:space-between;align-items:center}.player-info{display:flex;align-items:center;gap:1rem}.player-info h2{margin:0;font-size:1.5rem;font-weight:600}.box-badge{background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:500}.btn-close{background:#fff3;border:none;color:#fff;font-size:1.75rem;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.btn-close:hover{background:#ffffff4d;transform:rotate(90deg)}.stats-summary{display:flex;gap:.5rem;padding:1.5rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.stat-card{flex:1;text-align:center;padding:1rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000000d;transition:all .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.stat-value{font-size:1.5rem;font-weight:700;color:#2c3e50;margin-bottom:.25rem}.stat-label{font-size:.75rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-wins{border-top:3px solid #28a745}.stat-wins .stat-value{color:#28a745}.stat-losses{border-top:3px solid #dc3545}.stat-losses .stat-value{color:#dc3545}.stat-points{border-top:3px solid #667eea}.stat-points .stat-value{color:#667eea}.match-list{flex:1;overflow-y:auto;padding:1.5rem}.section-title{font-size:1rem;font-weight:600;color:#495057;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.5px}.empty-matches{text-align:center;padding:3rem 1.5rem;color:#6c757d}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-matches p{font-size:1.125rem;font-weight:500;margin-bottom:.5rem;color:#495057}.empty-matches small{color:#6c757d}.opponent-group{margin-bottom:1.5rem}.opponent-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8f9fa;border-radius:8px 8px 0 0;border-bottom:2px solid #e9ecef}.opponent-name{font-weight:600;color:#2c3e50;font-size:.95rem}.opponent-record{font-size:.875rem;color:#6c757d;font-weight:500}.match-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fff;border-left:4px solid transparent;border-bottom:1px solid #e9ecef;transition:all .2s}.match-item:hover{background:#f8f9fa;padding-left:1.25rem}.match-item:last-child{border-radius:0 0 8px 8px;border-bottom:none}.match-win{border-left-color:#28a745}.match-loss{border-left-color:#dc3545}.match-date{font-size:.875rem;color:#6c757d;min-width:120px}.match-result{display:flex;align-items:center;gap:.75rem;flex:1;justify-content:center}.result-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-weight:700;font-size:.75rem;color:#fff}.result-badge.win{background:#28a745}.result-badge.loss{background:#dc3545}.score{font-size:1.125rem;font-weight:600;color:#2c3e50;min-width:60px;text-align:center}.match-points{font-size:.875rem;font-weight:600;color:#667eea;min-width:60px;text-align:right}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e9ecef;background:#f8f9fa;border-radius:0 0 12px 12px}@media(max-width:768px){.match-history-modal{max-width:95vw;margin:1rem}.stats-summary{flex-wrap:wrap}.stat-card{flex:1 1 calc(33.333% - .5rem);min-width:80px}.match-item{flex-wrap:wrap;gap:.5rem}.match-date,.match-points{min-width:auto}.player-info h2,.stat-value{font-size:1.25rem}}.match-list::-webkit-scrollbar{width:8px}.match-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.match-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.match-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}.waitlist-modal{max-width:500px;width:95%;padding:0}.waitlist-modal .modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:0;display:flex;justify-content:space-between;align-items:center}.waitlist-modal .modal-header h2{margin:0;font-size:1.25rem}.waitlist-modal .modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:0;line-height:1;transition:color .2s}.waitlist-modal .modal-close:hover{color:#1f2937}.waitlist-modal form{padding:1.5rem}.waitlist-modal .form-group{margin-bottom:1.25rem}.waitlist-modal .form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#374151}.waitlist-modal input[type=text],.waitlist-modal textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;transition:border-color .2s,box-shadow .2s}.waitlist-modal input[type=text]:focus,.waitlist-modal textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.waitlist-modal textarea{resize:vertical;min-height:80px}.action-options{display:flex;flex-direction:column;gap:.75rem}.action-option{display:block;cursor:pointer}.action-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.action-option-content{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;border:2px solid #e5e7eb;border-radius:10px;background:#fff;transition:all .2s ease}.action-option:hover .action-option-content{border-color:#93c5fd;background:#f0f7ff}.action-option.selected .action-option-content{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 3px #3b82f61a}.action-icon{font-size:1.5rem;flex-shrink:0}.action-text{display:flex;flex-direction:column;gap:.125rem}.action-label{font-weight:600;color:#1f2937;font-size:.95rem}.action-description{font-size:.8rem;color:#6b7280}.action-option.selected input[value=join-current]~.action-option-content,.action-option.selected input[value=join-next]~.action-option-content{border-color:#22c55e;background:#f0fdf4}.action-option.selected input[value=join-current]~.action-option-content .action-label,.action-option.selected input[value=join-next]~.action-option-content .action-label{color:#166534}.action-option.selected input[value=leave-current]~.action-option-content,.action-option.selected input[value=leave-next]~.action-option-content{border-color:#f97316;background:#fff7ed}.action-option.selected input[value=leave-current]~.action-option-content .action-label,.action-option.selected input[value=leave-next]~.action-option-content .action-label{color:#c2410c}.waitlist-modal .modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #e5e7eb}.success-container{padding:2rem 1.5rem;text-align:center}.success-icon{font-size:3rem;margin-bottom:1rem;animation:pop-in .3s ease-out}@keyframes pop-in{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.success-title{margin:0 0 .5rem;font-size:1.35rem;color:#166534}.success-message{color:#4b5563;margin:0 0 1.25rem}.success-details{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;padding:1rem;margin-bottom:1rem;text-align:left}.success-detail-row{display:flex;padding:.375rem 0;border-bottom:1px solid #dcfce7}.success-detail-row:last-child{border-bottom:none}.detail-label{font-weight:600;color:#166534;width:80px;flex-shrink:0}.detail-value{color:#15803d}.success-note{font-size:.875rem;color:#6b7280;margin:0 0 1.5rem;font-style:italic}.success-actions{display:flex;gap:.75rem;justify-content:center}@media(max-width:480px){.waitlist-modal{margin:.5rem;width:calc(100% - 1rem)}.waitlist-modal .modal-header{padding:1rem 1.25rem}.waitlist-modal form{padding:1.25rem}.action-option-content{padding:.75rem}.action-icon{font-size:1.25rem}.action-label{font-size:.875rem}.action-description{font-size:.75rem}.success-container{padding:1.5rem 1.25rem}.success-icon{font-size:2.5rem}.success-title{font-size:1.2rem}.success-details{padding:.75rem}.success-detail-row{flex-direction:column;gap:.125rem}.detail-label{width:auto;font-size:.75rem}.success-actions{flex-direction:column}.success-actions .btn{width:100%}}.admin-waitlist-section{margin-top:2rem;padding:1.5rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0}.admin-waitlist-section h3{margin:0;font-size:1.25rem;color:#1e293b}.empty-message{color:#64748b;font-style:italic;margin-top:.5rem}.waitlist-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.waitlist-actions{display:flex;gap:.5rem}.requests-container{display:flex;flex-direction:column;gap:1.5rem}.request-section{padding:1rem;border-radius:10px;background:#fff;border:1px solid #e2e8f0}.section-title{margin:0 0 .75rem;font-size:1rem;font-weight:600;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.section-join-current{border-left:4px solid #22c55e}.section-join-current .section-title{color:#166534;border-bottom-color:#bbf7d0}.section-join-next{border-left:4px solid #3b82f6}.section-join-next .section-title{color:#1d4ed8;border-bottom-color:#bfdbfe}.section-leave-current{border-left:4px solid #f97316}.section-leave-current .section-title{color:#c2410c;border-bottom-color:#fed7aa}.section-leave-next{border-left:4px solid #eab308}.section-leave-next .section-title{color:#a16207;border-bottom-color:#fef08a}.section-legacy{border-left:4px solid #94a3b8}.section-legacy .section-title{color:#475569;border-bottom-color:#cbd5e1}.request-list{display:flex;flex-direction:column;gap:.75rem}.request-card{padding:.875rem;background:#fafafa;border-radius:8px;border:1px solid #e5e7eb}.request-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem}.request-name{font-weight:600;color:#1f2937;font-size:1rem}.request-action-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:6px;font-weight:500}.request-action-badge.action-join-current{background:#dcfce7;color:#166534}.request-action-badge.action-join-next{background:#dbeafe;color:#1d4ed8}.request-action-badge.action-leave-current{background:#ffedd5;color:#c2410c}.request-action-badge.action-leave-next{background:#fef9c3;color:#a16207}.request-action-badge.action-legacy{background:#f1f5f9;color:#475569}.request-notes{margin-top:.5rem;font-size:.875rem;color:#4b5563;padding:.5rem;background:#f3f4f6;border-radius:6px}.notes-label{font-weight:600;color:#6b7280}.request-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.5rem;border-top:1px solid #e5e7eb}.request-date{font-size:.75rem;color:#9ca3af}.btn-small{padding:.375rem .75rem;font-size:.8rem;border-radius:6px;border:none;cursor:pointer;font-weight:500;transition:all .2s}.btn-danger{background:#fee2e2;color:#dc2626}.btn-danger:hover{background:#fecaca}@media(max-width:600px){.waitlist-header{flex-direction:column;align-items:flex-start}.waitlist-actions{width:100%;justify-content:flex-start}.request-header{flex-direction:column;align-items:flex-start}.request-footer{flex-direction:column;gap:.5rem;align-items:flex-start}}*{box-sizing:border-box}.app{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2);padding-bottom:40px}.app-header{background:#fff;padding:24px 32px;box-shadow:0 2px 8px #0000001a;margin-bottom:32px}.header-content{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.app-header h1{margin:0;color:#1f2937;font-size:2rem}.header-info{display:flex;gap:12px;align-items:center}.month-badge{background:#f0f0f0;padding:8px 16px;border-radius:20px;font-weight:500;color:#333}.status-badge{padding:8px 16px;border-radius:20px;font-weight:500;font-size:.9rem}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.inactive{background:#ffebee;color:#c62828}.admin-badge{padding:8px 16px;border-radius:20px;font-weight:500;font-size:.9rem;background:#fff3e0;color:#e65100;border:2px solid #ff9800}.header-actions{display:flex;gap:12px;flex-wrap:wrap}.last-saved{margin-top:12px;font-size:.85rem;color:#666;font-style:italic}.app-main{max-width:1400px;margin:0 auto;padding:0 20px}.instructions{background:#fff;padding:20px 24px;border-radius:8px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a}.instructions h3{margin-top:0;color:#1f2937;font-size:1.2rem}.instructions ul{margin:12px 0 0;padding-left:24px;color:#374151}.instructions li{margin-bottom:8px;line-height:1.5}.boxes-grid{display:grid;gap:24px}.empty-state{background:#fff;padding:60px 20px;border-radius:8px;text-align:center;box-shadow:0 2px 8px #0000001a}.empty-state h2{color:#1f2937;margin-bottom:12px}.empty-state p{color:#4b5563;font-size:1.1rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#64748b}.loading-state p{margin-top:1rem;font-size:1.1rem}.spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:all .2s;font-weight:500}.btn-primary{background-color:#4caf50;color:#fff}.btn-primary:hover:not(:disabled){background-color:#45a049}.btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.btn-secondary{background-color:#2196f3;color:#fff}.btn-secondary:hover{background-color:#1976d2}.btn-save{background-color:#ff9800;color:#fff}.btn-save:hover:not(:disabled){background-color:#f57c00}.btn-save:disabled{background-color:#ccc;cursor:not-allowed}.btn-admin{background-color:#ff9800;color:#fff}.btn-admin:hover{background-color:#f57c00}.btn-logout{background-color:#757575;color:#fff}.btn-logout:hover{background-color:#616161}.btn-waitlist{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:10px 20px;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 2px 4px #3b82f64d}.btn-waitlist:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 8px #3b82f666}.btn-waitlist:active{transform:translateY(0)}.btn-tv{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;border:1px solid #475569;text-decoration:none;display:inline-flex;align-items:center;gap:.375rem}.btn-tv:hover{background:linear-gradient(135deg,#334155,#475569);border-color:#64748b}.btn-small{padding:6px 12px;font-size:.9rem}.removed-players-section{margin-top:3rem;padding:2rem;background:#f9fafb;border-radius:.5rem;border:2px dashed #d1d5db}.removed-players-section h3{margin:0 0 .5rem;color:#374151;font-size:1.25rem;display:flex;align-items:center;gap:.5rem}.removed-players-note{color:#4b5563;font-size:.875rem;margin:0 0 1.5rem}.removed-players-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.removed-player-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;display:flex;flex-direction:column;gap:.75rem;transition:all .2s}.removed-player-card:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.removed-player-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;border-bottom:1px solid #f3f4f6}.removed-player-name{font-weight:600;color:#1f2937;font-size:1rem}.removed-player-box{background:#fee2e2;color:#dc2626;padding:.25rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600}.removed-player-stats{display:flex;flex-direction:column;gap:.5rem;color:#374151;font-size:.875rem}.removed-player-stats span{display:flex;justify-content:space-between}.removed-player-stats span:before{content:"•";margin-right:.5rem;color:#9ca3af}.removed-player-card .btn-small{width:100%;justify-content:center;margin-top:.5rem}@keyframes fadeOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.removed-player-card.removing{animation:fadeOut .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.removed-player-card.restoring{animation:fadeIn .3s ease-out}@media(max-width:768px){.app-header{padding:16px 20px}.app-header h1{font-size:1.5rem}.header-content{flex-direction:column;align-items:flex-start;gap:12px}.header-actions{width:100%}.header-actions button,.header-actions a{flex:1;min-width:auto;text-align:center;justify-content:center}.instructions{padding:16px}.instructions h3{font-size:1.1rem}.instructions ul{font-size:.9rem}.removed-players-section{padding:1.5rem;margin-top:2rem}.removed-players-grid{grid-template-columns:1fr}}@media(max-width:480px){.app-header h1{font-size:1.3rem}.header-actions{flex-direction:column}.header-actions button,.header-actions a{width:100%}}.tv-view{min-height:100vh;background:linear-gradient(135deg,#1e293b,#0f172a);color:#f1f5f9;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.tv-view.fullscreen{position:fixed;inset:0;z-index:9999}.tv-loading{display:flex;flex-direction:column;align-items:center;justify-content:center}.tv-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tv-loading p{margin-top:1.5rem;font-size:1.5rem;color:#94a3b8}.tv-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1)}.tv-title{display:flex;align-items:center;gap:1.5rem}.tv-title h1{margin:0;font-size:1.75rem;font-weight:700;color:#fff}.tv-month{font-size:1.25rem;padding:.375rem 1rem;background:#3b82f6;border-radius:6px;font-weight:600}.tv-controls{display:flex;align-items:center;gap:1rem}.tv-updated{font-size:.9rem;color:#94a3b8}.tv-btn{padding:.5rem 1rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.9rem;cursor:pointer;transition:all .2s;text-decoration:none}.tv-btn:hover{background:#fff3}.tv-btn-back{background:#3b82f64d;border-color:#3b82f6}.tv-main{flex:1;padding:1.5rem 2rem;overflow:auto}.tv-boxes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem;max-width:100%}@media(min-width:1400px){.tv-boxes-grid{grid-template-columns:repeat(4,1fr)}}.tv-box{background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);overflow:hidden}.tv-box-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#3b82f633;border-bottom:1px solid rgba(255,255,255,.1)}.tv-box-number{font-size:1.1rem;font-weight:700;color:#fff}.tv-box-count{font-size:.8rem;color:#94a3b8}.tv-box-content{padding:.5rem}.tv-players-table{width:100%;border-collapse:collapse;font-size:.95rem}.tv-players-table th{text-align:left;padding:.5rem;color:#94a3b8;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid rgba(255,255,255,.1)}.tv-players-table th.col-stat,.tv-players-table th.col-points,.tv-players-table th.col-rank{text-align:center}.tv-players-table td{padding:.6rem .5rem;border-bottom:1px solid rgba(255,255,255,.05)}.tv-players-table tr:last-child td{border-bottom:none}.col-rank{width:36px;text-align:center}.col-name{font-weight:500;color:#fff}.col-stat{text-align:center;color:#cbd5e1;width:50px}.col-points{text-align:center;font-weight:700;font-size:1.1rem;color:#fbbf24;width:50px}.rank-indicator{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;font-weight:700;font-size:.85rem;background:#ffffff1a;color:#94a3b8}.rank-indicator.promote{background:#22c55e4d;color:#4ade80}.rank-indicator.relegate{background:#ef44444d;color:#f87171}.tv-player-row.promote{background:#22c55e14}.tv-player-row.relegate{background:#ef444414}.tv-footer{display:flex;justify-content:space-between;align-items:center;padding:.75rem 2rem;background:#0000004d;border-top:1px solid rgba(255,255,255,.1)}.tv-legend{display:flex;gap:2rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#94a3b8}.legend-color{width:14px;height:14px;border-radius:4px}.legend-color.promote{background:#22c55e}.legend-color.relegate{background:#ef4444}.tv-scoring{font-size:.85rem;color:#64748b}.tv-scoring strong{color:#94a3b8}@media(min-width:2560px){.tv-title h1{font-size:2.5rem}.tv-month{font-size:1.5rem}.tv-boxes-grid{gap:2rem}.tv-box-number{font-size:1.5rem}.tv-players-table{font-size:1.25rem}.tv-players-table th{font-size:.9rem;padding:.75rem}.tv-players-table td{padding:.875rem .75rem}.col-points{font-size:1.4rem}.rank-indicator{width:36px;height:36px;font-size:1.1rem}}@media(min-width:1920px)and (max-width:2559px){.tv-boxes-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1399px){.tv-boxes-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1100px){.tv-boxes-grid{grid-template-columns:repeat(2,1fr)}.tv-header{flex-direction:column;gap:1rem;text-align:center}.tv-title{flex-direction:column;gap:.5rem}.tv-footer{flex-direction:column;gap:.75rem;text-align:center}}@media(max-width:700px){.tv-boxes-grid{grid-template-columns:1fr}.tv-title h1{font-size:1.25rem}.tv-controls{flex-wrap:wrap;justify-content:center}}.tv-view{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.tv-view::-webkit-scrollbar{width:8px;height:8px}.tv-view::-webkit-scrollbar-track{background:transparent}.tv-view::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.tv-view::-webkit-scrollbar-thumb:hover{background:#ffffff4d}*{margin:0;padding:0;box-sizing:border-box}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-height:100vh}#root{min-height:100vh}button{font-family:inherit}button:focus-visible{outline:2px solid #4CAF50;outline-offset:2px}
