/* Sport uses the same quiet information style as the tournament pages. */
.page-theme--sport { background: var(--color-paper); }
.page-theme--sport main :is(h2, h3, legend) { font-family: var(--font-profile); font-weight: 700; letter-spacing: 0; }
.page-theme--sport .content-page { max-width: var(--content-reading); }
.page-theme--sport .guide-facts { border-bottom: 1px solid var(--color-border); }
.page-theme--sport .guide-facts dd { font-family: var(--font-profile); font-weight: 700; }
.page-theme--sport :is(.guide-notice, .notice) { position: relative; max-width: none; width: 100%; margin: 0 0 var(--space-8); padding: 1.25rem 1.5rem 1.25rem 4rem; border: 0; border-radius: var(--radius-sm); background: var(--color-highlight); color: var(--color-ink); font-size: 1rem; line-height: 1.65; }
.page-theme--sport :is(.guide-notice, .notice)::before { content: ''; position: absolute; left: 1.4rem; top: 1.5rem; width: 1.4rem; height: 1.4rem; background: url('/assets/icons/fontawesome/circle-exclamation.svg') center / contain no-repeat; }
.page-theme--sport .guide-sidebar nav a { padding-block: .8rem; }
.page-theme--sport .guide-rows > div { grid-template-columns: minmax(9rem, .8fr) minmax(0, 2fr); gap: 1.5rem; }
.page-theme--sport .guide-rows dt { color: var(--color-ink); }
.page-theme--sport .guide-next { background: none; color: var(--color-ink); border-top: 1px solid var(--color-border); padding-inline: 0; }
.page-theme--sport .guide-next .guide-eyebrow { color: var(--color-brand); }
.page-theme--sport .guide-next .button:focus-visible { outline-color: var(--color-focus); }
.page-theme--sport .hero.hero--referees { --hero-image: image-set(url('/assets/images/sport-dommere-1600.avif') type('image/avif'), url('/assets/images/sport-dommere-1600.webp') type('image/webp')); --hero-position: center 40%; }
.page-theme--sport .hero.hero--first-aid { --hero-image: image-set(url('/assets/images/sport-sanitet-1600.avif') type('image/avif'), url('/assets/images/sport-sanitet-1600.webp') type('image/webp')); --hero-position: center; }
.page-sport .sport-section-content { width: min(100%, var(--content-reading)); }
.page-sport .sport-section-content > * { max-width: none; }
.page-sport .guide-rows > div { align-items: start; padding: 0; border-bottom: 0; }
.page-sport .guide-rows > div + div { margin-top: var(--space-5); }
.page-sport .guide-main--quiet-separators > .guide-section:not(:last-of-type)::after { content: none; }
.page-sport .guide-main--quiet-separators > .guide-section + .guide-section { padding-top: var(--space-6); }
.page-sport .guide-next { padding: clamp(1.5rem, 4vw, 3rem); border-top: 0; background: var(--color-ink); color: var(--color-paper); }
.page-sport .guide-next .button:focus-visible { outline-color: var(--color-paper); }
.page-sport .sport-classes-scroll { width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; }
.page-sport .sport-classes-scroll:focus-visible { outline: 2px solid var(--color-focus); outline-offset: 3px; }
.page-sport .sport-classes { min-width: 40rem; }
.sport-classes { width: 100%; border-collapse: collapse; text-align: left; margin-block: 1.5rem; line-height: 1.5; }
.sport-classes caption { text-align: left; color: var(--color-ink-soft); font-size: var(--text-sm); padding-bottom: .75rem; }
.sport-classes th, .sport-classes td { padding: 1rem .8rem; vertical-align: top; }
.sport-classes thead { border-top: 0; }
.sport-classes thead tr > *, .sport-classes tbody tr:not(:last-child) > * { border-bottom: 1px solid color-mix(in srgb, var(--color-border) 70%, transparent); }
.sport-classes thead th { color: var(--color-ink); font-weight: 750; }
.sport-classes tbody th { white-space: nowrap; }
.sport-classes th:first-child { padding-left: 0; }
.sport-classes td:last-child, .sport-classes th:last-child { padding-right: 0; }
.fc-icon--back { transform: rotate(180deg); width: 1em; height: 1em; }
@media (max-width: 44rem) {
    .page-theme--sport .guide-rows > div { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
    .page-theme--sport .hero.hero--referees { --hero-image: url('/assets/images/sport-dommere-720.webp'); }
    .page-theme--sport .hero.hero--first-aid { --hero-image: url('/assets/images/sport-sanitet-720.webp'); }
}

.referee-preview { max-width: 62rem; padding-bottom: var(--space-8); }
.referee-preview .guide-notice { margin-block: var(--space-6); }
.referee-preview fieldset { min-width: 0; border: 0; padding: 0; margin-inline: 0; }
.referee-preview .referee-person { border-top: 1px solid var(--color-border); padding-top: var(--space-5); }
.referee-person > legend { font-size: var(--text-xl); font-weight: 800; padding-right: var(--space-4); }
.referee-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); }
.referee-grid label { display: block; font-weight: 700; margin-bottom: var(--space-2); }
.referee-grid input, .referee-grid select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 3rem; padding: .75rem; font: inherit; color: var(--color-ink); background: white; border: 1px solid var(--color-ink-soft); border-radius: var(--radius-sm); }
.referee-preview .referee-choice { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-block: var(--space-5); }
.referee-choice legend { font-weight: 700; margin-bottom: var(--space-3); }
.referee-choice label { display: flex; align-items: center; gap: .6rem; padding: .8rem 1rem; border: 1px solid var(--color-border); background: var(--color-paper); cursor: pointer; }
.referee-choice label:has(:checked) { border-color: var(--color-brand); outline: 1px solid var(--color-brand); }
.referee-choice input { accent-color: var(--color-brand); width: 1.2rem; height: 1.2rem; }
.referee-actions { display: flex; flex-wrap: wrap; gap: var(--space-4); margin-top: var(--space-6); }
.referee-preview :is(input, select, button):focus-visible { outline: 3px solid var(--color-brand); outline-offset: 3px; }
.referee-preview [hidden] { display: none !important; }
.referee-preview dd { overflow-wrap: anywhere; }
@media (max-width: 44rem) { .referee-grid { grid-template-columns: minmax(0, 1fr); } }
