/* Cross Lab: the existing Cyclenoid palette, fonts and footer. */
.cross-global-search { margin: 0 0 36px; padding-top: 6px; }
.is-detail-view .cross-global-search, .is-race-view .cross-global-search { margin-top: 26px; margin-bottom: 24px; }
.cross-global-search-field { display: flex; align-items: center; gap: 16px; padding: 0 18px; border: 1px solid #62503e; border-radius: 12px; background: #1b1a19; }
.cross-global-search-field:focus-within { border-color: var(--color-accent); box-shadow: 0 0 0 3px #f9731612; }
.cross-global-search-field svg { width: 21px; height: 21px; flex: 0 0 auto; stroke: var(--color-accent); stroke-width: 1.7; fill: none; }
.cross-page .cross-global-search-field input { min-width: 0; width: 100%; height: 62px; padding: 0; border: 0; background: transparent; color: var(--color-text); font-size: 1rem; outline: none !important; box-shadow: none; }
.cross-page .cross-global-search-field input::-webkit-search-cancel-button { -webkit-appearance: none; }
.cross-page .cross-global-search-field input::placeholder { color: #b5aba2; opacity: 1; }
.cross-page .cross-global-search-field button { flex: 0 0 44px; border: 0; background: transparent; color: var(--cross-muted); font-size: 1.6rem; }
.cross-search-suggestions { display: flex; align-items: center; flex-wrap: wrap; gap: 3px 14px; margin-top: 7px; font: .7rem var(--font-mono); color: var(--cross-muted); }
.cross-page .cross-search-suggestions button { border: 0; padding: 0; background: transparent; color: var(--cross-muted); font: inherit; min-height: 32px; text-decoration: underline; text-underline-offset: 4px; }
.cross-page .cross-search-suggestions button:hover { color: var(--color-accent); }
.cross-global-search-results { padding-top: 16px; }
.cross-search-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.cross-page .cross-search-filters button { border: 1px solid #39332e; border-radius: 7px; padding: 8px 12px; background: #19191b; color: var(--cross-muted); font: .7rem var(--font-mono); }
.cross-page .cross-search-filters button span { margin-left: 9px; opacity: .7; }
.cross-page .cross-search-filters button[aria-pressed="true"] { background: #f9731617; border-color: #f9731680; color: #ffb17d; }
.cross-search-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; list-style: none; margin: 14px 0 0; padding: 0; }
.cross-search-list li { min-width: 0; }
.cross-search-list a { display: flex; flex-direction: column; gap: 9px; height: 100%; padding: 17px 19px; border: 1px solid #34312e; border-radius: 10px; background: #19191b; text-decoration: none; }
.cross-search-list a:hover { border-color: #9c5e32; background: #211c18; }
.cross-search-hit-top { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 5px 12px; color: #ffb17d; font: .65rem/1.5 var(--font-mono); }
.cross-search-hit-top time { color: var(--cross-muted); }
.cross-search-hit-name { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-weight: 650; line-height: 1.35; overflow-wrap: anywhere; }
.cross-search-hit-name > span { flex: 0 0 auto; color: var(--color-accent); }
.cross-search-hit-meta { color: var(--cross-muted); font: .7rem/1.65 var(--font-mono); overflow-wrap: anywhere; }
@media(max-width:650px) { .cross-search-list { grid-template-columns: 1fr; } .cross-global-search-field { gap: 10px; padding: 0 12px; } .cross-page .cross-global-search-field input { height: 56px; font-size: 16px; } .cross-search-suggestions { gap: 0 12px; } .cross-search-suggestions > span { display: none; } .cross-search-filters { gap: 5px; } .cross-page .cross-search-filters button { padding: 7px 9px; } }
.cross-page { --cross-muted: #a6a3a2; background: radial-gradient(ellipse at 82% 6%, #2a1c142e, transparent 35%), var(--color-bg); }
.cross-page [hidden] { display: none !important; }
.cross-page button, .cross-page input, .cross-page select { font: inherit; }
.cross-page a { color: inherit; }
.cross-page :is(button, a, select, input, summary, [tabindex]:not([tabindex="-1"])):focus-visible { outline: 2px solid var(--color-accent); outline-offset: 5px; }
.cross-page :is(#race, #archive, #race-title):focus { outline: none; }
.cross-page :is(button, select, summary) { cursor: pointer; }
.cross-page :is(button, select, input) { min-height: 44px; }
.cross-page button:disabled, .cross-page select:disabled { opacity: .5; cursor: default; }
.cross-page .cross-muted { color: var(--cross-muted); }
.cross-small { color: var(--cross-muted); font: .72rem/1.65 var(--font-mono); }
.cross-eyebrow { color: var(--color-accent); font: .68rem/1.5 var(--font-mono); letter-spacing: .1em; }
.cross-tag { display: inline-block; padding: 3px 7px; border: 1px solid #514031; border-radius: 4px; color: #ffb17d; font: .62rem/1.4 var(--font-mono); letter-spacing: .07em; white-space: nowrap; }
.cross-page .accent { color: var(--color-accent); }
.cross-header { max-width: 1440px; margin: auto; padding: 22px 48px; display: flex; align-items: center; gap: 32px; border-bottom: 1px solid #ffffff0c; }
.cross-brand { color: var(--color-text); text-decoration: none; font: 700 .8rem/1 var(--font-display); letter-spacing: .06em; min-height: 44px; display: flex; align-items: center; }
.cross-brand span { color: #8a8787; }
.cross-nav { margin-left: auto; }
.cross-nav a { display: inline-flex; align-items: center; min-height: 44px; color: var(--cross-muted); text-decoration: none; font: .72rem var(--font-mono); }
.cross-nav a:hover { color: var(--color-accent); }
.cross-header .lang-switch { position: static; padding: 0; }
.cross-header .lang-btn { color: var(--cross-muted); }
.cross-header .lang-btn.active { color: var(--color-accent); }
.cross-skip { position: absolute; left: 20px; top: -100px; z-index: 200; padding: 14px; background: var(--color-accent); color: #111 !important; }
.cross-skip:focus { top: 8px; }
.cross-container { max-width: 1224px; margin: auto; padding: 0 48px; }
.cross-hero { display: grid; grid-template-columns: 1.3fr 1fr; align-items: center; gap: 16px; padding: 66px 0 58px; }
.cross-hero .cross-eyebrow { display: flex; align-items: center; gap: 10px; }
.cross-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--color-accent); }
.cross-hero h1 { font: 700 clamp(2.7rem, 5.35vw, 4.6rem)/1.03 var(--font-display); letter-spacing: -.052em; margin: 22px 0; }
.cross-intro { max-width: 44ch; font-size: .95rem; line-height: 1.8; color: var(--cross-muted); }
.cross-jump { display: inline-flex; align-items: center; gap: 18px; min-height: 44px; margin-top: 20px; color: var(--color-accent) !important; text-decoration: none; font: .75rem var(--font-mono); }
.cross-jump:hover { gap: 24px; }
.cross-hero-actions { display: flex; flex-wrap: wrap; gap: 0 28px; }
.cross-art { transform: rotate(-5deg); }
.cross-art svg { width: 100%; display: block; }
.cross-race { scroll-margin-top: 22px; }
.cross-section-line { display: flex; justify-content: space-between; gap: 16px; padding: 20px 0; border-top: 1px solid var(--color-border); }
.cross-section-line > .cross-small { text-align: right; }
.cross-race-heading { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 4px 0 25px; }
.cross-race-heading h2 { font: 700 clamp(2rem, 5.8vw, 4.4rem)/1.1 var(--font-display); letter-spacing: -.045em; margin: 6px 0 8px; overflow-wrap: anywhere; }
.cross-race-heading > div:first-child { min-width: 0; }
.cross-race-heading label { display: inline; }
.cross-race-select { display: inline-block; width: auto !important; max-width: 280px; border: 0 !important; background-color: transparent !important; padding: 0 22px 0 8px !important; font: .73rem var(--font-mono) !important; }
.cross-race-heading .cross-muted { font-size: .84rem; }
.cross-category { display: flex; padding: 4px; background: #1b1b1e; border: 1px solid var(--color-border); border-radius: 9px; flex-shrink: 0; }
.cross-category button { border: 0; padding: 10px 18px; border-radius: 5px; color: #a6a3a2; background: transparent; font: .73rem var(--font-mono); }
.cross-category button[aria-pressed="true"] { background: var(--color-accent); color: #17110d; }
.cross-race-strip { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 28px; color: #d4d0cd; font: .72rem/1.6 var(--font-mono); }
.cross-race-strip > :first-child::before { content: ''; display: inline-block; width: 6px; height: 6px; background: #f97316; border-radius: 50%; margin-right: 9px; }
.cross-race-strip a { margin-left: auto; text-underline-offset: 4px; color: var(--cross-muted); }
#startlist-badge { color: #baaa9c; }
.cross-coverage { margin: 20px 0; padding: 12px 15px; border-left: 2px solid #806044; background: #f9731607; font-size: .76rem; color: #bdb3ab; }
.cross-favorites { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cross-favorite { position: relative; overflow: hidden; background: linear-gradient(140deg, #232325, #1a1a1d); border: 1px solid var(--color-border); border-radius: 12px; padding: 22px; }
.cross-favorite:first-child { background: linear-gradient(135deg, #3b261b, #211c19 64%, #1d1b1c); border-color: #86502e; }
.cross-favorite-rank { position: absolute; right: 13px; top: -18px; color: #ffffff06; font: 700 8.5rem/1 var(--font-display); letter-spacing: -.09em; pointer-events: none; }
.cross-favorite:first-child .cross-favorite-rank { color: #f973160c; }
.cross-favorite .cross-eyebrow { color: #b5ada6; font-size: .62rem; position: relative; }
.cross-favorite:first-child .cross-eyebrow { color: #ffae76; }
.cross-favorite h3 { position: relative; font: 700 clamp(1.2rem, 2vw, 1.65rem)/1.15 var(--font-display); letter-spacing: -.03em; min-height: 2.5em; margin: 22px 0 14px; overflow-wrap: anywhere; }
.cross-country { display: block; margin-top: 7px; color: #aaa39f; font: .65rem var(--font-mono); letter-spacing: .05em; }
.cross-probability { display: flex; align-items: baseline; gap: 8px; }
.cross-probability strong { font: 700 3.2rem/1 var(--font-display); letter-spacing: -.05em; color: #fb9b59; }
.cross-probability span { color: var(--cross-muted); font: .65rem var(--font-mono); }
.cross-favorite-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 5px; border-top: 1px solid #ffffff0d; padding-top: 15px; margin-top: 18px; font: .65rem/1.6 var(--font-mono); color: #b9b2ad; }
.cross-favorite button { width: 100%; margin-top: 16px; border: 1px solid #ffffff1a; border-radius: 5px; background: #ffffff04; color: #ddd6d1; font: .7rem var(--font-mono); }
.cross-favorite button:hover { background: #f973161c; border-color: #b76730; }
.cross-favorite button[aria-pressed="true"] { color: #ffb47e; border-color: #bc733e; }
.cross-disclaimer { margin-top: 14px; }
.cross-play-grid { margin: 36px 0 68px; display: grid; grid-template-columns: 1.15fr 1fr; gap: 48px; }
.cross-pick { border-radius: 12px; border: 1px solid #5a4636; padding: 28px; background: #f9731606; }
.cross-pick h2, .cross-open-race h2 { font: 700 1.6rem/1.2 var(--font-display); letter-spacing: -.03em; margin: 12px 0; }
.cross-pick .cross-muted, .cross-open-race .cross-muted { font-size: .84rem; line-height: 1.8; }
.cross-pick-steps { padding-left: 22px; margin: 18px 0 4px; color: var(--cross-muted); font-size: .8rem; line-height: 1.7; }
.cross-pick-steps li { padding-left: 5px; margin-bottom: 10px; }
.cross-pick-steps li::marker { color: var(--color-accent); font-family: var(--font-mono); }
.cross-page select, .cross-page input { width: 100%; background: #202023; color: #eee9e6; border: 1px solid #434045; border-radius: 6px; padding: 10px 12px; font-size: .85rem; color-scheme: dark; }
.cross-page option { background: #202023; color: #eee9e6; }
#winner-pick { margin: 23px 0 12px; }
.cross-pick-actions { display: flex; gap: 18px; align-items: center; flex-wrap: wrap; }
.cross-page .cross-button { display: inline-flex; justify-content: center; align-items: center; min-height: 44px; border: 1px solid var(--color-accent); border-radius: 5px; background: var(--color-accent); color: #1b1008; padding: 10px 18px; font: .73rem/1.5 var(--font-mono); text-decoration: none; }
.cross-button:hover { background: #ff9347; }
.cross-text-button { color: #b6afa9; border: 0; background: transparent; font: .72rem var(--font-mono) !important; }
.cross-reaction { color: #ffae76; font-size: .82rem; margin: 20px 0 10px; min-height: 2.8em; }
.cross-open-race { align-self: center; padding: 8px 10px; }
.cross-outline-number { font: 700 clamp(4rem, 8vw, 6.3rem)/1 var(--font-display); letter-spacing: -.06em; color: #e4e4e7; }
.cross-open-race .cross-muted { max-width: 35ch; }
.cross-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.cross-section-heading h2 { font: 700 clamp(1.65rem, 3vw, 2.3rem)/1.18 var(--font-display); letter-spacing: -.035em; margin-top: 10px; }
.cross-section-heading > p { max-width: 30ch; }
.cross-duel { padding: 32px 0 54px; border-top: 1px solid var(--color-border); }
.cross-duel-grid { display: grid; grid-template-columns: minmax(0, 1fr) 64px minmax(0, 1fr); align-items: end; }
.cross-duel-grid > div { min-width: 0; }
.cross-duel-grid label { display: block; color: var(--cross-muted); font: .68rem var(--font-mono); margin-bottom: 10px; }
.cross-vs { text-align: center; padding-bottom: 11px; font: .75rem var(--font-mono); color: var(--color-accent); }
.cross-duel-stat { margin: 24px 0; }
.cross-duel-values { display: flex; align-items: center; justify-content: space-between; font: .8rem var(--font-mono); }
.cross-duel-values span { color: var(--cross-muted); font-size: .68rem; }
.cross-duel-bars { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; margin-top: 9px; }
.cross-duel-bars > div { background: #29282b; height: 5px; border-radius: 2px; overflow: hidden; }
.cross-duel-bars > div:first-child { transform: scaleX(-1); }
.cross-duel-bars i { display: block; background: var(--color-accent); height: 100%; }
.cross-duel-bars > div:last-child i { background: #c5bab1; }
.cross-form-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; margin-top: 30px; }
.cross-form-card h3 { font: .72rem var(--font-mono); color: #b5aaa2; margin-bottom: 18px; }
.cross-form { display: flex; gap: 8px; list-style: none; }
.cross-form li { display: flex; flex-direction: column; align-items: center; flex: 1; min-width: 0; }
.cross-form a { text-decoration: none; width: 100%; text-align: center; }
.cross-form strong { display: flex; justify-content: center; align-items: center; height: 40px; width: 100%; max-width: 54px; margin: auto; background: #232225; border: 1px solid #3c3838; border-radius: 6px; font: .85rem var(--font-mono); }
.cross-form .cross-top-three { border-color: #9a5a2c; background: #f9731617; color: #ffaf76; }
.cross-form time { display: block; margin-top: 6px; color: #a6a3a2; font: .62rem/1.5 var(--font-mono); }
.cross-form time span { display: block; }
.cross-form-caption { font-size: .67rem; color: var(--cross-muted); margin: 14px 0 0; }
.cross-field { padding: 30px 0 55px; border-top: 1px solid var(--color-border); scroll-margin-top: 25px; }
.cross-search { position: relative; width: 235px; }
.cross-search input { padding-right: 35px; }
.cross-search > span:last-child { position: absolute; right: 13px; top: 6px; font-size: 1.2rem; color: #a6a3a2; }
.cross-field-controls { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; }
.cross-field-controls label { color: var(--cross-muted); font: .68rem var(--font-mono); }
.cross-field-controls select { width: auto; font-size: .73rem; }
.cross-field-controls > span { margin-left: auto; }
.cross-table-scroll { position: relative; overflow: auto; border-top: 1px solid var(--color-border); }
.cross-table { border-collapse: collapse; width: 100%; font-size: .82rem; white-space: nowrap; }
.cross-table :is(th, td) { text-align: right; padding: 15px 12px; border-bottom: 1px solid #ffffff0b; }
.cross-table th { color: #a6a3a2; font: .63rem var(--font-mono); }
.cross-table th:first-child, .cross-table td:first-child { width: 35px; padding-left: 0; color: #8e8986; font: .65rem var(--font-mono); text-align: left; }
.cross-table :is(th, td):nth-child(2) { text-align: left; }
.cross-table td:nth-child(3) { color: #ffad73; font-family: var(--font-mono); }
.cross-table td:nth-child(n+4) { font-size: .74rem; font-family: var(--font-mono); }
.cross-table .cross-country { display: inline; margin-left: 10px; font-size: .58rem; }
.cross-table .cross-unknown { display: inline-block; color: #c6ad96; font-size: .6rem; margin-left: 8px; }
.cross-table button { border: 1px solid #45403e; color: #ccc1b8; border-radius: 4px; background: transparent; min-width: 64px; font: .65rem var(--font-mono); }
.cross-table button:hover, .cross-table button[aria-pressed="true"] { color: #ffad73; border-color: #a46132; }
.cross-table tr:hover { background: #ffffff02; }
.cross-table-note { margin-top: 18px; max-width: 95ch; }
.cross-expand { display: block; margin: 18px auto 0; min-width: 220px; padding: 10px 18px; color: #dfc1ac; border: 1px solid #554437; background: #f9731609; border-radius: 5px; font: .72rem var(--font-mono) !important; }
.cross-expand:hover { border-color: var(--color-accent); }
.cross-method { padding: 32px 0 55px; border-top: 1px solid var(--color-border); }
.cross-method-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
.cross-method-grid p { font-size: .83rem; line-height: 1.85; }
.cross-test { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--color-border); }
.cross-test strong { font: 700 1.7rem var(--font-display); letter-spacing: -.03em; }
.cross-test span { color: var(--cross-muted); margin-left: 10px; font-size: .75rem; }
.cross-test p { color: #a6a3a2; margin-top: 8px; font-size: .75rem; }
.cross-faq details { border-bottom: 1px solid var(--color-border); }
.cross-faq summary { padding: 18px 24px 18px 0; font-size: .85rem; color: #ddd6d1; }
.cross-faq details:first-child summary { padding-top: 0; }
.cross-faq p { color: var(--cross-muted); padding-bottom: 15px; font-size: .77rem; }
.cross-faq a { text-underline-offset: 3px; color: #d1b098; }
.cross-faq .cross-test { margin-top: 0; padding-top: 0; border-top: 0; }
.cross-calendar { padding: 32px; margin-bottom: 60px; background: #1c1b1d; border: 1px solid var(--color-border); border-radius: 12px; display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.cross-calendar h2 { margin-top: 10px; font: 700 1.65rem/1.25 var(--font-display); letter-spacing: -.03em; }
.cross-calendar .cross-button { flex-shrink: 0; }
.cross-state { padding: 42px 24px; background: #1c1b1d; border: 1px solid var(--color-border); border-radius: 12px; margin-bottom: 40px; }
.cross-state p { margin: 15px 0; color: #aaa5a2; }
.cross-page .subpage-coffee-note { max-width: 1128px; }
@media (min-width: 1450px) { .cross-hero { padding: 85px 0 75px; } }
@media (max-width: 900px) {
  .cross-container { padding: 0 28px; }
  .cross-header { padding: 16px 28px; gap: 20px; }
  .cross-hero { grid-template-columns: 1.5fr 1fr; padding-top: 45px; }
  .cross-hero h1 { font-size: clamp(2.5rem, 6vw, 4rem); }
  .cross-favorite { padding: 18px; }
  .cross-favorite h3 { font-size: 1.2rem; }
  .cross-probability strong { font-size: 2.7rem; }
  .cross-play-grid { gap: 30px; }
  .cross-method-grid { gap: 32px; }
  .cross-duel-bars, .cross-form-grid { gap: 32px; }
  .cross-section-heading > p { max-width: 25ch; }
}
@media (max-width: 620px) {
  .cross-container { padding: 0 20px; }
  .cross-header { padding: 12px 14px; gap: 6px; }
  .cross-brand { font-size: .65rem; }
  .cross-header .lang-switch { margin-left: auto; }
  .cross-nav { display: none; }
  .cross-hero { display: block; padding: 44px 0 34px; position: relative; }
  .cross-hero h1 { font-size: clamp(2.55rem, 9.3vw, 3.6rem); margin: 24px 0 18px; }
  .cross-intro { font-size: .88rem; max-width: 38ch; }
  .cross-art { display: none; }
  .cross-section-line { flex-direction: column; gap: 8px; padding-top: 18px; }
  .cross-section-line > .cross-small { text-align: left; font-size: .63rem; }
  .cross-race-heading { align-items: start; flex-direction: column; gap: 20px; padding-top: 0; }
  .cross-race-heading h2 { font-size: clamp(1.9rem, 7.5vw, 3rem); }
  .cross-category { width: 100%; }
  .cross-category button { flex: 1; padding: 10px; }
  .cross-race-strip { gap: 10px 18px; font-size: .65rem; }
  .cross-race-strip a { margin-left: 0; }
  .cross-coverage { font-size: .71rem; }
  .cross-favorites { grid-template-columns: 1fr; gap: 10px; }
  .cross-favorite { padding: 20px; display: grid; grid-template-columns: 1fr auto; column-gap: 14px; }
  .cross-favorite .cross-eyebrow { grid-column: 1/-1; }
  .cross-favorite h3 { margin: 14px 0; font-size: 1.4rem; min-height: 0; grid-column: 1; }
  .cross-favorite-rank { font-size: 8rem; right: 6px; top: -12px; }
  .cross-probability { grid-column: 2; grid-row: 2; flex-direction: column; align-items: end; gap: 6px; justify-content: center; }
  .cross-probability strong { font-size: 2.7rem; }
  .cross-favorite-meta { grid-column: 1/-1; margin-top: 0; padding-top: 12px; }
  .cross-favorite button { grid-column: 1/-1; margin-top: 12px; }
  .cross-play-grid { grid-template-columns: 1fr; gap: 28px; margin: 28px 0 40px; }
  .cross-pick { padding: 22px; }
  .cross-open-race { padding: 8px 0; }
  .cross-outline-number { font-size: 4.6rem; }
  .cross-open-race h2 { margin: 10px 0; }
  .cross-section-heading { flex-direction: column; align-items: start; gap: 18px; margin-bottom: 24px; }
  .cross-section-heading > p { max-width: 100%; }
  .cross-duel-grid { grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1fr); }
  .cross-duel-grid select { font-size: .72rem; padding-left: 6px; padding-right: 2px; }
  .cross-vs { font-size: .65rem; }
  .cross-duel-bars, .cross-form-grid { gap: 24px; }
  .cross-form { gap: 4px; }
  .cross-form strong { height: 32px; font-size: .65rem; border-radius: 4px; }
  .cross-form time { font-size: .55rem; }
  .cross-form-card h3 { font-size: .65rem; min-height: 2.8em; }
  .cross-form-caption { font-size: .63rem; }
  .cross-duel-values { font-size: .75rem; }
  .cross-duel-values span { font-size: .6rem; }
  .cross-search { width: 100%; }
  .cross-field-controls select { max-width: 100%; width: 100%; }
  .cross-field-controls > span { margin-left: 0; }
  .cross-table { font-size: .75rem; }
  .cross-table .cross-country { display: block; margin: 4px 0 0; }
  .cross-table :is(th, td) { padding: 12px 10px; }
  .cross-method-grid { grid-template-columns: 1fr; gap: 32px; }
  .cross-faq details:first-child summary { padding-top: 18px; }
  .cross-calendar { flex-direction: column; align-items: start; padding: 24px; margin-bottom: 40px; }
  .cross-calendar h2 { font-size: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) { .cross-page { scroll-behavior: auto; } html:has(.cross-page) { scroll-behavior: auto; } }
.cross-schedule-heading h2 { font-size: 1.25rem; margin: 26px 0 8px; }
.cross-race-overview { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 22px 0 36px; }
.cross-race-overview :is(button,a) { display: flex; flex-direction: column; align-items: start; text-align: left; gap: 10px; padding: 18px; background: #19191b; border: 1px solid #343438; border-radius: 10px; color: inherit; cursor: pointer; min-width: 0; }
.cross-race-overview :is(button[aria-pressed="true"],a[aria-current="page"]) { border-color: #f97316; background: #241b15; }
.cross-race-overview :is(button,a):hover { border-color: #f97316; }
.cross-race-overview :is(button,a):focus-visible { outline: 2px solid #f97316; outline-offset: 4px; }
.cross-race-overview strong { font-size: 1.05rem; overflow-wrap: anywhere; }
.cross-race-overview small { color: #b8b4b1; font-size: .72rem; }
.cross-race-overview .cross-race-status { color: #ffab6e; margin-top: auto; }
.cross-pending { padding: 28px; background: #19191b; border: 1px solid #343438; border-radius: 12px; margin-bottom: 36px; }
.cross-pending h3 { font-size: 1.6rem; margin: 10px 0; }
.cross-pending p { max-width: 740px; }
.cross-newsletter { margin: 20px 0 52px; padding: 28px; border: 1px solid #644126; border-radius: 12px; background: #211a15; scroll-margin-top: 110px; }
.cross-newsletter h2 { font-size: clamp(1.8rem,4vw,2.6rem); line-height: 1.15; margin: 14px 0; }
.cross-newsletter > p { max-width: 760px; }
.cross-newsletter-fields { display: grid; grid-template-columns: 2fr 1fr; gap: 18px; margin: 24px 0; }
.cross-newsletter-fields label { display: grid; gap: 8px; min-width: 0; }
.cross-newsletter-fields :is(input,select) { background: #151515; color: inherit; border: 1px solid #5c4b3e; border-radius: 5px; padding: 10px; width: 100%; min-width: 0; }
.cross-newsletter-consent { display: flex; align-items: start; gap: 12px; max-width: 760px; font-size: .85rem; }
.cross-page .cross-newsletter-consent input { min-height: 20px; height: 20px; width: 20px; flex-shrink: 0; accent-color: #f97316; }
.cross-newsletter-honey { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.cross-newsletter-action { display:grid; justify-items:start; gap:14px; border-block:1px solid #644126; padding:24px 0; margin:20px 0; }
.cross-newsletter-action > :is(h3,p) { margin:0; }
.cross-newsletter-action > p { max-width:65ch; line-height:1.7; }
.cross-newsletter-action > .cross-button { margin-top:8px; min-height:48px; max-width:100%; white-space:normal; text-align:center; }
.cross-course-open { border: 0; padding: 0; background: none; cursor: pointer; margin: 8px 0; text-align: left; }
.cross-course-links { display: flex; gap: 12px 24px; flex-wrap: wrap; }
.cross-course-filter { display: grid; gap: 8px; max-width: 240px; margin: 24px 0; }
.cross-course-filter select { background: #19191b; color: inherit; padding: 10px; border: 1px solid #444; border-radius: 6px; }
.cross-course-profile .cross-profile-stats strong { font-size: clamp(1.1rem, 2vw, 1.5rem); }
.cross-course-podium { list-style: none; padding: 0; margin: 0; line-height: 1.8; min-width: 170px; }
.cross-course-podium li { white-space: normal; }
.cross-course-profile td:last-child { white-space: normal; min-width: 100px; }
@media(max-width:650px) { .cross-course-profile .cross-profile-heading { gap: 10px; } .cross-course-profile .cross-profile-stats { grid-template-columns: minmax(0,1fr); } .cross-course-profile .cross-profile-heading :is(h1,h2) { font-size: clamp(1.2rem, 5.8vw, 1.6rem); } }
@media(max-width: 650px) { .cross-newsletter { padding: 20px; } .cross-newsletter-fields { grid-template-columns: minmax(0,1fr); } .cross-newsletter-action > .cross-button { width:100%; } }
.cross-page .cross-rider-name { display: inline; width: auto; min-width: 0; margin: 0; padding: 3px 0; border: 0; border-radius: 0; background: none; color: inherit; font: inherit; text-align: left; line-height: inherit; }
.cross-page .cross-rider-name:hover { background: none; color: #ffab6e; text-decoration: underline; text-underline-offset: 5px; }
.cross-rider-name > .cross-profile-arrow { color: #ffab6e; font-size: .65em; }
.cross-profile { width:100%; max-width:none; margin:0; box-sizing:border-box; padding:0; border:0; border-radius:0; background:transparent; color:#e4e4e7; overflow:visible; }
.cross-profile-heading { display:flex; align-items:start; gap:16px; justify-content:space-between; padding:12px 0; }
.cross-profile-heading :is(h1,h2) { font-size: clamp(1.6rem, 5vw, 2.4rem); line-height: 1.15; margin: 12px 0; overflow-wrap: anywhere; }
.cross-profile-controls { display: flex; flex-wrap: wrap; gap: 16px; margin: 24px 0 12px; }
.cross-profile-controls label { display: grid; gap: 8px; flex: 1; min-width: 0; }
.cross-profile-controls select { background: #222; color: inherit; border: 1px solid #49413c; border-radius: 6px; padding: 10px; width: 100%; }
.cross-profile-stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; margin: 24px 0 30px; }
.cross-profile-stats > div { padding: 16px; border: 1px solid #343438; border-radius: 8px; background: #1c1b1b; }
.cross-profile-stats strong { display: block; font-size: 2rem; color: #ffab6e; }
.cross-profile-stats span, .cross-profile-series { display: block; color: var(--cross-muted); font-size: .72rem; }
.cross-profile h3 { font-size: 1.15rem; margin: 24px 0 10px; }
.cross-chart-scroll { overflow-x: auto; margin: 20px 0 8px; }
.cross-chart-plot { position: relative; height: 190px; min-width: 500px; }
.cross-chart-plot svg { position: absolute; width: 100%; height: 190px; inset: 0; }
.cross-chart-axis { position: absolute; left: 0; color: var(--cross-muted); font: .65rem var(--font-mono); }
.cross-profile .cross-chart-point { position: absolute; transform: translate(-50%, -50%); display: grid; place-items: center; width: 32px; min-height: 32px; padding: 0; border-radius: 50%; border: 1px solid #7d6b5c; background: #24201d; color: #eee; font: .65rem var(--font-mono); }
.cross-profile .cross-chart-podium { background: #6c3510; border-color: #f97316; }
.cross-profile .cross-chart-point[aria-pressed="true"] { background: #f97316; color: #1b1008; border-color: #ffba82; }
.cross-chart-dates { display: flex; justify-content: space-between; min-width: 500px; color: var(--cross-muted); font: .65rem var(--font-mono); padding: 0 5% 8px; }
.cross-profile-detail { min-height: 2.6em; font-size: .85rem; color: #ffab6e; margin: 12px 0 24px; }
.cross-course-category { width:fit-content; margin:24px 0; }
.cross-form-summary { display:flex; gap:18px; align-items:baseline; margin:20px 0; }
.cross-form-summary strong { font-size:2.4rem; color:#ffab6e; }
.cross-form-summary small { font-size:.8rem; color:var(--cross-muted); margin-left:6px; }
.cross-form-summary > span { color:var(--cross-muted); font:.7rem var(--font-mono); }
#profile-chart-mode { width:fit-content; margin:28px 0 18px; }
.cross-directory-form { color:#ffad73; background:#f973160d; border:1px solid #5b402c; padding:3px 6px; border-radius:4px; font:.6rem var(--font-mono); }
.cross-race-insights { margin:28px 0 36px; }
.cross-insight-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:12px; }
.cross-insight { padding:20px; border:1px solid #44352b; border-radius:10px; background:#f9731607; display:flex; flex-direction:column; align-items:start; }
.cross-insight .cross-eyebrow { font-size:.58rem; }
.cross-insight-value { font-size:2.3rem; color:#ffab6e; margin:18px 0 10px; }
.cross-insight p { margin:10px 0 0; }
.cross-series-controls { display:flex; flex-wrap:wrap; gap:16px; justify-content:space-between; margin:8px 0 24px; }
.cross-series-controls select { background:#222; color:inherit; padding:13px; border:1px solid #49413c; border-radius:8px; }
.cross-series-intro { display:flex; align-items:center; flex-wrap:wrap; gap:10px 20px; margin-bottom:24px; }
.cross-series-intro > strong { width:100%; font-size:1.1rem; }
.cross-series-format { color:#ffab6e; font:.65rem var(--font-mono); border:1px solid #63432d; border-radius:20px; padding:6px 10px; }
.cross-series-summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; }
.cross-series-summary > div { border-top:1px solid #41362e; padding-top:16px; display:flex; flex-direction:column; gap:8px; }
.cross-series-summary strong { font-size:2rem; color:#ffab6e; }
.cross-series-summary > div > span { color:var(--cross-muted); font:.65rem var(--font-mono); }
.cross-series-summary .cross-series-champion strong { font-size:1.2rem; }
.cross-series-section { margin-top:34px; padding-top:24px; border-top:1px solid #343438; }
.cross-series-section > h3 { margin-top:0; }
.cross-series-section .cross-section-heading { margin-bottom:18px; }
.cross-series-section .cross-section-heading h3 { margin:0; }
.cross-series-podium,.cross-series-winners { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:18px 0; }
.cross-series-podium > article,.cross-series-winners > article { min-width:0; border:1px solid #443a32; border-radius:10px; padding:18px; background:linear-gradient(150deg,#f9731612,#1c1b1b 70%); }
.cross-series-podium h4 { min-height:4em; margin:14px 0; font-size:1rem; }
.cross-standing-value { display:block; color:#ffab6e; font-size:1.8rem; white-space:normal; overflow-wrap:anywhere; margin-bottom:16px; }
.cross-standing-value small { display:block; color:var(--cross-muted); font:.6rem var(--font-mono); margin-top:8px; }
.cross-standing-gap { display:block; font:.65rem var(--font-mono); color:#ffab6e; margin-top:14px; }
.cross-standing-details { margin-top:20px; }
.cross-profile button.cross-jump { background:none; border:0; padding:8px 0; text-align:left; cursor:pointer; }
.cross-series-winners > article { display:flex; flex-direction:column; align-items:start; gap:12px; }
.cross-series-winners > article > strong { font-size:2.2rem; color:#ffab6e; }
.cross-series-winners > article > span { font:.65rem var(--font-mono); color:var(--cross-muted); }
.cross-series-results { display:grid; gap:10px; margin:18px 0; }
.cross-series-calendar { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; list-style:none; margin:18px 0; padding:0; }
.cross-series-calendar li { min-width:0; }
.cross-series-calendar a { display:grid; grid-template-rows:auto 1fr auto; align-items:start; gap:20px; height:100%; min-height:230px; border:1px solid #343438; border-radius:12px; padding:22px; background:linear-gradient(135deg,#f9731608,transparent 65%),#19191b; text-decoration:none; transition:border-color .15s; }
.cross-series-calendar a:hover { border-color:#b57240; }
.cross-series-calendar a > time { color:#ffab6e; }
.cross-series-calendar-name { display:flex; flex-direction:column; gap:12px; min-width:0; }
.cross-series-calendar-name strong { min-height:4.2em; font-size:1.08rem; line-height:1.4; overflow-wrap:anywhere; }
.cross-series-calendar-status { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; padding-top:14px; border-top:1px solid #343438; color:#ffb17d; font:.65rem/1.5 var(--font-mono); }
.cross-series-calendar-status > span:last-child { font-size:1rem; }
.cross-series-calendar .is-finished .cross-series-calendar-status { color:#b8b0a8; }
@media(max-width:1000px) { .cross-series-calendar { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { .cross-series-calendar { grid-template-columns:minmax(0,1fr); } .cross-series-calendar a { min-height:195px; padding:20px; gap:16px; } .cross-series-calendar-name strong { min-height:0; font-size:1rem; } }
.cross-series-results :is(button,a) { text-align:left; color:inherit; background:#1b1b1c; border:1px solid #39332e; border-radius:8px; padding:16px; display:grid; gap:10px; }
.cross-series-results :is(button,a) > strong { color:#ffab6e; }
.cross-series-results :is(button,a) > span:last-child { color:var(--cross-muted); font-size:.75rem; }
.cross-series-progress { position:relative; height:190px; margin:20px 0 0; }
.cross-series-progress svg { width:100%; height:100%; }
.cross-series-line { stroke-width:2; stroke:#f97316; }
.cross-series-line.line-1 { stroke:#ffb17a; stroke-dasharray:7 4; }
.cross-series-line.line-2 { stroke:#a77858; stroke-dasharray:2 4; }
.cross-series-line.line-3,.cross-series-line.line-4 { stroke:#b6a698; stroke-dasharray:10 4 2 4; }
.cross-progress-top,.cross-progress-bottom { position:absolute; left:0; color:var(--cross-muted); font:.65rem var(--font-mono); }
.cross-progress-top { top:20px; }.cross-progress-bottom { bottom:24px; }
.cross-series-legend { list-style:none; padding:0; display:flex; flex-wrap:wrap; gap:10px 18px; font:.65rem var(--font-mono); }
.cross-series-legend li:before { content:'━'; color:#f97316; padding-right:8px; }
.cross-series-legend .line-1:before { content:'┄'; color:#ffb17a; }.cross-series-legend .line-2:before { content:'┈'; color:#a77858; }
@media(max-width:650px) {
 .cross-series-controls { flex-direction:column; }.cross-series-controls .cross-category { width:100%; }.cross-series-controls button { flex:1; }.cross-series-controls select { width:100%; }
 .cross-series-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }.cross-series-champion { grid-column:1/-1; }
 .cross-series-podium,.cross-series-winners { grid-template-columns:minmax(0,1fr); }.cross-series-podium h4 { min-height:0; }
 .cross-series-podium > article { display:grid; grid-template-columns:32px minmax(0,1fr); gap:8px 12px; }.cross-series-podium .cross-eyebrow { grid-row:1/4; }.cross-series-podium h4 { margin:0; }.cross-standing-value { grid-column:2; margin-bottom:6px; }.cross-series-podium .cross-course-meter,.cross-standing-gap { grid-column:2; }
 .cross-series-winners > article { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; }.cross-series-winners > article > span { grid-column:1/-1; }
}
.cross-result-filters { display:flex; flex-wrap:wrap; gap:10px; max-width:100%; }
.cross-result-filters label { min-width:0; flex:1; }
.cross-result-filters select { width:100%; max-width:280px; }
#results-category { width:fit-content; margin-bottom:18px; }
@media(max-width:650px) { #results .cross-section-heading { align-items:stretch; flex-direction:column; } .cross-result-filters select { max-width:none; } }
.cross-rider-courses { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:18px 0 30px; }
.cross-rider-course { padding:18px; border:1px solid #493a2f; border-radius:10px; background:linear-gradient(145deg,#f9731610,#1c1b1b 70%); min-width:0; }
.cross-rider-course-heading { min-height:4em; }
.cross-rider-course h4 { margin:0 0 8px; font-size:1rem; overflow-wrap:anywhere; }
.cross-rider-course-heading > span { font-size:.6rem; }
.cross-course-score { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px 10px; margin:12px 0 3px; }
.cross-course-score strong { font-size:2rem; color:#ffab6e; }
.cross-course-score small { font-size:1rem; color:var(--cross-muted); font-weight:400; }
.cross-course-score > span { font:.85rem var(--font-mono); color:#e5cbb5; }
.cross-course-starts { margin:0 0 20px; color:#c6beb6; font:.76rem/1.6 var(--font-mono); }
.cross-course-facts { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:0 0 20px; }
.cross-course-facts dt { color:var(--cross-muted); font:.65rem/1.5 var(--font-mono); margin-bottom:6px; }
.cross-course-facts dd { margin:0; color:#eee5dd; font-size:.95rem; }
.cross-course-meter { height:4px; border-radius:4px; overflow:hidden; background:#37302b; }
.cross-course-meter > span { display:block; height:100%; background:#f97316; }
.cross-rider-course footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; font:.7rem var(--font-mono); color:#c9b5a4; border-top:1px solid #493a2f; padding:12px 0; }
.cross-rider-course footer strong { color:#ffab6e; font-weight:500; }
@media(max-width:650px) { .cross-rider-courses { grid-template-columns:minmax(0,1fr); } .cross-rider-course-heading { min-height:0; } .cross-course-category,#results-category { width:100%; } .cross-course-category button,#results-category button { flex:1; } }
.cross-profile .cross-table { min-width: 500px; }
.cross-profile .cross-table td:last-child a { display: inline-grid; place-items: center; min-height: 44px; min-width: 44px; color: #ffab6e; }
@media(max-width: 500px) { .cross-profile { padding: 18px; width: calc(100% - 20px); max-height: 94dvh; } .cross-profile-heading { top: -18px; } .cross-profile-controls { flex-direction: column; } .cross-profile-stats { gap: 8px; } .cross-profile-stats > div { padding: 12px 8px; } .cross-profile-stats strong { font-size: 1.6rem; } }
.cross-review { margin: 22px 0; padding: 22px; border-left: 3px solid var(--color-accent); background: #19191b; border-radius: 0 10px 10px 0; }
.cross-review h3 { font-size: 1.25rem; margin: 10px 0; }
.cross-review p { color: var(--cross-muted); }
.cross-review .cross-eyebrow { color: var(--color-accent); }
.cross-archive { padding: 36px 0 48px; border-top: 1px solid #343438; scroll-margin-top: 24px; }
.cross-archive .cross-section-heading { margin-bottom: 22px; }
.cross-archive .cross-section-heading h2 { font-size: clamp(1.7rem, 4vw, 2.5rem); }
.cross-archive .cross-section-heading p { max-width: 65ch; }
.cross-archive-filters { display: flex; align-items: end; flex-wrap: wrap; gap: 18px; margin: 20px 0; }
.cross-archive-filters label { display: grid; gap: 8px; min-width: 170px; }
.cross-archive-filters select { padding: 10px 14px; color: inherit; background: #19191b; border: 1px solid #343438; border-radius: 6px; }
.cross-archive-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
.cross-archive-card { padding: 22px; background: #19191b; border: 1px solid #343438; border-radius: 14px; min-width: 0; }
.cross-archive-card-top { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.cross-archive-card-top p { margin:0; font-size:.65rem; }
.cross-archive-status { display:inline-flex; align-items:center; gap:6px; padding:4px 9px; border:1px solid #494440; border-radius:20px; color:#bbb6b2; font:.63rem/1.4 var(--font-mono); }
.cross-archive-status.is-hit { color:#baddb2; background:#a5d6960c; border-color:#53634b; }
.cross-archive-race { display:flex; align-items:baseline; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:16px 0 18px; }
.cross-archive-race h3 { font-size:1.55rem; margin:0; overflow-wrap:anywhere; }
.cross-archive-race > span { font-size:.62rem; }
.cross-archive-matchup { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-block:1px solid #343438; }
.cross-archive-rider { display:grid; grid-template-rows:auto 40px 1fr auto; justify-items:start; gap:10px; padding:18px 16px 18px 0; min-width:0; }
.cross-archive-rider + .cross-archive-rider { border-left:1px solid #343438; padding:18px 0 18px 20px; }
.cross-archive-rider > .cross-small { font-size:.62rem; }
.cross-archive-avatar { display:grid; place-items:center; width:40px; height:40px; border:1px solid #68503e; border-radius:50%; color:#ffab6e; background:#f973160a; font:.73rem var(--font-mono); }
.cross-archive-rider strong { font-size:1rem; line-height:1.3; overflow-wrap:anywhere; }
.cross-archive-chance { color:#ffab6e; font:700 1.35rem/1.2 var(--font-display); }
.cross-archive-finish { color:#c5bfb9; font-size:1.35rem; line-height:1.2; }
.cross-archive-card .cross-jump { display:flex; align-items:center; min-height:44px; margin:8px 0 -8px; font-size:.72rem; }
.cross-finish-podium { color: #ffab6e; font-weight: 700; }
@media(max-width: 650px) { .cross-archive-list { grid-template-columns: minmax(0, 1fr); } .cross-archive-card { padding: 20px; } .cross-archive-filters label { flex: 1; min-width: 0; } .cross-archive-filters select { width: 100%; } }
.cross-availability { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(0, 1.3fr); align-items: center; gap: 20px 36px; margin: 24px 0; padding: 22px 0; border-block: 1px solid #343438; }
.cross-availability .cross-eyebrow { margin: 0 0 10px; }
.cross-availability .cross-availability-clock { color: #ffab6e; font-size: clamp(1.5rem, 4vw, 2.2rem); font-weight: 700; line-height: 1.2; font-variant-numeric: tabular-nums; margin: 0 0 10px; }
.cross-availability time { display: block; }
.cross-availability .cross-button { margin-top: 10px; }
@media(max-width: 650px) { .cross-availability { grid-template-columns: minmax(0, 1fr); gap: 12px; } }
@media(max-width: 850px) { .cross-race-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media(max-width: 400px) { .cross-race-overview :is(button,a) { padding: 12px; } .cross-race-overview strong { font-size: .9rem; } .cross-race-overview small { font-size: .64rem; } .cross-pending { padding: 20px; } }

.cross-course-character { margin: 24px 0; padding: 20px; border: 1px solid #4a392c; border-radius: 10px; background: #211a15; }
.cross-course-character h3 { margin-top: 0; }
.cross-course-character h4 { margin: 20px 0 8px; }
.cross-course-character p { color: #bcb8b5; line-height: 1.7; }
.cross-course-features { display: flex; gap: 8px; flex-wrap: wrap; list-style: none; padding: 0; }
.cross-course-features li { border: 1px solid #68472c; color: #ffab6e; border-radius: 24px; padding: 5px 12px; font-size: .78rem; }

/* The selected race is the primary page, with a balanced before/after review. */
.cross-calendar { display:grid; grid-template-columns:160px minmax(0,1fr); gap:40px; padding:32px 40px; margin:0 0 44px; background:radial-gradient(ellipse at 0% 100%,#f9731612,transparent 70%),#1b1a1b; overflow:hidden; }
.cross-calendar-copy { min-width:0; }
.cross-calendar h2 { max-width:24ch; font-size:clamp(1.6rem,3.4vw,2.2rem); line-height:1.15; margin:10px 0 12px; }
.cross-calendar-copy > .cross-muted { font-size:.86rem; margin:0 0 22px; max-width:48ch; }
.cross-calendar-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px 24px; }
.cross-calendar-actions a { min-height:44px; display:inline-flex; align-items:center; }
.cross-calendar-actions .cross-jump { font-size:.72rem; }
.cross-calendar-help { max-width:65ch; font-size:.6rem; margin:12px 0 0; }
.cross-calendar-art { position:relative; width:148px; border:1px solid #6b503b; border-radius:15px; background:#24201d; transform:rotate(-7deg); box-shadow:8px 10px 0 #151415; }
.cross-calendar-art-top { height:36px; background:#f97316; border-radius:14px 14px 0 0; display:flex; justify-content:space-around; }
.cross-calendar-art-top span { width:5px; height:20px; margin-top:-9px; border:1px solid #1b1714; background:#a3a09d; border-radius:4px; }
.cross-calendar-art-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:6px; padding:18px 12px 22px; }
.cross-calendar-art-grid i { aspect-ratio:1; border-radius:3px; background:#51463d; }
.cross-calendar-art-grid .race-day { background:#ff9851; }
.cross-calendar-sync { position:absolute; bottom:-16px; right:-16px; width:48px; height:48px; display:grid; place-items:center; border:3px solid #1b1a1b; border-radius:50%; background:#ff9851; color:#201308; font:2rem/1 var(--font-display); }
@media(max-width:650px) {
  .cross-calendar { grid-template-columns:minmax(0,1fr); gap:24px; padding:24px; }
  .cross-calendar-art { width:108px; margin:10px 0 0 6px; }
  .cross-calendar-art-grid { gap:4px; padding:12px 9px 16px; }
  .cross-calendar-art-top { height:24px; }
  .cross-calendar-sync { width:36px; height:36px; font-size:1.5rem; bottom:-12px; right:-12px; }
  .cross-calendar-actions { gap:8px 18px; }
  .cross-calendar-actions .cross-button { font-size:.72rem; padding:12px 16px; }
  .cross-archive-race h3 { font-size:1.4rem; }
  .cross-archive-card-top { align-items:start; }
  .cross-archive-rider strong { font-size:.9rem; }
  .cross-archive-rider + .cross-archive-rider { padding-left:12px; }
  .cross-archive-filters { gap:12px; }
  .cross-archive-filters select { padding:10px 8px; font-size:.72rem; }
  .cross-archive-filters > #archive-count { flex-basis:100%; }
}
@media(max-width:400px) {
  .cross-archive-matchup { grid-template-columns:minmax(0,1fr); }
  .cross-archive-rider, .cross-archive-rider + .cross-archive-rider { grid-template-columns:36px minmax(0,1fr); grid-template-rows:auto auto auto; padding:14px 0; gap:6px 12px; border-left:0; }
  .cross-archive-rider + .cross-archive-rider { border-top:1px solid #343438; }
  .cross-archive-avatar { grid-column:1; grid-row:1 / 4; align-self:center; width:36px; height:36px; }
  .cross-archive-rider > :not(.cross-archive-avatar) { grid-column:2; }
  .cross-archive-rider > .cross-small { grid-row:1; }
  .cross-archive-rider > strong { grid-row:2; }
  .cross-archive-winner .cross-archive-finish { display:none; }
}
.cross-race { padding-top: 32px; }
.cross-logo-filters { position:absolute; pointer-events:none; }
.cross-hub-intro { padding:38px 0 0; }
.cross-analysis { display:grid; grid-template-columns:1fr 1fr; gap:36px; margin:28px 0 32px; padding:30px; border:1px solid #735035; border-radius:16px; background:radial-gradient(ellipse at top left,#f9731617,transparent 65%),#19191b; scroll-margin-top:110px; }
#analysis { scroll-margin-top:110px; }
.cross-analysis-copy { display:flex; flex-direction:column; align-items:start; }
.cross-analysis h2 { margin:0 0 16px; font-size:clamp(1.8rem,3.6vw,2.8rem); line-height:1.1; letter-spacing:-.045em; }
.cross-analysis-copy > .cross-muted { font-size:.9rem; line-height:1.7; margin:0 0 18px; max-width:38em; }
.cross-analysis-benefits { display:flex; flex-wrap:wrap; gap:10px 20px; margin:0 0 16px; color:#ffd1ad; font:.7rem var(--font-mono); }
.cross-analysis-benefits > span { display:flex; gap:8px; align-items:center; }
.cross-analysis-benefits i { font:normal 1.1rem var(--font-mono); color:#ff973f; }
.cross-analysis-method { margin:0 0 14px; color:var(--cross-muted); font-size:.75rem; line-height:1.7; }
.cross-analysis-method summary { cursor:pointer; color:#d7c6b8; padding:8px 0; }
.cross-analysis-method p { margin:8px 0; }
.cross-analysis-copy > .cross-jump { margin-top:auto; }
.cross-analysis-preview { min-width:0; padding-left:30px; border-left:1px solid #514033; }
.cross-analysis-preview .cross-eyebrow { font-size:.63rem; margin-bottom:10px; }
.cross-analysis-preview h3 { margin:0 0 9px; font-size:1.6rem; line-height:1.2; letter-spacing:-.035em; }
.cross-analysis-preview h3 a { color:#eee9e4; text-decoration:none; }
.cross-analysis-preview h3 a span { color:#ffa15c; font-size:.9rem; }
.cross-analysis-preview .cross-small { line-height:1.6; margin:10px 0; }
.cross-analysis-fields { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:18px 0; }
.cross-analysis-category { display:flex; flex-direction:column; gap:9px; padding:14px; background:#11111277; border:1px solid #44382f; border-radius:8px; color:#eee9e4; text-decoration:none; min-width:0; }
.cross-analysis-category > span { font:.65rem var(--font-mono); color:#bdb2a8; }
.cross-analysis-category > strong { font-size:.85rem; line-height:1.4; overflow-wrap:anywhere; }
.cross-analysis-category > b { font:600 1.3rem var(--font-mono); color:#ffab6e; }
.cross-analysis-category b small { font-size:.55rem; font-weight:400; color:#bdb2a8; }
.cross-analysis-category .cross-analysis-wait { color:#dfb89a; font-weight:400; font-size:.75rem; }
.cross-analysis-category:hover { border-color:#f97316; }
.cross-analysis-preview .cross-button { font-size:.75rem; min-height:44px; }
.cross-analysis-example { display:block; color:#ffab6e; text-decoration:underline; text-underline-offset:4px; font:.68rem/1.7 var(--font-mono); margin-top:18px; }
@media(max-width:850px) { .cross-analysis { grid-template-columns:1fr; gap:24px; padding:23px; } .cross-analysis-preview { border-left:0; border-top:1px solid #514033; padding:23px 0 0; } }
@media(max-width:400px) { .cross-analysis { padding:18px; } .cross-analysis-fields { gap:8px; } .cross-analysis-category { padding:11px; } }
.cross-hub-intro h1 { font-size:clamp(2.8rem,6vw,4.6rem); line-height:1.05; letter-spacing:-.055em; margin:12px 0; }
.cross-hub-intro > .cross-muted { font-size:1rem; margin-bottom:28px; }
.cross-hub-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0; border-block:1px solid #343438; }
.cross-hub-toolbar nav { display:flex; flex-wrap:wrap; gap:12px 26px; }
.cross-hub-toolbar a { display:inline-flex; align-items:center; min-height:44px; color:#ffab6e; text-decoration:none; font:.76rem var(--font-mono); }
.cross-page #results-season { border:1px solid #49413c; border-radius:6px; color:inherit; background:#19191b; padding:8px 12px; max-width:100%; font:.73rem var(--font-mono); }
.cross-hub-toolbar .cross-category { flex-shrink:0; max-width:100%; }
.cross-home-only, .cross-hub-section { scroll-margin-top:24px; }
.cross-hub-section { border-top:1px solid #343438; padding:36px 0 44px; }
.cross-hub-section h2 { font-size:clamp(1.7rem,4vw,2.5rem); }
.cross-hub-section .cross-section-heading { margin-bottom:24px; }
.cross-hub-section .cross-eyebrow { margin-bottom:12px; }
.cross-hub-section .cross-search { max-width:290px; }
.cross-series-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.cross-series-card { display:flex; flex-direction:column; align-items:start; gap:14px; padding:22px 20px; border:1px solid #343438; border-radius:14px; color:inherit; background:radial-gradient(ellipse at 15% 0%,#f973160a,transparent 80%),#19191b; text-align:left; min-width:0; transition:border-color .15s; }
.cross-series-card:hover { border-color:#a6693c; }
.cross-series-logo { display:flex; align-items:center; justify-content:start; height:70px; width:100%; }
.cross-series-logo img { display:block; height:auto; width:auto; max-width:100%; max-height:66px; object-fit:contain; filter:url(#series-ink); }
.cross-series-wordmark { color:#f97316; font:900 1.45rem/.9 var(--font-display); letter-spacing:-.04em; }
.cross-duck { width:70px; height:58px; flex-shrink:0; color:#f97316; }
.series-x2o { gap:8px; }
.series-x2o img { width:84px; max-height:84px; }
.cross-series-card > strong { font-size:1.12rem; line-height:1.3; }
.cross-series-main { display:flex; flex-direction:column; gap:14px; width:100%; text-decoration:none; }
.cross-series-main strong { font-size:1.12rem; line-height:1.3; }
.cross-series-both { display:flex; flex-direction:column; gap:8px; width:100%; margin-top:auto; min-height:150px; }
.cross-series-category-leader { display:grid; gap:4px; padding:9px 0; border-top:1px solid #34312e; text-decoration:none; }
.cross-series-category-leader small,.cross-series-next small { color:var(--cross-muted); font:.6rem var(--font-mono); }
.cross-series-category-leader > span { font-size:.88rem; line-height:1.35; overflow-wrap:anywhere; }
.cross-series-category-leader:hover > span { color:#ffab6e; }
.cross-series-next > span { font-size:.9rem; }
.cross-series-card .cross-series-open { text-decoration:none; }
.cross-series-card > .cross-small { font-size:.65rem; }
.cross-series-leader { margin-top:auto; padding-top:4px; display:grid; gap:6px; }
.cross-series-leader small { color:var(--cross-muted); font:.6rem var(--font-mono); }
.cross-series-leader > span { font-size:.88rem; line-height:1.35; overflow-wrap:anywhere; }
.cross-series-open { color:#ffab6e; font:.65rem var(--font-mono); padding-top:12px; border-top:1px solid #343438; width:100%; display:flex; justify-content:space-between; }
.cross-directory-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.cross-directory-card { border:1px solid #343438; border-radius:12px; background:linear-gradient(135deg,#f9731608,transparent 65%),#19191b; min-width:0; overflow:hidden; }
.cross-directory-card:hover { border-color:#b57240; }
.cross-page .cross-directory-open { position:relative; display:grid; grid-template-columns:72px minmax(0,1fr); grid-template-rows:auto 1fr auto; column-gap:14px; row-gap:12px; padding:18px; width:100%; height:100%; min-height:220px; color:inherit; background:none; border:0; text-align:left; border-radius:11px; }
.cross-rider-rail { grid-column:1; grid-row:2; display:flex; flex-direction:column; align-items:center; gap:12px; min-width:0; }
.cross-rider-jersey { display:block; padding-top:4px; color:#e39155; }
.cross-rider-form { display:flex; flex-direction:column; align-items:center; gap:4px; width:100%; text-align:center; }
.cross-rider-form-number { display:flex; justify-content:center; align-items:baseline; gap:2px; color:#ffab6e; }
.cross-rider-form-number strong { font:600 1.5rem/1.1 var(--font-mono); letter-spacing:-.07em; font-variant-numeric:tabular-nums; }
.cross-rider-form-trend { font:.7rem/1 var(--font-mono); }
.cross-rider-form-label { color:var(--cross-muted); font:.6rem/1.5 var(--font-mono); }
.cross-rider-form.is-missing strong { color:#807971; }
.cross-rider-jersey svg { width:44px; height:53px; overflow:visible; }
.cross-rider-jersey path { fill:#f973160a; stroke:currentColor; stroke-width:1.6; stroke-linejoin:round; }
.cross-rider-jersey text { fill:currentColor; font:700 14px var(--font-mono); text-anchor:middle; }
.cross-directory-identity { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1fr) 12px; align-items:start; gap:8px; }
.cross-directory-identity strong { font-size:1rem; line-height:1.25; overflow-wrap:anywhere; }
@media(min-width:651px) { .cross-directory-identity strong { min-height:2.5em; } }
.cross-directory-meta { display:flex; align-items:center; flex-wrap:wrap; gap:6px 9px; }
.cross-directory-country { display:inline-block; padding:3px 5px; border:1px solid #4e4842; border-radius:4px; color:#eee1d5; font:.65rem/1.2 var(--font-mono); letter-spacing:.04em; }
.cross-directory-arrow { color:#ffab6e; font-size:.85rem; }
.cross-directory-gender { color:#bdb1a7; font:.6rem/1.5 var(--font-mono); }
.cross-directory-info { display:flex; flex-direction:column; gap:12px; min-width:0; grid-column:2; grid-row:2; padding-top:4px; }
.cross-directory-team { font-size:.76rem; color:#b9b3af; line-height:1.4; overflow-wrap:anywhere; }
.cross-directory-equipment { grid-column:1 / -1; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:8px 12px; min-height:33px; padding-top:12px; border-top:1px solid #343438; }
.cross-directory-equipment:empty { display:none; }
.cross-directory-bike { display:inline-flex; align-items:center; gap:5px; color:#b7b1aa; font:.62rem var(--font-mono); }
.cross-directory-bike svg { width:22px; height:17px; fill:none; stroke:#c98858; stroke-width:1.3; }
.cross-directory-title { display:inline-flex; align-items:center; gap:6px; max-width:100%; color:#dfaa80; font:.6rem/1.5 var(--font-mono); overflow-wrap:anywhere; }
.cross-directory-title svg { flex:none; width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
@media(min-width:1101px) and (max-width:1400px) { .cross-directory-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
.cross-directory-filters { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.cross-directory-filters label { display:grid; gap:7px; min-width:0; color:var(--cross-muted); font:.68rem var(--font-mono); }
.cross-directory-filters select { width:100%; min-width:0; max-width:100%; padding:10px; border:1px solid #45403b; border-radius:6px; color:#d5d0cd; background:#19191b; font:.72rem var(--font-mono); }
.cross-directory-summary { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; margin:10px 0 16px; }
.cross-directory-summary p { margin:0; }
.cross-directory-summary button { font-size:.68rem; }
.cross-directory-facets { margin:8px 0 12px; }
.cross-directory-facets summary { color:#ffad73; font:.7rem var(--font-mono); width:max-content; padding:10px 0; }
.cross-directory-facets[open] summary { margin-bottom:8px; }
.cross-profile-facts dl { display:flex; gap:16px 28px; flex-wrap:wrap; margin:18px 0 12px; }
.cross-profile-facts dl > div { display:grid; gap:5px; }
.cross-profile-facts dt { color:var(--cross-muted); font:.65rem var(--font-mono); }
.cross-profile-facts dd { margin:0; font-size:.92rem; }
.cross-profile-facts a { text-underline-offset:4px; }
.cross-profile-titles { display:flex; gap:8px; flex-wrap:wrap; }
.cross-title-group { display:grid; gap:7px; min-width:0; max-width:100%; padding:14px 16px; border:1px solid #68472d; border-radius:8px; background:#f973160a; }
.cross-title-group strong { color:#ffad73; font:.85rem var(--font-mono); }
.cross-title-group > span { max-width:55ch; color:#c5b6a9; font:.68rem/1.6 var(--font-mono); overflow-wrap:anywhere; }
.cross-title-group summary { font:.63rem var(--font-mono); color:var(--cross-muted); }
.cross-title-group ul { margin:6px 0 0; padding-left:18px; font:.65rem/1.8 var(--font-mono); }
.cross-profile-titles > :is(a,span) { color:#ffad73; border:1px solid #68472d; border-radius:5px; padding:6px 9px; font:.67rem var(--font-mono); text-decoration:none; }
.cross-trend { display:inline-flex; align-items:center; gap:8px; font:.65rem var(--font-mono); color:var(--cross-muted); }
.cross-trend b { font-size:1.4rem; line-height:1; font-weight:400; }
.cross-trend-up { color:#baddb2; }
.cross-trend-down { color:#ffab6e; }
.cross-recent-places { display:flex; gap:5px; list-style:none; margin:12px 0 0; padding:0; }
.cross-recent-places li { display:grid; place-items:center; min-width:0; flex:1; max-width:36px; height:32px; border-radius:5px; border:1px solid #45403b; background:#242120; color:#bbb5af; font:.62rem var(--font-mono); }
.cross-recent-places li.is-podium { color:#ffab6e; border-color:#674a34; background:#f973160b; }
.cross-trend-help { margin-top:16px; max-width:70ch; }
.cross-trend-help summary { display:inline-flex; align-items:center; min-height:44px; font:.7rem var(--font-mono); color:var(--cross-muted); }
.cross-profile-trend { padding:16px 0; border-block:1px solid #343438; margin-top:16px; }
.cross-profile-recent-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px 20px; }
.cross-profile-recent-heading h3 { margin:0; font-size:1.2rem; }
.cross-profile-recent-races { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; list-style:none; margin:18px 0; padding:0; }
.cross-profile-recent-races li { min-width:0; }
.cross-profile-recent-races a { display:grid; grid-template-columns:58px minmax(0,1fr); align-items:start; gap:16px; height:100%; padding:18px; border:1px solid #3e3935; border-radius:10px; color:inherit; background:#1b1a19; text-decoration:none; }
.cross-profile-recent-races .is-podium a { border-color:#765032; background:linear-gradient(135deg,#f9731612,transparent),#1b1a19; }
.cross-profile-recent-races a:hover { border-color:#f97316; }
.cross-profile-recent-place { display:flex; flex-direction:column; align-items:center; gap:5px; padding-right:14px; border-right:1px solid #4a3c31; }
.cross-profile-recent-place > span { font:.65rem/1.4 var(--font-mono); color:#c6b9ae; text-align:center; max-width:100%; overflow-wrap:anywhere; }
.cross-profile-recent-place strong { font:600 2rem/1.2 var(--font-mono); color:#ffab6e; }
.cross-profile-recent-place.is-unclassified strong { font-size:1.15rem; color:#b9b0a7; }
.cross-profile-recent-race { display:flex; flex-direction:column; gap:9px; min-width:0; }
.cross-profile-recent-race time { color:#bbb0a6; font:.65rem/1.5 var(--font-mono); }
.cross-profile-recent-race > strong { font-size:.95rem; line-height:1.35; overflow-wrap:anywhere; }
.cross-profile-recent-race > strong span { color:#ffab6e; font-size:.75rem; }
.cross-profile-recent-race > span { color:#a99f96; font:.65rem/1.6 var(--font-mono); }
#profile-history-title { scroll-margin-top:110px; }
@media(max-width:1100px) { .cross-profile-recent-races { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { .cross-profile-recent-races { grid-template-columns:1fr; } .cross-profile-recent-races a { padding:16px; } }
.cross-results-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:24px; }
.cross-results-grid.is-both { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cross-results-grid.is-both .cross-result-card header { min-height:190px; }
.cross-result-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; flex:1; }
.cross-result-pair > section { min-width:0; display:grid; grid-template-rows:auto 1fr; }
.cross-result-pair h4 { margin:0 0 12px; color:#ffac73; font:.65rem/1.5 var(--font-mono); }
.cross-result-card .cross-result-pair .cross-mini-podium { margin:0; grid-template-rows:repeat(3,minmax(66px,1fr)); }
.cross-result-card .cross-result-pair .cross-mini-podium li { grid-template-columns:26px minmax(0,1fr); gap:7px; }
.cross-result-card .cross-result-pair .cross-mini-podium strong { font-size:.82rem; }
@media(max-width:650px) { .cross-results-grid.is-both { grid-template-columns:minmax(0,1fr); } }
@media(max-width:440px) { .cross-result-pair { grid-template-columns:minmax(0,1fr); gap:22px; } .cross-results-grid.is-both .cross-result-card header { min-height:0; } }
.cross-result-card { display:flex; flex-direction:column; padding:22px; border:1px solid #343438; border-radius:12px; background:radial-gradient(ellipse at top right,#f973160c,transparent 65%),#19191b; min-width:0; }
.cross-result-card header { display:flex; flex-direction:column; min-height:245px; padding-bottom:22px; }
.cross-result-top { display:flex; justify-content:space-between; align-items:flex-start; gap:14px; min-height:76px; }
.cross-result-date { display:grid; gap:3px; flex:none; }
.cross-result-date strong { color:#ffab6e; font:2.2rem/1 var(--font-mono); letter-spacing:-.06em; }
.cross-result-date > span { color:var(--cross-muted); font:.6rem/1.5 var(--font-mono); }
.cross-result-date.is-imprecise strong { font-size:1rem; letter-spacing:0; max-width:10ch; }
.cross-event-badge { display:inline-flex; align-items:center; justify-content:flex-start; gap:8px; min-width:0; max-width:220px; padding:6px 9px; color:#ffab6e; border:1px solid #5f4230; border-radius:8px; background:#f9731608; font:.6rem/1.4 var(--font-mono); text-align:left; }
button.cross-event-badge { cursor:pointer; }
:is(button,a).cross-event-badge:hover { background:#f973161c; border-color:#ffab6e; }
.cross-event-mark { display:flex; align-items:center; justify-content:center; width:40px; height:35px; flex:none; }
.cross-event-mark img { max-width:40px; max-height:35px; object-fit:contain; filter:url(#series-ink); }
.cross-event-mark svg { width:26px; height:26px; }
.cross-event-wordmark { font:900 .75rem/.9 var(--font-body,sans-serif); }
.cross-event-badge-arrow { color:#b47d53; }
.cross-result-card h3 { font-size:1.35rem; line-height:1.2; margin:20px 0 16px; overflow-wrap:anywhere; }
.cross-result-card h3 button { font-size:inherit; font-weight:700; line-height:inherit; }
.cross-result-card h3 button > span { color:#ffab6e; white-space:nowrap; }
.cross-result-location { display:flex; align-items:flex-start; gap:7px; color:var(--cross-muted); font:.66rem/1.5 var(--font-mono); margin-top:auto; }
.cross-result-location svg { width:12px; height:16px; flex:none; fill:none; stroke:#ffab6e; stroke-width:1.5; }
.cross-result-category { font:.58rem var(--font-mono); color:var(--cross-muted); margin:8px 0 0 19px; }
.cross-result-profile-badge { margin:0 0 20px; }
.cross-result-card .cross-mini-podium { margin-top:auto; }
.cross-result-card .cross-mini-podium li { display:grid; grid-template-columns:30px minmax(0,1fr) 28px; gap:10px; min-height:66px; }
.cross-result-card .cross-mini-podium .cross-podium-place { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; border:1px solid #4f4034; color:#b9ada3; font:.65rem var(--font-mono); }
.cross-result-card .cross-mini-podium .is-winner .cross-podium-place { color:#111; background:#f97316; border-color:#f97316; }
.cross-result-card .cross-mini-podium small { color:#8f8983; font:.55rem var(--font-mono); }
.cross-mini-podium { display:grid; grid-template-rows:repeat(3,minmax(44px,auto)); list-style:none; padding:0; margin:0; }
.cross-mini-podium li { display:flex; align-items:center; gap:12px; padding:8px 0; border-top:1px solid #343438; }
.cross-mini-podium li > span { color:#ffab6e; font:.7rem var(--font-mono); }
.cross-mini-podium strong { font-size:.9rem; line-height:1.35; min-width:0; overflow-wrap:anywhere; }
.cross-result-card > .cross-jump { display:flex; justify-content:space-between; gap:12px; align-items:center; min-height:44px; margin:18px 0 -6px; font:.7rem var(--font-mono); border:0; background:none; padding:0; color:#ffab6e; text-align:left; }
.cross-series-races { display:grid; gap:8px; }
.cross-series-races :is(button,a) { display:grid; grid-template-columns:140px minmax(0,1fr) 20px; gap:12px; align-items:center; border:1px solid #343438; border-radius:8px; background:#19191b; color:inherit; text-align:left; padding:12px; }
.cross-profile :is(#result-profile-body,#series-profile-body) .cross-table { min-width:0; white-space:normal; table-layout:fixed; }
.cross-profile :is(#result-profile-body,#series-profile-body) .cross-table :is(th,td):last-child { width:110px; }
.cross-profile :is(#result-profile-body,#series-profile-body) .cross-rider-name { overflow-wrap:anywhere; }
.is-review #rider-comparison { display:none; }
.cross-directory-toolbar { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:22px; }
.cross-directory-view { width:max-content; max-width:100%; }
.cross-success-controls { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-bottom:22px; padding-bottom:22px; border-bottom:1px solid #343438; }
.cross-success-controls.has-rate { grid-template-columns:repeat(4,minmax(0,1fr)); }
.cross-success-controls label { display:grid; gap:7px; color:var(--cross-muted); font:.68rem var(--font-mono); min-width:0; }
.cross-success-controls select { width:100%; min-width:0; padding:11px; color:#eee9e4; border:1px solid #63503f; border-radius:6px; background:#201d1a; font:.72rem var(--font-mono); }
.cross-success-controls select:disabled { opacity:.4; }
.cross-success-coverage { max-width:95ch; margin:0 0 24px; }
.cross-success-coverage a { color:#ffab6e; text-underline-offset:4px; }
.cross-archive-label { display:block; color:#ffab6e; margin-bottom:8px; }
.cross-success-heading { display:grid; grid-template-columns:36px minmax(0,1fr) minmax(320px,44%); gap:18px; align-items:center; padding:0 24px 12px; color:var(--cross-muted); font:.65rem var(--font-mono); }
.cross-success-heading > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.cross-success-heading button { border:0; border-bottom:1px solid #45403b; background:transparent; color:inherit; padding:9px 0; font:inherit; text-align:right; cursor:pointer; }
.cross-success-heading button:hover,.cross-success-heading button[aria-pressed="true"] { color:#ffab6e; border-color:#ffab6e; }
.cross-success-heading button:focus-visible { outline:2px solid #ffab6e; outline-offset:3px; }
.cross-success-heading.is-uci { grid-template-columns:36px minmax(0,1fr) minmax(90px,20%); }
.cross-success-heading.is-uci > div { grid-template-columns:1fr; }
.cross-success-list { display:grid; gap:10px; }
.cross-success-row { display:grid; position:relative; overflow:hidden; isolation:isolate; grid-template-columns:36px minmax(0,1fr) minmax(320px,44%); gap:18px; align-items:center; padding:18px 24px; border:1px solid #343438; border-radius:10px; background:#19191b; }
.cross-success-row::before { content:''; position:absolute; z-index:-1; inset:0 auto 0 0; width:var(--success-fill); background:linear-gradient(90deg,#f973160d,#f9731621); border-right:1px solid #f9731630; }
.cross-success-rank { color:#f99a57; font:1rem var(--font-mono); }
.cross-success-person { display:grid; gap:6px; min-width:0; }
.cross-success-person .cross-rider-name { font-size:1.1rem; overflow-wrap:anywhere; }
.cross-success-person > span { color:var(--cross-muted); font:.62rem/1.5 var(--font-mono); overflow-wrap:anywhere; }
.cross-success-row dl { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:0; }
.cross-success-row dl > div { display:flex; flex-direction:column-reverse; gap:4px; text-align:right; }
.cross-success-row dt { color:var(--cross-muted); font:.58rem var(--font-mono); }
.cross-success-row dd { margin:0; font:1.25rem var(--font-mono); }
.cross-success-row .is-selected dd { color:#ffab6e; }
.cross-success-row.is-uci { grid-template-columns:36px minmax(0,1fr) minmax(90px,20%); }
.cross-success-row.is-uci dl { grid-template-columns:1fr; }
#profile-stats { grid-template-columns:repeat(4,minmax(0,1fr)); margin-bottom:10px; }
.cross-profile-uci { margin:24px 0; }
.cross-profile-uci > div { display:flex; flex-wrap:wrap; gap:10px 24px; align-items:baseline; padding:18px; background:#f973160c; border-radius:8px; border:1px solid #4e3a2c; }
.cross-profile-uci strong { color:#ffab6e; font-size:1.8rem; }
.cross-profile-uci > div > span:last-child { font:.65rem var(--font-mono); color:var(--cross-muted); }
.cross-palmares-list { display:grid; gap:8px; margin:16px 0 24px; }
.cross-palmares-total { color:#ffab6e; font-size:2rem; margin-right:8px; }
.cross-palmares-list > div { display:grid; grid-template-columns:50px minmax(0,1fr) auto; align-items:center; gap:14px; padding:12px 0; border-bottom:1px solid #343438; }
.cross-palmares-list b { color:#ffab6e; font:.8rem var(--font-mono); }
.cross-palmares-list a { color:var(--cross-muted); font:.6rem var(--font-mono); }
.cross-retired-label { color:#ffab6e; font:.75rem var(--font-mono); }
@media(max-width:750px) {
  .cross-success-row { grid-template-columns:28px minmax(0,1fr); gap:10px; padding:16px; }
  .cross-success-heading { grid-template-columns:28px minmax(0,1fr); gap:10px; padding:0 16px 12px; }
  .cross-success-heading > div { grid-column:1/-1; }
  .cross-success-heading button { text-align:left; }
  .cross-success-heading.is-uci { grid-template-columns:28px minmax(0,1fr) auto; }
  .cross-success-heading.is-uci > div { grid-column:auto; }
  .cross-success-row dl { grid-column:1/-1; }
  .cross-success-row dl > div { text-align:left; }
  .cross-success-row dd { font-size:1.05rem; white-space:nowrap; }
  .cross-success-row dt { min-height:2.6em; line-height:1.3; }
  .cross-success-row.is-uci { grid-template-columns:28px minmax(0,1fr) auto; }
  .cross-success-row.is-uci dl { grid-column:auto; }
  .cross-success-row.is-uci dl > div { text-align:right; }
  .cross-success-controls,.cross-success-controls.has-rate { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cross-success-controls label:last-child { grid-column:1/-1; }
  #profile-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:380px) { .cross-success-row:not(.is-uci) dl { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.cross-page:not(.is-race-view) .cross-more-races { padding-top:32px; border-top:0; }
.cross-race-overview { grid-template-columns:repeat(4,minmax(0,1fr)); }
.cross-favorites { grid-template-rows:auto auto auto auto; }
@media(max-width:1000px) {
  .cross-series-grid, .cross-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cross-results-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:650px) {
  .cross-hub-intro { padding-top:24px; }
  .cross-hub-toolbar { align-items:start; flex-direction:column; gap:8px; }
  .cross-hub-toolbar nav { gap:4px 20px; }
  .cross-hub-toolbar .cross-category { width:100%; }
  .cross-hub-section { padding:28px 0; }
  .cross-series-card { padding:16px 12px; gap:12px; }
  .cross-series-logo { height:50px; }
  .cross-series-logo img { max-height:48px; }
  .cross-duck { width:45px; height:40px; }
  .series-x2o { gap:4px; }
  .series-x2o img { width:58px; max-height:58px; min-width:0; }
  .cross-series-card > strong { font-size:1rem; }
  .cross-series-leader > span { font-size:.8rem; }
  .cross-directory-grid,.cross-results-grid { grid-template-columns:minmax(0,1fr); }
  .cross-result-card { padding:18px; }
  .cross-result-card header { min-height:0; padding-bottom:18px; }
  .cross-result-top { min-height:58px; }
  .cross-result-card h3 { margin:18px 0 14px; }
  .cross-event-badge { max-width:210px; }
  .cross-directory-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cross-page .cross-directory-open { min-height:205px; padding:16px; grid-template-columns:72px minmax(0,1fr); column-gap:16px; }
  .cross-directory-identity strong { font-size:1.05rem; }
  .cross-race-overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cross-series-races :is(button,a) { grid-template-columns:minmax(0,1fr) 20px; }
  .cross-series-races time { grid-column:1/-1; }
  .cross-series-races strong { overflow-wrap:anywhere; }
  .cross-profile :is(#result-profile-body,#series-profile-body) .cross-table :is(th,td) { padding:12px 6px; }
  .cross-profile :is(#result-profile-body,#series-profile-body) .cross-table :is(th,td):first-child { width:24px; padding-left:0; }
  .cross-profile :is(#result-profile-body,#series-profile-body) .cross-table :is(th,td):last-child { width:78px; padding-right:0; font-size:.62rem; }
}
.cross-race-topline { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:22px; }
.cross-race-topline nav { display:flex; gap:24px; font:.72rem var(--font-mono); }
.cross-race-topline nav a { color:var(--cross-muted); text-decoration:none; min-height:44px; display:inline-flex; align-items:center; }
.cross-race-topline nav a:hover { color:var(--color-accent); }
.cross-race-heading { padding:0 0 28px; align-items:center; }
.cross-race-heading #race-title { font:700 clamp(2.5rem,5.8vw,4.4rem)/1.08 var(--font-display); letter-spacing:-.045em; margin:0 0 12px; overflow-wrap:anywhere; }
.cross-race-heading #race-meta { font-size:.84rem; margin:0; }
.cross-race-heading .cross-course-open { min-height:36px; margin:10px 0 0; font-size:.68rem; }
.cross-countdown { margin:0 0 20px; font:.75rem var(--font-mono); color:#ffab6e; }
.cross-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto repeat(3,minmax(132px,auto)); gap:12px 24px; }
.cross-comparison-column { display:grid; grid-template-rows:subgrid; grid-row:span 4; min-width:0; }
.cross-column-heading { padding:4px 0 10px; }
.cross-column-heading h2 { font:700 clamp(1.55rem,3vw,2.1rem)/1.15 var(--font-display); letter-spacing:-.035em; margin:10px 0; }
.cross-column-heading .cross-small { min-height:24px; }
.cross-column-heading a { text-underline-offset:4px; }
.cross-podium-list { display:contents; }
.cross-podium-card { display:grid; grid-template-columns:34px minmax(0,1fr) auto; grid-template-rows:1fr auto; gap:6px 14px; padding:20px; border:1px solid #363638; border-radius:12px; background:linear-gradient(125deg,#222224,#19191b); min-width:0; }
.cross-podium-rank { color:#77716c; font:700 1.6rem/1.25 var(--font-display); grid-row:1 / span 2; letter-spacing:-.06em; }
.cross-podium-card:first-of-type .cross-podium-rank { color:#ffab6e; }
.cross-podium-rider { min-width:0; }
.cross-podium-rider h3 { font:700 clamp(1rem,1.7vw,1.25rem)/1.25 var(--font-display); letter-spacing:-.025em; margin:0; min-height:2.5em; }
.cross-podium-rider .cross-country { margin-top:8px; }
.cross-podium-metric { text-align:right; grid-column:3; grid-row:1 / span 2; align-self:center; }
.cross-podium-metric strong { display:block; font:700 clamp(1.35rem,2.5vw,1.8rem)/1.15 var(--font-display); letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.cross-podium-metric span { display:block; font:.6rem/1.5 var(--font-mono); color:var(--cross-muted); margin-top:5px; }
.cross-podium-foot { grid-column:2; font:.63rem/1.5 var(--font-mono); color:#b7b1ac; margin:5px 0 0; }
.cross-podium-caption { margin:18px 0 6px; font-size:.65rem; }
.cross-field .cross-coverage { border:0; background:none; padding:0; margin:16px 0; }
.cross-result-pending { grid-row:2 / span 3; border:1px dashed #47413b; border-radius:12px; background:#19191b; padding:36px; display:flex; flex-direction:column; justify-content:center; }
.cross-result-pending h3 { font:700 1.6rem/1.2 var(--font-display); margin:16px 0; }
.cross-result-pending > p:last-child { color:var(--cross-muted); font-size:.85rem; line-height:1.7; }
.cross-race-details { margin:4px 0 30px; border-bottom:1px solid #343438; }
.cross-race-details summary { display:list-item; color:var(--cross-muted); font:.7rem var(--font-mono); padding:14px 0 18px; }
.cross-race-details-copy { padding:0 0 18px; max-width:85ch; color:var(--cross-muted); font-size:.76rem; line-height:1.7; }
.cross-race-details-copy p { margin:10px 0; }
.cross-race-details-copy a { text-underline-offset:4px; }
.cross-race-details-copy #coverage-note { margin:10px 0; padding:0; border:0; background:none; font:inherit; color:inherit; }
.cross-favorites { grid-template-rows:auto auto auto auto; row-gap:0; }
.cross-favorite { display:grid; grid-template-rows:subgrid; grid-row:span 4; }
.cross-favorite h3 { display:grid; grid-template-rows:1fr auto; align-items:start; min-height:3.6em; }
.cross-favorite .cross-probability { align-self:end; }
.cross-favorite .cross-country { align-self:end; }
.cross-page .cross-rider-name { display:inline-flex; align-items:baseline; gap:.25em; max-width:100%; }
.cross-rider-label { min-width:0; overflow-wrap:anywhere; }
.cross-profile-arrow { flex-shrink:0; }
.cross-favorite .cross-profile-arrow, .cross-podium-card .cross-profile-arrow { display:none; }
.is-review .cross-play-grid { grid-template-columns:minmax(0,1fr); margin:24px 0; }
.is-review .cross-play-grid .cross-open-race, .is-review .cross-pick :is(.cross-eyebrow,h2,.cross-muted,.cross-pick-steps,select,.cross-pick-actions,#pick-storage) { display:none; }
.is-review .cross-pick { padding:18px 22px; border-color:#3b3937; background:#19191b; }
.is-review .cross-reaction { margin:0; min-height:0; color:#ddd6d1; }
.cross-more-races { padding:36px 0; border-top:1px solid #343438; scroll-margin-top:24px; }
.cross-more-races .cross-section-heading { align-items:center; }
.cross-race-picker { display:flex; align-items:center; gap:12px; }
.cross-more-races .cross-race-select { max-width:100%; }
.cross-more-races .cross-race-overview { margin-bottom:18px; }
.cross-more-races #checked-at { font-size:.63rem; }
@supports not (grid-template-rows:subgrid) { .cross-favorite { display:flex; flex-direction:column; } .cross-favorite h3 { flex:1; } .cross-comparison-column { display:block; } .cross-podium-list { display:grid; gap:12px; } .cross-podium-card { min-height:132px; } }
@media(max-width:900px) {
 .cross-comparison { column-gap:16px; }
 .cross-podium-card { padding:18px 14px; column-gap:10px; grid-template-columns:26px minmax(0,1fr); grid-template-rows:auto auto auto; align-content:start; }
 .cross-podium-rank { font-size:1.35rem; grid-row:1; }
 .cross-podium-metric { grid-column:2; grid-row:2; text-align:left; display:flex; align-items:baseline; gap:8px; }
 .cross-podium-foot { grid-column:2; margin-top:2px; }
}
@media(max-width:620px) {
 .cross-race { padding-top:18px; }
 .cross-race-topline { margin-bottom:14px; align-items:start; gap:10px; }
 .cross-race-topline .cross-eyebrow { font-size:.56rem; max-width:17ch; padding-top:10px; }
 .cross-race-topline nav { gap:12px; font-size:.6rem; }
 .cross-race-heading { gap:16px; padding-bottom:22px; }
 .cross-race-heading #race-title { font-size:clamp(2.2rem,10vw,3rem); }
 .cross-race-heading #race-meta { font-size:.72rem; line-height:1.7; }
 .cross-comparison { gap:10px; grid-template-rows:auto repeat(3,minmax(208px,auto)); }
 .cross-column-heading { padding-bottom:5px; }
 .cross-column-heading h2 { font-size:clamp(1.05rem,4.2vw,1.5rem); }
 .cross-column-heading :is(.cross-small,.cross-eyebrow) { font-size:.55rem; }
 .cross-column-heading .cross-small { min-height:3.4em; }
 .cross-podium-card { grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto auto auto; padding:14px 12px; gap:10px; align-content:start; }
 .cross-podium-rank { grid-row:auto; font-size:1.15rem; }
 .cross-podium-rider h3 { font-size:1rem; min-height:3.75em; }
 .cross-podium-metric { grid-column:1; grid-row:auto; flex-direction:column; align-items:start; gap:0; }
 .cross-podium-metric strong { font-size:1.6rem; }
 .cross-podium-metric span { margin-top:3px; font-size:.56rem; }
 .cross-podium-foot { grid-column:1; font-size:.56rem; line-height:1.5; }
 .cross-podium-caption { font-size:.61rem; line-height:1.6; }
 .cross-result-pending { padding:18px; }
 .cross-result-pending h3 { font-size:1.2rem; overflow-wrap:anywhere; }
 .cross-result-pending > p:last-child { font-size:.73rem; }
 .cross-favorites { row-gap:12px; grid-template-rows:none; }
 .cross-favorite { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto auto auto; grid-row:auto; }
 .cross-favorite h3 { min-height:0; margin:14px 0; font-size:1.3rem; }
 .cross-favorite .cross-rider-name { grid-column:auto; margin:0; }
 .cross-favorite .cross-country { margin-top:8px; }
 .cross-more-races .cross-race-picker { display:block; }
 .cross-more-races .cross-race-select { display:block; padding-left:0 !important; font-size:.65rem !important; }
}

.cross-series-winners > article > .cross-series-person { font:600 1rem var(--font-display); color:inherit; }

.cross-series-summary:empty { display:none; }
/* A race always presents both Elite categories; only long lists collapse. */
.cross-race-category-links { display:flex; flex-wrap:wrap; gap:12px; margin:0 0 24px; }
.cross-race-category-links a { display:flex; align-items:center; gap:12px; padding:10px 14px; border:1px solid #4a3b30; border-radius:8px; text-decoration:none; color:#eee7df; font:.72rem var(--font-mono); }
.cross-race-category-links a > span { color:#ffab6e; }
.cross-race-categories,.cross-race-history-both,.cross-course-both,.cross-result-both { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; align-items:start; }
.cross-race-category { border:1px solid #3e3630; border-radius:14px; padding:24px; background:radial-gradient(ellipse at top right,#f9731608,transparent 70%),#19191b; min-width:0; scroll-margin-top:24px; }
.cross-category-heading { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 16px; border-bottom:1px solid #40372f; padding-bottom:18px; margin-bottom:20px; align-items:center; }
.cross-category-heading h3 { margin:0; font-size:1.5rem; }
.cross-category-heading > span { color:#ffab6e; font:.7rem var(--font-mono); }
.cross-category-pending > p:not(.cross-eyebrow) { color:#c4bdb6; font-size:.95rem; line-height:1.6; }
.cross-category-check { display:grid; gap:10px; margin:24px 0; padding:20px 0; border-block:1px solid #3b332c; }
.cross-category-check > span { color:#b6ada5; font:.65rem var(--font-mono); }
.cross-category-check > strong { color:#ffab6e; font:700 clamp(1.4rem,2.6vw,2rem) var(--font-display); }
.cross-category-check time,.cross-category-check small { color:#aaa29a; font:.65rem/1.6 var(--font-mono); }
.cross-category-pending > .cross-jump { display:inline-flex; padding:8px 0; font:.7rem var(--font-mono); }
.cross-category-clock { font:.72rem var(--font-mono); color:#ffab6e; }
.cross-category-favorites { display:grid; gap:12px; }
.cross-category-favorite { display:grid; grid-template-columns:28px minmax(0,1fr) minmax(88px,auto); gap:12px; align-items:center; padding:18px 0; border-bottom:1px solid #38332e; }
.cross-category-rank { color:#ffab6e; font:.75rem var(--font-mono); }
.cross-category-favorite .cross-rider-name { font-size:1.1rem; }
.cross-category-chance { display:grid; gap:4px; text-align:right; }
.cross-category-chance strong { color:#ffab6e; font:700 1.7rem var(--font-display); }
.cross-category-chance > span,.cross-category-chance small { color:#aaa29a; font:.6rem var(--font-mono); }
.cross-race-category .cross-race-details { margin:20px 0; }
.cross-race-category .cross-race-details summary,.cross-gender-field > summary { cursor:pointer; min-height:44px; padding:12px 0; color:#ffab6e; font:.72rem/1.5 var(--font-mono); }
.cross-gender-field { margin-top:18px; border-top:1px solid #3b332c; }
.cross-gender-field-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.cross-gender-field-controls label { display:grid; gap:6px; min-width:0; color:#aaa29a; font:.62rem var(--font-mono); }
.cross-gender-field-controls :is(input,select) { box-sizing:border-box; width:100%; min-width:0; padding:10px; border:1px solid #4d4137; border-radius:6px; color:#eee7df; background:#211f1d; font:.7rem var(--font-mono); }
.cross-gender-field .cross-table { min-width:730px; }
.cross-gender-field .cross-table :is(th,td) { padding:12px 8px; }
.cross-gender-field .cross-table th { font-size:.62rem; }
.cross-gender-review > header,.cross-gender-review-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.cross-gender-review > header h4 { margin:0 0 14px; color:#aaa29a; font:.65rem var(--font-mono); }
.cross-gender-review-row { margin-bottom:10px; }
.cross-gender-podium { display:grid; grid-template-columns:20px minmax(0,1fr); grid-template-rows:minmax(65px,auto) auto auto auto; align-content:start; gap:5px 8px; min-width:0; border:1px solid #41352d; border-radius:8px; padding:12px 10px; background:#f9731605; }
.cross-gender-podium > .cross-category-rank { grid-column:1; }
.cross-gender-podium > div { grid-column:2; min-width:0; }
.cross-gender-podium .cross-rider-name { font-size:.85rem; }
.cross-gender-podium > strong,.cross-gender-podium > small,.cross-gender-podium > p { grid-column:2; margin:0; }
.cross-gender-podium > strong { color:#ffab6e; font:700 1.2rem var(--font-display); }
.cross-gender-podium > small,.cross-gender-podium > p,.cross-gender-result-pending { font:.6rem/1.5 var(--font-mono); color:#aaa29a; }
.cross-gender-result-pending { padding:12px; border:1px dashed #534032; border-radius:8px; }
.cross-gender-result-source { display:inline-block; margin-top:12px; color:#ffab6e; }
.cross-history-category { min-width:0; }
.cross-history-category > h4 { font-size:1.2rem; margin:0 0 16px; }
.cross-history-category .cross-insight-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.cross-history-category .cross-insight { padding:18px; min-width:0; }
.cross-history-category .cross-insight-value { font-size:2.3rem; }
.cross-history-category .cross-insight .cross-rider-name { font-size:1rem; }
#race-profile,#result-profile { width:min(1160px,calc(100vw - 32px)); max-width:1160px; }
.cross-course-category-history,.cross-result-both > section { min-width:0; }
.cross-course-category-history > h4,.cross-result-both > section > h3 { font-size:1.3rem; margin:18px 0 12px; color:#ffab6e; }
.cross-course-category-leaders { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin:16px 0 22px; }
.cross-course-category-leaders > div { display:grid; gap:6px; border:1px solid #44372c; border-radius:8px; padding:12px; }
.cross-course-category-leaders strong { font-size:.8rem; overflow-wrap:anywhere; }
.cross-course-category-leaders span { color:#ffab6e; font:.62rem var(--font-mono); }
.cross-course-both .cross-table { min-width:0; table-layout:fixed; white-space:normal; font-size:.75rem; }
.cross-course-both .cross-table :is(th,td) { padding:12px 7px; overflow-wrap:anywhere; }
.cross-course-both .cross-table :is(th,td):first-child { width:88px; }
.cross-course-both .cross-table :is(th,td):last-child { min-width:0; width:88px; }
.cross-course-both .cross-course-podium { min-width:0; }
.cross-course-both .cross-rider-name { font-size:.75rem; }
.cross-course-both .cross-course-podium li { margin-bottom:8px; }
.cross-result-both .cross-table .cross-rider-name { font-size:.85rem; }
.cross-result-both .cross-course-links { font-size:.75rem; }
.cross-result-course-open { display:inline-block; margin-top:24px; }
@media(max-width:850px) {
  .cross-race-categories,.cross-race-history-both,.cross-course-both,.cross-result-both { grid-template-columns:minmax(0,1fr); }
  .cross-race-category { padding:20px; }
  .cross-category-heading h3 { font-size:1.3rem; }
}
@media(max-width:450px) {
  .cross-race-category { padding:16px; }
  .cross-race-category-links a { flex:1; flex-wrap:wrap; gap:6px; padding:10px; font-size:.65rem; }
  .cross-category-favorite { gap:8px; grid-template-columns:22px minmax(0,1fr) 78px; }
  .cross-category-favorite .cross-rider-name { font-size:.95rem; }
  .cross-category-chance strong { font-size:1.4rem; }
  .cross-history-category .cross-insight-grid { gap:8px; }
  .cross-history-category .cross-insight { padding:12px; }
  .cross-history-category .cross-insight .cross-rider-name { font-size:.85rem; }
  .cross-history-category .cross-insight-value { font-size:1.9rem; }
}

.cross-category-forecast-title { color:#b9afa6; font:.7rem var(--font-mono); margin:0 0 8px; }
/* Race Hub navigation and current-form sorting. */
.cross-header { position:sticky; top:0; z-index:90; background:#111113f5; backdrop-filter:blur(14px); }
.cross-nav { display:flex; gap:22px; }
.cross-race-topline nav { flex-wrap:wrap; }
.cross-directory-sort { display:grid; gap:7px; max-width:320px; color:var(--cross-muted); font:.68rem var(--font-mono); margin:0 0 22px; }
.cross-directory-sort select { width:100%; padding:11px; color:#eee9e4; border:1px solid #63503f; border-radius:6px; background:#201d1a; font:.72rem var(--font-mono); }
.cross-form-missing { color:#918a84; font:.6rem var(--font-mono); }
@media(max-width:650px) { .cross-header .cross-nav { display:none; } .cross-directory-sort { max-width:none; } .cross-race-topline nav { gap:8px 16px; } }

.cross-race-topline nav #hub-back { color:var(--color-accent); font-weight:700; }

.cross-race-topline > .site-breadcrumbs { flex:1; font: .72rem/1.6 var(--font-mono); }
.cross-race-topline > .site-breadcrumbs a, .cross-race-topline nav #hub-back { color:var(--color-accent); font-weight:400; }
.cross-race-topline > .site-breadcrumbs [aria-current="page"] { color:var(--color-text); }
@media(max-width:650px) { .cross-race-topline { flex-wrap:wrap; gap:0 16px; } .cross-race-topline > .site-breadcrumbs { flex-basis:100%; font-size:.63rem; } }

/* Entity pages share the document scroll, header and footer. */
.cross-detail-page { padding:0 0 60px; }
.cross-detail-path { padding:34px 0 20px; }
.cross-detail-page .cross-profile-heading :is(h1,h2) { font:700 clamp(2.2rem,5.8vw,4.4rem)/1.08 var(--font-display); letter-spacing:-.045em; margin:12px 0 18px; }
.is-detail-view .cross-container > :not(.cross-detail-page):not(#detail-path):not(#hub-search):not(#loading-state):not(#error-state):not(noscript) { display:none !important; }
.is-detail-view .cross-search-suggestions, .is-race-view .cross-search-suggestions { display:none; }
.cross-page :is(.cross-series-card,.cross-directory-open,.cross-race-overview a,.cross-series-races a,.cross-series-results a) { text-decoration:none; }
.cross-page a.cross-series-card { color:inherit; }
.cross-detail-page .cross-profile-heading { position:static; background:transparent; }
.cross-detail-page .cross-profile-stats { grid-template-columns:repeat(4,minmax(0,1fr)); }
.cross-detail-page .cross-course-podium .cross-rider-name { color:inherit; }
@media(max-width:650px) { .cross-detail-page { width:100%; max-height:none; padding:0 0 40px; } .cross-detail-path { padding:22px 0 12px; } .cross-detail-page .cross-profile-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } }

.cross-page a.cross-rider-name { text-decoration:none; }
.cross-page a.cross-rider-name:hover { text-decoration:underline; text-underline-offset:4px; }

/* Series: recognisable identity, then the published classification. */
#series-profile .cross-series-page-heading { align-items:center; justify-content:flex-start; gap:28px; margin-bottom:12px; }
#series-profile .cross-series-page-heading > div:last-child { flex:1; min-width:0; }
.cross-series-page-mark { flex:0 0 170px; min-width:0; padding:20px; border:1px solid #503a28; border-radius:12px; background:#f9731609; }
.cross-series-page-mark .cross-series-logo { height:70px; justify-content:center; }
.cross-series-page-mark .cross-series-logo img { max-height:70px; }
#series-profile .cross-series-page-heading h1 { font-size:clamp(2rem,4.3vw,3.4rem); margin:8px 0; }
#series-profile .cross-series-page-heading .cross-eyebrow { margin:0; }
#series-profile .cross-series-controls { align-items:center; margin:16px 0 18px; }
#series-profile .cross-series-intro { margin:0 0 16px; gap:10px; }
.cross-series-standings { margin:0 0 30px; border:1px solid #38302a; border-radius:12px; overflow:hidden; background:#18171980; scroll-margin-top:100px; }
.cross-series-standings-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; padding:18px 20px; border-bottom:1px solid #38302a; }
#series-profile .cross-series-standings-heading h3 { margin:0; font-size:1.1rem; }
.cross-series-standings .cross-table { width:100%; margin:0; }
#series-profile-body .cross-series-standings .cross-table { table-layout:auto; }
#series-profile-body .cross-series-standings :is(th,td) { padding:13px 20px; }
#series-profile-body .cross-series-standings :is(th,td):first-child { width:60px; color:var(--cross-muted); }
#series-profile-body .cross-series-standings :is(th,td):nth-last-child(-n+2) { text-align:right; width:130px; white-space:nowrap; font-family:var(--font-mono); }
.cross-series-standings tbody tr.is-leader { background:#f9731612; }
.cross-series-standings tbody tr.is-leader td:first-child { color:#ffab6e !important; }
.cross-series-standings tbody tr:hover { background:#f9731609; }
.cross-series-standings .cross-standing-country { display:inline-block; color:var(--cross-muted); font:.6rem var(--font-mono); margin-left:10px; }
.cross-series-standings .cross-standing-total { color:#ffab6e; font-weight:600; }
.cross-series-standings .cross-standing-behind { color:var(--cross-muted); font-size:.68rem; }
.cross-series-table-note { padding:12px 20px; margin:0; border-top:1px solid #38302a; }
.cross-series-empty { border:1px solid #44382e; background:#f9731608; border-radius:12px; padding:20px; margin:0 0 24px; }
.cross-series-empty > p { margin:0 0 8px; }
.cross-series-empty .cross-series-champion { display:flex; flex-wrap:wrap; align-items:baseline; gap:8px 16px; margin-top:14px; }
@media(max-width:650px) {
 #series-profile .cross-series-page-heading { gap:16px; }
 .cross-series-page-mark { flex-basis:98px; padding:12px; }
 .cross-series-page-mark .cross-series-logo { height:56px; }
 .cross-series-page-mark .cross-series-logo img { max-height:56px; }
 .cross-series-page-mark .cross-duck { width:34px; height:40px; }
 .cross-series-page-mark .series-x2o { gap:3px; }
 #series-profile .cross-series-page-heading h1 { font-size:clamp(1.55rem,6vw,2.1rem); overflow-wrap:normal; }
 #series-profile .cross-series-controls { flex-direction:row; gap:10px; }
 #series-profile .cross-series-controls .cross-category { width:100%; }
 #series-profile .cross-series-controls label { margin-left:auto; }
 #series-profile .cross-series-controls select { padding:10px; }
 .cross-series-standings-heading { padding:14px 12px; }
 #series-profile-body .cross-series-standings :is(th,td) { padding:12px 8px; }
 #series-profile-body .cross-series-standings :is(th,td):first-child { width:28px; padding-left:12px; }
 #series-profile-body .cross-series-standings :is(th,td):nth-last-child(-n+2) { width:auto; font-size:.64rem; }
 #series-profile-body .cross-series-standings :is(th,td):last-child { padding-right:12px; }
 .cross-series-table-note { padding:12px; }
 .cross-series-standings .cross-standing-country { display:block; margin:3px 0 0; }
 #series-profile #series-profile-body .cross-series-standings .cross-table { table-layout:fixed; }
 #series-profile #series-profile-body .cross-series-standings :is(th,td):first-child { width:28px; padding-left:12px; padding-right:4px; }
 #series-profile #series-profile-body .cross-series-standings :is(th,td):nth-last-child(2) { width:72px; }
 #series-profile #series-profile-body .cross-series-standings :is(th,td):last-child { width:74px; padding-right:12px; }
}
