.race-events-list{display:grid;gap:1rem}.race-events-event-card,.race-events-panel{border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 18%,transparent);border-radius:14px;padding:1rem}.race-events-event-card h3,.race-events-panel h3{margin-top:0}.race-events-meta{opacity:.75}.race-events-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.75rem}.race-events-button,.race-events-form button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.55rem .9rem;text-decoration:none;border:1px solid currentColor;background:transparent;cursor:pointer}.race-events-form{display:grid;gap:.85rem}.race-events-form label{display:grid;gap:.35rem;font-weight:600}.race-events-form input,.race-events-form select,.race-events-form textarea{width:100%;box-sizing:border-box}.race-events-notice{border-radius:10px;padding:.75rem 1rem;margin:0 0 1rem}.race-events-notice.is-success{background:#edfaef}.race-events-notice.is-error{background:#fff0f0}.race-events-empty{opacity:.75}.race-events-results{width:100%;border-collapse:collapse}.race-events-results th,.race-events-results td{border-bottom:1px solid currentColor;border-color:color-mix(in srgb,currentColor 16%,transparent);padding:.55rem;text-align:left}.race-events-class-heading{margin-top:1.25rem}
.race-events-detail-header{margin-bottom:1rem}.race-events-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:.78em;opacity:.7;margin:0 0 .25rem}.race-events-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1rem 0}.race-events-facts div{border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 14%,transparent);border-radius:12px;padding:.75rem}.race-events-facts dt{font-size:.8em;opacity:.72}.race-events-facts dd{margin:0;font-weight:700}.race-events-description{margin-top:1rem}.race-events-class-list{display:grid;gap:.6rem;padding-left:1.2rem}.race-events-class-list li{padding:.2rem 0}

.race-events-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:999px;padding:.45rem .85rem;text-decoration:none;font-weight:600;line-height:1.2}.race-events-event-card h3 a{text-decoration:none}.race-events-event-card h3 a:hover{text-decoration:underline}
.race-events-notice.success{background:#edfaef}.race-events-notice.error{background:#fff0f0}.race-events-notice.notice{background:#fff8e5}.race-events-invite-accept{border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 14%,transparent);border-radius:14px;padding:1rem}

.race-events-list-layout-compact .race-events-event-card{padding:12px}.race-events-list-layout-compact .race-events-event-card h3{margin-bottom:.25rem}.race-events-results-wrap select{max-width:100%}.race-events-class-heading{margin-top:1.5rem}

/* 0.2.8 WordPress Interactivity API polish with vanilla fallback */
.race-events-filterbar{display:flex;gap:.75rem;flex-wrap:wrap;align-items:end;margin:0 0 1rem}.race-events-filterbar label{display:grid;gap:.3rem;font-weight:600}.race-events-filterbar select,.race-events-filterbar input{min-width:min(220px,100%);box-sizing:border-box}.race-events-result-group[hidden],.race-events-results tr[hidden],.race-events-filter-empty[hidden]{display:none!important}.race-events-class-list{display:grid;gap:.6rem;padding-left:0;list-style:none}.race-events-class-item{border:1px solid currentColor;border-color:color-mix(in srgb,currentColor 14%,transparent);border-radius:12px;overflow:hidden}.race-events-class-toggle{appearance:none;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;justify-content:space-between;gap:1rem;width:100%;padding:.75rem 1rem;text-align:left}.race-events-class-toggle:hover{text-decoration:underline}.race-events-toggle-icon{transition:transform .16s ease}.race-events-class-toggle[aria-expanded="true"] .race-events-toggle-icon{transform:rotate(180deg)}.race-events-class-panel{padding:0 1rem .85rem}.race-events-class-panel[hidden]{display:none!important}.race-events-class-capacity-hint{margin-top:-.35rem;font-size:.92em;opacity:.8}.race-events-class-capacity-hint.is-waitlist{font-weight:700}.race-events-status-card{display:grid;gap:.75rem;justify-items:start}

.race-events-app-link-card {
    align-items: center;
    background: #f8fafc;
    border: 1px solid #dbe3ea;
    border-radius: 14px;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-top: 1rem;
    padding: 1rem;
}

.race-events-app-link-card h4 {
    margin: 0 0 .35rem;
}

.race-events-app-link-card p {
    margin: .35rem 0;
}

.race-events-app-link-card code {
    display: inline-block;
    max-width: 100%;
    overflow-wrap: anywhere;
    white-space: normal;
}

.race-events-qr {
    flex: 0 0 auto;
}

.race-events-qr img {
    background: #fff;
    border-radius: 10px;
    display: block;
    padding: .35rem;
}

@media (max-width: 640px) {
    .race-events-app-link-card {
        align-items: flex-start;
        flex-direction: column;
    }
}
