:root{--primary:#1a365d;--primary-light:#2b6cb0;--accent:#ed8936;--green:#38a169;--red:#e53e3e;--gray-50:#f7fafc;--gray-100:#edf2f7;--gray-200:#e2e8f0;--gray-300:#cbd5e0;--gray-500:#a0aec0;--gray-600:#718096;--gray-700:#4a5568;--gray-800:#2d3748;--gray-900:#1a202c;--white:#fff;--gold:#f6e05e;--silver:#cbd5e0;--bronze:#ed8936}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--gray-50);color:var(--gray-800);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.app-header{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);color:var(--white);z-index:100;align-items:center;gap:10px;padding:12px 16px;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #00000026}.header-logo{background:var(--white);object-fit:contain;border:2px solid #ffffff4d;border-radius:50%;width:40px;height:40px}.app-header h1{flex:1;font-size:16px;font-weight:700}.season-badge{background:var(--accent);color:var(--white);border-radius:12px;padding:3px 10px;font-size:12px;font-weight:700}.tab-nav{background:var(--white);border-bottom:2px solid var(--gray-200);z-index:99;display:flex;position:sticky;top:64px}.tab-btn{color:var(--gray-500);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;padding:12px 8px;font-size:13px;font-weight:600;transition:all .2s}.tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-btn:hover{color:var(--primary-light);background:var(--gray-50)}.content{max-width:900px;margin:0 auto;padding:12px}.loading{text-align:center;color:var(--gray-500);padding:40px;font-size:14px}.table-container{-webkit-overflow-scrolling:touch;background:var(--white);border-radius:8px;overflow-x:auto;box-shadow:0 1px 3px #0000001a}.league-table{border-collapse:collapse;width:100%;min-width:500px;font-size:13px}.league-table th{background:var(--gray-800);color:var(--white);text-transform:uppercase;letter-spacing:.5px;text-align:center;white-space:nowrap;padding:10px 6px;font-size:11px;font-weight:600}.league-table td{text-align:center;border-bottom:1px solid var(--gray-100);padding:10px 6px}.league-table tbody tr:hover{background:var(--gray-50)}.pos-col{width:32px;color:var(--gray-600);font-weight:700}.team-col{background:var(--white);z-index:2;min-width:140px;font-weight:600;position:sticky;left:0;text-align:left!important}.league-table th.team-col{background:var(--gray-800);z-index:3}.league-table tbody tr:hover .team-col{background:var(--gray-50)}.points-col{color:var(--primary);font-size:14px;font-weight:800}.positive{color:var(--green);font-weight:600}.negative{color:var(--red);font-weight:600}.row-first{background:linear-gradient(90deg,#f6e05e26 0%,#0000 100%)!important}.row-first .pos-col{color:var(--accent)}.row-top3{background:#2b6cb00a}.row-bottom3{background:#e53e3e0a}.filter-bar{background:var(--white);border-radius:8px;align-items:center;gap:8px;margin-bottom:12px;padding:10px 12px;font-size:13px;display:flex;box-shadow:0 1px 3px #0000001a}.filter-bar select{border:1px solid var(--gray-300);background:var(--white);border-radius:6px;padding:6px 10px;font-size:13px}.filter-count{color:var(--gray-500);margin-left:auto;font-size:12px}.player-name{color:var(--gray-900);font-weight:600}.team-name-small{color:var(--gray-600);text-overflow:ellipsis;white-space:nowrap;max-width:100px;font-size:11px;overflow:hidden}.win-pct{color:var(--primary);font-weight:700}.player-table{min-width:650px}.matches-container{flex-direction:column;gap:16px;display:flex}.match-day h3.match-date{color:var(--gray-600);margin-bottom:8px;padding-left:4px;font-size:13px;font-weight:600}.match-cards{flex-direction:column;gap:8px;display:flex}.match-card{background:var(--white);border-radius:8px;padding:12px 16px;box-shadow:0 1px 3px #0000001a}.match-teams{justify-content:space-between;align-items:center;display:flex}.match-team{flex:1;align-items:center;gap:8px;display:flex}.match-team:last-child{text-align:right;flex-direction:row-reverse}.match-team.winner .team-badge{font-weight:700}.match-team.winner .match-score{color:var(--green)}.match-score{color:var(--gray-800);text-align:center;min-width:24px;font-size:20px;font-weight:800}.match-vs{color:var(--gray-400);padding:0 8px;font-size:14px;font-weight:600}.team-badge{color:var(--gray-700);font-size:13px;font-weight:500}.app-footer{text-align:center;color:var(--gray-500);justify-content:center;gap:12px;margin-top:24px;padding:16px;font-size:11px;display:flex}.api-link a{color:var(--primary-light);text-decoration:none}@media (width>=768px){.app-header h1{font-size:20px}.content{padding:20px}.league-table{font-size:14px}.league-table th,.league-table td{padding:12px 10px}.match-cards{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}}
