/* R5 polish extends the received TECHXV-RUGBY foundations; the native files stay exact. */
main { min-width:0; }
.tx-root { min-width:0; }
a,button,summary { overflow-wrap:anywhere; }
.landing-hero { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
.landing-hero .tx-display { max-width:18ch; }
.landing-hero .hero-art { align-self:center; }
.landing-hero .hero-intro { max-width:56ch; }
.landing-hero .button-row { align-items:center; }
.landing-section { padding-block:var(--espace-7); }
.landing-section + .landing-section { border-top:1px solid var(--bordure); }
.landing-heading { max-width:none; margin-bottom:var(--espace-5); }
.landing-heading h2 { margin-bottom:var(--espace-3); }
.landing-heading p { color:var(--texte-discret); }
.extra-case-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--espace-4); }
.extra-case-choice { display:flex;flex-direction:column;min-width:0; }
.extra-case-choice .tx-cartecas { flex:1;grid-template-columns:1fr;padding:var(--espace-5); }
.extra-case-choice .tx-cartecas__dossard { width:44px;height:48px;font-size:1.375rem; }
.extra-case-choice .tx-cartecas__titre { overflow-wrap:normal;hyphens:auto; }
.extra-case-choice .tx-cartecas__accroche { font-size:1rem; }
.extra-case-choice .tx-cartecas__pied .tx-pastille { display:none; }
.extra-case-choice .tx-cartecas__corps { padding:0; }
.extra-case-level { padding:var(--espace-3) 0 0!important;font-size:.9375rem;color:var(--texte-discret); }
.landing-guidance { margin-top:var(--espace-5); }
.landing-resource-grid { display:grid;grid-template-columns:1.2fr 1fr;gap:var(--espace-5); }
.landing-resource-card { padding:var(--espace-5);border:1px solid var(--bordure-forte);border-radius:var(--rayon-m);background:var(--surface-elevee); }
.landing-resource-card p { color:var(--texte-discret); }
.landing-resource-card h3 { margin-bottom:var(--espace-3); }
.landing-resource-card .button-row { margin-top:var(--espace-4); }
.course-banner { padding:var(--espace-4) var(--espace-5);border-left:4px solid var(--info);background:var(--info-teinte);margin-bottom:var(--espace-5); }
.course-banner p { margin:0;font-size:1rem; }
.resource-heading { flex-wrap:wrap; }
.support-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.practice-layout { max-width:1000px; }
.practice-header { padding-block:var(--espace-7) var(--espace-6);border-bottom:1px solid var(--bordure);margin-bottom:var(--espace-6); }
.practice-header h1 { font-size:clamp(2.125rem,4vw,3rem);font-weight:800;max-width:24ch; }
.practice-meta { color:var(--texte-discret);font-weight:650;margin-bottom:var(--espace-3); }
.practice-breadcrumb { margin-bottom:var(--espace-5); }
.practice-intro { max-width:68ch;font-size:1.1875rem; }
.practice-downloads { padding:var(--espace-5);border:1px solid var(--bordure-forte);border-radius:var(--rayon-m);background:var(--surface-elevee);margin-bottom:var(--espace-6); }
.practice-downloads h2 { font-size:1.3125rem; }
.practice-downloads ul { padding-left:1.5rem; }
.practice-downloads li + li { margin-top:var(--espace-2); }
.practice-downloads a { min-height:44px;display:inline-flex;align-items:center; }
.practice-markdown { max-width:76ch; }
.practice-markdown h2 { margin:var(--espace-6) 0 var(--espace-3);font-size:1.625rem; }
.practice-markdown h3 { margin:var(--espace-5) 0 var(--espace-3); }
.practice-markdown p,.practice-markdown ul,.practice-markdown ol,.practice-markdown blockquote { margin-bottom:var(--espace-4); }
.practice-markdown ul,.practice-markdown ol { padding-left:1.5rem; }
.practice-markdown li + li { margin-top:var(--espace-3); }
.practice-markdown code { font-family:var(--font-mono);font-size:.9375rem;overflow-wrap:anywhere; }
.practice-markdown a { color:var(--lien); }
.practice-markdown blockquote { margin-left:0;padding:var(--espace-4);border-left:4px solid var(--terrain-700);background:var(--surface-creuse); }
.practice-aids { margin-block:var(--espace-7);max-width:76ch; }
.practice-aids > h2 { margin-bottom:var(--espace-3); }
.practice-hint-list { display:grid;gap:var(--espace-3); }
.practice-aid-note { margin-bottom:var(--espace-4);color:var(--texte-discret); }
.practice-correction { margin-top:var(--espace-5);border:1px solid var(--bordure-forte);border-radius:var(--rayon-m);background:var(--surface-elevee); }
.practice-correction > summary { padding:var(--espace-4);font-size:1.0625rem;line-height:1.5; }
.practice-correction > div { padding:0 var(--espace-5) var(--espace-5); }
.practice-preview { margin-bottom:var(--espace-4);border:1px solid var(--bordure);border-radius:var(--rayon-m);padding-inline:var(--espace-4); }
.practice-preview summary { font-size:1rem; }
.practice-preview .tx-tableau { min-width:0; }
.practice-next { display:flex;flex-wrap:wrap;gap:var(--espace-4);padding-block:var(--espace-5);border-top:1px solid var(--bordure); }
.practice-next a { min-height:44px;display:inline-flex;align-items:center;color:var(--lien); }
.practice-definition { padding:var(--espace-4);background:var(--surface-elevee);border:1px solid var(--bordure);border-radius:var(--rayon-m);margin-block:var(--espace-5); }
.practice-definition dt { font-weight:700; }
.practice-definition dd { margin-left:0;margin-bottom:var(--espace-3); }
.practice-downloads .small-note { margin-bottom:0; }
.table-scroll { max-width:100%; }
@media (max-width:1050px) { .extra-case-grid { grid-template-columns:1fr; }.extra-case-choice .tx-cartecas { grid-template-columns:auto minmax(0,1fr); }.extra-case-choice .tx-cartecas__dossard { width:48px; }.landing-resource-grid { grid-template-columns:1fr; } }
@media (max-width:800px) { .landing-hero { grid-template-columns:1fr; }.landing-hero .hero-art { max-width:640px; }.support-grid { grid-template-columns:1fr; } }
@media (max-width:600px) {
  .landing-section { padding-block:var(--espace-6); }.extra-case-choice .tx-cartecas { padding:var(--espace-4);gap:var(--espace-3); }
  .extra-case-choice .tx-cartecas__titre { font-size:1.1875rem; }.extra-case-choice .tx-cartecas__dossard { width:36px;height:44px; }
  .landing-resource-card,.practice-downloads { padding:var(--espace-4); }.practice-header { padding-top:var(--espace-6); }.practice-header h1 { font-size:2.125rem; }
  .practice-intro { font-size:1.0625rem; }.practice-correction > div { padding-inline:var(--espace-4); }.practice-preview { padding-inline:var(--espace-3); }
}
@media print { #native-navigation,#native-footer,.practice-breadcrumb,.practice-next { display:none; }.practice-layout { width:100%; }.practice-correction { break-inside:avoid; } }

.landing-heading > p { max-width:76ch; }
.fallback-header,.fallback-footer { padding:var(--espace-4) max(1rem,calc((100% - var(--largeur-contenu))/2));background:var(--surface-terrain);color:var(--texte-sur-terrain); }
.fallback-header { display:flex;flex-wrap:wrap;gap:var(--espace-4);align-items:center; }

.tool-card { grid-column:1 / -1; }

/* R9: the field focus colour on the dark fallback header and S02 aside; busy legacy controls stay focusable. */
.fallback-header :focus-visible,.practice-aside :focus-visible { outline-color:var(--focus-sur-terrain); }
.button[aria-disabled="true"],.icon-button[aria-disabled="true"],.game-push[aria-disabled="true"] { cursor:not-allowed;opacity:.5; }
.game-recovery { margin-top:1rem; }
