/* ══════════════════════════════════════════════════════════════════════════
   ENVELOPPE « SITE » — base_public.html (16/09/2026)
   Portail public. Repère d'ergonomie : boturfers.fr / pmu.fr. ADN conservé :
   vert de casaque, or, crème, cheval filaire maison.
   Ce que l'on ne fera jamais ici : afficher un taux de réussite, un gain, ou
   un avis client inventé. La preuve est factuelle (volume de données, méthode
   publiée, pronostic figé). L'application (base.html) n'est pas touchée.
   ══════════════════════════════════════════════════════════════════════════ */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/fraunces-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/fraunces-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/fraunces-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/fraunces-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/inter-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/static/fonts/inter-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/inter-500-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/static/fonts/inter-500-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/inter-600-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/static/fonts/inter-600-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/inter-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/static/fonts/inter-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --ink:#16200F; --ink-soft:#4E5848; --ink-dim:#868C80;
  --paper:#F3F0E7; --surface:#FFFFFF; --line:#E5DFCE; --line-2:#F0ECE1;
  --green:#1E4D33; --green-d:#0E2717; --green-n:#071A0E; --green-l:#2F7A4D; --green-p:#E6F0E4;
  --gold:#C39237; --gold-d:#8A6518; --gold-p:#FBF1DC;
  --brick:#A8452F; --brick-p:#FBE9E4; --slate:#2E4A5C; --slate-p:#E7EEF3;
  --display:"Fraunces",Georgia,serif;
  --text:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --sh-1:0 1px 2px rgba(20,30,15,.05),0 2px 8px rgba(20,30,15,.04);
  --sh-2:0 2px 6px rgba(20,30,15,.07),0 12px 28px rgba(20,30,15,.08);
  --sh-3:0 18px 44px rgba(7,26,14,.28);
  --r:10px;
}
html { -webkit-text-size-adjust:100%; }
body {
  font-family:var(--text); color:var(--ink); font-size:15px; line-height:1.6;
  -webkit-font-smoothing:antialiased; background:var(--paper);
}
a { color:var(--green); text-decoration:none; }
a:hover { text-decoration:underline; text-underline-offset:2px; }
:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
img { max-width:100%; }
.wrap { max-width:1800px; margin:0 auto; padding:0 32px; }
.ico { width:20px; height:20px; stroke:currentColor; fill:none; stroke-width:1.7;
  stroke-linecap:round; stroke-linejoin:round; flex:0 0 auto; }
.ico-f { fill:currentColor; stroke:none; }

/* ══ 1. Barre utilitaire ══ */
.util { background:var(--green-n); color:#8FA68E; font-size:12px; }
.util .wrap { display:flex; align-items:center; justify-content:space-between; gap:14px; height:34px; }
.util a { color:#E4D8B6; font-weight:500; }
.util .sep { color:#2C4433; margin:0 9px; }
.util .badge { display:inline-flex; align-items:center; gap:5px; background:rgba(195,146,55,.18);
  color:#E4C173; padding:3px 9px; border-radius:999px; font-weight:600; font-size:11px; }

/* ══ 2. Bloc-titre ══ */
.mast { background:linear-gradient(112deg, var(--green-d) 0%, var(--green) 46%, #2B6742 100%);
  color:#fff; position:relative; z-index:40; }
.mast .wrap { position:relative; z-index:2; display:flex; align-items:center; gap:20px;
  padding-top:16px; padding-bottom:16px; }
.mark { display:flex; align-items:center; gap:13px; }
.mark:hover { text-decoration:none; }
.mark img { width:58px; height:58px; border-radius:14px; box-shadow:0 4px 16px rgba(0,0,0,.35); }
.wordmark { font-family:var(--display); font-weight:600; font-size:36px; letter-spacing:.1em;
  text-transform:uppercase; color:#fff; line-height:1; display:block; }
.baseline { font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:var(--gold);
  margin-top:5px; display:block; font-weight:700; }
.mast form { margin-left:auto; display:flex; flex:0 1 340px; border-radius:9px;
  box-shadow:0 3px 14px rgba(0,0,0,.18); }
.mast input { flex:1; min-width:0; border:0; padding:12px 15px; font:inherit; font-size:14px;
  background:#fff; color:var(--ink); border-radius:9px 0 0 9px; }
.mast input::placeholder { color:#9AA096; }
.mast .go { border:0; background:var(--gold); color:#24190A; padding:0 16px; cursor:pointer;
  border-radius:0 9px 9px 0; display:flex; align-items:center; }
.mast .go:hover { background:#D8A44A; }
.mast-act { display:flex; align-items:center; gap:10px; }
.b-espace { display:inline-flex; align-items:center; gap:9px; padding:9px 16px 9px 11px;
  border:1px solid rgba(255,255,255,.28); border-radius:9px; color:#fff; font-size:13px;
  font-weight:600; background:rgba(255,255,255,.08); transition:.16s; }
.b-espace:hover { background:rgba(255,255,255,.17); text-decoration:none; border-color:rgba(255,255,255,.5); }
.b-espace .av { width:27px; height:27px; border-radius:50%; background:var(--gold); color:#24190A;
  display:flex; align-items:center; justify-content:center; font-weight:800; font-size:13px; flex:0 0 auto; }
.b-espace small { display:block; font-size:10px; font-weight:500; color:#A9CBB2; letter-spacing:.04em; }
.espace { position:relative; }
.espace .b-espace { cursor:pointer; }
.espace .b-espace .chev { width:12px; height:12px; margin-left:2px; transition:transform .15s; }
.espace.open .b-espace .chev { transform:rotate(180deg); }
.espace-menu { position:absolute; right:0; top:calc(100% + 8px); width:260px; background:#fff; color:var(--ink); border-radius:12px; box-shadow:var(--sh-3); border:1px solid var(--line); padding:8px; z-index:60; display:none; }
.espace.open .espace-menu { display:block; }
.espace-menu a { display:flex; align-items:center; gap:10px; padding:9px 10px; border-radius:8px; color:var(--ink); font-size:13.5px; font-weight:600; }
.espace-menu a:hover { background:var(--green-p); text-decoration:none; }
.espace-menu a .ico { width:17px; height:17px; color:var(--green); }
.espace-menu a small { margin-left:auto; color:var(--ink-dim); font-weight:500; font-size:11.5px; }
.espace-menu hr { border:0; border-top:1px solid var(--line-2); margin:6px 4px; }
.espace-menu .out { color:var(--brick); } .espace-menu .out .ico { color:var(--brick); }
.cta-or { background:var(--gold); color:#24190A; font-weight:700; font-size:13.5px; padding:12px 18px;
  border-radius:9px; white-space:nowrap; box-shadow:0 3px 12px rgba(0,0,0,.2); transition:.16s; }
.cta-or:hover { background:#D8A44A; text-decoration:none; transform:translateY(-1px); }

/* ══ 3. Navigation à branches dépliables ══ */
.nav { background:var(--green-d); position:sticky; top:0; z-index:70;
  box-shadow:0 2px 14px rgba(0,0,0,.26); border-top:1px solid rgba(255,255,255,.07); }
.nav .wrap { display:flex; }
.nav-list { display:flex; list-style:none; margin:0; flex:1; min-width:0; }
.nav-item { position:relative; }
.nav-top { display:flex; align-items:center; gap:8px; white-space:nowrap; padding:13px 15px;
  color:#C2D6C0; font-size:12.5px; font-weight:600; letter-spacing:.04em; text-transform:uppercase;
  border-bottom:3px solid transparent; background:none; border-left:0; border-right:0; border-top:0;
  font-family:inherit; cursor:pointer; transition:background .15s,color .15s; }
.nav-top:hover, .nav-item.open .nav-top { background:rgba(255,255,255,.1); color:#fff; text-decoration:none; }
.nav-top.on { color:#fff; border-bottom-color:var(--gold); background:rgba(255,255,255,.07); }
.nav-top .ico { width:16px; height:16px; opacity:.85; }
.nav-top .car { width:9px; height:9px; stroke-width:2.4; opacity:.7; }
.nav-item.open .nav-top .car { transform:rotate(180deg); }
.drop { position:absolute; top:100%; left:0; min-width:262px; background:#fff; border-radius:0 0 12px 12px;
  box-shadow:var(--sh-3); padding:8px; opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:.16s; z-index:80; border-top:3px solid var(--gold); }
.nav-item:hover .drop, .nav-item.open .drop, .nav-item:focus-within .drop {
  opacity:1; visibility:visible; transform:translateY(0); }
.drop a { display:flex; gap:11px; align-items:flex-start; padding:9px 11px; border-radius:8px;
  color:var(--ink); font-size:13.5px; font-weight:600; }
.drop a:hover { background:var(--green-p); text-decoration:none; }
.drop a .ico { width:17px; height:17px; margin-top:2px; color:var(--green-l); }
.drop a small { display:block; font-size:11.5px; font-weight:400; color:var(--ink-dim); margin-top:1px; }
.drop .sep { height:1px; background:var(--line-2); margin:6px 8px; }

/* ══ 4. Prochains départs ══ */
.live { background:var(--surface); border-bottom:1px solid var(--line); box-shadow:var(--sh-1);
  position:relative; z-index:5; }
.live .wrap { display:flex; align-items:center; }
.live-tag { display:flex; align-items:center; gap:8px; padding-right:15px; margin-right:12px;
  border-right:1px solid var(--line); font-size:11px; font-weight:800; letter-spacing:.09em;
  text-transform:uppercase; color:var(--brick); white-space:nowrap; }
.dot { width:8px; height:8px; border-radius:50%; background:var(--brick); animation:pulse 1.6s infinite; }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.25;transform:scale(.75)} }
.live-zone { position:relative; flex:1; min-width:0; }
.live-rail { display:flex; gap:9px; overflow-x:auto; scrollbar-width:none; padding:10px 0;
  scroll-behavior:smooth; cursor:grab; }
.live-rail::-webkit-scrollbar { display:none; }
.live-rail.drag { cursor:grabbing; scroll-behavior:auto; }
.live-rail.drag a { pointer-events:none; }
.fl { position:absolute; top:0; bottom:0; width:38px; display:flex; align-items:center;
  justify-content:center; border:0; cursor:pointer; z-index:3; color:var(--green); }
.fl.g { left:0; background:linear-gradient(90deg,#fff 55%,rgba(255,255,255,0)); justify-content:flex-start; }
.fl.d { right:0; background:linear-gradient(270deg,#fff 55%,rgba(255,255,255,0)); justify-content:flex-end; }
.fl:hover { color:var(--gold-d); }
.fl[hidden] { display:none; }
.dep { flex:0 0 auto; display:flex; flex-direction:column; gap:1px; padding:7px 13px;
  border:1px solid var(--line); border-radius:9px; background:#FCFBF6; min-width:138px; transition:.15s; }
.dep:hover { border-color:var(--green-l); background:#fff; text-decoration:none; box-shadow:var(--sh-1); }
.dep .t { font-size:10.5px; font-weight:800; color:var(--green-l); letter-spacing:.05em; }
.dep .h { font-size:15px; font-weight:800; color:var(--ink); font-variant-numeric:tabular-nums; line-height:1.2; }
.dep .n { font-size:11px; color:var(--ink-dim); white-space:nowrap; overflow:hidden;
  text-overflow:ellipsis; max-width:150px; }
.dep .cd { font-size:10.5px; font-weight:700; color:var(--ink-soft); font-variant-numeric:tabular-nums; }
.dep .pr { display:flex; gap:3px; margin-top:4px; flex-wrap:wrap; }
.dep .pb { font-size:9px; font-weight:800; letter-spacing:.03em; text-transform:uppercase;
  padding:2px 5px; border-radius:4px; background:#EDE7D8; color:var(--ink-soft); white-space:nowrap; }
.dep .pb.q { background:var(--gold); color:#24190A; }
.dep .pb.m { background:var(--slate-p); color:var(--slate); }
.dep .nbp { font-size:9.5px; font-weight:700; color:var(--ink-dim); }
.dep.q { border-color:var(--gold); background:var(--gold-p); }
.dep.q .t { color:var(--gold-d); }
.dep.imminent { border-color:var(--brick); background:var(--brick-p); }
.dep.imminent .cd, .dep.imminent .t { color:var(--brick); }
.dep.encours { border-color:var(--brick); background:var(--brick); }
.dep.encours .t, .dep.encours .h, .dep.encours .n, .dep.encours .cd { color:#fff; }
.dep .flash { display:inline-flex; align-items:center; gap:4px; }
.dep .flash::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor;
  animation:pulse 1.1s infinite; }

/* ══ 5. Tête de page ══ */
.pagehead { position:relative; color:#fff; min-height:520px; display:flex; align-items:flex-start;
  background:#0A2113 url(/static/hero-course.jpg) center 38%/cover no-repeat; }
.pagehead::before { content:""; position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(7,26,14,.55) 0%, rgba(7,26,14,.35) 45%, rgba(7,26,14,.85) 100%),
    linear-gradient(100deg, rgba(7,26,14,.92) 0%, rgba(10,40,22,.72) 45%, rgba(20,60,36,.35) 100%); }
.pagehead .wrap { position:relative; z-index:2; padding-top:54px; padding-bottom:190px; width:100%; }
.pagehead .inner { max-width:880px; }
.pagehead .fil, .pagehead .fil a { color:#B7CDB9; }
.pagehead .fil span { color:#587662; }
.pagehead h1 { color:#fff; margin-bottom:16px; font-size:clamp(30px,3.9vw,46px); text-shadow:0 2px 18px rgba(0,0,0,.35); }
.pagehead .lede { color:#DCE8DA; font-size:17.5px; text-shadow:0 1px 10px rgba(0,0,0,.35); }
.pagehead .dateline { background:rgba(255,255,255,.14); color:#E6EFE4; border:1px solid rgba(255,255,255,.2); backdrop-filter:blur(6px); }
.pagehead .dateline b { color:#F0D89A; }

/* ══ 6. Titres ══ */
h1, .pub-h1 { font-family:var(--display); font-weight:600; font-size:clamp(28px,3.6vw,42px);
  line-height:1.13; letter-spacing:-.012em; color:var(--ink); margin-bottom:12px; text-wrap:balance; }
.lede { font-size:17px; line-height:1.55; color:var(--ink-soft); }
.fil { font-size:12px; color:var(--ink-dim); margin-bottom:14px; }
.fil a { color:var(--ink-dim); }
.fil span { margin:0 6px; color:var(--line); }
.dateline { display:inline-block; margin-top:16px; padding:7px 14px; background:#EAE4D4;
  border-radius:999px; font-size:12.5px; color:var(--ink-soft); }
.dateline b { color:var(--green); font-weight:700; }
.dateline:empty { display:none; }

/* ══ 7. Grille ══ */
.page { position:relative; z-index:3; margin-top:-150px; padding:0 0 46px; }
.page-grid { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:26px; align-items:start; }
.col-main { min-width:0; background:var(--surface); border-radius:var(--r); box-shadow:var(--sh-2);
  padding:8px 30px 30px; }
.col-side { display:flex; flex-direction:column; gap:18px; min-width:0; }

/* ══ 8. Blocs ══ */
.col-main section, .card { padding:22px 0 26px; border-bottom:1px solid var(--line-2); }
.col-main section:last-of-type, .card:last-of-type { border-bottom:0; }
.col-main > p, .col-main > .lede { padding-top:22px; }
h2, .card h2 { font-family:var(--display); font-weight:600; font-size:22px; line-height:1.25;
  color:var(--ink); margin:0 0 16px; display:flex; align-items:center; gap:11px; }
h2::before { content:""; width:4px; height:19px; background:var(--gold); border-radius:2px; flex:0 0 auto; }
h3, .card h3 { font-size:15.5px; font-weight:700; color:var(--ink); margin:20px 0 8px; }
p { margin-bottom:14px; } p:last-child { margin-bottom:0; }
ul, ol { margin:0 0 14px 20px; } li { margin-bottom:8px; }
.muted { color:var(--ink-soft); }
.note { font-size:12.5px; line-height:1.55; color:var(--ink-dim); margin-top:12px; }
.keybox { background:linear-gradient(135deg,#FFFCF4 0%,var(--gold-p) 100%); border:1px solid #E6CE97;
  border-left:5px solid var(--gold); border-radius:var(--r); padding:22px 26px; margin-top:22px; }
.keybox h2 { margin:0 0 12px; padding:0; background:none; border:0; font-family:var(--text);
  font-size:11.5px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-d); }
.keybox h2::before { display:none; }
.keybox p { font-size:16.5px; line-height:1.6; }
.stat { font-weight:800; color:var(--green); font-variant-numeric:tabular-nums;
  background:var(--green-p); padding:1px 8px; border-radius:5px; }
.figs { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:14px; }
.fig { background:#FAF8F1; border:1px solid var(--line); border-radius:var(--r); padding:16px; text-align:center; }
.fig .v { font-family:var(--display); font-size:31px; font-weight:600; color:var(--green); line-height:1;
  font-variant-numeric:tabular-nums; }
.fig .k { font-size:12px; color:var(--ink-soft); margin-top:8px; line-height:1.35; }

/* ══ 9. Tableaux ══ */
.tablebox { overflow-x:auto; margin:0 -30px; }
table { width:100%; border-collapse:collapse; font-size:14.5px; font-variant-numeric:tabular-nums; }
thead th, th { background:var(--green); color:#E8F1E6; font-size:10.5px; font-weight:700;
  letter-spacing:.09em; text-transform:uppercase; padding:11px 14px; text-align:right; white-space:nowrap; }
th:first-child, td:first-child { text-align:left; padding-left:30px; }
th:last-child, td:last-child { padding-right:30px; }
td { padding:13px 14px; text-align:right; border-bottom:1px solid var(--line-2); }
tbody tr:nth-child(even) td { background:#FBFAF4; }
tbody tr:hover td { background:var(--green-p); }
td.lbl { font-weight:500; } td.nom, th.nom { text-align:left; }
td.num { font-weight:700; } td.hi { color:var(--green); font-weight:800; } td.dim { color:var(--ink-dim); }
tr.total td { background:#EFE9D9 !important; font-weight:700; border-top:2px solid var(--green); }
.bar { display:block; height:4px; background:var(--green-l); border-radius:2px; margin:5px 0 0 auto; }
.bar.g { background:var(--gold); }
.sub { display:block; font-size:11px; color:var(--ink-dim); font-weight:400; margin-top:2px; }
.tag { display:inline-block; padding:3px 9px; border-radius:999px; font-size:10.5px; font-weight:700;
  letter-spacing:.04em; text-transform:uppercase; }
.tag.or { background:var(--gold-p); color:var(--gold-d); }
.tag.vert { background:var(--green-p); color:var(--green); }

/* ══ 10. Colonne latérale ══ */
.side { background:var(--surface); border:1px solid var(--line); border-radius:var(--r);
  overflow:hidden; box-shadow:var(--sh-1); }
.side h4 { background:var(--green); color:#fff; font-size:11.5px; letter-spacing:.1em;
  text-transform:uppercase; padding:11px 16px; font-weight:700; display:flex; align-items:center; gap:8px; }
.side h4 .ico { width:15px; height:15px; }
.side h4.or { background:linear-gradient(90deg,var(--gold),#D8A44A); color:#24190A; }
.side h4.ard { background:var(--slate); }
.side .in { padding:15px 16px; }
.side p { font-size:13.5px; line-height:1.55; color:var(--ink-soft); }
.side-list { list-style:none; margin:0; }
.side-list li { border-bottom:1px solid var(--line-2); }
.side-list li:last-child { border-bottom:0; }
.side-list a { display:flex; justify-content:space-between; gap:10px; align-items:center;
  padding:12px 16px; font-size:13.5px; color:var(--ink); }
.side-list a:hover { background:#F7F5EC; text-decoration:none; }
.side-list .s { font-size:11px; color:var(--ink-dim); white-space:nowrap; }

/* ══ Nos résultats : carrousel ══ */
.side.res { border-color:#E1C77E; }
.side.res h4 { background:linear-gradient(90deg,var(--brick),#C25A3E); color:#fff; }
.carr { position:relative; overflow:hidden; }
.carr-track { display:flex; transition:transform .38s cubic-bezier(.2,.7,.2,1); }
.slide { flex:0 0 100%; width:100%; min-width:0; box-sizing:border-box; padding:18px 18px 14px; text-align:center; overflow-wrap:anywhere; }
.slide .qd { font-size:10.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--ink-dim); font-weight:700; }
.slide .cs { font-size:13px; font-weight:700; color:var(--ink); margin-top:4px; }
.slide .pari { display:inline-block; margin-top:12px; font-size:10.5px; letter-spacing:.12em;
  text-transform:uppercase; color:var(--gold-d); font-weight:800; background:var(--gold-p); padding:4px 10px; border-radius:999px; }
.slide .eur { font-family:var(--display); font-size:38px; font-weight:600; color:var(--green);
  line-height:1.05; margin-top:10px; font-variant-numeric:tabular-nums; }
.slide .eur small { font-family:var(--text); font-size:11.5px; font-weight:600; color:var(--ink-dim); margin-left:4px; }
.slide .nm { font-size:13.5px; font-weight:600; color:var(--ink); margin-top:8px; line-height:1.35; }
.slide .nm b { color:var(--brick); }
.carr-nav { display:flex; align-items:center; justify-content:center; gap:10px; padding:4px 0 14px; }
.carr-nav button { width:30px; height:30px; border-radius:50%; border:1px solid var(--line); background:#fff;
  color:var(--green); cursor:pointer; display:flex; align-items:center; justify-content:center; }
.carr-nav button:hover { background:var(--green-p); }
.carr-nav .ico { width:14px; height:14px; }
.dots { display:flex; gap:6px; }
.dots i { width:7px; height:7px; border-radius:50%; background:#DCD5C2; }
.dots i.on { background:var(--gold); width:18px; border-radius:4px; }
.res .in p { font-size:11px; color:var(--ink-dim); line-height:1.45; }

/* ══ Turfin en chiffres (encart de colonne) ══ */
.chf { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line-2); }
.chf div { background:var(--surface); padding:13px 14px; display:flex; align-items:center; gap:10px; }
.chf .ib { width:30px; height:30px; border-radius:8px; display:flex; align-items:center;
  justify-content:center; flex:0 0 auto; background:var(--green-p); color:var(--green); }
.chf .ib.b { background:var(--gold-p); color:var(--gold-d); }
.chf .ib.c { background:var(--slate-p); color:var(--slate); }
.chf .ib.d { background:var(--brick-p); color:var(--brick); }
.chf .ib .ico { width:15px; height:15px; }
.chf .v { display:block; white-space:nowrap; font-family:var(--display); font-size:18px;
  font-weight:600; color:var(--ink); line-height:1; font-variant-numeric:tabular-nums; }
.chf .k { display:block; font-size:10px; color:var(--ink-dim); text-transform:uppercase;
  letter-spacing:.06em; margin-top:4px; font-weight:600; }
.chf div { min-width:0; }

/* ══ Plus gros rapports de la veille ══ */
.rap { list-style:none; margin:0; }
.rap li { display:flex; align-items:center; gap:11px; padding:11px 16px; border-bottom:1px solid var(--line-2); }
.rap li:last-child { border-bottom:0; }
.rap .eur { font-family:var(--display); font-size:17px; font-weight:600; color:var(--brick);
  font-variant-numeric:tabular-nums; white-space:nowrap; min-width:74px; text-align:right; }
.rap .d { min-width:0; }
.rap .p1 { font-size:12.5px; font-weight:700; color:var(--ink); }
.rap .p2 { font-size:11px; color:var(--ink-dim); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

/* ══ Dernières arrivées (module de la colonne) ══ */
.arr { list-style:none; margin:0; }
.arr li { border-bottom:1px solid var(--line-2); }
.arr li > a { display:block; padding:11px 16px; color:inherit; }
.arr li > a:hover { background:#F7F4EA; text-decoration:none; }
.arr li:last-child { border-bottom:0; }
.arr .ligne { display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
.arr .rc { font-size:12px; font-weight:800; color:var(--green-l); letter-spacing:.04em; }
.arr .hp { font-size:13px; color:var(--ink); font-weight:600; overflow:hidden;
  text-overflow:ellipsis; white-space:nowrap; }
.arr .hr { font-size:11px; color:var(--ink-dim); white-space:nowrap; font-variant-numeric:tabular-nums; }
.arr .nums { display:flex; gap:5px; margin-top:7px; }
.arr .nu { width:25px; height:25px; border-radius:6px; background:#EFEADB; color:var(--ink);
  display:flex; align-items:center; justify-content:center; font-size:12.5px; font-weight:700;
  font-variant-numeric:tabular-nums; }
.arr .nu:first-child { background:var(--gold); color:#24190A; }
.arr .nu:nth-child(2) { background:#E2DAC4; }

/* ══ 11. Boutons ══ */
.btn { display:inline-flex; align-items:center; gap:8px; padding:12px 20px; background:var(--green);
  color:#fff; font-size:13.5px; font-weight:700; border-radius:9px; border:none; cursor:pointer;
  box-shadow:var(--sh-1); transition:.16s; }
.btn:hover { background:var(--green-l); text-decoration:none; transform:translateY(-1px); box-shadow:var(--sh-2); }
.btn-or { background:var(--gold); color:#24190A; }
.btn-or:hover { background:#D8A44A; }
.btn-ghost { background:#fff; color:var(--green); border:1px solid var(--line); box-shadow:none; }
.btn-ghost:hover { background:#F7F5EC; }
.btn-row { display:flex; gap:11px; margin-top:18px; flex-wrap:wrap; }
.btn:active, .dep:active, .reu a:active, .cpr a:active { transform:scale(.98); transition:transform 50ms linear; }
.tp-preuve { display:inline-flex; align-items:center; gap:6px; font-size:12px; color:var(--ink-dim); margin-top:10px; }
.tp-preuve .st { width:14px; height:14px; color:#00B67A; } .tp-preuve b { color:var(--ink); }
.tp-preuve:hover { text-decoration:none; color:var(--ink); }
.sombre .tp-preuve, .vert .tp-preuve, .card-p .tp-preuve, .h3 .tp-preuve { color:#B9D0BC; } .sombre .tp-preuve b, .vert .tp-preuve b, .card-p .tp-preuve b, .h3 .tp-preuve b { color:#fff; }
/* Champs de formulaire : texte encre sur blanc, jamais blanc sur crème (calculateurs, 16/09) */
.col-main input:not([type="checkbox"]):not([type="radio"]), .col-main select, .col-main textarea {
  color:var(--ink); background:#fff; border:1px solid var(--line); border-radius:9px; padding:10px 12px;
  font:inherit; font-size:15px; }
.col-main input:focus, .col-main select:focus, .col-main textarea:focus { outline:none; border-color:var(--green-l); box-shadow:0 0 0 3px var(--green-p); }
/* Choix du type de pari en pastilles (calculateur de gains) */
.choix-pari { display:flex; flex-wrap:wrap; gap:8px; }
.choix-pari label { cursor:pointer; }
.choix-pari input { position:absolute; opacity:0; pointer-events:none; }
.choix-pari .pari { opacity:.55; border:2px solid transparent; transition:.12s; }
.choix-pari input:checked + .pari { opacity:1; border-color:var(--ink); box-shadow:var(--sh-1); }
.choix-pari input:focus-visible + .pari { outline:2px solid var(--green-l); outline-offset:2px; }
/* Fiche course sur ordinateur : tout le champ visible, pas de cadre défilant de 5 lignes */
.col-main .partants-scroll { max-height:none; overflow:visible; }
.col-main #partantsTable td.cote { font-weight:700; }
/* Tuiles de statistiques */
.kpi { display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:12px; }
.kpi > div { background:#FCFAF4; border:1px solid var(--line); border-radius:12px; padding:14px 16px; }
.kpi .v { font-family:var(--display); font-size:28px; font-weight:600; color:var(--green); line-height:1.05; font-variant-numeric:tabular-nums; }
.kpi .k { font-size:11.5px; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-dim); font-weight:700; margin-top:6px; }
.kpi .s { font-size:12px; color:var(--ink-soft); margin-top:4px; }
.row { display:flex; justify-content:space-between; gap:14px; padding:10px 0;
  border-bottom:1px solid var(--line-2); font-size:14.5px; }
.row .label { color:var(--ink-soft); }
.row .val { font-weight:700; font-variant-numeric:tabular-nums; }
.big { font-family:var(--display); font-size:27px; font-weight:600; color:var(--green); }

/* ══ 12. Bandes de preuve et de chiffres ══ */
.proof { background:var(--surface); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.proof .wrap { display:grid; grid-template-columns:repeat(4,1fr); }
.proof .p { display:flex; gap:13px; padding:26px 24px; border-right:1px solid var(--line-2); }
.proof .p:last-child { border-right:0; } .proof .p:first-child { padding-left:0; }
.proof .ico-box { width:40px; height:40px; border-radius:10px; display:flex; align-items:center;
  justify-content:center; flex:0 0 auto; }
.proof .c1 { background:var(--green-p); color:var(--green); }
.proof .c2 { background:var(--gold-p); color:var(--gold-d); }
.proof .c3 { background:var(--slate-p); color:var(--slate); }
.proof .c4 { background:var(--brick-p); color:var(--brick); }
.proof b { display:block; font-size:14px; margin-bottom:3px; }
.proof span { font-size:12.5px; color:var(--ink-soft); line-height:1.5; }

/* ══ 13. Bas de page — resserré : colonnes plus proches, moins de hauteur ══ */
.foot { background:var(--green-n); color:#93A891; font-size:13px; }
.foot .wrap { max-width:1400px; padding-top:30px; padding-bottom:8px; display:grid;
  grid-template-columns:1.25fr .85fr .85fr 1fr; gap:26px; }
.foot h5, .foot .fh { color:#F0F3EE; font-size:12.5px; margin-bottom:10px; font-weight:700; }
.foot nav a { color:#93A891; display:block; padding:3.5px 0; font-size:12.5px; }
.foot nav a:hover { color:#fff; }
.f-mark { display:flex; align-items:center; gap:9px; }
.f-mark img { width:30px; height:30px; border-radius:7px; }
.f-mark .wordmark { font-size:17px; }
.foot .desc { font-size:12px; color:#778C75; margin-top:9px; line-height:1.5; max-width:30ch; }
.store { display:inline-flex; align-items:center; gap:9px; margin-top:13px; padding:7px 13px 7px 10px;
  background:#000; border:1px solid #2A3C2E; border-radius:7px; color:#fff; }
.store:hover { text-decoration:none; border-color:#4C6650; }
.store .ico { width:19px; height:19px; }
.store small { display:block; font-size:8.5px; letter-spacing:.08em; text-transform:uppercase; color:#A9B7A7; }
.store b { font-size:12.5px; font-weight:600; }
.soc { display:flex; gap:7px; }
.soc a { display:flex; width:34px; height:34px; border-radius:8px; align-items:center;
  justify-content:center; color:#fff; transition:.15s; }
.soc a:hover { transform:translateY(-2px); text-decoration:none; }
.soc .yt { background:#D7301F; } .soc .tg { background:#2A8FC7; } .soc .x { background:#1A1A1A; }
.soc .ico { width:17px; height:17px; }
.avis-strip { max-width:1400px; margin:0 auto; padding:6px 32px 22px; }
.avis-strip .in { display:flex; align-items:center; justify-content:space-between; gap:18px;
  background:#0D2415; border:1px solid #213A26; border-radius:10px; padding:13px 18px 13px 20px; }
.avis-strip p { margin:0; font-size:12.5px; color:#8FA48D; line-height:1.45; }
.avis-strip b { color:#E7EDE5; }
.avis-strip a { display:inline-flex; align-items:center; gap:8px; background:#fff; color:#16200F;
  padding:9px 16px; border-radius:8px; font-weight:700; font-size:12.5px; white-space:nowrap; flex:0 0 auto; }
.avis-strip a:hover { text-decoration:none; background:#F0F3EE; }
.avis-strip .st { color:#00B67A; width:16px; height:16px; }
.copy { border-top:1px solid rgba(255,255,255,.09); }
.copy .wrap { max-width:1400px; display:block; padding:11px 22px 20px; font-size:10.5px;
  color:#6E8370; line-height:1.5; text-align:center; }
.copy b { color:#A7BBA5; }

@media (max-width:1100px) {
  .page-grid { grid-template-columns:minmax(0,1fr); }
  .col-side { margin-top:0; }
  .proof .wrap { grid-template-columns:1fr 1fr; }
  .proof .p { border-right:0; padding-left:0; }
  .foot .wrap { grid-template-columns:1fr 1fr; gap:26px; }
}
@media (max-width:820px) {
  /* Navigation : les branches se déplient en accordéon au lieu de flotter. */
  .nav .wrap { display:block; padding:0; }
  .nav-list { flex-direction:column; }
  .nav-item { border-bottom:1px solid rgba(255,255,255,.07); }
  .nav-top { width:100%; padding:13px 22px; border-bottom:0; }
  .nav-top .car { margin-left:auto; }
  .drop { position:static; opacity:1; visibility:visible; transform:none; box-shadow:none;
    border-radius:0; background:#0A2113; border-top:0; padding:4px 10px 10px; display:none; }
  .nav-item.open .drop { display:block; }
  .nav-item:hover .drop, .nav-item:focus-within .drop { display:none; }
  .nav-item.open .drop { display:block; }
  .drop a { color:#C2D6C0; }
  .drop a:hover { background:rgba(255,255,255,.08); }
  .drop a small { color:#7E9880; }
  .nav .nav-toggle { display:flex; }
  .nav .nav-list { display:none; }
  .nav.ouvert .nav-list { display:flex; }
}
@media (max-width:720px) {
  .mast .wrap { flex-wrap:wrap; gap:12px; }
  .mast form { flex:1 1 100%; order:3; margin-left:0; }
  .baseline { display:none; } .wordmark { font-size:21px; }
  .mark img { width:38px; height:38px; }
  .mast-act { margin-left:auto; }
  .b-espace small { display:none; }
  .cta-or { padding:10px 14px; font-size:12.5px; }
  .util .hide-s { display:none; }
  .pagehead { min-height:0; }
  .pagehead .wrap { padding-top:28px; padding-bottom:96px; }
  .page { margin-top:-64px; }
  .col-main { padding:4px 16px 20px; }
  .tablebox { margin:0 -16px; }
  /* tables nues : défilement horizontal au lieu d'un débordement de page */
  .col-main table { display:block; overflow-x:auto; max-width:100%; -webkit-overflow-scrolling:touch; }
  .col-main .tablebox table { display:table; overflow:visible; }
  th:first-child, td:first-child { padding-left:16px; }
  th:last-child, td:last-child { padding-right:16px; }
  .col-main section, .card { padding:18px 16px; }
  h2, .card h2 { margin:-18px -16px 14px; padding:13px 16px; font-size:18px; }
  .tablebox { margin:0 -16px -18px; }
  th:first-child, td:first-child { padding-left:16px; }
  th:last-child, td:last-child { padding-right:16px; }
  .keybox { padding:18px 16px; }
  .proof .wrap, .foot .wrap { grid-template-columns:1fr; }
  .avis-strip .in { flex-direction:column; align-items:flex-start; }
  .proof .p { padding:18px 0; border-bottom:1px solid var(--line-2); }
}
/* Barre de menu mobile (règle de base : masquée sur ordinateur) */
.nav-toggle { display:none; align-items:center; gap:9px; width:100%; padding:12px 22px;
  background:none; border:0; color:#fff; font:inherit; font-size:12.5px; font-weight:700;
  letter-spacing:.06em; text-transform:uppercase; cursor:pointer; }
@media (min-width:821px) { .nav-toggle { display:none !important; } }

/* ══ Bandeau des départs — carte façon Equidia ══ */
.dep { position:relative; min-width:330px; max-width:360px; padding:9px 88px 9px 12px; gap:0; }
.dep .d-fiche { display:block; color:inherit; }
.dep .d-fiche:hover { text-decoration:none; }
.dep .d-top { display:flex; align-items:center; gap:7px; }
.dep .d-top .disc .ico { width:20px; height:20px; padding:2px; }
.dep .d-top .t { font-size:11px; }
.dep .d-hip { font-size:12.5px; font-weight:800; text-transform:uppercase; letter-spacing:.02em; color:var(--ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dep .d-lib { display:block; margin-top:3px; font-size:13px; font-weight:700; color:var(--ink); text-transform:uppercase; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dep .d-lib .pari { margin-left:6px; vertical-align:1px; }
.dep .d-meta { display:block; margin-top:2px; font-size:10.5px; color:#667062; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dep .d-foot { display:flex; justify-content:space-between; align-items:baseline; margin-top:5px; }
.dep .d-foot .h { font-size:14px; }
.dep .d-foot .cd { font-size:11px; font-weight:700; color:var(--green-l); }
.dep.imminent .d-foot .cd { color:var(--brick); }
.dep .d-live { position:absolute; right:10px; top:50%; transform:translateY(-50%); display:inline-flex; flex-direction:column; align-items:center; gap:3px;
  padding:8px 9px; border-radius:8px; background:var(--brick); color:#fff; font-size:10.5px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.dep .d-live .ico { width:18px; height:18px; }
.dep .d-live:hover { background:#8E3524; text-decoration:none; }
.dep.encours .d-live { background:#fff; color:var(--brick); }
.dep.encours .d-hip, .dep.encours .d-lib, .dep.encours .d-meta, .dep.encours .d-foot .cd, .dep.encours .d-foot .h { color:#fff; }
.dep.encours .disc .ico { background:rgba(255,255,255,.2); color:#fff; }

/* ══ Neutralise les règles d'enveloppe venues du CSS de l'application (_css_app) ══ */
header.mast { position:relative; top:auto; padding:0; box-shadow:none; z-index:90; }
body { padding-bottom:0; }
main.col-main { max-width:none; margin:0; width:100%; }

/* ══ Disposition « grille » : pages d'outil (espace, favoris, paris, fiche cheval…) ══
   Deux colonnes de cartes en relief, alignées en haut. Une carte .span-full ou
   une <section class="full"> prend toute la largeur. */
.col-main.grille { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:18px 22px;
  align-items:start; align-content:start; padding-top:26px; }
.col-main.grille > * { min-width:0; }
.col-main.grille > .card, .col-main.grille > section { background:#FCFAF4; border:1px solid var(--line);
  border-radius:var(--r); padding:18px 20px 20px; margin:0; box-shadow:var(--sh-1); }
.col-main.grille > .card.span-full, .col-main.grille > section.full, .col-main.grille > form,
.col-main.grille > style, .col-main.grille > script, .col-main.grille > a, .col-main.grille > .full { grid-column:1 / -1; }
.col-main.grille > a > .card { background:#FCFAF4; border:1px solid var(--line); border-radius:var(--r);
  padding:18px 20px 20px; margin:0; box-shadow:var(--sh-1); }
.col-main.grille > p, .col-main.grille > h2, .col-main.grille > .note, .col-main.grille > .btn-row { grid-column:1 / -1; }
.col-main.grille .card h2, .col-main.grille section h2 { font-size:19px; margin-bottom:12px; }
@media (max-width:900px) { .col-main.grille { grid-template-columns:1fr; } }
.card { border-radius:0; margin-bottom:0; box-shadow:none; background:transparent; }
/* ══ Composants hérités de l'application (fiche course, bulletin…) aux couleurs du site ══ */
.col-main.grille > .card[style] { background:#FCFAF4 !important; border:1px solid var(--line) !important; }
.col-main.grille > .course-span, .col-main.grille > .analyse-card, .col-main.grille > .jeu-quinte-card,
.col-main.grille > .jeu-pick5-card, .col-main.grille > .quinte-hero, .col-main.grille > .pick5-hero,
.col-main.grille > div[style], .col-main.grille > details, .col-main.grille > .nlcap, .col-main.grille > .cs-head { grid-column:1 / -1; }
.col-main.grille > .cs-head { margin:-26px -30px 0; border-radius:var(--r) var(--r) 0 0; }
.col-main .row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; align-items:center; padding:9px 0; font-size:14px; border-bottom:1px solid var(--line-2); }
.col-main .row:last-child { border-bottom:0; }
.col-main .row .label { color:var(--ink-soft); } .col-main .row .val { font-weight:700; color:var(--ink); text-align:right; }
.col-main .card table, .col-main section table { font-size:13.5px; }
.col-main .card th, .col-main section table th { background:#F3F1E8; color:var(--ink-soft); font-size:10.5px; letter-spacing:.08em; font-weight:700; padding:9px 10px; border-bottom:1px solid var(--line); }
.col-main .card td, .col-main section table td { padding:10px; border-bottom:1px solid var(--line-2); vertical-align:middle; }
.col-main td.cote, .col-main th.cote { white-space:nowrap; }
.col-main td.cheval { font-weight:600; } .col-main td.cheval a { color:var(--ink); }
.col-main .jeu-quinte-card, .col-main .jeu-pick5-card { background:linear-gradient(120deg, var(--green-d), var(--green) 75%) !important; border:0 !important; color:#fff; }
.col-main .jeu-quinte-card .jq-label, .col-main .jeu-pick5-card .jq-label { color:#CFE0CE; }
.col-main .jeu-quinte-card .jq-val, .col-main .jeu-pick5-card .jq-val { color:#fff; font-size:15px; }
.col-main .jq-val.gold, .col-main .jq-val.blue { color:var(--gold); }
.col-main .jq-row { border-top-color:rgba(255,255,255,.14); }
.col-main .jq-rg { color:#B9D0BC; border-top-color:rgba(255,255,255,.14); }
.col-main .jeu-quinte-title, .col-main .jeu-pick5-title { color:var(--gold); font-family:var(--display); font-size:19px; }
.col-main .pick5-hero { background:var(--slate) !important; color:#fff; }
.col-main .pick5-hero-meta, .col-main .pick5-hero-badge { color:#DCE6EE; }
.col-main .quinte-hero { background:linear-gradient(120deg, var(--gold-d), var(--gold)) !important; }
.col-main .analyse-card { border-color:var(--line) !important; max-width:none !important; }
.col-main .coup-intro { color:var(--ink-soft); }
.col-main .classement-head { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-bottom:12px; }
.col-main .sort-ctrl select { padding:8px 10px; }
.col-main #partantsTable td, .col-main #partantsTable th { padding:9px 8px; }
.col-main #partantsTable td.cheval a { white-space:nowrap; }
.col-main .sec-title { border-left-color:var(--gold); }
.col-main .det-panel { background:#FCFAF4; border-color:var(--line); }
.col-main table.tbl-portail th { background:var(--green-d); color:#DCE9DA; }
.col-main .card th, .col-main .card td { text-align:left; }
.col-main .card td.num, .col-main .card th.num, .col-main .card td.cote, .col-main .card th.cote { text-align:right; }
.col-main tr.row-prono td { background:var(--green-p); }
.col-main tr.row-prono td.cheval, .col-main tr.row-prono .cheval { color:var(--green) !important; }
.col-main.grille > .card:has(> table), .col-main.grille > .card:has(> .partants-scroll), .col-main.grille > .card:has(> .tablebox) { grid-column:1 / -1; }
.card h3 { color:var(--ink); }
.pagehead h1 { color:#fff; }

.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
