.games-page{padding-top:26px;padding-bottom:56px;max-width:1120px}.games-top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:20px}.games-top>a:last-child{font-weight:700}.games-nav{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:28px}.games-nav a{padding:10px 14px;border-radius:5px;background:#eef1ef;color:#263e32;font-weight:700}.games-nav a[aria-current]{background:#115b35;color:white}.games-eyebrow{text-transform:uppercase;letter-spacing:.1em;font-weight:800;font-size:12px;color:#34754c}.games-lead{font-size:clamp(19px,3vw,25px);line-height:1.5;color:#516057}.games-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.games-card{background:#fff;border:1px solid #dce5df;border-radius:10px;padding:26px;margin-block:20px;min-width:0}.games-card h2{font-size:24px;margin-top:0}.games-card h3{font-size:18px}.games-card p{line-height:1.65}.games-muted{color:#66756c}.games-stats{display:flex;gap:20px;flex-wrap:wrap;margin-block:26px}.games-stats>div{background:#f0f5f1;border:1px solid var(--line);border-radius:6px;padding:20px;flex:1;min-width:150px}.games-stats span{display:block;color:#53665a;font-size:14px}.games-stats strong{display:block;font-size:34px;margin-top:5px}.games-button,.games-page button{display:inline-block;background:#145e38;color:white;border:0;border-radius:5px;font:inherit;font-weight:700;padding:12px 18px;cursor:pointer}.games-notice{padding:16px;border:1px solid var(--line);background:#eef8f0;line-height:1.6}.games-error{padding:16px;background:#fff0eb;border:1px solid #b94c30}.games-table{overflow-x:auto}.games-table table{width:100%;border-collapse:collapse;text-align:left;font-size:15px}.games-table th,.games-table td{padding:13px 10px;border-bottom:1px solid #e3e9e5}.games-table thead{background:#f3f6f4}.games-table small{display:block;color:#65776b;margin-top:6px}.games-question{border:0;border-bottom:1px solid #dce5df;padding:22px 0;margin:0}.games-question legend{font-size:18px;font-weight:700;padding-top:20px}.games-question label{display:flex;align-items:center;gap:12px;padding:10px 0;cursor:pointer}.games-question input{width:20px;height:20px;accent-color:#14663b}.games-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}.games-fixture{display:flex;justify-content:space-between;gap:20px;padding:22px 0;border-top:1px solid #dce5df}.games-fixture h3{margin:0}.games-fixture p{margin:8px 0;font-size:14px}.games-fixture summary{cursor:pointer;padding:8px 0}.games-score-form{display:flex;align-items:end;gap:10px;flex-wrap:wrap;max-width:320px}.games-score-form label{width:110px;flex:1;font-size:13px}.games-score-form input{width:100%;padding:12px;border:1px solid #b9c9be;border-radius:5px;font:inherit;font-size:20px;margin-top:6px}.games-score-form button{width:100%}.games-saved{color:#216e3c;font-weight:700}.games-filters{display:flex;gap:15px;align-items:end;flex-wrap:wrap}.games-filters label{display:grid;gap:8px}.games-filters select{padding:12px;font:inherit;border:1px solid #bbc9bf;border-radius:5px}.games-rules{max-width:850px}.games-page a:focus-visible,.games-page button:focus-visible,.games-page input:focus-visible,.games-page summary:focus-visible{outline:3px solid #d6aa2e;outline-offset:3px}.games-comments{margin-block:35px;max-width:800px}.games-comments textarea{display:block;width:100%;min-height:110px;padding:12px;font:inherit;border:1px solid #bccabf;border-radius:5px;margin:10px 0}.games-comments button{padding:12px 20px;background:#145e38;color:#fff;border:0;border-radius:4px;font:inherit}.games-comments article{padding:16px 0;border-bottom:1px solid #dce5df}.games-admin textarea{font-family:inherit}.games-admin fieldset{padding:18px;border:1px solid #cedbd1;margin-block:18px}.games-admin .games-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.games-admin .games-match-choice{display:flex;gap:10px;align-items:start;padding:10px 0}.games-admin .games-match-choice input{width:auto;margin-top:4px}.games-admin code{overflow-wrap:anywhere}@media(max-width:700px){.games-grid{grid-template-columns:1fr;gap:0}.games-card{padding:20px 16px}.games-fixture{flex-direction:column}.games-score-form{max-width:none}.games-score-form button{width:auto}.games-nav{gap:5px}.games-nav a{font-size:13px;padding:9px}.games-admin .games-options{grid-template-columns:1fr}.games-top{gap:10px}.games-top>a:last-child{font-size:12px}.games-table th,.games-table td{padding:10px 7px}.games-stats{gap:10px}.games-stats>div{padding:15px;min-width:110px}}

/* Inherit the CMS theme, including its light public layout and Football24 brand. */
.games-card{background:var(--panel);color:var(--text)}.games-lead,.games-muted{color:var(--muted)}.games-stats{color:#263e32}.games-table thead{color:#263e32}.games-score-form input,.games-filters select{color:#23172b;background:#fff}.games-site .games-eyebrow{color:var(--nav)}.games-site .games-button,.games-site .games-page button,.games-site .games-nav a[aria-current]{background:var(--nav);color:#fff}.games-site .games-top .brand{width:224px}.games-site .games-notice{color:#204d2d}.games-site .games-error{color:#792e1a}.games-comments button{background:var(--nav,#37025a)}

.games-fixture-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 12px; }
.games-fixture-heading span { display: inline-flex; align-items: center; gap: 8px; }
.games-fixture-heading img { object-fit: contain; }
.games-squad-filter { margin-block: 12px; }
.games-squad-filter label { display: block; font-weight: 700; margin-bottom: 6px; }
.games-squad-filter input {
    min-height: 44px; max-width: 100%; padding: 8px 12px; border: 1px solid var(--line);
    border-radius: 6px; background: var(--bg); color: var(--text); font: inherit;
}
.games-page select:focus-visible { outline: 3px solid #d6aa2e; outline-offset: 3px; }
.games-squad {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 210px), 1fr)); gap: 8px;
    min-inline-size: 0; margin: 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px;
}
.games-squad legend, .games-selection-count { font-weight: 700; }
.games-pick {
    display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 6px 8px;
    border: 1px solid var(--line); border-radius: 6px; cursor: pointer; overflow-wrap: anywhere;
}
.games-pick[hidden] { display: none; }
.games-pick input { flex: none; width: 20px; height: 20px; accent-color: var(--nav); }
.games-pick small { display: block; color: var(--muted); }
.games-page button:disabled { opacity: .6; cursor: default; }
.games-result-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 215px), 1fr)); gap: 8px 24px; padding-inline-start: 20px; }
.lineup-match-card {
    border-top: 4px solid var(--nav);
    padding-block: 18px;
}
.lineup-match-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; color: var(--muted); font-size: .88rem; font-weight: 650; }
.lineup-match-meta span:first-child { color: var(--text); }
.lineup-match-meta .lineup-state { padding: 4px 10px; border: 1px solid var(--line); border-radius: 999px; }
.lineup-match-meta .lineup-state.is-open { color: #0f5132; border-color: #b1d8be; background: #e7f6eb; }
.lineup-match-card .lineup-match-heading { margin: 14px 0 8px; font-size: clamp(1.35rem, 3vw, 2rem); }
.lineup-match-heading img { padding: 3px; border-radius: 8px; background: #fff; }
.lineup-match-card p { margin: 6px 0 0; font-size: .9rem; color: var(--muted); }
.lineup-deadline time { color: var(--text); font-weight: 750; }
.lineup-editor { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); grid-template-areas: "roster board"; gap: 22px; align-items: start; }
.lineup-roster { grid-area: roster; min-width: 0; }
.lineup-editor:has(.lineup-board[hidden]) { grid-template-columns: minmax(0, 1fr); grid-template-areas: "roster"; }
.lineup-board { grid-area: board; min-width: 0; position: sticky; top: 16px; }
.lineup-editor h3 { margin: 0; }
.lineup-board-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 12px; margin-bottom: 12px; }
.lineup-board-heading label { display: flex; gap: 7px; align-items: center; color: var(--muted); font-size: .86rem; font-weight: 700; }
.lineup-board-heading select { min-height: 40px; padding: 6px 10px; border: 1px solid var(--line); border-radius: 8px; background: var(--panel); color: var(--text); font: inherit; }
.lineup-board .lineup-board-help { min-height: 2.7em; margin: 10px 0 0; color: var(--muted); font-size: .86rem; }
.lineup-pitch {
    position: relative;
    display: grid;
    gap: 3px;
    min-height: 390px;
    padding: 20px 12px;
    border: 1px solid #265f48;
    border-radius: 14px;
    background: repeating-linear-gradient(0deg, #1b5b43 0% 12.5%, #205f47 12.5% 25%);
    color: #fff;
}
.lineup-pitch[hidden] { display: none; }
.lineup-pitch::before, .lineup-pitch::after { content: ""; position: absolute; pointer-events: none; }
.lineup-pitch::before {
    inset: 11px;
    border: 1px solid #c7e8d280;
    border-radius: 4px;
    background: linear-gradient(to bottom, transparent calc(50% - .5px), #c7e8d280 0 calc(50% + .5px), transparent 0);
}
.lineup-pitch::after { inset: 50% auto auto 50%; width: 19%; aspect-ratio: 1; border: 1px solid #c7e8d280; border-radius: 50%; transform: translate(-50%, -50%); }
.lineup-pitch-row { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(var(--positions), minmax(0, 1fr)); place-items: center; gap: 3px; min-width: 0; }
.games-site .games-page .lineup-marker {
    display: grid;
    justify-items: center;
    gap: 4px;
    width: min(100%, 118px);
    min-width: 0;
    padding: 4px 2px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: #fff;
    text-align: center;
}
.games-site .games-page button.lineup-marker {
    --ui-button-bg: transparent;
    --ui-button-hover: #112e27a0;
    --ui-button-text: #fff;
    --ui-button-hover-text: #fff;
    --ui-button-radius: 8px;
    /* Keep the pitch marker compact under the shared button styling. */
    padding: 4px 2px !important;
}
.games-site .games-page button.lineup-marker:is([aria-pressed="true"], :hover) { box-shadow: inset 0 0 0 1px #def7e199; background: #112e27a0; }
.lineup-marker-name { display: block; max-width: 100%; overflow: hidden; padding: 3px 5px; border-radius: 4px; background: #102c24; font-size: .72rem; font-weight: 700; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.lineup-marker.is-empty .lineup-marker-name { color: #e0f5e8; background: transparent; }
.lineup-portrait {
    position: relative;
    display: inline-grid;
    place-items: center;
    flex: none;
    width: 42px;
    height: 42px;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: var(--bg);
    color: var(--text);
    font-size: 1rem;
    font-weight: 800;
}
.lineup-portrait img { position: absolute; inset: 0; width: 100%; height: 100%; border-radius: inherit; object-fit: cover; }
.lineup-portrait img[hidden], .lineup-match-heading img[hidden] { display: none; }
.lineup-marker .lineup-portrait { border-color: #ddf2e8; background: #eff6f0; color: #173a2b; }
.lineup-marker.is-empty .lineup-portrait { border: 1px dashed #e0f5e8b3; background: #113b30cc; color: #e0f5e8; }
.lineup-marker-number { position: absolute; right: -5px; bottom: -3px; z-index: 1; min-width: 18px; padding: 2px 3px; border-radius: 6px; background: #1a2137; color: #fff; font-size: .68rem; line-height: 1; }
.lineup-roster .games-squad-filter { margin-block: 10px; }
.lineup-roster .games-squad-filter input { width: 100%; }
.lineup-roster .games-squad { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 0; border: 0; }
.lineup-roster .games-squad legend { padding: 0 0 8px; color: var(--muted); font-size: .82rem; }
.lineup-roster .games-pick {
    display: grid;
    grid-template-columns: auto auto minmax(0, 1fr) auto;
    gap: 7px;
    min-height: 65px;
    padding: 7px;
    border-radius: 9px;
    background: var(--panel);
}
.lineup-roster .games-pick[hidden] { display: none; }
.lineup-roster .games-pick:has(input:checked) { border-color: var(--nav); background: color-mix(in srgb, var(--nav) 8%, var(--panel)); }
.lineup-roster .games-pick .lineup-portrait { width: 36px; height: 36px; }
.lineup-roster .games-pick input { width: 16px; height: 16px; margin: 0; }
.lineup-player-text { min-width: 0; overflow-wrap: anywhere; line-height: 1.23; }
.lineup-player-text strong { font-size: .88rem; }
.lineup-player-text small { display: block; margin-top: 3px; color: var(--muted); font-size: .75rem; }
.lineup-player-number, .lineup-formation-badge { padding: 3px 5px; border: 1px solid var(--line); border-radius: 6px; background: var(--bg); color: var(--text); font-size: .75rem; font-weight: 800; }
.lineup-save-bar {
    position: sticky;
    bottom: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 14px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: var(--panel);
    box-shadow: 0 -4px 16px #17203215;
}
.lineup-save-bar .games-selection-count { margin: 0; font-size: .9rem; }
.lineup-pitch-result { max-width: 520px; margin: 14px 0; }
.lineup-result-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 235px), 1fr)); gap: 8px; padding: 0; list-style: none; }
.lineup-result-list li { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; padding: 7px 9px; border: 1px solid var(--line); border-radius: 8px; }
.lineup-player-result { margin-left: auto; color: var(--muted); }
.lineup-rules summary { cursor: pointer; font-weight: 750; }
.lineup-week-heading, .lineup-history-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 16px; }
.lineup-week-heading h2, .lineup-history-head h2 { margin: 0; }
.lineup-week-heading p, .lineup-history-head p { margin: 3px 0 0; color: var(--muted); }
.lineup-history-jump { font-size: .9rem; font-weight: 750; }
.lineup-week-tabs { margin-block: 18px 12px; }
.games-site .games-page .lineup-week-tabs a { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; text-align: left; }
.lineup-week-tabs a small { font-size: .76rem; font-weight: 600; }
.lineup-week-message { margin: 12px 0 0; }
.lineup-alternatives, .lineup-history-list { display: grid; gap: 10px; padding: 0; margin: 14px 0 0; list-style: none; }
.lineup-alternative, .lineup-history-match {
    display: grid; align-items: center; gap: 12px 20px; padding: 13px 16px;
    border: 1px solid var(--line); border-radius: 10px; color: var(--text); text-decoration: none;
}
.lineup-alternative {
    grid-template-columns: minmax(0, 1fr) auto; border-inline-start: 4px solid var(--nav);
    background: color-mix(in srgb, var(--nav) 6%, var(--panel));
}
.lineup-alternative:hover, .lineup-history-match:hover,
.lineup-alternative[aria-current], .lineup-history-match[aria-current] {
    border-color: var(--nav); color: var(--text); background: color-mix(in srgb, var(--nav) 9%, var(--panel));
}
.lineup-alternative-info, .lineup-history-info { display: grid; gap: 5px; min-width: 0; }
.lineup-alternative-league, .lineup-history-info time { color: var(--muted); font-size: .79rem; font-weight: 650; }
.lineup-teams { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; min-width: 0; font-weight: 800; }
.lineup-teams-club { display: inline-flex; align-items: center; gap: 6px; min-width: 0; overflow-wrap: anywhere; }
.lineup-teams-club img { flex: none; width: 28px; height: 28px; object-fit: contain; }
.lineup-teams-score { color: var(--nav); font-variant-numeric: tabular-nums; }
.lineup-alternative-cta { color: var(--nav); font-weight: 800; font-size: .88rem; }
.lineup-history-match { grid-template-columns: minmax(0, 1fr) auto auto; }
.lineup-history-result { display: flex; align-items: center; gap: 10px 16px; }
.lineup-history-hits { display: grid; gap: 2px; line-height: 1.1; }
.lineup-history-hits > strong { font-size: 1.5rem; font-variant-numeric: tabular-nums; }
.lineup-history-hits small, .lineup-history-hits > span { color: var(--muted); font-size: .76rem; }
.lineup-history-points, .lineup-history-status {
    width: fit-content; border-radius: 6px; padding: 5px 8px; font-size: .79rem; font-weight: 700;
    color: var(--text); background: color-mix(in srgb, var(--nav) 9%, var(--panel));
}
.lineup-history-arrow { color: var(--nav); font-size: 1.45rem; line-height: 1; }
@media (max-width: 580px) {
    .lineup-alternative { grid-template-columns: minmax(0, 1fr); gap: 7px; }
    .lineup-history-match { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; }
    .lineup-history-arrow { grid-column: 2; grid-row: 1 / span 2; }
    .lineup-history-result, .lineup-history-status { grid-column: 1; }
}
@media (max-width: 780px) {
    .lineup-editor { grid-template-columns: minmax(0, 1fr); grid-template-areas: "board" "roster"; gap: 14px; }
    .lineup-board { position: static; }
    .lineup-pitch { min-height: 345px; padding-inline: 8px; }
}
@media (max-width: 460px) {
    .lineup-roster .games-squad { grid-template-columns: 1fr; }
    .lineup-roster .games-pick { min-height: 54px; padding: 6px 9px; }
    .lineup-marker .lineup-portrait { width: 36px; height: 36px; }
    .lineup-marker-name { font-size: .66rem; }
}
.games-site .games-page {
    --arena-brand: var(--nav);
    --arena-on-brand: var(--ui-brand-text, #fff);
    --arena-accent: var(--lime);
    --arena-on-accent: var(--ui-accent-text, #23172b);
    --arena-tint: color-mix(in srgb, var(--nav) 5%, var(--panel));
    --arena-line: color-mix(in srgb, var(--arena-on-brand) 23%, transparent);
    padding-block: clamp(14px, 2vw, 26px) 56px;
}

.games-arena-banner {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(22px, 4.4vw, 62px);
    border-radius: var(--ui-card-radius);
    background: var(--arena-brand);
    color: var(--arena-on-brand);
    --ui-focus: var(--ui-focus-on-brand, var(--arena-on-brand));
}
.games-banner-content { position: relative; z-index: 1; max-width: 56%; }
.games-banner-kicker,
.games-page-heading > p {
    margin: 0 0 14px;
    font-size: .75rem;
    font-weight: 750;
    letter-spacing: .09em;
    text-transform: uppercase;
}
.games-banner-kicker span {
    display: inline-block;
    width: 7px;
    height: 7px;
    margin: 0 5px 1px;
    border-radius: 50%;
    background: var(--arena-accent);
}
.games-arena-banner h1,
.games-page-heading h1 {
    margin: 0;
    font-size: clamp(2rem, 5.2vw, 4.25rem);
    line-height: 1.04;
    letter-spacing: -.045em;
    overflow-wrap: anywhere;
}
.games-banner-description {
    max-width: 43ch;
    margin: 16px 0 0;
    font-size: clamp(1rem, 1.6vw, 1.22rem);
    line-height: 1.55;
}
.games-activity-banner {
    display: flex;
    justify-content: space-between;
    align-items: start;
    gap: 16px;
    padding: clamp(20px, 3.5vw, 42px);
}
.games-activity-banner h1 { font-size: clamp(1.6rem, 4.4vw, 3.4rem); }
.games-activity-description { margin: 12px 0 0; line-height: 1.45; }
.games-banner-score { flex: none; margin: 0; min-width: 66px; text-align: right; line-height: 1.15; }
.games-banner-score strong { display: block; font-size: clamp(2.3rem, 5vw, 4.5rem); letter-spacing: -.07em; font-variant-numeric: tabular-nums; }
.games-banner-score span { display: block; font-size: .76rem; margin-top: 4px; }
.games-banner-pitch {
    position: absolute;
    inset: 0 0 0 auto;
    display: grid;
    place-items: center;
    width: 44%;
    padding: 14px;
    background: color-mix(in srgb, var(--arena-on-brand) 6%, transparent);
    pointer-events: none;
}
.games-banner-pitch svg { width: 100%; max-height: 100%; }
.games-banner-pitch svg :is(path, circle) { stroke: currentColor; stroke-width: 1.5; stroke-opacity: .25; }
.games-banner-pitch svg .games-pitch-play { stroke: var(--arena-accent); stroke-opacity: 1; stroke-width: 2; }
.games-pitch-markers circle { fill: var(--arena-accent); }
.games-feature {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 20px;
    margin-top: 25px;
}
.games-feature strong { display: block; overflow-wrap: anywhere; }
.games-feature small { display: block; margin-top: 3px; font-size: .85rem; line-height: 1.45; }
.games-arena-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    min-height: 46px;
    padding: 10px 18px;
    border-radius: var(--ui-button-radius);
    background: var(--arena-accent);
    color: var(--arena-on-accent);
    font-weight: var(--ui-control-weight);
    text-decoration: none;
}
.games-arena-action:hover { text-decoration: underline; text-underline-offset: 4px; }
.games-page-heading { margin: 0 0 24px; padding: 12px 0; }
.games-page-heading > p { color: var(--muted); }
.games-page-heading h1 { font-size: clamp(1.85rem, 4.2vw, 3.2rem); }

.games-scoreboard {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 24px;
    padding: 17px clamp(14px, 3vw, 28px);
    margin: 14px 0 0;
    border: 1px solid var(--line);
    border-radius: var(--ui-card-radius);
    background: var(--panel);
}
.games-scoreboard dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); flex: 1 1 420px; gap: 12px 24px; margin: 0; }
.games-scoreboard dl > div + div { border-left: 1px solid var(--line); padding-left: clamp(8px, 2vw, 20px); }
.games-scoreboard dt { font-size: .82rem; line-height: 1.35; color: var(--muted); }
.games-scoreboard dd { margin: 4px 0 0; font-size: clamp(1.35rem, 2.5vw, 1.9rem); line-height: 1; font-weight: 750; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.games-scoreboard dd small { font-size: .75rem; color: var(--muted); }
.games-scoreboard > a, .games-section-heading > a { color: var(--nav); font-size: .88rem; font-weight: 700; padding-block: 7px; }
.games-scoreboard > a:hover, .games-section-heading > a:hover { text-decoration: underline; }

.games-programme { margin-top: clamp(26px, 4vw, 44px); }
.games-section-heading { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 2px 16px; }
.games-section-heading h2 { margin: 0; font-size: clamp(1.25rem, 2.8vw, 1.8rem); }
.games-programme-list { margin-top: 12px; border-block: 1px solid var(--line); }
.games-programme-row {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto 20px;
    align-items: center;
    gap: clamp(10px, 2vw, 22px);
    padding: clamp(14px, 2vw, 23px) clamp(8px, 2vw, 18px);
    color: var(--text);
    text-decoration: none;
}
.games-programme-row + .games-programme-row { border-top: 1px solid var(--line); }
.games-programme-row:hover { background: var(--arena-tint); }
.games-programme-symbol { display: grid; place-items: center; aspect-ratio: 1; border-radius: 12px; background: var(--arena-tint); color: var(--nav); }
.games-programme-symbol svg { width: 29px; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.games-programme-name > * { display: block; overflow-wrap: anywhere; }
.games-programme-name > strong { font-size: clamp(1rem, 2vw, 1.2rem); }
.games-programme-name > span { font-size: .91rem; margin-top: 3px; }
.games-programme-name > small { color: var(--muted); font-size: .82rem; margin-top: 4px; }
.games-programme-points { text-align: right; color: var(--muted); font-size: .8rem; white-space: nowrap; }
.games-programme-points strong { color: var(--text); font-size: 1.3rem; font-variant-numeric: tabular-nums; }
.games-programme-arrow { font-size: 1.15rem; color: var(--nav); }

.games-site .games-page :is(.games-card, .f24-poll) { border-color: var(--line); }
.games-site .games-table :is(th, td) { border-bottom-color: var(--line); }
.games-site .games-table tbody > tr:last-child :is(th, td) { border-bottom: 0; }
.games-site .games-table td:last-child { font-variant-numeric: tabular-nums; }
.games-site .games-page .f24-poll { border-top-width: 1px; }
.games-site .f24-poll-bonus { background: var(--arena-accent); color: var(--arena-on-accent); }

@media (max-width: 620px) {
    .games-banner-content { max-width: none; }
    .games-home-banner { padding-right: max(22px, 8%); }
    .games-banner-pitch { width: 52%; background: none; opacity: .38; mask-image: linear-gradient(to right, transparent, #000); }
    .games-scoreboard dl { gap: 8px; }
    .games-programme-row { grid-template-columns: 40px minmax(0, 1fr) auto; }
    .games-programme-symbol svg { width: 24px; }
    .games-programme-points strong { display: block; }
    .games-programme-arrow { display: none; }
}
