/* Shared public details and ancillary families. Data/availability contracts remain native. */
body[data-product-system]{--bg:#fff;--surface:#fff;--surface-2:#edf3ee;--paper:var(--g-ink);--muted:var(--g-muted);--accent:var(--g-brand);--lime:var(--g-brand);--line:var(--g-border);--radius:4px;--display:'Barlow Condensed',Tajawal,Arial,sans-serif}
body[data-product-system] :is(main,.page-container,.push-container,.wp-page,.kits-directory){min-inline-size:0;box-sizing:border-box}
body[data-product-system] :is(main img,main svg){max-inline-size:100%}
body[data-product-system] :is(.page-hero:not(.page-league-hero),.page-prose,.page-story-card,.page-player-detail,.page-stats-section,.sports-directory-card,.sports-directory-results,.basketball-card,.contests-card,.contests-game,.contests-archive,.fg-panel,.fg-rules,.wp-entry,.wp-poster,.kits-team-card,.kits-intro){background:#fff;border-color:var(--g-border);border-radius:4px;color:var(--g-ink);box-shadow:none}
body[data-product-system] :is(.page-hero:not(.page-league-hero),.page-prose,.page-stats-section){padding:24px;margin-block:24px}
body[data-product-system] :is(.page-hero h1,.kits-intro h1){font-size:clamp(30px,4vw,48px);line-height:1.4;margin-block:8px 16px}
body[data-product-system] main :is(h2,h3){line-height:1.5;word-break:normal;overflow-wrap:break-word}
body[data-product-system] :is(.page-prose p,.page-prose li){line-height:1.85}
body[data-product-system] :is(.page-intro,.page-small,.page-footnote,.page-notice,.sports-directory-summary p,.sports-directory-card p,.basketball-card-summary,.basketball-card-meta,.contests-archive p,.contests-no-money,.fg-hint,.wp-hint,.kits-note){color:var(--g-muted);line-height:1.7}
body[data-product-system] main :is(.page-kicker,.page-read-link,.page-all-link,.basketball-card-read,.sports-directory-reset){color:var(--g-brand)}
body[data-product-system] main :is(button,select,input:not([type=checkbox]):not([type=radio]),summary,.primary-button,.quiet-button,.page-all-link,.sports-directory-reset){min-block-size:44px;box-sizing:border-box}
body[data-product-system] main :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:#fff;color:var(--g-ink);border-color:#899d8e;border-radius:4px;max-inline-size:100%}
body[data-product-system] main :is(.primary-button,.sports-directory-search button,.contests-game a,.fg-save-register,.wp-submit){background:var(--g-brand);border-color:var(--g-brand);color:#fff;border-radius:4px}
body[data-product-system] main :is(.quiet-button,.page-all-link,.sports-directory-reset){display:inline-flex;align-items:center;gap:8px;border-radius:4px}
body[data-product-system] :is(.sports-directory-search,.sports-directory-summary,.product-profile-navigation){background:#fff;border:1px solid var(--g-border);border-radius:4px;padding:16px 24px;margin-block:16px}
body[data-product-system] .sports-directory-search{align-items:end;gap:16px}
body[data-product-system] .sports-directory-search :is(label,input,select,button){font-size:16px}
body[data-product-system] #directory-search-note{font-size:14px;color:var(--g-muted);line-height:1.7}
body[data-product-system] .sports-directory-grid{gap:16px}
body[data-product-system] .sports-directory-card{padding:24px;border:1px solid var(--g-border)}
body[data-product-system] .sports-directory-card h3{font-size:23px;line-height:1.5}
body[data-product-system] .sports-directory-card a{color:var(--g-ink);word-break:normal;overflow-wrap:normal}
body[data-product-system] .product-profile-navigation{display:flex;flex-wrap:wrap;gap:8px}
body[data-product-system] .product-profile-navigation>a{display:inline-flex;align-items:center;min-block-size:44px;padding:8px 16px;border:1px solid var(--g-border);border-radius:4px;background:#fff;color:var(--g-brand);font-weight:700}
body[data-product-system][data-product-sport-page] .page-league-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:var(--g-masthead);border-color:var(--g-masthead);color:#fff;border-radius:4px}
body[data-product-system][data-product-sport-page] .page-league-hero :is(h1,strong,a){color:#fff}
body[data-product-system][data-product-sport-page] .page-league-hero :is(p,.page-kicker,.page-season>span){color:#d8e7dc}
body[data-product-system][data-product-sport-page] .page-league-hero .page-season strong{color:var(--g-accent)}
body[data-product-system] :is(.page-table-scroll,.cc-table-scroll,.fg-table-scroll){max-inline-size:100%;min-inline-size:0;overflow-x:auto;overscroll-behavior-inline:contain;border:1px solid var(--g-border);border-radius:4px;background:#fff}
body[data-product-system] .page-table{background:#fff;color:var(--g-ink)}
body[data-product-system] .page-table :is(th,td){padding:12px 16px;border-color:var(--g-border);line-height:1.6}
body[data-product-system] .page-table thead{background:#edf3ee;color:var(--g-ink)}
body[data-product-system] .page-table caption{font-size:16px;font-weight:800;background:#edf3ee;color:var(--g-ink);padding:12px;text-align:start}
body[data-product-system] .page-table tbody tr:nth-child(even){background:#fafbf8}
body[data-product-system] .page-player-detail{max-inline-size:100%;padding:24px;border:1px solid var(--g-border)}
body[data-product-system] .page-player-detail :is(dt,p){color:var(--g-muted);font-size:15px;line-height:1.7}
body[data-product-system] .page-player-detail dd{color:var(--g-ink);font-size:20px}
body[data-product-system] :is(.cc-panel,.cc-scorer-card,.cc-group-name){border-color:var(--g-border);border-radius:4px}
body[data-product-system] :is(.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(--g-muted);font-size:14px;line-height:1.65}
body[data-product-system] .cc-scorer-card.is-first{background:var(--g-masthead);border-color:var(--g-masthead);color:#fff}
body[data-product-system] .cc-scorer-card.is-first :is(h5,.cc-scorer-rank,.cc-scorer-primary strong){color:#fff}
body[data-product-system] .cc-scorer-card.is-first :is(.cc-scorer-tag,.cc-scorer-club,.cc-scorer-primary>span,.cc-scorer-secondary>span>span){color:#d8e7dc}
body[data-product-system] .cc-form-w{color:#fff;background:var(--g-brand)}
body[data-product-system] :is(.cc-league,.cc-tab,.cc-action,.cc-view-toggle){font-size:15px;min-block-size:44px}
body[data-product-system] .cc-league.is-selected{color:#fff;background:var(--g-brand);border-color:var(--g-brand)}
body[data-product-system] :is(.basketball-card,.contests-card,.contests-game,.fg-panel,.wp-entry,.kits-team-card){border:1px solid var(--g-border)}
body[data-product-system] .basketball-card h3{font-size:25px;line-height:1.5}
body[data-product-system] :is(.contests-heading,.fg-hero,.wp-intro,.kits-intro){padding-block:24px}
body[data-product-system] :is(.contests-heading h1,.fg-hero h1,.wp-intro h1){font-size:clamp(30px,4vw,48px);line-height:1.4}
body[data-product-system] :is(.fg-panel,.wp-entry){padding:24px}
body[data-product-system] :is(.fg-panel label,.wp-contact label){font-size:15px;line-height:1.7;color:var(--g-ink)}
body[data-product-system] :is(.fg-consent,.wp-consent,.wp-rules li,.wp-rules p,.kits-count,.kits-empty){font-size:15px;line-height:1.75;color:var(--g-muted)}
body[data-product-system] .fg-score input{max-inline-size:88px}
body[data-product-system] .fg-picker-dialog{color:var(--g-ink);background:#fff;border-color:var(--g-border);border-radius:4px}
body[data-product-system] .fg-picker-dialog::backdrop{background:#0b241b99}
body[data-product-system] .kits-team-link{min-height:44px;align-items:center}
body[data-product-system] :is(.kits-pagination a,.sports-directory-pagination a){min-height:44px;min-width:44px;display:inline-flex;justify-content:center;align-items:center;color:var(--g-brand);border-color:var(--g-border);background:#fff;border-radius:4px}
.product-library-controls{border:1px solid var(--g-border);border-radius:4px;background:#fff;margin-block:16px}
.product-library-controls>summary{min-block-size:44px;padding:12px 16px;font-size:15px;font-weight:800;cursor:pointer;color:var(--g-brand)}
.product-library-controls>form{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.6fr) auto;gap:12px;padding:16px;border-top:1px solid var(--g-border)}
.product-library-controls label{display:flex;flex-direction:column;gap:8px;font-size:15px;color:var(--g-ink);font-weight:700}
.product-library-controls :is(input,select,button){min-block-size:44px;font:inherit;border:1px solid #899d8e;border-radius:4px;padding:8px 12px;background:#fff;color:var(--g-ink);min-inline-size:0;max-inline-size:100%}
.product-library-controls :is(.product-library-scope,.product-library-count){grid-column:1/-1;margin:0;font-size:14px;line-height:1.7;color:var(--g-muted)}
.product-library-controls button{align-self:end;color:var(--g-brand);font-weight:700}
.product-library-empty{padding:24px;background:#fff;border-inline-start:4px solid var(--g-brand);color:var(--g-ink);line-height:1.8}
@media(max-width:767px){
 body[data-product-system] :is(.page-hero:not(.page-league-hero),.page-prose,.page-stats-section,.sports-directory-card,.page-player-detail,.fg-panel,.wp-entry){padding:16px;margin-block:16px}
 body[data-product-system][data-product-sport-page] .page-league-hero{grid-template-columns:minmax(0,1fr);gap:8px;padding:16px}
 body[data-product-system] .page-season{justify-self:start}
 body[data-product-system] .sports-directory-grid{grid-template-columns:minmax(0,1fr)}
 body[data-product-system] :is(.sports-directory-search,.sports-directory-summary,.product-profile-navigation){padding:16px}
 body[data-product-system] .product-standings-table{min-width:540px;table-layout:fixed}
 body[data-product-system] .product-standings-table :is(th,td){padding:10px 8px;font-size:14px;white-space:normal}
 body[data-product-system] .product-standings-table :is(th,td):nth-child(1){width:28px}
 body[data-product-system] .product-standings-table :is(th,td):nth-child(2){width:130px;word-break:normal;overflow-wrap:normal}
 body[data-product-system] .product-standings-table :is(th,td):nth-child(n+3){width:48px}
 body[data-product-system] .cc-table{min-width:300px}
 body[data-product-system] .cc-table .cc-col-team{min-width:100px;white-space:normal}
 body[data-product-system] .cc-team-name{white-space:normal;word-break:normal;overflow-wrap:normal;font-size:14px}
 body[data-product-system] .cc-team{min-width:0;white-space:normal}
 body[data-product-system] .cc-panel-bar{flex-wrap:wrap;gap:12px;padding:16px}
 .product-library-controls>form{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){body[data-product-system] :is(.cc-league,.cc-skeleton-row>span){animation:none;transition:none}}

body[data-product-system][data-product-sport-page] .page-league-hero .page-season{background:#153729;border-color:#698371;color:#d8e7dc}

@media(max-width:767px){
 body[data-product-system] .competition-centre:not(.is-expanded) .cc-table .cc-col-difference{display:none}
 body[data-product-system] .competition-centre.is-expanded .cc-table .cc-col-difference{display:table-cell;width:64px}
 body[data-product-system] .cc-table .cc-col-rank{width:48px}
 body[data-product-system] .cc-table .cc-col-played{width:40px}
 body[data-product-system] .cc-table .cc-col-points{width:52px}
 body[data-product-system] .cc-table thead :is(.cc-col-rank,.cc-col-played,.cc-col-points){white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:13px}
}

body[data-product-system] .sports-directory-grid>article{padding:24px;background:#fff;border:1px solid var(--g-border);border-radius:4px;color:var(--g-ink)}
body[data-product-system] .centre-content{color:var(--g-ink);min-inline-size:0}
body[data-product-system] .centre-content :is(p,.source,.centre-source,.scope){color:var(--g-muted);font-size:15px;line-height:1.75}
body[data-product-system] .centre-content :is(.centre-notice,.notice){background:#edf3ee;border-color:var(--g-border);color:var(--g-ink);border-radius:4px}
body[data-product-system] .centre-content :is(table,tbody th,.centre-card){background:#fff;color:var(--g-ink);border-color:var(--g-border);border-radius:4px}
body[data-product-system] .centre-content th{background:#edf3ee;color:var(--g-ink)}
body[data-product-system] .centre-content :is(select,input){background:#fff;color:var(--g-ink);border-color:#899d8e;border-radius:4px;min-height:44px}
body[data-product-system] :is(.centre-nav a,.centre-team-switch a){display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;background:#fff;color:var(--g-brand);border-color:var(--g-border);border-radius:4px}
body[data-product-system] :is(.centre-nav a[aria-current=page],.centre-team-switch a[aria-current=page]){background:var(--g-brand);color:#fff;border-color:var(--g-brand)}
body[data-product-system] :is(.centre-status-line,.centre-limit){font-size:14px;line-height:1.7;color:var(--g-muted)}
body[data-product-system] .centre-limit{background:#edf3ee;border-color:var(--g-border)}
body[data-product-system] .centre-preview-label{background:#fff4d8;color:#674a12;border-color:#d5c29a}
body[data-product-system] .home-centre-card{background:#fff;color:var(--g-ink);border-color:var(--g-border);border-radius:4px}
body[data-product-system] .home-centre-card p{color:var(--g-muted)}
body[data-product-system] .fg button:not(.fg-picker-option):not(.fg-picker-trigger):not(#fg-picker-close){background:var(--g-brand);color:#fff;border-color:var(--g-brand);border-radius:4px;min-height:44px}
body[data-product-system] .fg-picker-badge.is-available{color:var(--g-brand);background:#edf3ee}
body[data-product-system] .fg-status[data-error=true]{color:var(--g-live)}
body[data-product-system] .page-error .page-kicker{color:var(--g-live)}
@media(max-width:767px){body[data-product-system] .sports-directory-grid>article{padding:16px}}

body[data-product-system] :is(.basketball-card,.team-kit-reference,.wp-poster) img{max-inline-size:100%;block-size:auto;object-fit:contain;aspect-ratio:auto}

body[data-product-system] main>:is(article.page-prose,article.page-story){max-inline-size:76ch;margin-inline:auto}
