*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f4f6fb;color:#1e293b}button{cursor:pointer}.app-shell{max-width:1040px;margin:0 auto;padding:28px 24px 40px}.page-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:center;margin-bottom:24px}.page-header h1{margin:0;font-size:2.15rem;letter-spacing:-.03em}.page-header p{margin:8px 0 0;color:#475569}.header-actions{display:flex;align-items:center;gap:16px}.action-button{padding:10px 16px;background:#f0f4ff;border:1px solid rgba(99,102,241,.2);border-radius:8px;color:#4f46e5;text-decoration:none;font-size:.95rem;font-weight:500;transition:all .2s;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.action-button:hover{background:#e0e7ff;border-color:#6366f166}.card,.match-card{background:#fff;border-radius:22px;box-shadow:0 18px 40px #0f172a14;padding:24px;margin-bottom:20px}.refresh-card{padding:20px}.refresh-row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.stat-card,.top-participants-card{background:#eef2ff;border-radius:20px;padding:20px}.stat-card{box-shadow:inset 0 0 0 1px #4338ca14}.stat-label{display:block;margin-bottom:8px;color:#475569;font-size:.95rem}.stat-card strong{display:block;font-size:1.75rem;color:#111827}.top-participants-card h2{margin:0 0 4px;font-size:1.15rem}.top-participants-title p{margin:0;color:#475569}.top-participants-card ol{margin:16px 0 0;padding-left:20px;color:#1e293b}.top-participants-card li{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;font-weight:600}.participant-stats{color:#475569;font-size:.95rem;font-weight:500}.legend-card{padding:20px;border:1px solid rgba(99,102,241,.15)}.legend-title{margin:0 0 10px;font-size:1rem;font-weight:700;color:#1e293b}.legend-row{display:flex;align-items:center;gap:10px;margin-bottom:10px;color:#475569}.legend-chip{width:18px;height:18px;border-radius:999px;display:inline-block}.exact-chip{background:#c7d2fe}.result-chip{background:#a7f3d0}.high-chip{background:#fde68a}.predictions-table tr.exact-score{background:#6366f114}.predictions-table tr.correct-result{background:#10b98114}.predictions-table tr.high-score td{font-weight:700}@media(max-width:920px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.stats-grid,.filter-row{grid-template-columns:1fr}}.filter-card label{display:grid;gap:8px;font-weight:600;color:#334155}.match-card-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.match-card-header h2{margin:0;font-size:1.3rem}.match-card-header p{margin:6px 0 0;color:#64748b}.match-status{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:flex-end}.score{font-weight:700;color:#111827}.predictions-table{width:100%;border-collapse:collapse;margin-top:4px}.predictions-table th,.predictions-table td{text-align:left;padding:14px 16px;border-bottom:1px solid #e2e8f0}.predictions-table th{font-weight:700;color:#334155;background:#f8fafc}.points-column{text-align:right}.badge{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#eef2ff;color:#4338ca;border-radius:999px;padding:8px 14px;font-size:.875rem}input,select{padding:12px 14px;border:1px solid #cbd5e1;border-radius:14px;width:100%;font:inherit;background:#f8fafc}input:focus,select:focus{outline:none;border-color:#818cf8;box-shadow:0 0 0 4px #818cf829}.primary-button{padding:12px 20px;background:#4338ca;color:#fff;border:none;border-radius:14px;font-weight:700;transition:transform .2s ease,background .2s ease}.primary-button:hover{background:#3730a3;transform:translateY(-1px)}.hint{margin:12px 0 0;color:#64748b}.alert{margin:0;padding:18px 20px;border-radius:16px;background:#fef3c7;color:#92400e}.loading{margin:0;color:#2563eb;font-weight:700}@media(max-width:720px){.filter-row,.match-card-header{grid-template-columns:1fr;align-items:stretch}.points-column{text-align:left}}
