.calendar_container__V5uBd{min-height:100vh;background:linear-gradient(135deg,#0f0f23,#1a1a2e 50%,#16213e);width:100%}.calendar_contentWrapper__JukXu{max-width:1200px;margin:0 auto;padding:24px 20px 4rem;color:#fff}.calendar_headerActions__JZIgy{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem;margin-bottom:1.5rem}.calendar_championshipsButton__rq8NU,.calendar_eventsButton__rcIJt{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,158,41,.15);color:#FF9E29;text-decoration:none;padding:.625rem 1.25rem;border:1px solid rgba(255,158,41,.3);border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;font-size:.8rem;transition:all .2s ease}.calendar_championshipsButton__rq8NU:hover,.calendar_eventsButton__rcIJt:hover{background:rgba(255,158,41,.25);border-color:rgba(255,158,41,.5);transform:translateY(-1px)}.calendar_loading__02qpT{display:flex;justify-content:center;align-items:center;padding:3rem 1.25rem;color:rgba(255,255,255,.6);font-size:.95rem;gap:.75rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:6px;margin:1.5rem 0}.calendar_spinner__chPiw{width:28px;height:28px;border:3px solid rgba(255,158,41,.2);border-top-color:#ff9e29;border-radius:50%;animation:calendar_spin__Miq__ 1s linear infinite}@keyframes calendar_spin__Miq__{to{transform:rotate(1turn)}}.calendar_calendarControls__cWiui{justify-content:space-between;margin-bottom:1.25rem;padding:1rem 1.25rem;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:6px;flex-wrap:wrap}.calendar_calendarControls__cWiui,.calendar_navigation__vMknw{display:flex;align-items:center;gap:1rem}.calendar_navButton__ExmkR{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.05);color:rgba(255,255,255,.8);border:1px solid rgba(255,255,255,.1);padding:.5rem .875rem;border-radius:4px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s ease;font-family:inherit;text-transform:uppercase;letter-spacing:.3px}.calendar_navButton__ExmkR:hover{background:rgba(255,158,41,.1);border-color:rgba(255,158,41,.3);color:#FF9E29;transform:translateY(-1px)}.calendar_monthTitle__ONhIf{font-size:1.05rem;font-weight:700;color:#fff;margin:0;text-transform:uppercase;letter-spacing:.5px;min-width:180px;text-align:center}.calendar_todayButton__xocHA{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,158,41,.15);color:#FF9E29;border:1px solid rgba(255,158,41,.3);padding:.5rem 1rem;border-radius:4px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s ease;font-family:inherit;text-transform:uppercase;letter-spacing:.3px}.calendar_todayButton__xocHA:hover{background:rgba(255,158,41,.25);border-color:rgba(255,158,41,.5);transform:translateY(-1px)}.calendar_error__Hw6Ii{text-align:center;padding:2.5rem 1.5rem;background:rgba(220,53,69,.08);border:1px solid rgba(220,53,69,.3);border-radius:6px;color:#ff6b6b;margin:1.5rem 0}.calendar_errorIcon__vax2_{display:flex;justify-content:center;margin-bottom:.75rem}.calendar_error__Hw6Ii p{margin:0 0 1rem;font-size:.9rem}.calendar_retryButton__SFcO9{background:rgba(255,158,41,.15);color:#FF9E29;border:1px solid rgba(255,158,41,.3);padding:.5rem 1.125rem;border-radius:4px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s ease;font-family:inherit;text-transform:uppercase;letter-spacing:.3px}.calendar_retryButton__SFcO9:hover{background:rgba(255,158,41,.25);border-color:rgba(255,158,41,.5)}.calendar_calendarContainer__dOb2w{display:grid;grid-template-columns:1fr 280px;grid-gap:1.25rem;gap:1.25rem}.calendar_calendar__Ayovs{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:6px;overflow:hidden}.calendar_calendarHeader__9glaJ{display:grid;grid-template-columns:repeat(7,1fr);background:rgba(255,255,255,.04)}.calendar_dayHeader__x_r4x{padding:.75rem .5rem;text-align:center;font-weight:600;color:rgba(255,255,255,.6);text-transform:uppercase;font-size:.7rem;letter-spacing:.5px;border-right:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.08)}.calendar_dayHeader__x_r4x:last-child{border-right:none}.calendar_calendarGrid__nraGj{display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,minmax(110px,auto))}.calendar_calendarDay__u_x3g{border-right:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);padding:.4rem .5rem;min-height:110px;position:relative;transition:background .15s ease}.calendar_calendarDay__u_x3g:nth-child(7n){border-right:none}.calendar_calendarDay__u_x3g:hover{background:rgba(255,255,255,.03)}.calendar_otherMonth__a4vWh{background:rgba(0,0,0,.2)}.calendar_otherMonth__a4vWh .calendar_dayNumber__jocqp{color:rgba(255,255,255,.25)}.calendar_today__CQcOA{background:rgba(255,158,41,.08);box-shadow:inset 0 0 0 1px rgba(255,158,41,.4)}.calendar_today__CQcOA .calendar_dayNumber__jocqp{color:#FF9E29}.calendar_hasRaces__Qke_A{background:rgba(255,158,41,.04)}.calendar_dayNumber__jocqp{font-weight:600;color:rgba(255,255,255,.85);margin-bottom:.4rem;font-size:.85rem}.calendar_dayRaces__1F5gu{display:flex;flex-direction:column;gap:.25rem;max-height:80px;overflow-y:auto}.calendar_dayRaces__1F5gu::-webkit-scrollbar{width:4px}.calendar_dayRaces__1F5gu::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:4px}.calendar_raceEvent__kavu0{background:rgba(255,158,41,.08);border-left:3px solid #ff9e29;padding:.4rem .5rem;border-radius:3px;cursor:pointer;transition:all .2s ease;font-size:.7rem;line-height:1.3}.calendar_raceEvent__kavu0:hover{background:rgba(255,158,41,.18);transform:translateX(2px)}.calendar_raceEvent__kavu0[data-event-type=championship]{background:rgba(52,152,219,.1);border-left-color:#3498db}.calendar_raceEvent__kavu0[data-event-type=championship]:hover{background:rgba(52,152,219,.2)}.calendar_raceEvent__kavu0[data-event-type=race]{background:rgba(255,158,41,.1);border-left-color:#FF9E29}.calendar_raceEvent__kavu0[data-event-type=unique-event]{background:rgba(255,107,53,.1);border-left-color:#ff6b35}.calendar_raceEvent__kavu0[data-event-type=unique-event]:hover{background:rgba(255,107,53,.2)}.calendar_raceTime__Q0ifg{display:inline-flex;align-items:center;gap:.2rem;color:#FF9E29;font-weight:600;margin-bottom:.125rem;font-size:.7rem}.calendar_raceName__CJdLP{color:#fff;font-weight:600;line-height:1.3;margin-bottom:.125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar_raceCircuit__8xaiR{display:inline-flex;align-items:center;gap:.2rem;color:rgba(255,255,255,.5);font-size:.65rem;margin-bottom:.2rem}.calendar_raceStatus__Dn1OT{display:inline-block;background:rgba(255,158,41,.15);color:#FF9E29;padding:.1rem .4rem;border-radius:3px;font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px;border:1px solid rgba(255,255,255,.06)}.calendar_sidebar__ZRNFW{display:flex;flex-direction:column;gap:1rem}.calendar_section__BOY22{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:1.125rem 1.25rem}.calendar_sectionTitle__cvE8d{display:flex;align-items:center;gap:.5rem;color:#fff;font-size:.85rem;font-weight:600;margin:0 0 .875rem;padding-bottom:.625rem;border-bottom:1px solid rgba(255,255,255,.06);text-transform:uppercase;letter-spacing:.5px}.calendar_sectionTitle__cvE8d svg{color:#FF9E29}.calendar_championshipLegend__Ti1VU{display:flex;flex-direction:column;gap:.5rem}.calendar_legendItem__zy06n{display:flex;align-items:center;gap:.625rem;padding:.4rem .5rem;border-radius:4px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.05)}.calendar_legendColor__D_LCk{width:12px;height:12px;border-radius:3px;flex-shrink:0}.calendar_legendLabel__iZwBs{color:rgba(255,255,255,.8);font-size:.8rem;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar_upcomingRaces__Ca9Od{display:flex;flex-direction:column;gap:.5rem}.calendar_upcomingRace__bttfi{padding:.625rem .75rem;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.06);border-radius:4px;cursor:pointer;transition:all .2s ease}.calendar_upcomingRace__bttfi:hover{background:rgba(255,158,41,.08);border-color:rgba(255,158,41,.25);transform:translateY(-1px)}.calendar_upcomingDate__XO0UQ{color:#FF9E29;font-size:.7rem;font-weight:700;margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.3px}.calendar_upcomingName__p_9Yb{color:#fff;font-weight:600;margin-bottom:.15rem;font-size:.8rem;line-height:1.3}.calendar_upcomingChampionship__FRAoe{color:rgba(255,255,255,.5);font-size:.7rem}.calendar_modal__YFRoz{position:fixed;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.calendar_modalContent__Bk59_{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(255,255,255,.1);border-radius:6px;max-width:500px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 50px rgba(0,0,0,.5)}.calendar_modalHeader__EnvgE{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.375rem;border-bottom:1px solid rgba(255,255,255,.08);gap:.75rem}.calendar_modalTitle__N7A_7{color:#fff;font-size:1rem;font-weight:700;margin:0;text-transform:uppercase;letter-spacing:.5px;flex:1 1}.calendar_closeButton__QIlU5{background:transparent;border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.5);cursor:pointer;padding:.3rem .5rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;flex-shrink:0}.calendar_closeButton__QIlU5:hover{background:rgba(255,158,41,.1);color:#FF9E29;border-color:rgba(255,158,41,.3)}.calendar_modalBody__HBjaq{padding:1.25rem 1.375rem}.calendar_modalField__RwJRf{margin-bottom:.875rem;color:rgba(255,255,255,.85);line-height:1.5;font-size:.875rem}.calendar_modalField__RwJRf:last-child{margin-bottom:0}.calendar_modalField__RwJRf strong{display:inline-flex;align-items:center;color:rgba(255,255,255,.5);margin-right:.5rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.calendar_modalIcon__ZqGWP{display:inline-flex;margin-right:.3rem;vertical-align:middle;color:#FF9E29}.calendar_modalStatus__4yskZ{display:inline-block;padding:.2rem .625rem;border-radius:4px;font-size:.65rem;font-weight:700;color:#fff;margin-left:.5rem;text-transform:uppercase;letter-spacing:.3px;border:1px solid rgba(255,255,255,.1)}.calendar_sessionsList__X7ylM{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.calendar_sessionBadge__aSblv{display:inline-flex;align-items:center;gap:.3rem;background:rgba(255,158,41,.1);color:#FF9E29;padding:.25rem .625rem;border-radius:4px;font-size:.7rem;font-weight:600;border:1px solid rgba(255,158,41,.3);text-transform:uppercase;letter-spacing:.3px}.calendar_modalActions__v8EE2{padding:1rem 1.375rem;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:.625rem;justify-content:flex-end}.calendar_viewButton__qAdOG{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,158,41,.15);color:#FF9E29;border:1px solid rgba(255,158,41,.3);padding:.5rem 1.125rem;border-radius:4px;font-weight:600;font-size:.8rem;text-decoration:none;transition:all .2s ease;font-family:inherit;text-transform:uppercase;letter-spacing:.3px}.calendar_viewButton__qAdOG:hover{background:rgba(255,158,41,.25);border-color:rgba(255,158,41,.5);transform:translateY(-1px)}.calendar_closeModalButton__NgNwq{background:rgba(255,255,255,.05);color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.1);padding:.5rem 1.125rem;border-radius:4px;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .2s ease;font-family:inherit;text-transform:uppercase;letter-spacing:.3px}.calendar_closeModalButton__NgNwq:hover{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.2)}@media (max-width:1024px){.calendar_calendarContainer__dOb2w{grid-template-columns:1fr}.calendar_sidebar__ZRNFW{order:-1}}@media (max-width:768px){.calendar_contentWrapper__JukXu{padding:1rem .875rem 3rem}.calendar_calendarControls__cWiui{flex-direction:column;gap:.75rem;padding:.875rem 1rem}.calendar_navigation__vMknw{gap:.5rem;width:100%;justify-content:space-between}.calendar_navButton__ExmkR{padding:.45rem .625rem;font-size:.7rem}.calendar_monthTitle__ONhIf{font-size:.95rem;min-width:auto}.calendar_todayButton__xocHA{width:100%;justify-content:center}.calendar_dayHeader__x_r4x{padding:.5rem .2rem;font-size:.65rem}.calendar_calendarGrid__nraGj{grid-template-rows:repeat(6,minmax(70px,auto))}.calendar_calendarDay__u_x3g{min-height:70px;padding:.25rem}.calendar_dayNumber__jocqp{font-size:.75rem;margin-bottom:.2rem}.calendar_dayRaces__1F5gu{max-height:50px;gap:.15rem}.calendar_raceEvent__kavu0{padding:.2rem .3rem;font-size:.6rem;border-left-width:2px}.calendar_raceName__CJdLP,.calendar_raceTime__Q0ifg{font-size:.6rem}.calendar_raceCircuit__8xaiR,.calendar_raceStatus__Dn1OT{display:none}.calendar_headerActions__JZIgy{margin-top:.75rem;margin-bottom:1rem}.calendar_championshipsButton__rq8NU,.calendar_eventsButton__rcIJt{flex:1 1;justify-content:center;padding:.5rem .875rem;font-size:.75rem}.calendar_modal__YFRoz{padding:.75rem}.calendar_modalHeader__EnvgE{padding:.875rem 1rem}.calendar_modalTitle__N7A_7{font-size:.9rem}.calendar_modalBody__HBjaq{padding:1rem}.calendar_modalActions__v8EE2{padding:.875rem 1rem;flex-direction:column-reverse}.calendar_closeModalButton__NgNwq,.calendar_viewButton__qAdOG{width:100%;justify-content:center}}@media (max-width:480px){.calendar_contentWrapper__JukXu{padding:1rem .5rem 3rem}.calendar_navButton__ExmkR{padding:.4rem .5rem;font-size:.65rem;gap:.25rem}.calendar_monthTitle__ONhIf{font-size:.85rem}.calendar_calendarGrid__nraGj{grid-template-rows:repeat(6,minmax(60px,auto))}.calendar_calendarDay__u_x3g{min-height:60px;padding:.2rem}.calendar_dayNumber__jocqp{font-size:.7rem}.calendar_dayRaces__1F5gu{max-height:40px}.calendar_raceEvent__kavu0{padding:.15rem .25rem;font-size:.55rem}.calendar_raceName__CJdLP{font-size:.55rem}.calendar_section__BOY22{padding:1rem}}