/* GOLTIKI editorial system. Load AFTER existing component stylesheets.
   Existing --paper means foreground, not a paper background. Keep that contract.
   Club crests, --choice-primary, --club-secondary and all visibility hooks remain.
   Review real AR/EN pages at 360/390/768/1280px, open dialogs, selected club,
   empty/error feeds, long names, keyboard focus and zoom before release. */
:root {
  --ed-paper: #fff; --ed-ink: #17211e; --ed-green: #087453;
  --ed-muted: #53615b; --ed-soft: #eef5f1; --ed-line: #e0e7e3;
  --ed-hover: #f5f8f6; --ed-error: #a42d32; --ed-warning: #785416;
  --ed-radius: 8px; --ed-shadow: 0 8px 28px rgb(23 33 30 / .08);
  --ed-reading: 72ch; --ed-control: 44px;
  color-scheme: light;
}
html { scroll-padding-top: 160px; }
body.home-focused, body.standalone-page {
  --bg: var(--ed-paper); --surface: var(--ed-paper); --surface-2: var(--ed-soft);
  --paper: var(--ed-ink); --muted: var(--ed-muted); --line: var(--ed-line);
  --accent: var(--ed-green); --lime: var(--ed-green); --green: var(--ed-green);
  --accent-ink: #fff; --radius: var(--ed-radius);
  background: var(--ed-paper); color: var(--ed-ink); color-scheme: light;
  font-size: 16px; line-height: 1.7; text-rendering: optimizeLegibility;
}
html[lang=ar] body:is(.home-focused,.standalone-page) { font-family: Tajawal,Tahoma,Arial,sans-serif; }
body:is(.home-focused,.standalone-page) :where(button,input,select,textarea) { font-family: inherit; }
body:is(.home-focused,.standalone-page) :where(h1,h2,h3) { text-wrap: pretty; }
body:is(.home-focused,.standalone-page) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible {
  outline: 3px solid var(--ed-green); outline-offset: 4px;
}
body:is(.home-focused,.standalone-page) ::selection { background: #cceadd; color: var(--ed-ink); }
body:is(.home-focused,.standalone-page) :where(button,select,input:not([type=checkbox]):not([type=radio]):not([type=hidden])) { min-height: var(--ed-control); }
body:is(.home-focused,.standalone-page) :where(input,textarea)::placeholder { color: var(--ed-muted); opacity: 1; }
body:is(.home-focused,.standalone-page) :where(input[type=checkbox],input[type=radio]) { accent-color: var(--ed-green); }
.skip-link { background: var(--ed-ink); color: #fff; }
.home-focused .container,.standalone-page .page-container { width: min(1180px,calc(100% - 48px)); }

/* Header: preserve DOM order; navigation wraps after tools on narrow screens. */
.home-editorial-intro { padding-block: 14px 0; }
.home-editorial-intro h1 { font-size: 20px; line-height: 1.55; font-weight: 700; }
.home-news-archive { margin-block: 8px 32px; padding: 0 18px; border: 1px solid var(--ed-line); border-radius: 6px; }
.home-news-archive>summary { min-height: 48px; padding-block: 12px; color: var(--ed-green); font-size: 15px; font-weight: 700; cursor: pointer; }
.home-news-archive .section-space { margin-top: 16px; }
.home-focused .editorial-grid .lead-image { display: none; }
.home-focused .score-strip:has(.score-strip-card:only-child) { width: fit-content; max-width: 100%; }
.home-focused .score-strip-intro strong { font-size: 16px; line-height: 1.4; }
.home-focused .score-strip-intro { padding: 12px 16px; }
.home-focused .editorial-grid .lead-story { min-height: 0; }
.home-focused .editorial-grid .lead-copy { position: static; padding: 20px 0; }
.home-focused .editorial-grid .lead-image { max-height: 180px; }
.home-focused .editorial-grid .lead-copy h2 { font-size: 26px; }
.header,.page-header,.has-club-theme .header,.has-club-theme .page-header {
  background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line);
  box-shadow: 0 1px 0 rgb(23 33 30 / .025);
}
.header-inner,.page-header-inner { display: grid; grid-template-columns: minmax(0,1fr) auto; min-height: 76px; gap: 4px 24px; padding-block: 12px 0; }
.header .header-tools,.page-header .page-languages { justify-self: end; margin-inline-start: 0; }
.header nav,.page-header .page-nav { order: 0; grid-column: 1 / -1; width: 100%; gap: 24px; min-height: 44px; margin: 0; justify-content: flex-start; overflow-x: auto; scrollbar-width: thin; }
.header .header-inner>*,.page-header .page-header-inner>* { order: 0; }
.header .header-inner>nav,.page-header .page-header-inner>.page-nav { order: 0; justify-content: flex-start; }
.header .brand-label,.page-header .page-brand-name { color: var(--ed-ink); }
.header .brand,.page-header .page-brand { width: max-content; max-width: 100%; justify-self: start; }
.header .brand-symbol,.page-header .page-brand-symbol,.page-brand-mark { background: var(--ed-green); color: #fff; }
.header .nav-link,.page-header .page-nav>a { color: var(--ed-muted); min-height: 44px; font-size: 14px; }
.header .nav-link:is(.active,:hover),.page-header .page-nav>a:is([aria-current=page],:hover) { color: var(--ed-green); }
.header .language-control select,.page-header .language-control select,.page-language-links>a {
  background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); min-height: 44px; font-size: 14px;
}
.page-language-links>a[aria-current=true] { background: var(--ed-soft); color: var(--ed-green); }
.header .search-toggle { color: var(--ed-ink); min-width: 44px; min-height: 44px; }
.page-utilities,.club-theme-subbar { border-color: var(--ed-line); }
.page-utilities>a,.club-theme-subbar>a { color: var(--ed-muted); min-height: 44px; font-size: 13px; }
.editorial-tools { margin-block: 12px; border-block-end: 1px solid var(--ed-line); }
.editorial-tools>summary { width: fit-content; min-height: 44px; padding: 10px 4px; color: var(--ed-green); font-size: 14px; font-weight: 700; line-height: 24px; cursor: pointer; }
.editorial-tools>summary::marker { color: var(--ed-green); }
.editorial-tools>.page-utilities { margin: 0 0 12px; padding: 12px 16px; border: 1px solid var(--ed-line); border-radius: 6px; background: var(--ed-soft); }
.editorial-tools>.page-utilities>a { padding-inline: 6px; }
.club-theme-launch,.club-theme-trigger { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); min-height: 44px; font-size: 13px; }
.has-club-theme :is(.club-theme-launch,.club-theme-trigger)::before { background: var(--club-secondary,var(--ed-green)); box-shadow: 0 0 0 1px var(--ed-muted); }
.mobile-navigation,.has-club-theme .mobile-navigation { background: var(--ed-paper); border-color: var(--ed-line); box-shadow: 0 -3px 18px rgb(23 33 30 / .04); }
.mobile-navigation>a { color: var(--ed-muted); min-height: 44px; font-size: 12px; }
.mobile-navigation>a.active { color: var(--ed-green); }

/* Controls: green only for selected states and clear primary actions. */
.primary-button,.sports-directory-search button,.comparison-controls>button,.contests-cta,
.favorite-team-alerts,.match-experience button,.match-poster-actions a,.fg button {
  background: var(--ed-green); color: #fff; border-color: var(--ed-green);
  border-radius: 6px; min-height: 44px; font-size: 15px; font-weight: 700; line-height: 1.5;
}
.has-club-theme .primary-button { color: #fff; }
.primary-button:hover { background: #066345; transform: none; }
.outline-button,.quiet-button,.page-share button,.cc-action,.cc-view-toggle {
  background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); min-height: 44px; font-size: 14px;
}
.outline-button:hover,.quiet-button:hover,.page-share button:hover { background: var(--ed-soft); color: var(--ed-green); border-color: var(--ed-green); }
.home-focused .home-priority-links :is(a,a:first-child,.home-free-game-cta,.home-basketball-button) {
  background: var(--ed-paper); color: var(--ed-green); border-color: var(--ed-line); min-height: 44px; font-size: 14px; box-shadow: none;
}
.home-focused .home-priority-links :is(a,.home-free-game-cta,.home-basketball-button):hover { background: var(--ed-soft); border-color: var(--ed-green); color: var(--ed-green); }
.region-tabs button,.view-tabs button,.detail-tabs button,.match-quick-days button { color: var(--ed-muted); min-height: 44px; font-size: 14px; }
.region-tabs button[aria-pressed=true],.view-tabs button[aria-pressed=true],.detail-tabs button[aria-pressed=true],
.match-quick-days button[aria-pressed=true],.team-profile-tabs .team-profile-tab[aria-selected=true],
.sports-directory-current,.articles-hub-pagination>[aria-current=page] { background: var(--ed-green); border-color: var(--ed-green); color: #fff; }
.view-tabs button:hover:not([aria-pressed=true]),.region-tabs button:hover:not([aria-pressed=true]) { color: var(--ed-green); }
.date-control input,.league-select select,.match-search-control input,.match-timezone-control select,
.comparison-controls :is(input,select),.page-timezone-control select,.home-access-fields input,
.match-question-controls input,.fg input:not([type=checkbox]),.fg select {
  background: var(--ed-paper); color: var(--ed-ink); border-color: #b6c5bc; min-height: 44px; font-size: 16px; border-radius: 6px;
}
.search-control { border-color: #b6c5bc; }
.search-control input { color: var(--ed-ink); font-size: 16px; }
#match-search,#match-timezone { min-height: 44px; font-size: 16px; }
#favorites-filter { min-height: 44px; font-size: 14px; }
#match-day-note { font-size: 13px; line-height: 1.65; }
.fixture-free-predict,.home-focused .fixture-card>.fixture-free-predict { color: var(--ed-green); border-color: var(--ed-line); }
.favorite-team-toggle,.close-dialog,.club-picker-close { width: 44px; min-width: 44px; height: 44px; min-height: 44px; color: var(--ed-muted); border-color: var(--ed-line); }
.favorite-team-toggle[aria-pressed=true] { color: var(--ed-green); background: var(--ed-soft); }

/* Homepage: light match area, editorial photographs, calm supporting sections. */
.home-focused .home-priorities { display: block; padding-block: 20px 8px; }
.home-focused .home-priorities h1 { font-size: clamp(24px,2.6vw,32px); }
.home-focused .home-priority-links { display: flex; width: 100%; max-width: none; flex-wrap: wrap; align-items: center; justify-content: flex-start; gap: 8px; margin-top: 12px; }
.home-focused .home-priority-links :is(a,button) { width: auto; flex: 0 1 auto; min-height: 44px; padding-inline: 16px; }
.home-focused .home-priorities .home-priority-links { display: flex; width: 100%; flex-wrap: wrap; }
.home-focused .home-priorities .home-priority-links>a,
.home-focused .home-priorities .home-priority-links>button { flex: 0 1 auto; width: auto; grid-column: auto; min-height: 44px; font-size: 14px; }
.home-focused .home-priorities [data-home-priority=intro] { font-size: 14px; margin-top: 4px; }
.home-priorities h1 { font-size: clamp(26px,3vw,36px); line-height: 1.4; letter-spacing: normal; }
.home-focused .section-label h2,.section-label h2 { font-size: clamp(24px,3vw,30px); line-height: 1.45; letter-spacing: normal; }
.home-focused .section-space { margin-top: 40px; }
.news-ticker,.score-strip,.match-panel,.home-access { background: var(--ed-soft); color: var(--ed-ink); border-color: var(--ed-line); }
.home-focused .score-strip:not([hidden]) { display: flex; margin-block: 18px 0; }
.home-focused #editorial:not([hidden]) { display: grid; }
.news-ticker-source,.news-ticker-control { font-size: 12px; }
.news-ticker-dot { box-shadow: 0 0 0 4px rgb(8 116 83 / .08); }
.score-strip-card { background: var(--ed-paper); }
.score-strip-card:hover { background: var(--ed-hover); }
.score-strip-team-name { font-size: 14px; line-height: 1.5; }
.score-strip-meta,.score-strip-time,.score-strip-state { font-size: 12px; }
.score-strip-intro>a { min-height: 44px; font-size: 13px; }
.strip-navigation { width: 44px; background: var(--ed-paper); color: var(--ed-ink); }
.strip-navigation button:hover { background: var(--ed-soft); color: var(--ed-green); }
.view-tabs,.detail-tabs { background: #e7eee9; }
.widget-controls,.match-discovery,.provider-foot { border-color: var(--ed-line); }
.native-matches { background: var(--ed-hover); }
.fixture-card,.home-focused .fixture-card,.has-club-theme .fixture-card { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); }
.fixture-card.is-live,.home-focused .fixture-card.is-live { background: var(--ed-soft); border-color: #8ebca8; }
.fixture-league,.fixture-meta,.fixture-round,.fixture-source-details,.provider-foot { color: var(--ed-muted); }
.fixture-league::before { background: var(--ed-green); }
.home-focused .fixture-card .fixture-team-name { font-size: 15px; line-height: 1.5; }
.fixture-team:nth-last-child(1) .team-initials { background: var(--ed-soft); color: var(--ed-ink); }
.fixture-meta,.fixture-round,.home-focused .fixture-card>.fixture-last-success,.home-focused .fixture-card>.fixture-source-details>summary { font-size: 13px; }
.home-focused .native-matches>#match-status,.provider-foot { font-size: 13px; line-height: 1.65; }
.home-focused .lead-story,.has-club-theme .lead-story { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); box-shadow: none; }
.home-focused .lead-copy { padding: 24px; }
.home-focused .lead-copy h2 { font-size: clamp(25px,3.2vw,36px); line-height: 1.5; letter-spacing: normal; }
.home-focused .lead-copy p { color: var(--ed-muted); font-size: 16px; line-height: 1.85; }
body.home-focused .news-cover-frame,body.standalone-page .page-news-cover-frame { background: var(--ed-soft); border-color: var(--ed-line); border-radius: 6px; }
body.home-focused .news-cover-credit,body.standalone-page .page-news-cover-credit { font-size: 13px; line-height: 1.65; color: var(--ed-muted); }
.headline-card,.home-focused .headline-card:first-child,.has-club-theme .headline-card:first-child,
.page-news-card,.page-news-card:first-child { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); box-shadow: none; }
.headline-card:hover { border-color: #8ebca8; transform: none; }
.home-focused .headline-card:first-child h3,.headline-card h3 { font-size: 21px; line-height: 1.6; letter-spacing: normal; }
.headline-card:first-child :is(.headline-meta,.source-link,p),.page-news-card:first-child :is(.page-news-meta,p) { color: var(--ed-muted); }
.headline-card:first-child h3 a:hover,.page-news-card:first-child h2 a:hover,.page-news-card:first-child .page-read-link:hover { color: var(--ed-green); }
.headline-meta,.source-link,.radar-source,.home-lead-meta,.newsroom-byline,.newsroom-source { font-size: 13px; line-height: 1.65; }
.headline-card p,.radar-story p { color: var(--ed-muted); font-size: 15px; line-height: 1.85; }
.home-focused .home-originals-preview>.headline-card h3 { font-size: 20px; line-height: 1.6; }
.home-editorial-feature { min-width: 0; padding-block: 28px; border-block: 1px solid var(--ed-line); }
.home-originals-grid { display: grid; grid-template-columns: minmax(0,1.7fr) minmax(260px,1fr); gap: 24px; align-items: start; }
.home-original-card { min-width: 0; color: var(--ed-ink); background: var(--ed-paper); }
.home-original-card.is-feature { grid-row: span 3; }
.home-original-card:not(.is-feature) { display: block; padding-block-end: 20px; border-block-end: 1px solid var(--ed-line); }
.home-original-card figure,.home-original-copy { min-width: 0; margin: 0; }
.home-original-card :is(h2,h3) { font-size: 23px; line-height: 1.6; margin-block: 14px 8px; }
.home-original-card.is-feature :is(h2,h3) { font-size: clamp(27px,3vw,36px); line-height: 1.5; }
.home-original-card:not(.is-feature) :is(h2,h3) { font-size: 21px; margin-block-start: 4px; }
.home-original-card :is(h2,h3)>a { color: inherit; }
.home-original-card :is(h2,h3)>a:hover { color: var(--ed-green); text-decoration: underline; text-underline-offset: 4px; }
.home-original-copy>p { font-size: 16px; line-height: 1.85; color: var(--ed-muted); }
.home-original-copy>.home-original-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 14px; font-size: 13px; margin-block: 10px 6px; }
.home-original-card img { display: block; max-width: 100%; height: auto; object-fit: contain; border-radius: 6px; }
.home-original-card :is(time,figcaption,.headline-meta) { font-size: 13px; line-height: 1.7; color: var(--ed-muted); }
.home-original-card figcaption a { color: var(--ed-green); text-decoration: underline; text-underline-offset: 3px; }
.home-originals-more { margin-top: 20px; color: var(--ed-ink); }
.home-originals-more>summary { min-height: 44px; padding-block: 10px; color: var(--ed-green); cursor: pointer; font-size: 15px; }
.home-originals-more li { padding-block: 8px; line-height: 1.8; }
.home-originals-more time { display: block; font-size: 13px; color: var(--ed-muted); }
.home-access-links a,.home-access-fields button:last-child { color: var(--ed-green); background: var(--ed-paper); border-color: var(--ed-line); }
.home-access-fields button { background: var(--ed-green); color: #fff; border-color: var(--ed-green); }
.home-access-search p { color: var(--ed-muted); }
.directory-card,.world-card,.home-centre-card { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); }
.directory-card:hover,.directory-card:focus-visible,.world-card:hover,.home-centre-card:hover { background: var(--ed-soft); border-color: var(--ed-green); }
.directory-intro p,.directory-card p,.world-card p,.home-centre-card p { color: var(--ed-muted); font-size: 15px; line-height: 1.8; }
.directory-action,.world-link,.home-centre-open { color: var(--ed-green); font-size: 14px; }
.world-number,.home-centre-number { color: var(--ed-muted); }
.language-banner,.manifesto,.has-club-theme .manifesto { background: var(--ed-soft); color: var(--ed-ink); border: 1px solid var(--ed-line); }
.manifesto h2,html[dir=ltr] .manifesto h2 { font-size: clamp(30px,4vw,48px); line-height: 1.35; letter-spacing: normal; }
.manifesto-arrow { border-color: var(--ed-green); width: 44px; height: 44px; }
.manifesto-ball { color: #dbeadf; }

/* Standalone reading, directories, team/player data and shared tables. */
.page-breadcrumb,.page-small,.page-footnote,.page-source-box>a,.page-timezone-control,
.comparison-select-label,.comparison-picker-status { color: var(--ed-muted); font-size: 14px; line-height: 1.7; }
.page-breadcrumb [aria-current=page] { color: var(--ed-ink); }
.page-hero { padding-block: 32px 28px; }
.page-hero>h1,.page-story .page-hero h1,html[dir=ltr] .page-hero h1,html[lang=ar] .page-hero h1 {
  font-size: clamp(30px,3.7vw,48px); line-height: 1.45; letter-spacing: normal; overflow-wrap: break-word;
}
.page-hero>p,.page-league-hero p { font-size: 18px; line-height: 1.85; color: var(--ed-muted); }
.page-kicker { font-size: 13px; letter-spacing: .03em; }
.page-story { max-width: 860px; }
.page-prose { max-width: var(--ed-reading); font-size: 19px; line-height: 1.95; overflow-wrap: break-word; }
.page-story>.page-prose { margin-inline: auto; padding-top: 28px; }
.page-story>.page-prose p,.page-prose p { color: var(--ed-ink); font-size: inherit; line-height: inherit; }
.page-prose :is(ul,ol,li) { color: var(--ed-ink); }
.page-prose h2 { font-size: clamp(24px,2.6vw,30px); line-height: 1.5; margin-block: 36px 16px; letter-spacing: normal; }
.page-prose :is(a,summary) { color: var(--ed-green); text-underline-offset: 4px; }
.page-prose :is(img,figure img) { border-radius: 6px; }
.page-prose figcaption,.page-story-meta { font-size: 14px; color: var(--ed-muted); line-height: 1.75; }
.page-prose blockquote { border-inline-start: 3px solid var(--ed-green); margin-inline: 0; padding: 16px 22px; background: var(--ed-soft); }
.page-story-meta strong { color: var(--ed-ink); }
.page-aside,.page-contact-box,.page-source-box,.page-notice,.page-season,.comparison-controls,
.sports-directory-search,.team-kits,.midfield-diagram { background: var(--ed-soft); color: var(--ed-ink); border-color: var(--ed-line); border-radius: var(--ed-radius); }
.page-notice,.page-footnote,.articles-hub-notice { line-height: 1.85; }
.page-season>strong { color: var(--ed-green); }
.page-story-card,.sports-directory-card,.articles-hub-card { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); border-radius: 6px; }
.sports-directory-card p,.sports-directory-search>p { font-size: 14px; line-height: 1.8; }
.page-story-card h3,html[dir=ltr] .page-story-card h3,.page-news-card h2,html[dir=ltr] .page-news-card h2 { font-size: 24px; line-height: 1.55; }
.page-news-card:first-child h2,html[dir=ltr] .page-news-card:first-child h2 { font-size: clamp(26px,3vw,34px); line-height: 1.5; }
.page-news-meta,.page-news-card p { font-size: 14px; }
.page-table,.centre-content table,.cc-table { background: var(--ed-paper); color: var(--ed-ink); }
.page-table :is(th,td),.centre-content :is(th,td) { border-color: var(--ed-line); font-size: 14px; line-height: 1.65; }
.page-table thead,.page-table caption,.centre-content th,.centre-content tbody th,.cc-table thead th { background: var(--ed-soft); color: var(--ed-muted); }
.page-table tbody>tr:first-child { background: var(--ed-hover); }
.page-table tbody>tr>td:last-child { color: var(--ed-green); }
.page-table a { text-underline-offset: 4px; }
.page-table a:hover { color: var(--ed-green); text-decoration: underline; }
.page-table-scroll,.fg-table-scroll,.cc-table-scroll { scrollbar-color: #a7b7ad var(--ed-soft); }
.centre-nav a,.centre-content .centre-card { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); }
.centre-nav a:is(:hover,[aria-current=page]),.centre-team-switch a[aria-current=page],.cc-league.is-selected { background: var(--ed-green); color: #fff; border-color: var(--ed-green); }
.centre-content :is(p,.source,.centre-source,.scope),.centre-status-line,.cc-heading-copy>p,
.cc-update,.cc-source,.cc-refresh-status,.cc-scroll-hint,.cc-list-identity>span,.cc-list-stat>span,
.cc-scorer-club,.cc-scorer-secondary>span>span { color: var(--ed-muted); font-size: 14px; }
.centre-content :is(a,.metric-value),.centre-kicker { color: var(--ed-green); }
.centre-content :is(.centre-notice,.notice),.centre-limit,.centre-preview-label { background: var(--ed-soft); color: var(--ed-muted); border-color: var(--ed-line); }
.centre-content :is(select,input) { background: var(--ed-paper); color: var(--ed-ink); border-color: #b6c5bc; }
.cc-form-l { color: var(--ed-error); border-color: var(--ed-error); }
.cc-scorer-card.is-first { background: var(--ed-soft); color: var(--ed-ink); border-color: var(--ed-line); }
.cc-scorer-card.is-first :is(.cc-scorer-tag,.cc-scorer-club,.cc-scorer-primary>span,.cc-scorer-secondary>span>span) { color: var(--ed-muted); opacity: 1; }
.team-profile-tabs .team-profile-tab { min-height: 44px; }
.team-kits-action { background: var(--ed-paper); color: var(--ed-ink); border-color: #b6c5bc; border-radius: 6px; }
.team-kits-action>span:last-child,.team-kits-disclosure { color: var(--ed-muted); font-size: 14px; }
.midfield-diagram ol { color: var(--ed-ink); }
.midfield-diagram figcaption { color: var(--ed-muted); }

/* Match identity: one dark result panel; all details remain on readable paper. */
.match-section-nav { display: flex; flex-wrap: wrap; gap: 8px; margin-block: 18px 24px; padding-block: 12px; border-block: 1px solid var(--ed-line); }
.match-section-nav>a { display: inline-flex; align-items: center; min-height: 44px; padding: 9px 15px; border: 1px solid var(--ed-line); border-radius: 6px; background: var(--ed-paper); color: var(--ed-green); font-size: 14px; font-weight: 700; line-height: 1.5; text-decoration: none; }
.match-section-nav>a:hover { background: var(--ed-soft); border-color: var(--ed-green); }
.match-scoreboard { background: var(--ed-ink); color: #fff; border-color: var(--ed-ink); border-radius: 10px; padding: 28px 24px; }
.match-scoreboard .match-team-name,.match-scoreboard .match-team-name a { color: #fff; }
.match-scoreboard .match-team-role,.match-scoreboard .page-small { color: #c8dbd1; }
.match-scoreboard [data-match-score] { color: #fff; }
.match-scoreboard [data-match-state] { color: #a4e2c7; font-size: 14px; }
.match-scoreboard .match-team-crest-fallback { color: #e0ede5; border-color: #6c8678; }
.match-scoreboard .favorite-team-toggle { color: #e0ede5; background: transparent; }
.match-scoreboard .favorite-team-toggle:is(:hover,[aria-pressed=true]) { color: #fff; background: #325344; border-color: #a4e2c7; }
body.standalone-page .match-scoreboard :is(a,button):focus-visible { outline-color: #a4e2c7; }
.match-scoreboard a:hover { text-decoration: underline; text-underline-offset: 5px; }
.match-lineup-team,.match-experience { background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); border-radius: var(--ed-radius); }
.match-lineup-team h4,.match-player-number { color: var(--ed-green); }
.match-player-list li { border-color: var(--ed-line); }
.match-player-list a { min-height: 44px; display: inline-flex; align-items: center; }
.match-experience p { color: var(--ed-muted); font-size: 16px; line-height: 1.85; }
.match-experience .match-answer { color: var(--ed-ink); }
.match-poster { border-color: var(--ed-line); }
.match-commentary { background: var(--ed-soft); }
.match-commentary :is(.match-commentary-source,.match-commentary-stamp,.match-commentary-coverage,.match-commentary-status) { font-size: 13px; }
.match-commentary:is([data-commentary-state=delayed],[data-commentary-state=failed]) .match-commentary-status { color: var(--ed-warning); }
.fixture-score,.score-strip-score,.detail-score,[data-match-score],.timeline-minute,.match-commentary-minute,
.match-player-number,.lineup-list-number,.fg-score input { direction: ltr; unicode-bidi: isolate; font-variant-numeric: tabular-nums lining-nums; }
.stat-values>span:first-child,.stat-values>span:last-child { direction: ltr; unicode-bidi: isolate; font-variant-numeric: tabular-nums; }
.match-detail-dialog,.fg-picker-dialog,.club-picker { color: var(--ed-ink); background: var(--ed-paper); border-color: var(--ed-line); box-shadow: var(--ed-shadow); }
.detail-dialog-header { background: var(--ed-paper); }
.detail-team strong { line-height: 1.5; }
.detail-role,.detail-date,.detail-competition,.detail-notice,.detail-source,.detail-updated { font-size: 13px; color: var(--ed-muted); line-height: 1.65; }
.detail-state { color: var(--ed-green); font-size: 14px; }
.timeline-event-label,.timeline-team,.timeline-assist,.stat-label { font-size: 13px; }
.stat-bars { background: var(--ed-line); }
.stat-away { background: #53615b; }
.timeline-event.is-away .timeline-copy { border-color: var(--ed-muted); }
.lineup-coach,.lineup-role,.lineup-section-title,.lineup-list-position { font-size: 13px; color: var(--ed-muted); }
.lineup-pitch { background: var(--ed-soft); border-color: #b6c5bc; }
.lineup-pitch-name { color: var(--ed-ink); text-shadow: none; font-size: 12px; line-height: 1.5; }
.lineup-list-name { font-size: 14px; line-height: 1.5; }
.lineup-shirt { background: var(--ed-green); color: #fff; box-shadow: 0 0 0 4px var(--ed-soft); }
#lineup-away .lineup-shirt { background: var(--ed-ink); color: #fff; }
.lineup-team-switch button { min-height: 44px; font-size: 14px; }
.dialog-intro,.dialog-footer { color: var(--ed-muted); }
.dialog-footer { font-size: 13px; }
.club-choice-copy>span { font-size: 12px; color: var(--ed-muted); }
.club-choice-copy strong { font-size: 14px; line-height: 1.5; }
.club-choice[aria-pressed=true] { outline: 2px solid var(--ed-green); outline-offset: 1px; }
.club-choice-check,.club-default-mark { color: var(--ed-green); }
.club-picker-privacy,.club-picker-eyebrow,.club-picker-filter { font-size: 13px; }
.club-picker-close { width: 44px; height: 44px; }
.headline-card:first-child .reading-card-actions .source-link { color: var(--ed-green); }
.headline-card:first-child .reading-save-button { color: var(--ed-ink); background: var(--ed-soft); border-color: var(--ed-line); }
.headline-card:first-child .reading-save-button.is-saved { background: var(--ed-green); color: #fff; }
.reading-list-dialog::backdrop { background: rgb(23 33 30 / .55); }
.reading-list-search input { font-size: 16px; }
.reading-list-meta,.reading-list-privacy,.reading-list-status,.reading-list-results { font-size: 13px; }

/* Existing free predictions and campaign blocks: presentation only. */
.fg { color: var(--ed-ink); }
.fg-panel,.fg-board,.fg-rules,.fg-picker-dialog { background: var(--ed-paper); border-color: var(--ed-line); box-shadow: none; }
.fg .fg-member button,.fg .fg-picker-trigger,.fg .fg-picker-option { background: var(--ed-paper); color: var(--ed-ink); border-color: #b6c5bc; }
.fg .fg-picker-option:is(:hover,[aria-pressed=true]),.fg tr[data-own=true] { background: var(--ed-soft); }
.fg .fg-picker-option[aria-pressed=true] { border-color: var(--ed-green); }
.fg-picker-meta,.fg-picker-trigger small,.fg-picker-help,.fg-picker-help .fg-hint { font-size: 13px; color: var(--ed-muted); }
.fg-picker-badge { font-size: 12px; background: var(--ed-soft); color: var(--ed-muted); }
.fg-picker-badge.is-available { color: var(--ed-green); background: var(--ed-soft); }
.fg-picker-badge.is-stale { color: var(--ed-warning); background: #fbf3e2; }
.fg .fg-status[data-error=true] { color: var(--ed-error); }
.fg-picker-help summary { min-height: 44px; line-height: 1.7; padding-block: 10px; }
.fg .fg-picker-dialog input { font-size: 16px; }
.fg th { background: var(--ed-soft); color: var(--ed-muted); }
.contests-hub { --hub-accent: var(--ed-green); background: var(--ed-soft); }
.contests-card,.contests-game { background: var(--ed-paper); border-color: var(--ed-line); }
.contests-game-icon { border-color: var(--ed-line); }
.gp { --gp-gold: var(--ed-green); --gp-paper: var(--ed-ink); --gp-muted: var(--ed-muted); background: var(--ed-paper); color: var(--ed-ink); border-color: var(--ed-line); box-shadow: none; }
.gp::before { background: none; }
.gp-top,.gp-footer,.gp-entry,.gp[data-campaign-status=closed] { background: var(--ed-soft); color: var(--ed-ink); border-color: var(--ed-line); }
.gp-brand bdi { border-color: var(--ed-line); }
.gp-free,.gp-rule-summary,.gp-notice { background: var(--ed-soft); border-color: var(--ed-line); color: var(--ed-muted); }
.gp-rule-summary p,.gp-rule-summary strong,.gp-steps strong,.gp-score label,.gp-rules summary,.gp-closed-rules summary { color: var(--ed-ink); }
.gp-cta { background: var(--ed-green); border-color: var(--ed-green); color: #fff; box-shadow: none; }
.gp-prize { background: var(--ed-soft); border-color: var(--ed-line); }
.gp-prize-caption>span,.gp-prize-note { color: var(--ed-muted); font-size: 13px; border-color: var(--ed-line); }
.gp-prize-icon { background: var(--ed-paper); border-color: var(--ed-line); }
.gp-cta-note,.gp-steps li>div>span,.gp-phone>span,.gp-consent,.gp-rules { color: var(--ed-muted); font-size: 13px; }
.gp-score input,.gp-phone input { background: var(--ed-paper); color: var(--ed-ink); border-color: #b6c5bc; }
.gp-result,.gp-rules a { color: var(--ed-green); }
.gp-result[data-error=true] { color: var(--ed-error); }
.gp-close { background: var(--ed-paper); border-color: var(--ed-line); color: var(--ed-ink); width: 44px; height: 44px; }
.gp-footer #gp-campaign-state { background: var(--ed-paper); border-color: var(--ed-line); color: var(--ed-muted); font-size: 13px; }
.gw-promo { background: var(--ed-soft); color: var(--ed-ink); border-color: var(--ed-line); border-radius: var(--ed-radius); }
.gw-kicker,.gw-copy h2 strong { color: var(--ed-green); }
.gw-copy p,.gw-note { color: var(--ed-muted); }
.gw-note { font-size: 13px; }
.gw-action,.gw-action:hover { background: var(--ed-paper); border: 1px solid var(--ed-green); border-radius: 6px; }

/* Footer and privacy UI retain their existing behavior and visibility rules. */
.page-footer { background: var(--ed-soft); border-color: var(--ed-line); }
.footer-inner p,.footer-bottom,.page-footer-bottom,.page-footer-top p { color: var(--ed-muted); font-size: 14px; }
.page-footer-nav a,.footer-page-links a { font-size: 14px; min-height: 44px; display: inline-flex; align-items: center; color: var(--ed-muted); }
.page-footer-nav a:hover,.footer-page-links a:hover { color: var(--ed-green); }
.analytics-panel { box-shadow: var(--ed-shadow); }
.analytics-panel .analytics-description,.analytics-panel .analytics-status,.analytics-privacy { font-size: 14px; }
.analytics-panel .analytics-choice:hover { background: var(--ed-soft); }

@media (max-width: 900px) {
  .header-inner,.page-header-inner { gap: 4px 14px; }
  .header nav,.page-header .page-nav { order: 0; flex-basis: 100%; width: 100%; gap: 16px; padding-block: 2px; scrollbar-width: thin; }
  .home-originals-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .home-original-card.is-feature { grid-row: auto; }
}
@media (max-width: 700px) {
  .home-focused .container,.standalone-page .page-container { width: calc(100% - 32px); }
  .home-priorities { padding-block: 18px 6px; }
  .home-focused .section-space { margin-top: 32px; }
  .home-focused .section-label h2 { font-size: 24px; }
  .home-focused .lead-copy { padding: 20px 16px; }
  .home-focused .lead-copy h2 { font-size: 26px; }
  .home-focused .lead-copy p { font-size: 16px; }
  .home-focused .fixture-card .fixture-team-name { font-size: 14px; line-height: 1.6; }
  .home-focused .fixture-card>.fixture-source-details>summary { font-size: 12px; }
  .page-hero { padding-block: 24px; }
  .page-hero>h1,.page-story .page-hero h1,html[lang=ar] .page-hero h1,html[dir=ltr] .page-hero h1 { font-size: 32px; line-height: 1.5; }
  .page-hero>p { font-size: 17px; }
  .page-prose { font-size: 18px; line-height: 1.95; }
  .page-story>.page-prose p { font-size: inherit; }
  .page-reading-layout { display: block; }
  .page-aside { position: static; }
  .match-scoreboard { padding: 24px 12px; gap: 10px; }
  .match-scoreboard .match-team-name { font-size: 16px; line-height: 1.6; }
  .match-scoreboard .match-team-role { font-size: 13px; }
  .match-experience { padding: 20px 16px; }
  .match-detail-dialog { padding: 20px 16px; }
  .detail-tabs button { font-size: 13px; padding-inline: 6px; }
  .detail-team strong { font-size: 16px; }
  .lineup-pitch-name { font-size: 12px; }
  .lineup-list-position { font-size: 12px; }
  .fg { margin-inline: 0; font-size: 16px; }
  .fg :is(input:not([type=checkbox]),select),.fg .fg-picker-dialog input { font-size: 16px; }
  .fg th,.fg td { font-size: 14px; }
  .fg .fg-picker-trigger { font-size: 15px; }
  .club-theme-launch,.club-theme-trigger,.club-picker-filter { min-height: 44px; font-size: 13px; }
  .club-choice-copy strong { font-size: 14px; }
  .club-picker-privacy { font-size: 13px; }
  .page-footer { margin-top: 48px; }
}
@media (max-width: 540px) {
  .home-originals-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .home-original-card:not(.is-feature) { display: block; }
  .home-original-card :is(h2,h3) { font-size: 24px; }
  .header .nav-link,.page-header .page-nav>a { font-size: 14px; }
  .header nav,.page-header .page-nav { justify-content: flex-start; gap: 18px; }
  .header .language-control select,.page-header .language-control select { max-width: 118px; font-size: 14px; }
  .page-league-hero h1,#match-page .page-hero h1,html[dir=ltr] #match-page .page-hero h1 { font-size: 28px; line-height: 1.5; }
  .match-question-controls { flex-wrap: wrap; }
  .match-question-controls input { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .lead-image,.headline-card,.primary-button,.directory-card,.club-choice,.world-card { transition: none; transform: none; }
  .pulse-dot,.club-watermark-slice,.cc-skeleton-row>span { animation: none; }
}
@media (forced-colors: active) {
  body:is(.home-focused,.standalone-page) :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible { outline-color: Highlight; }
  .match-scoreboard,.view-tabs,.detail-tabs,.fg-panel,.page-notice { border: 1px solid CanvasText; }
}
