/* Vaccination publication: clear hierarchy, exact values and accessible controls. */
.mepa-vaccination,.mepa-vaccination-editorial{color:#18345b;max-width:100%}
.mepa-vaccination{margin-block:1.5rem 3rem}
.mepa-vaccination :where(p,ul,dl){max-width:none}
.mepa-vaccination-editorial{margin-block:1.5rem}
.mepa-vaccination-editorial .mepa-vaccination-lead{font-size:clamp(1.1rem,2vw,1.3rem);line-height:1.65;max-width:65ch}
.mepa-vaccination-contents{display:flex;gap:.75rem;flex-wrap:wrap;margin-block:1.25rem}
.mepa-vaccination-contents a{padding:.6rem .85rem;border:1px solid #d8e0ea;border-radius:5px;font-size:.85rem;text-decoration:none;color:#18345b;background:#f5f8fb}
.mepa-vaccination-contents a:hover{background:#e7eef5}
.mepa-vaccination-header{padding:clamp(1.25rem,3vw,2rem);background:#18345b;color:#fff;border-top:4px solid #dba621;border-radius:10px}
.mepa-vaccination-header :is(h2,p){color:inherit}.mepa-vaccination-header h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.2;margin:.6rem 0 .85rem}
.mepa-vaccination-header p{font-size:.95rem;line-height:1.6}
.mepa-vaccination-header .mepa-vaccination-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.1em;margin:0}
.mepa-vaccination-badge{display:inline-block;margin-top:.3rem;font-size:.75rem;color:#e0e9f5}
.mepa-vaccination-disclosure{font-size:.8rem;color:#536478;margin:1rem 0}
.mepa-vaccination-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:end;background:#f3f6fa;border:1px solid #d8e0ea;border-radius:8px;padding:1.25rem;margin-block:1rem}
.mepa-vaccination-filters label{display:block;font-size:.85rem;font-weight:700;margin-bottom:.5rem}
.mepa-vaccination-filters select{width:100%;min-width:0;min-height:46px;box-sizing:border-box;padding:.65rem;border:1px solid #8798ad;border-radius:5px;background:white;color:#18345b;font:inherit;font-size:.9rem}
.mepa-vaccination button{min-height:44px;padding:.7rem 1rem;border:1px solid #18345b;border-radius:5px;background:#18345b;color:#fff;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}
.mepa-vaccination-filters button{grid-column:1/-1;justify-self:start}
.mepa-vaccination-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-block:.8rem}
.mepa-vaccination-actions button{background:white;color:#18345b;border-color:#b7c4d4}
.mepa-vaccination :is(button,a,select,[tabindex],summary):focus-visible,.mepa-vaccination-contents a:focus-visible{outline:3px solid #9b6600;outline-offset:3px}
.mepa-vaccination [data-vaccination-status]{font-size:.8rem;color:#536478;margin:1rem 0}
.mepa-vaccination[aria-busy=true] [data-vaccination-status]{font-weight:700}
.mepa-vaccination-selection{padding:.8rem 1rem;border-inline-start:3px solid #176b55;background:#edf4f1;font-size:.9rem;font-weight:700;border-radius:4px}
/* Professional indicator cards, shared by the snapshot and live results. */
.mepa-vaccination-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1.15rem;margin:1.5rem 0 2rem}
.mepa-vaccination-kpis>div{--indicator-accent:#0071bc;position:relative;grid-column:span 2;min-width:0;padding:1.65rem 1.4rem 1.25rem;border:1px solid #dce5ef;border-radius:14px;background:linear-gradient(145deg,#f4f9ff 0,#fff 45%);box-shadow:0 4px 18px rgba(24,52,91,.065);overflow:hidden}
.mepa-vaccination-kpis>div::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--indicator-accent)}
.mepa-vaccination-kpis>div:nth-child(2){--indicator-accent:#176b55;background:linear-gradient(145deg,#eff8f3 0,#fff 45%)}
.mepa-vaccination-kpis>div:nth-child(3){--indicator-accent:#73521b;background:linear-gradient(145deg,#fff8e9 0,#fff 45%)}
.mepa-vaccination-kpis>div:nth-child(n+4){grid-column:span 3;--indicator-accent:#60758f}
.mepa-vaccination-kpis dt{min-height:3em;font-size:.87rem;font-weight:600;line-height:1.5;color:#374b60}
.mepa-vaccination-kpis dd{font-size:clamp(1.8rem,3.3vw,2.9rem);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.04em;margin:.75rem 0 0;line-height:1.2;color:var(--indicator-accent);overflow-wrap:normal}
.mepa-vaccination-kpis>div:nth-child(n+4) dd{font-size:clamp(1.6rem,2.7vw,2.3rem)}
.mepa-indicator-unit{display:block;margin-top:.35rem;font-size:.8rem;letter-spacing:0;color:#536478;font-weight:400}
.mepa-indicator-period,.mepa-indicator-source{display:block;font-size:.72rem;font-weight:400;letter-spacing:0;line-height:1.6;color:#536478}
.mepa-indicator-period{margin-top:1.2rem;padding-top:.85rem;border-top:1px solid #e6edf4}
.mepa-indicator-missing{display:block;font-size:1rem;line-height:1.5;letter-spacing:0;color:#536478}
.mepa-vaccination-notice{padding:.9rem 1rem;border-inline-start:3px solid #a66b00;background:#fff7e6;color:#654400;font-size:.85rem;line-height:1.65;margin-block:1rem}
.mepa-vaccination [data-vaccination-results]>h3{font-size:clamp(1.15rem,2vw,1.4rem);margin:2rem 0 1rem}
.mepa-vaccination figure{margin:1rem 0 1.5rem}
.mepa-vaccination figcaption{font-size:.8rem;color:#536478;line-height:1.6;margin-bottom:1rem}
.mepa-vaccination-chart-panel,.mepa-vaccination-timeline{border:1px solid #d8e0ea;border-radius:8px;padding:1.25rem;background:#fff;min-width:0}
.mepa-vaccination-chart-row{padding:.8rem 0;border-bottom:1px solid #e1e7ef}.mepa-vaccination-chart-row:last-child{border:0}
.mepa-vaccination-chart-row>p{font-weight:600;font-size:.9rem;margin:0 0 .8rem}
.mepa-vaccination-bar-line{margin:.7rem 0;font-size:.85rem}
.mepa-vaccination-track{height:12px;background:#eef2f6;border:1px solid #d2dbe5;border-radius:3px;overflow:hidden;margin-top:.4rem}
.mepa-vaccination-bar{height:100%}.mepa-vaccination-bar.objective{background:repeating-linear-gradient(135deg,#18345b 0 4px,#627797 4px 6px)}.mepa-vaccination-bar.realized{background:#176b55}
.mepa-vaccination-plot{overflow-x:auto;max-width:100%}.mepa-vaccination svg{display:block;width:100%;min-width:640px;height:auto;background:#f8fafc}
.mepa-vaccination svg text{fill:#18345b;font:13px sans-serif}.mepa-vaccination-timeline ul{font-size:.8rem;line-height:1.7}
.mepa-vaccination-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;flex-wrap:wrap;margin-top:2rem}
.mepa-vaccination-section-heading h3{font-size:1.4rem;margin:0}.mepa-vaccination-section-heading p{font-size:.8rem;color:#536478;margin:0}
.mepa-vaccination-provinces{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-block:1.25rem}
.mepa-vaccination-province{min-width:0;padding:1.25rem;border:1px solid #d8e0ea;border-radius:8px;background:#fff}
.mepa-vaccination-province[hidden],.mepa-vaccination-more[hidden]{display:none}
.mepa-vaccination-province :is(h3,h4){font-size:1.05rem;line-height:1.5;margin:0 0 .5rem}
.mepa-vaccination-province section+section{border-top:2px solid #d8e0ea;margin-top:1rem;padding-top:.4rem}
.mepa-vaccination-province .mepa-vaccination-dimension{font-size:.75rem;font-weight:600;color:#536478;margin:.75rem 0;line-height:1.6}
.mepa-vaccination-province dl{margin:0}.mepa-vaccination-province dl>div{display:flex;justify-content:space-between;gap:.7rem;padding:.55rem 0;border-bottom:1px solid #e8edf3;font-size:.8rem}
.mepa-vaccination-province dd{margin:0;text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
.mepa-vaccination-more{display:block;margin:0 auto 2rem}
.mepa-vaccination :is(.mepa-vaccination-months,.mepa-vaccination-method){background:#f3f6fa;padding:1rem 1.25rem;border:1px solid #d8e0ea;border-radius:6px;margin-block:1.5rem;font-size:.85rem;line-height:1.7}
.mepa-vaccination :is(.mepa-vaccination-months,.mepa-vaccination-method) summary{padding:.3rem 0;font-weight:700;cursor:pointer}
.mepa-vaccination-months li{margin-block:.6rem}
.mepa-vaccination [data-vaccination-freshness]{margin-top:2rem;border-top:1px solid #d8e0ea;padding-top:1rem;font-size:.75rem;color:#536478;line-height:1.7}
.mepa-vaccination-empty{padding:1.5rem;background:#f3f6fa;border:1px solid #d8e0ea;border-radius:8px}
.mepa-vaccination-reading{border-top:3px solid #18345b;padding-top:1.5rem}.mepa-vaccination-reading h2{font-size:1.4rem}.mepa-vaccination-reading p{line-height:1.8;font-size:.9rem}
:is(#resultats-vaccination,#sources-vaccination){scroll-margin-top:2rem}
@media(max-width:700px){.mepa-vaccination-provinces{grid-template-columns:1fr}.mepa-vaccination-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.mepa-vaccination-kpis>div,.mepa-vaccination-kpis>div:nth-child(n+4){grid-column:auto;padding:1.35rem 1rem 1rem}.mepa-vaccination-kpis>div:last-child{grid-column:1/-1}.mepa-vaccination-kpis dd,.mepa-vaccination-kpis>div:nth-child(n+4) dd{font-size:clamp(1.55rem,5vw,2rem)}}
@media(max-width:520px){.mepa-vaccination-filters{grid-template-columns:1fr}.mepa-vaccination-filters button{width:100%}.mepa-vaccination-chart-panel,.mepa-vaccination-timeline{padding:1rem}}
@media print{.mepa-vaccination-filters,.mepa-vaccination-actions,.mepa-vaccination-more,.mepa-vaccination-contents{display:none}.mepa-vaccination-province[hidden]{display:block}.mepa-vaccination-provinces{grid-template-columns:repeat(2,minmax(0,1fr))}.mepa-vaccination-province,.mepa-vaccination-kpis>div{break-inside:avoid;box-shadow:none}.mepa-vaccination-plot{overflow:visible}.mepa-vaccination svg{min-width:0}}

/* Keep each complete numeric value inside its card. */
.mepa-indicator-value{display:block;white-space:nowrap;letter-spacing:-.04em}
@media(max-width:700px){.mepa-vaccination-kpis{grid-template-columns:1fr}.mepa-vaccination-kpis>div,.mepa-vaccination-kpis>div:nth-child(n+4){grid-column:1/-1}.mepa-vaccination-kpis dt{min-height:0}.mepa-vaccination-kpis dd,.mepa-vaccination-kpis>div:nth-child(n+4) dd{font-size:clamp(1.5rem,8vw,2.5rem)}}

.mepa-vaccination-kpis>div{container-type:inline-size}
.mepa-vaccination-kpis .mepa-indicator-value{font-size:min(2.9rem,12cqi)}
.mepa-vaccination-kpis>div:nth-child(n+4) .mepa-indicator-value{font-size:min(2.3rem,12cqi)}

.mepa-vaccination-contribution{padding:1rem 1.25rem;border-left:3px solid #dba621;background:#f4f6f8;color:#243b50;line-height:1.75;margin:1rem 0;max-width:none}
