.event-timing-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#102535;border:1px solid #0092ff55;padding:16px 20px;margin-bottom:22px;border-radius:4px}.event-timing-bar>div{display:flex;gap:18px;align-items:center}.event-timing-bar strong{font-size:14px}.event-timing-bar #event-timing-clock{font-size:20px;font-weight:800;color:#fff;font-variant-numeric:tabular-nums}.timing-controls{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:20px 0}.timing-controls .race-class-selector{margin:0}.timing-controls label{margin:0}.timing-controls .check{display:flex;align-items:center;gap:10px}.timing-controls input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:#0092ff}.event-timing-table .status-dot{display:inline-block;margin-right:6px}.timing-flag{display:inline-block;width:25px;height:17px;transform-origin:left center;border-radius:1px;box-shadow:0 0 0 1px #ffffff33;animation:flag-breathe 2.2s ease-in-out infinite}.flag-green{background:#36cb77}.flag-white{background:#fafafa}.flag-yellow{background:#ffd44b}.flag-black{background:#050505;box-shadow:0 0 0 1px #66717d}.flag-checkered{background:conic-gradient(#fff 25%,#171717 0 50%,#fff 0 75%,#171717 0);background-size:10px 10px}@keyframes flag-breathe{0%,100%{transform:skewY(-2deg) scaleX(.99)}50%{transform:skewY(2deg) scaleX(1)}}.race-info-class{display:flex;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid #ffffff12}.race-info-class:last-child{border-bottom:0}.race-info-class strong{min-width:65px;color:#0092ff}.race-info-class span{color:#eceff3}.race-info-actions{display:flex;gap:10px;flex-wrap:wrap}.event-description{margin:22px 0;color:#c9cdd4;white-space:pre-wrap}@media(max-width:700px){.event-timing-bar,.event-timing-bar>div{align-items:flex-start;flex-direction:column;gap:12px}.timing-controls{gap:18px}.event-timing-table{min-width:870px}}@media(prefers-reduced-motion:reduce){.timing-flag{animation:none}}
.qual-timing-launch{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid #ffffff12}.qual-timing-launch .button{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.qual-timing-launch .button>span{color:#0092ff;font-size:20px;line-height:1}.timing-session-choice{display:flex;gap:3px;padding:3px;background:#111820;border:1px solid #ffffff16;border-radius:5px}.timing-session-choice button{padding:8px 12px;border:0;background:transparent;color:#aab5c2;font-size:12px}.timing-session-choice button.active{background:#0092ff25;color:#fff;box-shadow:inset 0 -2px #0092ff}.qualifying-timing-prompt{position:fixed;right:24px;bottom:24px;width:min(420px,calc(100vw - 32px));box-sizing:border-box;z-index:90;padding:22px;background:#171d25;border:1px solid #0092ff75;border-radius:7px;box-shadow:0 16px 60px #0008;animation:timing-prompt-enter .18s ease-out}.qualifying-timing-prompt .eyebrow{margin:0 0 7px;color:#0092ff;font-size:10px}.qualifying-timing-prompt>strong{display:block;color:#fff;font-size:17px;padding-right:20px}.qualifying-timing-prompt>p:not(.eyebrow){margin:10px 0 18px;font-size:13px;color:#b9c3ce;line-height:1.5}.timing-prompt-close{position:absolute;top:9px;right:9px;border:0;background:transparent;font-size:23px;color:#9cacbd;padding:0 7px}.timing-prompt-actions{display:flex;gap:8px;flex-wrap:wrap}.timing-prompt-actions button{font-size:12px;padding:10px 12px}.timing-prompt-actions .subtle{color:#b9c3ce}.qualifying-timing-docked{padding-right:clamp(300px,25vw,480px)}.qualifying-timing-dock{position:fixed;top:0;bottom:0;right:0;width:clamp(300px,25vw,480px);z-index:80;background:#111820;border-left:1px solid #0092ff70;box-shadow:-15px 0 45px #0005;display:flex;flex-direction:column}.qualifying-timing-dock>header{display:flex;align-items:center;gap:8px;padding:13px 12px;border-bottom:1px solid #ffffff16;background:#171f29}.qualifying-timing-dock>header>div{flex:1;display:flex;flex-direction:column;gap:3px}.qualifying-timing-dock>header strong{font-size:13px;color:#fff}.qualifying-timing-dock>header span{font-size:10px;color:#9babbd}.qualifying-timing-dock>header button{width:30px;height:30px;padding:0;color:#0092ff;font-size:18px}.qualifying-timing-dock>iframe{flex:1;width:100%;min-height:0;border:0;background:#10151b}.event-timing-compact>.topline,.event-timing-compact>.site-header,.event-timing-compact>#race-strip,.event-timing-compact>footer,.event-timing-compact>#community{display:none}.event-timing-compact #main{width:100%;max-width:none;padding:12px;box-sizing:border-box;min-height:100vh}.event-timing-compact .timing-back-link,.event-timing-compact .server-section-links{display:none}.event-timing-compact .race-page-heading{margin:12px 0 16px;padding:0}.event-timing-compact .race-page-heading h1{font-size:24px}.event-timing-compact .race-page-heading .eyebrow{display:none}.event-timing-compact .timing-controls{gap:12px;margin:14px 0}.event-timing-compact .event-timing-bar{padding:12px;margin-bottom:14px;gap:10px}.event-timing-compact .panel-body{padding:10px}.qualifying-timing-window-controls{display:flex;align-items:center;gap:7px;padding-bottom:10px;border-bottom:1px solid #ffffff16}.qualifying-timing-window-controls strong{font-size:10px;color:#0092ff;letter-spacing:.08em;flex:1}.qualifying-timing-window-controls button{font-size:11px;padding:7px 9px}.event-timing-dock-view .event-timing-table{min-width:0;font-size:11px}.event-timing-dock-view .event-timing-table :is(th,td):is(:nth-child(1),:nth-child(3),:nth-child(4),:nth-child(5),:nth-child(8),:nth-child(9),:nth-child(10)){display:none}.event-timing-dock-view .event-timing-table :is(th,td){padding:9px 6px}.event-timing-dock-view .event-timing-bar>div{align-items:flex-start;flex-direction:column;gap:7px}.event-timing-dock-view .event-timing-bar #event-timing-clock{font-size:12px}.event-timing-dock-view .race-class-selector button{padding:7px 13px}.event-timing-dock-view .timing-updated{font-size:10px;line-height:1.5}.event-timing-dock-view .race-page-heading h1{font-size:19px}.event-timing-dock-view .race-page-heading>p{font-size:11px}@keyframes timing-prompt-enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(max-width:760px){.qualifying-timing-docked{padding-right:0}.qualifying-timing-dock{width:100%;z-index:100}.qualifying-timing-prompt{right:16px;bottom:16px}.qual-timing-launch{align-items:flex-start}.qual-timing-launch .form-help{font-size:11px}.qualifying-timing-prompt .timing-prompt-actions{gap:6px}}@media(prefers-reduced-motion:reduce){.qualifying-timing-prompt{animation:none}}
.event-timing-dock-view .qualifying-timing-window-controls{display:none}

.event-timing-table .timing-ineligible{background:#7b25253d;box-shadow:inset 3px 0 #ef6c6c}.event-timing-table .timing-ineligible td{color:#ff9e9e;border-bottom-color:#d8545435}.event-timing-table .timing-ineligible a{color:#ff9e9e}.event-timing-table .timing-ineligible:hover{background:#7b25255c}.timing-entry-legend{display:flex;align-items:center;gap:9px;color:#b7bec8;font-size:12px;line-height:1.6;margin:0 0 14px}.timing-entry-legend>span{flex-shrink:0;width:9px;height:9px;background:#ef6c6c;border-radius:2px}.event-timing-table{table-layout:auto}.event-timing-table [data-timing-column="rider"]{min-width:170px}.event-timing-table [data-timing-column="flag"]{width:28px}.event-timing-table :is([data-timing-column="best"],[data-timing-column="last"],[data-timing-column="server"]){white-space:nowrap;font-variant-numeric:tabular-nums}
.event-timing-dock-view .event-timing-table :is(th,td)[data-timing-column]{display:none}.event-timing-dock-view .event-timing-table :is(th,td):is([data-timing-column="position"],[data-timing-column="rider"],[data-timing-column="best"]){display:table-cell}.event-timing-dock-view .event-timing-table[data-timing-mode="qualifying"] :is(th,td)[data-timing-column="server"],.event-timing-dock-view .event-timing-table[data-timing-mode="race"] :is(th,td)[data-timing-column="laps"]{display:table-cell}.event-timing-dock-view .event-timing-table [data-timing-column="rider"]{min-width:100px}.event-timing-dock-view .timing-entry-legend{font-size:10px;align-items:flex-start;gap:6px}.event-timing-dock-view .timing-entry-legend>span{margin-top:4px}
.event-info-timing{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid #ffffff12}.event-info-timing>.form-help{color:#a9b5c3;margin:0 8px 0 0;font-size:12px}.event-info-timing .button{display:inline-flex;align-items:center;gap:8px;font-size:12px}.event-info-timing .button>span{color:#0092ff;font-size:18px;line-height:1}@media(max-width:600px){.event-info-timing>.form-help{flex-basis:100%;margin:0 0 2px}.event-info-timing .button{flex:1;justify-content:center;min-width:150px}}
.qualifying-window.is-closed{color:#ff9298;border-color:#f06b7266;background:#f06b7214}
.race-cutoff-closed .race-class-selector button.active{color:#fff;border-color:#0092ff;background:#0092ff25}
.race-cutoff-closed .race-list-heading .chip.bad{color:#ffa6ac;border-color:#f06b7266;background:#f06b7218}

.race-info-class{gap:18px;align-items:baseline;padding:10px 0}.race-info-class strong{min-width:58px;flex-shrink:0;padding:4px 9px;border:1px solid #0092ff55;border-radius:3px;background:#0092ff12;text-align:center;font-size:13px}.race-info-class span{font-size:13px;line-height:1.7}

.nck-live-timing .nck-timing-improvement{color:#55e693;font-weight:700}.nck-timing-improvement small{font-size:10px;margin-left:3px;letter-spacing:.5px}

/* Keep team artwork and no-team placeholders on the same column centre. */
.race-table:is(.entry-table,.qualifying-table) :is(th,td):nth-child(3){text-align:center;vertical-align:middle}
.race-table:is(.entry-table,.qualifying-table) td:nth-child(3) .rider-team{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;max-width:100%}
.race-table:is(.entry-table,.qualifying-table) td:nth-child(3) .quali-team-logo{display:block;object-fit:contain;width:60px;max-width:100%;height:23px;margin:0;padding:0}
/* Straight Rhythm uses labelled cards on phones; preserve that layout. */
@media(max-width:700px){.race-table.rhythm-qualifying-table :is(th,td):nth-child(3){text-align:left}}

/* Keep the race format readable within its existing info row. */
.race-format-summary{margin:0;padding-left:20px;line-height:1.6}.race-format-summary li+li{margin-top:2px}

/* Event classes read across the row; server addresses keep their own layout. */
.info-list .race-info-classes{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px}.info-list .race-info-classes .race-info-class{display:inline-flex;margin:0}
