/* Les Coureurs Célestes — styles bornés au shortcode (compatibles Divi). */
.cc-histoire {
 --cc-primary:#2376a7; --cc-strong:#145a85; --cc-soft:#eaf5fb;
 --cc-ink:#24384b; --cc-muted:#647587; --cc-line:#d6e5ed;
 --cc-radius:16px;
 margin:0 auto 2rem; max-width:1180px; color:var(--cc-ink);
 font-family:inherit; line-height:1.5;
}
.cc-histoire *, .cc-histoire *:before, .cc-histoire *:after{box-sizing:border-box}
.cc-histoire h2,.cc-histoire h3,.cc-histoire h4,.cc-histoire p{color:inherit;margin-top:0}
.cc-histoire h2,.cc-histoire h3,.cc-histoire h4{line-height:1.2;font-weight:750;letter-spacing:-.02em}
.cc-histoire h2{font-size:clamp(2rem,4vw,3.05rem);margin:.35rem 0 .75rem}
.cc-histoire h3{font-size:clamp(1.45rem,2.6vw,2.2rem);margin:.25rem 0 .55rem}
.cc-histoire h4{font-size:1.08rem;margin:0 0 .4rem;min-height:2.5em}
.cc-histoire p{margin-bottom:.65em}
.cc-histoire a{color:var(--cc-strong);text-decoration:none}
.cc-histoire a:hover,.cc-histoire a:focus{color:var(--cc-primary);text-decoration:underline}
.cc-histoire button,.cc-histoire input{font:inherit}
.cc-histoire button{cursor:pointer;transition:background .15s,border-color .15s,transform .15s}
.cc-histoire button:focus-visible,.cc-histoire a:focus-visible,.cc-histoire input:focus-visible{outline:3px solid #77c8e8;outline-offset:2px}
.cc-histoire .cc-eyebrow{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--cc-primary)}
.cc-histoire .cc-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#eaf7ff 0%,#f6fbfe 63%,#eef9f8 100%);border:1px solid var(--cc-line);border-radius:22px;padding:clamp(22px,4vw,48px);margin:0 0 18px;text-align:center}
.cc-histoire .cc-hero:before{content:"";width:255px;height:255px;position:absolute;right:-100px;top:-115px;background:#c2e7f5;opacity:.25;border-radius:50%;pointer-events:none}
.cc-histoire .cc-hero__brand{display:flex;justify-content:center;align-items:center;width:280px;max-width:85%;margin:14px auto 18px;position:relative;z-index:1}
.cc-histoire .cc-hero__brand img{width:100%;max-height:180px;height:auto;object-fit:contain}
.cc-histoire .cc-hero>p{font-size:1.03rem;max-width:780px;color:#52697c;margin:0 auto 18px;text-align:center}
.cc-histoire .cc-hero>.cc-eyebrow{display:block;text-align:center;position:relative;z-index:1}
.cc-histoire .cc-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.cc-histoire .cc-global-search{max-width:730px;clear:both;margin:0 auto}
.cc-histoire .cc-search-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;text-align:left}
.cc-histoire .cc-search-head label,.cc-histoire .cc-table-tools label{display:block;font-weight:750;font-size:.91rem;margin-bottom:0}
.cc-histoire .cc-search-total{font-size:.9rem;color:#52697c;white-space:nowrap}
.cc-histoire .cc-search-total strong{font-size:1.02rem;color:var(--cc-strong)}
.cc-histoire .cc-search-line{display:flex;gap:9px;align-items:stretch}
.cc-histoire .cc-search-line input,.cc-histoire .cc-table-tools input{min-height:50px;flex:1;min-width:0;background:white;color:var(--cc-ink);border:1px solid #bbd3e0;border-radius:11px;padding:11px 14px;box-shadow:none;appearance:none}
.cc-histoire .cc-search-line button,.cc-histoire .cc-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--cc-primary)!important;color:white!important;border:1px solid var(--cc-primary)!important;border-radius:11px;padding:10px 18px;text-decoration:none!important;font-weight:750;white-space:nowrap;line-height:1.4}
.cc-histoire .cc-search-line button:hover,.cc-histoire .cc-action:hover{background:var(--cc-strong)!important;border-color:var(--cc-strong)!important;color:white!important;text-decoration:none!important}
.cc-histoire .cc-tabs{display:flex;gap:6px;border-bottom:1px solid var(--cc-line);margin:12px 0 26px;overflow-x:auto;padding:0 2px 7px}
.cc-histoire .cc-tab{background:transparent!important;border:1px solid transparent!important;border-radius:10px;padding:11px 16px;white-space:nowrap;color:var(--cc-muted)!important;font-weight:750;font-size:.95rem}
.cc-histoire .cc-tab:hover{background:#f0f8fc!important;color:var(--cc-strong)!important}
.cc-histoire .cc-tab.is-active{background:var(--cc-soft)!important;border-color:var(--cc-line)!important;color:var(--cc-strong)!important}
.cc-histoire .cc-loading,.cc-histoire .cc-empty{padding:35px 22px;text-align:center;background:#f5fafc;border:1px dashed var(--cc-line);border-radius:var(--cc-radius);color:var(--cc-muted)}
.cc-histoire [hidden]{display:none!important}
.cc-histoire .cc-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin:0 0 20px}
.cc-histoire .cc-section-head p{color:var(--cc-muted);margin:0}
.cc-histoire .cc-editions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.cc-histoire .cc-edition-card{overflow:hidden;display:flex;flex-direction:column;background:#fff;border:1px solid var(--cc-line);border-radius:var(--cc-radius);box-shadow:0 3px 16px rgba(22,69,90,.04)}
.cc-histoire .cc-edition-card:hover{border-color:#97c4d9;box-shadow:0 8px 24px rgba(22,69,90,.08)}
.cc-histoire .cc-photo{display:flex;align-items:center;justify-content:center;background:#f9fcfe;overflow:hidden}
.cc-histoire .cc-card-photo{width:100%;height:174px;padding:13px;border-bottom:1px solid #e8f0f5}
.cc-histoire .cc-photo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.cc-histoire .cc-photo img.cc-image-missing{display:none}
.cc-histoire .cc-image-empty{color:var(--cc-primary);font-size:2rem;font-weight:900}
.cc-histoire .cc-card-content{padding:18px 18px 17px;display:flex;flex-direction:column;flex:1}
.cc-histoire .cc-card-year{font-size:.85rem;letter-spacing:.06em;font-weight:900;color:var(--cc-primary);margin-bottom:8px}
.cc-histoire .cc-date{color:var(--cc-muted);font-size:.88rem;margin:0 0 18px!important}
.cc-histoire .cc-card-actions{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-top:auto;flex-wrap:wrap}
.cc-histoire .cc-card-actions .cc-action{font-size:.83rem;padding:8px 11px}
.cc-histoire .cc-original{font-weight:650;font-size:.88rem;white-space:nowrap}
.cc-histoire .cc-covid-note,.cc-histoire .cc-note{margin:23px 0;padding:13px 17px;background:#f4f8fa;border-left:3px solid #83bdd7;color:#4e6171;border-radius:7px;font-size:.91rem}
.cc-histoire .cc-results-count{font-size:.89rem;color:var(--cc-muted);margin:0 0 15px}
.cc-histoire .cc-people-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cc-histoire .cc-person-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 17px;border-radius:12px;border:1px solid var(--cc-line);background:#fff}
.cc-histoire .cc-person-open{padding:0;background:transparent!important;border:0!important;text-align:left;flex:1;min-width:0;color:var(--cc-ink)!important}
.cc-histoire .cc-person-name{display:block;font-size:.99rem;font-weight:750;color:var(--cc-strong);text-decoration:underline;text-decoration-color:#8dc8e2;text-underline-offset:3px;text-decoration-thickness:1px}
.cc-histoire .cc-person-nick{display:block;font-size:.77rem;color:var(--cc-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
.cc-histoire .cc-person-open:hover .cc-person-name{text-decoration:underline;color:var(--cc-primary)}
.cc-histoire .cc-count{flex:none;background:#eaf5fb;color:var(--cc-strong);border-radius:99px;padding:5px 8px;font-size:.77rem;font-weight:750}
.cc-histoire .cc-table-wrap{overflow-x:auto;border:1px solid var(--cc-line);border-radius:14px}
.cc-histoire .cc-results-table{width:100%;border-collapse:collapse;background:white;min-width:620px;text-align:left;margin:0!important}
.cc-histoire .cc-results-table thead{background:#eaf5fb;color:#1b5f86}
.cc-histoire .cc-results-table th{font-size:.83rem;letter-spacing:.02em;font-weight:800;text-transform:none}
.cc-histoire .cc-results-table th,.cc-histoire .cc-results-table td{border:0!important;border-bottom:1px solid #e9eff3!important;padding:11px 14px!important;vertical-align:middle}
.cc-histoire .cc-results-table tbody tr:nth-child(even){background:#fafcfd}
.cc-histoire .cc-results-table tbody tr:hover{background:#eff8fc}
.cc-histoire .cc-results-table tbody tr:last-child td{border-bottom:0!important}
.cc-histoire .cc-results-table .cc-align-right{text-align:right}
.cc-histoire .cc-loyal-table{min-width:380px}
.cc-histoire .cc-rank{font-weight:800;color:var(--cc-primary)}
.cc-histoire .cc-text-button{background:transparent!important;border:0!important;padding:0!important;text-align:left;color:var(--cc-strong)!important;font-weight:700}
.cc-histoire .cc-text-button:hover{text-decoration:underline}
.cc-histoire .cc-time{font-variant-numeric:tabular-nums;white-space:nowrap}
.cc-histoire .cc-subname{font-size:.77rem;color:var(--cc-muted);margin-top:3px}
.cc-histoire .cc-status{display:inline-block;border-radius:99px;padding:3px 8px;font-size:.76rem;font-weight:700;white-space:nowrap;background:#e3f4eb;color:#27734b}
.cc-histoire .cc-status--partial{background:#f9f1dd;color:#946723}
.cc-histoire .cc-status--check{background:#f1eef7;color:#655479}
.cc-histoire .cc-load-more{text-align:center;padding:22px 0}
.cc-histoire .cc-mini-note{font-size:.83rem;color:var(--cc-muted);margin:14px 0}
.cc-histoire .cc-back{margin:0 0 19px}
.cc-histoire .cc-back-btn{background:transparent!important;border:0!important;color:var(--cc-primary)!important;padding:0!important;font-weight:750}
.cc-histoire .cc-back-btn:hover{text-decoration:underline}
.cc-histoire .cc-edition-head{display:grid;grid-template-columns:minmax(145px,240px) minmax(0,1fr);gap:26px;align-items:center;border:1px solid var(--cc-line);border-radius:var(--cc-radius);padding:20px;margin-bottom:20px;background:linear-gradient(110deg,#f6fbfd,#fff)}
.cc-histoire .cc-detail-photo{width:100%;height:180px;padding:10px;border-radius:12px;background:white;border:1px solid #edf2f5}
.cc-histoire .cc-edition-head p{color:var(--cc-muted);margin:8px 0 18px}
.cc-histoire .cc-original-main{font-size:.9rem}
.cc-histoire .cc-table-tools{display:flex;gap:18px;align-items:center;justify-content:space-between;margin:14px 0 16px}
.cc-histoire .cc-table-tools label{margin:0}
.cc-histoire .cc-table-tools input{width:360px;max-width:100%;min-height:45px;flex:0 1 auto}
.cc-histoire .cc-person-header{padding:22px;border-radius:var(--cc-radius);border:1px solid var(--cc-line);background:#f2f9fd;margin:0 0 18px}
.cc-histoire .cc-person-header h3{margin-bottom:10px}
.cc-histoire .cc-big-stat{font-size:2.4rem;font-weight:800;color:var(--cc-strong);line-height:1.1;margin:15px 0}
.cc-histoire .cc-big-stat span{font-size:.94rem;font-weight:600;color:var(--cc-muted)}
.cc-histoire .cc-person-header p{margin:10px 0 0;font-size:.91rem}
.cc-histoire .cc-timeline{border-left:3px solid #b5d9e9;margin-left:42px;padding:5px 0 5px 22px}
.cc-histoire .cc-timeline-item{position:relative;border:1px solid var(--cc-line);border-radius:12px;padding:17px 19px;margin-bottom:14px;background:white}
.cc-histoire .cc-timeline-item:before{content:"";position:absolute;width:13px;height:13px;background:var(--cc-primary);border:3px solid white;border-radius:50%;left:-32px;top:23px;box-shadow:0 0 0 2px #b5d9e9}
.cc-histoire .cc-timeline-year{font-size:.79rem;font-weight:900;color:var(--cc-primary);margin-bottom:5px}
.cc-histoire .cc-event-title{font-size:1.03rem}
/* Classement et chrono : chiffres accentués, présentation centrée sur ordinateur et mobile. */
.cc-histoire .cc-timeline-meta{font-size:.94rem;margin-top:11px;color:#4c6274;display:flex;align-items:center;justify-content:center;text-align:center;flex-wrap:wrap;gap:8px 16px;line-height:1.5}
.cc-histoire .cc-timeline-field{font-weight:550}
.cc-histoire .cc-timeline-field strong{font-size:1.04rem;font-weight:800;color:var(--cc-strong);font-variant-numeric:tabular-nums}
.cc-histoire .cc-timeline-meta .cc-status{font-size:.78rem}
.cc-histoire .cc-link-original{margin-top:10px}
.cc-histoire .cc-footnote{font-size:.84rem;color:var(--cc-muted);background:#f6fafc;padding:15px 18px;border-radius:11px;border:1px solid var(--cc-line);margin-top:30px}
@media(max-width:980px){.cc-histoire .cc-editions-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:690px){
 .cc-histoire .cc-hero{padding:23px 17px;border-radius:15px}
 .cc-histoire .cc-hero__brand{width:210px;max-width:90%}
 .cc-histoire h2{font-size:2rem}
 .cc-histoire .cc-search-head{flex-direction:column;align-items:center;justify-content:center;text-align:center}
 .cc-histoire .cc-search-total{white-space:normal}
 .cc-histoire .cc-search-line{flex-direction:column}
 .cc-histoire .cc-search-line input,.cc-histoire .cc-search-line button{width:100%}
 .cc-histoire .cc-tabs{gap:2px}
 .cc-histoire .cc-tab{padding:10px 11px;font-size:.82rem}
 .cc-histoire .cc-editions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .cc-histoire .cc-card-photo{height:112px;padding:7px}
 .cc-histoire .cc-card-content{padding:12px}
 .cc-histoire .cc-edition-card h4{font-size:.91rem;min-height:0}
 .cc-histoire .cc-card-actions{align-items:stretch;flex-direction:column;gap:8px}
 .cc-histoire .cc-card-actions .cc-action{font-size:.78rem;padding:8px}
 .cc-histoire .cc-card-actions .cc-original{text-align:center;font-size:.8rem}
 .cc-histoire .cc-people-list{grid-template-columns:1fr}
 .cc-histoire .cc-edition-head{grid-template-columns:1fr;gap:12px;padding:14px}
 .cc-histoire .cc-detail-photo{height:175px}
 .cc-histoire .cc-table-tools{align-items:stretch;flex-direction:column;gap:8px}
 .cc-histoire .cc-table-tools input{width:100%;flex:auto}
 .cc-histoire .cc-timeline{margin-left:10px}
 .cc-histoire .cc-person-header{padding:16px}
}
@media(max-width:360px){.cc-histoire .cc-editions-grid{grid-template-columns:1fr}.cc-histoire .cc-card-photo{height:160px}}

.cc-histoire .cc-timeline-item.cc-timeline--partial{border-left:4px solid #dfcb9c}

/* v1.0.7 — palmarès des vainqueurs et podiums */
.cc-histoire .cc-podium-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:4px 0 20px}
.cc-histoire .cc-podium-overview>div{background:#f1f9fd;border:1px solid var(--cc-line);border-radius:13px;padding:14px;display:flex;flex-direction:column;gap:3px;text-align:center}
.cc-histoire .cc-podium-overview strong{font-size:1.6rem;color:var(--cc-strong);line-height:1.15}
.cc-histoire .cc-podium-overview span{font-size:.85rem;color:var(--cc-muted)}
.cc-histoire .cc-stats-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}
.cc-histoire .cc-stat-tab{padding:9px 16px;border:1px solid var(--cc-line)!important;border-radius:10px;color:var(--cc-strong)!important;background:#fff!important;font-weight:700}
.cc-histoire .cc-stat-tab.is-active,.cc-histoire .cc-stat-tab:hover{background:var(--cc-primary)!important;color:#fff!important;border-color:var(--cc-primary)!important}
.cc-histoire .cc-stats-table{min-width:650px}
.cc-histoire .cc-podium-years{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.cc-histoire .cc-podium-year{border:1px solid var(--cc-line);border-radius:14px;padding:14px;background:white;min-width:0}
.cc-histoire .cc-podium-year-head{display:flex;align-items:center;gap:13px;border-bottom:1px solid var(--cc-line);padding-bottom:10px}
.cc-histoire .cc-podium-year-head h4{min-height:0;margin:2px 0}
.cc-histoire .cc-podium-logo{width:90px;height:64px;flex:none;padding:5px;border-radius:8px}
.cc-histoire .cc-podium-finishers{list-style:none!important;margin:10px 0!important;padding:0!important}
.cc-histoire .cc-podium-finishers li{display:flex;gap:10px;align-items:center;border-bottom:1px solid #edf3f6;padding:8px 0;min-height:36px}
.cc-histoire .cc-podium-finishers li:last-child{border-bottom:0}
.cc-histoire .cc-podium-finishers .cc-place{flex:none;min-width:27px;color:var(--cc-strong);font-weight:850;font-variant-numeric:tabular-nums}
.cc-histoire .cc-podium-finishers .cc-time{margin-left:auto;color:var(--cc-muted);font-size:.83rem}
.cc-histoire .cc-podium-original{margin-top:9px;text-align:right}
@media(max-width:690px){.cc-histoire .cc-podium-years{grid-template-columns:1fr}.cc-histoire .cc-podium-overview{gap:6px}.cc-histoire .cc-podium-overview>div{padding:9px 4px}.cc-histoire .cc-podium-overview strong{font-size:1.35rem}.cc-histoire .cc-podium-overview span{font-size:.7rem}}

/* v1.0.8 : sélecteur du podium féminin */
.cc-histoire .cc-gender-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding-bottom:13px;border-bottom:1px solid var(--cc-line)}
.cc-histoire .cc-gender-tab{padding:10px 16px;border:1px solid var(--cc-line)!important;border-radius:11px;background:#f6fafd!important;color:var(--cc-strong)!important;font-weight:800}
.cc-histoire .cc-gender-tab.is-active,.cc-histoire .cc-gender-tab:hover{background:var(--cc-strong)!important;border-color:var(--cc-strong)!important;color:white!important}
.cc-histoire .cc-female-caveat{font-size:.81rem;color:#805f34!important;background:#fff9e9;border-radius:7px;padding:8px 10px;margin:8px 0}
.cc-histoire .cc-scratch-note{font-size:.75rem;color:var(--cc-muted);white-space:nowrap}
@media(max-width:690px){.cc-histoire .cc-podium-finishers li{flex-wrap:wrap;gap:5px 8px}.cc-histoire .cc-podium-finishers .cc-time{font-size:.79rem}.cc-histoire .cc-scratch-note{white-space:normal}}

/* 1.0.10 — Classements d'origine préservés, ex æquo statistiques au chrono. */
.cc-histoire .cc-rank-note{display:block;font-size:.72rem;line-height:1.15;color:#637f91;white-space:nowrap;margin-top:2px}
.cc-histoire .cc-exaequo{display:inline-block;color:#3f778e;font-size:.73rem;font-weight:700;margin-left:4px;white-space:nowrap}
