:root{--orange: #FF9500;--orange-dark: #E8850A;--orange-gradient: linear-gradient(135deg, #FF9500, #FF6600);--bg: #F2F2F7;--bg-card: #FFFFFF;--bg-grouped: #F2F2F7;--text: #1C1C1E;--text-secondary: #8E8E93;--text-tertiary: #AEAEB2;--border: #E5E5EA;--border-light: #F2F2F7;--success: #34C759;--warning: #FF9F0A;--danger: #FF3B30;--blue: #007AFF;--radius: 12px;--radius-sm: 8px;--radius-xs: 6px;--shadow: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 2px 8px rgba(0,0,0,.08);--transition: .2s ease;--safe-bottom: env(safe-area-inset-bottom, 0px)}@media (prefers-color-scheme: dark){:root{--bg: #000000;--bg-card: #1C1C1E;--bg-grouped: #2C2C2E;--text: #FFFFFF;--text-secondary: #8E8E93;--text-tertiary: #636366;--border: #38383A;--border-light: #2C2C2E;--shadow: none;--shadow-md: none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}.app-container{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}.app-header{background:var(--orange);color:#fff;padding:0 16px;height:52px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;flex-shrink:0}.header-brand{display:flex;align-items:center;gap:10px}.header-logo{height:36px;width:auto;object-fit:contain}.header-title{font-weight:700;font-size:1.05rem;letter-spacing:-.2px}.sync-indicator{display:flex;align-items:center;gap:4px;font-size:.7rem;opacity:.85;font-weight:500}.header-right{display:flex;align-items:center;gap:10px}.header-signin-btn{display:flex;align-items:center;gap:5px;background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:5px 12px;border-radius:20px;font-size:.78rem;font-weight:600;cursor:pointer;transition:background var(--transition)}.header-signin-btn:hover{background:#ffffff4d}.header-user-wrap{position:relative}.header-user-btn{background:none;border:none;cursor:pointer;padding:0}.header-user-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:#ffffff40;color:#fff;font-size:.72rem;font-weight:700;border:2px solid rgba(255,255,255,.5)}.header-user-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:199}.header-user-menu{position:absolute;top:calc(100% + 8px);right:0;width:220px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #00000026;z-index:200;overflow:hidden}.header-user-menu-info{padding:12px 14px;border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:2px}.header-user-menu-name{font-weight:600;font-size:.85rem;color:var(--text)}.header-user-menu-email{font-size:.72rem;color:var(--text-secondary)}.header-user-menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;border:none;background:none;color:var(--text);font-size:.82rem;cursor:pointer;text-align:left;transition:background var(--transition)}.header-user-menu-item:hover{background:var(--bg-grouped)}.header-user-menu-item.sign-out{color:var(--danger);border-top:1px solid var(--border)}.bottom-tabs{display:flex;background:var(--bg-card);border-top:1px solid var(--border);padding:6px 0 calc(6px + var(--safe-bottom));position:sticky;bottom:0;z-index:100;flex-shrink:0}.bottom-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 0;border:none;background:none;font-family:inherit;font-size:.65rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:var(--transition);-webkit-tap-highlight-color:transparent}.bottom-tab.active{color:var(--orange);font-weight:600}.app-main{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:12px;color:var(--text-secondary);font-size:.9rem}.loading-spinner{width:32px;height:32px;border:3px solid var(--border);border-top-color:var(--orange);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.welcome-container{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:20px}.welcome-card{text-align:center}.welcome-logo{width:100px;height:auto;margin-bottom:16px}.welcome-card h1{font-size:1.75rem;font-weight:800;margin-bottom:2px}.welcome-card p{color:var(--text-secondary);font-size:.95rem}.welcome-sub{margin-top:16px;font-size:.85rem;padding:0 20px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius-sm);font-family:inherit;font-size:.875rem;font-weight:600;cursor:pointer;transition:var(--transition);-webkit-tap-highlight-color:transparent}.btn-primary{background:var(--orange);color:#fff}.btn-primary:hover{background:var(--orange-dark)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--border-light);color:var(--text)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{opacity:.9}.btn-large{padding:14px 28px;font-size:1rem}.btn-link{background:none;border:none;color:var(--orange);cursor:pointer;font-size:.8rem;font-weight:600;padding:0}.btn-icon{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;transition:var(--transition)}.btn-icon:hover{background:var(--border-light)}.btn-icon-danger:hover{color:var(--danger)}.form-group{margin-bottom:12px}.form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.form-group input[type=text],.form-group input[type=password],.form-group input[type=email]{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:inherit;font-size:1rem;transition:var(--transition);background:var(--bg-card);color:var(--text)}.form-group input:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 3px #ff950026}.form-row{display:flex;gap:10px;align-items:flex-end}.form-row .form-group{flex:1}.form-group-small{flex:0 0 60px!important}.color-input{width:44px;height:40px;border:1.5px solid var(--border);border-radius:var(--radius-xs);padding:2px;cursor:pointer;background:var(--bg-card)}.auth-container{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:20px}.auth-card{background:var(--bg-card);border-radius:var(--radius);padding:32px 24px;width:100%;max-width:380px;box-shadow:var(--shadow-md);text-align:center}.auth-icon{width:60px;height:60px;background:#ff95001f;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--orange)}.auth-card h2{font-size:1.2rem;margin-bottom:4px}.auth-subtitle{color:var(--text-secondary);font-size:.85rem;margin-bottom:20px}.auth-form{text-align:left}.auth-form .btn{width:100%;justify-content:center;margin-top:8px}.auth-error{color:var(--danger);font-size:.8rem;margin-bottom:8px;text-align:center}.section-card{background:var(--bg-card);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.section-title{display:flex;align-items:center;gap:8px;font-size:1.1rem;font-weight:700;padding:16px 16px 12px;color:var(--text)}.section-title svg{color:var(--orange)}.schedule-container{padding:0}.day-tabs{display:flex;padding:12px 16px;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.day-tabs::-webkit-scrollbar{display:none}.day-tab{flex:1;padding:10px 16px;border:none;border-radius:20px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition);background:var(--bg-card);color:var(--text-secondary);box-shadow:var(--shadow);-webkit-tap-highlight-color:transparent;text-align:center}.day-tab.active{background:var(--orange);color:#fff}.day-tab.day-complete{position:relative}.day-tab-label{display:flex;align-items:center;gap:4px}.day-check-icon{color:var(--success)}.day-tab.active .day-check-icon{color:#fff}.day-tab-sub{display:none}.day-content{padding:0 16px 16px}.day-sports-badge{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-secondary);padding:8px 12px;background:var(--bg-card);border-radius:var(--radius-sm);margin-bottom:12px;box-shadow:var(--shadow)}.session-card{background:var(--bg-card);border-radius:var(--radius);overflow:hidden;margin-bottom:12px;box-shadow:var(--shadow)}.session-header{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:.85rem;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-light)}.session-header svg{color:var(--orange)}.championship-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:var(--orange-gradient);color:#fff;padding:2px 8px;border-radius:10px;margin-left:auto}.session-championship{background:transparent;box-shadow:none;border-radius:0;overflow:visible}.session-championship .session-header{border-bottom:none;padding:10px 0}.championship-games{display:flex;flex-direction:column;gap:14px;padding:4px 0 8px}.champ-card{background:var(--bg-card);border:2px solid var(--orange);border-radius:var(--radius);overflow:hidden}.champ-card-header{background:var(--orange-gradient);color:#fff;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.champ-card-sport{display:flex;align-items:center;gap:5px;padding:10px 14px 0;font-size:.72rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.champ-card-sport svg{width:12px;height:12px;color:var(--text-tertiary)}.champ-matchup{display:flex;align-items:center;padding:12px 14px 16px;gap:12px}.champ-team{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.champ-seed{font-size:.6rem;font-weight:700;color:#fff;background:var(--success);padding:2px 8px;border-radius:10px;letter-spacing:.3px}.champ-team-circle{width:44px;height:44px;border-radius:50%;margin:4px 0;box-shadow:0 0 0 1px #8080804d}.champ-team-name{font-size:1rem;font-weight:700}.champ-team-mascot{font-size:.75rem;color:var(--text-secondary)}.champ-vs{font-size:.85rem;font-weight:800;color:var(--orange);text-transform:uppercase;flex-shrink:0;margin-top:20px}.champ-result-badge{font-size:.65rem;font-weight:700;padding:2px 10px;border-radius:4px;background:var(--success);color:#fff;margin-top:4px}.champ-result-badge.draw{background:var(--warning)}.champ-result-badge.loss{background:var(--text-tertiary)}.champ-team.winner .champ-team-name{color:var(--success)}.champ-card.completed{border-color:var(--success)}.games-list{padding:4px 0}.game-card{padding:10px 14px;border-bottom:1px solid var(--border-light)}.game-card:last-child{border-bottom:none}.game-card.completed{background:#34c7590a}.game-sport{display:flex;align-items:center;gap:4px;font-size:.72rem;color:var(--text-tertiary);margin-bottom:6px;font-weight:500}.game-sport svg{width:12px;height:12px}.game-matchup{display:flex;align-items:center;gap:8px}.team-pill{flex:1;display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--border-light);font-size:.82rem;transition:var(--transition)}.team-pill.winner{background:#34c7591f;font-weight:600}.team-pill.draw{background:#ff9f0a1a}.team-color-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1px #8080804d}.team-name{font-weight:600;font-size:.82rem}.team-mascot{font-size:.72rem;color:var(--text-secondary)}.vs-label{font-size:.72rem;font-weight:700;color:var(--orange);text-transform:uppercase;flex-shrink:0}.result-badge{margin-left:auto;font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;background:var(--success);color:#fff}.draw-badge{background:var(--warning)}.loss-badge{background:var(--text-tertiary)}.standings-container{padding:16px}.standings-table-wrapper{background:var(--bg-card);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.standings-table{width:100%;border-collapse:collapse;font-size:.82rem}.standings-table thead{background:var(--border-light)}.standings-table th{padding:8px 6px;font-size:.7rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.standings-table td{padding:10px 6px}.standings-row{border-bottom:1px solid var(--border-light)}.standings-row:last-child{border-bottom:none}.standings-row.rank-1{background:#ffd7000f}.standings-row.rank-2{background:#c0c0c00f}.standings-row.rank-3{background:#cd7f320a}.col-rank{width:32px;text-align:center}.col-team{text-align:left}.col-stat{width:32px;text-align:center}.col-played{width:28px}.col-bonus{color:var(--orange)}.col-total{font-weight:700}.col-team{display:flex;align-items:center;gap:8px}.col-team .team-color-dot{width:14px;height:14px}.team-info{display:flex;flex-direction:column;gap:0}.team-info .team-name{font-size:.82rem;font-weight:600}.team-info .team-mascot{font-size:.68rem}.rank-gold{color:gold}.rank-silver{color:silver}.rank-bronze{color:#cd7f32}.rank-num{font-weight:700;color:var(--text-secondary);font-size:.8rem}.standings-legend{font-size:.72rem;color:var(--text-secondary);padding:12px 16px;text-align:center;line-height:1.6}.admin-container{padding:0}.admin-header{padding:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.admin-header h2{display:flex;align-items:center;gap:8px;font-size:1.1rem}.admin-header h2 svg{color:var(--orange)}.admin-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-tabs{display:flex;padding:0 16px 12px;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{flex-shrink:0;display:flex;align-items:center;gap:5px;padding:7px 14px;border:none;border-radius:20px;font-family:inherit;font-size:.78rem;font-weight:600;cursor:pointer;background:var(--bg-card);color:var(--text-secondary);transition:var(--transition);box-shadow:var(--shadow);-webkit-tap-highlight-color:transparent}.admin-tab.active{background:var(--orange);color:#fff}.admin-tab.disabled{opacity:.4;cursor:not-allowed}.admin-content{padding:0 16px 16px}.confirm-reset{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:var(--danger)}.tournament-summary{padding:16px 0}.summary-header{text-align:center;margin-bottom:16px}.summary-header h3{font-size:1.1rem}.summary-check{color:var(--success)}.summary-name{color:var(--orange);font-weight:600;font-size:.9rem}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.summary-card{background:var(--bg-card);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}.summary-card-label{font-size:.7rem;font-weight:700;text-transform:uppercase;color:var(--text-secondary);letter-spacing:.5px}.summary-card-value{font-size:1.5rem;font-weight:800;color:var(--orange)}.summary-teams-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.summary-team-chip{display:flex;align-items:center;gap:4px;font-size:.7rem;padding:2px 6px;background:var(--border-light);border-radius:10px}.summary-sports-list{margin-top:6px;font-size:.75rem}.summary-sport-group{margin-bottom:2px}.summary-sport-group-label{font-weight:600;color:var(--text-secondary)}.summary-progress-bar{height:6px;background:var(--border-light);border-radius:3px;margin-top:8px;overflow:hidden}.summary-progress-fill{height:100%;background:var(--orange-gradient);border-radius:3px;transition:width .5s ease}.summary-progress-label{font-size:.7rem;color:var(--text-secondary);margin-top:4px}.setup-hint{font-size:.8rem;color:var(--text-secondary);text-align:center;margin-top:16px;padding:0 12px}.results-container{padding:0}.results-container h3{display:flex;align-items:center;gap:8px;padding:16px 16px 12px;font-size:1rem}.results-container h3 svg{color:var(--orange)}.session-tabs{display:flex;padding:0 16px 12px;gap:4px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.session-tabs::-webkit-scrollbar{display:none}.session-tab{flex-shrink:0;display:flex;align-items:center;gap:4px;padding:6px 12px;border:none;border-radius:16px;font-family:inherit;font-size:.75rem;font-weight:600;cursor:pointer;background:var(--bg-card);color:var(--text-secondary);transition:var(--transition);box-shadow:var(--shadow);-webkit-tap-highlight-color:transparent}.session-tab.active{background:var(--orange);color:#fff}.session-tab.complete{border:1.5px solid var(--success)}.session-tab.disabled{opacity:.4;cursor:not-allowed}.results-session{padding:0 16px 16px}.results-session-header{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem;margin-bottom:10px;padding:8px 0}.results-games{display:flex;flex-direction:column;gap:10px}.result-game-card{background:var(--bg-card);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}.result-sport{font-size:.72rem;color:var(--text-secondary);font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.result-matchup{display:flex;flex-direction:column;gap:6px}.result-team-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);font-family:inherit;font-size:.85rem;cursor:pointer;transition:var(--transition);color:var(--text);-webkit-tap-highlight-color:transparent}.result-team-btn.selected.win{border-color:var(--success);background:#34c75914}.result-label{margin-left:auto;font-size:.65rem;font-weight:700;opacity:.3}.result-team-btn.selected .result-label{opacity:1;color:var(--success)}.result-draw-btn{padding:8px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);font-family:inherit;font-size:.75rem;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:var(--transition);-webkit-tap-highlight-color:transparent}.result-draw-btn.selected{border-color:var(--warning);background:#ff9f0a1a;color:var(--warning)}.info-banner{display:flex;align-items:center;gap:8px;padding:14px 16px;background:#ff950014;border-radius:var(--radius);color:var(--orange);font-size:.85rem;margin:0 16px 16px}.bonus-container{padding:0}.bonus-header{padding:0 0 12px}.bonus-header h3{display:flex;align-items:center;gap:8px;font-size:1rem}.bonus-header h3 svg{color:var(--orange)}.bonus-desc{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.bonus-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.bonus-game-card{background:var(--bg-card);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}.bonus-game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.bonus-game-title{display:flex;align-items:center;gap:6px;font-weight:600;font-size:.9rem}.bonus-star{color:var(--orange)}.bonus-points-badge{font-size:.7rem;font-weight:700;background:#ff95001f;color:var(--orange);padding:2px 8px;border-radius:10px}.bonus-game-actions{display:flex;gap:4px}.bonus-game-winners{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.bonus-winners-label{display:flex;align-items:center;gap:4px;font-size:.75rem;color:var(--text-secondary);font-weight:600}.bonus-winner-chip{display:flex;align-items:center;gap:4px;font-size:.75rem;padding:3px 8px;background:var(--border-light);border-radius:10px}.bonus-summary{background:var(--bg-card);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow);margin-bottom:12px}.bonus-summary h4{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.bonus-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px}.bonus-summary-item{display:flex;align-items:center;gap:6px;font-size:.8rem;padding:4px 0}.bonus-summary-item.has-points{font-weight:600}.bonus-summary-name{flex:1}.bonus-summary-pts{color:var(--orange);font-weight:700}.bonus-form{background:var(--bg-card);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.bonus-form h4{font-size:.95rem;margin-bottom:12px}.bonus-form-actions{display:flex;gap:8px;margin-top:12px}.bonus-add-btn{width:100%;justify-content:center;padding:12px}.bonus-limit{font-size:.7rem;opacity:.6;margin-left:4px}.bonus-empty{text-align:center;padding:32px 16px;color:var(--text-secondary)}.bonus-empty svg{color:var(--text-tertiary);margin-bottom:8px}.bonus-empty p{font-size:.9rem}.bonus-empty-sub{font-size:.8rem;margin-top:4px}.point-value-selector{display:flex;gap:6px}.point-btn{width:40px;height:40px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);font-family:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:var(--transition);color:var(--text)}.point-btn.active{border-color:var(--orange);background:#ff95001a;color:var(--orange)}.winner-selector{display:flex;flex-direction:column;gap:6px}.winner-team-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);font-family:inherit;font-size:.85rem;cursor:pointer;transition:var(--transition);color:var(--text);-webkit-tap-highlight-color:transparent}.winner-team-btn.selected{border-color:var(--orange);background:#ff95000f}.winner-check{color:var(--orange);margin-left:auto}.confirm-delete-inline{display:flex;gap:4px}.finals-container{padding:16px}.finals-status-card{text-align:center;padding:40px 20px 32px}.finals-icon-pending{color:var(--orange);margin-bottom:12px}.finals-icon-done{color:var(--success);margin-bottom:12px}.finals-status-title{font-size:1.2rem;font-weight:700;margin-bottom:6px}.finals-status-desc{color:var(--text-secondary);font-size:.85rem;max-width:300px;margin:0 auto 16px}.finals-progress-label{font-size:.78rem;color:var(--text-secondary)}.finals-reconfigure-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;border:1.5px solid var(--orange);border-radius:20px;background:none;color:var(--orange);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;margin-top:12px}.finals-reconfigure-btn:hover{background:#ff95000f}.finals-reset-confirm{margin-top:12px}.finals-reset-warn{font-size:.8rem;color:var(--text-secondary);margin-bottom:8px;max-width:300px;margin-left:auto;margin-right:auto}.finals-reset-actions{display:flex;gap:8px;justify-content:center}.finals-explanation{text-align:center;padding:16px 0 20px}.finals-trophy-icon{color:var(--orange);margin-bottom:8px}.finals-explanation h3{font-size:1rem;font-weight:700;margin-bottom:6px}.finals-explanation p{font-size:.78rem;color:var(--text-secondary);max-width:320px;margin:0 auto}.finals-matchups{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.finals-matchup-card{background:var(--bg-card);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.finals-teams-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.finals-team{display:flex;flex-direction:column;align-items:center;gap:3px;flex:1}.finals-seed{font-size:.65rem;font-weight:700;letter-spacing:.3px}.finals-seed.high{color:var(--orange)}.finals-seed.low{color:var(--text-secondary)}.finals-team-circle{width:28px;height:28px;border-radius:50%;box-shadow:0 0 0 1px #8080804d}.finals-team-name{font-size:.78rem;font-weight:600}.finals-team-mascot{font-size:.65rem;color:var(--text-secondary)}.finals-picks-label{font-size:.6rem;color:var(--orange)}.finals-vs{font-size:.85rem;font-weight:800;color:var(--text-secondary);flex-shrink:0;margin:0 8px}.finals-sport-picker{text-align:center;position:relative}.finals-sport-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:20px;border:none;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;background:#ff95001f;color:var(--orange)}.finals-sport-btn.selected{background:var(--orange);color:#fff}.finals-sport-dropdown{position:absolute;top:100%;left:50%;transform:translate(-50%);background:var(--bg-card);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);border:1px solid var(--border);margin-top:4px;z-index:10;min-width:160px;overflow:hidden}.finals-sport-option{display:block;width:100%;padding:10px 16px;border:none;background:none;font-family:inherit;font-size:.85rem;text-align:left;cursor:pointer;color:var(--text)}.finals-sport-option:hover{background:var(--border-light)}.finals-configure-btn{display:block;width:100%;padding:14px;border:none;border-radius:24px;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;color:#fff;background:var(--orange);transition:var(--transition)}.finals-configure-btn.disabled{background:var(--border);cursor:not-allowed}.finals-configure-btn.ready:hover{background:var(--orange-dark)}.analytics-container{padding:0}.analytics-segmented{display:flex;margin:12px 16px;background:var(--border-light);border-radius:var(--radius-sm);padding:2px;gap:2px}.analytics-seg-btn{flex:1;padding:6px 0;border:none;border-radius:6px;background:transparent;font-family:inherit;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:var(--transition)}.analytics-seg-btn.active{background:var(--bg-card);color:var(--text);box-shadow:0 1px 3px #0000001a}.analytics-body{padding:0 16px 16px}.analytics-section-title{font-size:.95rem;font-weight:700;margin-bottom:12px}.analytics-card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:12px}.analytics-matrix{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:10px 8px}.analytics-table{font-size:.72rem;border-collapse:collapse;width:100%}.analytics-table th,.analytics-table td{padding:6px;text-align:center;border:1px solid var(--border-light)}.analytics-table th{background:var(--border-light);font-weight:600;font-size:.68rem}.mini-game-sport{color:var(--text-secondary)}.analytics-header-dot{display:inline-block;width:14px;height:14px;border-radius:50%}.analytics-row-label{display:flex;align-items:center;gap:3px;text-align:left}.analytics-label-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1px #8080804d}.analytics-label-name{font-size:.65rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40px}.analytics-cell{text-align:center;padding:4px}.analytics-cell.diagonal{color:var(--text-tertiary)}.analytics-cell.highlight{background:#ff950014;border-radius:4px}.analytics-cell.zero{background:#ff3b300f;border-radius:4px}.analytics-cell.good{background:#34c7590f;border-radius:4px}.analytics-cell-count{font-weight:700;font-size:.72rem;display:block}.analytics-cell-result{font-size:.55rem;color:var(--text-secondary);display:block}.analytics-sport-header{font-size:.55rem;font-weight:500;line-height:1.2;display:block;text-align:center}.analytics-legend{padding:8px 0 0}.analytics-legend p{font-size:.75rem;color:var(--text-secondary);margin-bottom:4px}.analytics-legend-row{display:flex;align-items:center;gap:6px;margin-top:4px;font-size:.75rem;color:var(--text-secondary)}.analytics-legend-swatch{width:12px;height:12px;border-radius:2px}.analytics-legend-swatch.highlight{background:#ff950026}.analytics-legend-swatch.zero{background:#ff3b301f}.analytics-legend-swatch.good{background:#34c7591f}.analytics-day-card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px;margin-bottom:12px}.analytics-day-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.analytics-day-label{font-size:.85rem;font-weight:700}.analytics-day-count{font-size:.75rem;color:var(--text-secondary)}.analytics-session-block{margin-bottom:8px}.analytics-session-label{font-size:.72rem;font-weight:700;color:var(--text-secondary);margin-bottom:4px}.analytics-game-row{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:.75rem}.analytics-game-sport{width:80px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.analytics-game-teams{display:flex;align-items:center;gap:3px;flex:1}.analytics-mini-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1px #8080804d}.analytics-team-name{font-size:.7rem}.analytics-vs{font-size:.65rem;color:var(--text-secondary)}.analytics-game-result{flex-shrink:0}.analytics-draw-tag{color:var(--orange);font-size:.7rem}.analytics-win-tag{display:flex;align-items:center;gap:2px;color:var(--success);font-size:.7rem;font-weight:700}.analytics-pending-tag{color:var(--text-secondary)}.setup-container{padding:0}.setup-container h3{display:flex;align-items:center;gap:8px;font-size:1rem}.setup-container h3 svg{color:var(--orange)}.setup-section{background:var(--bg-card);border-radius:var(--radius);padding:16px;margin-bottom:12px;box-shadow:var(--shadow)}.setup-section h4{font-size:.85rem;margin-bottom:10px;display:flex;align-items:center;gap:6px}.dates-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.date-input-row{display:flex;flex-direction:column;gap:4px}.date-label{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.date-input{padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-size:.85rem}.config-item{margin-bottom:16px}.config-item label{display:block;font-size:.85rem;font-weight:600;color:var(--text);margin-bottom:8px}.chip-selector{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.chip{padding:8px 16px;border-radius:20px;border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s ease}.chip:hover{border-color:var(--orange);background:var(--bg-grouped)}.chip-active{background:var(--orange);color:#fff;border-color:var(--orange)}.chip-active:hover{background:var(--orange-dark);border-color:var(--orange-dark)}.sports-grid{display:flex;flex-direction:column;gap:16px}.sports-day-group{background:var(--bg-grouped);border-radius:12px;padding:12px}.sports-day-label{font-size:.85rem;font-weight:600;color:var(--orange);margin-bottom:8px;padding-left:4px}.sport-input-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.sport-number{font-size:.75rem;color:var(--text-secondary);min-width:50px}.sport-input-row input{flex:1;padding:6px 10px;border-radius:8px;border:1px solid var(--separator);background:var(--bg);font-size:.85rem}.btn-small{padding:6px 12px;font-size:.8rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;text-align:center;color:var(--text-secondary)}.empty-state svg{color:var(--text-tertiary);margin-bottom:12px}.empty-state h3{font-size:1rem;margin-bottom:4px;color:var(--text)}.empty-state p{font-size:.85rem}.loading{display:flex;justify-content:center;align-items:center;min-height:40vh;color:var(--text-secondary);font-size:.9rem}.day-progress-bar{width:100%;height:3px;background:#00000014;border-radius:2px;margin-top:4px;overflow:hidden}.day-tab.active .day-progress-bar{background:#ffffff4d}.day-progress-fill{height:100%;background:var(--orange);border-radius:2px;transition:width .4s ease}.day-tab.active .day-progress-fill{background:#fff}.session-card{display:flex;background:var(--bg-card);border-radius:var(--radius);overflow:hidden;margin-bottom:12px;box-shadow:var(--shadow)}.session-accent{width:4px;background:var(--orange);flex-shrink:0}.session-accent.championship{background:linear-gradient(180deg,gold,#f60)}.session-body{flex:1;min-width:0}.session-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;font-size:.85rem;font-weight:600;color:var(--text-secondary);border-bottom:1px solid var(--border-light)}.session-header-left{display:flex;align-items:center;gap:6px}.session-trophy{color:var(--orange)}.session-title{font-weight:700;font-size:.85rem}.session-count{display:flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;color:var(--text-tertiary)}.session-count.complete{color:var(--success)}.session-pending{padding:16px;color:var(--text-secondary);font-size:.85rem;text-align:center}.game-card-v2{margin:8px 10px;border-radius:var(--radius);overflow:hidden;border-left:3px solid transparent;background:var(--bg-grouped);position:relative}.game-card-v2.border-pending{border-left-color:var(--border)}.game-card-v2.border-champ{border-left-color:var(--orange)}.game-card-v2.border-won{border-left-color:var(--winner-color, var(--success))}.game-card-v2.border-draw{border-left-color:var(--warning)}.stakes-banner{display:flex;align-items:center;justify-content:center;gap:4px;padding:4px 10px;font-size:.6rem;font-weight:800;letter-spacing:1px;color:var(--text-secondary);background:var(--border-light)}.stakes-banner.first-place{background:var(--orange-gradient);color:#fff}.sport-tag-row{display:flex;align-items:center;justify-content:space-between;padding:8px 10px 0}.sport-tag{display:flex;align-items:center;gap:4px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.sport-emoji{font-size:.8rem}.edit-score-btn{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;transition:var(--transition)}.edit-score-btn:hover{background:var(--border-light);color:var(--orange)}.teams-row{display:flex;align-items:center;padding:8px 10px 10px;gap:4px}.team-side{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;transition:opacity .2s ease}.team-side.loser{opacity:.35}.seed-badge{font-size:.55rem;font-weight:700;color:var(--success);background:#34c7591f;padding:1px 6px;border-radius:8px;letter-spacing:.3px}.team-circle-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.team-circle-ring{position:absolute;border-radius:50%;border:2px solid}.team-circle{border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 0 0 1px #8080804d}.draw-hands{font-size:.75rem;line-height:1}.team-side-name{font-size:.8rem;font-weight:500;color:var(--text);line-height:1.2}.team-side-name.bold{font-weight:700}.team-side-mascot{font-size:.65rem;color:var(--text-secondary);line-height:1.1}.center-indicator{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0;min-width:40px}.center-label{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.vs-label-v2{color:var(--orange);font-size:.85rem}.final-label{color:var(--success)}.draw-label,.draw-icon{color:var(--warning)}.record-score-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:calc(100% - 20px);margin:0 10px 10px;padding:8px 0;border:1.5px dashed var(--border);border-radius:var(--radius-sm);background:transparent;font-family:inherit;font-size:.78rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:var(--transition)}.record-score-btn:hover{border-color:var(--orange);color:var(--orange);background:#ff95000a}.scoring-dialog{display:flex;flex-direction:column;gap:4px;padding:10px;border-top:1px solid var(--border-light);background:var(--bg-card)}.scoring-title{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-align:center;margin-bottom:4px}.scoring-option{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:var(--transition);color:var(--text)}.scoring-option:hover{border-color:var(--orange);background:#ff95000a}.scoring-option.draw-option{justify-content:center;color:var(--text-secondary);font-size:.8rem}.scoring-option.draw-option:hover{border-color:var(--warning)}.scoring-option.clear-option{justify-content:center;color:var(--danger);border-color:transparent;font-size:.78rem}.scoring-option.cancel-option{justify-content:center;color:var(--text-tertiary);border-color:transparent;font-size:.78rem;font-weight:500}.progress-summary{display:flex;align-items:center;padding:14px 16px;background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px}.progress-text{flex:1}.progress-day{font-size:.85rem;font-weight:600;color:var(--text)}.progress-games{font-size:.78rem;color:var(--text-secondary)}.progress-ring{position:relative;width:44px;height:44px;flex-shrink:0}.progress-ring svg{transform:rotate(-90deg)}.progress-ring-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.68rem;font-weight:700}.progress-ring-label.complete{color:var(--success)}.progress-ring-label.in-progress{color:var(--orange)}.celebration-banner{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--orange-gradient);border-radius:var(--radius);color:#fff;margin-bottom:12px;cursor:pointer;transition:opacity .2s}.celebration-banner:hover{opacity:.92}.celebration-text{flex:1}.celebration-text h4{font-size:.95rem;font-weight:700}.celebration-text span{font-size:.75rem;opacity:.85}.celebration-icon{font-size:1.3rem}.standings-table-header{display:flex;align-items:center;padding:8px 12px;background:var(--border-light);font-size:.7rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;border-radius:var(--radius) var(--radius) 0 0}.standings-col-rank{width:28px;text-align:center}.standings-col-team{flex:1}.standings-col-stat{width:32px;text-align:center}.standings-col-pts,.standings-col-bonus{width:36px;text-align:center}.standings-col-total{width:40px;text-align:center}.standings-team-row{display:flex;align-items:center;padding:10px 12px;font-size:.82rem;border-bottom:1px solid var(--border-light)}.standings-team-row:last-child{border-bottom:none}.standings-team-row.rank-bg-1{background:#ffd7000f}.standings-team-row.rank-bg-2{background:#c0c0c00f}.standings-team-row.rank-bg-3{background:#cd7f320a}.rank-medal{font-size:.85rem}.rank-medal.gold{color:gold}.rank-medal.silver{color:silver}.rank-medal.bronze{color:#cd7f32}.standings-team-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.standings-team-circle{width:22px;height:22px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1px #8080804d}.standings-team-details{display:flex;flex-direction:column;min-width:0}.standings-team-name{font-size:.82rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.standings-team-mascot{font-size:.65rem;color:var(--text-secondary)}.standings-stat-val{width:32px;text-align:center;font-size:.82rem}.standings-pts-val{width:36px;text-align:center;font-weight:600}.standings-bonus-val{width:36px;text-align:center;color:var(--orange)}.standings-total-val{width:40px;text-align:center;font-weight:700}.legend-card{background:var(--bg-card);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-top:12px}.legend-header{display:flex;align-items:center;gap:6px;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.legend-header svg{color:var(--orange)}.legend-header span{font-size:.78rem;font-weight:700;color:var(--text-secondary);flex:1}.legend-chevron{color:var(--text-tertiary);transition:transform .2s}.legend-chevron.open{transform:rotate(180deg)}.legend-body{padding:0 16px 14px}.legend-row{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:.78rem}.legend-icon{width:16px;text-align:center}.legend-icon.win{color:var(--orange)}.legend-icon.draw{color:var(--text-secondary)}.legend-icon.loss{color:#ff3b3099}.legend-divider{height:1px;background:var(--border-light);margin:6px 0}.legend-columns{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.75rem}.legend-col-label{font-weight:700;color:var(--text-secondary)}.legend-col-desc{color:var(--text-tertiary)}.legend-seeding{color:var(--orange);font-size:.75rem;margin-top:4px}.legend-tiebreaker{font-size:.75rem;color:var(--text-secondary)}.legend-tiebreaker strong{font-weight:700}.edit-sports-container{padding:16px}.edit-sports-header h3{font-size:1.1rem;display:flex;align-items:center;gap:8px}.edit-sports-desc{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.edit-sports-day{margin-top:20px}.edit-sports-day-label{font-size:.85rem;font-weight:700;color:var(--text);padding:8px 0;border-bottom:1px solid var(--border)}.edit-sports-session{margin-top:10px}.edit-sports-session-label{font-size:.7rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:4px 0}.edit-sports-game{margin-bottom:2px}.edit-sports-game-row{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition)}.edit-sports-game-row:hover{background:var(--border-light)}.edit-sports-teams{display:flex;align-items:center;gap:5px;font-size:.8rem}.edit-sports-team-name{font-weight:600}.edit-sports-vs{font-size:.7rem;color:var(--text-secondary)}.edit-sports-badge{display:flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;color:var(--orange);padding:4px 10px;border-radius:20px;background:#ff95001a}.edit-sports-badge.editing{background:var(--orange);color:#fff}.edit-sports-editor{background:var(--bg-card);border:1px solid var(--orange);border-radius:var(--radius-sm);padding:14px;margin-top:4px}.edit-sports-chips-section{margin-top:12px}.edit-sports-chips-label{font-size:.7rem;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:4px;margin-bottom:6px}.edit-sports-chips{display:flex;flex-wrap:wrap;gap:6px}.edit-sports-chip{font-size:.75rem;font-weight:500;padding:5px 12px;border-radius:20px;border:1px solid var(--border);background:var(--bg-grouped);color:var(--text);cursor:pointer;transition:all var(--transition)}.edit-sports-chip:hover{border-color:var(--orange)}.edit-sports-chip.active{background:var(--orange);color:#fff;border-color:var(--orange)}.edit-sports-chip.rain{border-color:var(--blue)}.edit-sports-chip.rain.active{background:var(--blue);border-color:var(--blue)}.edit-sports-editor-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}.user-mgmt-container{padding:16px}.user-mgmt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary)}.user-mgmt-empty h4{margin-top:12px;font-size:1.1rem;color:var(--text)}.user-mgmt-empty p{font-size:.85rem;margin-top:4px}.user-mgmt-summary{display:flex;gap:10px;margin-bottom:16px}.user-mgmt-pill{flex:1;display:flex;flex-direction:column;align-items:center;padding:10px 8px;border-radius:var(--radius);background:var(--bg-card);border:1px solid var(--border)}.user-mgmt-pill-count{font-size:1.3rem;font-weight:700;color:var(--pill-color)}.user-mgmt-pill-label{font-size:.65rem;color:var(--text-secondary);margin-top:2px}.user-mgmt-list{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.user-mgmt-row{border-bottom:1px solid var(--border-light)}.user-mgmt-row:last-child{border-bottom:none}.user-mgmt-row-btn{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;background:none;border:none;transition:background var(--transition);text-align:left}.user-mgmt-row-btn:hover:not(:disabled){background:var(--border-light)}.user-mgmt-row-btn:disabled{cursor:default}.user-mgmt-avatar{width:40px;height:40px;border-radius:50%;background:color-mix(in srgb,var(--avatar-color) 15%,transparent);color:var(--avatar-color);font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-mgmt-info{flex:1;min-width:0}.user-mgmt-name-row{display:flex;align-items:center;gap:6px}.user-mgmt-name{font-size:.85rem;font-weight:600;color:var(--text)}.user-mgmt-you-badge{font-size:.6rem;font-weight:600;color:#fff;background:var(--success);padding:1px 6px;border-radius:10px}.user-mgmt-email{font-size:.72rem;color:var(--text-secondary);display:block}.user-mgmt-role-badge{display:flex;align-items:center;gap:4px;font-size:.7rem;font-weight:600;color:var(--role-color);padding:4px 10px;border-radius:20px;background:color-mix(in srgb,var(--role-color) 12%,transparent);flex-shrink:0}.user-mgmt-chevron{color:var(--text-tertiary);flex-shrink:0}.user-mgmt-role-picker{display:flex;gap:6px;padding:8px 14px 12px;flex-wrap:wrap}.user-mgmt-role-option{display:flex;align-items:center;gap:6px;font-size:.8rem;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-card);cursor:pointer;transition:all var(--transition)}.user-mgmt-role-option:hover{border-color:var(--opt-color)}.user-mgmt-role-option.current{border-color:var(--opt-color);background:color-mix(in srgb,var(--opt-color) 10%,transparent);font-weight:600}.user-mgmt-current-tag{font-size:.65rem;color:var(--text-secondary)}.settings-panel{padding:16px}.settings-section{margin-bottom:20px}.settings-section-title{font-size:.7rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.settings-info-list{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.settings-info-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--border-light)}.settings-info-row:last-child{border-bottom:none}.settings-info-label{font-size:.85rem;color:var(--text)}.settings-info-value{font-size:.85rem;color:var(--text-secondary)}.settings-teams-list{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);padding:10px 14px;display:flex;flex-wrap:wrap;gap:8px}.settings-team-item{display:flex;align-items:center;gap:5px;font-size:.8rem;color:var(--text)}.settings-sport-group{font-size:.8rem;color:var(--text);margin-bottom:4px}.settings-sport-group-label{font-weight:600;color:var(--text-secondary)}.settings-actions-list{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.settings-action-btn{width:100%;display:flex;align-items:center;gap:10px;padding:12px 14px;border:none;background:none;font-size:.85rem;color:var(--blue);cursor:pointer;border-bottom:1px solid var(--border-light);transition:background var(--transition)}.settings-action-btn:last-child{border-bottom:none}.settings-action-btn:hover{background:var(--border-light)}.settings-action-warning{color:var(--orange)}.settings-action-danger{color:var(--danger)}.settings-confirm-box{padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:8px}.settings-confirm-box p{font-size:.8rem;color:var(--text-secondary);margin-bottom:10px}.settings-confirm-actions{display:flex;gap:8px}.archive-loading,.archive-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary)}.archive-empty h4{margin-top:12px;color:var(--text)}.archive-empty p{font-size:.85rem;margin-top:4px}.archive-container{padding:16px}.archive-title{font-size:1.1rem;display:flex;align-items:center;gap:8px;margin-bottom:12px}.archive-list{display:flex;flex-direction:column;gap:8px}.archive-row{width:100%;text-align:left;padding:14px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition)}.archive-row:hover{border-color:var(--orange);box-shadow:var(--shadow-md)}.archive-row-top{display:flex;justify-content:space-between;align-items:center}.archive-row-name{font-size:.95rem;font-weight:700}.archive-row-date{font-size:.72rem;color:var(--text-secondary)}.archive-row-meta{display:flex;gap:12px;margin-top:6px;font-size:.75rem;color:var(--text-secondary)}.archive-row-meta span{display:flex;align-items:center;gap:4px}.archive-row-winner{display:flex;align-items:center;gap:5px;margin-top:8px;font-size:.8rem}.archive-champion-label{color:var(--text-secondary)}.archive-detail{padding:16px}.archive-back-btn{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--blue);background:none;border:none;cursor:pointer;margin-bottom:16px;padding:0}.archive-back-btn:hover{text-decoration:underline}.archive-detail-header{text-align:center;margin-bottom:20px}.archive-detail-logo{height:50px;margin-bottom:8px}.archive-detail-header h2{font-size:1.3rem}.archive-detail-date{font-size:.75rem;color:var(--text-secondary);margin-top:2px}.archive-highlights-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;margin-bottom:16px}.archive-highlights-card h4{font-size:1rem;margin-bottom:12px}.archive-highlights-grid{display:flex;gap:12px}.archive-highlight-stat{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.archive-highlight-icon{font-size:1.3rem;margin-bottom:4px}.archive-highlight-value{font-size:1.4rem;font-weight:700}.archive-highlight-label{font-size:.65rem;color:var(--text-secondary);margin-top:2px}.archive-highlight-team{font-size:.7rem;font-weight:600;margin-top:2px}.archive-standings-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.archive-standings-card h4{padding:14px 14px 10px;font-size:1rem}.archive-standings-header{display:flex;align-items:center;padding:6px 12px;background:var(--border-light);font-size:.7rem;font-weight:700;color:var(--text-secondary)}.archive-standings-row{display:flex;align-items:center;padding:8px 12px;border-bottom:1px solid var(--border-light);font-size:.8rem}.archive-standings-row:last-child{border-bottom:none}.archive-standings-row.rank-1{background:#ffd70014}.archive-standings-row.rank-2{background:#c0c0c014}.archive-standings-row.rank-3{background:#cd7f320f}.archive-col-rank{width:30px;text-align:center;flex-shrink:0}.archive-col-team{flex:1;display:flex;align-items:center;gap:6px;min-width:0}.archive-team-info{display:flex;flex-direction:column}.archive-team-name{font-weight:600}.archive-team-mascot{font-size:.65rem;color:var(--text-secondary)}.archive-col-stat{width:28px;text-align:center;flex-shrink:0}.archive-col-pts{width:36px;text-align:center;flex-shrink:0;font-weight:600}.profile-container{padding:16px}.profile-card{display:flex;align-items:center;gap:14px;padding:16px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px}.profile-avatar{width:50px;height:50px;border-radius:50%;background:#ff950026;color:var(--orange);font-size:1.1rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-info{flex:1}.profile-name{font-size:1rem;font-weight:700;display:block}.profile-email{font-size:.75rem;color:var(--text-secondary);display:block}.profile-role-badge{display:inline-block;font-size:.6rem;font-weight:600;color:#fff;background:var(--orange);padding:2px 8px;border-radius:10px;margin-top:4px}.profile-section{margin-bottom:16px}.profile-section-title{font-size:.7rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.profile-section-list{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.profile-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border-light);cursor:pointer}.profile-toggle-row:last-child{border-bottom:none}.profile-toggle-left{display:flex;align-items:center;gap:10px;font-size:.85rem}.profile-toggle-icon{color:var(--orange)}.profile-toggle{width:44px;height:24px;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--border);border-radius:12px;position:relative;cursor:pointer;transition:background .2s}.profile-toggle:checked{background:var(--orange)}.profile-toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s}.profile-toggle:checked:after{transform:translate(20px)}.profile-about-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--border-light);font-size:.85rem}.profile-about-row:last-child{border-bottom:none}.profile-about-value{margin-left:auto;color:var(--text-secondary)}.profile-signout-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;font-size:.9rem;font-weight:600;color:var(--danger);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:background var(--transition)}.profile-signout-btn:hover{background:var(--border-light)}.profile-signed-out{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary)}.profile-signed-out p{font-size:.85rem;margin-top:12px;max-width:280px}.profile-hint{font-size:.75rem;color:var(--text-tertiary);margin-top:8px}.profile-auth-card{background:var(--bg-card);border-radius:var(--radius);padding:32px 24px;margin:16px;display:flex;flex-direction:column;align-items:center;text-align:center}.profile-auth-icon{color:var(--text-secondary);margin-bottom:12px}.profile-auth-card h3{font-size:1.15rem;font-weight:700;margin-bottom:6px}.profile-auth-desc{font-size:.82rem;color:var(--text-secondary);margin-bottom:20px;max-width:300px}.profile-auth-card .auth-tabs,.profile-auth-card .auth-mode-toggle,.profile-auth-card .auth-form,.profile-auth-card .auth-apple-section{width:100%;max-width:320px}.auth-tabs{display:flex;gap:4px;margin-bottom:16px;background:var(--bg-grouped);border-radius:var(--radius-sm);padding:3px}.auth-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px;border-radius:var(--radius-xs);border:none;font-size:.8rem;font-weight:600;cursor:pointer;background:transparent;color:var(--text-secondary);transition:all var(--transition)}.auth-tab.active{background:var(--bg-card);color:var(--text);box-shadow:0 1px 3px #0000001a}.auth-mode-toggle{display:flex;gap:0;margin-bottom:14px;border-bottom:1px solid var(--border)}.auth-mode-btn{flex:1;padding:8px;border:none;background:none;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;transition:all var(--transition)}.auth-mode-btn.active{color:var(--orange);border-bottom-color:var(--orange)}.auth-apple-section{display:flex;flex-direction:column;align-items:center;padding:20px 0}.auth-apple-desc{font-size:.85rem;color:var(--text-secondary);text-align:center;margin-bottom:20px}.auth-apple-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:280px;padding:14px;font-size:.95rem;font-weight:600;color:#fff;background:#000;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--transition)}.auth-apple-btn:hover{opacity:.85}.auth-apple-btn:disabled{opacity:.5;cursor:not-allowed}@media (prefers-color-scheme: dark){.auth-apple-btn{background:#fff;color:#000}}.text-center{text-align:center}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}
