@font-face {
    font-family: "TVS Inter";
    src: url("../fonts/inter/InterVariable-latin-ext-v4.1.woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: optional;
    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: "TVS Inter";
    src: url("../fonts/inter/InterVariable-latin-v4.1.woff2") format("woff2");
    font-style: normal;
    font-weight: 100 900;
    font-display: optional;
    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;
}

@font-face {
    font-family: "TVS Inter";
    src: url("../fonts/inter/InterVariable-latin-ext-italic-v4.1.woff2") format("woff2");
    font-style: italic;
    font-weight: 100 900;
    font-display: optional;
    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: "TVS Inter";
    src: url("../fonts/inter/InterVariable-latin-italic-v4.1.woff2") format("woff2");
    font-style: italic;
    font-weight: 100 900;
    font-display: optional;
    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 {
    color-scheme: light;
    --background: #edf1f6;
    --surface: #fff;
    --surface-soft: #f8fafc;
    --text: #111827;
    --muted: #667085;
    --border: #dfe3ea;
    --border-strong: #c8cfda;
    --brand: #11243f;
    --brand-2: #1a365d;
    --brand-surface: #11243f;
    --brand-surface-hover: #1a365d;
    --on-brand: #fff;
    --accent: #e9ff62;
    --logo-background: #28a745;
    --statistics-home: #278c57;
    --statistics-away: #3f6fa8;
    --odds-draw: #98a2b3;
    --statistics-home-text: #fff;
    --statistics-away-text: #fff;
    --link: #1261a0;
    --live: #d92d20;
    --on-live: #fff;
    --result-highlight: #16833f;
    --error: #b42318;
    --on-danger: #fff;
    --diffusion-live: #d92d20;
    --diffusion-replay: #f6c444;
    --diffusion-show: #98a2b3;
    --diffusion-show-text: #52667f;
    --diffusion-streaming: #7c3aed;
    --diffusion-without-tv: #3478c6;
    --match-status-upcoming: #16834a;
    --on-upcoming: #fff;
    --match-status-finished: #52667f;
    --input-background: #fff;
    --media-background: #f7f9fc;
    --overlay-surface: rgb(255 255 255 / 96%);
    --hero-surface: #11243f;
    --eyebrow: #446078;
    --fallback: #718096;
    --arrow-muted: #98a2b3;
    --radius: .75rem;
    --shadow: 0 .15rem .7rem rgb(17 36 63 / 8%);
    --sport-emoji-emphasis-size: 1.5em;
    --sport-emoji-label-margin-right: .375rem;
    --sport-taxonomy-font-size: .79rem;
    --font-family-sans: "TVS Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-size-caption: .75rem;
    --font-size-small: .8125rem;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    font-family: var(--font-family-sans);
    font-optical-sizing: auto;
}

html[data-theme="dark"] {
    color-scheme: dark;
    --background: #0b1320;
    --surface: #121e30;
    --surface-soft: #1a293d;
    --text: #edf2f8;
    --muted: #aab6c8;
    --border: #2b3a50;
    --border-strong: #41516a;
    --brand: #e6eef8;
    --brand-2: #6f95c4;
    --brand-surface: #24466f;
    --brand-surface-hover: #315986;
    --link: #73b9f0;
    --logo-background: #28a745;
    --statistics-home: #38b96d;
    --statistics-away: #6f95c4;
    --odds-draw: #465469;
    --statistics-home-text: #0b1320;
    --statistics-away-text: #0b1320;
    --live: #d92d20;
    --on-live: #fff;
    --result-highlight: #65dc5c;
    --error: #ff8a80;
    --on-danger: #0b1320;
    --diffusion-live: #d92d20;
    --diffusion-replay: #f6c444;
    --diffusion-show: #718096;
    --diffusion-show-text: #aab6c8;
    --diffusion-streaming: #a78bfa;
    --diffusion-without-tv: #6aaef5;
    --match-status-upcoming: #2b9b5c;
    --on-upcoming: #0b1320;
    --match-status-finished: #52667f;
    --input-background: #121e30;
    --media-background: #e8edf4;
    --overlay-surface: rgb(18 30 48 / 96%);
    --hero-surface: #10233c;
    --eyebrow: #9eb4ce;
    --fallback: #aab6c8;
    --arrow-muted: #8594aa;
    --shadow: 0 .2rem .9rem rgb(0 0 0 / 28%);
}

* {
    box-sizing: border-box;
}

[hidden] {
    display: none !important;
}

html {
    scroll-behavior: smooth;
}

html.theme-switching *,
html.theme-switching *::before,
html.theme-switching *::after {
    transition: none !important;
    animation: none !important;
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto;
    }

    *,
    *::before,
    *::after {
        animation-delay: 0s !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-delay: 0s !important;
        transition-duration: .01ms !important;
    }
}

body {
    margin: 0;
    background:
        radial-gradient(circle at 12% 0%, rgb(40 167 69 / 10%), transparent 34rem),
        var(--background);
    color: var(--text);
    line-height: 1.5;
}

.skip-link {
    position: fixed;
    z-index: 100;
    top: .75rem;
    left: .75rem;
    min-height: 2.75rem;
    padding: .6rem .9rem;
    border: 2px solid var(--link);
    border-radius: .5rem;
    background: var(--surface);
    box-shadow: var(--shadow);
    color: var(--text);
    font-weight: 800;
    text-decoration: none;
    transform: translateY(calc(-100% - 1rem));
}

.skip-link:focus-visible {
    outline: 3px solid var(--link);
    outline-offset: 2px;
    transform: translateY(0);
}

html[data-theme="dark"] body {
    background: var(--background);
}

a {
    color: var(--link);
    text-underline-offset: .16em;
}

a:hover {
    text-decoration-thickness: .12em;
}

img {
    max-width: 100%;
}

.sport-emoji {
    display: inline-block;
    margin-right: .28em;
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    text-decoration: none;
    transform-origin: center;
    vertical-align: -.08em;
}

.sport-emoji--sequence {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
}

.sport-label {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    vertical-align: middle;
}

.sport-icon-image {
    display: inline-block;
    width: 1em;
    height: 1em;
    flex: 0 0 auto;
    object-fit: contain;
    vertical-align: -.14em;
}

button,
input,
select {
    font: inherit;
}

button {
    padding: .65rem .9rem;
    border: 1px solid var(--brand-surface);
    border-radius: .45rem;
    background: var(--brand-surface);
    color: var(--on-brand);
    font-weight: 700;
    cursor: pointer;
}

button:hover {
    background: var(--brand-surface-hover);
}

.site-header,
.sport-navigation,
.date-navigation,
.horizontal-scroll-nav,
.site-main,
.site-footer {
    width: min(80rem, 100% - 2rem);
    margin-inline: auto;
}

.site-header {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1.25rem;
    min-height: 4.5rem;
}

.site-name {
    display: inline-flex;
    align-items: center;
    gap: .36rem;
    color: var(--brand);
    text-decoration: none;
}

.site-mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 2.25rem;
    aspect-ratio: 1;
    border-radius: .55rem;
    background: var(--logo-background);
    color: #fff;
    font-size: 1.12rem;
    font-weight: 900;
    letter-spacing: -.06em;
    line-height: 1;
}

.site-mark::after {
    position: absolute;
    top: 50%;
    right: -.29rem;
    width: .58rem;
    height: .2rem;
    border-radius: 999px;
    background: linear-gradient(to right, #fff 0 50%, var(--brand) 50% 100%);
    content: "";
    transform: translateY(-50%);
}

.site-wordmark {
    color: var(--brand);
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: -.065em;
    line-height: 1;
    white-space: nowrap;
}

.site-wordmark span {
    position: relative;
    top: -.08em;
    margin-left: .08em;
    color: var(--logo-background);
    font-size: .64em;
    letter-spacing: -.035em;
}

.primary-navigation,
.tab-navigation,
.site-footer nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .25rem 1rem;
}

.primary-navigation {
    min-width: 0;
    flex-wrap: nowrap;
    gap: .25rem;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
}

.primary-navigation::-webkit-scrollbar {
    display: none;
}

.primary-navigation a {
    color: var(--brand);
    font-size: .875rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}

.primary-navigation > a {
    padding: .42rem .45rem;
    border-radius: .5rem;
}

.primary-navigation > a[href="/en-direct"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .32rem;
    padding-inline: .65rem;
    background: var(--live);
    color: var(--on-live);
}

.primary-navigation > a[href="/en-direct"]::before {
    width: .45rem;
    height: .45rem;
    flex: 0 0 .45rem;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 .14rem rgb(255 255 255 / 16%);
    content: "";
}

.primary-navigation > a[href="/en-direct"]:hover,
.primary-navigation > a[href="/en-direct"]:focus-visible {
    background: color-mix(in srgb, var(--live) 84%, #76170f);
    color: var(--on-live);
}

.primary-navigation > a[aria-current="page"] {
    background: var(--brand-surface);
    color: var(--on-brand);
}

.primary-navigation > a[href="/en-direct"][aria-current="page"] {
    background: color-mix(in srgb, var(--live) 86%, #76170f);
    color: var(--on-live);
}

.header-tools {
    display: flex;
    align-items: center;
    gap: 0;
}

.header-search {
    display: flex;
    align-items: stretch;
    gap: 0;
    height: 2.5rem;
}

input[type="search"],
select {
    min-width: 12rem;
    padding: .58rem .68rem;
    border: 1px solid var(--border-strong);
    border-radius: .45rem;
    background: var(--input-background);
    color: var(--text);
}

.header-search button {
    height: 2.5rem;
    min-height: 2.5rem;
    padding-block: 0;
    padding-inline: .75rem;
    border-left: 0;
    border-radius: 0;
    font-size: .82rem;
}

.header-search input {
    height: 2.5rem;
    min-height: 2.5rem;
    border-radius: .45rem 0 0 .45rem;
}

.personalization-link,
.account-link,
.theme-toggle {
    display: grid;
    flex: 0 0 2.5rem;
    place-items: center;
    width: 2.5rem;
    height: 2.5rem;
    min-height: 2.5rem;
    padding: 0;
    border-left: 0;
    border-radius: 0 .45rem .45rem 0;
    border-color: var(--border-strong);
    background: var(--surface);
    color: var(--brand);
    line-height: 1;
}

.personalization-link,
.account-link {
    border: 1px solid var(--border-strong);
    border-left: 0;
    border-radius: 0;
    background: var(--surface);
    color: var(--brand);
    text-decoration: none;
}

.account-link {
    position: relative;
}

.personalization-link svg,
.account-link svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.account-link__status {
    position: absolute;
    right: .3rem;
    bottom: .3rem;
    width: .45rem;
    height: .45rem;
    border: 1px solid var(--surface);
    border-radius: 50%;
    background: #18a558;
}

.personalization-link:hover,
.account-link:hover,
.theme-toggle:hover {
    background: var(--surface-soft);
    color: var(--brand);
}

.personalization-link:focus-visible,
.account-link:focus-visible,
.theme-toggle:focus-visible {
    outline: 2px solid var(--brand);
    outline-offset: -2px;
    background: var(--surface-soft);
    color: var(--brand);
}

.header-tools .mobile-search-toggle[aria-current="page"],
.header-tools .personalization-link[aria-current="page"],
.header-tools .account-link[aria-current="page"] {
    border-color: var(--brand-surface);
    background: var(--brand-surface);
    color: var(--on-brand);
}

.theme-toggle__icon {
    display: inline-grid;
    place-items: center;
    min-width: 1.15rem;
    min-height: 1.15rem;
    font-size: 1.15rem;
    line-height: 1;
}

.theme-toggle__icon[data-theme-icon-state="auto"] {
    width: 1.15rem;
    height: 1.15rem;
    border: .125rem solid currentColor;
    border-radius: 50%;
    background: linear-gradient(90deg, currentColor 50%, transparent 50%);
    font-size: 0;
}

.mobile-header-button {
    display: none;
}

.horizontal-scroll-nav {
    --scroll-hint-width: 2.75rem;
    position: relative;
    isolation: isolate;
}

.horizontal-scroll-nav > .sport-navigation,
.horizontal-scroll-nav > .date-navigation {
    width: 100%;
    margin-inline: 0;
}

.sport-navigation,
.date-navigation {
    display: flex;
    gap: .4rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    padding: .65rem .5rem .65rem .15rem;
    scroll-padding-inline: calc(var(--scroll-hint-width, 2.75rem) + .4rem);
    scroll-snap-type: inline proximity;
    scrollbar-width: none;
    white-space: nowrap;
}

.sport-navigation::-webkit-scrollbar,
.date-navigation::-webkit-scrollbar {
    display: none;
}

.sport-navigation > a,
.date-navigation > a {
    scroll-snap-align: start;
}

.horizontal-scroll-nav__hint {
    position: absolute;
    z-index: 2;
    inset-block: 1px 0;
    display: grid;
    width: var(--scroll-hint-width);
    place-items: center;
    color: var(--logo-background);
    font-size: 1.5rem;
    font-weight: 900;
    line-height: 1;
    opacity: 0;
    pointer-events: none;
    text-shadow: 0 1px var(--surface);
    transform: translateY(-.12em);
    transition: opacity .15s ease;
}

.horizontal-scroll-nav__hint--start {
    inset-inline-start: 0;
    justify-items: start;
    padding-inline-start: .3rem;
    background: linear-gradient(
        to right,
        color-mix(in srgb, var(--background) 96%, transparent),
        transparent
    );
}

.horizontal-scroll-nav__hint--end {
    inset-inline-end: 0;
    justify-items: end;
    padding-inline-end: .3rem;
    background: linear-gradient(
        to left,
        color-mix(in srgb, var(--background) 96%, transparent),
        transparent
    );
}

.horizontal-scroll-nav[data-can-scroll-start="true"] .horizontal-scroll-nav__hint--start,
.horizontal-scroll-nav[data-can-scroll-end="true"] .horizontal-scroll-nav__hint--end {
    opacity: 1;
}

.sport-navigation a {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    min-height: 2.15rem;
    padding: .38rem .68rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: color-mix(in srgb, var(--surface) 82%, transparent);
    color: var(--brand);
    font-size: .8rem;
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
    box-shadow: 0 1px 2px rgb(17 36 63 / 5%);
    transition: border-color .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease;
}

.sport-navigation .sport-emoji {
    font-size: 1.4em;
}

.date-navigation {
    gap: .35rem;
}

.date-navigation a {
    display: grid;
    flex: 0 0 3.2rem;
    place-items: center;
    min-width: 3.2rem;
    min-height: 3.2rem;
    padding: .28rem .4rem;
    border: 1px solid transparent;
    border-radius: .65rem;
    background: color-mix(in srgb, var(--surface) 42%, transparent);
    color: var(--brand);
    line-height: 1;
    text-decoration: none;
}

.date-navigation__weekday {
    color: var(--muted);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-bold);
    letter-spacing: .07em;
}

.date-navigation__day {
    font-size: 1.1rem;
    font-variant-numeric: tabular-nums;
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.03em;
}

.date-navigation .date-navigation__weekend {
    background: rgb(40 167 69 / 5%);
}

.date-navigation__weekend .date-navigation__weekday {
    color: color-mix(in srgb, var(--result-highlight) 65%, var(--muted));
}

.sport-navigation a:hover,
.sport-navigation a:focus-visible {
    border-color: var(--border-strong);
    background: var(--surface-soft);
    color: var(--link);
    box-shadow: 0 .12rem .35rem rgb(17 36 63 / 10%);
}

.date-navigation a:hover,
.date-navigation [aria-current="date"] {
    background: var(--brand-surface);
    color: var(--on-brand);
}

.date-navigation a:hover .date-navigation__weekday,
.date-navigation [aria-current="date"] .date-navigation__weekday {
    color: inherit;
}

.site-main {
    min-height: 60vh;
    padding-block: 1rem 3rem;
}

.site-footer {
    margin-bottom: 1rem;
    padding: 1.2rem 1.25rem .85rem;
    border: 1px solid var(--border);
    border-radius: calc(var(--radius) + .2rem);
    background: color-mix(in srgb, var(--surface) 88%, var(--surface-soft));
    box-shadow: var(--shadow);
    color: var(--muted);
    font-size: .82rem;
}

.site-footer p {
    margin: 0;
}

.site-footer__top {
    display: grid;
    grid-template-columns: minmax(13rem, .7fr) minmax(0, 1.6fr);
    align-items: center;
    gap: 1.5rem 2.5rem;
}

.site-footer__brand {
    display: grid;
    gap: .55rem;
}

.site-footer__logo {
    width: fit-content;
}

.site-footer__logo .site-mark {
    width: 2rem;
    border-radius: .48rem;
    font-size: .98rem;
}

.site-footer__logo .site-wordmark {
    font-size: 1.18rem;
}

.site-footer__brand p {
    font-size: .78rem;
}

.site-footer .site-footer__navigation {
    justify-content: flex-end;
    gap: .25rem .35rem;
}

.site-footer__navigation a {
    padding: .42rem .58rem;
    border-radius: .45rem;
    color: var(--muted);
    font-weight: 700;
    text-decoration: none;
}

.site-footer__navigation a:hover,
.site-footer__navigation a:focus-visible {
    background: var(--surface-soft);
    color: var(--link);
}

.site-footer__navigation a[aria-current="page"] {
    background: var(--surface-soft);
    color: var(--link);
}

.site-footer__bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .35rem .7rem;
    margin-top: 1rem;
    padding-top: .75rem;
    border-top: 1px solid var(--border);
    font-size: .75rem;
}

.site-footer .site-footer__legal {
    gap: .25rem;
}

.site-footer__legal a {
    padding: .25rem .48rem;
    border-radius: .4rem;
    color: var(--muted);
    font-weight: 700;
    text-decoration: none;
}

.site-footer__legal a:hover,
.site-footer__legal a:focus-visible {
    background: var(--surface-soft);
    color: var(--link);
}

.page-header {
    margin-bottom: 1.4rem;
}

.results-competition-navigation {
    margin: -.45rem 0 1.25rem;
}

.results-competition-navigation__list {
    display: flex;
    gap: .5rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    padding: .2rem .2rem .65rem;
    scroll-padding-inline: calc(var(--scroll-hint-width, 2.75rem) + .4rem);
    scroll-snap-type: inline proximity;
    scrollbar-width: none;
}

.results-competition-navigation__list::-webkit-scrollbar {
    display: none;
}

.results-competition-navigation__link {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: .55rem;
    min-height: 3rem;
    padding: .35rem .75rem .35rem .4rem;
    border: 1px solid var(--border);
    border-radius: .7rem;
    background: var(--surface);
    box-shadow: var(--shadow);
    color: var(--brand);
    font-size: .8rem;
    font-weight: 800;
    scroll-snap-align: start;
    text-decoration: none;
    white-space: nowrap;
}

.results-competition-navigation__link:hover,
.results-competition-navigation__link:focus-visible {
    border-color: color-mix(in srgb, var(--link) 35%, var(--border));
    background: var(--surface-soft);
    color: var(--link);
}

.results-competition-navigation__visual {
    display: grid;
    width: 2.2rem;
    height: 2.2rem;
    flex: 0 0 2.2rem;
    place-items: center;
    overflow: hidden;
    border-radius: .45rem;
    background: var(--surface-soft);
}

.results-competition-navigation__visual img {
    width: 82%;
    height: 82%;
    object-fit: contain;
}

.results-competition-navigation__emoji {
    width: 1.45rem;
    height: 1.45rem;
    font-size: 1.35rem;
    line-height: 1;
    object-fit: contain;
}

.legal-page {
    max-width: 61rem;
    margin-inline: auto;
}

.legal-page__header {
    max-width: 48rem;
}

.legal-page__header > p:last-child {
    color: var(--muted);
    font-size: 1.05rem;
}

.legal-page__tabs {
    display: inline-flex;
    gap: .25rem;
    margin-bottom: 1rem;
    padding: .25rem;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--surface);
}

.legal-page__tabs a {
    padding: .52rem .8rem;
    border-radius: .45rem;
    color: var(--muted);
    font-weight: 800;
    text-decoration: none;
}

.legal-page__tabs a:hover,
.legal-page__tabs a:focus-visible {
    color: var(--brand);
}

.legal-page__tabs a[aria-current="page"] {
    background: var(--brand-surface);
    color: var(--on-brand);
}

.legal-page__body {
    padding: clamp(1.1rem, 3vw, 2rem);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
}

.legal-page__body section + section {
    margin-top: 1.7rem;
    padding-top: 1.7rem;
    border-top: 1px solid var(--border);
}

.legal-page__body h2 {
    margin: 0 0 .65rem;
    color: var(--brand);
    font-size: 1.2rem;
}

.legal-page__body p,
.legal-page__body li,
.legal-page__body dd {
    line-height: 1.65;
}

.legal-page__body p {
    margin: .65rem 0 0;
}

.legal-page__body ul {
    display: grid;
    gap: .55rem;
    margin: .8rem 0 0;
    padding-left: 1.2rem;
}

.legal-page__identity {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
    margin: 1rem 0 0;
}

.legal-page__identity div {
    padding: .7rem .8rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--surface-soft);
}

.legal-page__identity dt {
    color: var(--muted);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.legal-page__identity dd {
    margin: .18rem 0 0;
    font-weight: 700;
}

.page-header__title-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .65rem 1rem;
}

.page-header--with-cta {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    column-gap: 1rem;
}

.page-header--with-cta > .eyebrow {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
    line-height: 1.05;
}

.page-header--with-cta .page-header__title-row {
    display: contents;
}

.page-header--with-cta .page-header__title-row h1 {
    grid-column: 1;
    grid-row: 2;
    margin-top: .3rem;
    line-height: 1.02;
}

.page-header--with-cta .page-header__cta {
    grid-column: 2;
    grid-row: 1 / 3;
    align-self: center;
}

.page-header--with-cta > p:not(.eyebrow) {
    grid-column: 1 / -1;
}

.page-header__cta {
    --page-header-cta-background: var(--live);

    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: .55rem .9rem;
    border-radius: .5rem;
    background: var(--page-header-cta-background);
    color: var(--on-live);
    font-weight: 800;
    text-decoration: none;
}

.page-header__cta--brand {
    --page-header-cta-background: var(--logo-background);
}

.page-header__cta:hover,
.page-header__cta:focus-visible {
    color: var(--on-live);
    filter: brightness(.92);
}

@media (min-width: 48.0625rem) {
    .page-header__cta {
        box-shadow: 0 .16rem .4rem rgb(17 36 63 / 14%);
        transition: box-shadow .15s ease, filter .15s ease, transform .15s ease;
    }

    .page-header__cta::after {
        margin-left: .5rem;
        content: "›";
        font-size: 1.3rem;
        line-height: .7;
    }

    .page-header__cta:hover,
    .page-header__cta:focus-visible {
        box-shadow: 0 .25rem .65rem rgb(17 36 63 / 20%);
        transform: translateY(-1px);
    }
}

.page-header h1,
.entity-hero__title {
    margin: .15rem 0 .4rem;
    color: var(--brand);
    font-size: clamp(1.75rem, 4vw, 2.7rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.page-header p {
    max-width: 52rem;
    margin: .35rem 0;
    color: var(--muted);
}

.eyebrow,
.section-heading h2.section-heading__eyebrow-title {
    margin: 0 0 .2rem;
    color: var(--eyebrow);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.section-heading h2.section-heading__eyebrow-title {
    font-size: 1.2rem;
    letter-spacing: .02em;
}

.breadcrumb,
.event-item__meta {
    color: var(--muted);
    font-size: .79rem;
}

.schedule-meta {
    overflow: hidden;
    color: var(--muted);
    font-size: var(--sport-taxonomy-font-size);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .42rem;
    min-height: 1.65rem;
    margin: 0 0 .85rem;
    line-height: 1.2;
}

.breadcrumb a {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    color: var(--muted);
    font-weight: var(--font-weight-semibold);
    text-decoration: none;
}

.breadcrumb .breadcrumb__home {
    display: inline-grid;
    flex: 0 0 1.35rem;
    place-items: center;
    width: 1.35rem;
    height: 1.35rem;
    border-radius: .3rem;
}

.breadcrumb__home svg {
    width: .95rem;
    height: .95rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.9;
}

.breadcrumb a:hover,
.breadcrumb a:focus-visible {
    color: var(--link);
    text-decoration: none;
}

.breadcrumb__separator {
    color: var(--arrow-muted);
    font-size: .7rem;
}

.breadcrumb__current {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    color: var(--text);
    font-weight: 700;
}

.breadcrumb__sport-emoji {
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    font-size: .82rem;
    line-height: 1;
}

.breadcrumb__competition-logo {
    width: 1.25rem;
    height: 1.25rem;
    padding: .1rem;
    border: 1px solid var(--border);
    border-radius: .28rem;
    background: var(--media-background);
    object-fit: contain;
}

.tvs-ad-placement {
    width: 100%;
    max-width: 100%;
    margin: 0 0 1rem;
    text-align: center;
}

.tvs-ad-placement > * {
    max-width: 100%;
}

.panel {
    padding: clamp(1rem, 3vw, 2rem);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
}

.error-page > .featured-section {
    margin-top: 1.6rem;
}

.entity-hero {
    position: relative;
    padding: clamp(1rem, 3vw, 2rem);
    border-radius: 1rem;
    background:
        radial-gradient(circle at 90% 10%, rgb(233 255 98 / 22%), transparent 25rem),
        var(--hero-surface);
    color: var(--on-brand);
    box-shadow: var(--shadow);
}

.entity-hero--compact {
    padding: clamp(.85rem, 2.3vw, 1.5rem);
}

.entity-hero--compact .entity-hero__content {
    gap: .65rem 1.1rem;
}

.entity-hero.entity-hero--compact .entity-hero__sport-breadcrumb {
    margin-bottom: .75rem;
}

.entity-hero--compact .entity-hero__subtitle {
    margin: .35rem 0;
}

.entity-hero--compact .entity-facts {
    margin-top: .5rem;
}

.entity-hero--compact .entity-official-links {
    margin-top: .5rem;
}

.entity-hero--compact .entity-official-links a {
    min-height: 2rem;
    padding: .3rem .5rem;
}

.entity-hero--sport {
    display: flex;
    align-items: center;
    padding: .55rem .85rem;
}

.entity-hero--attached-tabs {
    border-radius: 1rem 1rem 0 0;
}

.entity-hero--sport.entity-hero--attached-tabs {
    border-radius: .8rem .8rem 0 0;
}

.entity-hero--competition,
.entity-hero--participant {
    padding: .7rem 1rem .75rem;
}

.entity-hero--competition:has(.hero-actions),
.entity-hero--participant:has(.hero-actions) {
    padding-right: 4.25rem;
}

.entity-hero.entity-hero--competition .entity-hero__sport-breadcrumb,
.entity-hero.entity-hero--participant .entity-hero__sport-breadcrumb {
    margin-bottom: .25rem;
    font-size: .78rem;
}

.entity-hero--competition .entity-hero__content,
.entity-hero--participant .entity-hero__content {
    align-items: center;
    width: 100%;
}

.entity-hero--competition .entity-hero__title,
.entity-hero--participant .entity-hero__title {
    margin: 0 0 .12rem;
    font-size: clamp(1.5rem, 2.6vw, 2rem);
    line-height: 1.05;
}

.entity-hero--competition .entity-hero__subtitle,
.entity-hero--participant .entity-hero__subtitle {
    margin: .15rem 0;
    font-size: .85rem;
    line-height: 1.25;
}

.entity-hero.entity-hero--competition .entity-facts,
.entity-hero.entity-hero--participant .entity-facts {
    gap: .3rem;
    margin-top: .3rem;
}

.entity-hero--competition .entity-facts li,
.entity-hero--participant .entity-facts li {
    font-size: .72rem;
}

.entity-hero--competition .hero-actions,
.entity-hero--participant .hero-actions {
    top: .55rem;
    right: .65rem;
}

.entity-hero--competition .hero-actions .admin-link--hero-corner,
.entity-hero--competition .hero-actions .favorite-button--icon,
.entity-hero--participant .hero-actions .admin-link--hero-corner,
.entity-hero--participant .hero-actions .favorite-button--icon {
    width: 2.3rem;
    height: 2.3rem;
}

.entity-hero--attached-tabs + .tab-navigation {
    margin-top: 0;
    border-top: 0;
    border-radius: 0 0 .65rem .65rem;
}

.entity-hero--sport .entity-hero__content {
    align-items: center;
    flex-wrap: nowrap;
    width: 100%;
    gap: .75rem;
}

.entity-hero--sport .entity-hero__title {
    margin: 0 0 .1rem;
    font-size: clamp(1.25rem, 2.1vw, 1.55rem);
    line-height: 1;
}

.entity-hero--sport .entity-hero__subtitle {
    margin: 0;
    font-size: .78rem;
    line-height: 1.25;
}

.entity-hero .eyebrow {
    color: #d7e2ee;
}

.entity-hero__title {
    color: var(--on-brand);
}

.entity-hero__content {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: .65rem 1.35rem;
}

.entity-hero__body {
    min-width: 0;
    flex: 1 1 0;
}

.entity-hero__visual {
    display: grid;
    flex: 0 0 7.25rem;
    place-items: center;
    width: 7.25rem;
    aspect-ratio: 1;
    border: 1px solid rgb(255 255 255 / 22%);
    border-radius: 1rem;
    background: var(--media-background);
    color: var(--brand-surface);
    font-size: 2rem;
    font-weight: 900;
}

.entity-hero__visual img {
    width: 82%;
    height: 82%;
    object-fit: contain;
}

.entity-hero__sport-emoji {
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    font-size: clamp(2.75rem, 6vw, 4.5rem);
    font-style: normal;
    font-weight: 400;
    line-height: 1;
}

.entity-hero__sport-emoji.sport-emoji--sequence {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 100%;
    font-size: clamp(1.5rem, 3vw, 2rem);
    letter-spacing: -.08em;
    white-space: nowrap;
}

.entity-hero__subtitle {
    margin: .5rem 0;
    color: #d7e2ee;
}

.entity-hero .entity-hero__sport-breadcrumb {
    display: inline-flex;
    align-items: center;
    margin-bottom: .45rem;
    color: #9eb4ce;
    font-size: clamp(1rem, 1.5vw, 1.125rem);
    font-weight: 800;
}

.entity-facts {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    margin: .7rem 0 0;
    padding: 0;
    list-style: none;
}

.entity-facts li {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .24rem .55rem;
    border: 1px solid rgb(255 255 255 / 22%);
    border-radius: 999px;
    color: #e7edf4;
    font-size: .77rem;
}

.entity-facts__flag,
.entity-card__country-flag {
    border: 1px solid rgb(17 36 63 / 12%);
    border-radius: .1rem;
    background: #fff;
}

.entity-facts__flag {
    width: 1.1rem;
    height: .8rem;
    object-fit: cover;
}

.entity-facts .entity-facts__country {
    padding: 0;
    border: 0;
    border-radius: 0;
}

.entity-facts .entity-facts__venue {
    padding: 0;
    border: 0;
    border-radius: 0;
    color: #aab6c8;
    font-size: .85rem;
}

.entity-facts .entity-facts__about {
    padding: 0;
    border: 0;
    border-radius: 0;
}

.entity-description-toggle {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #e7edf4;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
    transition: color .16s ease;
}

.entity-description-toggle > svg:first-child {
    width: .9rem;
    height: .9rem;
}

.entity-description-toggle:hover,
.entity-description-toggle:focus-visible {
    color: #fff;
}

.entity-description__chevron {
    width: .9rem;
    height: .9rem;
    transition: transform .16s ease;
}

.entity-description-toggle[aria-expanded="true"] .entity-description__chevron {
    transform: rotate(180deg);
}

.entity-description__content {
    width: 100%;
    max-width: none;
    flex: 0 0 100%;
    margin-top: 0;
    box-sizing: border-box;
    padding: .75rem .85rem;
    border: 1px solid rgb(255 255 255 / 13%);
    border-radius: .65rem;
    background: rgb(255 255 255 / 5%);
    line-height: 1.55;
}

.tab-navigation {
    position: sticky;
    z-index: 6;
    top: 0;
    margin: 1rem 0 1.75rem;
    padding: .45rem;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--overlay-surface);
    box-shadow: var(--shadow);
}

.tab-navigation__identity {
    display: grid;
    flex: 0 0 2.75rem;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    margin-right: -.5rem;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: .5rem;
    background: var(--media-background);
}

.tab-navigation__identity > img {
    width: 80%;
    height: 80%;
    object-fit: contain;
}

.tab-navigation__sport-icon {
    margin: 0;
    font-size: 1.65rem;
    line-height: 1;
    vertical-align: 0;
}

.tab-navigation__sport-icon.sport-emoji--sequence {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .75rem;
    white-space: nowrap;
}

.tab-navigation a {
    padding: .5rem .75rem;
    border-radius: .4rem;
    color: var(--brand);
    font-size: .85rem;
    font-weight: var(--font-weight-bold);
    text-decoration: none;
}

.tab-navigation [aria-current="page"] {
    background: var(--brand-surface);
    color: var(--on-brand);
}

.tab-navigation a.tab-navigation__link--direct {
    color: var(--live);
}

.tab-navigation a.tab-navigation__link--direct[aria-current="page"] {
    background: var(--live);
    color: var(--on-live);
}

.tab-navigation > .favorite-control--icon,
.tab-navigation > .favorite-button--icon {
    margin-left: auto;
}

.tab-navigation__actions {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    margin-left: auto;
}

.tab-navigation__actions .admin-link--hero-corner {
    position: static;
    width: 2.75rem;
    height: 2.75rem;
}

.participant-live-cta {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .8rem;
    margin: -.75rem 0 1.5rem;
    overflow: hidden;
    padding: .85rem 1rem;
    border: 1px solid rgb(255 255 255 / 24%);
    border-radius: .75rem;
    background: linear-gradient(110deg, #e7352b 0%, #d8241b 48%, #b81518 100%);
    box-shadow:
        inset 0 1px 0 rgb(255 255 255 / 18%),
        0 .35rem 1rem rgb(155 20 20 / 24%);
    color: #fff;
    text-decoration: none;
    transition: box-shadow .16s ease, filter .16s ease, transform .16s ease;
}

.participant-live-cta::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background:
        radial-gradient(circle at 12% -80%, rgb(255 255 255 / 24%), transparent 42%),
        linear-gradient(90deg, transparent 0 72%, rgb(79 0 12 / 12%) 100%);
    content: "";
    pointer-events: none;
}

.participant-live-cta:hover,
.participant-live-cta:focus-visible {
    color: #fff;
    filter: brightness(1.02);
    box-shadow:
        inset 0 1px 0 rgb(255 255 255 / 22%),
        0 .5rem 1.2rem rgb(155 20 20 / 30%);
    transform: translateY(-1px);
}

.participant-live-cta__signal {
    width: .58rem;
    height: .58rem;
    border-radius: 50%;
    background: #fff;
    box-shadow:
        0 0 0 .28rem rgb(255 255 255 / 17%),
        0 0 .75rem rgb(255 255 255 / 45%);
    animation: participant-live-signal 1.25s ease-in-out infinite;
}

.participant-live-cta__content {
    display: grid;
    min-width: 0;
    gap: .12rem;
}

.participant-live-cta__status {
    color: rgb(255 255 255 / 86%);
    font-size: .7rem;
    font-weight: var(--font-weight-extrabold);
    letter-spacing: .075em;
    text-transform: uppercase;
}

.participant-live-cta__event {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: .25rem .65rem;
    font-size: 1rem;
    line-height: 1.25;
}

.participant-live-cta__score {
    display: inline-flex;
    align-items: center;
    min-height: 1.65rem;
    padding: .12rem .48rem;
    border: 1px solid rgb(255 255 255 / 18%);
    border-radius: .42rem;
    background: rgb(57 4 10 / 24%);
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
    font-size: .98rem;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.participant-live-cta__action {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    min-height: 2.35rem;
    padding: .42rem .68rem;
    border: 1px solid rgb(255 255 255 / 28%);
    border-radius: .55rem;
    background: rgb(255 255 255 / 12%);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 10%);
    font-weight: var(--font-weight-extrabold);
    white-space: nowrap;
}

.participant-live-cta:hover .participant-live-cta__action,
.participant-live-cta:focus-visible .participant-live-cta__action {
    background: rgb(255 255 255 / 18%);
}

.participant-live-cta__action svg {
    width: 1.15rem;
    height: 1.15rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

@keyframes participant-live-signal {
    50% {
        opacity: .65;
        transform: scale(.82);
    }
}

.section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .65rem;
}

.section-heading h2,
.section-heading h1 {
    margin: 0;
    color: var(--brand);
    font-size: clamp(1.25rem, 2.4vw, 1.65rem);
    line-height: 1.05;
    letter-spacing: -.025em;
}

.section-heading > div > .eyebrow {
    margin-bottom: .12rem;
    line-height: 1.05;
}

.section-heading > a {
    flex: 0 0 auto;
    font-size: .82rem;
    font-weight: 700;
}

.upcoming-event-fallback__title-link {
    display: inline-flex;
    align-items: center;
    gap: .3em;
    color: inherit;
    text-decoration: none;
}

.upcoming-event-fallback__title-link:hover,
.upcoming-event-fallback__title-link:focus-visible {
    color: var(--link);
}

.secondary-section,
.event-detail section,
.article-relations {
    margin-top: 2.6rem;
}

.featured-section {
    margin: 0 0 1.6rem;
}

html[data-hide-featured="true"] .featured-section {
    display: none;
}

.featured-section__heading {
    margin-bottom: .6rem;
}

.featured-section__title-link {
    display: inline-flex;
    align-items: center;
    gap: .28em;
    color: inherit;
    text-decoration: none;
}

.featured-section__title-link:hover,
.featured-section__title-link:focus-visible {
    color: var(--link);
}

.featured-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.featured-card {
    min-width: 0;
}

.featured-card article {
    position: relative;
    height: 100%;
    border: 1px solid var(--border);
    border-radius: .85rem;
    background: var(--surface);
    box-shadow: 0 .08rem .3rem rgb(17 36 63 / 6%);
    cursor: pointer;
    overflow: hidden;
}

.featured-card article:hover {
    border-color: var(--border-strong);
    box-shadow: var(--shadow);
}

.featured-card__visual {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 7.5rem;
    aspect-ratio: 16 / 7;
    background:
        radial-gradient(circle at 85% 15%, rgb(233 255 98 / 24%), transparent 10rem),
        var(--surface-soft);
    overflow: hidden;
    pointer-events: none;
}

.featured-card__visual--with-match-image::after {
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgb(7 22 43 / 38%),
        rgb(7 22 43 / 48%)
    );
    content: "";
    pointer-events: none;
}

.featured-card__competition-badge {
    position: absolute;
    z-index: 3;
    top: .7rem;
    left: .7rem;
    display: grid;
    place-items: center;
    width: 2.75rem;
    height: 2.75rem;
    padding: .3rem;
    border: 1px solid var(--border);
    border-radius: .7rem;
    background: var(--media-background);
    box-shadow: 0 .1rem .35rem rgb(17 36 63 / 18%);
}

.featured-card__competition-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.featured-card__competition-inline {
    display: none;
}

.featured-card__time-channel {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    min-width: 0;
}

.featured-card__channel {
    display: grid;
    place-items: center;
    width: 1.75rem;
    aspect-ratio: 1 / 1;
}

.featured-card__channel-logo {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.featured-card__participants {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .65rem;
}

.featured-card__participant {
    display: grid;
    place-items: center;
    width: 6.1rem;
    height: 6.1rem;
    padding: .45rem;
    border: 1px solid var(--border);
    border-radius: 1rem;
    background: var(--media-background);
}

.featured-card__versus {
    flex: 0 0 auto;
    color: rgb(255 255 255 / 82%);
    font-size: .72rem;
    font-weight: var(--font-weight-extrabold);
    letter-spacing: .06em;
    line-height: 1;
    text-shadow: 0 .1rem .35rem rgb(7 22 43 / 85%);
}

.featured-card__participants img {
    width: 100%;
    height: 100%;
}

.featured-card__image {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featured-card__visual--with-match-image .featured-card__image {
    filter: blur(.55rem) brightness(.78) saturate(.8);
    transform: scale(1.05);
}

.featured-card__emoji {
    font-size: 3.4rem;
    line-height: 1;
}

.featured-card__body {
    padding: .85rem .9rem .95rem;
}

.featured-card__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    margin: 0 0 .35rem;
}

.featured-card__meta time {
    color: var(--brand);
    font-size: 1.35rem;
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.025em;
    line-height: 1.1;
}

.live-label.featured-card__live-label {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    margin-left: 0;
}

.live-label.featured-card__live-label--airing {
    background: color-mix(in srgb, var(--live) 9%, var(--surface));
    color: var(--live);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--live) 42%, transparent);
}

.featured-card__live-dot {
    display: inline-block;
    width: .46rem;
    height: .46rem;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--live);
    animation: featured-live-dot-pulse 1.15s ease-in-out infinite;
}

.live-label.featured-card__live-label[hidden],
.featured-card__live-dot[hidden] {
    display: none;
}

.featured-card__progress {
    z-index: 3;
    height: .24rem;
}

.featured-card__progress .schedule-progress__fill {
    background: var(--live);
}

@keyframes featured-live-dot-pulse {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: .35;
        transform: scale(.72);
    }
}

.featured-card__context {
    display: flex;
    align-items: center;
    gap: .28rem;
    min-height: 1.5rem;
    margin: 0 0 .3rem;
    color: var(--muted);
    font-size: var(--sport-taxonomy-font-size);
}

.featured-card__competition-link {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
}

.featured-card h3 {
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.28;
}

.featured-card h3 a {
    color: var(--brand);
    text-decoration: none;
}

.featured-importance-marker {
    display: inline-block;
    margin-left: .28em;
    font-size: .9em;
    line-height: 1;
    vertical-align: .04em;
    white-space: nowrap;
}

.featured-importance-marker[title] {
    position: relative;
    z-index: 2;
    cursor: help;
    pointer-events: auto;
}

.featured-card h3 a::after {
    position: absolute;
    inset: 0;
    content: "";
}

.featured-card article:has(h3 a:focus-visible) {
    outline: 2px solid var(--link);
    outline-offset: 2px;
}

.agenda-news {
    margin: 1.25rem 0 1.6rem;
}

.featured-section__heading,
.agenda-news .section-heading {
    position: relative;
    padding-right: 3rem;
}

.section-preferences-link {
    position: absolute;
    top: 50%;
    right: 0;
    display: grid;
    width: 2.4rem;
    height: 2.4rem;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: 50%;
    background: transparent;
    color: var(--muted);
    text-decoration: none;
    transform: translateY(-50%);
    transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.section-preferences-link svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 2;
}

.section-preferences-link:hover,
.section-preferences-link:focus-visible {
    border-color: var(--border-strong);
    background: var(--surface-soft);
    color: var(--brand);
}

html[data-hide-news="true"] .agenda-news {
    display: none;
}

.agenda-news .event-related-news__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.agenda-news .event-related-news__card {
    grid-template-columns: 10rem minmax(0, 1fr);
    min-height: 5.5rem;
}

.agenda-news .event-related-news__media {
    min-height: 5.5rem;
}

.agenda-news .event-related-news__body {
    padding: .5rem .7rem;
}

.agenda-news .event-related-news__meta {
    margin-bottom: .2rem;
}

.agenda-news .event-related-news__card h3 a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.event-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(.85rem, 2.55vw, 1.7rem) clamp(1rem, 3vw, 2rem);
    border: 1px solid rgb(111 149 196 / 34%);
    border-radius: 1rem;
    background:
        radial-gradient(circle at 50% 24%, rgb(61 102 151 / 36%), transparent 42%),
        linear-gradient(135deg, #0c192a 0%, #11243f 52%, #0b1727 100%);
    color: #edf2f8;
    text-align: center;
    box-shadow: 0 .55rem 1.4rem rgb(17 36 63 / 16%);
}

.event-hero::before {
    position: absolute;
    z-index: -1;
    inset: 0;
    background: repeating-linear-gradient(
        118deg,
        transparent 0,
        transparent 2.7rem,
        rgb(255 255 255 / 1.8%) 2.72rem,
        rgb(255 255 255 / 1.8%) 2.76rem
    );
    content: "";
    pointer-events: none;
}

.event-hero h1 {
    margin: .1rem auto 1.2rem;
    color: #f5f8fc;
    font-size: clamp(1.35rem, 3vw, 2rem);
    letter-spacing: -.03em;
    text-shadow: 0 .08rem .35rem rgb(0 0 0 / 22%);
}

.event-hero__context {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: .12rem;
    margin: 0 auto .45rem;
    line-height: 1.2;
}

.event-hero__competition {
    color: #dce6f2;
    font-size: .82rem;
    font-weight: 800;
}

.event-hero__round {
    color: #aab6c8;
    font-size: .75rem;
    font-weight: 650;
}

.event-breadcrumb {
    flex-wrap: nowrap;
    gap: .35rem;
    margin-bottom: .55rem;
    padding-inline: .15rem;
    overflow: hidden;
}

.event-breadcrumb__sport,
.event-breadcrumb__competition,
.event-hero__sport-label {
    display: inline-flex;
    align-items: center;
    gap: .32rem;
    min-width: 0;
    color: inherit;
    font-weight: 700;
    text-decoration: none;
}

.event-breadcrumb__sport:hover,
.event-breadcrumb__sport:focus-visible,
.event-breadcrumb__competition:hover,
.event-breadcrumb__competition:focus-visible {
    color: var(--link);
}

.event-breadcrumb__sport-icon,
.event-breadcrumb__competition-logo {
    flex: 0 0 1.35rem;
    width: 1.35rem;
    height: 1.35rem;
}

.event-breadcrumb__sport-icon {
    display: inline-grid;
    place-items: center;
    padding: .08rem;
    border: 1px solid var(--border);
    border-radius: .3rem;
    background: var(--surface);
    font-size: 1rem;
    line-height: 1;
}

.event-breadcrumb__competition-logo {
    padding: .08rem;
    object-fit: contain;
}

.event-breadcrumb__sport-icon.sport-emoji--sequence {
    display: inline-flex;
    justify-content: center;
    font-size: .48rem;
    white-space: nowrap;
}

.event-breadcrumb__competition span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.event-hero__sport-name {
    color: inherit;
    opacity: .78;
    font-weight: inherit;
}

.event-hero__matchup {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 9rem minmax(0, 1fr);
    align-items: center;
    column-gap: 1rem;
    row-gap: .35rem;
    max-width: 48rem;
    margin-inline: auto;
}

.event-hero__participant {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 0;
    text-align: left;
}

.event-hero__participant--home {
    flex-direction: row-reverse;
    text-align: right;
}

.event-hero__participant-link {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 0;
    text-decoration: none;
    transition: transform .18s ease;
}

.event-hero__participant--home .event-hero__participant-link {
    flex-direction: row-reverse;
}

.event-hero__participant-link:hover,
.event-hero__participant-link:focus-visible {
    text-decoration: none;
    transform: translateY(-2px);
}

.event-hero__participant-link:active {
    transform: translateY(0);
}

.event-hero__participant img {
    width: 4.65rem;
    height: 4.65rem;
    padding: .38rem;
    border: 1px solid rgb(255 255 255 / 42%);
    border-radius: .85rem;
    background: #f5f7fa;
    object-fit: contain;
    box-shadow: 0 .22rem .55rem rgb(0 0 0 / 20%);
}

.event-hero__participant a,
.event-hero__participant strong {
    color: #f1f5fa;
    font-size: 1.05rem;
    font-weight: 800;
}

.event-hero__scorers {
    display: grid;
    grid-row: 2;
    gap: .12rem;
    margin: -.1rem 0 0;
    padding: 0;
    color: #aab6c8;
    font-size: var(--font-size-caption);
    line-height: 1.3;
    list-style: none;
}

.event-hero__scorers--home {
    grid-column: 1;
    justify-items: end;
    text-align: right;
}

.event-hero__scorers--away {
    grid-column: 3;
    justify-items: start;
    text-align: left;
}

.event-hero__scorers li {
    display: flex;
    flex-wrap: wrap;
    column-gap: .3rem;
}

.event-hero__scorers--home li {
    justify-content: flex-end;
}

.event-hero__scorer-name {
    color: #edf2f8;
    font-weight: var(--font-weight-bold);
}

.event-hero__scorer-moments {
    white-space: nowrap;
}

.event-hero__scorers-more {
    font-style: italic;
}

.entity-official-links {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin-top: .75rem;
}

.entity-official-links a {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-height: 2.1rem;
    padding: .35rem .55rem;
    border-radius: .55rem;
    color: #d7e2ee;
    font-size: .82rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: background-color .16s ease, color .16s ease;
}

.entity-official-links a:hover,
.entity-official-links a:focus-visible {
    background: rgb(255 255 255 / 9%);
    color: #fff;
}

.entity-official-links__icon,
.entity-official-links__icon svg {
    display: block;
    flex: 0 0 auto;
    width: 1.05rem;
    height: 1.05rem;
}

.entity-official-links__external {
    flex: 0 0 auto;
    width: .85rem;
    height: .85rem;
    opacity: .72;
}

.event-hero__score {
    display: flex;
    align-items: center;
    flex-direction: column;
    text-align: center;
}

.event-hero__score strong {
    color: #fff;
    font-size: 1.8rem;
    letter-spacing: -.04em;
}

.event-hero__score span {
    color: #aab6c8;
    font-size: .75rem;
}

.event-hero__score .event-hero__score-label {
    margin-bottom: .05rem;
    color: #9eb4ce;
    font-size: var(--font-size-caption);
    font-weight: 800;
    letter-spacing: .06em;
    line-height: 1;
    text-transform: uppercase;
}

.event-hero__score .event-hero__kickoff-date {
    margin-bottom: .05rem;
    color: #b9c8da;
    font-size: .78rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    letter-spacing: .04em;
    line-height: 1;
}

.match-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .28rem;
    width: max-content;
    padding: .28rem .5rem;
    border-radius: .35rem;
    color: #fff;
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-extrabold);
    line-height: 1;
    letter-spacing: .025em;
    text-transform: uppercase;
    white-space: nowrap;
}

.match-status--live::before {
    width: .38rem;
    height: .38rem;
    flex: 0 0 auto;
    border-radius: 50%;
    background: currentColor;
    content: '';
}

.match-status--upcoming {
    background: var(--match-status-upcoming);
    color: var(--on-upcoming);
}

.match-status--live {
    background: var(--diffusion-live);
    color: var(--on-live);
}

.match-status--finished {
    background: var(--match-status-finished);
}

.match-status--neutral {
    border: 1px solid var(--border-strong);
    background: var(--surface-soft);
    color: var(--muted);
}

.event-hero__score .match-status {
    margin-top: .35rem;
    color: #fff;
    font-size: var(--font-size-caption);
}

.event-hero__score .match-status--neutral {
    border-color: rgb(158 180 206 / 32%);
    background: rgb(8 20 35 / 54%);
    color: #aab6c8;
}

.event-hero__score .event-hero__aggregate {
    display: inline-flex;
    align-items: baseline;
    gap: .35rem;
    margin-top: .2rem;
    padding: .25rem .5rem;
    border: 1px solid rgb(158 180 206 / 28%);
    border-radius: 999px;
    background: rgb(8 20 35 / 54%);
    white-space: nowrap;
}

.event-hero__aggregate span {
    color: #aab6c8;
    font-size: var(--font-size-caption);
    font-weight: 700;
}

.event-hero__aggregate b {
    color: #fff;
    font-size: .78rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.event-hero__score .event-hero__result-status {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: .15rem;
    margin-top: .45rem;
    line-height: 1.2;
}

.event-hero__score .event-hero__result-primary {
    color: #79e47d;
    font-size: .82rem;
    font-weight: var(--font-weight-extrabold);
    white-space: nowrap;
}

.event-hero__score .event-hero__result-secondary {
    color: #aab6c8;
    font-size: var(--font-size-caption);
    font-weight: 700;
    white-space: nowrap;
}

.event-hero__score .event-hero__shootout {
    display: inline-flex;
    align-items: baseline;
    gap: .35rem;
    margin-top: .2rem;
    padding: .25rem .5rem;
    border: 1px solid rgb(158 180 206 / 28%);
    border-radius: 999px;
    background: rgb(8 20 35 / 54%);
    color: #aab6c8;
    font-size: var(--font-size-caption);
    white-space: nowrap;
}

.event-hero__score .event-hero__shootout b {
    color: #fff;
    font-size: .76rem;
    font-variant-numeric: tabular-nums;
}

.event-hero__date {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: .45rem 1.1rem;
    margin: 1.15rem 0 0;
    color: #aab6c8;
    font-size: .85rem;
}

.event-hero__metadata-item {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-width: 0;
}

.event-hero__metadata-icon {
    flex: 0 0 17px;
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
    opacity: .72;
}

.admin-link {
    display: inline-grid;
    align-items: center;
    justify-items: center;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0;
    border: 1px solid currentColor;
    border-radius: 50%;
    background: var(--surface-soft);
    color: var(--live);
    box-shadow: 0 .15rem .45rem rgb(17 24 39 / 14%);
    text-decoration: none;
    transition: color .15s ease, background-color .15s ease, transform .15s ease, box-shadow .15s ease;
}

.admin-link:hover {
    background: var(--live);
    color: var(--on-live);
    text-decoration: none;
    transform: translateY(-1px);
    box-shadow: 0 .25rem .65rem rgb(17 24 39 / 22%);
}

.admin-link:focus-visible {
    outline: 3px solid var(--live);
    outline-offset: 3px;
}

.admin-link__icon {
    width: 1.2rem;
    height: 1.2rem;
}

.admin-link--hero-corner {
    position: absolute;
    z-index: 2;
    top: .85rem;
    right: 1rem;
}

.event-hero .admin-link--hero-corner {
    width: 2.25rem;
    height: 2.25rem;
    background: rgb(7 18 31 / 58%);
    box-shadow: 0 .2rem .55rem rgb(0 0 0 / 22%);
}

.event-countdown {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: .4rem;
    margin: .8rem auto 0;
    color: #aab6c8;
    font-size: .85rem;
    text-align: center;
}

.event-countdown__heading {
    color: #bed1e8;
    font-weight: var(--font-weight-semibold);
}

.event-countdown__value {
    color: #fff;
    font-size: .95rem;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.event-hero__watch-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .8rem;
    min-height: 70px;
    margin: .75rem auto .1rem;
    padding: 10px 11px 10px 24px;
    border: 1px solid rgb(255 255 255 / 34%);
    border-radius: 26px;
    background: linear-gradient(135deg, #ef3b2f 0%, #c92017 100%);
    box-shadow:
        0 7px 16px rgb(217 45 32 / 15%),
        inset 0 1px 0 rgb(255 255 255 / 20%);
    color: #fff;
    font-size: 23px;
    font-weight: var(--font-weight-extrabold);
    letter-spacing: -.01em;
    line-height: 1;
    text-decoration: none;
    transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}

.event-hero__watch-cta-icon {
    display: inline-grid;
    place-items: center;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    border: 1px solid rgb(255 255 255 / 34%);
    border-radius: 50%;
    background: rgb(255 255 255 / 18%);
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 18%);
}

.event-hero__watch-cta-icon svg {
    width: 19px;
    height: 19px;
    fill: currentColor;
    transform: translateX(.06rem);
}

.event-hero__watch-cta:hover {
    color: #fff;
    filter: brightness(1.07);
    transform: translateY(-2px);
    box-shadow:
        0 9px 20px rgb(217 45 32 / 21%),
        inset 0 1px 0 rgb(255 255 255 / 24%);
}

.event-hero__watch-cta--replay,
.event-hero__watch-cta--replay:hover {
    background: var(--diffusion-replay);
    box-shadow:
        0 7px 16px rgb(212 170 25 / 16%),
        inset 0 1px 0 rgb(255 255 255 / 28%);
    color: #2f2500;
}

.event-hero__watch-cta:active {
    filter: brightness(.96);
    transform: translateY(0);
}

.event-hero__watch-cta:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 3px;
}

.event-hero .score-reveal {
    border-color: rgb(158 180 206 / 32%);
    background: rgb(8 20 35 / 54%);
    color: #edf2f8;
}

.event-hero .score-reveal:hover {
    background: rgb(36 70 111 / 72%);
}

.event-odds__panel {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
}

.event-odds__panel > * + * {
    border-top: 1px solid var(--border);
}

.event-trends__form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(8rem, 12rem) minmax(0, 1fr);
    align-items: center;
    min-height: 3.6rem;
    padding: .65rem 1rem;
}

.event-trends__comparison-label {
    grid-column: 2;
    grid-row: 1;
    margin: 0;
    color: var(--brand);
    font-size: .78rem;
    font-weight: var(--font-weight-bold);
    text-align: center;
    white-space: nowrap;
}

.event-trends__form-value {
    display: flex;
    grid-row: 1;
    justify-content: center;
    min-width: 0;
}

.event-trends__form-value--home {
    grid-column: 1;
}

.event-trends__form-value--away {
    grid-column: 3;
}

.event-trends__standings {
    padding: .7rem 1rem .8rem;
}

.event-trends__standings-heading {
    margin: 0 0 .35rem;
    color: var(--muted);
    font-size: var(--font-size-caption);
    font-weight: 800;
    letter-spacing: .035em;
    text-align: center;
    text-transform: uppercase;
}

.event-trends__standings dl {
    display: grid;
    margin: 0;
}

.event-trends__standing-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(8rem, 12rem) minmax(0, 1fr);
    align-items: center;
    min-height: 2rem;
}

.event-trends__standing-row + .event-trends__standing-row {
    border-top: 1px solid var(--surface-soft);
}

.event-trends__standing-row dt,
.event-trends__standing-row dd {
    margin: 0;
}

.event-trends__standing-row dt {
    grid-column: 2;
    grid-row: 1;
    color: var(--muted);
    font-size: var(--font-size-caption);
    font-weight: 700;
    text-align: center;
}

.event-trends__standing-row dd {
    justify-self: center;
    color: var(--brand);
    font-size: .88rem;
    font-weight: var(--font-weight-extrabold);
    font-variant-numeric: tabular-nums;
}

.event-trends__standing-value--home {
    grid-column: 1;
    grid-row: 1;
}

.event-trends__standing-value--away {
    grid-column: 3;
    grid-row: 1;
}

.event-trends__standing-link {
    display: block;
    width: fit-content;
    margin: .65rem auto 0;
    color: var(--link);
    font-size: var(--font-size-small);
    font-weight: var(--font-weight-bold);
}

.event-team-form__results {
    display: flex;
    gap: .28rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.event-team-form__result {
    display: inline-grid;
    width: 1.35rem;
    height: 1.35rem;
    place-items: center;
    border-radius: .32rem;
    color: #fff;
    font-size: var(--font-size-caption);
    font-weight: 900;
    line-height: 1;
}

.event-team-form__result--win {
    background: #15803d;
}

.event-team-form__result--draw {
    background: #7b8495;
}

.event-team-form__result--loss {
    background: #c2413a;
}

.event-team-form__result:last-child {
    box-shadow:
        0 0 0 2px var(--surface),
        0 0 0 3px var(--border-strong);
}

.event-trends__odds {
    padding: .7rem 1rem .85rem;
}

.event-trends__probabilities {
    display: grid;
    align-items: center;
}

.event-trends__probability {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: .28rem;
    min-width: 0;
    color: var(--muted);
    font-size: var(--font-size-caption);
    white-space: nowrap;
}

.event-trends__probability strong {
    color: var(--brand);
    font-size: .75rem;
    font-variant-numeric: tabular-nums;
}

.event-odds__bar {
    display: flex;
    height: .48rem;
    margin-top: .38rem;
    overflow: hidden;
    border-radius: 999px;
    background: var(--surface-soft);
}

.event-odds__segment {
    display: grid;
    min-width: .15rem;
    place-items: center;
}

.event-odds__segment--home {
    background: var(--statistics-home);
}

.event-odds__segment--draw {
    border-inline: 2px solid var(--surface);
    background: var(--odds-draw);
}

.event-odds__segment--away {
    background: var(--statistics-away);
}

.action-list {
    display: grid;
    gap: .45rem;
    padding-left: 1.4rem;
}

.action-list li {
    padding: .75rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--surface);
}

.match-facts__panel {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
}

.match-timeline {
    margin: 0;
    padding: 0;
    list-style: none;
}

.match-timeline [hidden] {
    display: none;
}

.match-timeline__more {
    display: flex;
    justify-content: center;
    padding: .8rem;
}

.match-timeline__more button {
    min-height: 2.25rem;
    padding: .4rem .9rem;
    font-size: .82rem;
}

.match-timeline__teams {
    display: none;
}

.match-timeline__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 4.8rem minmax(0, 1fr);
    align-items: center;
    min-height: 3.25rem;
    border-bottom: 1px solid var(--border);
}

.match-timeline__moment {
    grid-column: 2;
    grid-row: 1;
    justify-self: center;
    display: grid;
    justify-items: center;
    gap: .14rem;
}

.match-timeline__minute {
    color: var(--brand);
    font-size: 1rem;
    font-variant-numeric: tabular-nums;
    letter-spacing: -.02em;
}

.match-timeline__score {
    min-width: 2.55rem;
    padding: .1rem .35rem;
    border: 1px solid var(--border-strong);
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--text);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-extrabold);
    font-variant-numeric: tabular-nums;
    line-height: 1.25;
    text-align: center;
    white-space: nowrap;
}

.match-timeline__action {
    display: flex;
    grid-row: 1;
    align-items: center;
    gap: .5rem;
    width: min(100%, 32rem);
    padding: .38rem .7rem;
}

.match-timeline__row--home .match-timeline__action {
    grid-column: 1;
    justify-self: end;
    flex-direction: row-reverse;
}

.match-timeline__row--away .match-timeline__action,
.match-timeline__row--neutral .match-timeline__action {
    grid-column: 3;
    justify-self: start;
}

.match-timeline__copy {
    display: grid;
    min-width: 0;
    line-height: 1.25;
}

.match-timeline__row--home .match-timeline__copy {
    text-align: right;
}

.match-timeline__copy strong {
    overflow-wrap: anywhere;
    color: var(--text);
    font-size: .96rem;
}

.match-timeline__copy small {
    margin-top: .08rem;
    color: var(--muted);
    font-size: .72rem;
}

.match-timeline__substitution {
    display: grid;
    gap: .08rem;
}

.match-timeline__substitution-player {
    display: flex;
    align-items: baseline;
    gap: .4rem;
    min-width: 0;
}

.match-timeline__row--home .match-timeline__substitution-player {
    justify-content: flex-end;
}

.match-timeline__substitution-player > span {
    flex: 0 0 2.6rem;
    color: var(--muted);
    font-size: var(--font-size-caption);
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.match-timeline__substitution-player--in > span {
    color: #15803d;
}

.match-timeline__substitution-direction {
    display: none;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.match-timeline__substitution-player strong {
    overflow-wrap: anywhere;
    font-size: .88rem;
}

.match-timeline__team {
    position: absolute;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    clip: rect(0, 0, 0, 0);
    border: 0;
    white-space: nowrap;
}

.match-timeline__icon {
    position: relative;
    display: inline-grid;
    flex: 0 0 1.9rem;
    place-items: center;
    width: 1.9rem;
    height: 1.9rem;
    color: var(--brand-2);
}

.match-timeline__icon .lucide {
    width: 1.65rem;
    height: 1.65rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.match-timeline__ball {
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    font-size: 1.45rem;
    line-height: 1;
}

.match-timeline__icon-badge {
    position: absolute;
    right: -.05rem;
    bottom: -.05rem;
    display: grid;
    place-items: center;
    min-width: 1rem;
    height: 1rem;
    padding-inline: .18rem;
    border: 2px solid var(--background);
    border-radius: 999px;
    background: var(--brand-surface);
    color: var(--on-brand);
    font-size: .58rem;
    font-weight: 900;
    line-height: 1;
}

.match-timeline__card {
    display: block;
    width: .9rem;
    height: 1.25rem;
    border: 1px solid rgb(17 24 39 / 12%);
    border-radius: .14rem;
    background: var(--muted);
    box-shadow: 0 .08rem .18rem rgb(17 24 39 / 18%);
}

.match-timeline__card--yellow {
    background: #facc15;
}

.match-timeline__card--red {
    background: #dc2626;
}

.match-timeline__cards {
    position: relative;
    display: block;
    width: 1.25rem;
    height: 1.45rem;
}

.match-timeline__cards .match-timeline__card {
    position: absolute;
}

.match-timeline__cards .match-timeline__card:first-child {
    top: 0;
    left: 0;
}

.match-timeline__cards .match-timeline__card:last-child {
    right: 0;
    bottom: 0;
}

.match-timeline__var {
    display: inline-grid;
    place-items: center;
    min-width: 2rem;
    min-height: 1.45rem;
    padding: .15rem .25rem;
    border: 2px solid currentColor;
    border-radius: .2rem;
    font-size: var(--font-size-caption);
    font-weight: 900;
    letter-spacing: .04em;
}

.match-timeline__icon--substitution,
.match-timeline__icon--shootout-scored,
.match-timeline__icon--var-confirmed {
    color: #15803d;
}

.match-timeline__icon--penalty-missed,
.match-timeline__icon--shootout-missed,
.match-timeline__icon--var-cancelled {
    color: var(--error);
}

.match-timeline__phase {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 2.15rem;
    border-bottom: 1px solid var(--border);
    background: var(--surface-soft);
}

.match-timeline__phase span {
    color: var(--eyebrow);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: .08em;
    text-transform: uppercase;
}

html[data-theme="dark"] .match-timeline__icon--substitution,
html[data-theme="dark"] .match-timeline__icon--shootout-scored,
html[data-theme="dark"] .match-timeline__icon--var-confirmed {
    color: #6ee7b7;
}

html[data-theme="dark"] .match-timeline__substitution-player--in > span {
    color: #6ee7b7;
}

.composition-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 1rem;
}

.composition-card {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
}

.composition-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .65rem;
    min-height: 3rem;
    padding: .55rem .8rem;
    border-bottom: 1px solid var(--border);
}

.composition-card__header h3 {
    overflow: hidden;
    min-width: 0;
    margin: 0;
    color: var(--brand);
    font-size: .95rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.composition-formation {
    flex: 0 0 auto;
    margin: 0;
}

.composition-formation strong {
    display: inline-flex;
    min-height: 1.65rem;
    align-items: center;
    padding: .18rem .52rem;
    border: 1px solid var(--border-strong);
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--brand-2);
    font-size: .8rem;
    font-variant-numeric: tabular-nums;
}

.event-comparison-sequence > .event-compositions {
    margin-top: 1.5rem;
}

.composition-coach {
    display: grid;
    gap: .2rem;
    margin: 1rem;
    padding: .7rem .8rem;
    border-left: .22rem solid var(--brand-2);
    border-radius: .35rem;
    background: var(--surface-soft);
}

.composition-coach span,
.composition-position h5 {
    color: var(--eyebrow);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.composition-coach strong {
    color: var(--brand);
}

.composition-section {
    padding: 0 1rem 1rem;
}

.composition-section h4,
.composition-bench summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin: 0;
    color: var(--brand);
    font-size: .95rem;
    font-weight: var(--font-weight-extrabold);
}

.composition-section h4 {
    padding-bottom: .75rem;
}

.composition-section h4 small,
.composition-bench summary small {
    display: inline-grid;
    min-width: 1.7rem;
    min-height: 1.7rem;
    padding: .2rem .45rem;
    place-items: center;
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: .72rem;
    font-variant-numeric: tabular-nums;
}

.composition-position + .composition-position {
    margin-top: .9rem;
}

.composition-position h5 {
    margin: 0 0 .4rem;
}

.composition-players {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .35rem .55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.composition-players li {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: .5rem;
    padding: .35rem .45rem;
    border-radius: .4rem;
    background: var(--surface-soft);
}

.composition-player__number {
    display: inline-grid;
    flex: 0 0 1.75rem;
    width: 1.75rem;
    height: 1.75rem;
    place-items: center;
    border: 1px solid var(--border-strong);
    border-radius: .38rem;
    background: var(--surface);
    color: var(--brand);
    font-size: .72rem;
    font-weight: var(--font-weight-extrabold);
    font-variant-numeric: tabular-nums;
}

.composition-player__number--empty {
    color: var(--muted);
}

.composition-player__name {
    flex: 1 1 auto;
    min-width: 0;
    font-size: .86rem;
    font-weight: var(--font-weight-semibold);
    overflow-wrap: anywhere;
}

.composition-players li.composition-player--with-markers {
    display: grid;
    grid-template-areas:
        "number name markers"
        ". changes changes";
    grid-template-columns: 1.75rem minmax(0, 1fr) auto;
    gap: .32rem .5rem;
}

.composition-player--with-markers .composition-player__number {
    grid-area: number;
}

.composition-player--with-markers .composition-player__name {
    grid-area: name;
}

.composition-player--with-markers .composition-player__match-markers {
    grid-area: markers;
}

.composition-player--with-markers .composition-player__changes {
    grid-area: changes;
    justify-self: end;
    margin-left: 0;
}

.composition-player__match-markers {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: .18rem;
}

.composition-player__goal {
    font-size: .82rem;
    line-height: 1;
}

.composition-player__card {
    position: relative;
    display: inline-block;
    width: .46rem;
    height: .66rem;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: .12rem;
    background: var(--muted);
    box-shadow: 0 1px 2px rgba(0, 0, 0, .22);
}

.composition-player__card--yellow {
    background: #facc15;
}

.composition-player__card--red {
    background: #ef2b2d;
}

.composition-player__card--second-yellow {
    width: .68rem;
    border: 0;
    background: #facc15;
    transform: rotate(-5deg);
}

.composition-player__card--second-yellow::after {
    position: absolute;
    inset: .04rem 0 0 .22rem;
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: .12rem;
    background: #ef2b2d;
    content: "";
    transform: rotate(10deg);
}

.composition-player__changes {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .2rem;
    margin-left: auto;
}

.composition-player__change {
    display: inline-flex;
    align-items: center;
    gap: .18rem;
    padding: .18rem .32rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface);
    color: var(--muted);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-extrabold);
    line-height: 1;
    white-space: nowrap;
}

.composition-player__change b {
    padding-left: .18rem;
    border-left: 1px solid var(--border);
    color: var(--brand);
    font-weight: var(--font-weight-bold);
}

.composition-player__change--in {
    color: var(--muted);
}

.composition-player__change--in::before {
    content: "↑";
    color: var(--logo-background);
    font-weight: var(--font-weight-extrabold);
}

.composition-player__change--out::before {
    content: "↓";
    color: var(--live);
    font-weight: var(--font-weight-extrabold);
}

.composition-bench {
    border-top: 1px solid var(--border);
}

.composition-bench summary {
    padding: .8rem 1rem;
    cursor: pointer;
    list-style: none;
    transition: background-color .15s ease;
}

.composition-bench summary > span {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .4rem;
}

.composition-bench summary em {
    color: var(--logo-background);
    font-size: var(--font-size-caption);
    font-style: normal;
}

.composition-bench summary:hover {
    background: var(--surface-soft);
}

.composition-bench summary:focus-visible {
    outline: .15rem solid var(--link);
    outline-offset: -.2rem;
}

.composition-bench summary::-webkit-details-marker {
    display: none;
}

.composition-bench summary::after {
    content: '›';
    margin-left: -.35rem;
    color: var(--muted);
    font-size: 1.3rem;
    line-height: 1;
    transform: rotate(90deg);
    transition: transform .15s ease;
}

.composition-bench[open] summary::after {
    transform: rotate(-90deg);
}

.composition-bench summary span {
    margin-right: auto;
}

.composition-bench__content {
    padding: .25rem 1rem 1rem;
}

.schedule-list,
.event-list,
.article-list,
.broadcast-detail-list,
.entity-card-grid {
    margin: 0;
    padding: 0;
    list-style: none;
}

.schedule-list {
    display: grid;
    gap: .45rem;
}

.schedule-day-heading {
    position: sticky;
    z-index: 4;
    top: 0;
    align-self: start;
    margin-top: .45rem;
    padding: .55rem .8rem;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--overlay-surface);
    box-shadow: 0 .12rem .4rem rgb(17 36 63 / 7%);
}

.schedule-day-heading:first-child {
    margin-top: 0;
}

.schedule-day-heading h2 {
    margin: 0;
    color: var(--brand);
    font-size: 1rem;
    text-transform: capitalize;
}

.schedule-state-heading {
    margin: 1rem .15rem .15rem;
}

.schedule-state-heading--first-visible {
    margin-top: 0;
}

.schedule-state-heading[hidden] {
    display: none;
}

.schedule-state-heading h2 {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin: 0;
    color: var(--brand);
    font-size: 1.15rem;
}

.schedule-state-heading h2::before {
    width: .55rem;
    height: .55rem;
    border-radius: 50%;
    background: var(--muted);
    content: '';
}

.schedule-state-heading__link {
    color: inherit;
    text-decoration: none;
}

.schedule-state-heading__linked-title {
    display: inline-flex;
    align-items: center;
    gap: .28em;
}

.schedule-state-heading__link:hover,
.schedule-state-heading__link:focus-visible {
    color: var(--link);
    text-decoration: underline;
    text-decoration-thickness: .08em;
}

.schedule-state-heading--current h2::before {
    background: var(--live);
    box-shadow: 0 0 0 .22rem color-mix(in srgb, var(--live) 16%, transparent);
}

.schedule-state-heading--upcoming h2::before {
    background: var(--match-status-upcoming);
}

.schedule-state-heading--tonight h2::before {
    background: var(--brand-2);
}

.day-pagination {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
    margin-top: 1.5rem;
    padding-top: 1.25rem;
}

.day-pagination__link {
    display: flex;
    align-items: center;
    gap: .7rem;
    min-width: 0;
    min-height: 4.25rem;
    padding: .7rem .85rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    color: var(--brand);
    text-decoration: none;
    transition: border-color .15s ease, background-color .15s ease, transform .15s ease;
}

.day-pagination__link--next {
    justify-content: flex-end;
    text-align: right;
}

.day-pagination__link:hover,
.day-pagination__link:focus-visible {
    border-color: var(--border-strong);
    background: var(--surface-soft);
    transform: translateY(-1px);
}

.day-pagination__arrow {
    display: grid;
    flex: 0 0 2.15rem;
    width: 2.15rem;
    aspect-ratio: 1;
    place-items: center;
    border-radius: 50%;
    background: var(--surface-soft);
    font-size: 1.65rem;
    line-height: 1;
}

.day-pagination__text {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.day-pagination__text small {
    color: var(--muted);
    font-size: .7rem;
    font-weight: 700;
}

.day-pagination__text strong {
    overflow: hidden;
    font-size: .88rem;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.schedule-list-title {
    margin: 0 0 .7rem;
    color: var(--eyebrow);
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.schedule-type-filter {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .5rem;
    margin: 0 0 1rem;
    padding: .6rem .7rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
}

.schedule-type-filter legend {
    float: left;
    margin-right: .2rem;
    padding: .35rem .25rem;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 700;
}

.schedule-type-filter__option {
    --schedule-filter-accent: var(--border-strong);
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    min-height: 2rem;
    padding: .3rem .55rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: transparent;
    color: var(--muted);
    cursor: pointer;
    font-size: .8rem;
    font-weight: 700;
    -webkit-user-select: none;
    user-select: none;
    transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.schedule-type-filter__option:hover {
    border-color: var(--border-strong);
    color: var(--text);
}

.schedule-type-filter__option:has(input:focus-visible) {
    outline: 2px solid color-mix(in srgb, var(--schedule-filter-accent) 55%, transparent);
    outline-offset: 2px;
}

.schedule-type-filter__option input {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
}

.schedule-type-filter__option:has(input:checked) {
    border-color: color-mix(in srgb, var(--schedule-filter-accent) 62%, var(--border));
    background: color-mix(in srgb, var(--schedule-filter-accent) 13%, var(--surface));
    color: var(--text);
}

.schedule-type-filter__option--live {
    --schedule-filter-accent: var(--diffusion-live);
}

.schedule-type-filter__option--selection {
    --schedule-filter-accent: #d89b17;
}

.schedule-type-filter__option--replay {
    --schedule-filter-accent: var(--diffusion-replay);
}

.schedule-type-filter__option--show {
    --schedule-filter-accent: var(--diffusion-show);
}

.schedule-type-filter__option--streaming {
    --schedule-filter-accent: var(--diffusion-streaming);
}

.schedule-type-filter__option--without-tv {
    --schedule-filter-accent: var(--diffusion-without-tv);
}

.schedule-type-filter__option--constraint {
    --schedule-filter-accent: var(--brand-surface);
}

.schedule-type-filter__option--matches {
    --schedule-filter-accent: var(--match-status-upcoming);
}

.schedule-past-toggle {
    text-decoration: none;
}

.schedule-past-toggle:focus-visible {
    outline: 2px solid color-mix(in srgb, var(--schedule-filter-accent) 55%, transparent);
    outline-offset: 2px;
}

.schedule-past-toggle--active {
    border-color: color-mix(in srgb, var(--schedule-filter-accent) 62%, var(--border));
    background: color-mix(in srgb, var(--schedule-filter-accent) 13%, var(--surface));
    color: var(--text);
}

.schedule-type-filter__label-mobile {
    display: none;
}

.schedule-sport-filter {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 700;
}

.schedule-sport-filter select {
    min-width: 12rem;
    min-height: 2rem;
    padding: .3rem 1.9rem .3rem .55rem;
    font-size: .8rem;
}

.schedule-type-filter__actions {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin-left: auto;
}

.schedule-type-filter__count {
    color: var(--muted);
    font-size: .74rem;
    font-weight: 700;
    white-space: nowrap;
}

.schedule-filter-reset,
.schedule-preferences-link {
    display: grid;
    flex: 0 0 2rem;
    width: 2rem;
    height: 2rem;
    padding: 0;
    place-items: center;
    border: 1px solid var(--border);
    border-radius: .45rem;
    background: var(--surface);
    color: var(--muted);
    font: inherit;
    text-decoration: none;
}

.schedule-filter-apply {
    min-height: 2rem;
    padding: .35rem .7rem;
    border: 1px solid var(--brand-surface);
    border-radius: .45rem;
    background: var(--brand-surface);
    color: var(--on-brand);
    cursor: pointer;
    font: inherit;
    font-size: .76rem;
    font-weight: 800;
}

.schedule-filter-reset {
    appearance: none;
    cursor: pointer;
}

.schedule-filter-reset svg,
.schedule-preferences-link svg {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.schedule-filter-reset:hover,
.schedule-filter-reset:focus-visible,
.schedule-preferences-link:hover,
.schedule-preferences-link:focus-visible {
    border-color: var(--border-strong);
    background: var(--surface-soft);
    color: var(--link);
}

.schedule-filter-apply:hover,
.schedule-filter-apply:focus-visible {
    background: var(--brand-surface-hover);
}

.schedule-filter-apply:focus-visible {
    outline: 3px solid var(--link);
    outline-offset: 2px;
}

.schedule-complete-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 1rem 0;
    padding: .85rem 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface-soft);
}

.schedule-complete-action p {
    margin: 0;
    color: var(--muted);
    font-size: .84rem;
}

.schedule-complete-action a,
.schedule-complete-noscript a {
    color: var(--link);
    font-size: .82rem;
    font-weight: 800;
}

.schedule-complete-action a {
    white-space: nowrap;
}

.schedule-complete-action--back {
    justify-content: flex-end;
    padding-block: .65rem;
}

.schedule-complete-noscript {
    margin: .75rem 0;
    color: var(--muted);
    font-size: .82rem;
}

.schedule-item[data-type-filter-hidden="1"],
.schedule-item[data-match-filter-hidden="1"],
.schedule-item[data-past-filter-hidden="1"],
.schedule-item[data-selection-filter-hidden="1"],
.schedule-item[data-sport-filter-hidden="1"] {
    display: none;
}

.schedule-item {
    --schedule-progress-color: var(--diffusion-show);
    --schedule-visual-width: 6.2rem;
    --schedule-visual-height: 3.5rem;
    position: relative;
    content-visibility: auto;
    contain-intrinsic-size: auto 4.75rem;
    display: grid;
    grid-template-columns: 4.5rem minmax(0, 1fr) minmax(8.5rem, auto) auto;
    align-items: center;
    gap: .7rem;
    min-height: 4.5rem;
    padding: .5rem .75rem;
    border: 1px solid var(--border);
    border-left: .36rem solid var(--diffusion-show);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: 0 .08rem .25rem rgb(17 36 63 / 4%);
    cursor: pointer;
    overflow: hidden;
    transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.schedule-item:focus-within {
    border-color: var(--border-strong);
    background: color-mix(in srgb, var(--surface-soft) 34%, var(--surface));
    box-shadow: var(--shadow);
    transform: translateY(-1px);
}

.schedule-item:focus-within {
    outline: 2px solid color-mix(in srgb, var(--link) 55%, transparent);
    outline-offset: 2px;
}

@media (hover: hover) and (pointer: fine) {
    .schedule-item:hover {
        border-color: var(--border-strong);
        background: color-mix(in srgb, var(--surface-soft) 34%, var(--surface));
        box-shadow: var(--shadow);
        transform: translateY(-1px);
    }
}

.schedule-item__watermarks {
    display: none;
}

@media (min-width: 64rem) {
    .schedule-item__watermarks {
        position: absolute;
        z-index: 0;
        top: 50%;
        inset-inline-end: clamp(12rem, 24%, 22rem);
        display: flex;
        align-items: center;
        flex-direction: row;
        gap: .75rem;
        height: 4.75rem;
        filter: grayscale(.25) saturate(.65);
        opacity: .055;
        pointer-events: none;
        transform: translateY(-50%) scale(1);
        transform-origin: center;
        transition: filter .16s ease, opacity .16s ease, transform .16s ease;
    }

    .schedule-item__competition-watermark,
    .schedule-item__sport-watermark {
        display: grid;
        width: 4.75rem;
        height: 4.75rem;
        flex: 0 0 4.75rem;
        place-items: center;
    }

    .schedule-item__competition-watermark {
        width: 4rem;
        height: 3.75rem;
        flex-basis: 4rem;
    }

    .schedule-item__competition-watermark img,
    .schedule-item__sport-watermark .sport-icon-image {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .schedule-item__sport-watermark {
        font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
        font-size: 4.75rem;
        line-height: 1;
    }

    .schedule-item:focus-within .schedule-item__watermarks {
        filter: grayscale(0) saturate(1);
        opacity: .32;
        transform: translateY(-50%) scale(1.06);
    }
}

@media (min-width: 64rem) and (hover: hover) and (pointer: fine) {
    .schedule-item:hover .schedule-item__watermarks {
        filter: grayscale(0) saturate(1);
        opacity: .32;
        transform: translateY(-50%) scale(1.06);
    }
}

.schedule-item.schedule-item--live {
    --schedule-progress-color: var(--diffusion-live);
    border-left-color: var(--diffusion-live);
}

.schedule-item.schedule-item--replay {
    --schedule-progress-color: var(--diffusion-replay);
    border-left-color: var(--diffusion-replay);
}

.schedule-item.schedule-item--show {
    --schedule-progress-color: var(--diffusion-show);
    border-left-color: var(--diffusion-show);
}

.schedule-item.schedule-item--streaming {
    --schedule-progress-color: var(--diffusion-streaming);
    border-left-color: var(--diffusion-streaming);
}

.schedule-item.schedule-item--without-tv {
    --schedule-progress-color: var(--diffusion-without-tv);
    border-left-color: var(--diffusion-without-tv);
}

.schedule-progress {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: .2rem;
    background: var(--border);
    overflow: hidden;
}

.schedule-progress__fill {
    display: block;
    height: 100%;
    background: var(--schedule-progress-color);
    transition: width .45s linear;
}

.schedule-list--time-only .schedule-item {
    grid-template-columns: 5rem minmax(0, 1fr) minmax(8.5rem, auto) auto;
    min-height: 4.25rem;
}

.schedule-time {
    display: flex;
    flex-direction: column;
    color: var(--muted);
    font-size: .76rem;
}

.schedule-time strong {
    color: var(--brand);
    font-size: 1.32rem;
    letter-spacing: -.035em;
}

.schedule-time__row {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: .2rem;
    width: 100%;
    text-align: center;
}

.schedule-date-label--full {
    display: none;
}

.schedule-date-label--compact {
    display: inline;
    white-space: nowrap;
}

@media (min-width: 48.01rem) {
    .schedule-list:not(.schedule-list--time-only) .schedule-item {
        column-gap: .5rem;
    }

    .schedule-list:not(.schedule-list--time-only) .schedule-time {
        align-items: flex-start;
        gap: .1rem;
    }

    .schedule-list:not(.schedule-list--time-only) .schedule-time__row {
        align-items: flex-start;
        width: auto;
        text-align: left;
    }
}

.schedule-status {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    font-size: .75rem;
    font-weight: 800;
    line-height: 1;
    text-transform: uppercase;
}

.schedule-status--live {
    gap: .25rem;
    padding: .16rem .3rem;
    border-radius: .25rem;
    background: var(--diffusion-live);
    color: var(--on-live);
}

.schedule-status--live::before {
    width: .38rem;
    height: .38rem;
    border-radius: 50%;
    background: currentColor;
    content: '';
}

.schedule-status--replay {
    color: #8a6800;
}

html[data-theme="dark"] .schedule-status--replay {
    color: var(--diffusion-replay);
}

.schedule-status--show {
    color: var(--diffusion-show-text);
}

.schedule-status--streaming {
    color: var(--diffusion-streaming);
}

.schedule-status--without-tv {
    color: var(--diffusion-without-tv);
}

.schedule-status__label-short {
    display: none;
}

.schedule-channel--unavailable {
    color: var(--muted);
    font-size: .75rem;
    font-weight: var(--font-weight-semibold);
    text-align: right;
}

.schedule-content {
    min-width: 0;
}

.schedule-content h3,
.event-item h3,
.article-list h2 {
    margin: .1rem 0 .3rem;
    font-size: 1rem;
    line-height: 1.28;
}

.schedule-content h3 {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

.schedule-content h3 a,
.event-item h3 a {
    color: var(--brand);
    text-decoration: none;
}

.schedule-content h3 a::after {
    position: absolute;
    z-index: 1;
    inset: 0;
    content: '';
}

.schedule-program--with-visual {
    display: grid;
    grid-template-columns: var(--schedule-visual-width) minmax(0, 1fr);
    align-items: center;
    gap: .8rem;
}

.schedule-program__body {
    min-width: 0;
}

.schedule-visual {
    display: grid;
    place-items: center;
    width: var(--schedule-visual-width);
    height: var(--schedule-visual-height);
    min-width: 0;
}

.schedule-participants {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    width: 100%;
    min-width: 0;
}

.schedule-participant {
    position: relative;
    z-index: 2;
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    width: 3rem;
    height: 3rem;
    padding: .2rem;
    border: 1px solid var(--border);
    border-radius: .75rem;
    background: var(--media-background);
}

.schedule-participant + .schedule-participant {
    margin-left: 0;
}

.schedule-participant img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.schedule-program-image {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--surface-soft);
}

.schedule-program-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.schedule-entity-visual {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    padding: .3rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--media-background);
}

.schedule-entity-visual img {
    width: 3rem;
    height: 3rem;
}

.schedule-entity-visual--sport {
    font-size: 2rem;
    text-decoration: none;
}

@media (min-width: 48.0625rem) {
    .schedule-program-image,
    .schedule-entity-visual {
        height: 3rem;
    }

    .schedule-entity-visual {
        padding: .2rem;
    }

    .schedule-entity-visual img {
        width: 100%;
        height: 100%;
        max-width: 2.6rem;
        max-height: 2.6rem;
        object-fit: contain;
    }
}

.schedule-content p,
.event-item p,
.article-list p {
    margin-block: .25rem;
}

.schedule-item__arrow {
    position: relative;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 2.25rem;
    aspect-ratio: 1;
    border-radius: .55rem;
    background: transparent;
    color: var(--arrow-muted);
    pointer-events: none;
    text-decoration: none;
    transition: background-color .16s ease, color .16s ease, transform .16s ease;
}

.schedule-item__arrow svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

.schedule-item:focus-within .schedule-item__arrow {
    background: color-mix(in srgb, var(--link) 8%, transparent);
    color: var(--link);
    transform: translateX(.12rem);
}

@media (hover: hover) and (pointer: fine) {
    .schedule-item:hover .schedule-item__arrow {
        background: color-mix(in srgb, var(--link) 8%, transparent);
        color: var(--link);
        transform: translateX(.12rem);
    }
}

@media (hover: none), (pointer: coarse) {
    .schedule-item:active {
        border-color: var(--border-strong);
        background: color-mix(in srgb, var(--surface-soft) 42%, var(--surface));
        transform: scale(.995);
    }
}

.schedule-meta a,
.featured-card__context a,
.event-related-news__sport {
    position: relative;
    z-index: 2;
}

.schedule-meta a,
.featured-card__context a,
.event-related-news__sport {
    color: color-mix(in srgb, var(--link) 68%, var(--muted));
    text-decoration: none;
}

.schedule-meta .sport-emoji,
.featured-card__context .sport-emoji,
.event-related-news__sport .sport-emoji {
    font-size: var(--sport-emoji-emphasis-size);
    margin-right: var(--sport-emoji-label-margin-right);
}

.schedule-meta a:hover,
.schedule-meta a:focus-visible,
.featured-card__context a:hover,
.featured-card__context a:focus-visible,
.event-related-news__sport:hover,
.event-related-news__sport:focus-visible {
    color: var(--link);
    text-decoration: underline;
    text-decoration-thickness: .08em;
}

.channel-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .35rem;
    color: var(--muted);
    font-size: .86rem;
}

.logoChaine,
.logoParticipant,
.logoCompetition {
    aspect-ratio: 1 / 1;
    object-fit: contain;
    object-position: 50% 50%;
}

html[data-theme="dark"] .logoChaine,
html[data-theme="dark"] .stream-provider-logo {
    filter:
        drop-shadow(0 0 1px rgb(255 255 255 / 72%))
        drop-shadow(0 0 4px rgb(255 255 255 / 45%));
}

.channel-logo {
    display: inline-block;
    flex: 0 0 auto;
    width: 3rem;
    height: 3rem;
    vertical-align: middle;
}

.channel-logo--small {
    width: 1.75rem;
    height: 1.75rem;
}

.channel-logo--hero {
    width: 7rem;
    height: 7rem;
}

.schedule-channel {
    flex-wrap: nowrap;
    justify-self: end;
    max-width: 15rem;
    margin: 0;
    font-size: 0;
}

.schedule-channel .live-label,
.schedule-channel .replay-label {
    display: none;
}

.schedule-channel .channel-logo {
    width: 2.5rem;
    height: 2.5rem;
}

.schedule-channel > a {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.schedule-channel--logos-only {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: .4rem;
    max-width: none;
}

.schedule-channel--streaming {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .45rem;
    color: var(--text);
    font-size: .74rem;
    font-weight: 800;
}

.stream-provider-logo {
    display: block;
    flex: 0 0 auto;
    width: auto;
    height: 2.5rem;
    max-width: 5rem;
    border-radius: .55rem;
    object-fit: contain;
}

.schedule-channel--logos-only .schedule-channel__item > span {
    position: relative;
    display: grid;
    place-items: center;
    width: var(--schedule-visual-width);
    height: var(--schedule-visual-height);
    overflow: hidden;
}

.schedule-channel--logos-only .schedule-channel__item .channel-logo {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    max-height: 100%;
    aspect-ratio: auto;
    object-fit: contain;
    object-position: center;
}

.schedule-channel__item {
    display: flex;
    align-items: center;
    gap: .35rem;
    min-width: 0;
}

.schedule-channel__item a {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.schedule-channel__item small {
    color: var(--muted);
    font-variant-numeric: tabular-nums;
}

.schedule-channel__name,
.schedule-channel__more {
    display: none;
}

.page-header--channel {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    gap: .35rem 1rem;
}

.page-header--channel .page-header__title-row {
    min-width: 0;
}

.page-header--channel p {
    grid-column: 2;
}

.live-label,
.replay-label {
    display: inline-block;
    padding: .12rem .38rem;
    margin-left: .35rem;
    border-radius: .25rem;
    font-size: var(--font-size-caption);
    font-weight: 800;
    text-transform: uppercase;
}

.live-label {
    background: var(--live);
    color: var(--on-live);
}

.replay-label {
    background: var(--diffusion-replay);
    color: #2f2500;
}

.sql-report {
    width: min(100% - 2rem, 1120px);
    margin: 1.5rem auto 4rem;
    padding: .9rem;
    border: 1px solid var(--border);
    border-radius: .8rem;
    background: var(--surface);
    color: var(--text);
    box-shadow: var(--shadow);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: .78rem;
}

.sql-report__heading,
.sql-report__summary,
.sql-report__query-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .45rem;
}

.sql-report__heading {
    justify-content: space-between;
    margin-bottom: .65rem;
    font-size: .9rem;
}

.sql-report__environment {
    padding: .15rem .45rem;
    border-radius: 999px;
    background: var(--brand);
    color: var(--on-brand);
    font-size: .68rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sql-report__summary {
    margin-bottom: .7rem;
}

.sql-report__chip {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .24rem .5rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface-soft);
}

.sql-report__chip span,
.sql-report__query-meta span {
    color: var(--muted);
}

.sql-report__details {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--surface-soft);
}

.sql-report__details + .sql-report__details {
    margin-top: .65rem;
}

.sql-report__details summary {
    padding: .55rem .7rem;
    cursor: pointer;
    font-weight: 800;
}

.sql-report__performance-note {
    margin: 0;
    padding: 0 .7rem .55rem;
    color: var(--muted);
}

.sql-report__queries {
    max-height: 34rem;
    margin: 0;
    padding: 0;
    overflow: auto;
    list-style: none;
    border-top: 1px solid var(--border);
}

.sql-report__query {
    padding: .65rem .7rem;
    border-left: 4px solid transparent;
    background: var(--surface);
}

.sql-report__query + .sql-report__query {
    border-top: 1px solid var(--border);
}

.sql-report__query--warning {
    border-left-color: #eab308;
}

.sql-report__query--danger {
    border-left-color: #ef4444;
}

.sql-report__query-meta {
    justify-content: space-between;
}

.sql-report pre {
    margin: .45rem 0 0;
    overflow-x: auto;
    white-space: pre;
    color: inherit;
}

.sql-report__query p {
    margin: .4rem 0 0;
    overflow-wrap: anywhere;
}

.sql-report__error {
    color: #ef4444;
}

.sql-report__empty {
    padding: .75rem;
    color: var(--muted);
    background: var(--surface);
}

.event-day-groups {
    display: grid;
    gap: 0;
}

.event-day-group {
    display: contents;
}

.event-day-heading {
    position: sticky;
    z-index: 5;
    top: 0;
    align-self: start;
    margin: 1rem 0 .55rem;
    padding: .58rem .8rem;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--overlay-surface);
    box-shadow: 0 .12rem .45rem rgb(17 36 63 / 8%);
    color: var(--brand);
    font-size: 1rem;
    line-height: 1.2;
    backdrop-filter: blur(.5rem);
}

.event-day-group:first-child .event-day-heading {
    margin-top: 0;
}

.tab-navigation.is-stuck,
.schedule-day-heading.is-stuck,
.event-day-heading.is-stuck {
    border-radius: 0;
}

.site-main:has(.tab-navigation) .schedule-day-heading,
.site-main:has(.tab-navigation) .event-day-heading {
    top: 3.3rem;
}

.event-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.event-item,
.article-list > li,
.broadcast-detail-list > li {
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: 0 .08rem .25rem rgb(17 36 63 / 4%);
}

.event-item {
    position: relative;
    padding: .85rem 1rem .8rem;
    border-left-width: .22rem;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.event-item__primary-link {
    position: absolute;
    z-index: 1;
    inset: 0;
    border-radius: inherit;
}

.event-item:has(.event-item__primary-link:focus-visible) {
    outline: 2px solid var(--link);
    outline-offset: 2px;
}

.event-item--upcoming {
    border-left-color: var(--match-status-upcoming);
}

.event-item--live {
    border-left-color: var(--diffusion-live);
}

.event-item--finished {
    border-left-color: var(--match-status-finished);
}

@media (hover: hover) and (pointer: fine) {
    .event-item:hover {
        border-top-color: var(--border-strong);
        border-right-color: var(--border-strong);
        border-bottom-color: var(--border-strong);
        box-shadow: 0 .22rem .65rem rgb(17 36 63 / 9%);
        transform: translateY(-1px);
    }
}

.event-item__meta {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: .25rem 1rem;
    min-height: 1.2rem;
    font-size: .74rem;
    line-height: 1.25;
}

.event-item__taxonomy {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: .25rem;
    min-width: 0;
    text-align: center;
}

.event-item__taxonomy .sport-emoji {
    font-size: var(--sport-emoji-emphasis-size);
    margin-right: var(--sport-emoji-label-margin-right);
}

.event-item__meta a {
    position: relative;
    z-index: 2;
    text-decoration: none;
}

.event-item .score-reveal,
.event-item .broadcast-list a {
    position: relative;
    z-index: 2;
}

.event-item__meta a:hover,
.event-item__meta a:focus-visible {
    text-decoration: underline;
    text-decoration-thickness: .08em;
}

.matchup {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 5.2rem minmax(0, 1fr);
    align-items: center;
    gap: .75rem;
    margin: .6rem 0 .15rem;
    color: var(--brand);
    text-decoration: none;
}

.matchup__participant {
    display: flex;
    align-items: center;
    gap: .45rem;
    min-width: 0;
    font-size: .85rem;
    color: var(--brand);
    text-decoration: none;
}

.matchup__participant--home {
    flex-direction: row-reverse;
    text-align: right;
}

.matchup__participant img {
    flex: 0 0 auto;
    width: 2.85rem;
    height: 2.85rem;
    padding: .18rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--media-background);
    object-fit: contain;
}

.matchup__participant strong {
    overflow: hidden;
    text-overflow: ellipsis;
}

.matchup__participant--winner strong {
    font-weight: 900;
}

.matchup__participant--loser {
    color: var(--muted);
}

.matchup__participant--loser strong {
    font-weight: 700;
}

.matchup__center {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .22rem;
    color: var(--brand);
    text-align: center;
    text-decoration: none;
}

.matchup__center > strong {
    font-size: 1.05rem;
}

.matchup__time {
    color: var(--brand);
    font-size: 1.05rem;
}

.matchup__center small:not(.match-status) {
    color: var(--muted);
    font-size: var(--font-size-caption);
}

.matchup__result-status {
    max-width: 100%;
    margin-top: .05rem;
    line-height: 1.15;
    text-align: center;
    white-space: normal;
}

.matchup__result-status.match-status--live {
    max-width: none;
    white-space: nowrap;
}

.matchup__result-status.matchup__result-status--shootout {
    max-width: none;
    padding: .22rem .42rem;
    border: 1px solid var(--border-strong);
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: .67rem;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0;
    line-height: 1;
    text-transform: none;
    white-space: nowrap;
}

.matchup__result-status--pending {
    border: 1px solid var(--border-strong);
    background: var(--surface-soft);
    color: var(--muted);
    white-space: nowrap;
}

.score,
.event-score {
    color: var(--brand);
    font-size: 1.35rem;
    font-weight: var(--font-weight-extrabold);
}

.event-score {
    font-size: 2rem;
}

.score:focus-visible,
.event-score:focus-visible {
    outline: 3px solid var(--link);
    outline-offset: 3px;
}

.score-reveal {
    display: none;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    padding: .25rem .65rem;
    border-color: var(--border-strong);
    background: var(--surface-soft);
    color: var(--brand);
    font-size: .78rem;
    line-height: 1;
}

.score-reveal:hover {
    background: var(--surface);
}

html[data-show-scores="false"] [data-score-container]:not(.score-is-revealed) .score,
html[data-show-scores="false"] [data-score-container]:not(.score-is-revealed) .event-score {
    display: none;
}

html[data-show-scores="false"] [data-score-container]:not(.score-is-revealed) .event-hero__aggregate {
    display: none;
}

html[data-show-scores="false"] [data-score-container]:not(.score-is-revealed) .event-hero__result-status {
    display: none;
}

html[data-show-scores="false"] [data-score-container]:not(.score-is-revealed) .event-hero__scorers {
    display: none;
}

html[data-show-scores="false"] [data-score-container]:not(.score-is-revealed) .matchup__result-status {
    display: none;
}

html[data-show-scores="false"] [data-score-container]:not(.score-is-revealed) .score-reveal {
    display: inline-flex;
}

.event-hero__score .score-reveal {
    align-self: center;
}

.broadcast-list {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin: .5rem 0 0;
    padding: .65rem 0 0;
    border-top: 1px solid var(--border);
    list-style: none;
}

.broadcast-list a {
    display: inline-flex;
    flex-direction: column;
    padding: .3rem .5rem;
    border-radius: .35rem;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: var(--font-size-small);
    text-decoration: none;
}

.broadcast-list__channel {
    color: var(--brand);
    font-size: .76rem;
    font-weight: 800;
}

.broadcast-list__identity {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
}

.event-broadcast-groups {
    display: grid;
    gap: .65rem;
}

.event-broadcast-group {
    min-width: 0;
}

.event-broadcast-group__heading {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-bottom: .35rem;
}

.event-broadcast-group__heading h3 {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    margin: 0;
    color: var(--brand);
    font-size: .86rem;
}

.event-broadcast-group--live .event-broadcast-group__heading h3::before {
    width: .48rem;
    height: .48rem;
    flex: 0 0 .48rem;
    border-radius: 50%;
    background: var(--live);
    box-shadow: 0 0 0 .18rem color-mix(in srgb, var(--live) 14%, transparent);
    content: "";
}

.event-broadcast-group__heading > span {
    color: var(--muted);
    font-size: .76rem;
}

.event-broadcast-group__summary {
    display: flex;
    align-items: center;
    gap: .5rem;
    min-height: 2.7rem;
    padding: .5rem .65rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--surface);
    color: var(--brand);
    cursor: pointer;
    font-size: .82rem;
    font-weight: var(--font-weight-extrabold);
    list-style: none;
}

.event-broadcast-group__summary::-webkit-details-marker {
    display: none;
}

.event-broadcast-group__summary strong {
    display: inline-grid;
    min-width: 1.45rem;
    min-height: 1.45rem;
    place-items: center;
    padding-inline: .35rem;
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: .72rem;
}

.event-broadcast-group__chevron {
    margin-left: auto;
    color: var(--arrow-muted);
    font-size: 1.25rem;
    line-height: 1;
    transform: rotate(90deg);
    transition: transform .15s ease;
}

.event-broadcast-group[open] .event-broadcast-group__chevron {
    transform: rotate(-90deg);
}

.event-broadcast-group__body {
    padding-top: .35rem;
}

.broadcast-detail-list {
    display: grid;
    gap: .3rem;
}

.broadcast-detail-card {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: .4rem .65rem;
}

.broadcast-detail-list > .broadcast-detail-card {
    min-height: 3.25rem;
    padding: .4rem .55rem;
    border-radius: .55rem;
    box-shadow: none;
}

.broadcast-detail-card__content {
    min-width: 0;
}

.broadcast-detail-card__heading {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: .4rem;
    margin: 0;
}

.broadcast-detail-card__heading > span:not(.live-label):not(.replay-label):not(.broadcast-detail-card__channel) {
    display: grid;
    gap: .08rem;
}

.broadcast-detail-card__channel {
    display: inline-flex;
    flex: 1 1 auto;
    align-items: center;
    gap: .45rem;
    min-width: 0;
    color: inherit;
    text-decoration: none;
}

.broadcast-detail-card__channel .channel-logo {
    width: 2.25rem;
    height: 2.25rem;
}

.broadcast-detail-card__channel-logo-link {
    display: inline-flex;
    flex: 0 0 auto;
}

.broadcast-detail-card__channel-name-link {
    color: inherit;
    text-decoration: none;
}

.broadcast-detail-card__channel-name-link:hover,
.broadcast-detail-card__channel-name-link:focus-visible {
    color: var(--link);
    text-decoration: underline;
}

.broadcast-detail-card__channel > span {
    display: grid;
    gap: .08rem;
    min-width: 0;
}

.broadcast-detail-card__channel strong {
    overflow: hidden;
    font-size: .84rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.broadcast-detail-card__heading small {
    color: var(--muted);
    font-size: .7rem;
}

.broadcast-detail-card__date--mobile {
    display: none;
}

.broadcast-detail-card__content > p:last-child {
    margin-bottom: 0;
}

.broadcast-detail-card__content > p:not(.broadcast-detail-card__heading) {
    margin: .2rem 0 0 2.7rem;
    color: var(--muted);
    font-size: .72rem;
}

.broadcast-detail-card__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
}

.broadcast-calendar {
    position: relative;
    flex: 0 0 auto;
}

.broadcast-calendar__trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border: 1px solid var(--border-strong);
    border-radius: .5rem;
    background: var(--surface);
    color: var(--brand);
    cursor: pointer;
    list-style: none;
}

.broadcast-calendar__trigger::-webkit-details-marker {
    display: none;
}

.broadcast-calendar__trigger:hover,
.broadcast-calendar__trigger:focus-visible,
.broadcast-calendar[open] .broadcast-calendar__trigger {
    border-color: var(--link);
    color: var(--link);
}

.broadcast-calendar__icon {
    width: 1.05rem;
    height: 1.05rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.broadcast-calendar__menu {
    position: absolute;
    z-index: 20;
    top: calc(100% + .35rem);
    right: 0;
    display: grid;
    min-width: 12rem;
    padding: .35rem;
    border: 1px solid var(--border);
    border-radius: .6rem;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.broadcast-calendar__menu a {
    padding: .5rem .6rem;
    border-radius: .4rem;
    color: var(--brand);
    font-size: .78rem;
    font-weight: var(--font-weight-bold);
    text-decoration: none;
    white-space: nowrap;
}

.broadcast-calendar__menu a:hover,
.broadcast-calendar__menu a:focus-visible {
    background: var(--surface-soft);
    color: var(--link);
}

.watch-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    min-height: 2rem;
    padding: .35rem .6rem;
    border-radius: .5rem;
    background: var(--live);
    color: var(--on-live);
    font-size: .74rem;
    font-weight: var(--font-weight-extrabold);
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
}

.watch-cta__label--mobile {
    display: none;
}

.watch-cta .stream-provider-logo {
    width: auto;
    height: 1.55rem;
    max-width: 4.5rem;
    margin-right: .45rem;
    border-radius: .35rem;
}

.watch-cta:hover {
    color: var(--on-brand);
    filter: brightness(.92);
}

.watch-cta--replay,
.watch-cta--replay:hover {
    background: var(--diffusion-replay);
    color: #2f2500;
}

.broadcast-detail-card .embed-container {
    grid-column: 1 / -1;
}

.event-comparison-sequence {
    position: relative;
    margin-top: 2.6rem;
}

.event-comparison-sticky {
    position: sticky;
    z-index: 7;
    top: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-height: 3.4rem;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--overlay-surface);
    box-shadow: 0 .16rem .6rem rgb(17 36 63 / 12%);
    backdrop-filter: blur(.5rem);
}

.event-comparison-sticky__team {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    min-width: 0;
    padding: .45rem .7rem;
    color: var(--brand);
    text-align: center;
    text-decoration: none;
}

.event-comparison-sticky__team--away {
    flex-direction: row-reverse;
    border-left: 1px solid var(--border);
}

.event-comparison-sticky__team img {
    width: 2.2rem;
    height: 2.2rem;
    flex: 0 0 2.2rem;
    object-fit: contain;
}

.event-comparison-sticky__team strong {
    overflow: hidden;
    min-width: 0;
    font-size: .84rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

a.event-comparison-sticky__team:hover,
a.event-comparison-sticky__team:focus-visible {
    background: var(--surface-soft);
    color: var(--link);
}

.event-comparison-sequence > .event-comparison-sticky + section {
    margin-top: 1rem;
}

.event-overview__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(16rem, .75fr);
    gap: 1rem;
}

.event-editorial,
.event-facts {
    margin: 0;
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
}

.event-editorial > :first-child {
    margin-top: 0;
}

.event-editorial > :last-child {
    margin-bottom: 0;
}

.event-editorial h3 {
    margin: 1.2rem 0 .4rem;
    color: var(--brand);
    font-size: 1rem;
}

.event-facts {
    display: grid;
    align-content: start;
    gap: .7rem;
}

.event-facts > div {
    display: grid;
    gap: .08rem;
}

.event-facts dt {
    color: var(--muted);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.event-facts dd {
    margin: 0;
    color: var(--brand);
    font-weight: var(--font-weight-bold);
}

.event-facts__related-match {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    color: var(--link);
    text-decoration: none;
}

.event-facts__related-match:hover,
.event-facts__related-match:focus-visible {
    text-decoration: underline;
}

.event-facts__channels {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .45rem .75rem;
}

.event-facts__channel {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    color: inherit;
    text-decoration: none;
}

a.event-facts__channel:hover,
a.event-facts__channel:focus-visible {
    color: var(--link);
    text-decoration: underline;
}

.event-facts__channel-logo {
    width: 2.5rem;
    height: 2rem;
}

.match-statistics__panel {
    overflow: hidden;
    width: 100%;
    padding: 1rem 1.4rem 1.25rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
}

.match-statistics__list {
    display: grid;
    gap: .15rem;
    margin: 0;
    padding: .55rem 0 0;
    list-style: none;
}

.match-statistics__row {
    padding: .7rem 0;
}

.match-statistics__values {
    display: grid;
    grid-template-columns: minmax(4.5rem, 1fr) minmax(8rem, 1.2fr) minmax(4.5rem, 1fr);
    align-items: center;
    gap: .8rem;
}

.match-statistics__value {
    color: var(--brand);
    font-size: 1rem;
    line-height: 1.2;
    font-variant-numeric: tabular-nums;
}

.match-statistics__value--away {
    text-align: right;
}

.match-statistics__label {
    color: var(--text);
    font-size: .8rem;
    font-weight: var(--font-weight-bold);
    line-height: 1.25;
    text-align: center;
}

.match-statistics__bars {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .7rem;
    margin-top: .5rem;
}

.match-statistics__track,
.match-statistics__distribution {
    overflow: hidden;
    height: .42rem;
    border-radius: 999px;
    background: var(--surface-soft);
}

.match-statistics__track {
    display: flex;
}

.match-statistics__track--home {
    justify-content: flex-end;
}

.match-statistics__track > span,
.match-statistics__distribution > span {
    display: block;
    min-width: 0;
    border-radius: inherit;
}

.match-statistics__track--home > span,
.match-statistics__distribution-home {
    background: var(--statistics-home);
}

.match-statistics__track--away > span,
.match-statistics__distribution-away {
    background: var(--statistics-away);
}

.match-statistics__distribution {
    display: flex;
    height: .84rem;
    margin-top: .55rem;
    background: transparent;
}

.match-statistics__distribution > .match-statistics__distribution-home {
    border-radius: 999px 0 0 999px;
    border-right: 3px solid #fff;
}

.match-statistics__distribution > .match-statistics__distribution-away {
    border-radius: 0 999px 999px 0;
}

.match-statistics__row--distribution .match-statistics__value {
    width: max-content;
    padding: .18rem .55rem;
    border-radius: 999px;
    font-size: .9rem;
}

.match-statistics__row--distribution .match-statistics__value--home {
    background: var(--statistics-home);
    color: var(--statistics-home-text);
}

.match-statistics__row--distribution .match-statistics__value--away {
    justify-self: end;
    background: var(--statistics-away);
    color: var(--statistics-away-text);
}

.event-related-news__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.event-related-news__grid > li {
    min-width: 0;
}

.event-related-news__card {
    display: grid;
    grid-template-columns: 7.5rem minmax(0, 1fr);
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    transition: border-color .18s ease, transform .18s ease;
}

.event-related-news__card:hover,
.event-related-news__card:focus-within {
    border-color: var(--border-strong);
    transform: translateY(-1px);
}

.event-related-news__media {
    display: grid;
    overflow: hidden;
    min-height: 7.2rem;
    place-items: center;
    background: var(--surface-soft);
    color: var(--brand);
    font-size: 2rem;
    text-decoration: none;
}

.event-related-news__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.event-related-news__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    padding: .75rem;
}

.event-related-news__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .2rem .45rem;
    margin: 0 0 .35rem;
    color: var(--muted);
    font-size: var(--sport-taxonomy-font-size);
    line-height: 1.3;
}

.event-related-news__meta time {
    display: inline-flex;
    align-items: center;
}

.event-related-news__sport + time::before {
    width: .2rem;
    height: .2rem;
    flex: 0 0 auto;
    margin-right: .45rem;
    border-radius: 50%;
    background: currentColor;
    content: "";
}

.event-related-news__card h3 {
    margin: 0;
    color: var(--brand);
    font-size: .92rem;
    line-height: 1.3;
    letter-spacing: -.01em;
}

.event-related-news__card h3 a {
    color: inherit;
    text-decoration: none;
}

.entity-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .7rem;
}

.entity-card {
    min-width: 0;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--surface);
    box-shadow: 0 .08rem .25rem rgb(17 36 63 / 4%);
}

.entity-card__link {
    display: flex;
    align-items: center;
    gap: .7rem;
    height: 100%;
    min-height: 5.25rem;
    padding: .7rem;
    color: var(--brand);
    text-decoration: none;
}

.entity-card:hover {
    border-color: var(--border-strong);
    box-shadow: var(--shadow);
    transform: translateY(-1px);
}

.entity-card__visual {
    display: grid;
    flex: 0 0 3.6rem;
    place-items: center;
    width: 3.6rem;
    aspect-ratio: 1;
    border-radius: .55rem;
    background: var(--media-background);
}

.entity-card__visual img {
    width: 80%;
    height: 80%;
    object-fit: contain;
}

.entity-card__fallback {
    color: var(--fallback);
    font-size: .83rem;
    font-weight: var(--font-weight-extrabold);
}

.entity-card__sport-emoji {
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    font-size: 2rem;
    font-weight: 400;
    line-height: 1;
}

.entity-card__sport-emoji.sport-emoji--sequence {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    white-space: nowrap;
}

.entity-card__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.entity-card__body strong {
    overflow: hidden;
    font-size: .88rem;
    line-height: 1.25;
    text-overflow: ellipsis;
}

.entity-card__body small {
    margin-top: .2rem;
    color: var(--muted);
    font-size: var(--font-size-caption);
}

.entity-card__stats {
    display: flex;
    flex-wrap: wrap;
    gap: .25rem;
}

.entity-card__stat {
    display: inline-flex;
    align-items: center;
    min-height: 1.35rem;
    padding: .1rem .38rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--muted);
    font-weight: var(--font-weight-bold);
    line-height: 1;
    white-space: nowrap;
}

.entity-card__stat--upcoming {
    min-height: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.entity-card__stat--live {
    gap: .3rem;
    border-color: transparent;
    background: var(--live);
    color: var(--on-live);
}

.entity-card__stat--live::before {
    width: .38rem;
    height: .38rem;
    flex: 0 0 .38rem;
    border-radius: 50%;
    background: currentColor;
    content: "";
}

.sport-directory-section {
    margin-top: 2.25rem;
}

.sport-directory-section__empty {
    margin: 0;
    color: var(--muted);
}

.sport-directory-az {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .45rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sport-directory-az a {
    display: flex;
    align-items: center;
    gap: .55rem;
    min-height: 2.75rem;
    padding: .5rem .65rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--surface);
    color: var(--brand);
    font-size: .82rem;
    font-weight: var(--font-weight-bold);
    line-height: 1.2;
    text-decoration: none;
}

.sport-directory-az a:hover,
.sport-directory-az a:focus-visible {
    border-color: var(--border-strong);
    box-shadow: 0 .08rem .25rem rgb(17 36 63 / 6%);
}

.sport-directory-az__emoji {
    display: inline-flex;
    flex: 0 0 1.35rem;
    align-items: center;
    justify-content: center;
    width: 1.35rem;
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1;
}

.sport-directory-az__emoji.sport-emoji--sequence {
    font-size: .7rem;
    white-space: nowrap;
}

.entity-card__country-flag {
    display: inline-block;
    width: 1rem;
    height: .72rem;
    margin-inline-start: .08rem;
    object-fit: cover;
    vertical-align: -.08rem;
}

.entity-card__arrow {
    margin-left: auto;
    color: var(--arrow-muted);
    font-size: 1.4rem;
}

.directory-filters {
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    gap: .7rem;
    margin-bottom: 1rem;
    padding: .85rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
}

.directory-filters label {
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.directory-filters label span {
    color: var(--muted);
    font-size: .72rem;
    font-weight: var(--font-weight-bold);
}

.directory-filters button {
    min-height: 2.75rem;
}

.directory-filters__reset {
    display: grid;
    flex: 0 0 2.75rem;
    width: 2.75rem;
    min-height: 2.75rem;
    border: 1px solid var(--border-strong);
    border-radius: .55rem;
    background: var(--surface-soft);
    color: var(--brand);
    place-items: center;
    text-decoration: none;
}

.directory-filters__reset:hover,
.directory-filters__reset:focus-visible {
    background: var(--brand-surface);
    color: var(--on-brand);
}

.directory-filters__reset svg {
    width: 1.25rem;
    height: 1.25rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.secondary-link {
    padding: .65rem;
    font-size: .8rem;
}

.directory-filter-notice {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    margin: 0 0 1rem;
    padding: .75rem .85rem;
    border: 1px solid color-mix(in srgb, var(--link) 35%, var(--border));
    border-radius: .65rem;
    background: color-mix(in srgb, var(--link) 7%, var(--surface));
    color: var(--text);
    font-size: .82rem;
    line-height: 1.45;
}

.directory-filter-notice svg {
    flex: 0 0 auto;
    width: 1.15rem;
    height: 1.15rem;
    margin-top: .05rem;
    fill: none;
    stroke: var(--link);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.directory-filter-notice p {
    margin: 0;
}

.directory-filter-notice strong {
    color: var(--brand);
}

.result-count {
    color: var(--muted);
    font-size: .82rem;
}

.result-count strong {
    color: var(--text);
}

.result-count .result-count__live {
    color: var(--live);
}

.directory-pagination {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: .75rem;
    margin-top: 1.4rem;
}

.directory-pagination__direction,
.directory-pagination__pages > a,
.directory-pagination__pages > span {
    display: inline-grid;
    min-width: 2.75rem;
    min-height: 2.75rem;
    place-items: center;
    padding: .4rem .65rem;
    border: 1px solid var(--border);
    border-radius: .6rem;
    background: var(--surface);
    color: var(--brand);
    font-size: .82rem;
    font-weight: var(--font-weight-bold);
    line-height: 1;
    text-decoration: none;
}

.directory-pagination__direction {
    display: inline-flex;
    gap: .4rem;
    width: max-content;
}

.directory-pagination__direction--previous {
    grid-column: 1;
    justify-self: start;
}

.directory-pagination__direction--next {
    grid-column: 3;
    justify-self: end;
}

.directory-pagination__pages {
    display: flex;
    grid-column: 2;
    align-items: center;
    justify-content: center;
    gap: .35rem;
}

.directory-pagination__pages .directory-pagination__ellipsis {
    min-width: 1rem;
    padding-inline: 0;
    border-color: transparent;
    background: transparent;
    color: var(--muted);
}

.directory-pagination__pages .directory-pagination__current {
    border-color: var(--brand-surface);
    background: var(--brand-surface);
    color: var(--on-brand);
}

.directory-pagination a:hover,
.directory-pagination a:focus-visible {
    border-color: var(--brand-surface);
    background: var(--surface-soft);
}

.directory-pagination a:focus-visible {
    outline: 3px solid var(--link);
    outline-offset: 2px;
}

.article-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
}

.article-list h2 a {
    color: var(--brand);
}

.article-list p {
    font-size: .85rem;
}

.empty-state {
    padding: 1rem;
    border: 1px dashed var(--border-strong);
    border-radius: .6rem;
    background: var(--surface);
    color: var(--muted);
}

.directory-empty-state h2 {
    margin: 0;
    color: var(--text);
    font-size: 1.05rem;
}

.directory-empty-state p {
    margin: .35rem 0 0;
}

.directory-empty-state__action {
    margin-top: .35rem;
    padding-left: 0;
    padding-right: 0;
}

.schedule-filter-empty > p {
    margin: 0;
}

.schedule-filter-empty__actions {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: .8rem;
}

.schedule-filter-empty__actions a,
.schedule-filter-empty__actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: .55rem .8rem;
    border: 1px solid var(--brand-surface);
    border-radius: .5rem;
    background: var(--brand-surface);
    color: var(--on-brand);
    font-size: .82rem;
    font-weight: 800;
    text-decoration: none;
}

.schedule-filter-empty__actions a:hover,
.schedule-filter-empty__actions a:focus-visible,
.schedule-filter-empty__actions button:hover,
.schedule-filter-empty__actions button:focus-visible {
    background: var(--brand-surface-hover);
    color: var(--on-brand);
}

.schedule-filter-empty__actions a:focus-visible,
.schedule-filter-empty__actions button:focus-visible {
    outline: 3px solid var(--link);
    outline-offset: 2px;
}

.recovery-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    margin-top: 1rem;
}

.recovery-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: .55rem .8rem;
    border: 1px solid var(--border-strong);
    border-radius: .5rem;
    font-size: .82rem;
    font-weight: 800;
    text-decoration: none;
}

.recovery-actions a:focus-visible {
    outline: 3px solid var(--link);
    outline-offset: 2px;
}

.recovery-actions .recovery-actions__retry {
    border-color: var(--brand-surface);
    background: var(--brand-surface);
    color: var(--on-brand);
}

.recovery-actions__retry:hover,
.recovery-actions__retry:focus-visible {
    background: var(--brand-surface-hover);
    color: var(--on-brand);
}

.recovery-actions__home {
    background: var(--surface);
    color: var(--link);
}

.recovery-actions__home:hover,
.recovery-actions__home:focus-visible {
    background: var(--surface-soft);
}

.state {
    color: var(--muted);
    font-size: .82rem;
}

.table-scroll-shell {
    --scroll-hint-width: 2.75rem;
    position: relative;
    isolation: isolate;
}

.table-scroll {
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    border-radius: .6rem;
    scroll-padding-inline: calc(var(--scroll-hint-width) + .4rem);
}

.table-scroll:focus-visible {
    outline: 3px solid var(--link);
    outline-offset: 3px;
}

.table-scroll-shell__hint {
    position: absolute;
    z-index: 4;
    inset-block-start: 0;
    display: grid;
    width: var(--scroll-hint-width);
    height: 2.85rem;
    place-items: center;
    color: var(--on-brand);
    font-size: 1.5rem;
    font-weight: 900;
    line-height: 1;
    opacity: 0;
    pointer-events: none;
    transition: opacity .15s ease;
}

.table-scroll-shell__hint--start {
    inset-inline-start: 3rem;
    justify-items: start;
    padding-inline-start: .25rem;
    background: linear-gradient(to right, var(--brand-surface), transparent);
}

.table-scroll-shell__hint--end {
    inset-inline-end: 0;
    justify-items: end;
    padding-inline-end: .25rem;
    background: linear-gradient(to left, var(--brand-surface), transparent);
}

.table-scroll-shell[data-can-scroll-start="true"] .table-scroll-shell__hint--start,
.table-scroll-shell[data-can-scroll-end="true"] .table-scroll-shell__hint--end {
    opacity: 1;
}

table {
    width: 100%;
    border-collapse: collapse;
    background: var(--surface);
    font-size: .84rem;
}

th,
td {
    padding: .55rem;
    border: 1px solid var(--border);
    text-align: left;
    white-space: nowrap;
}

thead th {
    background: var(--brand-surface);
    color: var(--on-brand);
}

.standing-table {
    min-width: 42rem;
    table-layout: fixed;
}

.standing > h1.standing__heading {
    margin: .83em 0;
    font-size: 1.5em;
}

.standing__heading-weight {
    display: inline-flex;
    margin-left: .35rem;
    padding: .2rem .48rem;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: .55em;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    vertical-align: .18em;
    white-space: nowrap;
}

.standing-switch {
    display: inline-flex;
    gap: .3rem;
    margin-bottom: 1rem;
    padding: .28rem;
    border: 1px solid var(--border);
    border-radius: .65rem;
    background: var(--surface-soft);
}

.standing-switch a {
    min-width: 4.75rem;
    padding: .5rem .85rem;
    border: 0;
    border-radius: .45rem;
    background: transparent;
    color: var(--muted);
    font: inherit;
    font-weight: 800;
    text-align: center;
    text-decoration: none;
}

.standing-switch a:hover,
.standing-switch a:focus-visible {
    color: var(--text);
}

.standing-switch a[aria-current="page"] {
    background: var(--brand-surface);
    color: var(--on-brand);
    box-shadow: var(--shadow-sm);
}

.standing-table--ranking {
    min-width: 28rem;
}

.standing-table--mma {
    min-width: 24rem;
}

.mma-category-access {
    margin-top: 1rem;
    margin-bottom: 2rem;
}

.mma-category-access__group + .mma-category-access__group {
    margin-top: 1.25rem;
}

.mma-category-access__group-title {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin: 0 0 .55rem;
    color: var(--text);
    font-size: .9rem;
    line-height: 1;
}

.mma-category-access__group-title::after {
    height: 1px;
    flex: 1 1 auto;
    background: var(--border);
    content: "";
}

.mma-category-access .entity-card__visual img {
    object-position: center bottom;
}

.mma-category-access__champion {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
}

.mma-category-access__champion img {
    width: 1.35rem;
    height: .85rem;
    flex: 0 0 auto;
    object-fit: contain;
}

.mma-category-access__weight {
    margin-top: .12rem;
    color: var(--muted);
    font-size: .7rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
}

.standing {
    scroll-margin-top: 1rem;
}

.standing-table__position-column {
    width: 3rem;
}

.standing-table__points-column {
    width: 4.25rem;
}

.standing-table__stat-column {
    width: 3.75rem;
}

.standing-table__difference-column {
    width: 4.5rem;
}

.standing-table__movement-column {
    width: 5rem;
}

.standing-table th:first-child,
.standing-table td:first-child {
    box-sizing: border-box;
    position: sticky;
    z-index: 1;
    inset-inline-start: 0;
    width: 3rem;
    min-width: 3rem;
    max-width: 3rem;
    padding-inline: .35rem;
    background: var(--surface);
    box-shadow: 1px 0 var(--border);
    text-align: center;
}

.standing-table thead th:first-child {
    z-index: 3;
    background: var(--brand-surface);
    box-shadow: 1px 0 color-mix(in srgb, var(--on-brand) 20%, transparent);
}

.standing-table--mma .standing-table__position-column,
.standing-table--mma th:first-child,
.standing-table--mma td:first-child {
    width: 8rem;
    min-width: 8rem;
    max-width: 8rem;
}

.standing-table--mma tbody th,
.standing-table--mma tbody td {
    vertical-align: middle;
}

.standing-table--mma .standing-participant {
    display: flex;
}

.mma-champion-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    color: inherit;
    font-weight: 800;
    white-space: nowrap;
}

.mma-champion-badge img {
    width: 1.9rem;
    height: 1.2rem;
    flex: 0 0 auto;
    object-fit: contain;
}

.standing-table thead abbr {
    text-decoration-color: color-mix(in srgb, currentColor 55%, transparent);
    text-underline-offset: .16em;
}

.standing-table th:nth-child(n + 3),
.standing-table td:nth-child(n + 3) {
    text-align: center;
}

.standing-participant {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
}

.standing-participant a {
    text-decoration: none;
}

.standing-participant a:hover,
.standing-participant a:focus-visible {
    text-decoration: underline;
    text-decoration-thickness: .08em;
}

.standing-participant img {
    width: 1.5rem;
    height: 1.5rem;
    object-fit: contain;
}

.standing-participant img.standing-country-flag {
    width: 1.25rem;
    height: .875rem;
    object-fit: cover;
    border-radius: .12rem;
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);
}

.link-grid,
.checkbox-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
    gap: .75rem;
}

.embed-container {
    position: relative;
    max-width: 50rem;
    aspect-ratio: 16 / 9;
}

.embed-container iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.event-stream__player {
    overflow: hidden;
    max-width: none;
    border-radius: var(--radius);
    background: #000;
}

.event-stream__provider {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
}

.event-stream__actions {
    display: flex;
    justify-content: flex-end;
    margin-top: .8rem;
}

.article-introduction {
    font-size: 1.15rem;
}

.article-content img,
.article-content iframe {
    max-width: 100%;
}

.search-page-form {
    max-width: 45rem;
    margin-bottom: 1.5rem;
}

.search-page-form > div {
    display: flex;
    gap: .5rem;
    margin-top: .35rem;
}

.search-page-form input {
    flex: 1;
}

.search-empty-state {
    max-width: 45rem;
}

.search-empty-state h2 {
    margin: 0;
    color: var(--text);
    font-size: 1.15rem;
}

.search-empty-state p {
    margin: .35rem 0 0;
}

.search-empty-state__links {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .9rem;
}

.search-empty-state__links a {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    padding: .45rem .65rem;
    border: 1px solid var(--border);
    border-radius: .45rem;
    background: var(--surface-soft);
    color: var(--link);
    font-size: .8rem;
    font-weight: 800;
    text-decoration: none;
}

.search-empty-state__links a:hover,
.search-empty-state__links a:focus-visible {
    border-color: var(--border-strong);
    background: var(--surface);
    text-decoration: underline;
}

.search-results {
    display: grid;
    gap: 1.65rem;
}

.search-category h2 {
    margin: 0 0 .7rem;
    font-size: 1.25rem;
}

.search-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.search-result-card {
    display: grid;
    grid-template-columns: 5.4rem minmax(0, 1fr) 1.4rem;
    min-height: 5.4rem;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
    color: var(--text);
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.search-result-card:hover,
.search-result-card:focus-visible {
    border-color: var(--brand-2);
    box-shadow: 0 .35rem 1rem rgb(17 36 63 / 13%);
    color: var(--text);
    transform: translateY(-1px);
}

.search-result-card__visual {
    display: grid;
    place-items: center;
    min-width: 0;
    padding: .55rem;
    background: var(--media-background);
}

.search-result-card__visual > img {
    width: 100%;
    height: 100%;
    max-width: 4rem;
    max-height: 4rem;
    object-fit: contain;
}

.search-result-card__visual--cover {
    padding: 0;
}

.search-result-card__visual--cover > img {
    max-width: none;
    max-height: none;
    object-fit: cover;
}

.search-result-card__fallback {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: 50%;
    background: var(--surface);
    color: var(--brand-2);
    font-size: 1.15rem;
    font-weight: 900;
    letter-spacing: -.04em;
}

.search-result-card--sports .search-result-card__fallback,
.search-result-card--articles .search-result-card__fallback {
    background: transparent;
    font-size: 2rem;
    letter-spacing: normal;
}

.search-result-card__sport-icon {
    margin: 0;
}

.search-result-card__sport-icon.sport-emoji--sequence {
    justify-content: center;
    font-size: .75rem;
}

.search-result-card__matchup {
    display: flex;
    align-items: center;
    gap: .18rem;
}

.search-result-card__team {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    padding: .18rem;
    border: 1px solid var(--border);
    border-radius: .45rem;
    background: var(--surface);
    color: var(--brand-2);
    font-size: .62rem;
    font-weight: 900;
}

.search-result-card__team img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.search-result-card__versus {
    color: var(--muted);
    font-size: .75rem;
    font-weight: 800;
}

.search-result-card__body {
    display: flex;
    align-self: center;
    flex-direction: column;
    min-width: 0;
    padding: .65rem .75rem;
}

.search-result-card__body strong {
    display: -webkit-box;
    overflow: hidden;
    font-size: .98rem;
    line-height: 1.25;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
}

.search-result-card__body small {
    display: flex;
    flex-wrap: wrap;
    gap: .1rem .35rem;
    margin-top: .32rem;
    color: var(--muted);
    font-size: .76rem;
}

.search-result-card__body small > * + *::before {
    margin-right: .35rem;
    content: "·";
}

.search-result-card__arrow {
    align-self: center;
    color: var(--arrow-muted);
    font-size: 1.7rem;
    line-height: 1;
    transition: color .18s ease, transform .18s ease;
}

.search-result-card:hover .search-result-card__arrow,
.search-result-card:focus-visible .search-result-card__arrow {
    color: var(--brand-2);
    transform: translateX(.1rem);
}

.preferences-form fieldset {
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
}

.preferences-form[data-preferences-initializing="true"] fieldset,
.preferences-form[data-preferences-initializing="true"] .form-actions {
    opacity: .65;
}

.preferences-script-warning {
    margin: 0 0 1rem;
    padding: .8rem .9rem;
    border: 1px solid color-mix(in srgb, var(--error) 35%, var(--border));
    border-radius: var(--radius);
    background: color-mix(in srgb, var(--error) 7%, var(--surface));
    color: var(--text);
    font-weight: 700;
}

.account-page {
    max-width: 56rem;
    margin-inline: auto;
}

.favorite-control {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .45rem;
    margin-top: 1rem;
}

.favorite-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    min-height: 2.55rem;
    padding: .55rem .8rem;
    border: 1px solid var(--border-strong);
    border-radius: .55rem;
    background: var(--surface);
    color: var(--text);
    font: inherit;
    font-size: .88rem;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
}

.favorite-button:hover,
.favorite-button:focus-visible {
    border-color: var(--brand);
    background: var(--surface-soft);
    color: var(--brand);
}

.favorite-button svg {
    width: 1.15rem;
    height: 1.15rem;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.favorite-button--active {
    border-color: color-mix(in srgb, var(--error) 55%, var(--border));
    color: var(--error);
}

.favorite-button--active svg {
    fill: currentColor;
}

.favorite-button--login {
    margin-top: 1rem;
}

.hero-actions {
    position: absolute;
    z-index: 3;
    top: .85rem;
    right: 1rem;
    display: flex;
    align-items: center;
    gap: .45rem;
}

.hero-actions .admin-link--hero-corner {
    position: static;
    width: 2.75rem;
    height: 2.75rem;
}

.subscription-page {
    margin-top: 1.25rem;
}

.subscription-page__heading {
    max-width: 46rem;
    margin-bottom: 1rem;
}

.subscription-page__heading h2,
.subscription-page__heading h1 {
    margin: .1rem 0 .3rem;
    color: var(--brand);
    font-size: clamp(1.55rem, 3vw, 2.1rem);
    line-height: 1.12;
    letter-spacing: -.025em;
}

.subscription-page__heading > p:last-child,
.subscription-page__note {
    margin: 0;
    color: var(--muted);
    font-size: .88rem;
}

.subscription-page__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 1rem;
}

.subscription-card {
    display: grid;
    grid-template-columns: 3.25rem minmax(0, 1fr);
    gap: 1rem;
    min-width: 0;
    padding: 1.25rem;
    border: 1px solid var(--border);
    border-radius: 1rem;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.subscription-card__icon {
    display: grid;
    place-items: center;
    width: 3.25rem;
    height: 3.25rem;
    border-radius: .85rem;
    background: color-mix(in srgb, var(--link) 12%, var(--surface));
    color: var(--link);
}

.subscription-card__icon--rss {
    background: color-mix(in srgb, #f97316 13%, var(--surface));
    color: #df5d08;
}

.subscription-card__icon svg {
    width: 1.5rem;
    height: 1.5rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.subscription-card__body {
    min-width: 0;
}

.subscription-card__format {
    display: inline-flex;
    padding: .16rem .38rem;
    border-radius: .32rem;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-extrabold);
    letter-spacing: .08em;
}

.subscription-card h3 {
    margin: .35rem 0 .3rem;
    color: var(--brand);
    font-size: 1.1rem;
}

.subscription-card__body > p:first-of-type {
    min-height: 3.7em;
    margin: 0;
    color: var(--muted);
    font-size: .82rem;
}

.subscription-card__provider-title {
    margin: 1rem 0 0;
    color: var(--brand);
    font-size: .76rem;
    font-weight: var(--font-weight-extrabold);
}

.subscription-providers {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    margin-top: .55rem;
}

.subscription-provider {
    display: flex;
    align-items: center;
    gap: .62rem;
    min-width: 0;
    min-height: 3.3rem;
    padding: .55rem .65rem;
    border: 1px solid var(--border);
    border-radius: .68rem;
    background: var(--surface-soft);
    color: var(--brand);
    text-decoration: none;
    transition: border-color .16s ease, background-color .16s ease, transform .16s ease;
}

.subscription-provider:hover,
.subscription-provider:focus-visible {
    border-color: color-mix(in srgb, var(--link) 48%, var(--border));
    background: color-mix(in srgb, var(--link) 7%, var(--surface));
    color: var(--brand);
    text-decoration: none;
    transform: translateY(-1px);
}

.subscription-provider__mark {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 2rem;
    height: 2rem;
    border-radius: .52rem;
    background: var(--surface);
    color: var(--brand);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, currentColor 12%, transparent);
    font-size: .83rem;
    font-weight: 900;
    letter-spacing: -.04em;
}

.subscription-provider__mark img {
    display: block;
    width: 1.35rem;
    height: 1.35rem;
    object-fit: contain;
}

.subscription-provider--yahoo .subscription-provider__mark img {
    width: 1.55rem;
    height: auto;
}

html[data-theme="dark"] .subscription-provider--apple .subscription-provider__mark img {
    filter: invert(1);
}

.subscription-provider > span:last-child {
    min-width: 0;
}

.subscription-provider strong,
.subscription-provider small {
    display: block;
}

.subscription-provider strong {
    overflow: hidden;
    font-size: .75rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.subscription-provider small {
    margin-top: .12rem;
    color: var(--muted);
    font-size: var(--font-size-caption);
    line-height: 1.2;
}

.subscription-card__primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.55rem;
    margin-top: 1rem;
    padding: .55rem .8rem;
    border-radius: .55rem;
    background: var(--brand-surface);
    color: var(--on-brand);
    font-size: .8rem;
    font-weight: 800;
    text-decoration: none;
}

.subscription-card__primary:hover,
.subscription-card__primary:focus-visible {
    background: var(--brand-surface-hover);
    color: var(--on-brand);
    text-decoration: none;
}

.subscription-card__label {
    display: block;
    margin-top: 1rem;
    color: var(--muted);
    font-size: var(--font-size-small);
    font-weight: var(--font-weight-bold);
}

.subscription-card__link {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .4rem;
    margin-top: .32rem;
}

.subscription-card__link input {
    min-width: 0;
    height: 2.4rem;
    padding: .45rem .55rem;
    border: 1px solid var(--border);
    border-radius: .48rem;
    background: var(--input-background);
    color: var(--muted);
    font-size: .7rem;
}

.subscription-card__link button {
    display: none;
    min-height: 2.4rem;
    padding: .45rem .65rem;
    border-radius: .48rem;
    font-size: .72rem;
}

html.js .subscription-card__link button {
    display: inline-flex;
    align-items: center;
}

.subscription-card__link button.is-copied,
.subscription-card__link button.is-copied:hover {
    border-color: var(--result-highlight);
    background: var(--result-highlight);
    color: #fff;
}

html[data-theme="dark"] .subscription-card__link button.is-copied,
html[data-theme="dark"] .subscription-card__link button.is-copied:hover {
    color: #0b1320;
}

.subscription-page__note {
    margin-top: .85rem;
}

.subscription-page__help-link {
    display: inline-block;
    margin-left: .25rem;
    color: var(--link);
    font-weight: 800;
}

.calendar-help-page {
    max-width: 68rem;
    margin-inline: auto;
}

.calendar-help-page__header {
    max-width: 52rem;
    margin-bottom: clamp(1.75rem, 4vw, 2.5rem);
}

.calendar-help-page__header > p:last-child {
    font-size: clamp(.95rem, 2vw, 1.08rem);
    line-height: 1.65;
}

.calendar-help-page__section + .calendar-help-page__section,
.calendar-help-page__section + .calendar-help-legacy,
.calendar-help-legacy + .calendar-help-page__section {
    margin-top: 1.5rem;
}

.calendar-help-page__section-heading {
    margin-bottom: .85rem;
}

.calendar-help-page__section-heading h2,
.calendar-help-page__details h2,
.calendar-help-legacy h2 {
    margin: .1rem 0 0;
    color: var(--brand);
    font-size: clamp(1.2rem, 2.5vw, 1.55rem);
    line-height: 1.2;
    letter-spacing: -.02em;
}

.calendar-help-page__choices {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .85rem;
}

.calendar-help-choice {
    display: grid;
    grid-template-columns: 2.9rem minmax(0, 1fr) auto;
    align-items: center;
    gap: .8rem;
    min-width: 0;
    min-height: 7rem;
    padding: 1rem;
    border: 1px solid var(--border);
    border-radius: .9rem;
    background: var(--surface);
    box-shadow: var(--shadow);
    color: var(--brand);
    text-decoration: none;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.calendar-help-choice:hover,
.calendar-help-choice:focus-visible {
    border-color: color-mix(in srgb, var(--link) 50%, var(--border));
    box-shadow: 0 .35rem 1rem color-mix(in srgb, var(--brand) 14%, transparent);
    color: var(--brand);
    text-decoration: none;
    transform: translateY(-2px);
}

.calendar-help-choice__icon,
.calendar-help-legacy__icon {
    display: grid;
    place-items: center;
    width: 2.9rem;
    height: 2.9rem;
    border-radius: .78rem;
    background: color-mix(in srgb, var(--link) 11%, var(--surface));
    color: var(--link);
}

.calendar-help-choice__icon svg,
.calendar-help-legacy__icon svg {
    width: 1.55rem;
    height: 1.55rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.calendar-help-choice__content {
    min-width: 0;
}

.calendar-help-choice strong,
.calendar-help-choice small {
    display: block;
}

.calendar-help-choice strong {
    font-size: .91rem;
    line-height: 1.25;
}

.calendar-help-choice small {
    margin-top: .3rem;
    color: var(--muted);
    font-size: .76rem;
    line-height: 1.45;
}

.calendar-help-choice__arrow {
    color: var(--link);
    font-size: 1.55rem;
    line-height: 1;
}

.calendar-help-steps {
    padding: clamp(1rem, 3vw, 1.5rem);
    border: 1px solid var(--border);
    border-radius: 1rem;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.calendar-help-steps ol {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.calendar-help-steps li {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr);
    gap: .65rem;
    min-width: 0;
}

.calendar-help-steps__number {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: var(--brand-surface);
    color: var(--on-brand);
    font-size: .78rem;
    font-weight: 900;
}

.calendar-help-steps h3 {
    margin: .25rem 0 .3rem;
    color: var(--brand);
    font-size: .9rem;
}

.calendar-help-steps p,
.calendar-help-legacy p {
    margin: 0;
    color: var(--muted);
    font-size: .8rem;
    line-height: 1.55;
}

.calendar-help-legacy {
    display: grid;
    grid-template-columns: 3.2rem minmax(0, 1fr);
    align-items: center;
    gap: 1rem;
    padding: 1.1rem 1.2rem;
    border: 1px solid color-mix(in srgb, var(--result-highlight) 42%, var(--border));
    border-radius: .9rem;
    background: color-mix(in srgb, var(--result-highlight) 7%, var(--surface));
}

.calendar-help-legacy__icon {
    width: 3.2rem;
    height: 3.2rem;
    background: color-mix(in srgb, var(--result-highlight) 14%, var(--surface));
    color: var(--result-highlight);
}

.calendar-help-legacy h2 {
    margin-bottom: .35rem;
    font-size: 1.05rem;
}

.calendar-help-page__details {
    padding: 1.1rem 1.2rem;
    border: 1px solid var(--border);
    border-radius: .9rem;
    background: var(--surface-soft);
}

.calendar-help-page__details h2 {
    font-size: 1.05rem;
}

.calendar-help-page__details ul {
    display: grid;
    gap: .45rem;
    margin: .75rem 0 0;
    padding-left: 1.15rem;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.55;
}

.favorite-control--icon {
    position: relative;
    flex: 0 0 auto;
    margin: 0;
}

.favorite-button--icon {
    width: 2.75rem;
    height: 2.75rem;
    min-height: 0;
    padding: 0;
    border-radius: 50%;
    background: var(--surface-soft);
    color: var(--brand);
    box-shadow: 0 .15rem .45rem rgb(17 24 39 / 14%);
}

.favorite-button--icon.favorite-button--login {
    margin: 0;
}

.favorite-button--icon.favorite-button--active {
    border-color: currentColor;
    color: var(--error);
}

.favorite-button--icon:hover,
.favorite-button--icon:focus-visible {
    border-color: currentColor;
    background: var(--brand);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 .25rem .65rem rgb(17 24 39 / 22%);
}

.favorite-button--icon.favorite-button--active:hover,
.favorite-button--icon.favorite-button--active:focus-visible {
    background: var(--error);
    color: var(--on-danger);
}

.favorite-button--icon svg {
    width: 1.2rem;
    height: 1.2rem;
}

.favorite-control--icon .favorite-control__status {
    position: absolute;
    top: calc(100% + .4rem);
    right: 0;
    width: max-content;
    max-width: min(16rem, 72vw);
    padding: .4rem .55rem;
    border-radius: .4rem;
    background: var(--surface);
    box-shadow: var(--shadow);
    color: var(--error);
    font-size: .72rem;
}

.event-hero .hero-actions .favorite-button--icon {
    border-color: rgb(255 255 255 / 42%);
    background: rgb(7 18 31 / 58%);
    color: #fff;
    box-shadow: 0 .2rem .55rem rgb(0 0 0 / 22%);
}

.event-hero .hero-actions .favorite-button--icon.favorite-button--active {
    color: #ff8d94;
}

.event-hero .hero-actions .favorite-button--icon:hover,
.event-hero .hero-actions .favorite-button--icon:focus-visible {
    background: #fff;
    color: var(--brand);
}

.event-hero .hero-actions .favorite-button--icon.favorite-button--active:hover,
.event-hero .hero-actions .favorite-button--icon.favorite-button--active:focus-visible {
    background: var(--error);
    color: var(--on-danger);
}

.favorite-control__status {
    flex-basis: 100%;
    color: var(--error);
    font-size: .78rem;
}

.account-page__header {
    max-width: 46rem;
}

.account-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.account-login-grid {
    display: grid;
    grid-template-columns: minmax(17rem, .85fr) minmax(0, 1.5fr);
    align-items: start;
    gap: 1rem;
}

.account-login-grid .account-panel {
    max-width: none;
}

.account-panel {
    max-width: 36rem;
}

.account-grid .account-panel {
    max-width: none;
}

.account-favorites {
    max-width: none;
    margin-top: 1rem;
}

.account-favorites--summary {
    padding-block: 1rem;
}

.account-favorites__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.account-favorites__header .eyebrow,
.account-favorites__header h2 {
    margin: 0;
}

.account-favorites__count {
    display: inline-grid;
    min-width: 2rem;
    min-height: 2rem;
    place-items: center;
    padding-inline: .55rem;
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: .78rem;
    font-weight: 900;
}

.account-favorites__empty {
    margin: 0;
    color: var(--muted);
}

.account-favorites--summary .account-action {
    margin-top: .35rem;
}

.account-favorites__groups {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.account-favorite-group h3 {
    margin: 0 0 .55rem;
    font-size: .9rem;
}

.account-favorite-group ul {
    display: grid;
    gap: .5rem;
    padding: 0;
    margin: 0;
    list-style: none;
}

.account-favorite-group li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .55rem;
    min-width: 0;
    padding: .6rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--surface-soft);
}

.account-favorite__copy {
    display: grid;
    min-width: 0;
    gap: .12rem;
}

.account-favorite__copy a,
.account-favorite__copy strong {
    overflow: hidden;
    color: var(--text);
    font-size: .83rem;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.account-favorite__copy small {
    overflow: hidden;
    color: var(--muted);
    font-size: .7rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.favorite-control--compact {
    flex: 0 0 auto;
    margin: 0;
}

.favorite-control--compact .favorite-button,
.favorite-button--compact {
    min-height: 2rem;
    padding: .35rem .5rem;
    font-size: .72rem;
}

.favorite-control--compact .favorite-button svg,
.favorite-button--compact svg {
    width: .9rem;
    height: .9rem;
}

.favorites-page__header .secondary-link {
    margin-top: .25rem;
}

.favorites-page__summary {
    display: flex;
    align-items: baseline;
    gap: .45rem;
    margin-bottom: 1rem;
    color: var(--muted);
}

.favorites-page__summary strong {
    color: var(--brand);
    font-size: 1.65rem;
    line-height: 1;
}

.favorites-empty-state {
    max-width: none;
    text-align: center;
}

.favorites-empty-state h2,
.favorites-empty-state p {
    margin-top: 0;
}

.favorites-empty-state__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem 1rem;
    font-weight: 800;
}

.favorites-page__sections {
    display: grid;
    gap: 1rem;
}

.favorite-section {
    max-width: none;
}

.favorite-section__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .75rem;
}

.favorite-section__header h2,
.favorite-section__header span {
    margin: 0;
}

.favorite-section__header > span:last-child {
    display: inline-grid;
    min-width: 1.7rem;
    min-height: 1.7rem;
    place-items: center;
    padding-inline: .4rem;
    border-radius: 999px;
    background: var(--surface-soft);
    color: var(--muted);
    font-size: .72rem;
    font-weight: 900;
}

.favorite-section .favorite-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.favorite-section--past summary {
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: var(--font-weight-extrabold);
    cursor: pointer;
    list-style: none;
}

.favorite-section--past summary::-webkit-details-marker {
    display: none;
}

.favorite-section--past summary::before {
    flex: 0 0 auto;
    content: "›";
    color: var(--muted);
    font-size: 1.35rem;
    line-height: 1;
    transform: rotate(0deg);
    transition: transform .15s ease;
}

.favorite-section--past[open] summary::before {
    transform: rotate(90deg);
}

.favorite-section--past summary > span:first-child {
    margin-right: auto;
}

.favorite-section--past[open] summary {
    margin-bottom: .75rem;
}

.account-form {
    display: grid;
    gap: .65rem;
}

.account-form label {
    font-weight: 800;
}

.account-form input[type="email"] {
    width: 100%;
    padding: .68rem .75rem;
    border: 1px solid var(--border-strong);
    border-radius: .45rem;
    background: var(--input-background);
    color: var(--text);
    font: inherit;
}

.account-form button {
    justify-self: start;
}

.account-privacy {
    margin-bottom: 0;
    color: var(--muted);
    font-size: .82rem;
}

.account-benefits h2 {
    margin-bottom: .45rem;
}

.account-benefits__intro {
    margin: 0 0 1rem;
    color: var(--muted);
    font-size: .82rem;
    line-height: 1.5;
}

.account-benefits__list {
    display: grid;
    gap: 1rem;
    padding: 0;
    margin: 0;
    list-style: none;
}

.account-benefits__list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .2rem .65rem;
    align-items: center;
    padding-bottom: .85rem;
    border-bottom: 1px solid var(--border);
}

.account-benefits__list li:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.account-benefits__list strong,
.account-benefits__list small {
    grid-column: 2;
}

.account-benefits__list small {
    color: var(--muted);
    line-height: 1.45;
}

.account-benefits__badge {
    grid-column: 1;
    grid-row: 1 / span 2;
    align-self: start;
    padding: .22rem .42rem;
    border-radius: 999px;
    background: #dff6e8;
    color: #126b3a;
    font-size: var(--font-size-caption);
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.account-benefits__badge--soon {
    background: var(--surface-soft);
    color: var(--muted);
}

.account-message {
    padding: .8rem 1rem;
    border: 1px solid var(--border);
    border-radius: .55rem;
    background: var(--surface-soft);
}

.account-message--error {
    border-color: var(--error);
    color: var(--error);
}

.account-message--success {
    border-color: #18a558;
}

.account-details {
    display: grid;
    gap: .8rem;
}

.account-details div {
    display: grid;
    gap: .15rem;
}

.account-details dt {
    color: var(--muted);
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.account-details dd {
    margin: 0;
    overflow-wrap: anywhere;
}

.account-action,
.secondary-link {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    font-weight: 800;
}

.secondary-link[aria-disabled="true"] {
    color: var(--muted);
    cursor: wait;
    opacity: .65;
    text-decoration: none;
}

.account-danger {
    margin-top: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem 1.25rem;
    padding: .65rem .85rem;
    border: 1px solid color-mix(in srgb, var(--error) 45%, var(--border));
    border-radius: .6rem;
}

.account-danger__copy {
    display: flex;
    align-items: baseline;
    gap: .45rem;
    min-width: 0;
}

.account-danger h2,
.account-danger a {
    color: var(--error);
}

.account-danger h2,
.account-danger p {
    margin: 0;
}

.account-danger h2 {
    flex: 0 0 auto;
    font-size: .84rem;
}

.account-danger p {
    overflow: hidden;
    color: var(--muted);
    font-size: .78rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.account-danger a {
    flex: 0 0 auto;
    font-size: .8rem;
    font-weight: 800;
    white-space: nowrap;
}

.account-panel--danger {
    border-color: color-mix(in srgb, var(--error) 45%, var(--border));
}

.danger-button {
    border-color: var(--error);
    background: var(--error);
    color: var(--on-danger);
}

.danger-button:hover,
.danger-button:focus-visible {
    border-color: var(--error);
    background: var(--error);
    color: var(--on-danger);
    filter: brightness(.9);
}

button:disabled {
    opacity: .65;
    cursor: wait;
}

@media (max-width: 42rem) {
    .account-grid,
    .account-login-grid {
        grid-template-columns: 1fr;
    }

    .account-danger,
    .account-danger__copy {
        align-items: flex-start;
        flex-direction: column;
    }

    .account-danger p {
        overflow: visible;
        white-space: normal;
    }

    .account-favorites__groups {
        grid-template-columns: 1fr;
    }

    .favorite-section .favorite-list {
        grid-template-columns: 1fr;
    }
}

.preferences-form legend {
    padding-inline: .35rem;
    color: var(--brand);
    font-weight: 800;
}

.preference-options {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem 1.25rem;
}

.preference-display-groups {
    display: grid;
    gap: 1rem;
}

.preference-display-group + .preference-display-group {
    padding-top: 1rem;
    border-top: 1px solid var(--border);
}

.preference-display-group__title {
    margin: 0 0 .55rem;
    color: var(--muted);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.preference-help {
    margin-top: 0;
    color: var(--muted);
    font-size: .85rem;
}

.preference-countries {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .75rem;
}

.preference-countries label {
    display: flex;
    align-items: center;
    gap: .7rem;
    min-height: 4.5rem;
    padding: .75rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    cursor: pointer;
}

.preference-countries label:has(input:checked) {
    border-color: var(--brand);
    background: var(--surface-soft);
}

.preference-country__flag {
    font-size: 1.65rem;
    line-height: 1;
}

.preference-countries strong,
.preference-countries small {
    display: block;
}

.preference-countries small {
    margin-top: .1rem;
    color: var(--muted);
}

.checkbox-grid label,
.preference-options label {
    display: flex;
    align-items: center;
    gap: .4rem;
    font-size: .85rem;
}

.preference-options label[id] {
    border-radius: .45rem;
    scroll-margin-top: 2rem;
}

.preference-options label[id]:target {
    animation: preference-target-highlight 2.2s ease-out;
}

@keyframes preference-target-highlight {
    0%, 100% {
        background: transparent;
        box-shadow: 0 0 0 0 transparent;
    }

    15%, 60% {
        background: color-mix(in srgb, var(--brand-2) 12%, var(--surface));
        box-shadow: 0 0 0 .4rem color-mix(in srgb, var(--brand-2) 16%, transparent);
    }
}

@media (prefers-reduced-motion: reduce) {
    .preference-options label[id]:target {
        animation: none;
        background: color-mix(in srgb, var(--brand-2) 12%, var(--surface));
        box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--brand-2) 28%, transparent);
    }
}

.checkbox-grid--channels {
    max-height: 26rem;
    overflow-y: auto;
}

.checkbox-grid--channels label:has(input:disabled) {
    opacity: .45;
}

.preferences-advanced {
    margin-bottom: 1rem;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
}

.preferences-advanced > summary {
    padding: 1rem;
    color: var(--brand);
    font-weight: 800;
    cursor: pointer;
}

.preferences-advanced fieldset {
    margin: 0;
    border: 0;
    border-top: 1px solid var(--border);
    border-radius: 0;
}

@media (max-width: 42rem) {
    .preference-countries {
        grid-template-columns: 1fr;
    }
}

.form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
}

.preferences-unsaved-bar {
    position: fixed;
    z-index: 30;
    right: 1rem;
    bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    max-width: calc(100% - 2rem);
    padding: .65rem .7rem .65rem 1rem;
    border: 1px solid var(--border-strong);
    border-radius: .7rem;
    background: var(--surface);
    box-shadow: var(--shadow);
    color: var(--brand);
    font-size: .82rem;
}

.preferences-unsaved-bar[hidden] {
    display: none;
}

.preferences-unsaved-bar button {
    min-height: 2rem;
    padding: .35rem .75rem;
    white-space: nowrap;
}

@media (max-width: 42rem) {
    .preferences-unsaved-bar {
        right: .5rem;
        bottom: .5rem;
        left: .5rem;
        justify-content: space-between;
        max-width: none;
    }
}

.secondary-button {
    border-color: var(--border-strong);
    background: var(--surface);
    color: var(--text);
}

.secondary-button:hover,
.secondary-button:focus-visible {
    border-color: var(--brand);
    background: var(--surface-soft);
    color: var(--text);
}

.ad-slot:empty {
    display: none;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.panel > :first-child {
    margin-top: 0;
}

.panel > :last-child {
    margin-bottom: 0;
}

.error {
    color: var(--error);
}

.security-panel {
    position: relative;
    width: min(100%, 40rem);
    padding: clamp(1.5rem, 5vw, 3rem);
    overflow: hidden;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--brand) 12%, transparent), transparent 18rem),
        var(--surface);
    box-shadow: 0 1.5rem 4rem rgb(7 18 31 / 13%);
}

.security-panel::before {
    position: absolute;
    inset: 0 0 auto;
    height: .28rem;
    background: linear-gradient(90deg, var(--brand), var(--logo-background));
    content: "";
}

.security-page {
    display: grid;
    min-height: clamp(30rem, calc(100vh - 15rem), 43rem);
    place-items: center;
    padding-block: clamp(1rem, 5vw, 3.5rem);
}

.security-panel__header {
    display: grid;
    justify-items: center;
    text-align: center;
}

.security-panel__icon {
    display: grid;
    width: 4.5rem;
    height: 4.5rem;
    margin-bottom: 1.1rem;
    border: 1px solid color-mix(in srgb, var(--brand) 24%, var(--border));
    border-radius: 1.35rem;
    background: color-mix(in srgb, var(--brand) 10%, var(--surface));
    color: var(--brand);
    place-items: center;
    box-shadow: 0 .7rem 1.8rem color-mix(in srgb, var(--brand) 13%, transparent);
}

.security-panel__icon svg {
    width: 2.45rem;
    height: 2.45rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.security-panel__header .eyebrow {
    margin: 0 0 .35rem;
    color: var(--brand);
}

.security-panel h1 {
    margin: 0;
    font-size: clamp(1.75rem, 5vw, 2.35rem);
    letter-spacing: -.035em;
    line-height: 1.1;
}

.security-panel__form {
    display: grid;
    justify-items: center;
    gap: .85rem;
    margin-top: 1.5rem;
}

.security-panel__widget {
    display: grid;
    width: min(100%, 21rem);
    min-height: 5.25rem;
    padding: .7rem;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: .9rem;
    background: color-mix(in srgb, var(--surface-soft) 68%, var(--surface));
    place-items: center;
}

.security-panel__widget .cf-turnstile {
    display: flex;
    width: 100%;
    max-width: 100%;
    justify-content: center;
}

.security-panel__status {
    margin: 0;
    color: var(--muted);
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.4;
    text-align: center;
}

.security-panel__status[data-state="success"] {
    color: var(--result-highlight);
}

.security-panel__status[data-state="error"] {
    color: var(--error);
}

.security-panel__submit {
    display: inline-flex;
    width: auto;
    min-height: 2.75rem;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .65rem 1rem;
    border-color: var(--border-strong);
    border-radius: .55rem;
    background: var(--surface-soft);
    box-shadow: none;
    color: var(--text);
    transition: border-color .16s ease, background .16s ease;
}

.security-panel__submit:not(:disabled):hover {
    border-color: var(--brand);
    background: color-mix(in srgb, var(--brand) 10%, var(--surface));
}

.security-panel__submit svg {
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

.security-panel__error {
    display: flex;
    align-items: center;
    gap: .65rem;
    margin: 1.4rem auto 0;
    padding: .75rem .9rem;
    border: 1px solid color-mix(in srgb, var(--error) 35%, var(--border));
    border-radius: .75rem;
    background: color-mix(in srgb, var(--error) 8%, var(--surface));
    color: var(--error);
    font-weight: 700;
}

.security-panel__error svg {
    flex: 0 0 auto;
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

@media (max-width: 32rem) {
    .security-page {
        min-height: auto;
        padding-block: .5rem 1.5rem;
    }

    .security-panel {
        padding: 1.35rem .3rem 1.25rem;
        border-radius: 1rem;
    }

    .security-panel__header,
    .security-panel__error {
        margin-inline: .7rem;
    }

    .security-panel__icon {
        width: 3.8rem;
        height: 3.8rem;
        margin-bottom: .85rem;
        border-radius: 1.05rem;
    }

    .security-panel__icon svg {
        width: 2.1rem;
        height: 2.1rem;
    }

    .security-panel__widget {
        padding-inline: 0;
    }
}

@media (max-width: 68rem) {
    .site-header {
        grid-template-columns: auto 1fr;
        padding-block: .65rem;
    }

    .primary-navigation {
        justify-content: flex-end;
    }

    .header-tools {
        grid-column: 1 / -1;
    }

    .header-search {
        flex: 1;
    }

    .header-search input {
        width: 100%;
    }

    .entity-card-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sport-directory-az {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .event-related-news__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}

@media (max-width: 48rem) {
    :root {
        --sport-taxonomy-font-size: .72rem;
    }

    .subscription-page__grid {
        grid-template-columns: 1fr;
    }

    .calendar-help-page__choices,
    .calendar-help-steps ol {
        grid-template-columns: 1fr;
    }

    .calendar-help-choice {
        min-height: 0;
    }

    .calendar-help-legacy {
        align-items: start;
        grid-template-columns: 2.75rem minmax(0, 1fr);
        padding: 1rem;
    }

    .calendar-help-legacy__icon {
        width: 2.75rem;
        height: 2.75rem;
    }

    .subscription-card__body > p:first-of-type {
        min-height: 0;
    }

    .subscription-providers {
        grid-template-columns: 1fr;
    }

    .composition-grid {
        grid-template-columns: 1fr;
    }

    .site-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) repeat(4, 2.75rem);
        align-items: center;
        gap: .35rem;
        padding-block: .25rem;
    }

    .site-header--account-disabled {
        grid-template-columns: minmax(0, 1fr) repeat(3, 2.75rem);
    }

    .site-name {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
        min-width: 0;
    }

    .site-header > .site-name .site-mark {
        flex: 0 0 clamp(2rem, 10vw, 2.25rem);
        width: clamp(2rem, 10vw, 2.25rem);
    }

    .site-header > .site-name .site-wordmark {
        font-size: clamp(1.05rem, 5vw, 1.35rem);
    }

    .header-tools {
        display: contents;
    }

    .primary-navigation {
        display: flex;
        grid-column: 1 / -1;
        grid-row: 3;
        gap: .15rem;
        justify-content: space-between;
        overflow-x: auto;
        overflow-y: hidden;
        width: 100%;
        padding: 0;
    }

    html.js .primary-navigation {
        grid-row: 2;
    }

    html.js .site-header--search-open .primary-navigation {
        grid-row: 3;
    }

    .primary-navigation > a {
        display: grid;
        flex: 0 0 auto;
        max-width: none;
        min-height: 2.25rem;
        place-items: center;
        padding: .3rem .5rem !important;
        font-size: .7rem !important;
        line-height: 1;
        text-align: center;
        white-space: nowrap;
    }

    .sport-navigation,
    .date-navigation {
        padding-block: .25rem;
    }

    .sport-navigation {
        gap: .3rem;
    }

    .sport-navigation a {
        min-height: 2.5rem;
        padding-block: .32rem;
    }

    .date-navigation {
        gap: .3rem;
    }

    .date-navigation a {
        display: inline-flex;
        flex-basis: auto;
        align-items: center;
        justify-content: center;
        gap: .28rem;
        min-width: 4.25rem;
        min-height: 2.75rem;
        padding: .35rem .55rem;
    }

    .date-navigation__weekday {
        letter-spacing: .04em;
    }

    .date-navigation__day {
        font-size: 1rem;
    }

    .header-search {
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
    }

    html.js .header-search {
        display: none;
    }

    html.js .site-header--search-open .header-search {
        display: flex;
    }

    .header-search input {
        flex: 1;
        min-width: 0;
    }

    .header-search button {
        border-radius: 0 .45rem .45rem 0;
    }

    .personalization-link,
    .account-link,
    .theme-toggle,
    html.js .mobile-header-button {
        display: grid;
        place-items: center;
        width: 2.75rem;
        height: 2.75rem;
        min-height: 2.75rem;
        padding: 0;
        border: 1px solid var(--border-strong);
        border-radius: .55rem;
        background: var(--surface);
        color: var(--brand);
    }

    .mobile-search-toggle {
        grid-column: 2;
        grid-row: 1;
    }

    .personalization-link {
        grid-column: 3;
        grid-row: 1;
    }

    .account-link {
        grid-column: 4;
        grid-row: 1;
    }

    .theme-toggle {
        grid-column: 5;
        grid-row: 1;
    }

    .site-header--account-disabled .theme-toggle {
        grid-column: 4;
    }

    .mobile-header-button svg {
        width: 1.25rem;
        height: 1.25rem;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 2;
    }

    .mobile-header-button:hover,
    .mobile-header-button:focus-visible,
    .mobile-header-button[aria-expanded="true"] {
        border-color: var(--brand);
        background: var(--surface-soft);
    }

    .horizontal-scroll-nav--event,
    .sport-navigation--event {
        display: none;
    }

    .event-list,
    .article-list {
        grid-template-columns: 1fr;
    }

    .event-related-news__grid,
    .agenda-news .event-related-news__grid {
        grid-template-columns: 1fr;
    }

    .agenda-news .event-related-news__grid {
        gap: .5rem;
    }

    .agenda-news .event-related-news__card {
        grid-template-columns: 8rem minmax(0, 1fr);
        height: auto;
        min-height: 0;
    }

    .agenda-news .event-related-news__media {
        position: relative;
        align-self: stretch;
        min-height: 0;
    }

    .agenda-news .event-related-news__media img,
    .agenda-news .event-related-news__media > span {
        position: absolute;
        inset: 0;
        width: 100%;
        height: 100%;
    }

    .agenda-news .event-related-news__media > span {
        display: grid;
        place-items: center;
    }

    .agenda-news .event-related-news__body {
        padding: .35rem .55rem;
    }

    .agenda-news .event-related-news__meta {
        flex-wrap: nowrap;
        gap: .2rem .35rem;
        margin-bottom: .2rem;
        white-space: nowrap;
    }

    .agenda-news .event-related-news__sport {
        overflow: hidden;
        min-width: 0;
        text-overflow: ellipsis;
    }

    .agenda-news .event-related-news__meta time {
        flex: 0 0 auto;
    }

    .agenda-news .event-related-news__card h3 {
        font-size: .8rem;
        line-height: 1.18;
    }

    .agenda-news .event-related-news__card h3 a {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
    }

    .entity-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .featured-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .entity-hero__visual {
        flex-basis: 5.25rem;
        width: 5.25rem;
    }

    .event-hero__matchup {
        grid-template-columns: minmax(0, 1fr) 7rem minmax(0, 1fr);
    }

    .event-hero__participant {
        flex-direction: column;
        text-align: center;
    }

    .event-hero__participant--home {
        flex-direction: column;
        text-align: center;
    }

    .event-hero__participant-link,
    .event-hero__participant--home .event-hero__participant-link {
        flex-direction: column;
        text-align: center;
    }

    .event-overview__grid {
        grid-template-columns: 1fr;
    }

    .event-comparison-sequence {
        margin-top: 2rem;
    }

    .event-comparison-sticky {
        min-height: 3rem;
        border-radius: .55rem;
    }

    .event-comparison-sticky__team {
        gap: .35rem;
        padding: .35rem .45rem;
    }

    .event-comparison-sticky__team img {
        width: 1.8rem;
        height: 1.8rem;
        flex-basis: 1.8rem;
    }

    .event-comparison-sticky__team strong {
        font-size: .72rem;
    }

    .match-statistics__panel {
        padding-inline: .9rem;
    }

    .match-statistics__values {
        grid-template-columns: minmax(3.5rem, 1fr) minmax(7rem, 1.35fr) minmax(3.5rem, 1fr);
        gap: .45rem;
    }

    .match-statistics__label {
        font-size: .72rem;
    }

    .match-statistics__value {
        font-size: .88rem;
    }

    .match-timeline__teams {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 3.25rem minmax(0, 1fr);
        align-items: center;
        min-height: 3.35rem;
        border: 1px solid var(--border);
        border-bottom: 0;
        background: var(--surface-soft);
    }

    .match-timeline__teams-side {
        display: flex;
        align-items: center;
        gap: .35rem;
        min-width: 0;
        padding: .5rem .4rem;
    }

    .match-timeline__teams-side--home {
        flex-direction: row-reverse;
        justify-content: flex-start;
        border-bottom: 2px solid var(--statistics-home);
        text-align: right;
    }

    .match-timeline__teams-side--away {
        justify-content: flex-start;
        border-bottom: 2px solid var(--statistics-away);
    }

    .match-timeline__teams-side img {
        flex: 0 0 1.65rem;
        width: 1.65rem;
        height: 1.65rem;
        object-fit: contain;
    }

    .match-timeline__teams-side strong {
        overflow: hidden;
        color: var(--brand);
        font-size: var(--font-size-caption);
        line-height: 1.15;
        text-overflow: ellipsis;
    }

    .match-timeline__teams-versus {
        color: var(--muted);
        font-size: .75rem;
        font-weight: 800;
        text-align: center;
    }

    .match-timeline {
        position: relative;
    }

    .match-timeline__row {
        position: relative;
        grid-template-columns: minmax(0, 1fr) 3.25rem minmax(0, 1fr);
        min-height: 4.15rem;
    }

    .match-timeline__row::before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        width: 1px;
        background: var(--border);
        content: "";
    }

    .match-timeline__moment {
        position: relative;
        z-index: 1;
        grid-column: 2;
        justify-self: center;
        gap: .1rem;
        padding: .18rem;
        background: var(--background);
    }

    .match-timeline__minute {
        font-size: .78rem;
    }

    .match-timeline__score {
        min-width: 2.25rem;
        padding-inline: .22rem;
        font-size: var(--font-size-caption);
    }

    .match-timeline__row .match-timeline__action {
        gap: .25rem;
        width: 100%;
        padding: .45rem .2rem;
    }

    .match-timeline__row--home .match-timeline__action {
        grid-column: 1;
        justify-self: end;
        flex-direction: row-reverse;
    }

    .match-timeline__row--away .match-timeline__action,
    .match-timeline__row--neutral .match-timeline__action {
        grid-column: 3;
        justify-self: start;
    }

    .match-timeline__row--home .match-timeline__copy {
        text-align: right;
    }

    .match-timeline__row--away .match-timeline__copy,
    .match-timeline__row--neutral .match-timeline__copy {
        text-align: left;
    }

    .match-timeline__copy strong {
        font-size: .76rem;
    }

    .match-timeline__copy small {
        font-size: var(--font-size-caption);
        line-height: 1.2;
    }

    .match-timeline__icon {
        flex-basis: 1.55rem;
        width: 1.55rem;
        height: 1.55rem;
    }

    .match-timeline__icon .lucide {
        width: 1.35rem;
        height: 1.35rem;
    }

    .match-timeline__ball {
        font-size: 1.2rem;
    }

    .match-timeline__substitution-player {
        display: grid;
        grid-template-columns: 1.25rem minmax(0, 1fr);
        align-items: center;
        gap: .2rem;
        width: 100%;
    }

    .match-timeline__copy--substitution {
        flex: 1 1 auto;
        width: 100%;
    }

    .match-timeline__substitution-player > span {
        flex-basis: 2.75rem;
        font-size: var(--font-size-caption);
    }

    .match-timeline__substitution-label {
        display: inline-flex;
        flex-basis: 1.25rem;
        align-items: center;
        justify-content: center;
    }

    .match-timeline__substitution-label-text {
        display: none;
    }

    .match-timeline__substitution-direction {
        display: block;
        width: 1.1rem;
        height: 1.1rem;
    }

    .match-timeline__substitution-player--out > .match-timeline__substitution-label {
        color: var(--error);
    }

    .match-timeline__substitution-player strong {
        font-size: var(--font-size-caption);
    }

    .match-timeline__row--home .match-timeline__substitution-player {
        justify-content: normal;
    }

    .match-timeline__phase {
        position: relative;
        z-index: 2;
    }

    .broadcast-detail-card {
        grid-template-columns: minmax(0, 1fr) auto;
        gap: .35rem;
    }

    .broadcast-detail-card__actions {
        justify-content: flex-end;
        width: auto;
    }

    .watch-cta {
        width: auto;
    }
}

@media (max-width: 48rem) {
    .participant-live-cta {
        grid-template-columns: auto minmax(0, 1fr);
        gap: .65rem;
        padding: .75rem .8rem;
    }

    .participant-live-cta__event {
        font-size: .95rem;
    }

    .participant-live-cta__action {
        grid-column: 1 / -1;
        justify-content: center;
        min-height: 2.35rem;
        border: 1px solid rgb(255 255 255 / 32%);
        border-radius: .5rem;
        background: rgb(255 255 255 / 12%);
    }

    .broadcast-detail-card__date--desktop {
        display: none;
    }

    .broadcast-detail-card__date--mobile {
        display: inline;
    }

    .watch-cta__label--desktop {
        display: none;
    }

    .watch-cta__label--mobile {
        display: inline;
    }

    .day-pagination {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .4rem;
        margin-top: 1rem;
        padding-top: .75rem;
    }

    .day-pagination__link {
        gap: .4rem;
        min-height: 3.5rem;
        padding: .5rem;
    }

    .day-pagination__arrow {
        flex-basis: 1.8rem;
        width: 1.8rem;
        font-size: 1.35rem;
    }

    .day-pagination__text small {
        font-size: .62rem;
    }

    .day-pagination__text strong {
        font-size: .78rem;
    }

    .page-header__title-row {
        align-items: flex-start;
        flex-direction: column;
    }

    .page-header--with-cta .page-header__cta {
        min-height: 2.15rem;
        padding: .42rem .7rem;
        border: 1px solid var(--page-header-cta-background);
        border-radius: .5rem;
        background: var(--page-header-cta-background);
        box-shadow: 0 .12rem .35rem rgb(17 36 63 / 14%);
        color: var(--on-live);
        font-size: .8rem;
        line-height: 1;
        transition: box-shadow .15s ease, filter .15s ease, transform .15s ease;
        white-space: nowrap;
    }

    .page-header--with-cta .page-header__cta::after {
        margin-left: .3rem;
        content: "›";
        font-size: 1rem;
        line-height: .7;
    }

    .page-header--with-cta .page-header__cta:hover,
    .page-header--with-cta .page-header__cta:focus-visible {
        box-shadow: 0 .2rem .5rem rgb(17 36 63 / 20%);
        color: #fff;
        filter: brightness(.92);
        transform: translateY(-1px);
    }

    .schedule-type-filter {
        align-items: center;
        gap: .5rem;
        padding: .65rem;
    }

    .schedule-type-filter legend {
        position: absolute;
        width: 1px;
        height: 1px;
        padding: 0;
        margin: -1px;
        overflow: hidden;
        clip: rect(0, 0, 0, 0);
        clip-path: inset(50%);
        white-space: nowrap;
        border: 0;
    }

    .schedule-type-filter__option {
        min-height: 2.75rem;
        padding: .45rem .65rem;
        font-size: .76rem;
    }

    .schedule-type-filter__option--mobile-label .schedule-type-filter__label-long {
        display: none;
    }

    .schedule-type-filter__label-mobile {
        display: inline;
    }

    .schedule-type-filter__actions {
        display: grid;
        flex: 1 0 100%;
        grid-template-columns: minmax(0, 1fr) 2.75rem 2.75rem;
        gap: .5rem;
        width: 100%;
        margin-top: .15rem;
        margin-left: 0;
    }

    .schedule-sport-filter {
        grid-column: 1;
        grid-row: 1;
        min-width: 0;
        width: 100%;
    }

    .schedule-sport-filter select {
        width: 100%;
        min-width: 0;
        min-height: 2.75rem;
    }

    .schedule-filter-reset,
    .schedule-preferences-link {
        grid-row: 1;
        width: 2.75rem;
        height: 2.75rem;
    }

    .schedule-filter-reset {
        grid-column: 2;
    }

    .schedule-preferences-link {
        grid-column: 3;
    }

    .schedule-type-filter__count {
        grid-column: 1 / -1;
        grid-row: 2;
        justify-self: start;
        font-size: var(--font-size-caption);
        font-weight: 600;
    }

    .schedule-type-filter__actions:not(:has(.schedule-sport-filter)) .schedule-type-filter__count {
        grid-column: 1;
        grid-row: 1;
        align-self: center;
    }

    .event-trends__form,
    .event-trends__standing-row {
        grid-template-columns: minmax(0, 1fr) minmax(6.5rem, 7.5rem) minmax(0, 1fr);
    }

    .event-trends__form {
        padding-inline: .65rem;
    }

    .event-trends__standings,
    .event-trends__odds {
        padding-inline: .65rem;
    }

    .event-team-form__result {
        width: 1.2rem;
        height: 1.2rem;
        font-size: var(--font-size-caption);
    }

    .event-trends__probability {
        flex-direction: column;
        align-items: center;
        gap: .02rem;
        font-size: var(--font-size-caption);
    }

    .composition-players {
        grid-template-columns: 1fr;
    }

    .event-countdown {
        flex-wrap: wrap;
    }

    .event-hero__watch-cta {
        width: 100%;
        min-height: 60px;
        padding: 8px 9px 8px 18px;
        border-radius: 24px;
        font-size: 18px;
    }

    .event-hero__watch-cta-icon {
        flex-basis: 42px;
        width: 42px;
        height: 42px;
    }

    .site-header,
    .sport-navigation,
    .date-navigation,
    .horizontal-scroll-nav,
    .site-main,
    .site-footer {
        width: min(100% - 1rem, 80rem);
    }

    .header-search,
    .header-search input {
        width: 100%;
    }

    .header-tools {
        flex-wrap: wrap;
    }

    .header-search {
        flex-basis: 100%;
    }

    .entity-hero__content {
        align-items: flex-start;
    }

    .entity-hero__visual {
        flex-basis: 4.25rem;
        width: 4.25rem;
        border-radius: .7rem;
    }

    .entity-hero__title {
        font-size: 1.65rem;
    }

    .entity-hero__subtitle {
        font-size: .82rem;
    }

    .tab-navigation {
        flex-wrap: nowrap;
        gap: .15rem;
        overflow-x: auto;
        padding-inline: .2rem;
        white-space: nowrap;
    }

    .tab-navigation__identity {
        margin-right: 0;
    }

    .tab-navigation a {
        padding-inline: .5rem;
    }

    .section-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: .35rem;
    }

    .featured-grid {
        grid-template-columns: 1fr;
        gap: .4rem;
    }

    .featured-card article {
        display: grid;
        grid-template-columns: clamp(7.25rem, 24vw, 8.25rem) minmax(0, 1fr);
        height: auto;
        min-height: 0;
    }

    .featured-card__visual {
        align-self: stretch;
        min-height: 0;
        height: auto;
        aspect-ratio: auto;
    }

    .featured-card__competition-badge {
        display: none;
    }

    .featured-card__competition-link {
        display: inline-flex;
        align-items: center;
        gap: .28rem;
        vertical-align: middle;
    }

    .featured-card__competition-inline {
        display: block;
        flex: 0 0 1.35rem;
        width: 1.35rem;
        height: 1.35rem;
        padding: .08rem;
        border: 1px solid var(--border);
        border-radius: .3rem;
        background: var(--media-background);
        object-fit: contain;
    }

    .featured-card__channel {
        width: 1.55rem;
    }

    .featured-card__participants {
        gap: .25rem;
    }

    .featured-card__participant {
        width: 2.65rem;
        height: 2.65rem;
        padding: .22rem;
        border-radius: .62rem;
    }

    .featured-card__versus {
        font-size: .66rem;
    }

    .featured-card__emoji {
        font-size: 1.9rem;
    }

    .featured-card__body {
        align-self: stretch;
        min-width: 0;
        padding: .45rem .6rem;
    }

    .featured-card__meta {
        margin-bottom: .2rem;
    }

    .featured-card__meta time {
        font-size: 1.15rem;
        line-height: 1.1;
    }

    .featured-card__context {
        display: block;
        overflow: hidden;
        min-height: 0;
        margin-bottom: .12rem;
        font-size: var(--sport-taxonomy-font-size);
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .featured-card h3 {
        display: block;
        overflow: hidden;
        font-size: 1rem;
        line-height: 1.18;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

@media (max-width: 34rem) {
    .page-header--with-cta {
        grid-template-columns: minmax(0, 1fr);
    }

    .page-header--with-cta .page-header__title-row h1 {
        grid-column: 1;
        grid-row: 2;
    }

    .page-header--with-cta .page-header__cta {
        grid-column: 1;
        grid-row: 3;
        justify-content: center;
        justify-self: stretch;
        width: 100%;
        margin-top: .5rem;
    }
}

@media (max-width: 40rem) {
    .schedule-item {
        --schedule-visual-width: 4.75rem;
        --schedule-visual-height: 2.85rem;
        --schedule-channel-width: clamp(2.75rem, 12vw, 4rem);
        grid-template-columns: 1fr;
        gap: .25rem .6rem;
        padding: .5rem .6rem;
    }

    .schedule-time {
        grid-column: 1 / -1;
        grid-row: 1;
        flex-direction: row;
        align-items: baseline;
        gap: .5rem;
    }

    .schedule-content {
        grid-column: 1;
        grid-row: 2;
    }

    .schedule-program--with-visual {
        grid-template-columns: var(--schedule-visual-width) minmax(0, 1fr);
        gap: .5rem;
    }

    .schedule-participant {
        width: 2.25rem;
        height: 2.25rem;
        border-radius: .55rem;
    }

    .schedule-entity-visual img {
        width: 2.25rem;
        height: 2.25rem;
    }

    .schedule-entity-visual--sport {
        font-size: 1.45rem;
    }

    .schedule-meta {
        overflow: hidden;
        margin-block: 0 .12rem;
        font-size: var(--sport-taxonomy-font-size);
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .schedule-meta a {
        color: color-mix(in srgb, var(--link) 52%, var(--muted));
    }

    .schedule-content h3 {
        margin: .08rem 0 .15rem;
        font-size: .96rem;
    }

    .schedule-channel {
        grid-column: 1;
        grid-row: 3;
    }

    .schedule-channel--unavailable {
        display: none;
    }

    .schedule-channel--logos-only {
        align-self: center;
        align-items: center;
        justify-content: center;
        justify-self: end;
        flex-direction: column;
        flex-wrap: nowrap;
        gap: .08rem;
        width: var(--schedule-channel-width);
        overflow: hidden;
    }

    .schedule-channel--streaming {
        align-self: center;
        justify-self: end;
        width: var(--schedule-channel-width);
    }

    .schedule-channel--streaming span {
        display: none;
    }

    .schedule-channel--streaming .stream-provider-logo {
        width: auto;
        max-width: 3.75rem;
        height: 1.6rem;
    }

    .schedule-channel--logos-only .schedule-channel__item > span {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        max-width: 100%;
        height: 1.5rem;
    }

    .schedule-channel--logos-only .schedule-channel__item {
        flex: 0 0 auto;
        width: 100%;
    }

    .schedule-channel--logos-only .schedule-channel__item:nth-of-type(n + 2) {
        display: none;
    }

    .schedule-channel--logos-only .schedule-channel__item .channel-logo {
        position: static;
        inset: auto;
        flex: 0 0 auto;
        width: 100%;
        height: 1.45rem;
        max-width: 3.75rem;
        max-height: 1.45rem;
    }

    .schedule-channel__name {
        display: none;
    }

    .schedule-channel__more {
        display: block;
        flex: 0 0 auto;
        color: var(--muted);
        font-size: var(--font-size-caption);
        font-weight: 700;
        line-height: 1.2;
        white-space: nowrap;
    }

    .schedule-item__arrow {
        display: none;
    }

    .schedule-item:has(.schedule-program--with-visual) {
        grid-template-columns: var(--schedule-visual-width) minmax(0, 1fr);
    }

    .schedule-item:has(.schedule-channel--logos-only),
    .schedule-item:has(.schedule-channel--streaming) {
        grid-template-columns: minmax(0, 1fr) var(--schedule-channel-width);
    }

    .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--logos-only),
    .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--streaming) {
        grid-template-columns: var(--schedule-visual-width) minmax(0, 1fr) var(--schedule-channel-width);
    }

    .schedule-item:has(.schedule-program--with-visual) .schedule-content,
    .schedule-item:has(.schedule-program--with-visual) .schedule-program--with-visual {
        display: contents;
    }

    .schedule-item:has(.schedule-program--with-visual) .schedule-visual {
        align-self: center;
        grid-column: 1;
        grid-row: 2;
    }

    .schedule-item:has(.schedule-program--with-visual) .schedule-program__body {
        grid-column: 2;
        grid-row: 2;
    }

    .schedule-item:has(.schedule-program--with-visual) .schedule-channel {
        grid-column: 2;
        grid-row: 2;
        margin: 0;
    }

    .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--logos-only) .schedule-channel,
    .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--streaming) .schedule-channel {
        grid-column: 3;
    }

    .schedule-item:has(.schedule-channel--logos-only):not(:has(.schedule-program--with-visual)) .schedule-content,
    .schedule-item:has(.schedule-channel--streaming):not(:has(.schedule-program--with-visual)) .schedule-content {
        grid-column: 1;
        grid-row: 2;
    }

    .schedule-item:has(.schedule-channel--logos-only):not(:has(.schedule-program--with-visual)) .schedule-channel,
    .schedule-item:has(.schedule-channel--streaming):not(:has(.schedule-program--with-visual)) .schedule-channel {
        grid-column: 2;
        grid-row: 2;
    }

    .schedule-status--without-tv .schedule-status__label-long {
        display: none;
    }

    .schedule-status--without-tv .schedule-status__label-short {
        display: inline;
    }

    .schedule-list--mobile-time-column .schedule-item {
        grid-template-columns: 4.25rem minmax(0, 1fr);
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual) {
        grid-template-columns: 4.25rem var(--schedule-visual-width) minmax(0, 1fr);
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-channel--logos-only),
    .schedule-list--mobile-time-column .schedule-item:has(.schedule-channel--streaming) {
        grid-template-columns: 4.25rem minmax(0, 1fr) var(--schedule-channel-width);
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--logos-only),
    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--streaming) {
        grid-template-columns: 4.25rem var(--schedule-visual-width) minmax(0, 1fr) var(--schedule-channel-width);
    }

    .schedule-list--mobile-time-column .schedule-time {
        grid-column: 1;
        grid-row: 1;
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
    }

    .schedule-list--mobile-time-column .schedule-content {
        grid-column: 2;
        grid-row: 1;
    }

    .schedule-list--mobile-time-column .schedule-channel {
        grid-column: 2;
        grid-row: 1;
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual) .schedule-visual {
        grid-column: 2;
        grid-row: 1;
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual) .schedule-program__body {
        grid-column: 3;
        grid-row: 1;
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual) .schedule-channel {
        grid-column: 3;
        grid-row: 1;
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-channel--logos-only):not(:has(.schedule-program--with-visual)) .schedule-content,
    .schedule-list--mobile-time-column .schedule-item:has(.schedule-channel--streaming):not(:has(.schedule-program--with-visual)) .schedule-content {
        grid-column: 2;
        grid-row: 1;
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-channel--logos-only):not(:has(.schedule-program--with-visual)) .schedule-channel,
    .schedule-list--mobile-time-column .schedule-item:has(.schedule-channel--streaming):not(:has(.schedule-program--with-visual)) .schedule-channel {
        grid-column: 3;
        grid-row: 1;
    }

    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--logos-only) .schedule-channel,
    .schedule-list--mobile-time-column .schedule-item:has(.schedule-program--with-visual):has(.schedule-channel--streaming) .schedule-channel {
        grid-column: 4;
    }
}

@media (max-width: 48rem) {
    .entity-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .entity-card-grid--mobile-single {
        grid-template-columns: 1fr;
    }

    .sport-directory-az {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .entity-card__link {
        min-height: 4.6rem;
    }

    .sport-directory-card-grid {
        grid-template-columns: 1fr;
        gap: .55rem;
    }

    .sport-directory-card-grid .entity-card__link {
        position: relative;
        gap: .6rem;
        min-height: 4.5rem;
        padding: .45rem .55rem;
    }

    .sport-directory-card-grid .entity-card__visual {
        width: 3rem;
        flex-basis: 3rem;
        border-radius: .5rem;
    }

    .sport-directory-card-grid .entity-card__sport-emoji {
        font-size: 1.75rem;
    }

    .sport-directory-card-grid .entity-card__sport-emoji.sport-emoji--sequence {
        font-size: .85rem;
    }

    .sport-directory-card-grid .entity-card__body {
        flex: 1 1 auto;
        padding-right: 1rem;
    }

    .sport-directory-card-grid .entity-card__body strong {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        white-space: normal;
    }

    .sport-directory-card-grid .entity-card__stats {
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
        gap: .25rem;
    }

    .sport-directory-card-grid .entity-card__stat--live {
        gap: .24rem;
        max-width: 100%;
        padding: .1rem .3rem;
        font-size: .68rem;
    }

    .sport-directory-card-grid .entity-card__stat--live::before {
        width: .3rem;
        height: .3rem;
        flex-basis: .3rem;
    }

    .sport-directory-card-grid .entity-card__arrow {
        position: absolute;
        top: 50%;
        right: .45rem;
        margin: 0;
        font-size: 1.1rem;
        line-height: 1;
        transform: translateY(-50%);
    }

    .matchup {
        grid-template-columns: minmax(0, 1fr) 4.7rem minmax(0, 1fr);
        gap: .3rem;
    }

    .matchup__participant {
        align-items: center;
        flex-direction: column;
        text-align: center;
    }

    .matchup__participant--home {
        flex-direction: column;
        text-align: center;
    }

    .directory-filters {
        align-items: stretch;
        flex-direction: column;
    }

    .directory-filters select {
        width: 100%;
    }

    .directory-filters__reset {
        align-self: flex-end;
    }

    .directory-pagination {
        grid-template-columns: minmax(0, 1fr);
    }

    .directory-pagination__pages {
        grid-column: 1;
        grid-row: auto;
        flex-wrap: wrap;
    }

    .directory-pagination__direction--previous {
        grid-column: 1;
        grid-row: auto;
    }

    .directory-pagination__direction--next {
        grid-column: 1;
        grid-row: auto;
    }

    .site-footer__top {
        grid-template-columns: 1fr;
    }

    .site-footer .site-footer__navigation {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        justify-content: stretch;
    }

    .site-footer__navigation a {
        background: var(--surface-soft);
    }

    .site-footer__bottom {
        align-items: flex-start;
        flex-direction: column;
    }

    .legal-page__identity {
        grid-template-columns: 1fr;
    }

    .search-page-form > div {
        align-items: stretch;
        flex-direction: column;
    }

    .search-result-grid {
        grid-template-columns: 1fr;
    }

    .search-result-card {
        grid-template-columns: 4.75rem minmax(0, 1fr) 1.25rem;
        min-height: 4.75rem;
    }

    .search-result-card__body {
        padding: .55rem .65rem;
    }
}

@media (max-width: 48rem) {
    .event-hero .hero-actions {
        top: .35rem;
        right: .35rem;
    }

    .event-hero .hero-actions .favorite-button--icon {
        width: 2.35rem;
        height: 2.35rem;
    }

    .event-breadcrumb {
        margin-bottom: .4rem;
    }
}

@media (max-width: 22rem) {
    .sport-directory-az {
        grid-template-columns: 1fr;
    }

    .site-header > .site-name .site-mark::after {
        display: none;
    }

    .site-header > .site-name .site-wordmark {
        display: none;
    }
}
