
@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  font-stretch: 62% 125%;
  src: url(fonts/archivo-latin-ext-wdth-normal.woff2) format("woff2-variations");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  font-stretch: 62% 125%;
  src: url(fonts/archivo-latin-wdth-normal.woff2) format("woff2-variations");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
:root {
  --mist: #e2e8e6;
  --foam: #f6f8f6;
  --sea: #0e3340;
  --silt: #52666a;
  --line: #c5cfcc;
  --plate: #f2c12e;
  --alert: #a3341f;
  --ok: #24624a;
  --font: "Archivo", "Arial Narrow", Arial, sans-serif;
  --step--1: 0.875rem;
  --step-0: 1.0625rem;
  --step-1: 1.25rem;
  --step-2: 1.6rem;
  --step-3: 2.4rem;
  --display: clamp(2.6rem, 8.5vw, 5.75rem);
  --gutter: 1rem;
  --max: 66rem;
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--mist);
  color: var(--sea);
  font-family: var(--font);
  font-size: var(--step-0);
  line-height: 1.55;
  font-stretch: 100%;
}
a { color: inherit; text-decoration-thickness: 1.5px; text-underline-offset: 0.18em; }
a:hover { text-decoration-color: var(--plate); text-decoration-thickness: 3px; }
:focus-visible { outline: 3px solid var(--sea); outline-offset: 2px; border-radius: 3px; }
.num { font-variant-numeric: tabular-nums; }
.muted { color: var(--silt); }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: -999px; top: 0; background: var(--plate); padding: 0.5rem 1rem; z-index: 10; }
.skip:focus { left: 0.5rem; top: 0.5rem; }
[hidden] { display: none !important; }
.wrap { max-width: var(--max); margin: 0 auto; padding: 0 var(--gutter); }
@media (min-width: 720px) { :root { --gutter: 2rem; } }
.site-head { background: var(--sea); color: var(--foam); }
.site-head__in { display: flex; align-items: center; justify-content: space-between; gap: 1rem; min-height: 3.75rem; }
.site-head :focus-visible { outline-color: var(--plate); }
.brand { display: flex; align-items: center; gap: 0.6rem; text-decoration: none; }
.brand__name { font-stretch: 70%; font-weight: 700; font-size: var(--step-1); letter-spacing: 0.01em; }
.site-nav { display: flex; gap: 1.25rem; }
.site-nav a { text-decoration: none; font-weight: 500; padding: 0.35rem 0; border-bottom: 3px solid transparent; }
.site-nav a:hover, .site-nav a[aria-current] { border-bottom-color: var(--plate); }
@media (max-width: 520px) { .brand__name { display: none; } .site-nav { gap: 1rem; } }
main.wrap { padding-top: 2.25rem; padding-bottom: 4rem; min-height: 60vh; }
@media (min-width: 720px) { main.wrap { padding-top: 3rem; } }
.site-foot { border-top: 1px solid var(--line); color: var(--silt); font-size: var(--step--1); padding: 1.5rem 0 2.5rem; }
.site-foot p { margin: 0; max-width: 60ch; }
.display {
  font-stretch: 62%;
  font-weight: 800;
  font-size: var(--display);
  line-height: 0.92;
  letter-spacing: -0.005em;
  margin: 0 0 0.6rem;
  text-wrap: balance;
}
.display a { text-decoration: none; }
.display a:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 0.08em; }
.meta { color: var(--silt); margin: 0 0 1.75rem; max-width: 60ch; }
.intro { font-size: var(--step-1); font-weight: 500; margin: 0 0 2.25rem; max-width: 34ch; line-height: 1.35; }
.section-title { font-stretch: 70%; font-weight: 800; font-size: var(--step-2); margin: 2.75rem 0 0.75rem; line-height: 1.1; }
.empty { color: var(--silt); padding: 2rem 0; }
.more { font-weight: 600; }
.plate {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 2.5rem; height: 1.9rem; padding: 0 0.4rem;
  border: 2px solid var(--sea); border-radius: 7px 7px 9px 9px;
  background: var(--foam);
  font-stretch: 72%; font-weight: 800; font-size: 1.05rem; line-height: 1;
  font-variant-numeric: tabular-nums;
}
.plate--podium { background: var(--plate); }
.plate--out { border-style: dashed; border-color: var(--silt); color: var(--silt); background: transparent; font-size: 0.75rem; font-weight: 700; min-width: 2.5rem; }
.plate--lg { min-width: 3.1rem; height: 2.6rem; font-size: 1.5rem; border-width: 2.5px; }
.plate--brand { background: var(--plate); color: var(--sea); border-color: var(--plate); min-width: 0; height: 1.75rem; font-size: 0.9rem; letter-spacing: 0.04em; }
.latest__kicker { margin: 0 0 0.25rem; color: var(--silt); font-weight: 500; }
.podiums { display: grid; gap: 2rem; margin: 0.5rem 0 1.5rem; }
@media (min-width: 760px) { .podiums { grid-template-columns: 1fr 1fr; gap: 3rem; } }
.podium__title { font-size: var(--step-0); font-weight: 600; color: var(--silt); margin: 0 0 0.6rem; }
.podium__list { list-style: none; margin: 0; padding: 0; }
.podium__row {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 0.9rem;
  padding: 0.55rem 0.6rem 0.55rem 0;
}
.podium__row + .podium__row { border-top: 1px solid var(--line); }
.podium__name { font-stretch: 75%; font-weight: 700; font-size: var(--step-2); line-height: 1.1; text-decoration: none; }
.podium__name:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 3px; }
.podium__time { color: var(--silt); font-weight: 500; }
.race-list { list-style: none; margin: 0; padding: 0; }
.race-list__item {
  display: grid; grid-template-columns: 6.5rem 1fr; gap: 0.15rem 1rem; align-items: baseline;
  padding: 0.75rem 0; border-top: 1px solid var(--line);
}
.race-list__date { color: var(--silt); font-size: var(--step--1); }
.race-list__name { font-weight: 700; font-stretch: 80%; font-size: var(--step-1); }
.race-list__winners { grid-column: 2; color: var(--silt); font-size: var(--step--1); }
.race-list__winners span + span::before { content: ", "; }
@media (min-width: 760px) {
  .race-list__item { grid-template-columns: 7rem 1fr auto; }
  .race-list__winners { grid-column: 3; text-align: right; }
}
.tabs { display: flex; gap: 1.75rem; border-bottom: 1px solid var(--line); margin-bottom: 1.1rem; }
.tab {
  font-stretch: 72%; font-weight: 800; font-size: var(--step-2); text-decoration: none;
  padding: 0.2rem 0 0.45rem; margin-bottom: -1px; border-bottom: 5px solid transparent; color: var(--silt);
}
.tab[aria-current] { color: var(--sea); border-bottom-color: var(--plate); }
.tab:hover { color: var(--sea); }
.tab__n { font-size: var(--step--1); font-weight: 600; font-stretch: 100%; vertical-align: 0.35em; margin-left: 0.15rem; }
.filters { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 0 0 1.5rem; }
.chip {
  text-decoration: none; font-size: var(--step--1); font-weight: 600;
  padding: 0.35rem 0.8rem; border: 1.5px solid var(--sea); border-radius: 999px;
}
.chip:hover { background: var(--foam); }
.chip[aria-current] { background: var(--sea); color: var(--foam); }
.results { width: 100%; border-collapse: collapse; }
.results th {
  text-align: left; font-size: var(--step--1); font-weight: 600; color: var(--silt);
  padding: 0 0.5rem 0.45rem;
}
.results td { padding: 0.45rem 0.5rem; vertical-align: middle; }
.results tbody tr:nth-child(odd) td { background: var(--foam); }
.results tbody tr td:first-child { border-radius: 6px 0 0 6px; }
.results tbody tr td:last-child { border-radius: 0 6px 6px 0; }
.results .c-pos { width: 3.4rem; padding-left: 0.4rem; }
.results .c-name a { font-weight: 600; text-decoration: none; }
.results .c-name a:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 3px; }
.results .c-time, .results .c-gap { text-align: right; white-space: nowrap; width: 1%; }
.results .c-gap { color: var(--silt); }
.results .c-cat { color: var(--silt); font-size: var(--step--1); }
.results .sub { display: block; color: var(--silt); font-size: var(--step--1); line-height: 1.3; }
@media (min-width: 720px) {
  .results:not(.results--rider) .sub { display: none; }
}
@media (max-width: 719px) {
  .results .c-cat { display: none; }
  .results td { padding: 0.5rem 0.3rem; }
  .results .c-pos { width: 3rem; }
}
.dnf-list { list-style: none; padding: 0; margin: 0; columns: 18rem; column-gap: 2rem; }
.dnf-list li { padding: 0.3rem 0; break-inside: avoid; display: flex; align-items: center; gap: 0.6rem; }
.dnf-list a { text-decoration: none; font-weight: 500; }
.dnf-list .sub { display: block; color: var(--silt); font-size: var(--step--1); line-height: 1.3; }
.display--rider { font-size: clamp(2.75rem, 10vw, 6.5rem); }
.facts { display: flex; flex-wrap: wrap; gap: 0.5rem 2.25rem; margin: 0.25rem 0 1.5rem; }
.facts div { display: flex; flex-direction: column; }
.facts dt { color: var(--silt); font-size: var(--step--1); }
.facts dd { margin: 0; font-weight: 700; font-stretch: 80%; font-size: var(--step-2); line-height: 1.2; }
.summary { max-width: 62ch; margin: 0 0 1.75rem; }
.search { margin: 0 0 2rem; max-width: 26rem; }
.search label { display: block; font-weight: 600; margin-bottom: 0.35rem; }
.search input {
  width: 100%; font: inherit; padding: 0.6rem 0.8rem; border: 2px solid var(--sea); border-radius: 8px; background: var(--foam); color: var(--sea);
}
.letters { columns: 15rem; column-gap: 2.5rem; }
.letter { break-inside: avoid; margin-bottom: 1.5rem; }
.letter__head { font-stretch: 62%; font-weight: 800; font-size: var(--step-3); line-height: 1; margin: 0 0 0.35rem; }
.letter ul { list-style: none; margin: 0; padding: 0; }
.letter li { padding: 0.15rem 0; }
.letter li a { text-decoration: none; font-weight: 500; }
.letter li a:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 3px; }
.admin main.wrap { padding-top: 1.5rem; }
.admin-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 0.75rem 1.25rem; margin-bottom: 1.5rem; }
.admin-bar h1 { font-stretch: 70%; font-weight: 800; font-size: var(--step-3); line-height: 1; margin: 0; flex: 1 1 auto; }
.admin h2 { font-stretch: 75%; font-weight: 800; font-size: var(--step-1); margin: 2rem 0 0.75rem; }
.btn {
  display: inline-flex; align-items: center; gap: 0.4rem; font: inherit; font-weight: 600; font-size: var(--step--1);
  padding: 0.5rem 0.95rem; border: 2px solid var(--sea); border-radius: 8px; background: var(--foam); color: var(--sea);
  cursor: pointer; text-decoration: none; line-height: 1.2;
}
.btn:hover { background: #fff; }
.btn--primary { background: var(--sea); color: var(--foam); }
.btn--primary:hover { background: #164556; }
.btn--danger { border-color: var(--alert); color: var(--alert); }
.btn--small { padding: 0.25rem 0.55rem; border-width: 1.5px; }
.btn--link { border: 0; background: none; padding: 0; text-decoration: underline; }
.form { display: grid; gap: 1rem; max-width: 40rem; }
.form--wide { max-width: none; }
.field label, .field .label { display: block; font-weight: 600; font-size: var(--step--1); margin-bottom: 0.3rem; }
.field .hint { color: var(--silt); font-size: var(--step--1); margin: 0.25rem 0 0; }
.field input, .field select, .field textarea, .cell {
  width: 100%; font: inherit; color: var(--sea); background: var(--foam);
  border: 1.5px solid var(--line); border-radius: 6px; padding: 0.5rem 0.65rem;
}
.field input:focus, .field select:focus, .field textarea:focus, .cell:focus { border-color: var(--sea); outline: 2px solid var(--sea); outline-offset: 0; }
.field textarea { min-height: 12rem; font-size: var(--step--1); }
.row { display: grid; gap: 1rem; }
@media (min-width: 640px) { .row--2 { grid-template-columns: 1fr 1fr; } .row--3 { grid-template-columns: 2fr 1fr 1fr; } }
.flash { padding: 0.75rem 1rem; border-radius: 8px; margin: 0 0 1.25rem; font-weight: 500; background: var(--foam); }
.flash--error { background: #fbe9e5; color: var(--alert); }
.warnings { background: var(--foam); border-radius: 8px; padding: 0.75rem 1rem 0.75rem 2rem; margin: 0 0 1.5rem; font-size: var(--step--1); }
.warnings li { margin: 0.15rem 0; }
.admin-table { width: 100%; border-collapse: collapse; font-size: var(--step--1); }
.admin-table th { text-align: left; color: var(--silt); font-weight: 600; padding: 0.35rem 0.4rem; white-space: nowrap; }
.admin-table td { padding: 0.25rem 0.4rem; border-top: 1px solid var(--line); vertical-align: middle; }
.admin-table tr.is-saved td { background: #dcebe3; transition: background 0.6s; }
.admin-table tr.is-error td { background: #f3dcd6; }
.admin-table .cell { padding: 0.3rem 0.4rem; font-size: var(--step--1); border-color: transparent; background: transparent; }
.admin-table .cell:hover { border-color: var(--line); background: var(--foam); }
.admin-table .w-pos { width: 3rem; }
.admin-table .w-bib { width: 5rem; }
.admin-table .w-time { width: 7.5rem; }
.admin-table .w-status { width: 5.5rem; }
.admin-table .w-cat { width: 13rem; }
.admin-table .w-act { width: 1%; white-space: nowrap; }
.table-scroll { overflow-x: auto; }
.badge { display: inline-block; font-size: 0.75rem; font-weight: 700; padding: 0.05rem 0.45rem; border-radius: 4px; background: var(--plate); }
.badge--quiet { background: var(--line); }
.inline-form { display: inline; }
.toolbar { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: end; margin: 1rem 0; }
.toolbar .field { flex: 1 1 10rem; }
.card { background: var(--foam); border-radius: 10px; padding: 1.25rem; }
.login { max-width: 22rem; margin: 3rem auto; }
.danger-zone { margin-top: 3rem; padding-top: 1.25rem; border-top: 1px solid var(--line); }
.cat-table td:first-child { width: 60%; }
.team { display: block; color: var(--silt); font-size: 0.8rem; font-weight: 500; line-height: 1.25; }
.podium__who { display: flex; flex-direction: column; min-width: 0; }
.podium__who .team { font-size: var(--step--1); margin-top: 0.1rem; }
.results .c-speed { text-align: right; white-space: nowrap; width: 1%; color: var(--silt); font-size: var(--step--1); }
@media (max-width: 719px) { .results .c-speed { display: none; } }
.rider-team { margin: -0.1rem 0 1rem; font-weight: 600; font-size: 0.9rem; }
.rider-team a { text-decoration: none; }
.rider-team a:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 3px; }
.facts dd a { text-decoration: none; }
.race-list__item--team { grid-template-columns: 1fr auto; }
.race-list__item--team .race-list__winners { grid-column: 2; text-align: right; }
.request { margin-top: 2.5rem; max-width: 44rem; }
.request:not(.request--quiet) details:not([open]) summary { display: inline-flex; gap: 0.75rem; }
.request summary {
  cursor: pointer; font-weight: 600; font-size: var(--step--1); padding: 0.5rem 0.85rem; border: 2px solid var(--sea); border-radius: 10px;
  list-style: none; display: flex; justify-content: space-between; gap: 1rem; align-items: center;
}
.request summary::-webkit-details-marker { display: none; }
.request summary::after { content: "+"; font-size: 1.2rem; line-height: 1; }
.request details[open] summary::after { content: "–"; }
.request details[open] summary { border-radius: 10px 10px 0 0; background: var(--sea); color: var(--foam); }
.request details > form { background: var(--foam); padding: 1.25rem; border-radius: 0 0 10px 10px; max-width: none; }
.request .hint { color: var(--silt); font-size: var(--step--1); margin: 0; }
.team-seasons { border: 0; padding: 0; margin: 0.5rem 0 0; display: flex; flex-wrap: wrap; gap: 0.15rem 1rem; }
.team-seasons legend { padding: 0; margin-bottom: 0.1rem; font-size: var(--step--1); color: var(--silt); width: 100%; }
.team-seasons .check { margin-top: 0.2rem; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.notice { padding: 0.75rem 1rem; border-radius: 8px; background: var(--foam); margin: 0 0 1rem; }
.notice--error { background: #fbe9e5; color: var(--alert); }
.check { display: inline-flex; align-items: center; gap: 0.4rem; font-weight: 600; font-size: var(--step--1); margin-top: 0.4rem; }
.check input { width: 1.05rem; height: 1.05rem; accent-color: var(--sea); }
.request-card { margin-bottom: 1.25rem; max-width: 46rem; }
.request-card__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.4rem 1rem; margin-bottom: 0.5rem; }
.request-card__head h2 { margin: 0; }
.request-field { display: grid; grid-template-columns: 11rem 1fr; gap: 0.25rem 1rem; align-items: center; padding: 0.6rem 0; border-top: 1px solid var(--line); }
.request-field .muted { font-size: var(--step--1); }
.request-field .cell { grid-column: 2; background: #fff; border-color: var(--line); }
.request-field__extra { grid-column: 2; margin: 0; }
.request-note { background: #fff; border-radius: 8px; padding: 0.75rem 1rem; margin: 0.75rem 0 0.5rem; }
@media (max-width: 560px) { .request-field { grid-template-columns: 1fr; } .request-field .cell, .request-field__extra { grid-column: 1; } }
.ig { display: grid; gap: 2rem; }
@media (min-width: 900px) { .ig { grid-template-columns: minmax(0, 27rem) 1fr; align-items: start; } }
.ig canvas { width: 100%; height: auto; border-radius: 10px; display: block; }
.ig textarea { min-height: 22rem; font-size: var(--step--1); line-height: 1.5; }
.request textarea { min-height: 5.5rem; }
.plate--xs { min-width: 1.85rem; height: 1.45rem; font-size: 0.85rem; border-width: 1.5px; border-radius: 5px 5px 6px 6px; padding: 0 0.3rem; }
.top5 { margin: 0.2rem 0 1.5rem; }
.top5__label { display: block; color: var(--silt); font-size: var(--step--1); margin-bottom: 0.35rem; }
.top5__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.3rem; }
.top5__item { display: flex; align-items: center; gap: 0.55rem; font-size: var(--step--1); min-width: 0; }
.top5__item a { text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.top5__item a:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 2px; }
@media (min-width: 720px) {
  .top5__list { flex-direction: row; flex-wrap: wrap; gap: 0.45rem 1.4rem; }
}
.gap-m { display: none; }
@media (max-width: 719px) {
  .results .c-gap { display: none; }
  .gap-m { display: block; color: var(--silt); font-size: var(--step--1); line-height: 1.2; }
  .results .c-name a { overflow-wrap: anywhere; }
}
.row > *, .toolbar > * { min-width: 0; }
.field select { max-width: 100%; }
@media (max-width: 640px) {
  .admin .site-head__in { flex-wrap: wrap; padding: 0.6rem var(--gutter); gap: 0.4rem 1rem; }
  .admin .site-nav { flex-wrap: wrap; gap: 0.2rem 1rem; }
  .admin .brand__name { display: inline; }
}
.form > * { min-width: 0; }
#results { min-width: 54rem; }
.admin .table-scroll > .admin-table:not(.cat-table) { min-width: 34rem; }
.cat-table { min-width: 34rem; }
@media (max-width: 719px) {
  .filters { flex-wrap: nowrap; overflow-x: auto; margin-left: calc(-1 * var(--gutter)); margin-right: calc(-1 * var(--gutter));
             padding: 0 var(--gutter) 0.35rem; scrollbar-width: none; }
  .filters::-webkit-scrollbar { display: none; }
  .chip { white-space: nowrap; flex: 0 0 auto; }
}
#results select[name="gender"] { min-width: 3.6rem; }
.top3-form { max-width: 34rem; }
.top3-form input, .top3-form select { font-size: 1.05rem; padding: 0.65rem 0.75rem; }
.top3-cols { display: grid; gap: 1.25rem; }
@media (min-width: 720px) { .top3-cols { grid-template-columns: 1fr 1fr; } .top3-form { max-width: 52rem; } }
.top3-group { border: 0; padding: 0; margin: 0; display: grid; gap: 0.55rem; }
.top3-group legend { font-stretch: 75%; font-weight: 800; font-size: var(--step-1); margin-bottom: 0.4rem; }
.top3-row { display: flex; align-items: center; gap: 0.6rem; }
.top3-row input { flex: 1; min-width: 0; font: inherit; font-size: 1.05rem; color: var(--sea); background: var(--foam); border: 1.5px solid var(--line); border-radius: 6px; padding: 0.65rem 0.75rem; }
.top3-row input:focus { border-color: var(--sea); outline: 2px solid var(--sea); outline-offset: 0; }
.top3-more summary { cursor: pointer; font-weight: 600; font-size: var(--step--1); }
.btn--big { font-size: var(--step-0); padding: 0.8rem 1.4rem; }
.badge { text-decoration: none; }
.logo { display: block; transform: rotate(-6deg); flex: none; }
.race-title { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 0.4rem 1rem; margin-bottom: 0.6rem; }
.race-title .display { margin: 0; }
.picker { position: relative; }
.picker__btn {
  list-style: none; cursor: pointer; display: inline-flex; align-items: center; gap: 0.55rem;
  background: var(--plate); color: var(--sea); border: 2.5px solid var(--sea); border-radius: 9px 9px 11px 11px;
  font-stretch: 72%; font-weight: 800; font-size: clamp(1.5rem, 4.2vw, 2.3rem); line-height: 1;
  padding: 0.2em 0.45em 0.18em 0.5em; margin-bottom: 0.35rem; user-select: none;
}
.picker__btn::-webkit-details-marker { display: none; }
.picker__caret { width: 0.42em; height: 0.42em; border-right: 0.12em solid currentColor; border-bottom: 0.12em solid currentColor; transform: rotate(45deg) translate(-0.12em, -0.12em); transition: transform .15s; }
.picker[open] .picker__caret { transform: rotate(-135deg) translate(-0.12em, -0.12em); }
@media (prefers-reduced-motion: reduce) { .picker__caret { transition: none; } }
.picker__menu {
  position: absolute; z-index: 20; top: calc(100% + 0.25rem); left: 0; min-width: 17rem; max-height: 60vh; overflow-y: auto;
  background: var(--foam); border: 2px solid var(--sea); border-radius: 10px; padding: 0.35rem; box-shadow: 0 10px 30px rgba(14, 51, 64, .22);
}
.picker__menu.is-flipped { left: auto; right: 0; }
@media (max-width: 520px) { .picker__menu { min-width: min(17rem, calc(100vw - 2 * var(--gutter))); } }
.picker__row { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 0.35rem; padding: 0.15rem; border-radius: 7px; }
.picker__row.is-current { background: var(--mist); }
.picker__year { font-stretch: 72%; font-weight: 800; font-size: var(--step-1); text-decoration: none; padding: 0.3rem 0.5rem; }
.picker__g { font-size: var(--step--1); font-weight: 600; text-decoration: none; padding: 0.35rem 0.6rem; border-radius: 999px; border: 1.5px solid var(--line); }
.picker__g:hover, .picker__year:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 3px; }
.picker__g.is-on { background: var(--sea); color: var(--foam); border-color: var(--sea); }
.report { margin-top: 3rem; }
.site-foot__copy { margin-top: 0.5rem !important; }
.report { margin-top: 4rem; margin-bottom: 0; }
.gen { display: grid; gap: 2rem; }
@media (min-width: 960px) { .gen { grid-template-columns: minmax(0, 1fr) minmax(0, 24rem); align-items: start; } .gen__preview { position: sticky; top: 1rem; } }
.gen__preview { display: flex; flex-direction: column; align-items: center; gap: 0.5rem; }
.gen__preview canvas { display: block; max-width: 100%; max-height: 78vh; width: auto; height: auto; border-radius: 10px; box-shadow: 0 6px 24px rgba(14, 51, 64, .18); }
.gen__size { font-size: var(--step--1); margin: 0; }
.gen__options { display: grid; gap: 1.1rem; }
.gen__options fieldset { border: 0; padding: 0; margin: 0; }
.gen__options legend { font-weight: 600; font-size: var(--step--1); margin-bottom: 0.4rem; padding: 0; }
.seg { display: flex; flex-wrap: wrap; gap: 0.4rem; }
.seg legend { width: 100%; }
.seg label { cursor: pointer; }
.seg input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.seg span { display: inline-block; padding: 0.45rem 0.9rem; border: 1.5px solid var(--sea); border-radius: 999px; font-weight: 600; font-size: var(--step--1); background: var(--foam); }
.seg input:checked + span { background: var(--sea); color: var(--foam); }
.seg input:focus-visible + span { outline: 3px solid var(--sea); outline-offset: 2px; }
.checks { display: grid; gap: 0.15rem; }
.gen textarea { min-height: 14rem; font-size: var(--step--1); line-height: 1.5; }
.doubt { margin-bottom: 1rem; max-width: 52rem; }
.doubt__reason { font-weight: 700; margin: 0 0 0.6rem; }
.doubt__pair { display: grid; gap: 1rem; }
@media (min-width: 720px) { .doubt__pair { grid-template-columns: 1fr 1fr; } }
.doubt__rider { background: #fff; border-radius: 8px; padding: 0.75rem 1rem; display: flex; flex-direction: column; gap: 0.2rem; }
.doubt__name { font-weight: 700; font-stretch: 80%; font-size: var(--step-1); }
.doubt__facts { margin: 0.35rem 0 0; padding-left: 1.1rem; font-size: var(--step--1); }
.doubt .toolbar form { display: inline; }
.split-list { display: grid; gap: 0.2rem; margin: 0.5rem 0; }
.split-list .check { font-weight: 500; }
.preview-pick { min-width: 13rem; }
tr.is-doubt td { background: #fbf1cf; }
.former-list { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.4rem; }
.former-list a { font-weight: 700; }
.season-table { max-width: 52rem; }
.season-table input.cell { min-width: 12rem; }
.season-table tr.is-current td { background: color-mix(in srgb, var(--plate, #f2c12e) 14%, transparent); }
.season-add { border: 1px solid var(--line); border-radius: 0.5rem; padding: 0.75rem 1rem 0.25rem; margin: 1rem 0 0; max-width: 52rem; }
.season-add legend { font-weight: 700; padding: 0 0.35rem; }
.brand__tld { color: var(--plate); font-weight: 700; }
.site-foot__nav { display: flex; flex-wrap: wrap; gap: 0.25rem 1.25rem; margin-top: 0.75rem; }
.site-foot__nav a { color: var(--sea); font-weight: 600; text-underline-offset: 0.2em; }
.site-foot__nav a[aria-current="page"] { text-decoration-thickness: 2px; }
.prose { max-width: 40rem; line-height: 1.6; }
.prose h2 { font-stretch: 70%; font-weight: 800; font-size: var(--step-2); line-height: 1.1; margin: 2.25rem 0 0.6rem; }
.prose p { margin: 0 0 1rem; }
.prose ul { margin: 0 0 1rem; padding-left: 1.2rem; }
.prose li { margin-bottom: 0.45rem; }
.prose li::marker { color: var(--silt); }
.prose .lead { font-size: var(--step-1); line-height: 1.5; }
.about-stats { display: flex; flex-wrap: wrap; gap: 0.5rem 1.75rem; margin: 1.5rem 0 0.5rem !important; padding: 1rem 0; border-block: 1px solid var(--line); color: var(--silt); }
.about-stats--speed { margin-top: 0 !important; border-top: 0; }
.about-stats strong { display: block; color: var(--sea); font-size: var(--step-3); font-stretch: 70%; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.season-table input.cell { border: 1px solid var(--line); background: var(--foam); border-radius: 0.35rem; padding: 0.4rem 0.55rem; }
.team-list { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--line); }
.team-list li { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.15rem 1rem; padding: 0.7rem 0; border-bottom: 1px solid var(--line); }
.team-list__name { font-weight: 700; font-stretch: 85%; font-size: var(--step-1); text-decoration: none; }
.team-list__name:hover { text-decoration: underline; }
.team-list__meta { color: var(--silt); font-size: var(--step--1); font-variant-numeric: tabular-nums; }
.numbers { display: flex; flex-wrap: wrap; gap: 0.75rem 2.25rem; margin: 0 0 1rem; padding: 0.9rem 0; border-block: 1px solid var(--line); }
.numbers div { display: flex; flex-direction: column-reverse; }
.numbers dt { color: var(--silt); font-size: var(--step--1); }
.numbers dd { margin: 0; color: var(--sea); font-size: var(--step-3); font-stretch: 70%; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
@media (max-width: 520px) { .numbers { display: grid; grid-template-columns: 1fr 1fr; gap: 0.9rem 1rem; } }
.batch-upload { border: 2px solid var(--sea); border-radius: 0.6rem; padding: 1rem 1.1rem 0.5rem; margin: 0 0 2rem; max-width: 44rem; background: var(--foam); }
.batch-upload h2 { margin-top: 0; }
.batch-card { border: 1px solid var(--line); border-radius: 0.6rem; padding: 1rem 1.1rem; margin: 0 0 1.5rem; background: var(--foam); }
.batch-card.is-skipped { opacity: 0.6; }
.batch-card__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 0.5rem 1rem; }
.batch-card__head h2 { margin: 0 0 0.75rem; font-size: var(--step-1); overflow-wrap: anywhere; }
.batch-card h3 { margin: 1.25rem 0 0.4rem; }
.batch-stats { display: flex; flex-wrap: wrap; gap: 0.4rem 1.25rem; margin: 0.75rem 0 1rem; color: var(--silt); font-size: var(--step--1); }
.batch-stats strong { color: var(--sea); font-size: var(--step-1); font-variant-numeric: tabular-nums; }
.batch-warn { margin-top: 1rem; }
.batch-warn summary { cursor: pointer; font-weight: 600; }
.klass--fun { color: var(--sea); font-weight: 700; }
.season-filter { margin-top: 0.25rem; }
.class-switch { display: inline-flex; border: 2px solid var(--sea); border-radius: 0.5rem; overflow: hidden; margin: 0 0 1rem; }
.class-switch a { padding: 0.45rem 0.95rem; text-decoration: none; font-weight: 700; font-stretch: 85%; color: var(--sea); }
.class-switch a + a { border-left: 2px solid var(--sea); }
.class-switch a[aria-current] { background: var(--sea); color: var(--foam); }
.class-switch a:not([aria-current]):hover { background: var(--foam); }
.top10-more { border: 1.5px dashed var(--line); border-radius: 8px; padding: 0.6rem 0.8rem; }
.top10-more[open] { padding-bottom: 1rem; }
.top10-more > summary { cursor: pointer; font-weight: 700; color: var(--sea); }
.top10-more[open] > summary { margin-bottom: 0.9rem; }
.top3-row .plate:not(.plate--podium) { background: var(--foam); }
.top3-open { font-size: var(--step--1); }
.cat-edit .cell, .cat-table .cell { border: 1px solid var(--line); background: var(--foam); border-radius: 0.35rem; padding: 0.35rem 0.5rem; }
.sec-block { border-top: 1px solid var(--line); padding-top: 0.5rem; margin-top: 1.25rem; max-width: 46rem; }
.sec-block h2 { margin: 0.5rem 0 0.5rem; }
.badge--ok { background: var(--ok); color: var(--foam); }
.code-input { font-variant-numeric: tabular-nums; letter-spacing: 0.15em; max-width: 10rem; }
.qr { width: 220px; height: 220px; margin: 0.75rem 0 0.25rem; background: #fff; border-radius: 8px; }
.qr svg { width: 100%; height: 100%; display: block; }
.secret code { font-size: 1.05rem; letter-spacing: 0.06em; word-break: break-all; }
.steps { padding-left: 1.2rem; max-width: 40rem; }
.steps li { margin-bottom: 0.6rem; }
.recovery-codes { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(8.5rem, 1fr)); gap: 0.4rem 1rem; max-width: 30rem; }
.recovery-codes code { font-size: 1.05rem; }
.plain-list { padding-left: 1.1rem; }
.plain-list li { margin-bottom: 0.35rem; }
:root { --display: clamp(2.1rem, 6.8vw, 4.4rem); }
body { line-height: 1.45; }
main.wrap { padding-top: 1.25rem; padding-bottom: 2.5rem; }
@media (min-width: 720px) { main.wrap { padding-top: 1.75rem; } }
.display { margin-bottom: 0.35rem; line-height: 0.95; }
.display--rider { font-size: clamp(2.2rem, 8vw, 4.8rem); }
.meta { margin-bottom: 1rem; }
.intro { margin-bottom: 1rem; font-size: var(--step-0); }
.section-title { margin: 1.6rem 0 0.5rem; font-size: var(--step-1); }
.empty { padding: 1rem 0; }
.page-head { margin-bottom: 0.25rem; }
.latest__kicker { margin-bottom: 0.1rem; font-size: var(--step--1); }
.podiums { gap: 1.25rem; margin: 0.25rem 0 0.75rem; }
@media (min-width: 760px) { .podiums { gap: 2rem; } }
.podium__title { margin-bottom: 0.25rem; }
.podium__row { padding: 0.35rem 0.5rem 0.35rem 0; gap: 0.7rem; }
.podium__name { font-size: var(--step-1); }
.podium__more { display: inline-block; margin-top: 0.4rem; font-size: var(--step--1); }
.race-list__item { padding: 0.45rem 0; }
.race-list__name { font-size: var(--step-0); }
.race-list__main { display: flex; flex-direction: column; min-width: 0; }
.race-cup { margin: -0.1rem 0 0.35rem; color: var(--silt); font-size: var(--step--1); font-weight: 600; letter-spacing: 0.02em; }
.race-cup--small { margin: 0; font-weight: 500; font-size: 0.8rem; line-height: 1.2; }
.race-head .race-cup { margin-top: 0; }
.race-title { margin-bottom: 0.3rem; }
.tabs { margin-bottom: 0.6rem; gap: 1.25rem; }
.class-switch { margin-bottom: 0.6rem; }
.filters { margin-bottom: 0.75rem; }
.results td { padding-top: 0.3rem; padding-bottom: 0.3rem; }
.notice { margin-bottom: 0.6rem; padding: 0.5rem 0.8rem; }
.report { margin-top: 2rem; }
.request { margin-top: 1.75rem; }
.top5 { margin: 0.1rem 0 0.75rem; }
.facts { margin: 0 0 0.75rem; gap: 0.25rem 1.75rem; }
.facts dd { font-size: var(--step-1); }
.rider-teams .section-title, .rider-numbers .section-title { font-size: var(--step-0); margin: 1.25rem 0 0.35rem; }
.team-list li { padding: 0.3rem 0; gap: 0 0.75rem; }
.team-list__name { font-size: var(--step-0); }
.team-list__meta { font-size: 0.8rem; }
.numbers { gap: 0.4rem 1.5rem; padding: 0.5rem 0; margin-bottom: 0.5rem; }
.numbers dd { font-size: var(--step-1); }
.numbers dt { font-size: 0.8rem; }
.rider-numbers .summary { font-size: var(--step--1); margin-bottom: 0.5rem; }
@media (max-width: 520px) { .numbers { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0.4rem 0.6rem; } .numbers dt { line-height: 1.2; } }
.prose { line-height: 1.5; }
.prose h2 { margin: 1.4rem 0 0.4rem; font-size: var(--step-1); }
.prose p, .prose ul { margin-bottom: 0.7rem; }
.prose li { margin-bottom: 0.25rem; }
.prose .lead { font-size: var(--step-0); }
.about-stats { margin: 0.75rem 0 0.25rem !important; padding: 0.6rem 0; }
.about-stats strong { font-size: var(--step-2); }
.site-foot { padding: 1rem 0 1.5rem; }
.site-foot__nav { margin-top: 0.4rem; }
.numbers div { justify-content: flex-end; }
.plate--p2 { background: #c3ccd0; }
.plate--p3 { background: #d08f55; }
.batch-files { border: 1px solid var(--line); border-radius: 0.6rem; padding: 0.75rem 1rem; margin: 0 0 1.25rem; background: var(--foam); }
.batch-files h2 { margin-top: 0; }
.batch-card__files { font-size: var(--step--1); font-weight: 400; }
.no-times { display: flex; align-items: center; gap: 0.5rem; padding: 0.5rem 0.75rem; border: 1px dashed var(--line); border-radius: 0.5rem; margin: 0.6rem 0 0; }
.no-times.is-on { border-style: solid; border-color: var(--plate); background: #fff8dd; }
.test-bar { display: block; background: var(--plate); color: var(--sea); font-size: 0.8rem; line-height: 1.3; text-decoration: none; }
.test-bar:hover .test-bar__tag, .test-bar:focus-visible .test-bar__tag { background: var(--sea); color: var(--plate); }
.test-bar__in { display: flex; justify-content: flex-end; align-items: center; gap: 0.5rem; padding-top: 0.3rem; padding-bottom: 0.3rem; text-align: right; }
.test-bar__tag { flex: none; font-weight: 800; font-stretch: 80%; text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.7rem; border: 1.5px solid var(--sea); border-radius: 4px; padding: 0.05rem 0.35rem; }
.race-title { align-items: center; }
.dns-line { margin: 0.9rem 0 0; font-size: 0.8rem; line-height: 1.5; color: var(--silt); }
.dns-line__label { font-weight: 700; }
.dns-line a { color: inherit; }
.submit-result { margin-top: 1.5rem; }
.exists-choice p { margin: 0 0 0.4rem; }
.exists-choice .check { display: flex; gap: 0.5rem; align-items: baseline; margin: 0.2rem 0; }
.upload-mode { display: grid; gap: 0.2rem; margin: 0.4rem 0 0.2rem; }
.top5__count { font-weight: 700; font-variant-numeric: tabular-nums; }
.site-foot__social { margin-top: 0.9rem !important; }
.btn--insta { font-weight: 600; }
.btn--insta strong { font-weight: 800; }
.level { margin-top: 1.75rem; }
.level h2 { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.2rem 0.6rem; margin-top: 0; }
.level__num { display: inline-grid; place-items: center; width: 1.6em; height: 1.6em; border-radius: 6px; background: var(--plate); color: var(--sea); font-size: 0.75em; transform: translateY(-0.1em); }
.level__factor { font-size: var(--step--1); font-stretch: 100%; font-weight: 600; color: var(--silt); }
.level__races { font-size: var(--step--1); }
.level-table { border-collapse: collapse; font-size: var(--step--1); margin: 0 0 1rem; min-width: 22rem; }
.level-table th, .level-table td { padding: 0.35rem 0.75rem; border-bottom: 1px solid var(--line); text-align: left; }
.level-table .num { text-align: right; font-variant-numeric: tabular-nums; }
.level-table thead th { color: var(--silt); font-weight: 600; }
@media (max-width: 30rem) {
  .level-table { min-width: 0; width: 100%; font-size: 0.8rem; }
  .level-table th, .level-table td { padding: 0.3rem 0.3rem; }
}
.gen-texts { border: 1px solid var(--line); border-radius: 8px; padding: 0.6rem 0.9rem; background: var(--foam); }
.gen-texts summary { cursor: pointer; font-weight: 700; }
.gen-texts[open] summary { margin-bottom: 0.5rem; }
.rider-head--nk { position: relative; padding-left: 1rem; }
.rider-head--nk::before { content: ""; position: absolute; left: 0; top: 0.2rem; bottom: 0.2rem; width: 6px; border-radius: 3px;
  background: linear-gradient(#ae1c28 0 33.4%, #fff 33.4% 66.6%, #21468b 66.6% 100%); box-shadow: 0 0 0 1px rgba(14,51,64,.18); }
.nk-badge { display: inline-flex; align-items: center; gap: 0.5rem; margin: 0.2rem 0 0.35rem; padding: 0.25rem 0.7rem 0.25rem 0.3rem;
  border-radius: 999px; background: #21468b; color: #fff; font-weight: 700; font-size: var(--step--1); text-decoration: none; }
.nk-badge:hover { background: #1a3870; }
.nk-flag { width: 1.6rem; height: 1.05rem; border-radius: 3px; flex: none;
  background: linear-gradient(#ae1c28 0 33.4%, #fff 33.4% 66.6%, #21468b 66.6% 100%); box-shadow: 0 0 0 1.5px #fff; }
.rider-head--bk { position: relative; padding-left: 1rem; }
.rider-head--bk::before { content: ""; position: absolute; left: 0; top: 0.2rem; bottom: 0.2rem; width: 6px; border-radius: 3px;
  background: linear-gradient(#1a1a1a 0 33.4%, #f6d02f 33.4% 66.6%, #d7262e 66.6% 100%); box-shadow: 0 0 0 1px rgba(14,51,64,.18); }
.nk-badge--bk { background: #1a1a1a; }
.nk-badge--bk:hover { background: #333; }
.nk-flag--bk { background: linear-gradient(90deg, #1a1a1a 0 33.4%, #f6d02f 33.4% 66.6%, #d7262e 66.6% 100%); }
.team-form__intro { margin: 0 0 1rem; }
.team-form fieldset { border: 0; padding: 0; margin: 0 0 1.25rem; }
.team-form legend { font-weight: 700; margin-bottom: 0.2rem; }
.team-season { display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem 1rem; padding: 0.3rem 0; border-bottom: 1px solid var(--line); }
.team-season .check { min-width: 9.5rem; margin: 0; }
.team-season__name { flex: 1 1 12rem; max-width: 22rem; }
.team-riders__list { margin: 0.4rem 0 0.6rem; padding-left: 1.6rem; display: flex; flex-direction: column; gap: 0.55rem; }
.team-rider { display: flex; flex-wrap: wrap; align-items: center; gap: 0.35rem 0.75rem; }
.team-rider::marker { color: var(--silt); font-variant-numeric: tabular-nums; }
.team-rider > input { flex: 1 1 14rem; max-width: 20rem; }
.team-rider__seasons { display: flex; flex-wrap: wrap; gap: 0.3rem; }
.chip-check { cursor: pointer; }
.chip-check input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.chip-check span { display: inline-block; padding: 0.25rem 0.6rem; border: 1.5px solid var(--sea); border-radius: 999px; font-size: 0.8rem; font-weight: 600; background: #fff; }
.chip-check input:checked + span { background: var(--sea); color: var(--foam); }
.chip-check input:focus-visible + span { outline: 3px solid var(--sea); outline-offset: 2px; }
[hidden] { display: none !important; }
.request--quiet { margin-top: 1.5rem; }
.request--quiet summary { display: inline; border: 0; padding: 0; font-weight: 400; font-size: var(--step--1); color: var(--silt);
  text-decoration: underline; text-underline-offset: 0.2em; text-decoration-color: var(--line); }
.request--quiet summary:hover { color: var(--sea); text-decoration-color: currentColor; }
.request--quiet summary::after { content: none; }
.request--quiet details[open] summary { display: block; background: none; color: var(--sea); border-radius: 0; margin-bottom: 0.5rem; }
.request--quiet details > form { border-radius: 10px; }
.latest > .display { font-size: clamp(2.6rem, 8.6vw, 5.4rem); }
.team-form .cell { background: #fff; }
.gen-texts .hint { font-size: var(--step--1); color: var(--silt); margin: 0 0 0.5rem; }
.gen-texts .row--2 { grid-template-columns: 2fr 1fr; }
.gen-texts .field { margin-bottom: 0.6rem; }
.cat-note { font-size: var(--step--1); color: var(--silt); margin: 0 0 0.6rem; }
.cat-note strong { color: var(--sea); }
.pending-note { margin: 0.9rem 0 1.4rem; text-align: center; color: var(--sea); font-size: 1.1rem; font-weight: 600; }
.results .sub .cat-pos { color: inherit; font-weight: 600; text-decoration: none; }
.results .sub .cat-pos:hover { text-decoration: underline; }
.top5__sfx { font-weight: 700; }
@media (max-width: 719px) { .top5__item a { white-space: normal; overflow: visible; line-height: 1.3; } }
.season--past .race-list__name { color: var(--silt); }
.cal-source { font-size: var(--step--1); margin-top: 2rem; }
.cal-table tr.is-past td { opacity: 0.55; }
.cal-table tr.is-new td { background: var(--foam); }
@media (max-width: 420px) { .site-nav { gap: 0.8rem; } .site-nav a { font-size: 0.95rem; } }
@media (max-width: 350px) { .site-nav { gap: 0.6rem; } .site-nav a { font-size: 0.875rem; } }
.next-race { display: flex; align-items: center; gap: 0.8rem; margin: -0.25rem 0 1.25rem; padding: 0.5rem 0.75rem 0.5rem 0.5rem; max-width: 34rem;
  border: 1.5px solid var(--line); border-radius: 10px; background: var(--foam); color: var(--sea); text-decoration: none; }
.next-race:hover { border-color: var(--sea); }
.next-race:hover .next-race__name { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 2px; }
.next-race__date { flex: none; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 3.1rem; height: 3.1rem;
  border-radius: 8px 8px 10px 10px; background: var(--plate); line-height: 1; }
.next-race__day { font-weight: 800; font-stretch: 75%; font-size: 1.45rem; }
.next-race__mon { font-weight: 700; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.04em; margin-top: 0.1rem; }
.next-race__body { flex: 1; min-width: 0; display: flex; flex-direction: column; line-height: 1.25; }
.next-race__label { color: var(--silt); font-size: 0.78rem; font-weight: 600; }
.next-race__name { font-weight: 800; font-stretch: 80%; font-size: var(--step-0); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.next-race__where { color: var(--silt); font-size: 0.8rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.next-race__arrow { flex: none; font-size: 1.1rem; color: var(--silt); }
.level-note { padding: 0; font-size: var(--step--1); }
.standings-note { font-size: var(--step--1); color: var(--silt); padding: 0; max-width: 46rem; margin: 0 0 1rem; }
.standings { min-width: 0; }
.standings .st-total { width: 4.5rem; }
.standings .st-total strong { font-size: var(--step-0); }
.standings .st-race { width: 3rem; color: var(--silt); font-size: var(--step--1); }
.standings th.st-race { cursor: help; }
.standings-races { list-style: none; padding: 0; margin: 1rem 0 0; display: flex; flex-wrap: wrap; gap: 0.25rem 1.25rem; font-size: var(--step--1); }
.standings-races .num { font-weight: 700; margin-right: 0.2rem; }
.race-cup a { color: inherit; text-decoration: none; border-bottom: 1px dotted currentColor; }
.race-cup a:hover { border-bottom-style: solid; }
.standings .is-dropped s { color: var(--silt); opacity: 0.7; }
.standings .is-adjusted sup { color: var(--alert); font-weight: 700; }
.standings-foot { font-size: var(--step--1); margin: 0.5rem 0 0; }
@media (max-width: 420px) { .site-nav { gap: 0.7rem; } .site-nav a { font-size: 0.92rem; } }
@media (max-width: 380px) { .site-nav { gap: 0.55rem; } .site-nav a { font-size: 0.86rem; } }
@media (max-width: 340px) { .site-nav { gap: 0.45rem; } .site-nav a { font-size: 0.8rem; } }
.admin .site-nav { flex-wrap: wrap; gap: 0.2rem 1rem; justify-content: flex-end; }
.admin .site-nav a { white-space: nowrap; }
@media (max-width: 560px) {
  .standings .c-name a { overflow-wrap: normal; word-break: normal; }
  .standings .c-name { min-width: 8.5rem; }
  .standings .st-race { width: auto; padding-left: 0.3rem; padding-right: 0.3rem; }
}
.notice--done { background: #e6f6ec; font-size: var(--step-0); line-height: 1.45; padding: 0.85rem 1rem; }
.notice--done strong { display: block; color: var(--sea); }
.top-check { margin: 1.25rem 0; }
.top-check__cat { margin: 0.75rem 0 1rem; }
.top-check__cat h4 { margin: 0 0 0.35rem; }
.top-check__why { margin: 0 0 0.5rem; font-size: var(--step--1); }
.top-check__table { max-width: 46rem; }
.top-check__table tr.is-dnf td { color: var(--silt); text-decoration: line-through; text-decoration-color: rgba(0,0,0,.35); }
.top-check__table tr.is-dnf td:nth-last-child(-n+2) { text-decoration: none; }
.top-check__table tr.is-last td { color: var(--silt); font-style: italic; }
.top-check__mode, .top-check__order { margin: 0 0 0.5rem; }
.top-check__hint { margin: -0.2rem 0 0.6rem; font-size: var(--step--1); }
.top-check__table [data-place] { font-weight: 700; width: 3rem; }
.admin-table .drag { display: inline-block; cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; padding: 0.35rem 0.4rem 0.35rem 0; font-size: 1.1rem; line-height: 1; color: var(--silt); vertical-align: middle; }
.admin-table tr.is-dragging { outline: 2px solid var(--plate); background: #fff8dd; }
.admin-table tr.is-dragging .drag { cursor: grabbing; }
.admin-table tr.is-at-end .w-pos input { font-style: italic; }
.w-pos { white-space: nowrap; }
.bulk-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4rem 0.6rem; margin: 0 0 0.6rem; }
.bulk-bar .hint { flex-basis: 100%; margin: 0; }
.name-fill { display: flex; gap: 0.4rem; align-items: center; }
.name-fill .cell { min-width: 12rem; }
.bulk-box { margin: 0 0 0.8rem; padding: 0.6rem 0.8rem; border: 1px solid var(--line); border-radius: 8px; background: var(--foam); }
.bulk-box summary { cursor: pointer; font-weight: 700; }
.bulk-box .bulk-bar { margin: 0.45rem 0 0; }
.bulk-bar__label { font-weight: 600; min-width: 7rem; }
.site-foot__copy { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.25rem 1rem; }
.pagecount { font-size: 0.72rem; opacity: 0.75; }
.st-pos { display: inline-flex; align-items: center; gap: 0.3rem; }
.move { display: inline-flex; align-items: center; gap: 0.08rem; font-size: 0.72rem; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1; }
.move svg { width: 0.72rem; height: 0.6rem; }
.move path { stroke-linejoin: round; stroke-width: 1.6; }
.move--up { color: #1d8a4e; } .move--up path { fill: #1d8a4e; stroke: #1d8a4e; }
.move--down { color: #c8372d; } .move--down path { fill: #c8372d; stroke: #c8372d; }
.standings-foot .move { vertical-align: middle; }
.who { display: inline-flex; align-items: center; gap: 0.4rem; max-width: 100%; }
.flag { width: 16px; height: 12px; flex: none; border-radius: 2px; box-shadow: 0 0 0 1px rgba(14,51,64,.15); object-fit: cover; }
.flag--none { display: inline-block; box-shadow: none; }
.place { white-space: nowrap; }
.place .flag { width: auto; height: 0.78em; aspect-ratio: 4 / 3; margin-right: 0.3em; vertical-align: -0.04em; }
.place .flag--none { display: none; }
.mini__who { display: flex; align-items: center; gap: 0.4em; min-width: 0; }
.mini__who .flag { width: auto; height: 0.72em; aspect-ratio: 4 / 3; }
.mini__who a { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.podium__line { display: flex; align-items: center; gap: 0.45em; min-width: 0; }
.podium__line .flag { width: auto; height: 0.75em; aspect-ratio: 4 / 3; }
.jersey { width: 20px; height: 17px; flex: none; vertical-align: middle; }
.jersey-note { display: flex; flex-wrap: wrap; gap: 0.3rem 1.2rem; margin: 0.6rem 0 0; font-size: 0.78rem; color: var(--silt); }
.jersey-note span { display: inline-flex; align-items: center; gap: 0.35rem; }
.jersey-note .jersey { width: 16px; height: 14px; }
.jersey-note--top { margin: 0 0 0.5rem; }
.jersey-list, .prose .jersey-list { list-style: none; padding: 0; margin: 0.5rem 0 1rem; display: grid; gap: 0.5rem; }
.jersey-list li { display: grid; grid-template-columns: 1.6rem 1fr; gap: 0.5rem; align-items: start; }
.jersey-list .jersey { width: 1.5rem; height: 1.25rem; margin-top: 0.1rem; }
.jersey-settings { align-items: center; gap: 0.5rem 1rem; margin: 0.5rem 0 1rem; }
.jersey-settings .jersey { width: 18px; height: 15px; vertical-align: -3px; }
.log-table tr.is-undone td { color: var(--silt); }
.log-table td:nth-child(3) { max-width: 34rem; }
.views-table { max-width: 30rem; margin-top: 0.5rem; }
.views-table td { padding-top: 0.2rem; padding-bottom: 0.2rem; }
.views-table--wide { max-width: 46rem; }
.views-box h3 { margin-top: 1.25rem; }
.views-bar { display: block; height: 0.55rem; border-radius: 3px; background: var(--plate); min-width: 2px; }
.minis { display: grid; gap: 0; margin: 0.25rem 0 1.5rem; }
.minis--above { margin-top: 0.5rem; }
@media (min-width: 760px) { .minis--3 { grid-template-columns: repeat(3, 1fr); gap: 0 2rem; } .minis--2 { grid-template-columns: repeat(2, 1fr); gap: 0 2.5rem; } }
.mini { padding: 0.75rem 0 0.8rem; border-top: 1px solid var(--line); min-width: 0; }
@media (min-width: 760px) { .minis--3 .mini, .minis--2 .mini { border-top: 0; padding-top: 0.4rem; } }
.mini--card { background: #f6f8f6; border: 0; border-radius: 12px; padding: 0.8rem 0.9rem 0.8rem; margin-bottom: 0.9rem; }
.mini__kicker { margin: 0; font-size: var(--step--1); color: var(--silt); font-weight: 500; }
.mini__name { margin: 0; font-stretch: 75%; font-weight: 800; font-size: var(--step-2); line-height: 1.05; }
.mini__name a { text-decoration: none; color: inherit; }
.mini__name a:hover { text-decoration: underline; text-decoration-color: var(--plate); text-decoration-thickness: 3px; }
.mini__tag { font-stretch: 100%; font-size: 0.68rem; font-weight: 700; background: var(--foam); border-radius: 4px; padding: 0.1rem 0.35rem; vertical-align: middle; color: var(--silt); }
.mini .race-cup { margin: 0.15rem 0 0; }
.mini__meta { margin: 0.1rem 0 0.4rem; font-size: 0.86rem; color: var(--silt); }
.mini__cols { display: grid; grid-template-columns: 1fr 1fr; gap: 0.8rem; }
.mini__col h4 { margin: 0 0 0.15rem; font-size: 0.84rem; color: var(--silt); font-weight: 600; }
.mini__col h4 a { color: inherit; text-decoration: none; }
.mini__col ol { list-style: none; margin: 0; padding: 0; }
.mini__col li { display: flex; gap: 0.45rem; align-items: center; padding: 0.14rem 0; }
.mini__col .plate { min-width: 1.75rem; height: 1.4rem; font-size: 0.85rem; padding: 0 0.25rem; border-width: 1.5px; flex: none; }
.mini__nm { display: flex; flex-direction: column; min-width: 0; line-height: 1.15; }
.mini__nm a, .mini__nm > span:first-child { font-weight: 700; font-size: 0.94rem; text-decoration: none; color: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mini__nm .num { font-size: 0.78rem; color: var(--silt); font-weight: 400; }
.mini__more { font-size: 0.95rem; font-weight: 600; display: inline-block; margin-top: 0.3rem; }
.home-settings .check { display: block; margin: 0.3rem 0; }
.preview-season { cursor: default; }
.preview-box { background: var(--foam); border-radius: 10px; padding: 0.9rem 1rem; margin: 0.5rem 0 1rem; max-width: 40rem; }
.preview-cta { margin: 0 0 1.75rem; }
.preview-box p { margin: 0.25rem 0; }
.preview-box__when { font-size: var(--step-1); font-stretch: 80%; }
.preview-box__note { font-size: var(--step--1); }
.similar-race { background: var(--foam); border-radius: 8px; padding: 0.75rem 1rem; margin: 0 0 1.25rem; }
.similar-race p { margin: 0 0 0.5rem; }
.similar-race .seg { margin: 0 0 0.5rem; }
.race-cup__note { font-weight: 400; }
.race-image-link { margin: 1.5rem 0 0; }
.similar-race fieldset { border: 0; padding: 0; margin: 0 0 0.5rem; }
.similar-race legend { font-weight: 600; font-size: var(--step--1); padding: 0; margin-bottom: 0.35rem; }
.user-actions { display: inline-block; text-align: left; }
.user-actions > summary { list-style: none; cursor: pointer; }
.user-actions > summary::-webkit-details-marker { display: none; }
.user-actions[open] { display: grid; gap: 0.5rem; padding: 0.6rem; border: 1px solid var(--line); border-radius: 8px; background: var(--foam); }
.remember-box { display: flex; gap: 0.7rem; align-items: flex-start; padding: 0.75rem 0.9rem; margin: 0.25rem 0 1rem; border: 2px solid var(--sea); border-radius: 10px; background: var(--foam); cursor: pointer; font-size: var(--step--1); line-height: 1.4; }
.remember-box input { width: 1.3rem; height: 1.3rem; margin-top: 0.1rem; flex: none; accent-color: var(--sea); }
.remember-box strong { display: block; font-size: var(--step-0); }
.mini__nm a, .mini__nm > span:first-child { font-stretch: 87.5%; }
.mini__nm.is-long a, .mini__nm.is-long > span:first-child { font-stretch: 75%; }
@media (min-width: 760px) and (max-width: 999px) { .minis--3 { grid-template-columns: 1fr; } .minis--3 .mini { border-top: 1px solid var(--line); padding-top: 0.9rem; } .minis--3 .mini:first-child { border-top: 0; } }
@media (min-width: 760px) {
  .minis--2 { grid-template-rows: auto auto auto; }
  .minis--2 .mini:has(> .mini__head) { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; align-content: start; }
  .minis--2 .mini__col li { min-height: 2.5rem; }
}
@media (min-width: 1000px) {
  .minis--3 { grid-template-rows: auto auto auto; }
  .minis--3 .mini:has(> .mini__head) { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; align-content: start; }
  .minis--3 .mini__col li { min-height: 2.5rem; }
}
.mini__head, .mini__more { align-self: start; }
@media (max-width: 599px) {
  .mini__cols { grid-template-columns: 1fr; gap: 0.35rem; }
  .mini__col { min-width: 0; }
  .mini__col li { padding: 0.1rem 0; }
  .mini__nm { flex-direction: row; align-items: baseline; gap: 0.5rem; min-width: 0; }
  .mini__nm a, .mini__nm > span:first-child { font-size: 1.12rem; font-stretch: 100%; }
  .mini__nm.is-long a, .mini__nm.is-long > span:first-child { font-stretch: 87.5%; }
  .mini__nm.is-xlong a, .mini__nm.is-xlong > span:first-child { font-stretch: 75%; font-size: 1.04rem; }
  .mini__nm .num { font-size: 0.86rem; flex: none; margin-left: auto; }
  .mini__col .plate { min-width: 2.05rem; height: 1.6rem; font-size: 0.98rem; }
  .mini__more { font-size: 1.02rem; }
}
.mini__cols { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.mini__col, .mini__nm { min-width: 0; }
@media (min-width: 760px) { .minis--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .minis--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 760px) and (max-width: 999px) { .minis--3 { grid-template-columns: minmax(0, 1fr); } }
@media (min-width: 600px) { .mini__nm.is-xlong a, .mini__nm.is-xlong > span:first-child { font-stretch: 62.5%; } }
@media (max-width: 599px) { .mini__cols { grid-template-columns: minmax(0, 1fr); } }
.mini__cols { grid-template-columns: minmax(0, 1fr); gap: 0.55rem; }
.mini__col li { min-height: 0; padding: 0.2rem 0; }
.mini__nm { flex-direction: row; align-items: baseline; gap: 0.5rem; flex: 1; }
.mini__nm .num { flex: none; margin-left: auto; font-size: 0.78rem; }
.mini__nm a, .mini__nm > span:first-child { font-size: 0.98rem; }
.mini__nm.is-xlong a, .mini__nm.is-xlong > span:first-child { font-stretch: 75%; }
@media (min-width: 760px) { .minis--3 .mini__col li, .minis--2 .mini__col li { min-height: 0; } }
@media (max-width: 599px) { .mini__nm a, .mini__nm > span:first-child { font-size: 1.05rem; } .mini__nm.is-xlong a, .mini__nm.is-xlong > span:first-child { font-size: 1rem; } }
@media (min-width: 1000px) and (max-width: 1199px) { .minis--3 .mini__nm.is-xlong a, .minis--3 .mini__nm.is-xlong > span:first-child { font-stretch: 62.5%; } }
@media (max-width: 359px) { .mini__nm.is-long a, .mini__nm.is-long > span:first-child { font-stretch: 75%; } .mini__nm.is-xlong a, .mini__nm.is-xlong > span:first-child { font-stretch: 62.5%; } }
.mini__nm a, .mini__nm > span:first-child, .mini__nm.is-long a, .mini__nm.is-long > span:first-child { font-size: 1rem; font-stretch: 87.5%; }
@media (max-width: 599px) {
  .mini__nm a, .mini__nm > span:first-child, .mini__nm.is-long a, .mini__nm.is-long > span:first-child { font-size: 1.05rem; font-stretch: 100%; }
}
@media (max-width: 359px) { .mini__nm.is-long a, .mini__nm.is-long > span:first-child { font-stretch: 87.5%; } }
.race-official { margin: -0.15rem 0 0.3rem; color: var(--silt); font-size: var(--step--1); font-style: italic; }
.race-info-fields { border: 1px solid var(--line); border-radius: 8px; padding: 0.6rem 0.9rem 0.2rem; margin: 0 0 1rem; }
.race-info-fields legend { font-weight: 600; font-size: var(--step--1); padding: 0 0.3rem; }
.race-info-list { display: grid; grid-template-columns: max-content 1fr; gap: 0.15rem 1rem; margin: 0 0 0.8rem; font-size: var(--step--1); }
.race-info-list > div { display: contents; }
.race-info-list dt { color: var(--silt); font-weight: 600; }
.race-info-list dd { margin: 0; }
.share { margin-left: auto; align-self: center; display: inline-flex; align-items: center; gap: 0.2rem; font-size: 0.74rem; font-weight: 600; color: var(--silt); text-decoration: none; white-space: nowrap; border: 1.5px solid var(--line); border-radius: 999px; padding: 0.15rem 0.45rem 0.15rem 0.35rem; background: var(--foam); cursor: pointer; }
.share:hover, .share:focus-visible { color: var(--sea); border-color: var(--sea); }
.share__icon { width: 0.85rem; height: 0.85rem; flex: none; }
.rider-title { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4rem 1rem; }
.rider-title .display { margin-bottom: 0; }
.top1-tile { display: inline-flex; flex-direction: column; align-items: center; gap: 0.1rem; margin-left: -0.35rem; color: var(--silt); font-size: 0.68rem; font-weight: 700; line-height: 1; text-decoration: none; }
.top1-tile svg { width: 2.3rem; height: 1.85rem; transform: rotate(-6deg); }
.top1-tile:hover span { text-decoration: underline; }
@media (max-width: 30rem) { .top1-tile svg { width: 1.9rem; height: 1.5rem; } .top1-tile { font-size: 0.62rem; } }
.share-big { margin: 0 0 1.75rem; }
.share-big .btn { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; min-width: min(100%, 16rem); font-size: var(--step-1); padding: 0.9rem 1.8rem; }
.share-big .share__icon { width: 1.3rem; height: 1.3rem; }
.race-title, .rider-title { position: relative; padding-right: 4.3rem; }
.race-title .share, .rider-title .share { position: absolute; right: 0; top: 0.55rem; margin: 0; }
@media (min-width: 48rem) { .race-title .share, .rider-title .share { top: 50%; transform: translateY(-50%); } }
@media (max-width: 24.5rem) { .share__txt { display: none; } .share { padding: 0.3rem; } .race-title, .rider-title { padding-right: 2.4rem; }
  .top1-tile { margin-left: -0.7rem; } .top1-tile svg { width: 1.65rem; height: 1.3rem; } }
.row-edit .cell { min-width: 0; }
.row-edit .row-bib { width: 4.2rem; }
.row-edit .row-name { min-width: 11rem; }
.row-edit .row-cat { max-width: 14rem; }
.row-edit td.is-changed, .row-edit tr.is-unsure td.is-changed { background: #f6d860; }
.row-edit-box { margin: 0.75rem 0 1rem; }
.row-edit-box > summary { cursor: pointer; font-weight: 600; }
.row-edit tr.is-unsure td { background: #fbf1cf; }
.newclass-name { margin-top: 0.3rem; display: block; min-width: 10rem; }
.newclass-name[hidden] { display: none; }
.standing-list li { align-items: center; gap: 0.15rem 0.55rem; }
.standing-list .plate--xs { flex: none; }
.standing-list .jersey { margin-left: -0.2rem; }
.standing-list li { flex-wrap: nowrap; align-items: flex-start; }
.standing-list .plate--xs { margin-top: 0.1rem; }
.standing-list__body { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 0.6rem; min-width: 0; }
.standing-list__name { display: inline-flex; align-items: center; gap: 0.35rem; white-space: nowrap; }
.standing-list .jersey { margin-left: 0; }
.done-full > summary { cursor: pointer; }
.done-full dl { margin: 0.4rem 0 0.2rem; display: grid; gap: 0.2rem; font-size: 0.85rem; }
.done-full dl div { display: grid; grid-template-columns: 7.5rem 1fr; gap: 0.5rem; }
.done-full dt { color: var(--silt); }
.done-full dd { margin: 0; overflow-wrap: anywhere; }
.name-fill { flex-wrap: wrap; }
.name-suggest { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 0.3rem; font-size: 0.85rem; }
.btn--quiet { background: var(--foam); border-color: var(--line); }
.control-list { list-style: none; padding: 0; margin: 0 0 1.5rem; display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: 0.4rem 1rem; }
.control-list a { display: flex; align-items: center; gap: 0.6rem; text-decoration: none; padding: 0.45rem 0.6rem; border-radius: 8px; background: var(--foam); }
.control-list__n { min-width: 2.2rem; text-align: center; font-weight: 800; border-radius: 6px; padding: 0.1rem 0.3rem; background: var(--line); }
.control-list li.is-open .control-list__n { background: var(--plate); }
.control-list li.is-ok a { color: var(--silt); }
.control-sec { margin-bottom: 1.75rem; scroll-margin-top: 1rem; }
.search-box { position: relative; max-width: 34rem; margin: 0 0 1.25rem; }
.search-box input { width: 100%; font: inherit; font-size: var(--step-0); padding: 0.65rem 0.9rem 0.65rem 2.6rem; border: 2px solid var(--sea); border-radius: 10px; background: var(--foam); color: var(--sea); }
.search-box--big input { font-size: var(--step-1); padding: 0.85rem 1rem 0.85rem 3rem; border-width: 2.5px; }
.search-box__icon { position: absolute; left: 0.8rem; top: 50%; width: 1.25rem; height: 1.25rem; transform: translateY(-50%); color: var(--silt); pointer-events: none; }
.search-box--big .search-box__icon { left: 1rem; width: 1.45rem; height: 1.45rem; }
.search-box__list { position: absolute; z-index: 20; left: 0; right: 0; top: calc(100% + 0.35rem); background: var(--foam); border: 2px solid var(--sea); border-radius: 10px; box-shadow: 0 12px 30px rgba(14, 51, 64, .18); overflow: hidden; }
.search-box__group { padding: 0.45rem 0.9rem 0.15rem; font-size: 0.75rem; font-weight: 700; color: var(--silt); text-transform: uppercase; letter-spacing: 0.05em; }
.search-box__item { display: block; padding: 0.45rem 0.9rem; text-decoration: none; color: var(--sea); }
.search-box__item:hover, .search-box__item.is-active { background: var(--mist); }
.search-box__item b { display: block; font-weight: 700; }
.search-box__item span { font-size: 0.8rem; color: var(--silt); }
.search-box__empty { padding: 0.6rem 0.9rem; color: var(--silt); font-size: var(--step--1); }
.site-nav__search { display: inline-flex; align-items: center; }
.site-nav__search svg { width: 1.6em; height: 1.6em; display: block; }
.site-nav__search[aria-expanded="true"] { border-bottom-color: var(--plate); }
.site-search { background: var(--sea); padding: 0 0 0.9rem; }
.site-search .search-box { margin: 0; max-width: none; }
.search-list { list-style: none; padding: 0; margin: 0 0 1.5rem; }
.search-list li { padding: 0.45rem 0; border-bottom: 1px solid var(--line); }
.search-list a { font-weight: 700; text-decoration: none; }
@media (max-width: 420px) { .site-nav { gap: 0.5rem; } .site-nav a { font-size: 0.88rem; } .site-nav__search svg { width: 1.35rem; height: 1.35rem; } }
@media (max-width: 370px) { .site-nav { gap: 0.45rem; } .site-nav a { font-size: 0.8rem; } }
.numbers { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.4rem 0.75rem; max-width: 44rem; }
.numbers div { justify-content: flex-end; min-width: 0; }
.numbers dt { line-height: 1.2; }
@media (max-width: 520px) { .numbers { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0.4rem 0.35rem; } .numbers dt { font-size: 0.66rem; hyphens: manual; } }
.klass { color: var(--sea); font-weight: 700; }
.race-meta { border: 1px solid var(--line); border-radius: 0.6rem; padding: 0.6rem 1rem 0.2rem; margin: 0 0 1.25rem; background: var(--foam); }
.race-meta legend { font-weight: 700; padding: 0 0.3rem; }
.race-meta--todo { border: 2px solid var(--plate); }
.race-meta .field { margin-bottom: 0.9rem; }
.race-meta .row { gap: 1rem; }
.race-meta .check { margin-bottom: 0.5rem; }
.site-head__in { flex-wrap: wrap; }
.site-head__in .site-nav { margin-left: auto; }
.head-search { flex: 0 1 15rem; min-width: 10rem; margin-left: 0.5rem; }
.head-search .search-box { margin: 0; max-width: none; }
.head-search .search-box input { padding: 0.32rem 0.7rem 0.32rem 2rem; border: 0; border-radius: 8px; font-size: 0.9rem; background: var(--foam); }
.head-search .search-box input:focus, .head-search .search-box input:focus-visible { outline: none; box-shadow: 0 0 0 2px rgba(246, 248, 246, .45); }
.head-search .search-box input::placeholder { color: var(--silt); }
.head-search .search-box__icon { left: 0.6rem; width: 0.95rem; height: 0.95rem; }
.head-search .search-box__list { color: var(--sea); }
@media (max-width: 700px) {
  .site-head__in { row-gap: 0; padding-top: 0.55rem; }
  .head-search { flex: 1 1 100%; order: 3; margin: 0.35rem 0 0.6rem; }
  .head-search .search-box input { font-size: 1rem; padding-top: 0.3rem; padding-bottom: 0.3rem; }
}
.gen__preview canvas { background-color: #9aa6a4; background-image: linear-gradient(45deg, #87938f 25%, transparent 25%), linear-gradient(-45deg, #87938f 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #87938f 75%), linear-gradient(-45deg, transparent 75%, #87938f 75%); background-size: 24px 24px; background-position: 0 0, 0 12px, 12px -12px, -12px 0; }
.pin-form { max-width: 20rem; }
.pin-form input { font-size: 1.6rem; letter-spacing: 0.4em; text-align: center; }
.admin-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(13rem, 1fr)); gap: 0.75rem; margin: 1rem 0 2rem; }
.admin-tile { display: flex; flex-direction: column; gap: 0.25rem; padding: 1.1rem 1.2rem; border: 2px solid var(--sea); border-radius: 12px; background: var(--foam); color: var(--sea); text-decoration: none; min-height: 5.5rem; justify-content: center; }
.admin-tile strong { font-size: var(--step-1); line-height: 1.15; }
.admin-tile span:not(.badge) { color: var(--silt); font-size: 0.9rem; }
.admin-tile:hover, .admin-tile:focus-visible { background: var(--sea); color: var(--foam); }
.admin-tile:hover span:not(.badge) { color: var(--foam); opacity: .85; }
.admin-suggest { max-width: 34rem; }
.admin-suggest .search-box__list { top: 100%; }
.admin .search-box input:not([type=hidden]) { padding-left: 0.9rem; }
.control-bulk { display: flex; gap: 1rem; align-items: center; margin: 0 0 0.5rem; }
.control-bulk label { display: flex; gap: 0.4rem; align-items: center; font-size: 0.9rem; }
.w-check { width: 2rem; }
.ranking-best { font-size: 0.9rem; color: var(--silt); }
@media (max-width: 640px) { .ranking-best { display: none; } }
.numbers-note { margin: -0.3rem 0 1rem; font-size: 0.72rem; color: var(--silt); }
.rider-ranking .section-title a, .rider-ranking dd a { color: inherit; text-decoration: none; }
.rider-ranking dd a:hover, .rider-ranking .section-title a:hover { text-decoration: underline; }
.podium__dist { font-size: 0.7em; font-weight: 600; color: var(--silt); font-stretch: 100%; white-space: nowrap; }
.race-head .race-cup { font-size: var(--step-0); }
.flag[class*=" fl-"]{display:inline-block;background-size:cover;background-position:center}
.fl-at{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-at' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23fff' d='M0 160h640v160H0z'/%3E %3Cpath fill='%23c8102e' d='M0 0h640v160H0zm0 320h640v160H0z'/%3E %3C/svg%3E")}
.fl-au{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-au' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%2300008B' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23fff' d='m37.5 0 122 90.5L281 0h39v31l-120 89.5 120 89V240h-40l-120-89.5L40.5 240H0v-30l119.5-89L0 32V0z'/%3E %3Cpath fill='red' d='M212 140.5 320 220v20l-135.5-99.5zm-92 10 3 17.5-96 72H0zM320 0v1.5l-124.5 94 1-22L295 0zM0 0l119.5 88h-30L0 21z'/%3E %3Cpath fill='%23fff' d='M120.5 0v240h80V0zM0 80v80h320V80z'/%3E %3Cpath fill='red' d='M0 96.5v48h320v-48zM136.5 0v240h48V0z'/%3E %3Cpath fill='%23fff' d='m527 396.7-20.5 2.6 2.2 20.5-14.8-14.4-14.7 14.5 2-20.5-20.5-2.4 17.3-11.2-10.9-17.5 19.6 6.5 6.9-19.5 7.1 19.4 19.5-6.7-10.7 17.6zm-3.7-117.2 2.7-13-9.8-9 13.2-1.5 5.5-12.1 5.5 12.1 13.2 1.5-9.8 9 2.7 13-11.6-6.6zm-104.1-60-20.3 2.2 1.8 20.3-14.4-14.5-14.8 14.1 2.4-20.3-20.2-2.7 17.3-10.8-10.5-17.5 19.3 6.8L387 178l6.7 19.3 19.4-6.3-10.9 17.3 17.1 11.2ZM623 186.7l-20.9 2.7 2.3 20.9-15.1-14.7-15 14.8 2.1-21-20.9-2.4 17.7-11.5-11.1-17.9 20 6.7 7-19.8 7.2 19.8 19.9-6.9-11 18zm-96.1-83.5-20.7 2.3 1.9 20.8-14.7-14.8-15.1 14.4 2.4-20.7-20.7-2.8 17.7-11L467 73.5l19.7 6.9 7.3-19.5 6.8 19.7 19.8-6.5-11.1 17.6zM234 385.7l-45.8 5.4 4.6 45.9-32.8-32.4-33 32.2 4.9-45.9-45.8-5.8 38.9-24.8-24-39.4 43.6 15 15.8-43.4 15.5 43.5 43.7-14.7-24.3 39.2 38.8 25.1Z'/%3E %3C/svg%3E")}
.fl-be{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-be' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='%23000001' d='M0 0h213.3v480H0z'/%3E %3Cpath fill='%23ffd90c' d='M213.3 0h213.4v480H213.3z'/%3E %3Cpath fill='%23f31830' d='M426.7 0H640v480H426.7z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-bg{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-bg' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23fff' d='M0 0h640v160H0z'/%3E %3Cpath fill='%2300966e' d='M0 160h640v160H0z'/%3E %3Cpath fill='%23d62612' d='M0 320h640v160H0z'/%3E %3C/svg%3E")}
.fl-ca{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-ca' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23fff' d='M150.1 0h339.7v480H150z'/%3E %3Cpath fill='%23d52b1e' d='M-19.7 0h169.8v480H-19.7zm509.5 0h169.8v480H489.9zM201 232l-13.3 4.4 61.4 54c4.7 13.7-1.6 17.8-5.6 25l66.6-8.4-1.6 67 13.9-.3-3.1-66.6 66.7 8c-4.1-8.7-7.8-13.3-4-27.2l61.3-51-10.7-4c-8.8-6.8 3.8-32.6 5.6-48.9 0 0-35.7 12.3-38 5.8l-9.2-17.5-32.6 35.8c-3.5.9-5-.5-5.9-3.5l15-74.8-23.8 13.4c-2 .9-4 .1-5.2-2.2l-23-46-23.6 47.8c-1.8 1.7-3.6 1.9-5 .7L264 130.8l13.7 74.1c-1.1 3-3.7 3.8-6.7 2.2l-31.2-35.3c-4 6.5-6.8 17.1-12.2 19.5-5.4 2.3-23.5-4.5-35.6-7 4.2 14.8 17 39.6 9 47.7'/%3E %3C/svg%3E")}
.fl-ch{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-ch' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='red' d='M0 0h640v480H0z'/%3E %3Cg fill='%23fff'%3E %3Cpath d='M170 195h300v90H170z'/%3E %3Cpath d='M275 90h90v300h-90z'/%3E %3C/g%3E %3C/g%3E %3C/svg%3E")}
.fl-cl{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-cl' width='640' height='480' viewBox='0 0 640 480'%3E %3Cdefs%3E %3CclipPath id='cl-a'%3E %3Cpath fill-opacity='.7' d='M0 0h682.7v512H0z'/%3E %3C/clipPath%3E %3C/defs%3E %3Cg fill-rule='evenodd' clip-path='url(%23cl-a)' transform='scale(.9375)'%3E %3Cpath fill='%23fff' d='M256 0h512v256H256z'/%3E %3Cpath fill='%230039a6' d='M0 0h256v256H0z'/%3E %3Cpath fill='%23fff' d='M167.8 191.7 128.2 162l-39.5 30 14.7-48.8L64 113.1l48.7-.5L127.8 64l15.5 48.5 48.7.1-39.2 30.4z'/%3E %3Cpath fill='%23d52b1e' d='M0 256h768v256H0z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-co{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-co' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='%23ffe800' d='M0 0h640v480H0z'/%3E %3Cpath fill='%2300148e' d='M0 240h640v240H0z'/%3E %3Cpath fill='%23da0010' d='M0 360h640v120H0z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-cz{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-cz' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23fff' d='M0 0h640v240H0z'/%3E %3Cpath fill='%23d7141a' d='M0 240h640v240H0z'/%3E %3Cpath fill='%2311457e' d='M360 240 0 0v480z'/%3E %3C/svg%3E")}
.fl-de{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-de' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23fc0' d='M0 320h640v160H0z'/%3E %3Cpath fill='%23000001' d='M0 0h640v160H0z'/%3E %3Cpath fill='red' d='M0 160h640v160H0z'/%3E %3C/svg%3E")}
.fl-dk{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-dk' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23c8102e' d='M0 0h640.1v480H0z'/%3E %3Cpath fill='%23fff' d='M205.7 0h68.6v480h-68.6z'/%3E %3Cpath fill='%23fff' d='M0 205.7h640.1v68.6H0z'/%3E %3C/svg%3E")}
.fl-ee{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-ee' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%231791ff' d='M0 0h640v160H0z'/%3E %3Cpath fill='%23000001' d='M0 160h640v160H0z'/%3E %3Cpath fill='%23fff' d='M0 320h640v160H0z'/%3E %3C/svg%3E")}
.fl-fi{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-fi' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23fff' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23002f6c' d='M0 174.5h640v131H0z'/%3E %3Cpath fill='%23002f6c' d='M175.5 0h130.9v480h-131z'/%3E %3C/svg%3E")}
.fl-fr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-fr' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23fff' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23000091' d='M0 0h213.3v480H0z'/%3E %3Cpath fill='%23e1000f' d='M426.7 0H640v480H426.7z'/%3E %3C/svg%3E")}
.fl-gb{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-gb' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23012169' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23FFF' d='m75 0 244 181L562 0h78v62L400 241l240 178v61h-80L320 301 81 480H0v-60l239-178L0 64V0z'/%3E %3Cpath fill='%23C8102E' d='m424 281 216 159v40L369 281zm-184 20 6 35L54 480H0zM640 0v3L391 191l2-44L590 0zM0 0l239 176h-60L0 42z'/%3E %3Cpath fill='%23FFF' d='M241 0v480h160V0zM0 160v160h640V160z'/%3E %3Cpath fill='%23C8102E' d='M0 193v96h640v-96zM273 0v480h96V0z'/%3E %3C/svg%3E")}
.fl-gr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-gr' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%230d5eaf' fill-rule='evenodd' d='M0 0h640v53.3H0z'/%3E %3Cpath fill='%23fff' fill-rule='evenodd' d='M0 53.3h640v53.4H0z'/%3E %3Cpath fill='%230d5eaf' fill-rule='evenodd' d='M0 106.7h640V160H0z'/%3E %3Cpath fill='%23fff' fill-rule='evenodd' d='M0 160h640v53.3H0z'/%3E %3Cpath fill='%230d5eaf' d='M0 0h266.7v266.7H0z'/%3E %3Cpath fill='%230d5eaf' fill-rule='evenodd' d='M0 213.3h640v53.4H0z'/%3E %3Cpath fill='%23fff' fill-rule='evenodd' d='M0 266.7h640V320H0z'/%3E %3Cpath fill='%230d5eaf' fill-rule='evenodd' d='M0 320h640v53.3H0z'/%3E %3Cpath fill='%23fff' fill-rule='evenodd' d='M0 373.3h640v53.4H0z'/%3E %3Cg fill='%23fff' fill-rule='evenodd' stroke-width='1.3'%3E %3Cpath d='M106.7 0H160v266.7h-53.3z'/%3E %3Cpath d='M0 106.7h266.7V160H0z'/%3E %3C/g%3E %3Cpath fill='%230d5eaf' d='M0 426.7h640V480H0z'/%3E %3C/svg%3E")}
.fl-hu{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-hu' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd'%3E %3Cpath fill='%23fff' d='M640 480H0V0h640z'/%3E %3Cpath fill='%23388d00' d='M640 480H0V320h640z'/%3E %3Cpath fill='%23d43516' d='M640 160.1H0V.1h640z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-ie{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-ie' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='%23fff' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23009A49' d='M0 0h213.3v480H0z'/%3E %3Cpath fill='%23FF7900' d='M426.7 0H640v480H426.7z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-is{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-is' width='640' height='480' viewBox='0 0 640 480'%3E %3Cdefs%3E %3CclipPath id='is-a'%3E %3Cpath fill-opacity='.7' d='M0 0h640v480H0z'/%3E %3C/clipPath%3E %3C/defs%3E %3Cg fill-rule='evenodd' stroke-width='0' clip-path='url(%23is-a)'%3E %3Cpath fill='%23003897' d='M0 0h666.7v480H0z'/%3E %3Cpath fill='%23fff' d='M0 186.7h186.7V0h106.6v186.7h373.4v106.6H293.3V480H186.7V293.3H0z'/%3E %3Cpath fill='%23d72828' d='M0 213.3h213.3V0h53.4v213.3h400v53.4h-400V480h-53.4V266.7H0z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-it{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-it' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='%23fff' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23009246' d='M0 0h213.3v480H0z'/%3E %3Cpath fill='%23ce2b37' d='M426.7 0H640v480H426.7z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-jp{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-jp' width='640' height='480' viewBox='0 0 640 480'%3E %3Cdefs%3E %3CclipPath id='jp-a'%3E %3Cpath fill-opacity='.7' d='M-88 32h640v480H-88z'/%3E %3C/clipPath%3E %3C/defs%3E %3Cg fill-rule='evenodd' stroke-width='1pt' clip-path='url(%23jp-a)' transform='translate(88 -32)'%3E %3Cpath fill='%23fff' d='M-128 32h720v480h-720z'/%3E %3Ccircle cx='523.1' cy='344.1' r='194.9' fill='%23bc002d' transform='translate(-168.4 8.6)scale(.76554)'/%3E %3C/g%3E %3C/svg%3E")}
.fl-lt{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-lt' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt' transform='scale(.64143 .96773)'%3E %3Crect width='1063' height='708.7' fill='%23006a44' rx='0' ry='0' transform='scale(.93865 .69686)'/%3E %3Crect width='1063' height='236.2' y='475.6' fill='%23c1272d' rx='0' ry='0' transform='scale(.93865 .69686)'/%3E %3Cpath fill='%23fdb913' d='M0 0h997.8v164.6H0z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-lu{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-lu' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23ed2939' d='M0 0h640v160H0z'/%3E %3Cpath fill='%23fff' d='M0 160h640v160H0z'/%3E %3Cpath fill='%2300a1de' d='M0 320h640v160H0z'/%3E %3C/svg%3E")}
.fl-lv{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-lv' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd'%3E %3Cpath fill='%23fff' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23981e32' d='M0 0h640v192H0zm0 288h640v192H0z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-nl{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-nl' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23ae1c28' d='M0 0h640v160H0z'/%3E %3Cpath fill='%23fff' d='M0 160h640v160H0z'/%3E %3Cpath fill='%2321468b' d='M0 320h640v160H0z'/%3E %3C/svg%3E")}
.fl-no{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-no' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23ed2939' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23fff' d='M180 0h120v480H180z'/%3E %3Cpath fill='%23fff' d='M0 180h640v120H0z'/%3E %3Cpath fill='%23002664' d='M210 0h60v480h-60z'/%3E %3Cpath fill='%23002664' d='M0 210h640v60H0z'/%3E %3C/svg%3E")}
.fl-nz{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' id='flag-icons-nz' width='640' height='480' viewBox='0 0 640 480'%3E %3Cdefs%3E %3Cg id='nz-b'%3E %3Cg id='nz-a'%3E %3Cpath d='M0-.3v.5l1-.5z'/%3E %3Cpath d='M.2.3 0-.1l1-.2z'/%3E %3C/g%3E %3Cuse xlink:href='%23nz-a' transform='scale(-1 1)'/%3E %3Cuse xlink:href='%23nz-a' transform='rotate(72 0 0)'/%3E %3Cuse xlink:href='%23nz-a' transform='rotate(-72 0 0)'/%3E %3Cuse xlink:href='%23nz-a' transform='scale(-1 1)rotate(72)'/%3E %3C/g%3E %3C/defs%3E %3Cpath fill='%2300247d' fill-rule='evenodd' d='M0 0h640v480H0z'/%3E %3Cg transform='translate(-111 36.1)scale(.66825)'%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23fff' transform='translate(900 120)scale(45.4)'/%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23cc142b' transform='matrix(30 0 0 30 900 120)'/%3E %3C/g%3E %3Cg transform='rotate(82 525.2 114.6)scale(.66825)'%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23fff' transform='rotate(-82 519 -457.7)scale(40.4)'/%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23cc142b' transform='rotate(-82 519 -457.7)scale(25)'/%3E %3C/g%3E %3Cg transform='rotate(82 525.2 114.6)scale(.66825)'%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23fff' transform='rotate(-82 668.6 -327.7)scale(45.4)'/%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23cc142b' transform='rotate(-82 668.6 -327.7)scale(30)'/%3E %3C/g%3E %3Cg transform='translate(-111 36.1)scale(.66825)'%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23fff' transform='translate(900 480)scale(50.4)'/%3E %3Cuse xlink:href='%23nz-b' width='100%25' height='100%25' fill='%23cc142b' transform='matrix(35 0 0 35 900 480)'/%3E %3C/g%3E %3Cpath fill='%23012169' d='M0 0h320v240H0z'/%3E %3Cpath fill='%23fff' d='m37.5 0 122 90.5L281 0h39v31l-120 89.5 120 89V240h-40l-120-89.5L40.5 240H0v-30l119.5-89L0 32V0z'/%3E %3Cpath fill='%23c8102e' d='M212 140.5 320 220v20l-135.5-99.5zm-92 10 3 17.5-96 72H0zM320 0v1.5l-124.5 94 1-22L295 0zM0 0l119.5 88h-30L0 21z'/%3E %3Cpath fill='%23fff' d='M120.5 0v240h80V0zM0 80v80h320V80z'/%3E %3Cpath fill='%23c8102e' d='M0 96.5v48h320v-48zM136.5 0v240h48V0z'/%3E %3C/svg%3E")}
.fl-pl{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-pl' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd'%3E %3Cpath fill='%23fff' d='M640 480H0V0h640z'/%3E %3Cpath fill='%23dc143c' d='M640 480H0V240h640z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-ro{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-ro' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='%2300319c' d='M0 0h213.3v480H0z'/%3E %3Cpath fill='%23ffde00' d='M213.3 0h213.4v480H213.3z'/%3E %3Cpath fill='%23de2110' d='M426.7 0H640v480H426.7z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-se{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-se' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23005293' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23fecb00' d='M176 0v192H0v96h176v192h96V288h368v-96H272V0z'/%3E %3C/svg%3E")}
.fl-si{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-si' width='640' height='480' viewBox='0 0 640 480'%3E %3Cdefs%3E %3CclipPath id='si-a'%3E %3Cpath fill-opacity='.7' d='M-15 0h682.6v512H-15.1z'/%3E %3C/clipPath%3E %3C/defs%3E %3Cg fill-rule='evenodd' stroke-width='1pt' clip-path='url(%23si-a)' transform='translate(14.1)scale(.9375)'%3E %3Cpath fill='%23fff' d='M-62 0H962v512H-62z'/%3E %3Cpath fill='%23d50000' d='M-62 341.3H962V512H-62z'/%3E %3Cpath fill='%230000bf' d='M-62 170.7H962v170.6H-62z'/%3E %3Cpath fill='%23d50000' d='M228.4 93c-4 61.6-6.4 95.4-15.7 111-10.2 16.8-20 29.1-59.7 44-39.6-14.9-49.4-27.2-59.6-44-9.4-15.6-11.7-49.4-15.7-111l5.8-2c11.8-3.6 20.6-6.5 27.1-7.8 9.3-2 17.3-4.2 42.3-4.7 25 .4 33 2.8 42.3 4.8 6.4 1.4 15.6 4 27.3 7.7z'/%3E %3Cpath fill='%230000bf' d='M222.6 91c-3.8 61.5-7 89.7-12 103.2-9.6 23.2-24.8 35.9-57.6 48-32.8-12.1-48-24.8-57.7-48-5-13.6-8-41.7-11.8-103.3 11.6-3.6 20.6-6.4 27.1-7.7 9.3-2 17.3-4.3 42.3-4.7 25 .4 33 2.7 42.3 4.7a284 284 0 0 1 27.4 7.7z'/%3E %3Cpath fill='%23ffdf00' d='m153 109.8 1.5 3.7 7 1-4.5 2.7 4.3 2.9-6.3 1-2 3.4-2-3.5-6-.8 4-3-4.2-2.7 6.7-1z'/%3E %3Cpath fill='%23fff' d='m208.3 179.6-3.9-3-2.7-4.6-5.4-4.7-2.9-4.7-5.4-4.9-2.6-4.7-3-2.3-1.8-1.9-5 4.3-2.6 4.7-3.3 3-3.7-2.9-2.7-4.8-10.3-18.3-10.3 18.3-2.7 4.8-3.7 2.9-3.3-3-2.7-4.7-4.9-4.3-1.9 1.8-2.9 2.4-2.6 4.7-5.4 4.9-2.9 4.7-5.4 4.7-2.7 4.6-3.9 3a65.8 65.8 0 0 0 18.6 36.3 107 107 0 0 0 36.6 20.5 104.1 104.1 0 0 0 36.8-20.5c5.8-6 16.6-19.3 18.6-36.3'/%3E %3Cpath fill='%23ffdf00' d='m169.4 83.9 1.6 3.7 7 1-4.6 2.7 4.4 2.9-6.3 1-2 3.4-2-3.5-6-.8 4-3-4.2-2.7 6.6-1zm-33 0 1.6 3.7 7 .9-4.5 2.7 4.3 2.9-6.3 1-2 3.4-2-3.4-6-.9 4-3-4.2-2.7 6.7-1z'/%3E %3Cpath fill='%230000bf' d='M199.7 203h-7.4l-7-.5-8.3-4h-9.4l-8.1 4-6.5.6-6.4-.6-8.1-4H129l-8.4 4-6.9.6-7.6-.1-3.6-6.2.1-.2 11.2 1.9 6.9-.5 8.3-4.1h9.4l8.2 4 6.4.6 6.5-.6 8.1-4h9.4l8.4 4 6.9.6 10.8-2 .2.4zm-86.4 9.5 7.4-.5 8.3-4h9.4l8.2 4 6.4.5 6.4-.5 8.2-4h9.4l8.3 4 7.5.5 4.8-6h-.1l-5.2 1.4-6.9-.5-8.3-4h-9.4l-8.2 4-6.4.6-6.5-.6-8.1-4H129l-8.4 4-6.9.6-5-1.3v.2l4.5 5.6z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-sk{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-sk' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23ee1c25' d='M0 0h640v480H0z'/%3E %3Cpath fill='%230b4ea2' d='M0 0h640v320H0z'/%3E %3Cpath fill='%23fff' d='M0 0h640v160H0z'/%3E %3Cpath fill='%23fff' d='M233 370.8c-43-20.7-104.6-61.9-104.6-143.2 0-81.4 4-118.4 4-118.4h201.3s3.9 37 3.9 118.4S276 350 233 370.8'/%3E %3Cpath fill='%23ee1c25' d='M233 360c-39.5-19-96-56.8-96-131.4s3.6-108.6 3.6-108.6h184.8s3.5 34 3.5 108.6C329 303.3 272.5 341 233 360'/%3E %3Cpath fill='%23fff' d='M241.4 209c10.7.2 31.6.6 50.1-5.6 0 0-.4 6.7-.4 14.4s.5 14.4.5 14.4c-17-5.7-38.1-5.8-50.2-5.7v41.2h-16.8v-41.2c-12-.1-33.1 0-50.1 5.7 0 0 .5-6.7.5-14.4 0-7.8-.5-14.4-.5-14.4 18.5 6.2 39.4 5.8 50 5.6v-25.9c-9.7 0-23.7.4-39.6 5.7 0 0 .5-6.6.5-14.4 0-7.7-.5-14.4-.5-14.4 15.9 5.3 29.9 5.8 39.6 5.7-.5-16.4-5.3-37-5.3-37s9.9.7 13.8.7c4 0 13.8-.7 13.8-.7s-4.8 20.6-5.3 37c9.7.1 23.7-.4 39.6-5.7 0 0-.5 6.7-.5 14.4 0 7.8.5 14.4.5 14.4a119 119 0 0 0-39.7-5.7v26z'/%3E %3Cpath fill='%230b4ea2' d='M233 263.3c-19.9 0-30.5 27.5-30.5 27.5s-6-13-22.2-13c-11 0-19 9.7-24.2 18.8 20 31.7 51.9 51.3 76.9 63.4 25-12 57-31.7 76.9-63.4-5.2-9-13.2-18.8-24.2-18.8-16.2 0-22.2 13-22.2 13S253 263.3 233 263.3'/%3E %3C/svg%3E")}
.fl-sr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-sr' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23377e3f' d='M.1 0h640v480H.1z'/%3E %3Cpath fill='%23fff' d='M.1 96h640v288H.1z'/%3E %3Cpath fill='%23b40a2d' d='M.1 144h640v192H.1z'/%3E %3Cpath fill='%23ecc81d' d='m320 153.2 56.4 173.6-147.7-107.3h182.6L263.6 326.8z'/%3E %3C/svg%3E")}
.fl-tr{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-tr' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd'%3E %3Cpath fill='%23e30a17' d='M0 0h640v480H0z'/%3E %3Cpath fill='%23fff' d='M407 247.5c0 66.2-54.6 119.9-122 119.9s-122-53.7-122-120 54.6-119.8 122-119.8 122 53.7 122 119.9'/%3E %3Cpath fill='%23e30a17' d='M413 247.5c0 53-43.6 95.9-97.5 95.9s-97.6-43-97.6-96 43.7-95.8 97.6-95.8 97.6 42.9 97.6 95.9z'/%3E %3Cpath fill='%23fff' d='m430.7 191.5-1 44.3-41.3 11.2 40.8 14.5-1 40.7 26.5-31.8 40.2 14-23.2-34.1 28.3-33.9-43.5 12-25.8-37z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-ua{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-ua' width='640' height='480' viewBox='0 0 640 480'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='gold' d='M0 0h640v480H0z'/%3E %3Cpath fill='%230057b8' d='M0 0h640v240H0z'/%3E %3C/g%3E %3C/svg%3E")}
.fl-us{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-us' width='640' height='480' viewBox='0 0 640 480'%3E %3Cpath fill='%23bd3d44' d='M0 0h640v480H0'/%3E %3Cpath stroke='%23fff' stroke-width='37' d='M0 55.3h640M0 129h640M0 203h640M0 277h640M0 351h640M0 425h640'/%3E %3Cpath fill='%23192f5d' d='M0 0h364.8v258.5H0'/%3E %3Cmarker id='us-a' markerHeight='30' markerWidth='30'%3E %3Cpath fill='%23fff' d='m14 0 9 27L0 10h28L5 27z'/%3E %3C/marker%3E %3Cpath fill='none' marker-mid='url(%23us-a)' d='m0 0 16 11h61 61 61 61 60L47 37h61 61 60 61L16 63h61 61 61 61 60L47 89h61 61 60 61L16 115h61 61 61 61 60L47 141h61 61 60 61L16 166h61 61 61 61 60L47 192h61 61 60 61L16 218h61 61 61 61 60z'/%3E %3C/svg%3E")}
.fl-za{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' id='flag-icons-za' width='640' height='480' viewBox='0 0 640 480'%3E %3Cdefs%3E %3CclipPath id='za-a'%3E %3Cpath fill-opacity='.7' d='M-71.9 0h682.7v512H-71.9z'/%3E %3C/clipPath%3E %3C/defs%3E %3Cg clip-path='url(%23za-a)' transform='translate(67.4)scale(.93748)'%3E %3Cg fill-rule='evenodd' stroke-width='1pt'%3E %3Cpath fill='%23000001' d='M-71.9 407.8V104.4L154 256.1z'/%3E %3Cpath fill='%23000c8a' d='m82.2 512.1 253.6-170.6H696V512H82.2z'/%3E %3Cpath fill='%23e1392d' d='M66 0h630v170.8H335.7S69.3-1.7 66 0'/%3E %3Cpath fill='%23ffb915' d='M-71.9 64v40.4L154 256-72 407.8v40.3l284.5-192z'/%3E %3Cpath fill='%23007847' d='M-71.9 64V0h95l301.2 204h371.8v104.2H324.3L23 512h-94.9v-63.9l284.4-192L-71.8 64z'/%3E %3Cpath fill='%23fff' d='M23 0h59.2l253.6 170.7H696V204H324.3zm0 512.1h59.2l253.6-170.6H696v-33.2H324.3L23 512z'/%3E %3C/g%3E %3C/g%3E %3C/svg%3E")}
.results tbody, .podium__list, .mini__cols, .dnf-list { -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
.next-race { margin-bottom: 0.9rem; }
.next-race + section > .section-title:first-child { margin-top: 0.4rem; }
.next-race + .latest, .next-race + .minis--above { margin-top: 0; }
.lang-menu { position: relative; margin-left: 0.25rem; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.04em; }
.lang-menu summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 0.3rem; color: rgba(246, 248, 246, .85); padding: 0.25rem 0.45rem; border: 1px solid rgba(246, 248, 246, .28); border-radius: 6px; }
.lang-menu summary::-webkit-details-marker { display: none; }
.lang-menu summary svg { width: 0.6rem; height: 0.4rem; fill: none; stroke: currentColor; stroke-width: 1.6; transition: transform .15s; }
.lang-menu[open] summary svg { transform: rotate(180deg); }
.lang-menu summary:hover, .lang-menu[open] summary { color: #fff; border-color: rgba(246, 248, 246, .6); }
.lang-menu__list { position: absolute; right: 0; top: calc(100% + 0.35rem); z-index: 30; margin: 0; padding: 0.3rem; list-style: none; min-width: 9.5rem;
  background: var(--foam); border-radius: 8px; box-shadow: 0 8px 24px rgba(14, 51, 64, .22); }
.lang-menu__list a { display: flex; gap: 0.5rem; padding: 0.4rem 0.55rem; border-radius: 6px; color: var(--sea); text-decoration: none; font-weight: 600; letter-spacing: 0; font-size: 0.85rem; }
.lang-menu__list a b { width: 1.4rem; font-size: 0.75rem; letter-spacing: 0.04em; color: var(--silt); }
.lang-menu__list a:hover { background: var(--mist); }
.lang-menu__list a[aria-current] { background: var(--plate); }
.lang-menu__list a[aria-current] b { color: var(--sea); }
@media (max-width: 700px) { .lang-menu { order: 2; margin-left: 0.5rem; } }
.page-sub { margin: -0.15rem 0 0.35rem; font-size: 0.8rem; font-weight: 600; letter-spacing: 0.02em; color: var(--silt); }
.file-pick { display: flex; align-items: center; gap: 0.6rem; flex-wrap: wrap; position: relative; }
.file-pick__input { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.file-pick__input:focus-visible + .file-pick__btn { outline: 2px solid var(--sea); outline-offset: 2px; }
.file-pick__btn { cursor: pointer; }
.file-pick__name { color: var(--silt); font-size: var(--step--1); overflow-wrap: anywhere; }
.level-table.is-collapsed tr.is-extra { display: none; }
.level-more { margin: 0.5rem 0 1rem; }
.form-privacy { margin: 0; font-size: 0.8rem; color: var(--silt); }
.form-privacy a { color: inherit; }
.dist-nav { align-items: center; margin-bottom: 1rem; }
.dist-nav__label { font-weight: 700; margin-right: 0.25rem; }
.race-block + .race-block { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 4px solid var(--line); }
.standings-note--more summary { cursor: pointer; font-weight: 600; color: var(--sea); }
.standings-note--more[open] summary { margin-bottom: 0.4rem; }
.standings-note--more p { margin: 0; }
.rank-plate { display: inline-block; text-decoration: none !important; }
.rank-plate .plate { font-size: 1.05rem; }
.rank-plate:hover .plate { outline: 2px solid var(--plate); outline-offset: 1px; }
.rider-teams .section-title, .rider-numbers .section-title { margin: 0.75rem 0 0.3rem; }
.rider-numbers .numbers { margin-bottom: 0.25rem; }
.rider-standings { margin-bottom: 0.25rem; }
.numbers-note { margin-top: 0.15rem; margin-bottom: 0; }
.rider-ranking .numbers > div { display: flex; flex-direction: column-reverse; align-items: flex-start; gap: 0.15rem; }
[data-row-link] { cursor: pointer; }
body:not(.admin) .site-nav a { font-weight: 600; font-size: 1.05rem; }
body:not(.admin) .lang-menu { font-size: 0.68rem; margin-left: 0.4rem; }
body:not(.admin) .lang-menu summary { padding: 0.15rem 0.32rem; gap: 0.2rem; border-radius: 5px; }
body:not(.admin) .lang-menu summary svg { width: 0.5rem; height: 0.34rem; }
@media (max-width: 520px) {
  body:not(.admin) .site-head__in { column-gap: 0.5rem; }
  body:not(.admin) .site-head__in .site-nav { gap: clamp(0.45rem, 2.6vw, 0.9rem); flex-wrap: nowrap; min-width: 0; }
  body:not(.admin) .site-nav a { font-size: min(1.05rem, calc((100vw - 155px) / 14)); white-space: nowrap; }
  body:not(.admin) .lang-menu { margin-left: 0.35rem; flex-shrink: 0; }
}
.filters.letter-nav { flex-wrap: wrap; overflow: visible; gap: 0.35rem; margin: 0 0 1.25rem; padding: 0; }
.letter-nav .chip { min-width: 2.2rem; text-align: center; padding-left: 0.5rem; padding-right: 0.5rem; }
@media (max-width: 520px) { .letter-nav .chip { min-width: 2rem; padding: 0.25rem 0.4rem; font-size: 0.8rem; } }
.chip--off { opacity: 0.35; pointer-events: none; }
.letters:has(> .letter:only-child) { columns: auto; }
.letters > .letter:only-child { break-inside: auto; }
.letters > .letter:only-child ul { columns: 15rem; column-gap: 2.5rem; }
.doubt.is-busy { opacity: 0.45; pointer-events: none; }
.admin-table tr.is-busy { opacity: 0.45; pointer-events: none; }
.cat-merge { display: block; margin-top: 0.2rem; font-weight: 600; color: var(--ok); }
