.race-calendar *{background-color:transparent;font-family:Arial,sans-serif}
.race-calendar{max-width:640px;margin:24px auto;padding:16px;background:#fff;border:1px solid #dce4df;border-radius:16px;color:#183b2d;box-sizing:border-box}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.calendar-heading h2{font-size:1.3rem;margin:0}.calendar-heading a{padding:6px 16px;font-size:2rem;color:#14633d}.race-calendar table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:4px}.race-calendar th{font-size:.85rem;padding:8px 0}.race-calendar td{text-align:center;border-radius:8px;height:48px}.race-calendar td a,.race-calendar td>span{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;color:#183b2d;text-decoration:none}.race-calendar td small{font-size:.65rem}.race-calendar .past{background:#fbe5e5}.race-calendar .soon{background:#fff3cb}.race-calendar .future{background:#def1e3}.race-calendar .selected{outline:2px solid #14633d;outline-offset:1px}.race-calendar a:focus-visible{outline:3px solid #193c84;border-radius:6px}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px;font-size:.75rem}.calendar-legend span{padding:5px 8px;border-radius:5px}.calendar-help{font-size:.8rem;margin:8px 0 0}.calendar-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media(max-width:480px){.race-calendar{margin:16px 8px;padding:10px}.calendar-heading h2{font-size:1.1rem}.race-calendar table{border-spacing:2px}}
