.schedule-filter-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;font-family:Rajdhani,sans-serif;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:all .2s ease}.schedule-filter-chip:hover{border-color:var(--racing-yellow);color:var(--text-primary)}.schedule-filter-chip:active{transform:scale(.97)}.schedule-filter-chip:focus-visible{outline:2px solid #fbbf24;outline-offset:2px}.schedule-filter-chip.active{background:var(--racing-navy);border-color:var(--racing-navy);color:var(--racing-yellow)}.schedule-grid{display:flex;flex-direction:column;gap:.5rem;contain:layout}.schedule-race-card{display:grid;grid-template-columns:48px 64px 1fr auto;gap:1rem;align-items:center;padding:1rem 1.25rem 1rem 1.5rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;position:relative;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;contain:layout style}.schedule-card-stripe{position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:6px 0 0 6px;background:var(--border-color);transition:all .2s ease}.schedule-race-card.upcoming .schedule-card-stripe{background:linear-gradient(180deg,var(--racing-green) 0%,#059669 100%)}.schedule-race-card.completed .schedule-card-stripe{background:var(--text-muted);opacity:.4}.schedule-race-card.playoff .schedule-card-stripe{background:linear-gradient(180deg,var(--racing-yellow) 0%,var(--sponsor-gold) 100%);width:5px}.schedule-race-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--racing-yellow)}.schedule-race-card:hover .schedule-card-stripe{width:5px}.schedule-race-number{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:linear-gradient(135deg,var(--racing-navy) 0%,#1a3a5c 100%);border-radius:4px;color:#fff;position:relative}.schedule-race-card.completed .schedule-race-number{background:var(--section-bg);color:var(--text-muted)}.schedule-date-block{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem;background:var(--section-bg);border-radius:4px;min-width:64px}.schedule-date-month{font-family:Rajdhani,sans-serif;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--racing-red)}.schedule-date-day{font-family:Orbitron,monospace;font-size:1.5rem;font-weight:800;line-height:1;color:var(--text-primary)}.schedule-race-card.completed .schedule-date-month{color:var(--text-muted)}.schedule-race-card.completed .schedule-date-day{color:var(--text-secondary)}.schedule-race-info{min-width:0;flex:1}.schedule-race-name{font-family:Bebas Neue,sans-serif;font-size:1.25rem;color:var(--text-primary);line-height:1.1;letter-spacing:.02em;margin-bottom:.25rem;transition:color .2s ease}.schedule-race-card:hover .schedule-race-name{color:var(--racing-yellow-text)}.schedule-race-card.completed .schedule-race-name{color:var(--text-secondary)}.schedule-race-details{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.schedule-track-link{font-family:Rajdhani,sans-serif;font-size:.8rem;font-weight:600;color:var(--text-secondary);text-decoration:none;transition:color .2s ease}.schedule-track-link:hover{color:var(--racing-yellow-text);text-decoration:underline}.schedule-track-link:focus-visible{outline:2px solid #fbbf24;outline-offset:2px;border-radius:2px}.schedule-race-meta{font-size:.75rem;color:var(--text-muted)}.schedule-playoff-badge{font-family:Rajdhani,sans-serif;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.125rem .5rem;background:var(--racing-yellow);color:#000;border-radius:2px}.schedule-exhibition-badge{font-family:Rajdhani,sans-serif;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;padding:.125rem .5rem;background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;border-radius:2px}.schedule-race-number.exhibition{background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#ffffffe6}.schedule-race-card.completed .schedule-race-number.exhibition{background:linear-gradient(135deg,#8b5cf64d,#6d28d94d);color:var(--text-muted)}.schedule-race-card.exhibition .schedule-card-stripe{background:linear-gradient(180deg,#8b5cf6,#6d28d9)}.schedule-race-card.exhibition.completed .schedule-card-stripe{background:#8b5cf6;opacity:.3}.schedule-track-type-badge{font-family:Rajdhani,sans-serif;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .375rem;border-radius:2px;background:var(--track-default-bg);color:var(--track-default-text)}.schedule-track-type-badge.superspeedway{background:var(--track-superspeedway-bg);color:var(--track-superspeedway-text)}.schedule-track-type-badge.intermediate{background:var(--track-intermediate-bg);color:var(--track-intermediate-text)}.schedule-track-type-badge.short_track{background:var(--track-short-track-bg);color:var(--track-short-track-text)}.schedule-track-type-badge.road_course{background:var(--track-road-course-bg);color:var(--track-road-course-text)}.schedule-race-action{display:flex;align-items:center;justify-content:flex-end;min-width:100px}.schedule-results-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;font-family:Bebas Neue,sans-serif;font-size:.9rem;letter-spacing:.1em;background:linear-gradient(135deg,var(--racing-yellow) 0%,#ff8c00 100%);color:#000;border-radius:4px;text-decoration:none;transition:all .2s ease;box-shadow:0 2px 4px #ffc90733}.schedule-results-btn:hover{transform:translate(2px);box-shadow:0 4px 8px #ffc9074d}.schedule-results-btn:active{transform:scale(.97)}.schedule-results-btn:focus-visible{outline:2px solid #fbbf24;outline-offset:2px}.schedule-upcoming-label{display:inline-flex;align-items:center;gap:.375rem;font-family:Rajdhani,sans-serif;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--racing-green-text)}.schedule-upcoming-dot{width:8px;height:8px;background:var(--racing-green);border-radius:50%;animation:pulse 2s infinite;will-change:opacity}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.schedule-completed-label{font-family:Rajdhani,sans-serif;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}@media(max-width:768px){.schedule-race-card{grid-template-columns:40px 56px 1fr;gap:.75rem;padding:.875rem 1rem .875rem 1.25rem}.schedule-race-number{width:40px;height:40px}.schedule-race-number span{font-size:1rem}.schedule-date-block{min-width:56px;padding:.375rem}.schedule-date-day{font-size:1.25rem}.schedule-race-name{font-size:1.1rem}.schedule-race-action{grid-column:1 / -1;justify-content:flex-start;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-color)}}@media(max-width:480px){.schedule-filter-chip{padding:.375rem .75rem;font-size:.7rem}.schedule-race-card{grid-template-columns:40px 1fr}.schedule-date-block{display:none}.schedule-race-details{flex-direction:column;align-items:flex-start;gap:.25rem}}@media(prefers-reduced-motion:reduce){.schedule-upcoming-dot{animation:none}.schedule-race-card:hover,.schedule-results-btn:hover{transform:none}}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px}.stat-icon{font-size:1.75rem}.stat-content{display:flex;flex-direction:column}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}
