/* VTRSIM V0.17.2 — vraie grille responsive des courses.
   Chargée après v0.17.1, sans modifier les règles du Hub / Race Gate. */
:root{--v172-blue:#076bee;--v172-ink:#0e2947;--v172-border:#cfdef1}
body.vtr17{overflow-x:clip}
body.vtr17 .container,body.vtr17 .premium-navbar,body.vtr17 .premium-footer-main{min-width:0;max-width:1560px}
/* Garde des marges correctes et évite les éléments qui élargissent artificiellement la page. */
body.vtr17[data-page="races"] :is(.races-page,.races-page .container,.pixel-races-layout,.pixel-races-main,.race-groups,.day-group,.race-live-section-v117){min-width:0;max-width:100%}
body.vtr17[data-page="races"] .vtr-races-explainer-v131{display:none!important}
body.vtr17[data-page="races"] .races-page{padding-block:18px 42px!important}
body.vtr17[data-page="races"] .race-toolbar{padding:17px 19px!important;border-radius:13px!important;background:#fff!important}
body.vtr17[data-page="races"] .race-toolbar .toolbar-top{border-bottom:1px solid #e4ecf7;padding-bottom:11px;margin-bottom:12px!important}
body.vtr17[data-page="races"] .race-toolbar h2{font-size:clamp(21px,1.8vw,27px)!important}
body.vtr17[data-page="races"] .race-toolbar .filter-row{display:flex!important;min-width:0!important;flex-wrap:wrap!important;gap:8px!important;margin-top:9px!important}
body.vtr17[data-page="races"] .filter-select{flex:0 1 175px!important;min-width:135px!important}
body.vtr17[data-page="races"] .filter-search{min-width:175px!important;max-width:330px!important;flex:1 1 200px!important}
body.vtr17[data-page="races"] :is(.date-chip,.kind-chip){white-space:nowrap!important}
body.vtr17[data-page="races"] .race-registration-legend-v10{background:#f3f9ff!important;border-color:#d7e8fc!important}
body.vtr17[data-page="races"] .pixel-races-layout{display:block!important}
body.vtr17[data-page="races"] .pixel-races-side{display:none!important}
body.vtr17[data-page="races"] .day-races{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;gap:16px!important}
/* Live: a horizontal, compact panel instead of one huge full-size card. */
body.vtr17[data-page="races"] .race-live-list-v117{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-card{display:grid!important;grid-template-columns:minmax(180px,25%) minmax(0,1fr) minmax(230px,26%)!important;grid-template-rows:auto!important;min-height:160px!important;align-items:stretch!important}
body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-card>.vtr172-art{height:100%!important;min-height:175px!important}
body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-content{align-self:center!important;padding:14px 16px!important}
body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-actions{display:flex!important;flex-direction:column!important;justify-content:center!important;gap:9px!important;border-left:1px solid #e2ebf7!important;padding:15px!important}
body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-actions>a{min-height:36px!important}
/* Course cards: the source class badge must remain visible after all legacy overrides. */
body.vtr17[data-page="races"] .vtr172-card{display:flex!important;flex-direction:column!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;border-radius:12px!important;background:#fff!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-art{position:relative!important;display:flex!important;flex-direction:column!important;justify-content:flex-end!important;align-items:flex-start!important;isolation:isolate!important;height:148px!important;min-height:148px!important;padding:13px!important;background-size:cover!important;background-position:center!important;overflow:hidden!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-art>.vtr172-class{display:inline-block!important;position:absolute!important;inset:10px auto auto 10px!important;max-width:58%!important;min-width:0!important;width:auto!important;height:auto!important;line-height:1.2!important;padding:6px 9px!important;color:#fff!important;background:#0868d9!important;border:1px solid #2282ee!important;border-radius:5px!important;font-size:11px!important;font-weight:850!important;letter-spacing:0!important;white-space:normal!important;z-index:5!important;visibility:visible!important;opacity:1!important;transform:none!important;text-indent:0!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-art>.vtr172-kind{position:absolute!important;inset:10px 10px auto auto!important;max-width:45%!important;padding:6px 9px!important;color:#0c2947!important;background:#fff!important;border-radius:5px!important;font-size:10px!important;font-weight:850!important;line-height:1.2!important;z-index:5!important;white-space:normal!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-art>.vtr-rating-badge{display:inline-flex!important;position:absolute!important;inset:auto 10px 10px auto!important;width:auto!important;max-width:125px!important;min-width:0!important;height:auto!important;min-height:23px!important;padding:5px 8px!important;line-height:1.1!important;z-index:5!important;opacity:1!important;visibility:visible!important;transform:none!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-art>.vtr172-track{position:relative!important;inset:auto!important;display:block!important;max-width:calc(100% - 85px)!important;padding:0!important;margin:0!important;font-size:clamp(17px,1.55vw,22px)!important;line-height:1.15!important;letter-spacing:-.02em!important;text-wrap:pretty!important;color:#fff!important;z-index:2!important}
body.vtr17[data-page="races"] .vtr172-content{display:flex!important;flex-direction:column!important;gap:9px!important;min-width:0!important;padding:11px!important}
body.vtr17[data-page="races"] .vtr172-meta{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:5px 14px!important;min-width:0!important;font-size:11px!important;color:#385671!important}
body.vtr17[data-page="races"] .vtr172-meta>span:last-child{margin-left:auto!important;font-weight:750!important;white-space:nowrap!important}
body.vtr17[data-page="races"] .vtr172-stage{display:flex!important;flex-wrap:wrap!important;gap:4px 7px!important;align-items:center!important;border-radius:7px!important;padding:6px 9px!important;min-width:0!important;font-size:11px!important;line-height:1.3!important;background:#f1f7ff!important;color:#1c4771!important}
body.vtr17[data-page="races"] .vtr172-stage .vtr172-stage-dot{display:block!important;width:7px!important;height:7px!important;flex:0 0 7px!important;border-radius:50%!important;background:#377dd4!important}
body.vtr17[data-page="races"] .vtr172-stage small{color:inherit!important;opacity:.75!important;font-size:10px!important}
body.vtr17[data-page="races"] .vtr172-stage a{margin-left:auto!important;color:#0864cf!important;font-weight:800!important}
body.vtr17[data-page="races"] .vtr172-stage:is(.registered,.open){background:#edfbf4!important;color:#08744b!important}
body.vtr17[data-page="races"] .vtr172-stage:is(.registered,.open) .vtr172-stage-dot{background:#0ba267!important}
body.vtr17[data-page="races"] .vtr172-stage.closed{background:#fff6eb!important;color:#875c22!important}
body.vtr17[data-page="races"] .vtr172-stage.closed .vtr172-stage-dot{background:#cd8a30!important}
body.vtr17[data-page="races"] .vtr172-stage.live{background:#eaf5ff!important;color:#084f9d!important}
body.vtr17[data-page="races"] .vtr172-stage.live .vtr172-stage-dot{background:#d63943!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-v16-important-times{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-v16-important-times .vtr-v16-time{min-width:0!important;padding:10px!important;gap:7px!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-v16-time-symbol{flex:0 0 29px!important;width:29px!important;height:29px!important;background-size:28px!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-v16-time-body>span{font-size:10px!important;line-height:1.2!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-v16-time-body>strong{font-size:clamp(25px,2vw,33px)!important;line-height:1.1!important;font-variant-numeric:tabular-nums!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-v16-time-body>small{font-size:10px!important;display:none!important}
body.vtr17[data-page="races"] .vtr172-card .premium-calendar-settings{margin:0!important;min-width:0!important}
body.vtr17[data-page="races"] .vtr172-card .premium-calendar-settings>summary{min-height:39px!important;gap:7px!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-disclosure-copy{min-width:0!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-disclosure-copy>strong{color:#143457!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-disclosure-copy>small{color:#4f6e8e!important;display:inline!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-disclosure-action,body.vtr17[data-page="races"] .vtr172-card .vtr-disclosure-action :is(span,i){color:#075cbb!important;background-color:transparent!important;text-shadow:none!important;opacity:1!important}
body.vtr17[data-page="races"] .vtr172-card .vtr-disclosure-action{background-color:#fff!important;border:1px solid #b7d4fa!important;white-space:normal!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;min-width:0!important;width:100%!important;margin-top:auto!important;padding:0 11px 11px!important;border:0!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions>.vtr-inline-access-v1{grid-column:1/-1!important;padding:9px!important;background:#eafaF2!important;border:1px solid #b7e7ce!important;border-radius:8px!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions>a{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;min-width:0!important;min-height:39px!important;font-size:11px!important;padding:8px!important;border-radius:7px!important;line-height:1.2!important;text-decoration:none!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions>a.premium-calendar-briefing{background:#f5faff!important;border:1px solid #bfd7fa!important;color:#174776!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions>a.btn{background:#0869ed!important;color:#fff!important;border:1px solid #0869ed!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions .vtr-v16-pin-actions{display:grid!important;grid-template-columns:minmax(52px,.7fr) minmax(68px,.8fr) minmax(84px,1.2fr)!important;gap:7px!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions .vtr-v16-pin-actions>strong{color:#0b3044!important;font-size:clamp(17px,2vw,24px)!important;letter-spacing:.07em!important;padding:6px 4px!important;background:#fff!important;border:1px solid #b7e7ce!important;border-radius:6px!important;min-width:0!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions .vtr-v16-pin-actions>.vtr-copy-direct-v1{color:#095fc3!important;background:#fff!important;border:1px solid #bed8fa!important}
body.vtr17[data-page="races"] .vtr172-card .vtr172-actions .vtr-v16-pin-actions>.vtr-join-direct-v1{color:#fff!important;background:#068851!important;border:1px solid #068851!important}
/* Index: no more overlap for the links beside the section title. */
body.vtr17[data-page="index"] .vtr-v16-home-section-top{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;gap:12px 22px!important;min-width:0!important}
body.vtr17[data-page="index"] .vtr-v16-home-section-top>div:first-child{min-width:0!important}
body.vtr17[data-page="index"] .vtr-v16-home-links{position:static!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;justify-content:flex-end!important;min-width:0!important;max-width:100%!important}
body.vtr17[data-page="index"] .vtr-v16-home-links>a{position:static!important;white-space:nowrap!important;min-height:34px!important;padding:7px 10px!important;border:1px solid #d6e6fa!important;border-radius:6px!important;background:#f7fbff!important}
@media(max-width:1300px){
 body.vtr17[data-page="races"] .day-races{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-card{grid-template-columns:minmax(170px,26%) minmax(0,1fr)!important}
 body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-actions{grid-column:1/-1!important;border-left:0!important;border-top:1px solid #e2ebf7!important;display:grid!important;grid-template-columns:1fr 1fr!important;padding:9px 12px!important}
 body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-actions>.vtr-inline-access-v1{grid-column:1/-1!important}
}
@media(max-width:800px){
 body.vtr17[data-page="races"] .day-races{grid-template-columns:1fr!important}
 body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-card{display:flex!important;flex-direction:column!important}
 body.vtr17[data-page="races"] .race-live-list-v117 .vtr172-card>.vtr172-art{height:155px!important;min-height:155px!important}
 body.vtr17[data-page="races"] .vtr172-card .vtr172-art{height:160px!important;min-height:160px!important}
 body.vtr17[data-page="races"] .vtr172-card .vtr172-content{padding:12px!important}
 body.vtr17[data-page="races"] .vtr172-card .vtr-v16-time-body>strong{font-size:clamp(23px,5vw,32px)!important}
 body.vtr17[data-page="races"] .vtr172-card .vtr172-actions{padding:0 12px 12px!important}
 body.vtr17[data-page="index"] .vtr-v16-home-section-top{grid-template-columns:1fr!important}
 body.vtr17[data-page="index"] .vtr-v16-home-links{justify-content:flex-start!important}
}
@media(max-width:440px){
 body.vtr17[data-page="races"] .vtr172-card .vtr-v16-important-times{grid-template-columns:1fr!important}
 body.vtr17[data-page="races"] .vtr172-card .vtr172-actions .vtr-v16-pin-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}
 body.vtr17[data-page="races"] .vtr172-card .vtr172-actions .vtr-v16-pin-actions>strong{grid-column:1/-1!important}
 body.vtr17[data-page="races"] .vtr172-card .vtr172-actions>a{font-size:11px!important}
 body.vtr17[data-page="races"] .race-toolbar .filter-label{min-width:100%!important}
 body.vtr17[data-page="races"] :is(.date-chip,.kind-chip){padding:7px 9px!important;font-size:11px!important}
}
