:root{--color-black:#0a0a0a;--color-white:#fff;--color-gray-900:#111827;--color-gray-700:#374151;--color-gray-500:#6b7280;--color-gray-300:#d1d5db;--color-gray-100:#f3f4f6;--color-red-600:#dc2626;--color-red-700:#b91c1c;--color-red-100:#fee2e2;--bg:var(--color-gray-100);--surface:var(--color-white);--border:var(--color-gray-300);--text:var(--color-black);--text-muted:var(--color-gray-500);--primary:var(--color-black);--accent:var(--color-red-600);--danger:var(--color-red-600);--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--radius:10px}.ui-button{border-radius:var(--radius);cursor:pointer;background:var(--primary);color:var(--color-white);border:none;padding:.6rem 1rem;font-weight:600}.ui-button--accent{background:var(--accent)}.ui-button--ghost{color:var(--text);border:1px solid var(--border);background:0 0}.ui-button--danger{color:var(--danger);border:1px solid var(--danger);background:0 0}.ui-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.ui-input{border-radius:var(--radius);border:1px solid var(--border);width:100%;font-size:var(--text-base);padding:.5rem .6rem}.ui-leaderboard{flex-direction:column;gap:.5rem;display:flex}.ui-leaderboard-header{font-size:var(--text-sm);color:var(--text-muted);grid-template-columns:40px 1fr 80px 90px;padding:.4rem .75rem;display:grid}.ui-leaderboard-row{grid-template-columns:40px 1fr 80px 90px;align-items:center;display:grid}.ui-leaderboard-rank{font-weight:600}.ui-leaderboard-rank--top{color:var(--accent)}.ui-leaderboard-points{font-size:var(--text-lg);color:var(--accent);text-align:right;font-weight:700}@media (max-width:640px){.ui-leaderboard-header{display:none}.ui-leaderboard-row{grid-template-columns:1fr auto;row-gap:.25rem}.ui-leaderboard-rank{display:none}}.ui-match-list{flex-direction:column;gap:.5rem;display:flex}.ui-match-row{grid-template-columns:1fr auto;align-items:center;gap:.75rem;display:grid}.ui-match-main{flex-direction:column;gap:.25rem;display:flex}.ui-match-teams{font-weight:600}.ui-match-time{font-size:var(--text-sm);color:var(--text-muted)}.ui-match-actions{gap:.5rem;display:flex}@media (max-width:640px){.ui-match-row{grid-template-columns:1fr}.ui-match-actions{justify-content:flex-start}}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.leaderboard{margin-top:2rem}.leaderboard__table{border-collapse:collapse;width:100%}.leaderboard__table th,.leaderboard__table td{border-bottom:1px solid #e5e7eb;padding:.5rem .75rem}.leaderboard__table th{text-align:left;font-weight:600}.leaderboard__row:hover{background:#f9fafb}.right{text-align:right}.match-card{background:#fff;border-radius:8px;margin-bottom:1rem;padding:1rem;box-shadow:0 1px 3px #00000014}.match-header{white-space:nowrap;flex-wrap:nowrap;justify-content:center;align-items:center;gap:12px;font-weight:600;display:inline-flex}.team{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.team img{object-fit:contain;width:28px;height:28px}.dash{opacity:.5}.match-time{color:#6b7280;margin-top:4px;font-size:.8rem}.team-logo{object-fit:contain;flex-shrink:0;width:28px;max-width:28px;height:28px;max-height:28px;overflow:hidden}.team-logo-box{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.team-logo-box img{object-fit:contain;width:100%;height:100%;display:block}.team-name{font-weight:600}.match-separator{opacity:.6}.match-card__header{flex-wrap:nowrap;justify-content:center;align-items:center;gap:12px;display:flex}.match-card__team{white-space:nowrap;align-items:center;gap:6px;display:flex}.match-card__logo{object-fit:contain;flex-shrink:0;width:24px;height:24px}.match-card__name{font-weight:600}.match-card__separator{opacity:.6}.match-header img{object-fit:contain!important;width:28px!important;max-width:28px!important;height:28px!important;max-height:28px!important;display:inline-block!important}.team-name-mobile{display:none}@media (max-width:768px){.team-name-desktop{display:none}.team-name-mobile{display:inline}}
