@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap";body{min-width:320px}:root{--bg: #0d1117;--surface: #161b22;--surface-elevated: #21262d;--primary: #58a6ff;--success: #3fb950;--warning: #d29922;--text-primary: #f0f6fc;--text-secondary: #8b949e;--border: #30363d;--danger: #f85149}*{margin:0;padding:0;box-sizing:border-box}body{font-family:JetBrains Mono,Fira Code,monospace;background:var(--bg);color:var(--text-primary);font-size:14px;line-height:1.5;min-height:100vh}#root{max-width:800px;margin:0 auto;padding:24px;text-align:left}.app{display:flex;flex-direction:column;gap:24px;min-height:calc(100vh - 48px)}.header{text-align:center;padding:16px 0}.header h1{font-size:28px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.tab-nav{display:flex;gap:4px;background:var(--surface);padding:4px;border-radius:8px}.tab-button{flex:1;padding:12px 16px;background:transparent;border:none;color:var(--text-secondary);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;border-radius:6px;transition:all .15s ease}.tab-button:hover{color:var(--text-primary);background:var(--surface-elevated)}.tab-button.active{background:var(--primary);color:var(--bg)}.main{flex:1}.section{background:var(--surface);padding:24px;border-radius:8px;box-shadow:0 4px 12px #0006}.section h2{font-size:20px;font-weight:600;margin-bottom:20px;color:var(--text-primary)}.section h3{font-size:14px;font-weight:600;margin-bottom:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.add-player-form{display:flex;gap:12px;margin-bottom:20px}.text-input,.select-input,.score-input{flex:1;padding:12px 16px;background:var(--surface-elevated);border:1px solid var(--border);border-radius:6px;color:var(--text-primary);font-family:inherit;font-size:14px;transition:border-color .15s ease}.text-input:focus,.select-input:focus,.score-input:focus{outline:none;border-color:var(--primary)}.select-input{cursor:pointer}.btn{padding:12px 20px;border:none;border-radius:6px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:var(--bg)}.btn-primary:hover{filter:brightness(1.1)}.btn-secondary{background:var(--surface-elevated);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(1.1)}.btn-small{padding:6px 12px;font-size:12px}.btn-full{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.player-list{display:flex;flex-direction:column;gap:8px}.player-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--surface-elevated);border-radius:6px}.player-name{font-weight:500}.empty-text{color:var(--text-secondary);font-style:italic}.error-text{color:var(--danger);font-size:12px;margin-top:8px}.success-text{color:var(--success);font-size:12px;margin-top:8px}.match-form{display:flex;flex-direction:column;gap:20px}.team-section{display:flex;flex-direction:column;gap:12px}.player-selects{display:flex;gap:12px}.player-selects .select-input{flex:1}.score-inputs{display:flex;align-items:center;justify-content:center;gap:16px;padding:8px 0}.score-input{width:80px;text-align:center;font-size:24px;font-weight:700}.score-divider{font-size:24px;font-weight:700;color:var(--text-secondary)}.leaderboard{display:flex;flex-direction:column;gap:4px}.leaderboard-header{display:grid;grid-template-columns:40px 1fr 60px 60px 60px;gap:8px;padding:8px 12px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.leaderboard-row{display:grid;grid-template-columns:40px 1fr 60px 60px 60px;gap:8px;padding:12px;background:var(--surface-elevated);border-radius:6px;align-items:center;transition:all .15s ease}.leaderboard-row.leader{background:linear-gradient(135deg,#58a6ff26,#58a6ff0d);border:1px solid rgba(88,166,255,.3);box-shadow:0 0 20px #58a6ff1a}.col-rank{font-weight:700;color:var(--text-secondary)}.leader .col-rank{color:var(--warning)}.col-name{font-weight:500}.col-points{font-weight:600;color:var(--primary);text-align:right}.col-games{color:var(--text-secondary);text-align:right}.col-diff{font-weight:600;text-align:right}.col-diff.positive{color:var(--success)}.col-diff.negative{color:var(--danger)}.match-list{display:flex;flex-direction:column;gap:12px}.match-card{display:flex;justify-content:space-between;align-items:center;padding:16px;background:var(--surface-elevated);border-radius:6px}.match-teams{display:flex;align-items:center;gap:12px;flex:1}.team{font-weight:500;color:var(--text-secondary)}.team.winner{color:var(--success);font-weight:600}.match-score{font-size:18px;font-weight:700;color:var(--text-primary);padding:4px 12px;background:var(--surface);border-radius:4px}.footer{padding:16px 0;border-top:1px solid var(--border)}.reset-controls{display:flex;justify-content:center;gap:12px}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh;color:var(--text-secondary)}@media(max-width:600px){#root{padding:16px}.header h1{font-size:24px}.tab-button{padding:10px 8px;font-size:12px}.section{padding:16px}.player-selects{flex-direction:column}.leaderboard-header,.leaderboard-row{grid-template-columns:32px 1fr 50px 50px 50px;font-size:12px}.match-teams{flex-direction:column;align-items:flex-start;gap:4px}.match-score{font-size:14px}.reset-controls{flex-direction:column}.reset-controls .btn{width:100%}}
