/* The only Arabic addition is the compact language control in the footer. */
.padel-language-switch{display:inline-flex;align-items:center;gap:4px;direction:ltr;font-size:12px;line-height:1.5}
.padel-language-switch>a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:4px 8px;border:1px solid transparent;border-radius:6px;color:var(--muted-foreground,var(--muted));text-decoration:none}
.padel-language-switch>a[aria-current=true]{border-color:var(--border);color:var(--foreground)}
.padel-language-switch>a:hover{color:var(--foreground);background:var(--accent-surface)}
.padel-language-switch>a:focus-visible{outline:2px solid var(--ring,var(--primary-text));outline-offset:2px}

/* Match/score relationships retain their approved geometry. */
html[lang=en] :is(.match,.quick-versus,.stats-list .stat-row,.bracket-round,.wc-tie-versus,.wc-rubber-body,.nt-versus,.nt-rubber-body,.wct-tie-sides,.wct-rubber-side){direction:rtl}
html[lang=en] #home :is(#live-list,#match-list){direction:ltr}
html[lang=en] .bracket-board{direction:ltr}
html[lang=en] :is(.mc-name,.bracket-team>span,.quick-team,.wc-country,.wc-lineup,.nt-country-link,.nt-lineup,.wct-country,.wct-rubber-side>span:first-child,.home-rail-more){direction:ltr}
html[lang=en] :is(.pt-official,.pt-status,.pt-context,.pt-note,.pt-countdown-view small,.card-watch,.match-court-top,.match-state-label,.match-round-label,.match-tournament-fallback,.mc-live-tiebreak){direction:ltr;unicode-bidi:isolate}
html[lang=en] :is(.match-team-coach dd,.match-event-facts dd){direction:ltr;text-align:left}
html[lang=en] .profile-ranks .player-summary-results>b{direction:ltr}

/* Compact English upcoming cards: protect the flag. Shared date rows keep tickets from squeezing dates. */
html[lang=en] #home #tournament-grid{grid-auto-rows:1fr}
html[lang=en] #home #tournament-grid>.tour-card{padding:16px}
html[lang=en] #home #tournament-grid>.tour-card>div:first-child{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;min-height:32px}
html[lang=en] #home #tournament-grid .home-upcoming-country-flag{grid-column:1;grid-row:1}
html[lang=en] #home #tournament-grid .category-badge{grid-column:2;grid-row:1;justify-self:end;max-width:100%;min-width:0}
#home #tournament-grid>.tour-card>.tournament-date-row{grid-template-columns:minmax(0,1fr);gap:8px;align-items:start}
#home #tournament-grid .tournament-date-row>b{grid-column:1;grid-row:1;line-height:1.5;word-break:normal;overflow-wrap:normal}
#home #tournament-grid .tournament-date-row>.tournament-ticket-link{grid-column:1;grid-row:2;justify-self:stretch;justify-content:center;min-width:0}
@media(max-width:700px){
 html[lang=en] #home #tournament-grid>.tour-card{padding:12px}
}
@media(max-width:360px){
 html[lang=en] #home #tournament-grid .category-badge[data-category=major] .category-label{font-size:12px}
}

/* English titles, tabs, field labels and compact statistic labels use initial capitals. */
html[lang=en] :is(h1,h2,h3,h4,h5,h6,[role=heading],.leader-title>b,.rank-title>div>b,.live-stats-head>b,.tournament-card-link>b){text-transform:capitalize}

/* Shared control labels, field names and table headings. */
html[lang=en] :is(button,[role=tab],nav a,label,select,option,dt,th,summary,.section-link,.nt-section-link,.nt-back,.tournament-ticket-link,.home-rail-more){text-transform:capitalize}
/* Player facts and compact statistics; long explanatory paragraphs are not selected. */
html[lang=en] :is(.profile-facts small,.profile-age,.profile-ranks>div>small,.profile-ranks>div>span,.player-stat-outcome>small,.player-team-facts small,.player-honours-total>small,.pair-title-total>small,.pair-title-head>small,.pair-detail-head small,.pair-detail-head b,.partnership-summary,.partnership-tournament-bounds small,.partnership-tournament-bounds>div>span,.partnership-period,.player-status-badge,.player-stat-subhead>span,.player-stat-tours>div>p:not(.player-stat-detail),[data-partnership-count],.partnership-detail-head>span,.partnership-detail-head>a,.partnership-stints li>small){text-transform:capitalize}
/* Tournament and match labels, score captions, and national-team rank/title labels. */
html[lang=en] :is(.match-top>span,.match-state-label,.match-round-label,.match-round,.mc-live-tiebreak,.card-watch>small,.pt-countdown-view small,.pt-official,.tournament-status,.tournament-status-current,.tournament-summary-season,.calendar-state,.category-name,.nt-title-count>span,.nt-national-rank,.nt-world-rank,.nt-appearances,.nt-edition-position,.nt-hero-copy>p:first-child,.nt-score-stack>small,.wc-player-rank,.wc-qualified,.wc-count,.wc-tiebreak,.wc-section-head>small,.wct-champion>span){text-transform:capitalize}

/* Compact ranking, pair-title and match-statistic captions. */
html[lang=en] :is(.pair-world,.pair-detail-world,.rank-title>div>small,.rank-legend>span,.rank-live-badge,.points>small,#rank-count,#players-count,.player-card>span:not(.player-latin):not(.player-nationality),.detail-stats>div>small,.detail-stats>div>span,.live-stats-head>small,.stats-source,.stat-row>span,.partnership-dates>span,.player-honours-asof){text-transform:capitalize}

html[lang=en] :is(.hub-tabs>a,.profile-tabs>a,.archive-filters>a,.tournament-filter-field>span,.tournament-filter-meta>small,.match-fallback-category,.calendar-winner,.tournament-date-status,.tour-status,.champion-strip>span,.tournament-state>b,#archive-summary>p:first-child>b){text-transform:capitalize}

/* The final count caption follows the metrics; explanatory notes precede it. */
html[lang=en] .player-stat-metrics~.player-stat-detail:last-child{text-transform:capitalize}
