.chronostar-pace-time { white-space: nowrap; }
.chronostar-pace-chart-popover { box-sizing: border-box; }
.chronostar-pace-chart-button {
    display: inline-grid;
    width: 28px;
    height: 28px;
    margin-left: 7px;
    padding: 0;
    vertical-align: middle;
    place-items: center;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    background: #fff;
    color: #475569;
    cursor: pointer;
}
.chronostar-pace-chart-button:hover, .chronostar-pace-chart-button:focus-visible, .chronostar-pace-chart-button[aria-expanded="true"] { border-color: #94a3b8; background: #f8fafc; color: #334155; }
.chronostar-pace-chart-button:focus-visible { outline: 2px solid #94a3b8; outline-offset: 2px; }
.chronostar-pace-chart-button-alert { border-color: var(--chronostar-pace-alert-color); color: var(--chronostar-pace-alert-color); }
.chronostar-pace-chart-button-alert:hover, .chronostar-pace-chart-button-alert:focus-visible, .chronostar-pace-chart-button-alert[aria-expanded="true"] { border-color: var(--chronostar-pace-alert-color); background: #fff7ed; color: var(--chronostar-pace-alert-color); }
.chronostar-pace-chart-button-alert:focus-visible { outline-color: var(--chronostar-pace-alert-color); }
.chronostar-pace-chart-button svg { width: 16px; height: 16px; }
.chronostar-pace-chart-popover { position: fixed; z-index: 10020; width: min(500px, calc(100vw - 18px)); max-height: min(620px, calc(100vh - 18px)); overflow: auto; padding: 17px 17px 14px; border: 1px solid #cbd5e1; border-radius: 10px; background: #fff; box-shadow: 0 16px 42px rgba(15, 23, 42, .25); color: #334155; }
.chronostar-pace-chart-popover[hidden] { display: none; }
.chronostar-pace-chart-header { display: flex; align-items: flex-start; gap: 10px; padding-right: 24px; }
.chronostar-pace-chart-title { margin: 0; color: #1f2937; font-size: 18px; line-height: 1.25; }
.chronostar-pace-chart-athlete { margin: 3px 0 0; color: #64748b; font-size: 12px; }
.chronostar-pace-chart-alert { margin: 9px 0 0; color: #b45309; font-size: 12px; font-weight: 600; line-height: 1.35; }
.chronostar-pace-chart-close { position: absolute; top: 8px; right: 8px; display: grid; width: 30px; height: 30px; padding: 0; place-items: center; border: 0; border-radius: 50%; background: transparent; color: #475569; font-size: 24px; line-height: 1; cursor: pointer; }
.chronostar-pace-chart-close:hover, .chronostar-pace-chart-close:focus-visible { background: #fff1e6; color: #b45309; }
.chronostar-pace-chart-close:focus-visible { outline: 2px solid #ef7d00; outline-offset: 1px; }
.chronostar-pace-chart-group { margin-top: 14px; }
.chronostar-pace-chart-unit { margin: 0 0 5px 102px; color: #64748b; font-size: 11px; font-weight: 700; }
.chronostar-pace-chart-svg { display: block; width: 100%; height: auto; overflow: visible; }
.chronostar-pace-chart-axis, .chronostar-pace-chart-tick { stroke: #94a3b8; stroke-width: 1; }
.chronostar-pace-chart-tick-text, .chronostar-pace-chart-label, .chronostar-pace-chart-value { fill: #334155; font: 11px Inter, ui-sans-serif, system-ui, sans-serif; }
.chronostar-pace-chart-label { text-anchor: end; }
.chronostar-pace-chart-tick-text { text-anchor: middle; fill: #475569; font-size: 10px; }
.chronostar-pace-chart-value { font-size: 10px; }
.chronostar-pace-chart-bar-normal { fill: #a3a3a3; }
.chronostar-pace-chart-bar-flagged { fill: #f97316; }
.chronostar-pace-chart-missing-note { fill: #64748b; font: italic 10px Inter, ui-sans-serif, system-ui, sans-serif; }
.chronostar-pace-chart-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px 17px; margin-top: 7px; color: #475569; font-size: 10px; }
.chronostar-pace-chart-legend span { display: inline-flex; align-items: center; gap: 5px; }
.chronostar-pace-chart-key { width: 20px; height: 9px; background: #a3a3a3; }
.chronostar-pace-chart-key.flagged { background: #f97316; }
.chronostar-pace-chart-key.missing { background: repeating-linear-gradient(-45deg, #f97316 0 4px, #fff 4px 7px); border: 1px solid #f97316; }
.chronostar-pace-chart-gun-note, .chronostar-pace-chart-empty { margin: 10px 0 0; color: #64748b; font-size: 11px; line-height: 1.4; }
@media (max-width: 460px) { .chronostar-pace-chart-popover { padding: 14px 10px 12px; } .chronostar-pace-chart-title { font-size: 16px; } .chronostar-pace-chart-unit { margin-left: 84px; } }
@media print { .chronostar-pace-chart-button, .chronostar-pace-chart-popover { display: none !important; } }

.race-filters { display: flex; flex-wrap: wrap; gap: .65rem 1.25rem; margin: .75rem 0 1rem; }
.race-filters [role="group"] { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem; }
.race-filters span { color: #555; font-size: .85rem; font-weight: 600; }
.race-filters button { display: inline-flex; align-items: center; gap: .35rem; padding: .35rem .7rem; border: 1px solid #ccc; border-radius: 2rem; background: white; color: #333; font: inherit; font-size: .85rem; cursor: pointer; }
.race-filters button[style]::before { content: ""; width: .7em; height: .7em; background: var(--filter-color); border-radius: 50%; }
.race-filters button[aria-pressed="true"] { border-color: #814300; background: #fff0dc; color: #633700; }
.race-filter-active tr:has(> td > .select-row):not(.race-filter-match), .race-filter-empty { display: none; }
.race-filters:has(+ .race-filter-active):not(:has(+ .race-filter-active .race-filter-match)) .race-filter-empty { display: block; flex-basis: 100%; margin: 0; }
@media print { .race-filters { display: none; } }
