/* ================= DM Timing — pages Résultats ================= */
.rpage{background:#fff}
body.js noscript{display:none}
.r-inner{max-width:1100px;margin:0 auto;padding:0 clamp(20px,5vw,64px)}
.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}
tr[hidden]{display:none !important}

/* --- hero compact --- */
.r-hero{background:linear-gradient(160deg,#0C2A4E,#081D36);margin-top:-86px;padding:176px 0 108px;color:#fff}
.r-hero .overline{margin-bottom:20px}
.r-hero h1{font-family:'Barlow Condensed',sans-serif;font-style:italic;font-weight:700;text-transform:uppercase;font-size:clamp(46px,7.5vw,92px);line-height:.94;letter-spacing:.01em;margin:0 0 22px}
.r-hero .meta{font-family:'IBM Plex Mono',monospace;font-size:clamp(11.5px,1.6vw,14px);letter-spacing:.18em;color:#8FD1F7}
.r-hero .sub{font-size:clamp(16.5px,2vw,19px);color:#C9D8E8;max-width:560px;line-height:1.65;margin:6px 0 0}
.r-hero .orgs{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:44px}
.r-hero .mah{background:#fff;border-radius:14px;padding:11px 18px;display:inline-flex}
.r-hero .mah img{height:32px;width:auto}
.r-hero .by{display:inline-flex;align-items:center;gap:14px;font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;color:#A8BDD3}
.r-hero .by img{height:20px;width:auto}

/* --- podium --- */
.r-podium{padding:0}
.podium{list-style:none;margin:-58px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;position:relative;z-index:2}
.pd{background:#fff;border:1px solid #E2EAF2;border-radius:22px;padding:28px 28px 26px;box-shadow:0 18px 50px rgba(8,29,54,.10);position:relative;overflow:hidden}
.pd::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:#DCE8F4}
.pd-1::before{background:#3FA9E8}
.pd .rank{display:block;font-size:34px;font-weight:600;line-height:1;color:#C3D3E2}
.pd-1 .rank{color:#3FA9E8}
.pd .nm{display:block;font-weight:700;font-size:clamp(17px,1.8vw,20px);color:#081D36;margin-top:16px;letter-spacing:-.01em;overflow-wrap:anywhere}
.pd .tm{display:block;font-size:clamp(19px,2.3vw,26px);color:#0C2A4E;margin-top:8px}
@media (max-width:760px){
  .podium{grid-template-columns:1fr;margin-top:-40px;gap:12px}
  .pd{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:2px 14px;padding:18px 20px}
  .pd .rank{font-size:26px}
  .pd .nm,.pd .tm{margin:0}
  .pd .tm{font-size:17px}
}

/* --- vues Général / Par catégorie --- */
.tb-views{margin:36px 0 0;align-items:center}
.tb-views + .toolbar{margin-top:18px}
.catsel{display:inline-flex;align-items:center;gap:12px}
.catsel .cs-label{font-size:14px;font-weight:600;color:#0C2A4E;white-space:nowrap}
.catsel select{-webkit-appearance:none;appearance:none;height:46px;min-width:220px;border:1.5px solid #1E6FC2;border-radius:12px;background:#fff url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="%231E6FC2" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="m6 9 6 6 6-6"/></svg>') no-repeat right 14px center;color:#081D36;font-family:inherit;font-size:15px;font-weight:600;padding:0 42px 0 16px;cursor:pointer}
.catsel select:hover{border-color:#0C2A4E}
.catsel[hidden]{display:none}
/* --- coupes or / argent / bronze --- */
.cup{display:inline-flex;align-items:center;justify-content:center;vertical-align:-2px}
.cup svg{width:14px;height:14px}
.cup-1{color:#C9A227}
.cup-2{color:#8E9DAC}
.cup-3{color:#B07B4F}
.pd .rank{display:flex;align-items:center;gap:10px}
.pd .cup svg{width:19px;height:19px}
.rt td.pos{white-space:nowrap}
.rt td.pos .cup{margin-left:7px}

/* --- toolbar --- */
.r-list{padding:44px 0 88px}
.toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px 28px;flex-wrap:wrap;margin:36px 0 6px}
.search{flex:1 1 300px;max-width:480px}
.search label{display:block;font-size:13.5px;font-weight:600;color:#0C2A4E;margin-bottom:9px}
.search input{width:100%;height:52px;border:1.5px solid #C6D6E6;border-radius:14px;padding:0 18px;font-size:16px;font-family:inherit;color:#081D36;background:#fff}
.search input::placeholder{color:#8AA2BC}
.filters{display:inline-flex;background:#F0F5FA;border-radius:980px;padding:4px;gap:2px}
.filters button{border:0;background:transparent;border-radius:980px;padding:10px 20px;font-size:14px;font-weight:600;color:#41556B;cursor:pointer;font-family:inherit;transition:background .15s,color .15s}
.filters button:hover{color:#081D36}
.filters button[aria-pressed="true"]{background:#0C2A4E;color:#fff}
#r-count{font-size:12px;letter-spacing:.14em;color:#5B6B7C;margin:16px 0 12px}

/* --- tableau --- */
.rt table{width:100%;border-collapse:collapse}
.rt th{font-family:'IBM Plex Mono',monospace;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-align:left;color:#5B6B7C;padding:12px 14px;border-bottom:2px solid #0C2A4E}
.rt th.th-time,.rt td.time{text-align:right}
.rt td{padding:15px 14px;border-bottom:1px solid #E7EEF5;font-size:15.5px;color:#22374D;vertical-align:middle}
.rt td.pos{font-weight:600;color:#5B6B7C;width:52px}
.rt tr.top3 td.pos{color:#1E6FC2}
.rt td.bib{color:#5B6B7C}
.rt td .nm{font-weight:600;color:#081D36;overflow-wrap:anywhere}
.rt td.time{white-space:nowrap;font-size:15px}
.rt tbody tr:hover{background:#F3F7FB}
.m-meta{display:none}
#r-empty,#r-error,.load-error{padding:34px 4px;font-size:16px;color:#41556B}
.src-note{margin:34px 0 0;font-size:10.5px;letter-spacing:.18em;color:#8AA2BC}
@media (max-width:740px){
  .rt thead{position:absolute;left:-9999px;top:-9999px}
  .rt table,.rt tbody{display:block}
  .rt tr{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:1px 12px;padding:13px 2px;border-bottom:1px solid #E7EEF5}
  .rt td{display:block;border:0;padding:0}
  .rt td.bib,.rt td.sex,.rt td.cat,.rt td.catpos{display:none}
  .rt td.pos{width:auto;font-size:17px}
  .rt td.time{font-size:15.5px}
  .m-meta{display:block;font-size:11.5px;color:#5B6B7C;margin-top:4px;letter-spacing:.02em}
}

/* --- partage --- */
.r-share{background:#F7FAFD;border-top:1px solid #E7EEF5;padding:78px 0}
.r-share h2{font-size:clamp(25px,3.2vw,36px);letter-spacing:-.02em;color:#081D36;margin:0 0 26px;font-weight:700}
.share-btns{display:flex;gap:14px;flex-wrap:wrap}
.share-btns a,.share-btns button{display:inline-flex;align-items:center;height:52px;padding:0 28px;border-radius:980px;border:1.5px solid #C6D6E6;background:#fff;color:#0C2A4E;font-weight:600;font-size:15px;cursor:pointer;font-family:inherit;text-decoration:none;transition:border-color .15s,color .15s,background .15s}
.share-btns a:hover,.share-btns button:hover{border-color:#1E6FC2;color:#1E6FC2;text-decoration:none}
.share-btns #sh-native{background:#0C2A4E;border-color:#0C2A4E;color:#fff}
.share-btns #sh-native:hover{background:#1E6FC2;border-color:#1E6FC2;color:#fff}
#sh-status{min-height:22px;margin:18px 0 0;font-size:14px;color:#1E6FC2}

/* --- CTA bas de page événement --- */
.r-cta{padding:104px 0;background:#081D36;color:#fff;text-align:center}
.r-cta h2{font-size:clamp(30px,4.4vw,52px);letter-spacing:-.025em;margin:0 0 16px;font-weight:700}
.r-cta p{font-size:clamp(16px,2vw,19px);color:#C9D8E8;line-height:1.65;max-width:560px;margin:0 auto 36px}
.r-cta .ctas{display:flex;gap:26px;align-items:center;justify-content:center;flex-wrap:wrap}
.r-cta .more{color:#8FD1F7;font-weight:600}
.r-cta .more:hover{color:#fff}

/* --- répertoire --- */
.r-main{padding:64px 0 110px}
.ev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}
.ev-card{display:block;background:#fff;border:1px solid #E2EAF2;border-radius:24px;padding:32px;transition:border-color .15s,transform .15s,box-shadow .15s}
.ev-card:hover{border-color:#9CC4E4;transform:translateY(-2px);box-shadow:0 14px 38px rgba(8,29,54,.08);text-decoration:none}
.ev-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}
.ev-card .date{font-size:12px;letter-spacing:.12em;color:#5B6B7C;text-transform:uppercase}
.ev-card .tag{font-size:10px;letter-spacing:.2em;color:#1E6FC2;border:1px solid #C6D6E6;border-radius:980px;padding:5px 11px}
.ev-card h2{font-size:24px;letter-spacing:-.02em;color:#081D36;margin:0 0 8px;font-weight:700}
.ev-card .meta{font-size:15px;color:#41556B;margin:0 0 26px}
.ev-card .go{font-weight:600;font-size:15px;color:#1E6FC2}
.r-orga{margin-top:84px;padding-top:56px;border-top:1px solid #E7EEF5;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.r-orga p{font-size:clamp(17px,2.2vw,21px);font-weight:600;color:#0C2A4E;margin:0;max-width:520px}
.noscript-note{padding:24px 0;font-size:16px;color:#41556B}

@media (max-width:600px){
  .tb-views{gap:12px}
  .tb-views .filters{width:100%;display:flex}
  .tb-views .filters button{flex:1}
  .catsel{width:100%;background:#F0F5FA;border-radius:14px;padding:12px 14px}
  .catsel select{flex:1;min-width:0;font-size:16px}
  .r-hero{padding:150px 0 92px}
  .toolbar{align-items:stretch}
  .filters{align-self:flex-start}
  .r-orga{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion: reduce){
  .ev-card,.ev-card:hover{transform:none;transition:none}
}
