.race-hub-page{max-width:1160px;margin:0 auto;padding:22px;display:grid;gap:18px}.race-hero{padding:18px;display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.race-hero h1{margin:0;font-size:clamp(1.9rem,4vw,3rem);line-height:1;color:var(--color-text-strong)}.race-tabs,.race-filter-row{display:flex;gap:8px;flex-wrap:wrap}.race-tabs{padding:14px;border-bottom:1px solid var(--color-border)}.race-tabs button,.race-filter-row button{border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;font-weight:700;padding:8px 12px}.race-tabs button.is-active,.race-filter-row button.is-active{color:var(--color-accent-600);background:rgba(var(--brand-rgb),.12);border-color:rgba(var(--brand-rgb),.28)}.race-filter-panel{display:grid;gap:12px}.country-filter-row{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;padding:10px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface)}.country-filter-control{display:grid;gap:5px;min-width:min(100%,260px)}.country-filter-control span,.race-result-count{color:var(--color-text-muted);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.country-filter-control input{width:100%;border:1px solid var(--color-border);border-radius:10px;padding:9px 11px;background:var(--color-surface-elevated);color:var(--color-text-strong);font:inherit}.race-result-count{align-self:center;margin-left:auto}.race-tab-panel{padding:16px;display:grid;gap:14px}.race-list{display:grid;gap:12px}.race-card{border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}.race-card h3{margin:0;color:var(--color-text-strong);font-size:1rem}.race-card p{margin:6px 0 0;color:var(--color-text-muted);font-size:.9rem}.race-card-title-row{display:flex;align-items:center;gap:8px;justify-content:space-between}.race-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.race-chip{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:999px;padding:4px 8px;color:var(--color-text-muted);font-size:.75rem;font-weight:800;white-space:nowrap}.race-chip--urgent{color:var(--state-warning);border-color:#b453094d;background:var(--state-warning-bg)}.race-muted{color:var(--color-text-muted)}.race-reminder,.local-add-card,.empty-state,.locked-card,.loading-state{border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);padding:16px}.race-reminder{display:flex;align-items:center;justify-content:space-between;gap:12px;border-color:#b4530957;background:var(--state-warning-bg)}.local-add-card{display:grid;gap:4px;text-decoration:none;border-style:dashed}.local-add-card strong,.empty-state h2,.locked-card h2{color:var(--color-text-strong);margin:0}.local-add-card span,.empty-state p,.locked-card p{color:var(--color-text-muted);margin:6px 0 0}.pc-btn{border:1px solid var(--color-border);border-radius:10px;padding:8px 12px;font-size:.84rem;font-weight:800;cursor:pointer;text-decoration:none;color:var(--color-text-strong);background:var(--color-surface)}.pc-btn--primary{color:var(--text-inverse);border-color:transparent;background:linear-gradient(130deg,var(--brand-600),var(--brand-700))}.pc-btn--danger{color:var(--state-danger);background:var(--state-danger-bg);border-color:#b423183d}.inline-link{display:inline-block;margin-top:6px;color:var(--color-accent-600);text-decoration:none;font-weight:700}.race-dialog{border:none;border-radius:18px;padding:0;max-width:640px;width:min(92vw,640px);background:transparent}.race-dialog::backdrop{background:#02061794}.race-dialog-card{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:18px;padding:18px;color:var(--color-text-strong);display:grid;gap:14px}.race-dialog-card header{display:flex;justify-content:space-between;gap:12px}.race-dialog-card h2{margin:0}.dialog-close{width:34px;height:34px;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;font-size:1.2rem}.match-note{border:1px solid rgba(var(--brand-rgb),.24);border-radius:12px;padding:10px 12px;color:var(--color-accent-600);background:rgba(var(--brand-rgb),.1);font-weight:700}.bike-picker{display:grid;gap:8px}.bike-choice{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--color-border);border-radius:12px;padding:10px;background:var(--color-surface)}.bike-choice span{display:grid;gap:3px}.bike-choice small{color:var(--color-text-muted)}.race-dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.lock-icon{width:42px;height:42px;border-radius:999px;display:grid;place-items:center;background:rgba(var(--brand-rgb),.12);margin-bottom:10px}@media(max-width:720px){.race-hero,.race-card,.race-reminder{grid-template-columns:1fr;display:grid}.race-card-actions{justify-content:flex-start}.race-result-count{width:100%;margin-left:0}}
