[data-theme=dark]{--gray-50: #0f172a;--gray-100: #1e293b;--gray-200: #334155;--gray-300: #475569;--gray-400: #64748b;--gray-500: #94a3b8;--gray-600: #cbd5e1;--gray-700: #e2e8f0;--gray-800: #f1f5f9;--gray-900: #f8fafc;--dark-bg-primary: #0f172a;--dark-bg-secondary: #1e293b;--dark-bg-tertiary: #334155;--dark-text-primary: #f8fafc;--dark-text-secondary: #cbd5e1;--dark-border-color: #334155;--dark-input-bg: #1e293b;--dark-card-bg: #1e293b;--dark-hover-bg: #334155}[data-theme=dark] .header{background:var(--dark-bg-secondary);border-bottom-color:var(--dark-border-color)}[data-theme=dark] .app-title{color:var(--dark-text-primary)}[data-theme=dark] .header-nav a{color:var(--dark-text-secondary)}[data-theme=dark] .header-nav a:hover{color:var(--dark-text-primary)}[data-theme=dark] .header-nav a.active{color:var(--accent-blue)}[data-theme=dark] .theme-toggle,[data-theme=dark] .logout-btn{background:var(--dark-bg-tertiary);color:var(--dark-text-primary)}[data-theme=dark] .theme-toggle:hover,[data-theme=dark] .logout-btn:hover{background:var(--dark-hover-bg)}[data-theme=dark] .stats-dashboard,[data-theme=dark] .container{background:var(--dark-bg-primary)}[data-theme=dark] .dashboard-header{background:linear-gradient(135deg,#1e3c72,#2a5298);color:#fff}[data-theme=dark] .filter-controls{background:#ffffff1a}[data-theme=dark] .filter-group label{color:var(--dark-text-secondary)}[data-theme=dark] .filter-group select{background:var(--dark-input-bg);border-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .view-toggle,[data-theme=dark] .search-container{background:var(--dark-card-bg);border-color:var(--dark-border-color)}[data-theme=dark] .view-btn{background:transparent;color:var(--dark-text-secondary);border-color:var(--dark-border-color)}[data-theme=dark] .view-btn:hover{background:var(--dark-hover-bg);color:var(--dark-text-primary)}[data-theme=dark] .view-btn.active{background:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}[data-theme=dark] .search-container{background:var(--dark-card-bg);border-color:var(--dark-border-color)}[data-theme=dark] .search-input{background:var(--dark-input-bg);border-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .search-input::placeholder{color:var(--dark-text-secondary)}[data-theme=dark] .search-input:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px #3182ce33}[data-theme=dark] .research-table,[data-theme=dark] .research-container{background:var(--dark-card-bg);border-color:var(--dark-border-color)}[data-theme=dark] .research-header h2{color:var(--dark-text-primary)}[data-theme=dark] .research-controls,[data-theme=dark] .player-count,[data-theme=dark] .bonus-note,[data-theme=dark] .stats-note{color:var(--dark-text-secondary)}[data-theme=dark] .research-table-wrapper{background:var(--dark-card-bg);border-color:var(--dark-border-color)}[data-theme=dark] .research-table thead{background:linear-gradient(135deg,#1e3c72,#2a5298)}[data-theme=dark] .research-table tbody tr{background-color:var(--dark-card-bg);border-bottom-color:var(--dark-border-color)}[data-theme=dark] .research-table tbody tr:nth-child(2n){background-color:var(--dark-bg-secondary)}[data-theme=dark] .research-table tbody tr:hover{background-color:var(--dark-hover-bg)}[data-theme=dark] .research-table tbody tr:nth-child(2n):hover{background-color:var(--dark-hover-bg)}[data-theme=dark] .research-table td{color:var(--dark-text-primary);border-bottom-color:var(--dark-border-color);border-right-color:var(--dark-border-color)}[data-theme=dark] .rank-cell{color:var(--dark-text-secondary)}[data-theme=dark] .clickable-row:hover{background-color:var(--dark-hover-bg)!important}[data-theme=dark] .position-tag,[data-theme=dark] .team-tag{background:var(--dark-bg-tertiary);color:var(--dark-text-secondary)}[data-theme=dark] .fantasy-stat-cell{color:var(--dark-text-primary)}[data-theme=dark] .total-points{color:var(--dark-text-primary)!important}[data-theme=dark] .bonus-cell{color:var(--dark-text-primary);background-color:var(--dark-bg-secondary)!important}[data-theme=dark] .stat-best{background-color:var(--dark-bg-secondary)!important;color:var(--dark-text-primary)}[data-theme=dark] .empty-state{background:var(--dark-card-bg);color:var(--dark-text-secondary)}[data-theme=dark] .empty-state h3{color:var(--dark-text-primary)}[data-theme=dark] .table-header{background:var(--dark-bg-secondary);border-bottom-color:var(--dark-border-color)}[data-theme=dark] .table-header h2{color:var(--dark-text-primary)}[data-theme=dark] .table-info{color:var(--dark-text-secondary)}[data-theme=dark] .load-more-btn{background:var(--dark-bg-secondary);border-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .load-more-btn:hover{background:var(--dark-hover-bg)}[data-theme=dark] .sortable-table{background:var(--dark-card-bg);border-color:var(--dark-border-color)}[data-theme=dark] .sortable-table th{background:var(--dark-bg-secondary);border-bottom-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .sortable-table td{border-bottom-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .sortable-table tr:hover{background:var(--dark-hover-bg)}[data-theme=dark] .player-name{color:var(--dark-text-primary)}[data-theme=dark] .player-team{color:var(--dark-text-secondary)}[data-theme=dark] .player-rank,[data-theme=dark] .stat-value{color:var(--dark-text-primary)}[data-theme=dark] .stat-value.zero{color:var(--dark-text-secondary)}[data-theme=dark] .games-played{color:var(--dark-text-primary)}[data-theme=dark] .games-played.low{color:#fca5a5}[data-theme=dark] .position-filter{background:#ffffff1a}[data-theme=dark] .position-btn{background:#fff3;border-color:#ffffff4d;color:#fff}[data-theme=dark] .position-btn:hover{background:#ffffff4d}[data-theme=dark] .position-btn.active{background:#fff;color:#2a5298}[data-theme=dark] .teams-page{background:var(--dark-bg-primary)}[data-theme=dark] .teams-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .header-content h1{color:var(--dark-text-primary)}[data-theme=dark] .league-name{color:var(--dark-text-secondary)}[data-theme=dark] .refresh-btn{background:var(--primary-blue);color:#fff}[data-theme=dark] .refresh-btn:hover:not(:disabled){background:var(--primary-light)}[data-theme=dark] .teams-tabs{background:var(--dark-card-bg)}[data-theme=dark] .tab-headers{background:var(--dark-bg-secondary);border-bottom-color:var(--dark-border-color)}[data-theme=dark] .tab-header{background:transparent;color:var(--dark-text-secondary)}[data-theme=dark] .tab-header:hover{background:var(--dark-hover-bg);color:var(--dark-text-primary)}[data-theme=dark] .tab-header.active{background:var(--dark-card-bg);color:var(--accent-blue);border-bottom-color:var(--accent-blue)}[data-theme=dark] .tab-content,[data-theme=dark] .teams-overview{background:var(--dark-card-bg)}[data-theme=dark] .stat-card{background:var(--dark-bg-secondary);border-color:var(--dark-border-color)}[data-theme=dark] .stat-value{color:var(--dark-text-primary)}[data-theme=dark] .stat-label,[data-theme=dark] .stat-icon{color:var(--dark-text-secondary)}[data-theme=dark] .summary-section{background:var(--dark-bg-secondary);border-color:var(--dark-border-color)}[data-theme=dark] .summary-section h3{color:var(--dark-text-primary)}[data-theme=dark] .summary-item{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .summary-item:last-child{border-bottom:none}[data-theme=dark] .summary-label{color:var(--dark-text-secondary)}[data-theme=dark] .summary-value{color:var(--dark-text-primary)}[data-theme=dark] .team-preview-card{background:var(--dark-bg-secondary);border-color:var(--dark-border-color)}[data-theme=dark] .team-name{color:var(--dark-text-primary)}[data-theme=dark] .team-size,[data-theme=dark] .team-status{color:var(--dark-text-secondary)}[data-theme=dark] .owned-teams{background:var(--dark-card-bg)}[data-theme=dark] .team-card{background:var(--dark-bg-secondary);border-color:var(--dark-border-color)}[data-theme=dark] .team-card-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .team-card-title{color:var(--dark-text-primary)}[data-theme=dark] .team-card-subtitle{color:var(--dark-text-secondary)}[data-theme=dark] .team-card-content{color:var(--dark-text-primary)}[data-theme=dark] .opponent-teams{background:var(--dark-card-bg)}[data-theme=dark] .opponent-team-card{background:var(--dark-bg-secondary);border-color:var(--dark-border-color)}[data-theme=dark] .opponent-team-card-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .opponent-team-card-title{color:var(--dark-text-primary)}[data-theme=dark] .opponent-team-card-subtitle{color:var(--dark-text-secondary)}[data-theme=dark] .opponent-team-card-content{color:var(--dark-text-primary)}[data-theme=dark] .teams-analytics{background:var(--dark-card-bg)}[data-theme=dark] .analytics-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .analytics-header h3,[data-theme=dark] .analytics-content{color:var(--dark-text-primary)}[data-theme=dark] .week-navigator{background:var(--dark-card-bg);border-color:var(--dark-border-color)}[data-theme=dark] .nav-btn{background:var(--dark-bg-secondary);border-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .nav-btn:hover:not(:disabled){background:var(--dark-hover-bg)}[data-theme=dark] .current-week{color:var(--dark-text-primary)}[data-theme=dark] .player-list{background:var(--dark-card-bg)}[data-theme=dark] .player-item{background:var(--dark-bg-secondary);border-color:var(--dark-border-color)}[data-theme=dark] .player-item-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .player-item-name{color:var(--dark-text-primary)}[data-theme=dark] .player-item-position,[data-theme=dark] .player-item-team{color:var(--dark-text-secondary)}[data-theme=dark] .player-item-content{color:var(--dark-text-primary)}[data-theme=dark] .metrics-tab{background:var(--dark-card-bg)}[data-theme=dark] .metrics-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .metrics-header h3,[data-theme=dark] .metrics-content{color:var(--dark-text-primary)}[data-theme=dark] .weekly-logs-tab{background:var(--dark-card-bg)}[data-theme=dark] .weekly-logs-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .weekly-logs-header h3,[data-theme=dark] .weekly-logs-content{color:var(--dark-text-primary)}[data-theme=dark] .available-players-tab{background:var(--dark-card-bg)}[data-theme=dark] .available-players-header{border-bottom-color:var(--dark-border-color)}[data-theme=dark] .available-players-header h3,[data-theme=dark] .available-players-content{color:var(--dark-text-primary)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background-color:var(--dark-input-bg);border-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .league-selector,[data-theme=dark] .week-select{background:var(--dark-input-bg);border-color:var(--dark-border-color);color:var(--dark-text-primary)}[data-theme=dark] .week-selector label{color:var(--dark-text-secondary)}[data-theme=dark] .btn-secondary{background-color:var(--dark-bg-secondary);color:var(--dark-text-primary)}[data-theme=dark] .btn-secondary:hover{background-color:var(--dark-hover-bg)}[data-theme=dark] .teams-overview.loading,[data-theme=dark] .teams-overview.empty,[data-theme=dark] .no-league-selected{color:var(--dark-text-secondary)}[data-theme=dark] .no-league-selected h2{color:var(--dark-text-primary)}[data-theme=dark] .error-banner{background:#1f2937;border-color:#dc2626}[data-theme=dark] .error-content{color:#fca5a5}[data-theme=dark] .cache-indicator{background:#1f2937;border-color:#f59e0b;color:#fcd34d}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--dark-bg-secondary)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--dark-border-color)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--dark-hover-bg)}[data-theme=dark] .skeleton{background:linear-gradient(90deg,var(--dark-bg-secondary) 25%,var(--dark-border-color) 50%,var(--dark-bg-secondary) 75%)}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px #3182ce33}*{transition:background-color .2s ease,color .2s ease,border-color .2s ease}:root{--primary-blue: #1e3c72;--primary-light: #2a5298;--accent-blue: #3182ce;--success-green: #059669;--warning-orange: #d97706;--error-red: #dc2626;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--dark-bg-primary: #0f172a;--dark-bg-secondary: #1e293b;--dark-bg-tertiary: #334155;--dark-text-primary: #f8fafc;--dark-text-secondary: #cbd5e1;--dark-border-color: #334155;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--border-radius: .75rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: 1rem;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}[data-theme=dark]{--gray-50: #0f172a;--gray-100: #1e293b;--gray-200: #334155;--gray-300: #475569;--gray-400: #64748b;--gray-500: #94a3b8;--gray-600: #cbd5e1;--gray-700: #e2e8f0;--gray-800: #f1f5f9;--gray-900: #f8fafc}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;background-color:var(--gray-50);color:var(--gray-800);line-height:1.6;min-height:100vh}[data-theme=dark] body{background-color:var(--dark-bg-primary);color:var(--dark-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:1rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}a{color:var(--accent-blue);text-decoration:none;transition:color var(--transition-base)}a:hover{color:var(--primary-light);text-decoration:underline}button{cursor:pointer;font-family:inherit;font-size:inherit;transition:all var(--transition-base)}.btn{padding:.5rem 1rem;border-radius:var(--radius-md);border:none;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;transition:all var(--transition-base)}.btn-primary{background-color:var(--primary-blue);color:#fff}.btn-primary:hover{background-color:var(--primary-light);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background-color:var(--gray-200);color:var(--gray-800)}.btn-secondary:hover{background-color:var(--gray-300)}input,select,textarea{font-family:inherit;font-size:inherit;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);background-color:#fff;transition:all var(--transition-base)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background-color:var(--dark-bg-secondary);border-color:var(--dark-border-color);color:var(--dark-text-primary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px #3182ce1a}.container{max-width:1280px;margin:0 auto;padding:0 1rem}.grid{display:grid;gap:1rem}.flex{display:flex;gap:1rem}.flex-center{display:flex;align-items:center;justify-content:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-in}.slide-down{animation:slideDown .3s ease-out}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}@media (max-width: 640px){html{font-size:14px}.container{padding:0 .75rem}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@media (min-width: 640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.sm\:flex-row{flex-direction:row}}@media (min-width: 768px){.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.md\:flex-row{flex-direction:row}}@media (min-width: 1024px){.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1280px){.xl\:grid-cols-5{grid-template-columns:repeat(5,1fr)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.skeleton{background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-300) 50%,var(--gray-200) 75%);background-size:200% 100%;animation:loading 1.5s infinite}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media print{body{background:#fff;color:#000}.no-print{display:none!important}}
