:root {
  --vmc-bg: #fbfaf7;
  --vmc-surface: #ffffff;
  --vmc-soft: #f1eee8;
  --vmc-soft-2: #ebe5da;
  --vmc-text: #171512;
  --vmc-muted: #6f6a62;
  --vmc-border: rgba(23, 21, 18, .12);
  --vmc-radius: 24px;
  --vmc-shadow: 0 24px 70px rgba(23, 21, 18, .08);
}

body.vmc-media-child {
  background: var(--vmc-bg);
  color: var(--vmc-text);
}

.vmc-container,
.vmc-container-narrow {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}

.vmc-container-narrow {
  width: min(780px, calc(100% - 40px));
}

.vmc-site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(251, 250, 247, .94);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--vmc-border);
}

.vmc-header-inner {
  min-height: 76px;
  display: flex;
  align-items: center;
  gap: 28px;
}

.vmc-brand {
  display: flex;
  flex-direction: column;
  min-width: 180px;
}

.vmc-site-title {
  font-size: clamp(1.2rem, 1.6vw, 1.6rem);
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
  color: var(--vmc-text);
  letter-spacing: -.04em;
}

.vmc-site-description {
  margin: 6px 0 0;
  font-size: .82rem;
  color: var(--vmc-muted);
}

.vmc-primary-nav { flex: 1; }

.vmc-primary-nav ul,
.vmc-footer-nav ul,
.vmc-category-nav ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px;
  margin: 0;
  padding: 0;
}

.vmc-primary-nav a,
.vmc-footer-nav a,
.vmc-search-link,
.vmc-category-nav a {
  color: var(--vmc-text);
  text-decoration: none;
  font-weight: 700;
}

.vmc-category-nav {
  border-top: 1px solid var(--vmc-border);
  background: rgba(255, 255, 255, .42);
  overflow-x: auto;
}

.vmc-category-nav .vmc-container { padding: 11px 0; }
.vmc-category-nav ul { flex-wrap: nowrap; gap: 20px; }
.vmc-category-nav a { white-space: nowrap; font-size: .9rem; color: var(--vmc-muted); }

.vmc-search-link {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
}

.vmc-menu-toggle {
  display: none;
  border: 1px solid var(--vmc-border);
  background: var(--vmc-surface);
  border-radius: 999px;
  padding: 10px 16px;
  font-weight: 750;
}

.vmc-main { padding-bottom: 72px; }
.vmc-home .vmc-section { scroll-margin-top: 120px; }

.vmc-hero,
.vmc-archive-header,
.vmc-author-header,
.vmc-empty { padding: clamp(42px, 7vw, 86px) 0 34px; }

.vmc-home-hero { padding-bottom: 22px; }

.vmc-home-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, .72fr);
  gap: 28px;
  align-items: stretch;
}

.vmc-featured {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  gap: clamp(26px, 5vw, 58px);
  align-items: center;
}

.vmc-featured-main {
  background: var(--vmc-surface);
  border: 1px solid var(--vmc-border);
  border-radius: calc(var(--vmc-radius) + 4px);
  padding: clamp(16px, 2vw, 22px);
  box-shadow: var(--vmc-shadow);
}

.vmc-featured-media,
.vmc-card-media,
.vmc-mini-thumb {
  display: block;
  overflow: hidden;
  background: var(--vmc-soft);
  border-radius: var(--vmc-radius);
}

.vmc-featured-media img,
.vmc-card-media img,
.vmc-single-media img,
.vmc-mini-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vmc-featured-media { aspect-ratio: 16 / 10; }
.vmc-card-media { aspect-ratio: 16 / 10; }

.vmc-card-placeholder {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 150px;
  background: linear-gradient(135deg, #e8e1d4, #f8f4ec);
}

.vmc-section-kicker {
  margin: 0 0 12px;
  color: var(--vmc-muted);
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vmc-featured h1,
.vmc-single-header h1,
.vmc-archive-header h1,
.vmc-author-header h1,
.vmc-page-header h1,
.vmc-empty h1 {
  margin: 0;
  font-size: clamp(2.4rem, 5.5vw, 5.1rem);
  line-height: .96;
  letter-spacing: -.055em;
}

.vmc-featured h1 a,
.vmc-card-title a,
.vmc-mini-post h2 a,
.vmc-headline-row a,
.vmc-category-block h2 a,
.vmc-category-block h3 a { color: inherit; text-decoration: none; }

.vmc-featured-content p:not(.vmc-section-kicker),
.vmc-deck,
.vmc-archive-description,
.vmc-author-header p,
.vmc-empty p,
.vmc-section-header-stack p,
.vmc-sidebar-box p {
  color: var(--vmc-muted);
  font-size: clamp(1.02rem, 1.4vw, 1.18rem);
  line-height: 1.65;
}

.vmc-button,
.vmc-search-form button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  padding: 13px 18px;
  background: var(--vmc-text);
  color: #fff;
  font-weight: 800;
  text-decoration: none;
}

.vmc-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 12px;
  color: var(--vmc-muted);
  font-size: .82rem;
  font-weight: 750;
}

.vmc-meta a,
.vmc-tags a {
  color: var(--vmc-text);
  text-decoration: none;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  padding: 4px 9px;
  background: rgba(255,255,255,.62);
}

.vmc-home-side {
  background: var(--vmc-text);
  color: #fff;
  border-radius: calc(var(--vmc-radius) + 4px);
  padding: 22px;
  display: grid;
  align-content: start;
  gap: 18px;
}

.vmc-side-header {
  color: rgba(255,255,255,.72);
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.vmc-mini-post {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 13px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.16);
}

.vmc-side-header + .vmc-mini-post { padding-top: 0; border-top: 0; }
.vmc-mini-thumb { aspect-ratio: 1 / .82; border-radius: 16px; }
.vmc-mini-post h2 { margin: 5px 0 0; font-size: .98rem; line-height: 1.16; letter-spacing: -.025em; }
.vmc-mini-post .vmc-meta { margin: 0; font-size: .74rem; }
.vmc-mini-post .vmc-meta a { border-color: rgba(255,255,255,.18); color: #fff; background: rgba(255,255,255,.08); }

.vmc-section { padding: 48px 0; }
.vmc-section-tight { padding-top: 32px; }
.vmc-section-muted { background: var(--vmc-soft); }

.vmc-section-header {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: end;
  margin-bottom: 24px;
}

.vmc-section-header-stack {
  display: block;
  margin-bottom: 20px;
}

.vmc-section-header h2,
.vmc-related-title,
.vmc-related h2,
.vmc-sidebar-box h2,
.vmc-widget-title {
  margin: 0;
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1;
  letter-spacing: -.04em;
}

.vmc-section-header a {
  color: var(--vmc-text);
  font-weight: 800;
  text-decoration: none;
}

.vmc-grid { display: grid; gap: 24px; }
.vmc-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.vmc-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.vmc-card {
  background: var(--vmc-surface);
  border: 1px solid var(--vmc-border);
  border-radius: calc(var(--vmc-radius) + 2px);
  overflow: hidden;
  box-shadow: 0 14px 42px rgba(23, 21, 18, .04);
}

.vmc-card-body { padding: 20px; }
.vmc-card-compact .vmc-card-body { padding: 16px; }
.vmc-card-compact .vmc-card-title { font-size: 1.08rem; }
.vmc-card-compact .vmc-meta { font-size: .76rem; }

.vmc-card-title {
  margin: 0;
  font-size: clamp(1.15rem, 1.8vw, 1.55rem);
  line-height: 1.12;
  letter-spacing: -.025em;
}

.vmc-card-excerpt { margin: 12px 0 0; color: var(--vmc-muted); line-height: 1.55; }

.vmc-two-columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 32px;
  align-items: start;
}

.vmc-card-list,
.vmc-list .vmc-card {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr);
}

.vmc-card-list .vmc-card-media,
.vmc-list .vmc-card-media { border-radius: 0; aspect-ratio: auto; }

.vmc-sidebar-box {
  position: sticky;
  top: 120px;
  padding: 24px;
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
}

.vmc-tag-cloud { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 18px; }
.vmc-tag-cloud a {
  color: var(--vmc-text);
  text-decoration: none;
  padding: 8px 11px;
  border-radius: 999px;
  border: 1px solid var(--vmc-border);
  background: var(--vmc-bg);
  font-weight: 750;
  font-size: .9rem;
}

.vmc-dossier-grid .vmc-card:first-child { grid-column: span 2; }

.vmc-category-sections {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.vmc-category-block {
  padding: 22px;
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
  border: 1px solid var(--vmc-border);
}

.vmc-category-block-header {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--vmc-border);
}

.vmc-category-block h2 { margin: 0; font-size: 1.35rem; letter-spacing: -.03em; }
.vmc-category-block-header span { color: var(--vmc-muted); font-size: .84rem; font-weight: 750; white-space: nowrap; }
.vmc-category-posts { display: grid; gap: 14px; margin-top: 16px; }

.vmc-headline-row {
  display: grid;
  gap: 5px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(23,21,18,.08);
}

.vmc-headline-row:last-child { border-bottom: 0; padding-bottom: 0; }
.vmc-headline-row a { font-weight: 800; line-height: 1.2; }
.vmc-headline-row span { color: var(--vmc-muted); font-size: .82rem; }

.vmc-widget-zone { padding: 22px 0; }
.vmc-widget {
  padding: 22px;
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
}

.vmc-topic-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.vmc-topic { display: flex; justify-content: space-between; gap: 12px; padding: 22px; border-radius: 20px; background: var(--vmc-surface); color: var(--vmc-text); text-decoration: none; font-weight: 800; }
.vmc-topic small { color: var(--vmc-muted); font-weight: 700; }

.vmc-single-header { padding-top: clamp(48px, 8vw, 96px); text-align: center; }
.vmc-byline {
  display: block;
  margin-top: 22px;
  color: var(--vmc-muted);
}
.vmc-byline-author {
  display: flex;
  align-items: baseline;
  gap: .35em;
  line-height: 1.45;
}
.vmc-byline-label { font-weight: 500; }
.vmc-byline .vmc-author-name { color: var(--vmc-text); font-weight: 800; }
.vmc-author-bio {
  margin-top: 5px;
  max-width: 760px;
  color: var(--vmc-muted);
  font-size: .88rem;
  font-weight: 400;
  line-height: 1.55;
}
.vmc-author-bio p { margin: 0; }
.vmc-author-header img { border-radius: 50%; }
.vmc-single-media { margin-top: 36px; }
.vmc-single-media img { max-height: 680px; border-radius: var(--vmc-radius); box-shadow: var(--vmc-shadow); }
.vmc-single-media figcaption { margin-top: 10px; color: var(--vmc-muted); font-size: .9rem; }

.vmc-content { margin-top: 38px; font-size: clamp(1.05rem, 1.35vw, 1.18rem); line-height: 1.78; }
.vmc-content > * { margin-bottom: 1.25em; }
.vmc-content a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .18em; }
.vmc-content h2,
.vmc-content h3 { line-height: 1.12; letter-spacing: -.025em; margin-top: 2em; }


.vmc-post-content-meta {
  margin-top: 34px;
  padding-top: 24px;
  border-top: 1px solid var(--vmc-border);
}

.vmc-post-content-meta .vmc-meta {
  margin-bottom: 0;
}

.vmc-single-footer { margin-top: 32px; }
.vmc-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.vmc-related { margin-top: 70px; }
.vmc-related-title,
.vmc-related h2 { margin: 0 0 22px; }
.vmc-list { display: grid; gap: 20px; }

.vmc-pagination { margin-top: 36px; }
.vmc-pagination .nav-links { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
.vmc-pagination a,
.vmc-pagination span { padding: 10px 14px; border-radius: 999px; border: 1px solid var(--vmc-border); color: var(--vmc-text); text-decoration: none; background: var(--vmc-surface); }

.vmc-search-form { display: flex; gap: 10px; margin-top: 20px; }
.vmc-search-form input[type="search"] { width: min(520px, 100%); border: 1px solid var(--vmc-border); border-radius: 999px; background: var(--vmc-surface); padding: 13px 16px; color: var(--vmc-text); }
.vmc-author-header { text-align: center; }

.vmc-site-footer { border-top: 1px solid var(--vmc-border); padding: 34px 0; background: var(--vmc-surface); }
.vmc-footer-inner { display: flex; justify-content: space-between; gap: 24px; align-items: center; }
.vmc-footer-inner p { margin: 6px 0 0; color: var(--vmc-muted); }

/* Neutralisation défensive des blocs Iris/gadgets si le parent ou un plugin les injecte encore. */
.iris-assistant,
.iris-dock,
.vamika-iris,
.vamika-ai,
.vamika-semantic,
.vamika-reading-companion,
.vamika-floating-share,
.vamika-reaction-bar,
.vamika-reader-count,
.vamika-match-score,
.vamika-newsletter,
.vamika-marquee { display: none !important; }

@media (max-width: 1080px) {
  .vmc-home-layout,
  .vmc-featured,
  .vmc-two-columns { grid-template-columns: 1fr; }
  .vmc-sidebar-box { position: static; }
  .vmc-grid-4,
  .vmc-category-sections { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vmc-dossier-grid .vmc-card:first-child { grid-column: auto; }
}

@media (max-width: 900px) {
  .vmc-header-inner { min-height: 66px; }
  .vmc-menu-toggle { display: inline-flex; margin-left: auto; }
  .vmc-primary-nav { display: none; position: absolute; left: 20px; right: 20px; top: 74px; padding: 20px; border: 1px solid var(--vmc-border); border-radius: 20px; background: var(--vmc-surface); box-shadow: var(--vmc-shadow); }
  .vmc-primary-nav.is-open { display: block; }
  .vmc-primary-nav ul { display: grid; gap: 12px; }
  .vmc-list .vmc-card,
  .vmc-card-list { grid-template-columns: 1fr; }
  .vmc-list .vmc-card-media,
  .vmc-card-list .vmc-card-media { aspect-ratio: 16 / 10; }
  .vmc-grid-3,
  .vmc-topic-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .vmc-container,
  .vmc-container-narrow { width: min(100% - 28px, 1180px); }
  .vmc-grid-3,
  .vmc-grid-4,
  .vmc-topic-grid,
  .vmc-category-sections { grid-template-columns: 1fr; }
  .vmc-footer-inner,
  .vmc-section-header,
  .vmc-search-form { align-items: flex-start; flex-direction: column; }
  .vmc-featured-main { padding: 12px; }
  .vmc-featured h1,
  .vmc-single-header h1,
  .vmc-archive-header h1,
  .vmc-author-header h1,
  .vmc-page-header h1,
  .vmc-empty h1 { font-size: clamp(2.1rem, 14vw, 3.5rem); }
  .vmc-mini-post { grid-template-columns: 84px minmax(0, 1fr); }
}

/* V2.1 - Corrections média : homepage par catégories, une plus stable, formulaires et espacements. */
.vmc-home-layout {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 400px);
  gap: 30px;
}

.vmc-featured.vmc-featured-main {
  display: block;
  min-width: 0;
}

.vmc-featured-main .vmc-featured-media {
  margin-bottom: clamp(18px, 2.4vw, 28px);
}

.vmc-featured-main .vmc-featured-content {
  min-width: 0;
}

.vmc-featured-main h1 {
  font-size: clamp(2.05rem, 4vw, 3.75rem);
  line-height: 1;
}

.vmc-featured-main .vmc-featured-content p:not(.vmc-section-kicker) {
  max-width: 62ch;
}

.vmc-category-sections-full {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(26px, 4vw, 42px);
}

.vmc-category-block-wide {
  padding: clamp(20px, 3vw, 30px);
  border-radius: calc(var(--vmc-radius) + 2px);
}

.vmc-category-block-wide .vmc-category-block-header {
  align-items: end;
  margin-bottom: 22px;
}

.vmc-category-block-wide .vmc-section-kicker {
  margin-bottom: 8px;
}

.vmc-category-block-wide h2 {
  font-size: clamp(1.8rem, 3vw, 2.7rem);
  line-height: 1;
}

.vmc-category-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 13px;
  border-radius: 999px;
  border: 1px solid var(--vmc-border);
  background: var(--vmc-bg);
  color: var(--vmc-text);
  text-decoration: none;
  font-size: .9rem;
  font-weight: 800;
  white-space: nowrap;
}

.vmc-page,
.vmc-archive-header,
.vmc-author-header,
.vmc-single-header,
.vmc-empty {
  padding-top: clamp(34px, 6vw, 76px);
}

.vmc-page-header {
  padding-top: clamp(30px, 6vw, 78px);
  margin-bottom: clamp(22px, 4vw, 40px);
}

.vmc-page-header h1,
.vmc-archive-header h1,
.vmc-author-header h1 {
  max-width: 980px;
}

.vmc-content form,
.vmc-widget form,
.vmc-search-form {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin: 24px 0;
}

.vmc-content label,
.vmc-widget label {
  display: block;
  margin-bottom: 7px;
  font-weight: 800;
}

.vmc-content input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.vmc-content textarea,
.vmc-content select,
.vmc-widget input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.vmc-widget textarea,
.vmc-widget select,
.vmc-search-form input[type="search"] {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--vmc-border);
  border-radius: 16px;
  background: var(--vmc-surface);
  padding: 12px 14px;
  color: var(--vmc-text);
  font: inherit;
  box-shadow: none;
}

.vmc-search-form input[type="search"] {
  flex: 1 1 280px;
  border-radius: 999px;
}

.vmc-content textarea,
.vmc-widget textarea {
  min-height: 150px;
  resize: vertical;
}

.vmc-content input[type="submit"],
.vmc-content button,
.vmc-widget input[type="submit"],
.vmc-widget button,
.vmc-search-form button {
  min-height: 48px;
  border: 0;
  border-radius: 999px;
  padding: 12px 18px;
  background: var(--vmc-text);
  color: #fff;
  font: inherit;
  font-weight: 850;
  cursor: pointer;
}

.vmc-content input:focus,
.vmc-content textarea:focus,
.vmc-content select:focus,
.vmc-search-form input[type="search"]:focus {
  outline: 3px solid rgba(23, 21, 18, .12);
  outline-offset: 2px;
}

@media (max-width: 1080px) {
  .vmc-home-layout { grid-template-columns: 1fr; }
  .vmc-home-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .vmc-side-header { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .vmc-home-side { grid-template-columns: 1fr; }
  .vmc-category-block-wide .vmc-category-block-header {
    align-items: start;
    flex-direction: column;
  }
  .vmc-category-link { width: fit-content; }
}

/* V6 - Navigation : espacement logo/menu et sous-menus propres. */
@media (min-width: 901px) {
  .vmc-header-inner {
    gap: clamp(34px, 4vw, 58px);
  }

  .vmc-brand {
    flex: 0 0 auto;
    min-width: max-content;
    margin-right: clamp(4px, 1.2vw, 18px);
  }

  .vmc-primary-nav {
    flex: 1 1 auto;
    min-width: 0;
  }

  .vmc-primary-nav > ul {
    justify-content: flex-start;
    gap: clamp(20px, 2vw, 30px);
  }

  .vmc-primary-nav li {
    position: relative;
  }

  .vmc-primary-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    line-height: 1.2;
  }

  .vmc-primary-nav .menu-item-has-children > a::after {
    content: "";
    width: 7px;
    height: 7px;
    margin-left: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    opacity: .55;
  }

  .vmc-primary-nav .sub-menu {
    position: absolute;
    top: calc(100% + 12px);
    left: -14px;
    z-index: 80;
    display: grid;
    width: max-content;
    min-width: 230px;
    max-width: 310px;
    gap: 4px;
    padding: 10px;
    margin: 0;
    border: 1px solid var(--vmc-border);
    border-radius: 18px;
    background: rgba(255, 255, 255, .98);
    box-shadow: var(--vmc-shadow);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(8px);
    transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  }

  .vmc-primary-nav li:hover > .sub-menu,
  .vmc-primary-nav li:focus-within > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .vmc-primary-nav .sub-menu::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -13px;
    height: 13px;
  }

  .vmc-primary-nav .sub-menu a {
    display: flex;
    justify-content: space-between;
    width: 100%;
    min-height: 0;
    padding: 10px 12px;
    border-radius: 12px;
    font-size: .94rem;
    font-weight: 750;
    white-space: normal;
  }

  .vmc-primary-nav .sub-menu a:hover,
  .vmc-primary-nav .sub-menu a:focus {
    background: var(--vmc-soft);
  }

  .vmc-primary-nav .sub-menu .menu-item-has-children > a::after {
    margin-left: 14px;
    transform: rotate(-45deg);
  }

  .vmc-primary-nav .sub-menu .sub-menu {
    top: -10px;
    left: calc(100% + 10px);
  }
}

.vmc-category-nav li {
  position: relative;
}

.vmc-category-nav .sub-menu {
  display: none;
}

@media (max-width: 900px) {
  .vmc-header-inner {
    gap: 12px;
  }

  .vmc-brand {
    min-width: 0;
    max-width: calc(100% - 142px);
  }

  .vmc-site-title,
  .vmc-brand .custom-logo-link {
    max-width: 100%;
  }

  .vmc-brand img {
    max-width: min(190px, 100%);
    height: auto;
  }

  .vmc-primary-nav {
    top: 68px;
    left: 14px;
    right: 14px;
    padding: 12px;
    max-height: calc(100vh - 90px);
    overflow: auto;
  }

  .vmc-primary-nav ul {
    display: grid;
    gap: 4px;
    align-items: stretch;
  }

  .vmc-primary-nav li {
    width: 100%;
  }

  .vmc-primary-nav a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 11px 12px;
    border-radius: 12px;
  }

  .vmc-primary-nav a:hover,
  .vmc-primary-nav a:focus {
    background: var(--vmc-soft);
  }

  .vmc-primary-nav .menu-item-has-children > a::after {
    content: "";
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    opacity: .5;
  }

  .vmc-primary-nav .sub-menu {
    position: static;
    display: grid;
    width: 100%;
    min-width: 0;
    gap: 3px;
    padding: 2px 0 8px 12px;
    margin: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
  }

  .vmc-primary-nav .sub-menu a {
    padding: 9px 12px;
    font-size: .93rem;
    color: var(--vmc-muted);
  }
}


/* v7: séparation lisible des métadonnées article. */
.vmc-meta .vmc-meta-date,
.vmc-meta .vmc-meta-reading {
  color: var(--vmc-muted);
  white-space: nowrap;
}

.vmc-meta .vmc-meta-reading {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.vmc-meta .vmc-meta-reading::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  opacity: .55;
}

.vmc-featured .vmc-meta,
.vmc-single-header .vmc-meta {
  gap: 10px;
}

/* V8 - Corrections recherche et typographie des listes. */
.vmc-search-toggle {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  font: inherit;
  font-weight: 850;
  cursor: pointer;
  line-height: 1;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.vmc-search-toggle:hover,
.vmc-search-toggle:focus-visible,
.vmc-search-toggle[aria-expanded="true"] {
  background: var(--vmc-text);
  border-color: var(--vmc-text);
  color: #fff;
}

.vmc-search-toggle:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-header-search {
  border-top: 1px solid var(--vmc-border);
  background: rgba(255, 255, 255, .68);
  box-shadow: 0 14px 35px rgba(23, 21, 18, .05);
}

.vmc-header-search .vmc-container {
  padding-top: 14px;
  padding-bottom: 14px;
}

.vmc-header-search .vmc-search-form {
  margin: 0;
  max-width: 760px;
  margin-inline: auto;
}

.vmc-search-form {
  position: relative;
}

.vmc-search-form input[type="search"] {
  min-height: 52px;
  padding: 13px 18px;
  padding-right: 18px;
  font-family: inherit;
}

.vmc-search-form button {
  min-height: 52px;
  padding: 13px 22px;
  border: 1px solid var(--vmc-text);
  background: var(--vmc-text);
  color: #fff;
  font-family: inherit;
  letter-spacing: -.01em;
  transition: transform .18s ease, opacity .18s ease, background .18s ease;
}

.vmc-search-form button:hover,
.vmc-search-form button:focus-visible {
  opacity: .9;
  transform: translateY(-1px);
}

.vmc-search-form:has(input[type="search"]:placeholder-shown) button {
  background: #3b3832;
}

.vmc-content ul,
.vmc-content ol,
.vmc-page ul,
.vmc-page ol,
.entry-content ul,
.entry-content ol {
  font-family: inherit;
  color: var(--vmc-text);
  line-height: 1.78;
  margin-top: 1em;
  margin-bottom: 1.25em;
  padding-left: 1.35em;
}

.vmc-content li,
.vmc-page li,
.entry-content li {
  font-family: inherit;
  margin: .42em 0;
}

.vmc-content li::marker,
.vmc-page li::marker,
.entry-content li::marker {
  color: var(--vmc-muted);
  font-weight: 850;
}

.vmc-content li > ul,
.vmc-content li > ol,
.vmc-page li > ul,
.vmc-page li > ol,
.entry-content li > ul,
.entry-content li > ol {
  margin-top: .45em;
  margin-bottom: .45em;
}

@media (max-width: 760px) {
  .vmc-header-search .vmc-search-form,
  .vmc-search-form {
    flex-direction: column;
    align-items: stretch;
  }

  .vmc-search-form button {
    width: 100%;
  }
}

/* V9 - Hiérarchie typographique plus équilibrée pour un rendu média moins massif. */
.vmc-featured h1,
.vmc-single-header h1,
.vmc-archive-header h1,
.vmc-author-header h1,
.vmc-page-header h1,
.vmc-empty h1 {
  font-size: clamp(2rem, 4.2vw, 3.65rem);
  line-height: 1.04;
  letter-spacing: -.045em;
}

.vmc-featured-main h1 {
  font-size: clamp(1.9rem, 3.45vw, 3.2rem);
  line-height: 1.04;
  letter-spacing: -.04em;
}

.vmc-section-header h2,
.vmc-related-title,
.vmc-related h2,
.vmc-sidebar-box h2,
.vmc-widget-title {
  font-size: clamp(1.45rem, 2.35vw, 2.25rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}

.vmc-category-block-wide h2 {
  font-size: clamp(1.55rem, 2.45vw, 2.25rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}

.vmc-card-title {
  font-size: clamp(1.05rem, 1.45vw, 1.35rem);
  line-height: 1.16;
}

.vmc-card-compact .vmc-card-title {
  font-size: 1.02rem;
  line-height: 1.16;
}

.vmc-mini-post h2 {
  font-size: .94rem;
  line-height: 1.18;
}

.vmc-content h2 {
  font-size: clamp(1.55rem, 2.2vw, 2.2rem);
  line-height: 1.16;
}

.vmc-content h3 {
  font-size: clamp(1.25rem, 1.65vw, 1.65rem);
  line-height: 1.2;
}

/* V10 - Auteur plus discret et sommaire Easy Table of Contents. */
.vmc-byline a,
.vmc-meta .vmc-author-link,
.vmc-meta a[rel="author"],
.vmc-single-header .vmc-meta a[rel="author"],
.vmc-card .vmc-meta a[rel="author"],
.vmc-featured .vmc-meta a[rel="author"] {
  color: var(--vmc-muted);
  border-color: transparent;
  background: transparent;
  padding: 0;
  font-weight: 750;
  text-decoration: none;
}

.vmc-byline a:hover,
.vmc-meta .vmc-author-link:hover,
.vmc-meta a[rel="author"]:hover,
.vmc-single-header .vmc-meta a[rel="author"]:hover,
.vmc-card .vmc-meta a[rel="author"]:hover,
.vmc-featured .vmc-meta a[rel="author"]:hover {
  color: var(--vmc-text);
  text-decoration: underline;
  text-underline-offset: .18em;
}

.vmc-content #ez-toc-container,
#ez-toc-container.ez-toc-v2_0_85,
#ez-toc-container {
  width: 100%;
  max-width: 100%;
  margin: 34px 0 42px;
  padding: 22px 24px 20px;
  border: 1px solid rgba(17, 24, 39, .1);
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(247,248,250,.9));
  box-shadow: 0 16px 44px rgba(17, 24, 39, .06);
  color: var(--vmc-text);
}

#ez-toc-container .ez-toc-title-container,
#ez-toc-container .ez-toc-title,
#ez-toc-container p.ez-toc-title {
  margin: 0 0 14px;
  padding: 0;
  color: var(--vmc-text);
  font-family: inherit;
  font-size: .92rem;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1.2;
  text-transform: uppercase;
}

#ez-toc-container label.ez-toc-cssicon-toggle-label {
  top: 20px;
  right: 20px;
  width: 34px;
  height: 34px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(17, 24, 39, .07);
}

#ez-toc-container .ez-toc-cssicon,
#ez-toc-container .ez-toc-icon-toggle-span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 2px;
}

#ez-toc-container .ez-toc-cssicon svg,
#ez-toc-container .ez-toc-icon-toggle-span svg {
  color: var(--vmc-muted) !important;
  fill: currentColor !important;
}

#ez-toc-container nav {
  margin: 0;
  padding: 0;
}

#ez-toc-container ul,
#ez-toc-container .ez-toc-list,
.vmc-content #ez-toc-container ul,
.vmc-content #ez-toc-container ol {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  font-family: inherit;
  font-size: 1em;
  line-height: 1.45;
}

#ez-toc-container li,
.vmc-content #ez-toc-container li {
  margin: 0;
  padding: 0;
  font-family: inherit;
}

#ez-toc-container li::marker,
.vmc-content #ez-toc-container li::marker {
  content: "";
}

#ez-toc-container a,
#ez-toc-container a.ez-toc-link,
.vmc-content #ez-toc-container a {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: var(--vmc-text);
  text-decoration: none;
  font-weight: 760;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

#ez-toc-container a::before,
#ez-toc-container a.ez-toc-link::before,
.vmc-content #ez-toc-container a::before {
  content: "";
  display: block;
  flex: 0 0 auto;
  width: 6px;
  height: 6px;
  margin-top: .62em;
  border-radius: 999px;
  background: var(--vmc-muted);
  opacity: .55;
}

#ez-toc-container a:hover,
#ez-toc-container a:focus,
#ez-toc-container a.ez-toc-link:hover,
#ez-toc-container a.ez-toc-link:focus,
.vmc-content #ez-toc-container a:hover,
.vmc-content #ez-toc-container a:focus {
  background: #fff;
  border-color: var(--vmc-border);
  color: var(--vmc-text);
  transform: translateX(2px);
  outline: none;
}

#ez-toc-container a:hover::before,
#ez-toc-container a:focus::before,
.vmc-content #ez-toc-container a:hover::before,
.vmc-content #ez-toc-container a:focus::before {
  background: var(--vmc-text);
  opacity: 1;
}

/* Easy Table of Contents: use an isolated counter to avoid doubling plugin counters. */
#ez-toc-container.counter-hierarchy ul,
#ez-toc-container.ez-toc-counter ul,
#ez-toc-container .ez-toc-list-level-1 {
  counter-reset: vmc-toc;
}

#ez-toc-container.counter-hierarchy li,
#ez-toc-container.ez-toc-counter li,
#ez-toc-container .ez-toc-list li {
  counter-increment: none !important;
}

#ez-toc-container.counter-hierarchy a::before,
#ez-toc-container.ez-toc-counter a::before,
#ez-toc-container .ez-toc-list-level-1 > li > a::before {
  counter-increment: vmc-toc;
  content: counter(vmc-toc) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  margin-top: 0;
  border-radius: 999px;
  background: rgba(17, 24, 39, .06);
  color: var(--vmc-muted);
  font-size: .72rem;
  font-weight: 900;
  line-height: 1;
  opacity: 1;
}

#ez-toc-container.counter-hierarchy a:hover::before,
#ez-toc-container.ez-toc-counter a:hover::before,
#ez-toc-container.counter-hierarchy a:focus::before,
#ez-toc-container.ez-toc-counter a:focus::before,
#ez-toc-container .ez-toc-list-level-1 > li > a:hover::before,
#ez-toc-container .ez-toc-list-level-1 > li > a:focus::before {
  background: var(--vmc-text);
  color: #fff;
}

@media (max-width: 640px) {
  #ez-toc-container {
    margin: 26px 0 34px;
    padding: 18px 16px;
    border-radius: 18px;
  }

  #ez-toc-container a,
  #ez-toc-container a.ez-toc-link,
  .vmc-content #ez-toc-container a {
    padding: 9px 8px;
    font-size: inherit;
  }
}


/* V13 - Correction du rendu de la recherche sur mobile. */
.vmc-header-search,
.vmc-header-search * {
  box-sizing: border-box;
}

.vmc-header-search .vmc-search-form {
  width: 100%;
}

.vmc-header-search .vmc-search-form input[type="search"],
.vmc-header-search .vmc-search-form button {
  min-width: 0;
}

@media (max-width: 760px) {
  .vmc-header-inner {
    gap: 10px;
  }

  .vmc-brand {
    min-width: 0;
    flex: 1 1 auto;
  }

  .vmc-site-title {
    overflow-wrap: anywhere;
  }

  .vmc-menu-toggle {
    margin-left: 0;
    padding: 10px 13px;
  }

  .vmc-search-toggle {
    width: 40px;
    height: 40px;
  }

  .vmc-header-search {
    background: rgba(251, 250, 247, .98);
    border-top: 1px solid var(--vmc-border);
    border-bottom: 1px solid var(--vmc-border);
    box-shadow: 0 18px 42px rgba(23, 21, 18, .08);
  }

  .vmc-header-search .vmc-container {
    width: min(100% - 28px, 1180px);
    padding-top: 12px;
    padding-bottom: 14px;
  }

  .vmc-header-search .vmc-search-form {
    display: grid !important;
    grid-template-columns: 1fr;
    align-items: stretch;
    gap: 10px;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .vmc-header-search .vmc-search-form input[type="search"] {
    display: block;
    width: 100%;
    flex: none;
    min-height: 48px;
    border-radius: 16px;
    padding: 12px 14px;
  }

  .vmc-header-search .vmc-search-form button {
    display: inline-flex;
    width: 100%;
    min-height: 48px;
    margin: 0;
    justify-content: center;
    border-radius: 16px;
  }
}

@media (max-width: 420px) {
  .vmc-menu-toggle span {
    font-size: .88rem;
  }

  .vmc-search-toggle {
    width: 38px;
    height: 38px;
  }
}


/* V14 - Mobile : categories sur une ligne, date et temps de lecture ensemble dessous. */
.vmc-post-content-meta .vmc-meta .vmc-meta-details {
  display: inline-flex;
  align-items: center;
  gap: 0;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .vmc-post-content-meta .vmc-meta .vmc-meta-details {
    flex: 0 0 100%;
    margin-top: 2px;
  }

  .vmc-post-content-meta .vmc-meta .vmc-meta-details .vmc-meta-date,
  .vmc-post-content-meta .vmc-meta .vmc-meta-details .vmc-meta-reading {
    flex-basis: auto;
  }
}

/* V15 - Espacement entre la date et le temps de lecture. */
.vmc-meta .vmc-meta-reading {
  margin-left: 8px;
}

.vmc-post-content-meta .vmc-meta .vmc-meta-details .vmc-meta-reading {
  margin-left: 10px;
}

@media (max-width: 640px) {
  .vmc-post-content-meta .vmc-meta .vmc-meta-details .vmc-meta-reading {
    margin-left: 9px;
  }
}

/* V16 - Tableaux editoriaux et embeds video responsives. */
.vmc-content table,
.vmc-content .wp-block-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin: 30px 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid rgba(15, 23, 42, .10);
  border-radius: 18px;
  box-shadow: 0 14px 38px rgba(15, 23, 42, .06);
  font-size: .96rem;
  line-height: 1.55;
}

.vmc-content .wp-block-table {
  margin: 32px 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.vmc-content .wp-block-table table {
  margin: 0;
}

.vmc-content table caption,
.vmc-content .wp-block-table figcaption,
.vmc-content figure.wp-block-embed figcaption {
  margin-top: 10px;
  color: rgba(15, 23, 42, .62);
  font-size: .88rem;
  line-height: 1.45;
  text-align: left;
}

.vmc-content th,
.vmc-content td {
  padding: 15px 18px;
  border: 0;
  border-bottom: 1px solid rgba(15, 23, 42, .08);
  vertical-align: top;
}

.vmc-content tr:last-child th,
.vmc-content tr:last-child td {
  border-bottom: 0;
}

.vmc-content th {
  color: #111827;
  background: rgba(248, 250, 252, .96);
  font-weight: 760;
  letter-spacing: -.01em;
}

.vmc-content thead th {
  border-bottom: 1px solid rgba(15, 23, 42, .12);
}

.vmc-content tbody tr:nth-child(even) td {
  background: rgba(248, 250, 252, .48);
}

.vmc-content tbody tr:hover td {
  background: rgba(241, 245, 249, .78);
}

.vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background: transparent;
}

.vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) td {
  background: rgba(248, 250, 252, .62);
}

.vmc-content .wp-block-embed,
.vmc-content .wp-block-video,
.vmc-content figure.wp-block-embed-youtube {
  margin: 34px 0;
}

.vmc-content .wp-block-embed__wrapper,
.vmc-content .wp-block-video video,
.vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  border-radius: 20px;
  background: #0f172a;
  box-shadow: 0 18px 44px rgba(15, 23, 42, .14);
}

/*
 * Ratio natif pour les embeds. L'ancienne cale ::before + iframe absolue
 * pouvait provoquer un recalcul de taille du lecteur YouTube au démarrage.
 */
.vmc-content .wp-block-embed__wrapper {
  aspect-ratio: 16 / 9;
}

.vmc-content .wp-block-embed__wrapper::before {
  content: none !important;
  display: none !important;
}

.vmc-content .wp-block-embed__wrapper iframe,
.vmc-content .wp-block-embed__wrapper embed,
.vmc-content .wp-block-embed__wrapper object {
  display: block;
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  min-width: 0;
  min-height: 0;
  border: 0;
}

.vmc-content .wp-embed-aspect-4-3 .wp-block-embed__wrapper {
  aspect-ratio: 4 / 3;
}

.vmc-content .wp-embed-aspect-21-9 .wp-block-embed__wrapper {
  aspect-ratio: 21 / 9;
}

.vmc-content .wp-embed-aspect-1-1 .wp-block-embed__wrapper {
  aspect-ratio: 1 / 1;
}

.vmc-content .wp-block-video video {
  display: block;
  height: auto;
}

@media (max-width: 720px) {
  .vmc-content .wp-block-table {
    width: calc(100% + 28px);
    max-width: none;
    margin-left: -14px;
    margin-right: -14px;
    padding: 0 14px 8px;
  }

  .vmc-content table,
  .vmc-content .wp-block-table table {
    min-width: 560px;
    border-radius: 16px;
    font-size: .92rem;
  }

  .vmc-content th,
  .vmc-content td {
    padding: 12px 14px;
  }

  .vmc-content .wp-block-embed,
  .vmc-content .wp-block-video,
  .vmc-content figure.wp-block-embed-youtube {
    margin: 26px 0;
  }

  .vmc-content .wp-block-embed__wrapper,
  .vmc-content .wp-block-video video,
  .vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper {
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(15, 23, 42, .12);
  }
}

/* 1.0.1 - Tables and video embeds: lighter, more modern, less bordered. */
.vmc-content .wp-block-table {
  margin: 34px 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 16px;
  background: transparent;
}

.vmc-content table,
.vmc-content .wp-block-table table {
  width: 100%;
  margin: 0;
  border: 0 !important;
  border-collapse: collapse;
  border-spacing: 0;
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .055);
  font-size: .95rem;
  line-height: 1.55;
}

.vmc-content th,
.vmc-content td {
  padding: 14px 18px;
  border: 0 !important;
  border-bottom: 1px solid rgba(15, 23, 42, .055) !important;
  vertical-align: top;
}

.vmc-content tr:last-child th,
.vmc-content tr:last-child td,
.vmc-content tbody tr:last-child td,
.vmc-content tbody tr:last-child th {
  border-bottom: 0 !important;
}

.vmc-content th,
.vmc-content thead th {
  color: #0f172a;
  background: #f8fafc;
  border-bottom: 1px solid rgba(15, 23, 42, .075) !important;
  font-weight: 720;
  letter-spacing: -.01em;
}

.vmc-content tbody tr:nth-child(even) td {
  background: rgba(248, 250, 252, .34);
}

.vmc-content tbody tr:hover td {
  background: rgba(241, 245, 249, .55);
}

.vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd),
.vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) td {
  background: rgba(248, 250, 252, .38);
}

.vmc-content table caption,
.vmc-content .wp-block-table figcaption,
.vmc-content figure.wp-block-embed figcaption,
.vmc-content .wp-block-video figcaption {
  margin-top: 9px;
  color: rgba(15, 23, 42, .55);
  font-size: .86rem;
  line-height: 1.45;
}

.vmc-content .wp-block-embed,
.vmc-content .wp-block-video,
.vmc-content figure.wp-block-embed-youtube,
.vmc-content figure.is-provider-youtube {
  margin: 32px 0;
}

.vmc-content .wp-block-embed__wrapper,
.vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper,
.vmc-content figure.is-provider-youtube .wp-block-embed__wrapper,
.vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper {
  position: relative;
  overflow: hidden;
  width: 100%;
  border: 0 !important;
  border-radius: 16px;
  background: #111827;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .10);
}

.vmc-content .wp-block-video video {
  display: block;
  width: 100%;
  height: auto;
  border: 0 !important;
  border-radius: 16px;
  background: #111827;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .10);
}

.vmc-content .wp-block-embed__wrapper iframe,
.vmc-content .wp-block-embed__wrapper embed,
.vmc-content .wp-block-embed__wrapper object {
  border: 0 !important;
  border-radius: 16px;
}

@media (max-width: 720px) {
  .vmc-content .wp-block-table {
    width: calc(100% + 24px);
    max-width: none;
    margin: 28px -12px;
    padding: 0 12px 8px;
    border-radius: 0;
  }

  .vmc-content table,
  .vmc-content .wp-block-table table {
    min-width: 540px;
    border-radius: 14px;
    font-size: .91rem;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .06);
  }

  .vmc-content th,
  .vmc-content td {
    padding: 12px 13px;
  }

  .vmc-content .wp-block-embed,
  .vmc-content .wp-block-video,
  .vmc-content figure.wp-block-embed-youtube,
  .vmc-content figure.is-provider-youtube {
    width: calc(100% + 8px);
    margin: 26px -4px;
  }

  .vmc-content .wp-block-embed__wrapper,
  .vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper,
  .vmc-content figure.is-provider-youtube .wp-block-embed__wrapper,
  .vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper,
  .vmc-content .wp-block-video video {
    border-radius: 13px;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .10);
  }

  .vmc-content .wp-block-embed__wrapper iframe,
  .vmc-content .wp-block-embed__wrapper embed,
  .vmc-content .wp-block-embed__wrapper object {
    border-radius: 13px;
  }
}


/* 1.0.2 - Tableaux façon carte éditoriale et embeds vidéo sans marge haute parasite. */
.vmc-content .wp-block-table {
  margin: 34px 0 42px;
  padding: 14px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid rgba(17, 24, 39, .10);
  border-radius: 22px;
  background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(247,248,250,.90));
  box-shadow: 0 16px 44px rgba(17, 24, 39, .06);
}

.vmc-content table,
.vmc-content .wp-block-table table {
  width: 100%;
  min-width: 0;
  margin: 0;
  border: 0 !important;
  border-collapse: separate;
  border-spacing: 0 8px;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  box-shadow: none;
  color: var(--vmc-text);
  font-family: inherit;
  font-size: .95rem;
  line-height: 1.55;
}

.vmc-content thead tr,
.vmc-content tbody tr {
  box-shadow: none;
}

.vmc-content th,
.vmc-content td {
  padding: 13px 16px;
  border: 0 !important;
  background: #fff;
  vertical-align: top;
}

.vmc-content th:first-child,
.vmc-content td:first-child {
  border-top-left-radius: 14px;
  border-bottom-left-radius: 14px;
}

.vmc-content th:last-child,
.vmc-content td:last-child {
  border-top-right-radius: 14px;
  border-bottom-right-radius: 14px;
}

.vmc-content thead th,
.vmc-content th {
  background: rgba(255, 255, 255, .82);
  color: var(--vmc-text);
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .055em;
  line-height: 1.35;
  text-transform: uppercase;
}

.vmc-content tbody td {
  color: rgba(17, 24, 39, .82);
  box-shadow: inset 0 -1px 0 rgba(17, 24, 39, .04);
}

.vmc-content tbody tr:nth-child(even) td,
.vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd),
.vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) td {
  background: rgba(255, 255, 255, .64);
}

.vmc-content tbody tr:hover td {
  background: #fff;
}

.vmc-content table caption,
.vmc-content .wp-block-table figcaption {
  margin: 10px 4px 0;
  color: var(--vmc-muted);
  font-size: .86rem;
  line-height: 1.45;
}

.vmc-content .wp-block-embed,
.vmc-content .wp-block-video,
.vmc-content figure.wp-block-embed,
.vmc-content figure.wp-block-embed-youtube,
.vmc-content figure.is-provider-youtube {
  display: block;
  margin: 24px 0 32px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.vmc-content .wp-block-embed__wrapper,
.vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper,
.vmc-content figure.is-provider-youtube .wp-block-embed__wrapper,
.vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: 14px;
  background: #0f172a;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .09);
  line-height: 0;
}

.vmc-content .wp-block-embed__wrapper::before,
.vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper::before {
  content: none !important;
  display: none !important;
  padding-top: 0 !important;
}

.vmc-content .wp-block-embed__wrapper iframe,
.vmc-content .wp-block-embed__wrapper embed,
.vmc-content .wp-block-embed__wrapper object {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 14px;
}

.vmc-content .wp-block-video video {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .09);
}

.vmc-content figure.wp-block-embed figcaption,
.vmc-content .wp-block-video figcaption {
  margin: 9px 2px 0;
  color: var(--vmc-muted);
  font-size: .86rem;
  line-height: 1.45;
}

@media (max-width: 720px) {
  .vmc-content .wp-block-table {
    width: calc(100% + 20px);
    max-width: none;
    margin: 28px -10px 36px;
    padding: 10px;
    border-radius: 18px;
  }

  .vmc-content table,
  .vmc-content .wp-block-table table {
    min-width: 560px;
    border-spacing: 0 7px;
    font-size: .91rem;
  }

  .vmc-content th,
  .vmc-content td {
    padding: 11px 12px;
  }

  .vmc-content .wp-block-embed,
  .vmc-content .wp-block-video,
  .vmc-content figure.wp-block-embed,
  .vmc-content figure.wp-block-embed-youtube,
  .vmc-content figure.is-provider-youtube {
    width: 100%;
    margin: 22px 0 28px !important;
  }

  .vmc-content .wp-block-embed__wrapper,
  .vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper,
  .vmc-content figure.is-provider-youtube .wp-block-embed__wrapper,
  .vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper,
  .vmc-content .wp-block-video video {
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .08);
  }

  .vmc-content .wp-block-embed__wrapper iframe,
  .vmc-content .wp-block-embed__wrapper embed,
  .vmc-content .wp-block-embed__wrapper object {
    border-radius: 12px;
  }
}

/* 1.0.3 - Fix YouTube embeds hidden by absolute-position responsive rules. */
.vmc-content .wp-block-embed,
.vmc-content .wp-block-video,
.vmc-content figure.wp-block-embed,
.vmc-content figure.wp-block-embed-youtube,
.vmc-content figure.is-provider-youtube {
  margin: 18px 0 30px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.vmc-content .wp-block-embed__wrapper,
.vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper,
.vmc-content figure.is-provider-youtube .wp-block-embed__wrapper,
.vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  line-height: normal !important;
}

.vmc-content .wp-block-embed__wrapper::before,
.vmc-content .wp-has-aspect-ratio .wp-block-embed__wrapper::before {
  content: none !important;
  display: none !important;
  padding: 0 !important;
}

.vmc-content .wp-block-embed__wrapper iframe,
.vmc-content .wp-block-embed__wrapper embed,
.vmc-content .wp-block-embed__wrapper object {
  position: static !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 9;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #0f172a;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .09);
}

.vmc-content .wp-block-embed.alignwide,
.vmc-content .wp-block-embed.alignfull,
.vmc-content figure.wp-block-embed.alignwide,
.vmc-content figure.wp-block-embed.alignfull {
  max-width: 100%;
}

@media (max-width: 640px) {
  .vmc-content .wp-block-embed,
  .vmc-content .wp-block-video,
  .vmc-content figure.wp-block-embed,
  .vmc-content figure.wp-block-embed-youtube,
  .vmc-content figure.is-provider-youtube {
    margin: 16px 0 24px !important;
  }

  .vmc-content .wp-block-embed__wrapper iframe,
  .vmc-content .wp-block-embed__wrapper embed,
  .vmc-content .wp-block-embed__wrapper object {
    border-radius: 12px !important;
  }
}

/* 1.0.4 - Easy TOC: hide the plugin toggle control when it renders as a stray bar. */
#ez-toc-container > label.ez-toc-cssicon-toggle-label,
#ez-toc-container .ez-toc-cssicon-toggle-label,
.vmc-content #ez-toc-container > label.ez-toc-cssicon-toggle-label,
.vmc-content #ez-toc-container .ez-toc-cssicon-toggle-label {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

#ez-toc-container > input[type="checkbox"],
#ez-toc-container input[id^="ez-toc-cssicon-toggle-item"],
.vmc-content #ez-toc-container > input[type="checkbox"],
.vmc-content #ez-toc-container input[id^="ez-toc-cssicon-toggle-item"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

#ez-toc-container nav,
.vmc-content #ez-toc-container nav {
  display: block !important;
}


/* Version 1.0.5 - Bloc À lire aussi : titre non-H2 et grille 6 articles. */
.vmc-related-title {
  display: block;
  margin: 0 0 22px;
  font-size: clamp(1.45rem, 2.35vw, 2.25rem);
  line-height: 1.08;
  letter-spacing: -.035em;
  font-weight: 850;
  color: var(--vmc-text);
}

.vmc-related .vmc-grid-3 {
  row-gap: 28px;
}


/* Version 1.0.6 - À lire aussi compact : sans catégorie ni extrait. */
.vmc-related-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.vmc-related-card {
  display: grid;
  background: var(--vmc-surface);
  border: 1px solid rgba(23, 21, 18, .08);
  border-radius: calc(var(--vmc-radius) + 2px);
  overflow: hidden;
  box-shadow: 0 12px 32px rgba(23, 21, 18, .035);
}

.vmc-related-media {
  display: block;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--vmc-soft);
}

.vmc-related-media img,
.vmc-related-media .vmc-card-placeholder {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .25s ease;
}

.vmc-related-card:hover .vmc-related-media img {
  transform: scale(1.025);
}

.vmc-related-body {
  padding: 16px 17px 17px;
}

.vmc-related-card-title {
  margin: 0;
  font-size: clamp(1.02rem, 1.15vw, 1.18rem);
  line-height: 1.18;
  letter-spacing: -.025em;
  font-weight: 850;
}

.vmc-related-card-title a {
  color: var(--vmc-text);
  text-decoration: none;
}

.vmc-related-card-title a:hover,
.vmc-related-card-title a:focus {
  text-decoration: underline;
  text-decoration-thickness: .07em;
  text-underline-offset: .16em;
}

.vmc-related-date {
  display: block;
  margin-top: 9px;
  color: var(--vmc-muted);
  font-size: .78rem;
  font-weight: 700;
}

@media (max-width: 900px) {
  .vmc-related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .vmc-related-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .vmc-related-card {
    grid-template-columns: 118px minmax(0, 1fr);
    align-items: stretch;
  }

  .vmc-related-media {
    aspect-ratio: auto;
    min-height: 112px;
  }

  .vmc-related-body {
    padding: 13px 14px;
  }

  .vmc-related-card-title {
    font-size: 1rem;
  }
}

/* Version 1.0.7 - Accueil : H3 alignés sur les faux H3 du bloc À lire aussi. */
.vmc-home h3.vmc-card-title,
.vmc-home .vmc-category-block h3.vmc-card-title {
  font-size: clamp(1.02rem, 1.15vw, 1.18rem);
  line-height: 1.18;
  letter-spacing: -.025em;
  font-weight: 850;
}

@media (max-width: 640px) {
  .vmc-home h3.vmc-card-title,
  .vmc-home .vmc-category-block h3.vmc-card-title {
    font-size: 1rem;
  }
}


/* Version 1.0.8 - Accueil : slogan en H1 et titre de une en H2, catégories plus compactes. */
.vmc-home-intro {
  max-width: 980px;
  margin: 0 auto clamp(26px, 4vw, 46px);
  text-align: center;
}

.vmc-home-intro h1 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 3.55rem);
  line-height: 1.04;
  letter-spacing: -.045em;
  color: var(--vmc-text);
}

.vmc-featured-title {
  margin: 0;
  font-size: clamp(1.9rem, 3.45vw, 3.2rem);
  line-height: 1.04;
  letter-spacing: -.04em;
  font-weight: 900;
}

.vmc-featured-title a {
  color: inherit;
  text-decoration: none;
}

.vmc-featured-title a:hover,
.vmc-featured-title a:focus-visible {
  color: var(--vmc-accent);
}

.category .vmc-card .vmc-meta {
  margin-bottom: 10px;
}

.category .vmc-card .vmc-card-excerpt {
  display: none;
}

/* Version 1.0.10 - Accueil : slogan H1 plus éditorial et distinct du logo. */
.vmc-home-intro {
  position: relative;
  max-width: 860px;
  margin: 0 auto clamp(30px, 4.6vw, 58px);
  padding: clamp(22px, 4vw, 44px) clamp(18px, 4vw, 48px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 50% 0%, rgba(37, 99, 235, .10), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(248,250,252,.66));
  border: 1px solid rgba(15, 23, 42, .07);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .07);
  overflow: hidden;
}

.vmc-home-intro::before {
  content: "";
  display: block;
  width: 56px;
  height: 3px;
  margin: 0 auto 18px;
  border-radius: 999px;
  background: var(--vmc-accent);
  opacity: .85;
}

.vmc-home-intro::after {
  content: "";
  position: absolute;
  inset: auto 18% -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(15,23,42,.16), transparent);
  pointer-events: none;
}

.vmc-home-intro h1 {
  max-width: 780px;
  margin: 0 auto;
  font-family: var(--vmc-serif, Georgia, serif);
  font-size: clamp(2rem, 3.4vw, 3.15rem);
  line-height: 1.08;
  letter-spacing: -.035em;
  font-weight: 760;
  color: var(--vmc-text);
  text-wrap: balance;
}

.vmc-home-intro h1::first-letter {
  letter-spacing: -.055em;
}

@media (max-width: 760px) {
  .vmc-home-intro {
    margin-bottom: 26px;
    padding: 22px 18px 24px;
    border-radius: 22px;
  }

  .vmc-home-intro::before {
    width: 44px;
    margin-bottom: 14px;
  }

  .vmc-home-intro h1 {
    font-size: clamp(1.65rem, 8vw, 2.28rem);
    line-height: 1.12;
  }
}


/* Version 1.0.11 - Accueil : slogan H1 plus cohérent avec le style Vamika d'origine. */
.vmc-home-intro {
  max-width: 980px;
  margin: 0 auto clamp(24px, 4vw, 46px);
  padding: 0;
  text-align: center;
  border: 0;
  background: transparent;
  box-shadow: none;
  border-radius: 0;
  overflow: visible;
}

.vmc-home-intro::before,
.vmc-home-intro::after {
  content: none;
  display: none;
}

.vmc-home-intro .vmc-home-tagline {
  max-width: 900px;
  margin: 0 auto;
  font-family: var(--vmc-display, var(--display, Inter, system-ui, sans-serif));
  font-size: clamp(2rem, 4.35vw, 4.15rem);
  line-height: .98;
  letter-spacing: -.052em;
  font-weight: 900;
  color: var(--vmc-text);
  text-wrap: balance;
}

.vmc-home-intro .word {
  display: inline;
  position: relative;
}

.vmc-home-intro .highlight {
  position: relative;
  display: inline;
  padding: 0 .08em;
  font-family: var(--vmc-serif, var(--serif, Georgia, serif));
  font-style: italic;
  font-weight: 500;
  color: var(--vmc-text);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  background: linear-gradient(180deg, transparent 56%, rgba(245, 197, 66, .55) 56%, rgba(245, 197, 66, .55) 88%, transparent 88%);
}

@media (max-width: 760px) {
  .vmc-home-intro {
    margin-bottom: 24px;
  }

  .vmc-home-intro .vmc-home-tagline {
    font-size: clamp(1.7rem, 9vw, 2.75rem);
    line-height: 1.05;
    letter-spacing: -.045em;
  }
}

/* Version 1.0.19 - Bloc résumé d'article. */
#resume_article {
	padding: 22px 24px 20px;
	border: 1px solid rgba(17, 24, 39, .1);
	border-radius: 22px;
	background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(247,248,250,.9));
	box-shadow: 0 16px 44px rgba(17, 24, 39, .06);
}

#resume_article ul {
	margin: 0;
}

#resume_article::before {
	content: "En résumé :";
}

/* Version 1.0.21 - Métas article simplifiées sous le titre. */
.vmc-single-header .vmc-header-meta {
  margin-top: 14px;
  margin-bottom: 0;
}

.vmc-single-header .vmc-header-meta + .vmc-deck {
  margin-top: 18px;
}


/* V14 - Article : respiration entre le H1 et la date / temps de lecture. */
.vmc-single-header .vmc-header-meta {
  margin-top: 20px;
}

.vmc-meta .vmc-card-category {
  color: var(--vmc-text);
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  padding: 4px 9px;
}

.vmc-mini-post .vmc-meta .vmc-card-category {
  border-color: rgba(255,255,255,.18);
  color: #fff;
  background: rgba(255,255,255,.08);
}



/* V16 - Article : centrer le titre et les métadonnées sous le titre. */
.vmc-single-header h1 {
  text-align: center;
}

.vmc-single-header .vmc-header-meta {
  justify-content: center;
  text-align: center;
}

@media (max-width: 640px) {
  .vmc-single-header .vmc-header-meta {
    gap: 7px 8px;
  }
}

/* V16 - Lien Google Sources à gauche de la recherche. */
.vmc-google-source-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 42px;
  height: 42px;
  flex: 0 0 auto;
  padding: 0 14px;
  margin-right: -16px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  text-decoration: none;
  font-size: .82rem;
  font-weight: 800;
  white-space: nowrap;
  transition: background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vmc-google-source-link:hover,
.vmc-google-source-link:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .22);
  box-shadow: 0 8px 22px rgba(23, 21, 18, .08);
  transform: translateY(-1px);
}

.vmc-google-source-link:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-google-source-icon {
  display: block;
  width: 19px;
  height: 19px;
}

.vmc-google-source-text {
  display: inline-block;
  line-height: 1;
}

@media (min-width: 761px) {
  .vmc-google-source-link {
    height: 44px;
    padding-top: 1px;
    padding-bottom: 1px;
  }

  .vmc-google-source-icon {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    overflow: visible;
  }
}

@media (max-width: 760px) {
  .vmc-google-source-link {
    display: inline-grid;
    place-items: center;
    width: 40px;
    min-width: 40px;
    height: 40px;
    padding: 0;
    margin-right: 0;
  }

  .vmc-google-source-text {
    display: none;
  }
}

@media (max-width: 420px) {
  .vmc-google-source-link {
    width: 38px;
    min-width: 38px;
    height: 38px;
  }

  .vmc-google-source-icon {
    width: 18px;
    height: 18px;
  }
}


/* V15 - Recherche mobile, formulaires et signalements d'erreurs. */
.vmc-search-form,
.vmc-search-form-wrap,
.vmc-search-form-wrap .vmc-search-form {
  box-sizing: border-box;
  max-width: 100%;
}

.vmc-search-form-wrap .vmc-search-form {
  width: 100%;
}

.vmc-content form p,
.vmc-widget form p,
.vmc-content .wp-block-contact-form-7-contact-form-selector,
.vmc-content .wpcf7-form p,
.vmc-content .wpforms-field,
.vmc-content .gform_fields,
.vmc-widget .wpcf7-form p,
.vmc-widget .wpforms-field,
.vmc-widget .gform_fields {
  width: 100%;
  flex: 0 0 100%;
  max-width: 100%;
}

.vmc-content form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
.vmc-content form textarea,
.vmc-content form select,
.vmc-widget form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]):not([type="hidden"]),
.vmc-widget form textarea,
.vmc-widget form select {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.vmc-error-report-entry {
  margin-top: 34px;
  padding-top: 18px;
  border-top: 1px solid var(--vmc-border);
}

.vmc-error-report-trigger,
.vmc-error-report-cancel,
.vmc-error-report-submit {
  font: inherit;
}

.vmc-error-report-trigger {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  padding: 0 13px;
  font-size: .82rem;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  text-decoration: none;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vmc-error-report-trigger:hover,
.vmc-error-report-trigger:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .22);
  color: var(--vmc-text);
  box-shadow: 0 8px 22px rgba(23, 21, 18, .08);
  transform: translateY(-1px);
}

.vmc-error-report-trigger:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-error-report-popup {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 9999;
  width: min(520px, calc(100% - 32px));
  transform: translateX(-50%);
  border: 1px solid var(--vmc-border);
  border-radius: 22px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 24px 70px rgba(23, 21, 18, .18);
  padding: 18px;
}

.vmc-error-report-popup[hidden] {
  display: none;
}

.vmc-error-report-title {
  margin: 0 0 6px;
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: -.02em;
}

.vmc-error-report-message,
.vmc-error-report-feedback {
  margin: 0;
  color: var(--vmc-muted);
  font-size: .94rem;
  line-height: 1.5;
}

.vmc-error-report-feedback {
  min-height: 1.5em;
  margin-top: 10px;
}

.vmc-error-report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

.vmc-error-report-submit,
.vmc-error-report-cancel {
  min-height: 42px;
  border-radius: 999px;
  padding: 10px 15px;
  font-weight: 850;
  cursor: pointer;
}

.vmc-error-report-submit {
  border: 1px solid var(--vmc-text);
  background: var(--vmc-text);
  color: #fff;
}

.vmc-error-report-submit:disabled {
  cursor: wait;
  opacity: .7;
}

.vmc-error-report-cancel {
  border: 1px solid var(--vmc-border);
  background: #fff;
  color: var(--vmc-text);
}

.vmc-error-report-selection-active .vmc-content ::selection {
  background: rgba(255, 214, 102, .55);
}

@media (max-width: 760px) {
  .vmc-search-form-wrap {
    width: 100%;
    overflow: hidden;
  }

  .vmc-search-form-wrap .vmc-search-form,
  .vmc-archive-header .vmc-search-form,
  .vmc-header-search .vmc-search-form,
  .vmc-search-form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
    align-items: stretch;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .vmc-search-form input[type="search"],
  .vmc-search-form button {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    flex: none;
    box-sizing: border-box;
  }

  .vmc-search-form input[type="search"] {
    border-radius: 16px;
  }

  .vmc-search-form button {
    border-radius: 16px;
  }

  .vmc-error-report-popup {
    bottom: 14px;
    width: calc(100% - 24px);
    padding: 16px;
    border-radius: 18px;
  }
}

/* V17 - Ajustements popup de signalement. */
.vmc-error-report-popup {
  padding: 16px 16px 10px;
}

.vmc-error-report-actions {
  gap: 8px;
  margin-top: 12px;
}

.vmc-error-report-feedback {
  min-height: 0;
  margin-top: 8px;
}

.vmc-error-report-submit,
.vmc-error-report-cancel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 0 13px;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 800;
  line-height: 1;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vmc-error-report-submit {
  border: 1px solid var(--vmc-border);
  background: var(--vmc-surface);
  color: var(--vmc-text);
}

.vmc-error-report-submit:hover,
.vmc-error-report-submit:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .22);
  box-shadow: 0 8px 22px rgba(23, 21, 18, .08);
  transform: translateY(-1px);
}

.vmc-error-report-submit:focus-visible,
.vmc-error-report-cancel:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-error-report-cancel {
  border: 1px solid transparent;
  background: transparent;
  color: var(--vmc-muted);
}

.vmc-error-report-cancel:hover,
.vmc-error-report-cancel:focus-visible {
  background: var(--vmc-surface);
  border-color: var(--vmc-border);
  color: var(--vmc-text);
}

@media (max-width: 760px) {
  .vmc-error-report-popup {
    padding: 14px 14px 8px;
  }

  .vmc-error-report-submit,
  .vmc-error-report-cancel {
    min-height: 34px;
    padding: 0 12px;
    font-size: .8rem;
  }
}

/* V18 - Bouton de signalement dans les articles, harmonisé avec le bouton Google Sources. */
@media (max-width: 760px) {
  .vmc-error-report-entry {
    margin-top: 28px;
    padding-top: 16px;
  }

  .vmc-error-report-trigger {
    min-height: 36px;
    padding: 0 12px;
    font-size: .8rem;
  }
}

/* V19 - Bouton de signalement article : ciblage renforcé, sans séparation supérieure. */
.vmc-content .vmc-error-report-entry {
  margin-top: 30px;
  padding-top: 0;
  border-top: 0;
}

.vmc-content .vmc-error-report-trigger,
.vmc-content button.vmc-error-report-trigger {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 34px;
  width: auto;
  max-width: 100%;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  padding: 0 12px;
  font-size: .8rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  box-shadow: none;
  cursor: pointer;
}

.vmc-content .vmc-error-report-trigger:hover,
.vmc-content .vmc-error-report-trigger:focus-visible,
.vmc-content button.vmc-error-report-trigger:hover,
.vmc-content button.vmc-error-report-trigger:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .22);
  color: var(--vmc-text);
  box-shadow: 0 8px 22px rgba(23, 21, 18, .08);
  transform: translateY(-1px);
}

.vmc-content .vmc-error-report-trigger:focus-visible,
.vmc-content button.vmc-error-report-trigger:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-error-report-trigger-icon {
  display: block;
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
  opacity: .72;
}

@media (max-width: 760px) {
  .vmc-content .vmc-error-report-entry {
    margin-top: 26px;
    padding-top: 0;
    border-top: 0;
  }

  .vmc-content .vmc-error-report-trigger,
  .vmc-content button.vmc-error-report-trigger {
    min-height: 32px;
    padding: 0 11px;
    font-size: .78rem;
  }

  .vmc-error-report-trigger-icon {
    width: 14px;
    height: 14px;
    flex-basis: 14px;
  }
}


/* V20 - Mode sombre global et partage d'articles. */
html[data-vmc-theme="dark"] {
  color-scheme: dark;
  --vmc-bg: #0e0f12;
  --vmc-surface: #17191f;
  --vmc-soft: #20242c;
  --vmc-soft-2: #292d36;
  --vmc-text: #f4f1ea;
  --vmc-muted: #b8b2a7;
  --vmc-border: rgba(244, 241, 234, .14);
  --vmc-shadow: 0 24px 70px rgba(0, 0, 0, .35);
}

html[data-vmc-theme="dark"] body.vmc-media-child {
  background: radial-gradient(circle at top left, rgba(255,255,255,.055), transparent 34rem), var(--vmc-bg);
  color: var(--vmc-text);
}

html[data-vmc-theme="dark"] .vmc-site-header {
  background: rgba(14, 15, 18, .92);
}

html[data-vmc-theme="dark"] .vmc-category-nav,
html[data-vmc-theme="dark"] .vmc-header-search {
  background: rgba(23, 25, 31, .78);
}

html[data-vmc-theme="dark"] .vmc-featured-main,
html[data-vmc-theme="dark"] .vmc-card,
html[data-vmc-theme="dark"] .vmc-topic,
html[data-vmc-theme="dark"] .vmc-sidebar-box,
html[data-vmc-theme="dark"] .vmc-widget,
html[data-vmc-theme="dark"] .vmc-primary-nav,
html[data-vmc-theme="dark"] .vmc-site-footer,
html[data-vmc-theme="dark"] .vmc-error-report-popup {
  background: var(--vmc-surface);
  border-color: var(--vmc-border);
}

html[data-vmc-theme="dark"] input,
html[data-vmc-theme="dark"] textarea,
html[data-vmc-theme="dark"] select,
html[data-vmc-theme="dark"] .vmc-search-form input[type="search"] {
  background: #111319;
  border-color: var(--vmc-border);
  color: var(--vmc-text);
}

html[data-vmc-theme="dark"] input::placeholder,
html[data-vmc-theme="dark"] textarea::placeholder {
  color: rgba(244, 241, 234, .54);
}

html[data-vmc-theme="dark"] .vmc-card-placeholder {
  background: linear-gradient(135deg, #20242c, #111319);
}

html[data-vmc-theme="dark"] .vmc-search-toggle:hover,
html[data-vmc-theme="dark"] .vmc-search-toggle:focus-visible,
html[data-vmc-theme="dark"] .vmc-search-toggle[aria-expanded="true"] {
  background: #f4f1ea;
  border-color: #f4f1ea;
  color: #111319;
}

html[data-vmc-theme="dark"] .vmc-google-source-link:hover,
html[data-vmc-theme="dark"] .vmc-google-source-link:focus-visible,
html[data-vmc-theme="dark"] .vmc-content .vmc-error-report-trigger:hover,
html[data-vmc-theme="dark"] .vmc-content .vmc-error-report-trigger:focus-visible,
html[data-vmc-theme="dark"] .vmc-error-report-submit:hover,
html[data-vmc-theme="dark"] .vmc-error-report-submit:focus-visible {
  background: #20242c;
  border-color: rgba(244, 241, 234, .24);
  color: var(--vmc-text);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .28);
}

html[data-vmc-theme="dark"] img {
  filter: brightness(.92) contrast(1.04);
}

.vmc-theme-toggle {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  font: inherit;
  font-size: 1rem;
  font-weight: 850;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vmc-theme-toggle:hover,
.vmc-theme-toggle:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .22);
  box-shadow: 0 8px 22px rgba(23, 21, 18, .08);
  transform: translateY(-1px);
}

.vmc-theme-toggle:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-theme-toggle-icon {
  display: block;
  transform: translateY(-1px);
}

.vmc-share {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 24px auto 0;
  padding: 10px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: color-mix(in srgb, var(--vmc-surface) 86%, transparent);
  box-shadow: 0 12px 35px rgba(23, 21, 18, .05);
}

.vmc-share-label {
  padding-left: 6px;
  color: var(--vmc-muted);
  font-size: .82rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.vmc-share-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
}

.vmc-share-button,
button.vmc-share-button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 34px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  padding: 0 11px;
  font-size: .8rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vmc-share-button:hover,
.vmc-share-button:focus-visible,
button.vmc-share-button:hover,
button.vmc-share-button:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .22);
  color: var(--vmc-text);
  box-shadow: 0 8px 22px rgba(23, 21, 18, .08);
  transform: translateY(-1px);
}

.vmc-share-button:focus-visible,
button.vmc-share-button:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-share-button svg {
  display: block;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  opacity: .82;
}

.vmc-share-feedback {
  min-width: 72px;
  color: var(--vmc-muted);
  font-size: .8rem;
  font-weight: 800;
}

@media (max-width: 760px) {
  .vmc-theme-toggle {
    width: 40px;
    height: 40px;
  }

  .vmc-share {
    align-items: flex-start;
    border-radius: 22px;
    flex-direction: column;
    padding: 12px;
  }

  .vmc-share-label {
    padding-left: 2px;
  }

  .vmc-share-actions {
    justify-content: flex-start;
  }

  .vmc-share-feedback {
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 420px) {
  .vmc-theme-toggle {
    width: 38px;
    height: 38px;
  }

  .vmc-share-button span,
  button.vmc-share-button span {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }

  .vmc-share-button,
  button.vmc-share-button {
    width: 36px;
    padding: 0;
  }
}

/* V20.1 - Finitions dark mode sur les interactions. */
html[data-vmc-theme="dark"] .vmc-share {
  background: var(--vmc-surface);
  box-shadow: 0 12px 35px rgba(0, 0, 0, .28);
}

html[data-vmc-theme="dark"] .vmc-theme-toggle:hover,
html[data-vmc-theme="dark"] .vmc-theme-toggle:focus-visible,
html[data-vmc-theme="dark"] .vmc-share-button:hover,
html[data-vmc-theme="dark"] .vmc-share-button:focus-visible,
html[data-vmc-theme="dark"] button.vmc-share-button:hover,
html[data-vmc-theme="dark"] button.vmc-share-button:focus-visible {
  background: #20242c;
  border-color: rgba(244, 241, 234, .24);
  color: var(--vmc-text);
  box-shadow: 0 8px 22px rgba(0, 0, 0, .28);
}

/* V20.2 - Correctifs dark mode: header compact, switch stable, partage discret. */
html.vmc-theme-switching,
html.vmc-theme-switching * {
  transition: none !important;
}

.vmc-header-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 0 0 auto;
  margin-left: auto;
  white-space: nowrap;
}

@media (min-width: 901px) {
  .vmc-header-inner {
    gap: clamp(18px, 2.2vw, 34px);
  }

  .vmc-brand {
    margin-right: clamp(0px, .8vw, 10px);
  }

  .vmc-primary-nav > ul {
    flex-wrap: nowrap;
    gap: clamp(14px, 1.45vw, 24px);
  }

  .vmc-primary-nav a {
    white-space: nowrap;
    font-size: clamp(.91rem, .78vw, 1rem);
  }
}

@media (max-width: 1180px) and (min-width: 901px) {
  .vmc-google-source-link {
    width: 40px;
    min-width: 40px;
    height: 40px;
    padding: 0;
    margin-right: 0;
  }

  .vmc-google-source-text {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
}

@media (max-width: 900px) {
  .vmc-header-actions {
    gap: 7px;
    margin-left: 0;
  }
}

.vmc-theme-toggle {
  width: 38px;
  height: 38px;
  min-width: 38px;
  font-size: .95rem;
}

@media (min-width: 761px) {
  .vmc-theme-toggle {
    width: 40px;
    height: 40px;
    min-width: 40px;
  }
}

@media (max-width: 420px) {
  .vmc-theme-toggle {
    width: 36px;
    height: 36px;
    min-width: 36px;
  }

  .vmc-header-actions {
    gap: 6px;
  }
}

html[data-vmc-theme="dark"] .vmc-primary-nav {
  background: transparent;
  border-color: transparent;
}

@media (min-width: 901px) {
  html[data-vmc-theme="dark"] .vmc-primary-nav .sub-menu {
    background: rgba(23, 25, 31, .98);
    border-color: var(--vmc-border);
    box-shadow: var(--vmc-shadow);
  }

  html[data-vmc-theme="dark"] .vmc-primary-nav .sub-menu a:hover,
  html[data-vmc-theme="dark"] .vmc-primary-nav .sub-menu a:focus {
    background: var(--vmc-soft);
  }
}

@media (max-width: 900px) {
  html[data-vmc-theme="dark"] .vmc-primary-nav {
    background: var(--vmc-surface);
    border-color: var(--vmc-border);
  }
}

html[data-vmc-theme="dark"] .vmc-header-search {
  background: rgba(23, 25, 31, .98);
  border-color: var(--vmc-border);
}

html[data-vmc-theme="dark"] .vmc-category-nav {
  background: rgba(17, 19, 25, .72);
}

html[data-vmc-theme="dark"] a:not(.vmc-google-source-link):not(.vmc-share-button):not(.vmc-card-link):not(.vmc-site-title):not(.vmc-reading-gate-button) {
  color: inherit;
}

html[data-vmc-theme="dark"] img {
  filter: none;
}

.vmc-share {
  width: fit-content;
  max-width: 100%;
  justify-content: flex-start;
  gap: 8px;
  margin: 18px auto 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.vmc-share-label {
  padding-left: 0;
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .05em;
  opacity: .72;
}

.vmc-share-actions {
  gap: 5px;
  flex-wrap: nowrap;
}

.vmc-share-button,
button.vmc-share-button {
  width: 31px;
  min-width: 31px;
  min-height: 31px;
  height: 31px;
  gap: 0;
  padding: 0;
  border-color: color-mix(in srgb, var(--vmc-border) 72%, transparent);
  background: transparent;
  color: var(--vmc-muted);
  box-shadow: none;
}

.vmc-share-button span,
button.vmc-share-button span {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.vmc-share-button svg {
  width: 14px;
  height: 14px;
  flex-basis: 14px;
  opacity: .74;
}

.vmc-share-button:hover,
.vmc-share-button:focus-visible,
button.vmc-share-button:hover,
button.vmc-share-button:focus-visible {
  background: var(--vmc-soft);
  border-color: var(--vmc-border);
  color: var(--vmc-text);
  box-shadow: none;
  transform: none;
}

.vmc-share-feedback {
  min-width: 0;
  margin-left: 2px;
  font-size: .74rem;
  font-weight: 700;
  opacity: .78;
}

html[data-vmc-theme="dark"] .vmc-share {
  background: transparent;
  box-shadow: none;
}

html[data-vmc-theme="dark"] .vmc-share-button,
html[data-vmc-theme="dark"] button.vmc-share-button {
  background: transparent;
  border-color: var(--vmc-border);
  color: var(--vmc-muted);
}

html[data-vmc-theme="dark"] .vmc-share-button:hover,
html[data-vmc-theme="dark"] .vmc-share-button:focus-visible,
html[data-vmc-theme="dark"] button.vmc-share-button:hover,
html[data-vmc-theme="dark"] button.vmc-share-button:focus-visible {
  background: var(--vmc-soft);
  border-color: rgba(244, 241, 234, .22);
  color: var(--vmc-text);
  box-shadow: none;
}

@media (max-width: 760px) {
  .vmc-share {
    align-items: center;
    flex-direction: row;
    width: 100%;
    justify-content: center;
    padding: 0;
    border-radius: 0;
  }

  .vmc-share-actions {
    justify-content: center;
  }

  .vmc-share-feedback {
    width: auto;
  }
}

/* V20.3 - Correctifs header dark mode, lisibilite contenu et partage plus discret. */
.vmc-header-actions {
  gap: 11px !important;
}

.vmc-google-source-link {
  margin-right: 0 !important;
}

.vmc-google-source-link {
  order: 1;
}

.vmc-search-toggle {
  order: 2;
}

.vmc-theme-toggle {
  order: 3;
  margin-left: 2px;
}

@media (max-width: 1450px) and (min-width: 901px) {
  .vmc-google-source-link {
    width: 40px;
    min-width: 40px;
    height: 40px;
    padding: 0;
  }

  .vmc-google-source-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 901px) {
  .vmc-header-inner {
    gap: clamp(14px, 1.6vw, 28px) !important;
  }

  .vmc-primary-nav {
    min-width: 0;
  }
}

html[data-vmc-theme="dark"] .vmc-theme-toggle,
html[data-vmc-theme="dark"] .vmc-google-source-link,
html[data-vmc-theme="dark"] .vmc-search-toggle {
  background: rgba(255, 255, 255, .045);
  border-color: rgba(244, 241, 234, .16);
  color: var(--vmc-text);
}

html[data-vmc-theme="dark"] .vmc-theme-toggle:hover,
html[data-vmc-theme="dark"] .vmc-theme-toggle:focus-visible,
html[data-vmc-theme="dark"] .vmc-google-source-link:hover,
html[data-vmc-theme="dark"] .vmc-google-source-link:focus-visible,
html[data-vmc-theme="dark"] .vmc-search-toggle:hover,
html[data-vmc-theme="dark"] .vmc-search-toggle:focus-visible,
html[data-vmc-theme="dark"] .vmc-search-toggle[aria-expanded="true"] {
  background: rgba(244, 241, 234, .10);
  border-color: rgba(244, 241, 234, .28);
  color: var(--vmc-text);
  box-shadow: none;
}

html[data-vmc-theme="dark"] .vmc-content #ez-toc-container,
html[data-vmc-theme="dark"] #ez-toc-container.ez-toc-v2_0_85,
html[data-vmc-theme="dark"] #ez-toc-container,
html[data-vmc-theme="dark"] .vmc-content .wp-block-table,
html[data-vmc-theme="dark"] .vmc-content .wp-block-group.has-background,
html[data-vmc-theme="dark"] .vmc-content .wp-block-columns.has-background,
html[data-vmc-theme="dark"] .vmc-content .wp-block-media-text.has-background,
html[data-vmc-theme="dark"] .vmc-content .wp-block-quote,
html[data-vmc-theme="dark"] .vmc-content blockquote {
  background: linear-gradient(135deg, rgba(32, 36, 44, .98), rgba(18, 20, 26, .96)) !important;
  border-color: rgba(244, 241, 234, .14) !important;
  color: var(--vmc-text) !important;
  box-shadow: 0 16px 44px rgba(0, 0, 0, .26) !important;
}

html[data-vmc-theme="dark"] #ez-toc-container *,
html[data-vmc-theme="dark"] .vmc-content .wp-block-table *,
html[data-vmc-theme="dark"] .vmc-content .wp-block-group.has-background *,
html[data-vmc-theme="dark"] .vmc-content .wp-block-columns.has-background *,
html[data-vmc-theme="dark"] .vmc-content .wp-block-media-text.has-background *,
html[data-vmc-theme="dark"] .vmc-content blockquote * {
  color: inherit !important;
}

html[data-vmc-theme="dark"] #ez-toc-container label.ez-toc-cssicon-toggle-label,
html[data-vmc-theme="dark"] #ez-toc-container .ez-toc-title-toggle,
html[data-vmc-theme="dark"] .vmc-content th,
html[data-vmc-theme="dark"] .vmc-content td,
html[data-vmc-theme="dark"] .vmc-content thead th,
html[data-vmc-theme="dark"] .vmc-content tbody td,
html[data-vmc-theme="dark"] .vmc-content tbody tr:nth-child(even) td,
html[data-vmc-theme="dark"] .vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd),
html[data-vmc-theme="dark"] .vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) td,
html[data-vmc-theme="dark"] .vmc-content tbody tr:hover td {
  background: rgba(255, 255, 255, .055) !important;
  border-color: rgba(244, 241, 234, .10) !important;
  color: var(--vmc-text) !important;
  box-shadow: none !important;
}

html[data-vmc-theme="dark"] .vmc-content table caption,
html[data-vmc-theme="dark"] .vmc-content .wp-block-table figcaption,
html[data-vmc-theme="dark"] .vmc-content .has-text-color,
html[data-vmc-theme="dark"] .vmc-content .has-inline-color {
  color: var(--vmc-muted) !important;
}

html[data-vmc-theme="dark"] .vmc-content pre,
html[data-vmc-theme="dark"] .vmc-content code,
html[data-vmc-theme="dark"] .vmc-content kbd {
  background: rgba(255, 255, 255, .07) !important;
  border-color: rgba(244, 241, 234, .12) !important;
  color: var(--vmc-text) !important;
}

.vmc-share {
  gap: 6px !important;
  margin-top: 14px !important;
  opacity: .78;
}

.vmc-share:hover,
.vmc-share:focus-within {
  opacity: 1;
}

.vmc-share-label {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
}

.vmc-share-button,
button.vmc-share-button {
  width: 28px !important;
  min-width: 28px !important;
  height: 28px !important;
  min-height: 28px !important;
  border-color: transparent !important;
}

.vmc-share-button svg,
button.vmc-share-button svg {
  width: 13px !important;
  height: 13px !important;
  flex-basis: 13px !important;
}

.vmc-share-feedback {
  font-size: .7rem !important;
}

/* V20.4 - Correctifs dark mode ciblés : résumé, catégories, boutons, aside accueil et sommaire. */
html[data-vmc-theme="dark"] #resume_article,
html[data-vmc-theme="dark"] .vmc-content #resume_article {
  background: linear-gradient(135deg, rgba(32, 36, 44, .98), rgba(18, 20, 26, .96)) !important;
  border-color: rgba(244, 241, 234, .14) !important;
  color: var(--vmc-text) !important;
  box-shadow: 0 16px 44px rgba(0, 0, 0, .26) !important;
}

html[data-vmc-theme="dark"] #resume_article *,
html[data-vmc-theme="dark"] .vmc-content #resume_article * {
  color: inherit !important;
}

html[data-vmc-theme="dark"] #resume_article::before,
html[data-vmc-theme="dark"] .vmc-content #resume_article::before {
  color: var(--vmc-text) !important;
}

html[data-vmc-theme="dark"] .vmc-meta a,
html[data-vmc-theme="dark"] .vmc-tags a,
html[data-vmc-theme="dark"] .vmc-meta .vmc-card-category,
html[data-vmc-theme="dark"] .vmc-card-category,
html[data-vmc-theme="dark"] a.vmc-card-category,
html[data-vmc-theme="dark"] .cat-links a,
html[data-vmc-theme="dark"] .posted-in a,
html[data-vmc-theme="dark"] .entry-categories a,
html[data-vmc-theme="dark"] .post-categories a {
  background: rgba(255, 255, 255, .055) !important;
  border-color: rgba(244, 241, 234, .14) !important;
  color: var(--vmc-text) !important;
}

html[data-vmc-theme="dark"] .vmc-meta a:hover,
html[data-vmc-theme="dark"] .vmc-tags a:hover,
html[data-vmc-theme="dark"] .cat-links a:hover,
html[data-vmc-theme="dark"] .posted-in a:hover,
html[data-vmc-theme="dark"] .entry-categories a:hover,
html[data-vmc-theme="dark"] .post-categories a:hover {
  background: rgba(244, 241, 234, .12) !important;
  border-color: rgba(244, 241, 234, .24) !important;
  color: var(--vmc-text) !important;
}

html[data-vmc-theme="dark"] .vmc-button,
html[data-vmc-theme="dark"] a.vmc-button,
html[data-vmc-theme="dark"] .vmc-search-form button,
html[data-vmc-theme="dark"] .wp-block-button__link,
html[data-vmc-theme="dark"] .wp-element-button,
html[data-vmc-theme="dark"] input[type="submit"],
html[data-vmc-theme="dark"] button:not(.vmc-theme-toggle):not(.vmc-search-toggle):not(.vmc-share-button):not(.vmc-error-report-trigger):not(.vmc-error-report-submit) {
  background: #f4f1ea !important;
  border-color: #f4f1ea !important;
  color: #111319 !important;
  box-shadow: none !important;
}

html[data-vmc-theme="dark"] .vmc-button:hover,
html[data-vmc-theme="dark"] a.vmc-button:hover,
html[data-vmc-theme="dark"] .vmc-button:focus-visible,
html[data-vmc-theme="dark"] a.vmc-button:focus-visible,
html[data-vmc-theme="dark"] .vmc-search-form button:hover,
html[data-vmc-theme="dark"] .vmc-search-form button:focus-visible,
html[data-vmc-theme="dark"] .wp-block-button__link:hover,
html[data-vmc-theme="dark"] .wp-block-button__link:focus-visible,
html[data-vmc-theme="dark"] .wp-element-button:hover,
html[data-vmc-theme="dark"] .wp-element-button:focus-visible,
html[data-vmc-theme="dark"] input[type="submit"]:hover,
html[data-vmc-theme="dark"] input[type="submit"]:focus-visible,
html[data-vmc-theme="dark"] button:not(.vmc-theme-toggle):not(.vmc-search-toggle):not(.vmc-share-button):not(.vmc-error-report-trigger):not(.vmc-error-report-submit):hover,
html[data-vmc-theme="dark"] button:not(.vmc-theme-toggle):not(.vmc-search-toggle):not(.vmc-share-button):not(.vmc-error-report-trigger):not(.vmc-error-report-submit):focus-visible {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #0e0f12 !important;
}

html[data-vmc-theme="dark"] .vmc-home-side {
  background: linear-gradient(135deg, rgba(32, 36, 44, .98), rgba(18, 20, 26, .96)) !important;
  border: 1px solid rgba(244, 241, 234, .12) !important;
  color: var(--vmc-text) !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, .25) !important;
}

html[data-vmc-theme="dark"] .vmc-home-side .vmc-side-header,
html[data-vmc-theme="dark"] .vmc-home-side .vmc-meta,
html[data-vmc-theme="dark"] .vmc-home-side .vmc-meta-date {
  color: var(--vmc-muted) !important;
}

html[data-vmc-theme="dark"] .vmc-home-side .vmc-mini-post {
  border-top-color: rgba(244, 241, 234, .12) !important;
}

html[data-vmc-theme="dark"] .vmc-home-side a,
html[data-vmc-theme="dark"] .vmc-home-side h2,
html[data-vmc-theme="dark"] .vmc-home-side h2 a {
  color: var(--vmc-text) !important;
}

html[data-vmc-theme="dark"] .vmc-home-side .vmc-mini-post a:hover,
html[data-vmc-theme="dark"] .vmc-home-side .vmc-mini-post a:focus-visible {
  color: #ffffff !important;
}

html[data-vmc-theme="dark"] #ez-toc-container a,
html[data-vmc-theme="dark"] #ez-toc-container a.ez-toc-link,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container a {
  background: transparent !important;
  border-color: transparent !important;
  color: var(--vmc-text) !important;
}

html[data-vmc-theme="dark"] #ez-toc-container a:hover,
html[data-vmc-theme="dark"] #ez-toc-container a:focus,
html[data-vmc-theme="dark"] #ez-toc-container a.ez-toc-link:hover,
html[data-vmc-theme="dark"] #ez-toc-container a.ez-toc-link:focus,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container a:hover,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container a:focus {
  background: rgba(244, 241, 234, .10) !important;
  border-color: rgba(244, 241, 234, .18) !important;
  color: var(--vmc-text) !important;
  box-shadow: none !important;
}

html[data-vmc-theme="dark"] #ez-toc-container a::before,
html[data-vmc-theme="dark"] #ez-toc-container a.ez-toc-link::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container a::before {
  background: var(--vmc-muted) !important;
  opacity: .75 !important;
}

html[data-vmc-theme="dark"] #ez-toc-container a:hover::before,
html[data-vmc-theme="dark"] #ez-toc-container a:focus::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container a:hover::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container a:focus::before {
  background: var(--vmc-text) !important;
  opacity: 1 !important;
}

/* V20.5 - Obfuscation partage, ajustements mobile/footer et correction numéros sommaire dark mode. */
.vmc-share-button.vmc-share-open {
  cursor: pointer;
}

@media (max-width: 640px) {
  .vmc-site-title {
    font-size: clamp(1rem, 4.9vw, 1.22rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -.035em !important;
    max-width: 100% !important;
    overflow-wrap: anywhere;
  }

  .vmc-brand img,
  .vmc-brand .custom-logo {
    max-width: min(168px, 100%) !important;
    height: auto !important;
  }
}

.vmc-footer-nav ul,
.vmc-footer-nav .menu {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  justify-content: flex-end;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}

.vmc-footer-nav a {
  font-size: clamp(.72rem, .9vw, .82rem) !important;
  line-height: 1.15 !important;
  letter-spacing: -.01em;
  color: var(--vmc-muted);
  text-decoration: none;
}

.vmc-footer-nav a:hover,
.vmc-footer-nav a:focus-visible {
  color: var(--vmc-text);
}

@media (max-width: 640px) {
  .vmc-footer-inner {
    gap: 14px !important;
  }

  .vmc-footer-nav ul,
  .vmc-footer-nav .menu {
    justify-content: flex-start;
    gap: 7px 12px;
  }

  .vmc-footer-nav a {
    font-size: .72rem !important;
  }
}

html[data-vmc-theme="dark"] #ez-toc-container.counter-hierarchy a::before,
html[data-vmc-theme="dark"] #ez-toc-container.ez-toc-counter a::before,
html[data-vmc-theme="dark"] #ez-toc-container .ez-toc-list-level-1 > li > a::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container.counter-hierarchy a::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container.ez-toc-counter a::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container .ez-toc-list-level-1 > li > a::before {
  background: rgba(244, 241, 234, .14) !important;
  border: 1px solid rgba(244, 241, 234, .18) !important;
  color: #f4f1ea !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

html[data-vmc-theme="dark"] #ez-toc-container.counter-hierarchy a:hover::before,
html[data-vmc-theme="dark"] #ez-toc-container.ez-toc-counter a:hover::before,
html[data-vmc-theme="dark"] #ez-toc-container.counter-hierarchy a:focus::before,
html[data-vmc-theme="dark"] #ez-toc-container.ez-toc-counter a:focus::before,
html[data-vmc-theme="dark"] #ez-toc-container .ez-toc-list-level-1 > li > a:hover::before,
html[data-vmc-theme="dark"] #ez-toc-container .ez-toc-list-level-1 > li > a:focus::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container.counter-hierarchy a:hover::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container.ez-toc-counter a:hover::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container.counter-hierarchy a:focus::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container.ez-toc-counter a:focus::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container .ez-toc-list-level-1 > li > a:hover::before,
html[data-vmc-theme="dark"] .vmc-content #ez-toc-container .ez-toc-list-level-1 > li > a:focus::before {
  background: #f4f1ea !important;
  border-color: #f4f1ea !important;
  color: #111319 !important;
}

/* V20.3 - Header mobile : titre du site plus compact pour éviter le retour à la ligne. */
@media (max-width: 760px) {
  .vmc-site-title {
    font-size: clamp(.98rem, 4.4vw, 1.12rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -.035em;
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
  }
}

@media (max-width: 420px) {
  .vmc-site-title {
    font-size: .98rem !important;
  }
}

/* V20.5 - Header mobile : titre entier sur une seule ligne, sans troncature. */
@media (max-width: 760px) {
  .vmc-header-inner {
    min-width: 0;
    gap: 8px !important;
  }

  .vmc-brand {
    flex: 1 1 auto;
    min-width: 0 !important;
    max-width: 100%;
  }

  .vmc-site-title {
    display: block;
    width: max-content;
    max-width: 100%;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    font-size: var(--vmc-mobile-title-size, clamp(.82rem, 3.85vw, 1.08rem)) !important;
  }

  .vmc-menu-toggle,
  .vmc-header-actions {
    flex: 0 0 auto;
  }

  .vmc-menu-toggle {
    max-width: 78px;
  }
}

@media (max-width: 420px) {
  .vmc-header-inner {
    gap: 6px !important;
  }

  .vmc-site-title {
    font-size: var(--vmc-mobile-title-size, clamp(.72rem, 3.55vw, .96rem)) !important;
  }

  .vmc-menu-toggle {
    padding-inline: 11px !important;
  }
}

@media (max-width: 360px) {
  .vmc-site-title {
    letter-spacing: -.055em;
    font-size: var(--vmc-mobile-title-size, clamp(.64rem, 3.35vw, .9rem)) !important;
  }
}

/* V1.0.41 - Signature d'article sans avatar, avec biographie discrète. */
.vmc-byline .vmc-author-name a {
  color: var(--vmc-text);
  font-weight: inherit;
}

.vmc-byline .vmc-author-name a:hover {
  color: var(--vmc-text);
  text-decoration: underline;
  text-underline-offset: .18em;
}
.vmc-byline .vmc-author-name a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

/* Comments */

.vmc-comments,
.vmc-comments input,
.vmc-comments textarea,
.vmc-comments button {
  font-family: inherit;
}

.vmc-comment-form-wrap .comment-reply-title small {
  display: inline-flex;
  margin-left: 10px;
  vertical-align: middle;
  font-family: inherit;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: 0;
}

.vmc-comment-form-wrap .comment-reply-title small a {
  color: var(--vmc-muted);
  text-decoration: none;
}

.vmc-comment-form-wrap .comment-reply-title small a:hover { color: var(--vmc-text); }

html[data-vmc-theme="dark"] .vmc-comment-list .reply a:hover,
html[data-vmc-theme="dark"] .vmc-comment-list .reply a:focus-visible,
html[data-vmc-theme="dark"] .vmc-comments .comment-reply-link:hover,
html[data-vmc-theme="dark"] .vmc-comments .comment-reply-link:focus-visible {
  background: var(--vmc-bg);
  border-color: rgba(255, 255, 255, .24);
}

.vmc-comments {
  margin-top: 0;
  padding: clamp(24px, 4vw, 38px);
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
  box-shadow: var(--vmc-shadow);
}

.vmc-comments-title,
.vmc-comment-form-wrap .comment-reply-title {
  display: block;
  margin: 0;
  color: var(--vmc-text);
  font-family: var(--vmc-display, var(--display, Inter, system-ui, sans-serif));
  font-size: clamp(1.45rem, 2.35vw, 2.25rem);
  font-weight: 850;
  line-height: 1.08;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.vmc-comment-list {
  margin: 26px 0 32px;
  padding: 0;
  list-style: none;
}

.vmc-comment-list .children {
  margin: 18px 0 0 clamp(12px, 4vw, 38px);
  padding: 0;
  list-style: none;
}

.vmc-comment-list .comment-body {
  position: relative;
  margin-bottom: 16px;
  padding: 20px;
  border: 1px solid var(--vmc-border);
  border-radius: calc(var(--vmc-radius) * .75);
  background: var(--vmc-bg);
}

.vmc-comment-list .comment-meta {
  margin-bottom: 12px;
  font-size: .86rem;
  line-height: 1.45;
}

.vmc-comment-list .comment-author {
  color: var(--vmc-text);
  font-weight: 800;
}

.vmc-comment-list .comment-author .says { display: none; }
.vmc-comment-list .comment-metadata { margin-top: 3px; color: var(--vmc-muted); }
.vmc-comment-list .comment-metadata a { color: inherit; text-decoration: none; }
.vmc-comment-list .comment-content { color: var(--vmc-text); line-height: 1.65; }
.vmc-comment-list .comment-content > :last-child { margin-bottom: 0; }
.vmc-comment-list .reply { margin-top: 12px; }

.vmc-comment-list .reply a,
.vmc-comments .comment-reply-link {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  font-family: inherit;
  font-size: .76rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
  opacity: 1;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vmc-comment-list .reply a:hover,
.vmc-comment-list .reply a:focus-visible,
.vmc-comments .comment-reply-link:hover,
.vmc-comments .comment-reply-link:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .22);
  color: var(--vmc-text);
  box-shadow: 0 6px 18px rgba(23, 21, 18, .07);
  transform: translateY(-1px);
}

.vmc-comment-list .reply a:focus-visible,
.vmc-comments .comment-reply-link:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-comment-list .comment-edit-link {
  color: var(--vmc-muted);
  font-size: .76rem;
  font-weight: 650;
  text-decoration: none;
}

.vmc-comment-list .comment-edit-link:hover { color: var(--vmc-text); }


.vmc-comment-form-wrap {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.vmc-comment-form-wrap .comment-notes,
.vmc-comment-form-wrap .logged-in-as,
.vmc-comments-closed {
  margin: 9px 0 22px;
  color: var(--vmc-muted);
  font-size: .9rem;
  line-height: 1.55;
}

.vmc-comment-form p { margin: 0 0 18px; }
.vmc-comment-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--vmc-text);
  font-size: .9rem;
  font-weight: 800;
}

.vmc-comment-form input[type="text"],
.vmc-comment-form input[type="email"],
.vmc-comment-form input[type="url"],
.vmc-comment-form textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--vmc-border);
  border-radius: 14px;
  background: var(--vmc-bg);
  color: var(--vmc-text);
  font: inherit;
  line-height: 1.55;
  padding: 13px 15px;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.vmc-comment-form textarea { min-height: 150px; resize: vertical; }
.vmc-comment-form input:focus,
.vmc-comment-form textarea:focus {
  outline: none;
  border-color: var(--vmc-text);
  box-shadow: 0 0 0 3px rgba(23, 21, 18, .08);
}

.vmc-comment-form .comment-form-cookies-consent {
  display: flex;
  align-items: flex-start;
  gap: 9px;
}
.vmc-comment-form .comment-form-cookies-consent input { margin-top: .25em; }
.vmc-comment-form .comment-form-cookies-consent label { margin: 0; color: var(--vmc-muted); font-weight: 500; }

.vmc-comment-form .form-submit { margin-bottom: 0; }
.vmc-comment-form .submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 11px 18px;
  border: 0;
  border-radius: 999px;
  background: var(--vmc-text);
  color: var(--vmc-bg);
  font: inherit;
  font-size: .9rem;
  font-weight: 800;
  cursor: pointer;
  transition: opacity .2s ease, transform .2s ease;
}
.vmc-comment-form .submit:hover { opacity: .86; transform: translateY(-1px); }
.vmc-comment-form .required { color: #b42318; }
.vmc-comments .navigation { margin-top: 22px; }
.vmc-comments .nav-links { display: flex; justify-content: space-between; gap: 16px; }
.vmc-comments .nav-links a { color: var(--vmc-text); font-weight: 800; }

@media (max-width: 640px) {
  .vmc-comments { padding: 20px 16px; border-radius: 18px; }
  .vmc-comment-list .comment-body { padding: 16px; }
  .vmc-comment-list .children { margin-left: 12px; }
  .vmc-comment-form .submit { width: 100%; }
}

/* V1.0.45 - Bloc auteur mis en avant dans le langage visuel des commentaires. */
.vmc-post-content-meta .vmc-byline {
  margin-top: 24px;
  padding: clamp(20px, 3vw, 28px);
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
  box-shadow: var(--vmc-shadow);
}

.vmc-post-content-meta .vmc-byline-author {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: .38em;
  color: var(--vmc-text);
  font-family: var(--vmc-display, var(--display, Inter, system-ui, sans-serif));
  font-size: clamp(1.08rem, 1.6vw, 1.32rem);
  line-height: 1.2;
  letter-spacing: -.02em;
}

.vmc-post-content-meta .vmc-byline-label {
  color: var(--vmc-muted);
  font-weight: 650;
}

.vmc-post-content-meta .vmc-byline .vmc-author-name {
  color: var(--vmc-text);
  font-weight: 850;
}

.vmc-post-content-meta .vmc-author-bio {
  margin-top: 12px;
  max-width: 780px;
  color: var(--vmc-muted);
  font-family: inherit;
  font-size: .94rem;
  font-weight: 400;
  line-height: 1.65;
}

@media (max-width: 640px) {
  .vmc-post-content-meta .vmc-byline {
    padding: 20px;
  }
}


/* V1.0.46 - Separateur discret avant le bloc commentaires. */
.vmc-comments-separator {
  margin-top: 32px;
  padding-top: 32px;
  border-top: 1px solid var(--vmc-border);
}

@media (max-width: 640px) {
  .vmc-comments-separator {
    margin-top: 24px;
    padding-top: 24px;
  }
}


/* V1.0.47 - Le separateur gere seul l espacement avant les commentaires. */

/* Version 1.0.61 - Invitation Google Sources placée vers le milieu des sections H2. */
.vmc-reading-gate {
  display: block;
  margin: 40px 0;
  padding: clamp(22px, 4vw, 32px);
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
  box-shadow: var(--vmc-shadow);
  text-align: center;
}

.vmc-reading-gate-title {
  margin: 0;
  color: var(--vmc-text);
  font-family: var(--vmc-display, var(--display, Inter, system-ui, sans-serif));
  font-size: clamp(1.24rem, 2vw, 1.55rem);
  font-weight: 850;
  line-height: 1.2;
  letter-spacing: -.025em;
}

.vmc-reading-gate-copy {
  max-width: 680px;
  margin: 10px auto 0;
  color: var(--vmc-muted);
  font-size: .96em;
  line-height: 1.6;
}

.vmc-reading-gate-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 20px;
}

.vmc-reading-gate-button,
.vmc-content .vmc-reading-gate-button {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 44px;
  padding: 10px 17px;
  border: 1px solid var(--vmc-text);
  border-radius: 999px;
  background: var(--vmc-text);
  color: var(--vmc-bg);
  font: inherit;
  font-size: .88rem;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: border-color .18s ease, box-shadow .18s ease, opacity .18s ease, transform .18s ease;
}

.vmc-reading-gate-button:hover,
.vmc-reading-gate-button:focus-visible {
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(17, 24, 39, .1);
}

.vmc-reading-gate-button:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-reading-gate-google-icon {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  padding: 2px;
  border-radius: 999px;
  background: #fff;
}

/* Le texte des entrées du sommaire reprend la taille courante du contenu. */
#ez-toc-container ul,
#ez-toc-container .ez-toc-list,
.vmc-content #ez-toc-container ul,
.vmc-content #ez-toc-container ol,
#ez-toc-container a,
#ez-toc-container a.ez-toc-link,
.vmc-content #ez-toc-container a {
  font-size: inherit;
}

@media (max-width: 640px) {
  .vmc-reading-gate {
    margin: 34px 0;
    padding: 22px 16px;
    border-radius: 18px;
  }

  .vmc-reading-gate-button,
  .vmc-content .vmc-reading-gate-button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vmc-reading-gate-button {
    transition: none;
  }
}


/* Version 1.0.51 - Interactions accessibles et date de mise a jour. */
.vmc-header-search-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.vmc-header-search-inner .vmc-search-form {
  flex: 1 1 auto;
}

.vmc-header-search-close,
.vmc-error-report-close {
  appearance: none;
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  padding: 0;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  font: inherit;
  font-size: 1.45rem;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.vmc-header-search-close:hover,
.vmc-header-search-close:focus-visible,
.vmc-error-report-close:hover,
.vmc-error-report-close:focus-visible {
  background: #fff;
  border-color: rgba(23, 21, 18, .24);
  box-shadow: 0 8px 22px rgba(23, 21, 18, .08);
  transform: translateY(-1px);
}

.vmc-header-search-close:focus-visible,
.vmc-error-report-close:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 2px;
}

.vmc-error-report-popup {
  padding-right: 56px;
}

.vmc-error-report-close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 34px;
  height: 34px;
  font-size: 1.25rem;
}

.vmc-meta .vmc-meta-updated {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.vmc-meta .vmc-meta-updated::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  opacity: .55;
}

html[data-vmc-theme="dark"] .vmc-header-search-close,
html[data-vmc-theme="dark"] .vmc-error-report-close {
  background: var(--vmc-surface);
  color: var(--vmc-text);
  border-color: var(--vmc-border);
}

html[data-vmc-theme="dark"] .vmc-header-search-close:hover,
html[data-vmc-theme="dark"] .vmc-header-search-close:focus-visible,
html[data-vmc-theme="dark"] .vmc-error-report-close:hover,
html[data-vmc-theme="dark"] .vmc-error-report-close:focus-visible {
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .22);
}

@media (max-width: 760px) {
  .vmc-header-search-inner {
    align-items: flex-start;
    gap: 8px;
  }

  .vmc-header-search-close {
    width: 38px;
    height: 38px;
    flex-basis: 38px;
  }

  .vmc-error-report-popup {
    padding-right: 50px;
  }

  .vmc-meta .vmc-meta-updated {
    white-space: normal;
  }
}

@media (prefers-reduced-motion: reduce) {
  .vmc-menu-toggle,
  .vmc-primary-nav,
  .vmc-primary-nav .sub-menu,
  .vmc-search-toggle,
  .vmc-header-search,
  .vmc-header-search-close,
  .vmc-theme-toggle,
  .vmc-share-button,
  .vmc-error-report-trigger,
  .vmc-error-report-popup,
  .vmc-error-report-submit,
  .vmc-error-report-cancel,
  .vmc-error-report-close,
  .vmc-reading-gate-button {
    transition: none !important;
    animation: none !important;
  }
}

/* Version 1.0.53 - Séparateurs conditionnels des métadonnées. */
.vmc-header-meta .vmc-meta-item-group {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
}

.vmc-header-meta .vmc-meta-separator {
  display: inline-block;
  width: 4px;
  height: 4px;
  flex: 0 0 4px;
  border-radius: 50%;
  background: currentColor;
  opacity: .55;
}

.vmc-header-meta .vmc-meta-reading {
  margin-left: 0;
}

.vmc-header-meta .vmc-meta-reading::before,
.vmc-header-meta .vmc-meta-updated::before {
  display: none;
  content: none;
}

/* Version 1.0.56 - Bloc Google Sources en mode sombre et tableaux mobiles défilables. */
html[data-vmc-theme="dark"] .vmc-reading-gate {
  background: linear-gradient(135deg, rgba(32, 36, 44, .98), rgba(18, 20, 26, .98));
  border-color: rgba(244, 241, 234, .16);
  color: var(--vmc-text);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .30);
}

html[data-vmc-theme="dark"] .vmc-reading-gate-title {
  color: var(--vmc-text);
}

html[data-vmc-theme="dark"] .vmc-reading-gate-copy {
  color: var(--vmc-muted);
}

html[data-vmc-theme="dark"] .vmc-reading-gate-google,
html[data-vmc-theme="dark"] .vmc-content .vmc-reading-gate-google {
  background: #f4f1ea;
  border-color: #f4f1ea;
  color: #111319;
}


html[data-vmc-theme="dark"] .vmc-reading-gate-google:hover,
html[data-vmc-theme="dark"] .vmc-reading-gate-google:focus-visible {
  border-color: rgba(244, 241, 234, .34);
  box-shadow: 0 10px 26px rgba(0, 0, 0, .34);
}

html[data-vmc-theme="dark"] .vmc-reading-gate-button:focus-visible {
  outline-color: rgba(244, 241, 234, .34);
}

.vmc-content,
.vmc-single,
.vmc-single-main {
  min-width: 0;
  max-width: 100%;
}

.vmc-content .vmc-table-scroll {
  box-sizing: border-box;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}

.vmc-content .vmc-table-scroll:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .16);
  outline-offset: 3px;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-table-scroll:focus-visible {
  outline-color: rgba(244, 241, 234, .28);
}

@media (max-width: 720px) {
  .vmc-content .wp-block-table.vmc-table-scroll,
  .vmc-content div.vmc-table-scroll {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .vmc-content .vmc-table-scroll > table,
  .vmc-content .wp-block-table.vmc-table-scroll > table {
    width: max-content;
    min-width: 100%;
    max-width: none;
  }

  .vmc-content .vmc-table-scroll.is-scrollable {
    padding-bottom: 8px;
  }
}


/* Version 1.0.57 - Contraste du libelle Google Sources en mode sombre. */
html[data-vmc-theme="dark"] .vmc-reading-gate a.vmc-reading-gate-google,
html[data-vmc-theme="dark"] .vmc-content .vmc-reading-gate a.vmc-reading-gate-google,
html[data-vmc-theme="dark"] .vmc-reading-gate a.vmc-reading-gate-google:link,
html[data-vmc-theme="dark"] .vmc-reading-gate a.vmc-reading-gate-google:visited,
html[data-vmc-theme="dark"] .vmc-reading-gate a.vmc-reading-gate-google:hover,
html[data-vmc-theme="dark"] .vmc-reading-gate a.vmc-reading-gate-google:focus,
html[data-vmc-theme="dark"] .vmc-reading-gate a.vmc-reading-gate-google:focus-visible {
  color: #111319 !important;
  -webkit-text-fill-color: #111319 !important;
}

html[data-vmc-theme="dark"] .vmc-reading-gate a.vmc-reading-gate-google span {
  color: #111319 !important;
  -webkit-text-fill-color: #111319 !important;
}

/* Version 1.0.63 - Répertoire Auteurs. */
.vmc-authors-directory-header {
  padding-top: clamp(48px, 8vw, 92px);
  margin-bottom: 0;
  text-align: center;
}

.vmc-authors-directory-header h1 {
  margin-bottom: 18px;
}

.vmc-authors-intro {
  max-width: 760px;
  margin: 0 auto;
  color: var(--vmc-muted);
  font-size: clamp(1rem, 1.4vw, 1.12rem);
  line-height: 1.7;
}

.vmc-authors-intro > :last-child {
  margin-bottom: 0;
}

.vmc-authors-section {
  padding-top: clamp(34px, 5vw, 58px);
}

.vmc-authors-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2.4vw, 28px);
}

.vmc-author-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(20px, 2.4vw, 28px);
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
  box-shadow: 0 14px 34px rgba(23, 21, 18, .05);
}

.vmc-author-card-avatar {
  margin-bottom: 18px;
}

.vmc-author-card-avatar img {
  display: block;
  width: 88px;
  height: 88px;
  border-radius: 50%;
  object-fit: cover;
}

.vmc-author-card-avatar a {
  display: inline-block;
  border-radius: 50%;
}

.vmc-author-card-title {
  margin: 0;
  font-size: clamp(1.28rem, 2vw, 1.62rem);
  line-height: 1.15;
  letter-spacing: -.025em;
}

.vmc-author-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
}

.vmc-author-card-bio {
  margin-top: 0;
  color: var(--vmc-muted);
  font-size: .95rem;
  line-height: 1.65;
}

.vmc-author-card-bio > :last-child {
  margin-bottom: 0;
}

.vmc-author-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin-top: 0;
  color: var(--vmc-muted);
  font-size: .82rem;
  font-weight: 750;
}

.vmc-author-card-meta a {
  color: var(--vmc-text);
  text-underline-offset: .16em;
}

/* Le nom de l'auteur porte le lien vers la fiche ; aucun bouton supplementaire. */
.vmc-author-card-title a {
  color: inherit;
  text-decoration: none;
  text-underline-offset: .16em;
}
.vmc-author-card-title a:hover {
  color: var(--vmc-text);
  text-decoration: underline;
}
.vmc-author-card-title a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
  border-radius: 2px;
}

html[data-vmc-theme="dark"] .vmc-author-card {
  box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
}

@media (max-width: 900px) {
  .vmc-authors-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .vmc-authors-directory-header {
    padding-top: 42px;
  }

  .vmc-authors-grid {
    grid-template-columns: 1fr;
  }

  .vmc-author-card {
    padding: 20px;
  }

  /* Les groupes peuvent revenir à la ligne sans couper une date ni laisser un séparateur orphelin. */
  .vmc-single-header .vmc-header-meta {
    gap: 6px 12px;
  }

  .vmc-single-header .vmc-header-meta .vmc-meta-date,
  .vmc-single-header .vmc-header-meta .vmc-meta-item-group {
    white-space: nowrap;
  }

  .vmc-single-header .vmc-header-meta .vmc-meta-separator {
    display: none;
  }
}

/* Version 1.0.67 - Surface editoriale neutre, arrondie et sans effet de carte empilee. */
.vmc-page {
  padding-top: clamp(30px, 5vw, 64px);
}

.vmc-page-header {
  padding-top: 0;
  text-align: center;
}

.vmc-page-header h1 {
  margin-inline: auto;
}

.vmc-page > .vmc-content {
  margin-top: 0;
}

/*
 * Le corps reste visuellement distinct du fond du site, mais avec une teinte
 * neutre et sans ombre. La bordure et le rayon reprennent le langage des autres
 * composants sans concurrencer le resume ou le sommaire, plus eleves visuellement.
 */
.vmc-single .vmc-content.vmc-container-narrow,
.vmc-page > .vmc-content {
  box-sizing: border-box;
  padding: clamp(22px, 3vw, 34px) clamp(20px, 3.2vw, 34px);
  border: 1px solid rgba(23, 21, 18, .085);
  border-radius: 22px;
  background: #f4f5f5;
  box-shadow: none;
}

html[data-vmc-theme="dark"] .vmc-single .vmc-content.vmc-container-narrow,
html[data-vmc-theme="dark"] .vmc-page > .vmc-content {
  border-color: rgba(244, 241, 234, .11);
  background: #15171c;
}

/* La page Auteurs conserve son espace specifique sous l'en-tete du site. */
.vmc-authors-directory-header {
  padding-top: clamp(48px, 8vw, 92px);
}

@media (max-width: 640px) {
  .vmc-page {
    padding-top: 28px;
  }

  .vmc-single .vmc-content.vmc-container-narrow,
  .vmc-page > .vmc-content {
    padding: 20px 14px;
    border-radius: 18px;
  }

  .vmc-authors-directory-header {
    padding-top: 42px;
  }
}

/* Version 1.0.68 - Teinte claire rechauffee et mieux integree au fond du site. */
.vmc-single .vmc-content.vmc-container-narrow,
.vmc-page > .vmc-content {
  background: #f5f4f2;
}

/* Le mode sombre conserve le contraste valide en 1.0.67. */
html[data-vmc-theme="dark"] .vmc-single .vmc-content.vmc-container-narrow,
html[data-vmc-theme="dark"] .vmc-page > .vmc-content {
  background: #15171c;
}


/* Version 1.0.70 - Homepage : toutes les rubriques ont la meme importance visuelle. */
.vmc-home .vmc-category-sections-full {
  gap: 0;
  padding-top: clamp(8px, 1.5vw, 16px);
}

/* Chaque rubrique reste contenue : aucun bandeau de fond pleine largeur. */
.vmc-home .vmc-category-block-wide {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.vmc-home .vmc-category-block-wide > .vmc-container {
  box-sizing: border-box;
}

/* Traitement identique pour toutes les rubriques de l'accueil. */
.vmc-home .vmc-category-block-panel > .vmc-container {
  margin-bottom: clamp(18px, 2.8vw, 28px);
  padding: clamp(22px, 3vw, 30px);
  border: 1px solid rgba(23, 21, 18, .08);
  border-radius: 22px;
  background: #f5f4f2;
}

.vmc-home .vmc-category-block-panel .vmc-category-block-header {
  border-bottom-color: rgba(23, 21, 18, .075);
}

html[data-vmc-theme="dark"] .vmc-home .vmc-category-block-panel > .vmc-container {
  border-color: rgba(244, 241, 234, .11);
  background: #15171c;
}

html[data-vmc-theme="dark"] .vmc-home .vmc-category-block-panel .vmc-category-block-header {
  border-bottom-color: rgba(244, 241, 234, .09);
}

@media (max-width: 640px) {
  .vmc-home .vmc-category-sections-full {
    padding-top: 4px;
  }

  .vmc-home .vmc-category-block-panel > .vmc-container {
    width: min(100% - 24px, 1180px);
    margin-bottom: 16px;
    padding: 18px 14px;
    border-radius: 18px;
  }
}

/* Version 1.0.71 - Ajustements mobiles : surfaces plus legeres et largeur utile accrue. */
@media (max-width: 640px) {
  /*
   * Sur un article/page tres long, la surface ne doit pas devenir une colonne
   * grisee dominante. On la rapproche donc du fond general uniquement sur mobile,
   * tout en conservant la bordure et la hierarchie avec les blocs internes.
   */
  .vmc-single .vmc-content.vmc-container-narrow,
  .vmc-page > .vmc-content {
    border-radius: 16px;
    background: #f8f7f5;
  }

  html[data-vmc-theme="dark"] .vmc-single .vmc-content.vmc-container-narrow,
  html[data-vmc-theme="dark"] .vmc-page > .vmc-content {
    background: #13151a;
  }

  /*
   * Les rubriques de l'accueil gardent toutes le meme traitement, mais utilisent
   * un peu mieux la largeur disponible sur les petits ecrans.
   */
  .vmc-home .vmc-category-block-panel > .vmc-container {
    width: min(100% - 20px, 1180px);
    padding: 16px 10px;
    border-radius: 16px;
  }
}

/* Version 1.0.72 - Harmonisation mobile et distinction du bloc resume. */
/*
 * Le resume devient un callout editorial plutot qu'une seconde carte de sommaire :
 * fond blanc net, pas d'ombre et filet sombre lateral.
 */
#resume_article,
.vmc-content #resume_article {
  position: relative;
  padding: 22px 24px 20px 26px;
  border: 1px solid rgba(23, 21, 18, .10);
  border-left: 4px solid #171512;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: none;
}

#resume_article::before,
.vmc-content #resume_article::before {
  display: block;
  margin: 0 0 13px;
  color: #171512;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .075em;
  line-height: 1.2;
  text-transform: uppercase;
}

html[data-vmc-theme="dark"] #resume_article,
html[data-vmc-theme="dark"] .vmc-content #resume_article {
  border-color: rgba(244, 241, 234, .14) !important;
  border-left-color: rgba(244, 241, 234, .88) !important;
  background: #1b1e24 !important;
  color: var(--vmc-text) !important;
  box-shadow: none !important;
}

html[data-vmc-theme="dark"] #resume_article::before,
html[data-vmc-theme="dark"] .vmc-content #resume_article::before {
  color: var(--vmc-text) !important;
}

@media (max-width: 640px) {
  /* Meme surface editoriale que sur desktop : seul le rayon reste adapte au mobile. */
  .vmc-single .vmc-content.vmc-container-narrow,
  .vmc-page > .vmc-content {
    background: #f5f4f2;
  }

  html[data-vmc-theme="dark"] .vmc-single .vmc-content.vmc-container-narrow,
  html[data-vmc-theme="dark"] .vmc-page > .vmc-content {
    background: #15171c;
  }

  /* Plus de respiration pour chaque rubrique sans perdre inutilement de largeur. */
  .vmc-home .vmc-category-block-panel > .vmc-container {
    width: min(100% - 20px, 1180px);
    margin-bottom: 20px;
    padding: 20px 14px;
    border-radius: 18px;
  }

  #resume_article,
  .vmc-content #resume_article {
    padding: 19px 16px 18px 18px;
    border-left-width: 3px;
    border-radius: 16px;
  }
}

/* Version 1.0.73 - Resume affine et header de rubrique mobile adaptatif. */
/*
 * Le resume conserve son identite editoriale sans contraste trop dur :
 * surface chaude quasi blanche et filet anthracite plus fin.
 */
#resume_article,
.vmc-content #resume_article {
  border-color: rgba(23, 21, 18, .09);
  border-left-width: 3px;
  border-left-color: #4a4742;
  background: #fbfaf8;
}

#resume_article::before,
.vmc-content #resume_article::before {
  color: #3f3c38;
}

html[data-vmc-theme="dark"] #resume_article,
html[data-vmc-theme="dark"] .vmc-content #resume_article {
  border-color: rgba(244, 241, 234, .13) !important;
  border-left-width: 3px !important;
  border-left-color: rgba(244, 241, 234, .62) !important;
  background: #1a1c21 !important;
}

html[data-vmc-theme="dark"] #resume_article::before,
html[data-vmc-theme="dark"] .vmc-content #resume_article::before {
  color: rgba(244, 241, 234, .88) !important;
}

@media (max-width: 760px) {
  /*
   * Titre a gauche et bouton a droite des que la largeur le permet.
   * flex-wrap laisse naturellement le bouton passer sur une seconde ligne
   * lorsque la combinaison titre + CTA devient trop large.
   */
  .vmc-home .vmc-category-block-wide .vmc-category-block-header {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    column-gap: 12px;
    row-gap: 10px;
  }

  .vmc-home .vmc-category-block-wide .vmc-category-block-header h2 {
    flex: 1 1 165px;
    min-width: 0;
  }

  .vmc-home .vmc-category-block-wide .vmc-category-link {
    flex: 0 0 auto;
    width: auto;
    margin-left: auto;
  }
}

@media (max-width: 640px) {
  #resume_article,
  .vmc-content #resume_article {
    border-left-width: 2px;
  }

  html[data-vmc-theme="dark"] #resume_article,
  html[data-vmc-theme="dark"] .vmc-content #resume_article {
    border-left-width: 2px !important;
  }
}

/* Version 1.0.74 - Resume editorial modernise et premier paragraphe recale. */
/*
 * Le resume gagne en presence sans devenir une seconde table des matieres :
 * carte claire, label capsule raccord avec les CTA du theme et ombre tres legere.
 */
#resume_article,
.vmc-content #resume_article {
  padding: 24px 26px 22px;
  border: 1px solid rgba(23, 21, 18, .11);
  border-left: 1px solid rgba(23, 21, 18, .11);
  border-radius: 20px;
  background: linear-gradient(145deg, #ffffff 0%, #faf8f4 100%);
  box-shadow: 0 12px 30px rgba(23, 21, 18, .065);
}

#resume_article::before,
.vmc-content #resume_article::before {
  display: inline-flex;
  align-items: center;
  width: auto;
  margin: 0 0 16px;
  padding: 7px 11px 6px;
  border-radius: 999px;
  background: #171512;
  color: #ffffff;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .07em;
  line-height: 1;
  text-transform: uppercase;
}

#resume_article ul,
.vmc-content #resume_article ul {
  margin-top: 0;
  margin-bottom: 0;
}

#resume_article li::marker,
.vmc-content #resume_article li::marker {
  color: #171512;
}

html[data-vmc-theme="dark"] #resume_article,
html[data-vmc-theme="dark"] .vmc-content #resume_article {
  border-color: rgba(244, 241, 234, .14) !important;
  border-left-width: 1px !important;
  border-left-color: rgba(244, 241, 234, .14) !important;
  background: linear-gradient(145deg, #1d2026 0%, #181a1f 100%) !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, .18) !important;
}

html[data-vmc-theme="dark"] #resume_article::before,
html[data-vmc-theme="dark"] .vmc-content #resume_article::before {
  background: #f4f1ea !important;
  color: #171512 !important;
}

html[data-vmc-theme="dark"] #resume_article li::marker,
html[data-vmc-theme="dark"] .vmc-content #resume_article li::marker {
  color: rgba(244, 241, 234, .9) !important;
}

/*
 * Le padding du conteneur empeche la marge du premier bloc de s'effondrer.
 * On neutralise donc uniquement sa marge haute : un premier paragraphe ne cree
 * plus un vide supplementaire, sans modifier les espacements internes suivants.
 */
.vmc-single .vmc-content.vmc-container-narrow > :first-child,
.vmc-page > .vmc-content > :first-child {
  margin-top: 0;
}

@media (max-width: 640px) {
  #resume_article,
  .vmc-content #resume_article {
    padding: 20px 18px 19px;
    border-radius: 17px;
  }

  #resume_article::before,
  .vmc-content #resume_article::before {
    margin-bottom: 14px;
    padding: 7px 10px 6px;
  }
}

/* Version 1.0.75 - Padding mobile du corps editorial reequilibre. */
@media (max-width: 640px) {
  /*
   * Le padding lateral gagne 2 px tandis que le vertical est legerement resserre :
   * le contenu respire de facon plus homogene sans sacrifier la largeur de lecture.
   */
  .vmc-single .vmc-content.vmc-container-narrow,
  .vmc-page > .vmc-content {
    padding: 18px 16px;
  }
}

/* Version 1.0.76 - Archives de categories et sommaire natif. */
/*
 * Les pages de categorie reprennent la surface contenue utilisee par les
 * rubriques de l'accueil : le titre devient un vrai point d'entree editorial
 * sans transformer l'entete en bandeau pleine largeur.
 */
.vmc-category-archive-header {
  padding: clamp(30px, 4.5vw, 54px) 0 0;
}

.vmc-category-archive-panel {
  box-sizing: border-box;
  padding: clamp(30px, 4vw, 44px) clamp(22px, 4vw, 42px);
  border: 1px solid rgba(23, 21, 18, .08);
  border-radius: 22px;
  background: #f5f4f2;
  text-align: center;
}

.vmc-category-archive-header .vmc-category-archive-panel h1 {
  max-width: 900px;
  margin-inline: auto;
  font-size: clamp(2.35rem, 5vw, 4.6rem);
}

.vmc-category-archive-header .vmc-archive-description {
  max-width: 760px;
  margin: 18px auto 0;
}

.vmc-category-archive-header .vmc-archive-description > :first-child {
  margin-top: 0;
}

.vmc-category-archive-header .vmc-archive-description > :last-child {
  margin-bottom: 0;
}

.category .vmc-category-archive-header + .vmc-section {
  padding-top: clamp(28px, 4vw, 40px);
}

html[data-vmc-theme="dark"] .vmc-category-archive-panel {
  border-color: rgba(244, 241, 234, .11);
  background: #15171c;
}

/*
 * Quand le sommaire natif est actif, un sommaire Easy Table of Contents encore
 * genere par le plugin reste masque. Cela evite tout doublon pendant la
 * transition, puis le plugin peut etre desactive sans changer le rendu.
 */
.vmc-native-toc-enabled #ez-toc-container {
  display: none !important;
}

.vmc-native-toc {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 34px 0 42px;
  padding: 24px 26px 22px;
  border: 1px solid rgba(23, 21, 18, .10);
  border-radius: 20px;
  background: rgba(255, 255, 255, .68);
  color: var(--vmc-text);
}

/* Le mot Sommaire reprend exactement le langage visuel du label En resume. */
.vmc-native-toc-title,
#ez-toc-container .ez-toc-title,
#ez-toc-container p.ez-toc-title {
  display: inline-flex !important;
  align-items: center;
  width: auto !important;
  margin: 0 0 16px !important;
  padding: 7px 11px 6px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #171512 !important;
  color: #ffffff !important;
  font-family: inherit !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .07em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

#ez-toc-container .ez-toc-title-container {
  margin: 0 !important;
  padding: 0 !important;
}

.vmc-native-toc-nav,
.vmc-native-toc-list {
  margin: 0;
  padding: 0;
}

.vmc-native-toc-list {
  display: grid;
  gap: 8px;
  list-style: none;
}

.vmc-native-toc-item {
  margin: 0;
  padding: 0;
}

.vmc-native-toc-item::marker {
  content: "";
}

.vmc-native-toc-item a {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
  box-sizing: border-box;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: var(--vmc-text);
  text-decoration: none;
  font-weight: 760;
  line-height: 1.45;
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}

.vmc-native-toc-index {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(23, 21, 18, .07);
  color: var(--vmc-muted);
  font-size: .72rem;
  font-weight: 900;
  line-height: 1;
}

.vmc-native-toc-dot {
  flex: 0 0 6px;
  width: 6px;
  height: 6px;
  margin: .65em 9px 0 9px;
  border-radius: 999px;
  background: var(--vmc-muted);
  opacity: .55;
}

.vmc-native-toc-level-3 a {
  padding-left: 22px;
  color: var(--vmc-muted);
  font-weight: 700;
}

.vmc-native-toc-item a:hover,
.vmc-native-toc-item a:focus {
  border-color: var(--vmc-border);
  background: #ffffff;
  color: var(--vmc-text);
  outline: none;
  transform: translateX(2px);
}

.vmc-native-toc-item a:hover .vmc-native-toc-index,
.vmc-native-toc-item a:focus .vmc-native-toc-index {
  background: var(--vmc-text);
  color: #ffffff;
}

.vmc-content h2[id],
.vmc-content h3[id] {
  scroll-margin-top: 120px;
}

html[data-vmc-theme="dark"] .vmc-native-toc {
  border-color: rgba(244, 241, 234, .13);
  background: rgba(29, 32, 38, .72);
}

html[data-vmc-theme="dark"] .vmc-native-toc-title,
html[data-vmc-theme="dark"] #ez-toc-container .ez-toc-title,
html[data-vmc-theme="dark"] #ez-toc-container p.ez-toc-title {
  background: #f4f1ea !important;
  color: #171512 !important;
}

html[data-vmc-theme="dark"] .vmc-native-toc-index {
  background: rgba(244, 241, 234, .09);
  color: rgba(244, 241, 234, .72);
}

html[data-vmc-theme="dark"] .vmc-native-toc-item a:hover,
html[data-vmc-theme="dark"] .vmc-native-toc-item a:focus {
  border-color: rgba(244, 241, 234, .12);
  background: rgba(244, 241, 234, .06);
  color: var(--vmc-text);
}

html[data-vmc-theme="dark"] .vmc-native-toc-item a:hover .vmc-native-toc-index,
html[data-vmc-theme="dark"] .vmc-native-toc-item a:focus .vmc-native-toc-index {
  background: #f4f1ea;
  color: #171512;
}

@media (max-width: 640px) {
  .vmc-category-archive-header {
    padding-top: 22px;
  }

  .vmc-category-archive-header > .vmc-container {
    width: min(100% - 24px, 1180px);
  }

  .vmc-category-archive-panel {
    padding: 26px 16px;
    border-radius: 18px;
  }

  .vmc-category-archive-header .vmc-category-archive-panel h1 {
    font-size: clamp(2rem, 11vw, 3rem);
    line-height: .98;
  }

  .vmc-category-archive-header .vmc-archive-description {
    margin-top: 14px;
  }

  .category .vmc-category-archive-header + .vmc-section {
    padding-top: 26px;
  }

  .vmc-native-toc {
    margin: 26px 0 34px;
    padding: 20px 16px 18px;
    border-radius: 17px;
  }

  .vmc-native-toc-title,
  #ez-toc-container .ez-toc-title,
  #ez-toc-container p.ez-toc-title {
    margin-bottom: 14px !important;
    padding: 7px 10px 6px !important;
  }

  .vmc-native-toc-item a {
    padding: 9px 8px;
  }

  .vmc-native-toc-level-3 a {
    padding-left: 14px;
  }
}

/* Version 1.0.77 - Categorie recentree sur le contenu et sommaire compacte. */
/*
 * Le H1 de categorie reste libre et centre. La surface visuelle est appliquee
 * au contenu de la rubrique (grille + pagination), comme sur les sections de
 * l'accueil, plutot qu'au titre lui-meme.
 */
.vmc-category-archive-header {
  padding: clamp(34px, 5vw, 58px) 0 clamp(24px, 3.6vw, 38px);
  text-align: center;
}

.vmc-category-archive-header > .vmc-container {
  width: min(100% - 32px, 1180px);
}

.vmc-category-archive-header h1 {
  max-width: 900px;
  margin: 0 auto;
  font-size: clamp(2.35rem, 5vw, 4.6rem);
}

.vmc-category-archive-header .vmc-archive-description {
  max-width: 760px;
  margin: 16px auto 0;
}

.category .vmc-category-archive-header + .vmc-category-archive-content {
  padding-top: 0;
}

.category .vmc-category-archive-content > .vmc-container {
  box-sizing: border-box;
  padding: clamp(22px, 3vw, 30px);
  border: 1px solid rgba(23, 21, 18, .08);
  border-radius: 22px;
  background: #f5f4f2;
}

html[data-vmc-theme="dark"] .category .vmc-category-archive-content > .vmc-container {
  border-color: rgba(244, 241, 234, .11);
  background: #15171c;
}

/*
 * Le sommaire conserve la meme capsule que le resume, mais la carte et les
 * lignes sont volontairement plus compactes pour ne pas dominer le contenu.
 */
.vmc-native-toc {
  margin: 30px 0 36px;
  padding: 20px 22px 18px;
  border-radius: 18px;
}

.vmc-native-toc-title,
#ez-toc-container .ez-toc-title,
#ez-toc-container p.ez-toc-title {
  margin-bottom: 12px !important;
}

/* Ajoute le deux-points aussi au titre du plugin pendant la transition. */
#ez-toc-container .ez-toc-title::after,
#ez-toc-container p.ez-toc-title::after {
  content: ":";
}

.vmc-native-toc-list {
  gap: 4px;
}

.vmc-native-toc-item a {
  gap: 9px;
  padding: 6px 8px;
  border-radius: 11px;
  line-height: 1.38;
}

.vmc-native-toc-level-3 a {
  padding-left: 16px;
}

@media (max-width: 640px) {
  .vmc-category-archive-header {
    padding: 26px 0 22px;
  }

  .vmc-category-archive-header > .vmc-container {
    width: min(100% - 20px, 1180px);
  }

  .vmc-category-archive-header h1 {
    font-size: clamp(2rem, 11vw, 3rem);
    line-height: .98;
  }

  .category .vmc-category-archive-content > .vmc-container {
    width: min(100% - 20px, 1180px);
    padding: 20px 14px;
    border-radius: 18px;
  }

  .vmc-native-toc {
    margin: 24px 0 30px;
    padding: 17px 14px 15px;
    border-radius: 16px;
  }

  .vmc-native-toc-title,
  #ez-toc-container .ez-toc-title,
  #ez-toc-container p.ez-toc-title {
    margin-bottom: 11px !important;
  }

  .vmc-native-toc-item a {
    padding: 6px 5px;
  }

  .vmc-native-toc-level-3 a {
    padding-left: 10px;
  }
}



/* Version 1.0.78 - Sommaire volontairement secondaire face au resume. */
/*
 * La capsule conserve le meme langage que « En resume : », mais la navigation
 * devient plus dense et plus petite : le resume reste le premier bloc a lire,
 * le sommaire sert avant tout de repere de navigation.
 */
.vmc-native-toc {
  margin: 24px 0 30px;
  padding: 16px 18px 14px;
  border-radius: 16px;
  background: rgba(255, 255, 255, .52);
}

.vmc-native-toc-title,
#ez-toc-container .ez-toc-title,
#ez-toc-container p.ez-toc-title {
  margin-bottom: 9px !important;
}

.vmc-native-toc-list {
  gap: 1px;
}

.vmc-native-toc-item a {
  gap: 8px;
  min-height: 0;
  padding: 4px 5px;
  border-radius: 9px;
  font-size: .88rem;
  font-weight: 690;
  line-height: 1.3;
}

.vmc-native-toc-index {
  flex-basis: 20px;
  width: 20px;
  height: 20px;
  font-size: .64rem;
}

.vmc-native-toc-dot {
  flex-basis: 5px;
  width: 5px;
  height: 5px;
  margin: .55em 7px 0 7px;
}

.vmc-native-toc-level-3 a {
  padding-left: 11px;
  font-size: .82rem;
  font-weight: 620;
  line-height: 1.28;
}

html[data-vmc-theme="dark"] .vmc-native-toc {
  background: rgba(29, 32, 38, .52);
}

/* Meme hierarchie compacte si Easy Table of Contents est temporairement utilise. */
#ez-toc-container a,
#ez-toc-container a.ez-toc-link,
.vmc-content #ez-toc-container a {
  font-size: .88rem !important;
  line-height: 1.3 !important;
}

@media (max-width: 640px) {
  .vmc-native-toc {
    margin: 20px 0 25px;
    padding: 14px 11px 12px;
    border-radius: 14px;
  }

  .vmc-native-toc-title,
  #ez-toc-container .ez-toc-title,
  #ez-toc-container p.ez-toc-title {
    margin-bottom: 8px !important;
  }

  .vmc-native-toc-item a {
    gap: 7px;
    padding: 3px 3px;
    font-size: .84rem;
    line-height: 1.27;
  }

  .vmc-native-toc-index {
    flex-basis: 19px;
    width: 19px;
    height: 19px;
    font-size: .61rem;
  }

  .vmc-native-toc-level-3 a {
    padding-left: 7px;
    font-size: .79rem;
  }

  #ez-toc-container a,
  #ez-toc-container a.ez-toc-link,
  .vmc-content #ez-toc-container a {
    font-size: .84rem !important;
    line-height: 1.27 !important;
  }
}

/* Version 1.0.79 - Sommaire encore plus resserre et options admin unifiees. */
/*
 * Les regles generiques de .vmc-content ol/li sont plus specifiques que les
 * classes du sommaire. On les neutralise explicitement ici pour supprimer le
 * retrait gauche et les marges verticales residuelles du OL et de ses LI.
 */
.vmc-content .vmc-native-toc-list {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
}

.vmc-content .vmc-native-toc-item {
  margin-top: 0;
  margin-bottom: 0;
}

.vmc-content .vmc-native-toc-item a {
  padding-left: 2px;
}

.vmc-content .vmc-native-toc-level-3 a {
  padding-left: 5px;
}

@media (max-width: 640px) {
  .vmc-content .vmc-native-toc-list {
    margin-top: 0;
    margin-bottom: 0;
    padding-left: 0;
  }

  .vmc-content .vmc-native-toc-item a {
    padding-left: 1px;
  }

  .vmc-content .vmc-native-toc-level-3 a {
    padding-left: 4px;
  }
}


/* Version 1.0.80 - Derniers raffinements du sommaire et rythme des H2. */
/*
 * Le sommaire reste volontairement secondaire par rapport au resume, mais
 * retrouve un soupcon d'air entre ses lignes sans reactiver les marges des OL/LI.
 * Sa surface est aussi un peu plus legere que celle du resume.
 */
.vmc-native-toc {
  border-color: rgba(23, 21, 18, .08);
  background: rgba(255, 255, 255, .48);
  box-shadow: none;
}

.vmc-native-toc-title,
#ez-toc-container .ez-toc-title,
#ez-toc-container p.ez-toc-title {
  margin-bottom: 10px !important;
}

.vmc-native-toc-list {
  gap: 2px;
}

.vmc-content .vmc-native-toc-item a {
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
}

/* Un leger temps de respiration supplementaire avant chaque grande section. */
.vmc-content h2 {
  margin-top: calc(2em + 3px);
}

html[data-vmc-theme="dark"] .vmc-native-toc {
  border-color: rgba(244, 241, 234, .10);
  background: rgba(29, 32, 38, .48);
  box-shadow: none;
}

@media (max-width: 640px) {
  .vmc-native-toc-title,
  #ez-toc-container .ez-toc-title,
  #ez-toc-container p.ez-toc-title {
    margin-bottom: 9px !important;
  }

  .vmc-native-toc-list {
    gap: 2px;
  }

  .vmc-content .vmc-native-toc-item a {
    padding-top: 4px;
    padding-right: 3px;
    padding-bottom: 4px;
  }
}

/* Version 1.0.91 - Résumé IA compact et harmonisation des surfaces éditoriales. */
.vmc-ai-summary {
  margin: 24px 0 30px;
  padding: 16px 18px 14px;
  border: 1px solid rgba(23, 21, 18, .08);
  border-radius: 16px;
  background: #fbfaf8;
  box-shadow: none;
}

.vmc-content .vmc-ai-summary-label {
  display: inline-flex;
  align-items: center;
  width: auto;
  margin: 0 0 9px;
  padding: 7px 11px 6px;
  border-radius: 999px;
  background: #171512;
  color: #fff;
  font-family: inherit;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .07em;
  line-height: 1;
  text-transform: uppercase;
}

.vmc-ai-summary-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.vmc-content .vmc-ai-summary-title {
  min-width: 0;
  margin: 0;
  color: var(--vmc-text);
  font-size: .88rem;
  font-weight: 690;
  line-height: 1.3;
}

.vmc-ai-summary-actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: nowrap;
  align-items: center;
  gap: 5px;
  margin: 0;
}

.vmc-content .vmc-ai-summary-provider {
  box-sizing: border-box;
  display: inline-flex;
  flex: 0 0 28px;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 1px solid rgba(23, 21, 18, .10);
  border-radius: 999px;
  background: #fff;
  color: var(--vmc-text);
  box-shadow: none;
  line-height: 1;
  text-decoration: none;
  transition: transform .16s ease, border-color .16s ease, background .16s ease;
}

.vmc-content .vmc-ai-summary-provider:hover,
.vmc-content .vmc-ai-summary-provider:focus-visible {
  border-color: rgba(23, 21, 18, .24);
  background: #fff;
  transform: translateY(-1px);
}

.vmc-content .vmc-ai-summary-provider:focus-visible {
  outline: 3px solid rgba(23, 21, 18, .14);
  outline-offset: 2px;
}

.vmc-ai-summary-provider-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1em;
  font-size: .82rem;
  font-weight: 900;
  line-height: 1;
}

.vmc-ai-summary-provider--chatgpt .vmc-ai-summary-provider-mark { color: #10a37f; }
.vmc-ai-summary-provider--perplexity .vmc-ai-summary-provider-mark { color: #20b8cd; }
.vmc-ai-summary-provider--google-ai .vmc-ai-summary-provider-mark { color: #669df6; }
.vmc-ai-summary-provider--mistral .vmc-ai-summary-provider-mark { color: #f15a24; }

/* Les quatre blocs editoriaux utilisent desormais exactement la meme surface. */
#resume_article,
.vmc-content #resume_article,
.vmc-native-toc,
.vmc-reading-gate,
.vmc-ai-summary {
  background: #fbfaf8;
}

html[data-vmc-theme="dark"] #resume_article,
html[data-vmc-theme="dark"] .vmc-content #resume_article,
html[data-vmc-theme="dark"] .vmc-native-toc,
html[data-vmc-theme="dark"] .vmc-reading-gate,
html[data-vmc-theme="dark"] .vmc-ai-summary {
  background: #1a1c21 !important;
}

html[data-vmc-theme="dark"] .vmc-ai-summary {
  border-color: rgba(244, 241, 234, .10);
  box-shadow: none;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-label {
  background: #f4f1ea;
  color: #171512;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider {
  border-color: rgba(244, 241, 234, .13);
  background: rgba(255, 255, 255, .045);
  color: #f4f1ea;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider:hover,
html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider:focus-visible {
  border-color: rgba(244, 241, 234, .26);
  background: rgba(255, 255, 255, .085);
}

@media (max-width: 640px) {
  .vmc-ai-summary {
    margin: 24px 0 30px;
    padding: 15px 14px 13px;
    border-radius: 16px;
  }

  .vmc-ai-summary-row {
    gap: 8px;
  }

  .vmc-content .vmc-ai-summary-title {
    font-size: .82rem;
  }

  .vmc-ai-summary-actions {
    gap: 4px;
  }

  .vmc-content .vmc-ai-summary-provider {
    flex-basis: 26px;
    width: 26px;
    height: 26px;
  }
}

/* Version 1.0.92 - Résumé IA sur une seule ligne, libellés visibles. */
.vmc-ai-summary {
  padding: 15px 18px 14px;
}

.vmc-ai-summary-actions {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0 0 1px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.vmc-content .vmc-ai-summary-provider {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  width: auto;
  height: auto;
  min-height: 28px;
  margin: 0;
  padding: 4px 1px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--vmc-text);
  box-shadow: none;
  font-size: .82rem;
  font-weight: 720;
  line-height: 1.15;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity .16s ease, transform .16s ease;
}

.vmc-content .vmc-ai-summary-provider:hover,
.vmc-content .vmc-ai-summary-provider:focus-visible {
  border: 0;
  background: transparent;
  opacity: .72;
  transform: translateY(-1px);
}

.vmc-content .vmc-ai-summary-provider:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

.vmc-ai-summary-provider-mark {
  display: inline-flex;
  flex: 0 0 18px;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
}

.vmc-ai-summary-provider-label {
  display: inline-block;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider,
html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider:hover,
html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider:focus-visible {
  border: 0;
  background: transparent;
  color: #f4f1ea;
}

@media (max-width: 640px) {
  .vmc-ai-summary {
    padding: 14px 14px 13px;
  }

  .vmc-ai-summary-actions {
    gap: 9px;
  }

  .vmc-content .vmc-ai-summary-provider {
    min-height: 27px;
    padding: 3px 0;
    font-size: .79rem;
  }

  .vmc-ai-summary-provider-mark {
    flex-basis: 17px;
    width: 17px;
    height: 17px;
    font-size: .95rem;
  }
}


/* Version 1.0.93 - Les assistants IA sont de vrais boutons compacts. */
.vmc-ai-summary-actions {
  flex-wrap: nowrap;
  gap: 7px;
  padding-bottom: 0;
  overflow: visible;
  scrollbar-width: auto;
}

.vmc-content .vmc-ai-summary-provider {
  min-height: 34px;
  padding: 7px 10px 7px 8px;
  border: 1px solid rgba(23, 21, 18, .14);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(23, 21, 18, .035);
  font-size: .82rem;
  font-weight: 760;
  line-height: 1;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.vmc-content .vmc-ai-summary-provider:hover,
.vmc-content .vmc-ai-summary-provider:focus-visible {
  border: 1px solid rgba(23, 21, 18, .30);
  background: #fff;
  box-shadow: 0 2px 7px rgba(23, 21, 18, .07);
  opacity: 1;
  transform: translateY(-1px);
}

.vmc-ai-summary-provider-mark {
  flex-basis: 18px;
  width: 18px;
  height: 18px;
  font-size: 1rem;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider {
  border: 1px solid rgba(244, 241, 234, .16);
  background: rgba(255, 255, 255, .055);
  color: #f4f1ea;
  box-shadow: none;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider:hover,
html[data-vmc-theme="dark"] .vmc-content .vmc-ai-summary-provider:focus-visible {
  border: 1px solid rgba(244, 241, 234, .30);
  background: rgba(255, 255, 255, .10);
  box-shadow: none;
}

@media (max-width: 640px) {
  .vmc-ai-summary-actions {
    flex-wrap: wrap;
    gap: 7px;
    overflow: visible;
  }

  .vmc-content .vmc-ai-summary-provider {
    min-height: 34px;
    padding: 7px 9px 7px 8px;
    font-size: .80rem;
  }
}


/* Version 1.0.94 - Logos officiels/reconnaissables dans les boutons Résumé IA. */
.vmc-ai-summary-provider-mark {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  font-size: 0;
}

.vmc-ai-summary-provider-mark svg {
  display: block;
  width: 18px;
  height: 18px;
  max-width: none;
  max-height: none;
  overflow: visible;
}

.vmc-ai-summary-provider--chatgpt .vmc-ai-summary-provider-mark { color: #10a37f; }
.vmc-ai-summary-provider--perplexity .vmc-ai-summary-provider-mark { color: #1fb8cd; }
.vmc-ai-summary-provider--mistral .vmc-ai-summary-provider-mark { color: #fa520f; }

.vmc-ai-summary-provider--google-ai .vmc-ai-summary-provider-mark svg,
.vmc-ai-summary-provider--mistral .vmc-ai-summary-provider-mark svg {
  width: 19px;
  height: 19px;
}

@media (max-width: 640px) {
  .vmc-ai-summary-provider-mark,
  .vmc-ai-summary-provider-mark svg {
    width: 17px;
    height: 17px;
  }
}


/* Version 1.0.95 - quatre assistants et pictogramme Perplexity plus lisible. */
.vmc-ai-summary-provider--perplexity .vmc-ai-summary-provider-mark {
  color: #1fb8cd;
}

.vmc-ai-summary-provider--perplexity .vmc-ai-summary-provider-mark svg {
  width: 19px;
  height: 19px;
  overflow: visible;
  shape-rendering: geometricPrecision;
}

@media (max-width: 640px) {
  .vmc-ai-summary-provider--perplexity .vmc-ai-summary-provider-mark svg {
    width: 18px;
    height: 18px;
  }
}


/* V1.0.98 - Protection anti-spam invisible des formulaires publics. */
.vmc-antispam-field {
  position: absolute !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}


/* V1.0.99 - Compatibilite avec le lecteur lazy <lite-youtube>.
 * Le lecteur ajoute l'iframe seulement au clic. Les anciennes regles generiques
 * imposaient alors position:static + height:auto a cette iframe, ce qui cassait
 * le positionnement attendu par le composant une fois active.
 */
.vmc-content .wp-block-embed__wrapper > lite-youtube,
.vmc-content figure.is-provider-youtube .wp-block-embed__wrapper > lite-youtube,
.vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper > lite-youtube {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #0f172a !important;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .09) !important;
  line-height: 0 !important;
}

.vmc-content .wp-block-embed__wrapper > lite-youtube::before,
.vmc-content figure.is-provider-youtube .wp-block-embed__wrapper > lite-youtube::before,
.vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper > lite-youtube::before {
  content: none !important;
  display: none !important;
  padding: 0 !important;
}

/* L'iframe creee apres le clic doit remplir le composant, et non repasser
 * dans le flux normal via la regle generique des embeds WordPress. */
.vmc-content .wp-block-embed__wrapper > lite-youtube > iframe,
.vmc-content figure.is-provider-youtube .wp-block-embed__wrapper > lite-youtube > iframe,
.vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper > lite-youtube > iframe {
  position: absolute !important;
  inset: 0 !important;
  z-index: 20 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: #000 !important;
  box-shadow: none !important;
}

@media (max-width: 640px) {
  .vmc-content .wp-block-embed__wrapper > lite-youtube,
  .vmc-content figure.is-provider-youtube .wp-block-embed__wrapper > lite-youtube,
  .vmc-content figure.wp-block-embed-youtube .wp-block-embed__wrapper > lite-youtube {
    border-radius: 12px !important;
  }
}


/* V1.2.19 - Recherche plus legere et plus proche du blanc en mode clair. */
.vmc-search-form {
  gap: 8px;
}
.vmc-search-form input[type="search"] {
  min-height: 48px;
  border: 1px solid rgba(23, 21, 18, .09);
  border-radius: 14px;
  background: #fff;
  color: var(--vmc-text);
  box-shadow: 0 1px 0 rgba(23, 21, 18, .018);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.vmc-search-form input[type="search"]::placeholder {
  color: var(--vmc-muted);
  opacity: .72;
}
.vmc-search-form input[type="search"]:focus {
  outline: none;
  border-color: rgba(23, 21, 18, .22);
  box-shadow: 0 0 0 3px rgba(23, 21, 18, .045);
}
.vmc-search-form button {
  min-height: 48px;
}
html[data-vmc-theme="dark"] .vmc-search-form input[type="search"] {
  background: var(--vmc-surface);
  border-color: var(--vmc-border);
  color: var(--vmc-text);
  box-shadow: none;
}
html[data-vmc-theme="dark"] .vmc-search-form input[type="search"]:focus {
  border-color: rgba(244, 241, 234, .3);
  box-shadow: 0 0 0 3px var(--vmc-soft);
}

/* V1.2.21 - Recherche du theme enfant : meme surface blanche que les cartes. */
html:not([data-vmc-theme="dark"]) .vmc-search-form input[type="search"] {
  -webkit-appearance: none;
  appearance: none;
  color-scheme: light;
  background-color: #fff !important;
  border: 1px solid rgba(23, 21, 18, .075) !important;
  box-shadow: 0 1px 2px rgba(23, 21, 18, .018) !important;
}
html:not([data-vmc-theme="dark"]) .vmc-search-form input[type="search"]:focus {
  outline: none !important;
  border-color: rgba(23, 21, 18, .16) !important;
  box-shadow: 0 0 0 3px rgba(23, 21, 18, .028) !important;
}
html:not([data-vmc-theme="dark"]) .vmc-search-form input[type="search"]:-webkit-autofill {
  -webkit-text-fill-color: var(--vmc-text) !important;
  -webkit-box-shadow: 0 0 0 1000px #fff inset !important;
  box-shadow: 0 0 0 1000px #fff inset !important;
}

/* 1.2.411 - Profils auteur : centrage des cartes 1/2 et aucun extrait. */
.vmc-author-archive {
  padding-bottom: clamp(30px, 4vw, 48px);
}

.vmc-author-profile-wrap {
  padding-top: clamp(26px, 4vw, 52px);
}

.vmc-author-profile {
  box-sizing: border-box;
  width: 100%;
  max-width: 820px;
  margin-inline: auto;
  padding: clamp(24px, 3vw, 34px) clamp(22px, 3.8vw, 46px);
  border: 1px solid var(--vmc-border);
  border-radius: calc(var(--vmc-radius) + 7px);
  background: var(--vmc-surface);
  box-shadow: 0 12px 34px rgba(23, 21, 18, .045);
  text-align: center;
}

.vmc-author-profile-content { min-width: 0; }

.vmc-author-profile-content .vmc-section-kicker {
  margin: 0 0 8px;
}

.vmc-author-profile h1 {
  max-width: 740px;
  margin: 0 auto;
  font-size: clamp(2rem, 3vw, 2.75rem);
  line-height: 1.1;
  letter-spacing: -.045em;
  overflow-wrap: break-word;
}

.vmc-author-profile-bio {
  max-width: 630px;
  margin: 11px auto 0;
  color: var(--vmc-muted);
  font-size: clamp(.95rem, 1.12vw, 1.03rem);
  line-height: 1.48;
  overflow-wrap: break-word;
}

.vmc-author-profile-meta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 14px;
  color: var(--vmc-muted);
  font-size: .85rem;
  font-weight: 760;
}

/* Lien web isole sous le compteur, jamais aligne sur la meme ligne. */
.vmc-author-profile-links {
  display: flex;
  justify-content: center;
  margin-top: 10px;
}

.vmc-author-profile-links a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 7px 12px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-bg);
  color: var(--vmc-text);
  font-size: .8rem;
  font-weight: 800;
  line-height: 1;
  text-decoration: none;
}

.vmc-author-profile-links a:hover,
.vmc-author-profile-links a:focus-visible {
  border-color: color-mix(in srgb, var(--vmc-border) 54%, var(--vmc-text) 46%);
  text-decoration: none;
}

/* Les publications restent directement apres le profil, sans titre redondant. */
.vmc-author-archive .vmc-author-articles {
  padding: clamp(24px, 3vw, 34px) 0 0;
}

.vmc-author-articles > .vmc-container { max-width: 1180px; }

/* Grille autonome : ne pas heriter des colonnes de .vmc-grid-3. */
.vmc-author-articles-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
}

.vmc-author-articles-grid .vmc-card {
  min-width: 0;
  height: 100%;
}

.vmc-author-articles-grid .vmc-card-media {
  aspect-ratio: 16 / 9;
  border-radius: 0;
}

.vmc-author-articles-grid .vmc-card-body { padding: 18px; }

.vmc-author-articles-grid .vmc-card-title {
  font-size: clamp(1.05rem, 1.45vw, 1.28rem);
  line-height: 1.2;
}

.vmc-author-articles-grid .vmc-card-no-media .vmc-card-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 140px;
  padding: 22px;
}

.vmc-author-articles-grid .vmc-meta {
  margin-bottom: 10px;
  font-size: .78rem;
}

/* Centrer les pistes dans la grille elle-meme (plutot que reduire le conteneur). */
.vmc-author-archive .vmc-author-articles--single .vmc-author-articles-grid {
  grid-template-columns: minmax(0, 390px);
  justify-content: center;
}

.vmc-author-articles--single .vmc-author-articles-grid .vmc-card-title {
  font-size: clamp(1.12rem, 1.6vw, 1.35rem);
}

/* Deux articles : deux pistes de 390 px max, centrees sous le profil. */
.vmc-author-archive .vmc-author-articles--pair .vmc-author-articles-grid {
  grid-template-columns: repeat(2, minmax(0, 390px));
  justify-content: center;
}

/* Secours si un compteur personnalise ne correspond pas au nombre d'articles rendus. */
@supports selector(.vmc-grid:has(> .vmc-card)) {
  .vmc-author-archive .vmc-author-articles-grid:has(> .vmc-card:only-child) {
    grid-template-columns: minmax(0, 390px);
    justify-content: center;
  }
  .vmc-author-archive .vmc-author-articles-grid:has(> .vmc-card:nth-child(2):last-child) {
    grid-template-columns: repeat(2, minmax(0, 390px));
    justify-content: center;
  }
}

.vmc-author-articles--pair .vmc-author-articles-grid .vmc-card-body { padding: 20px; }
.vmc-author-articles--pair .vmc-author-articles-grid .vmc-card-title { font-size: clamp(1.1rem, 1.5vw, 1.3rem); }

.vmc-author-empty {
  max-width: 820px;
  margin: 0 auto;
  padding: 14px 0;
  text-align: center;
}

html[data-vmc-theme="dark"] .vmc-author-profile {
  box-shadow: 0 12px 34px rgba(0, 0, 0, .18);
}

@media (max-width: 900px) {
  .vmc-author-articles-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .vmc-author-profile-wrap { padding-top: 24px; }
  .vmc-author-profile { padding: 24px 18px; }
  .vmc-author-profile h1 { font-size: clamp(1.85rem, 8vw, 2.4rem); }
  .vmc-author-profile-bio { margin-top: 10px; }
  .vmc-author-profile-meta { margin-top: 12px; }
  .vmc-author-archive .vmc-author-articles { padding-top: 22px; }
  .vmc-author-archive .vmc-author-articles-grid,
  .vmc-author-archive .vmc-author-articles--single .vmc-author-articles-grid,
  .vmc-author-archive .vmc-author-articles--pair .vmc-author-articles-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  @supports selector(.vmc-grid:has(> .vmc-card)) {
    .vmc-author-archive .vmc-author-articles-grid:has(> .vmc-card:only-child),
    .vmc-author-archive .vmc-author-articles-grid:has(> .vmc-card:nth-child(2):last-child) {
      grid-template-columns: minmax(0, 1fr);
    }
  }
  .vmc-author-articles-grid .vmc-card-body,
  .vmc-author-articles-grid .vmc-card-no-media .vmc-card-body { padding: 18px; }
  .vmc-author-articles-grid .vmc-card-no-media .vmc-card-body { min-height: 0; }
}

/* 1.2.325 — mention éditoriale par article + actions IA sans href externe. */
.vmc-article-disclosure {
  display: flex;
  align-items: center;
  margin: 24px 0 18px;
}

.vmc-content .vmc-article-disclosure span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 9px;
  border: 1px solid rgba(23, 21, 18, .12);
  border-radius: 999px;
  background: rgba(23, 21, 18, .025);
  color: var(--vmc-muted);
  font-size: .69rem;
  font-weight: 720;
  letter-spacing: .025em;
  line-height: 1.15;
}

.vmc-article-disclosure + .vmc-ai-summary {
  margin-top: 0;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-article-disclosure span {
  border-color: rgba(244, 241, 234, .14);
  background: rgba(255, 255, 255, .035);
  color: rgba(244, 241, 234, .72);
}

.vmc-content .vmc-ai-summary-provider[data-vmc-ai-url] {
  cursor: pointer;
}

@media (max-width: 640px) {
  .vmc-article-disclosure {
    margin: 22px 0 16px;
  }

  .vmc-content .vmc-article-disclosure span {
    min-height: 23px;
    padding: 4px 8px;
    font-size: .67rem;
  }
}



/* 1.2.337 - invitation editoriale vers les classements communautaires. */
.vmc-rankings-invite {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 28px;
  overflow: hidden;
  margin: 40px 0 28px;
  padding: 24px 24px 24px 26px;
  border: 1px solid rgba(97, 87, 232, .2);
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0, rgba(97, 87, 232, .11), transparent 38%),
    linear-gradient(135deg, rgba(97, 87, 232, .065), rgba(97, 87, 232, .018));
  box-shadow: 0 10px 28px rgba(30, 26, 70, .045);
}

.vmc-rankings-invite::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, #6157e8, #8b5cf6);
}

.vmc-rankings-invite-copy {
  min-width: 0;
}

.vmc-content .vmc-rankings-invite-copy > span {
  display: block;
  margin: 0 0 7px;
  color: #6157e8;
  font-size: .69rem;
  font-weight: 850;
  letter-spacing: .09em;
  line-height: 1.2;
  text-transform: uppercase;
}

.vmc-content .vmc-rankings-invite-title {
  margin: 0;
  color: var(--vmc-text);
  font-family: var(--vmc-display, var(--display, Inter, system-ui, sans-serif));
  font-size: clamp(1.12rem, 1.9vw, 1.34rem);
  font-weight: 880;
  line-height: 1.18;
  letter-spacing: -.025em;
}

.vmc-content .vmc-rankings-invite-copy > p:not(.vmc-rankings-invite-title):not(.vmc-rankings-invite-meta) {
  max-width: 690px;
  margin: 8px 0 0;
  color: var(--vmc-muted);
  font-size: .92rem;
  line-height: 1.55;
}

.vmc-content .vmc-rankings-invite-meta {
  display: inline-flex;
  align-items: center;
  margin: 12px 0 0;
  padding: 5px 9px;
  border: 1px solid rgba(97, 87, 232, .14);
  border-radius: 999px;
  background: rgba(255, 255, 255, .58);
  color: color-mix(in srgb, var(--vmc-text) 76%, #6157e8);
  font-size: .72rem;
  font-weight: 760;
  line-height: 1.2;
}

.vmc-rankings-invite-button,
.vmc-content .vmc-rankings-invite-button {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 44px;
  padding: 11px 17px;
  border: 1px solid #6157e8;
  border-radius: 999px;
  background: #6157e8;
  color: #fff;
  font-size: .84rem;
  font-weight: 820;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.vmc-rankings-invite-button:hover,
.vmc-rankings-invite-button:focus-visible {
  transform: translateY(-1px);
  background: #564bd3;
  color: #fff;
  box-shadow: 0 8px 20px rgba(97, 87, 232, .2);
}

.vmc-rankings-invite-button:focus-visible {
  outline: 3px solid rgba(97, 87, 232, .22);
  outline-offset: 2px;
}

html[data-vmc-theme="dark"] .vmc-rankings-invite {
  border-color: rgba(144, 133, 255, .26);
  background:
    radial-gradient(circle at 100% 0, rgba(117, 105, 242, .16), transparent 40%),
    linear-gradient(135deg, rgba(97, 87, 232, .13), rgba(255, 255, 255, .025));
  box-shadow: none;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-rankings-invite-copy > span {
  color: #aaa2ff;
}

html[data-vmc-theme="dark"] .vmc-content .vmc-rankings-invite-meta {
  border-color: rgba(144, 133, 255, .22);
  background: rgba(255, 255, 255, .045);
  color: var(--vmc-text);
}

html[data-vmc-theme="dark"] .vmc-rankings-invite-button,
html[data-vmc-theme="dark"] .vmc-content .vmc-rankings-invite-button {
  background: #7569f2;
  border-color: #7569f2;
  color: #fff;
}

@media (max-width: 700px) {
  .vmc-rankings-invite {
    grid-template-columns: 1fr;
    align-items: flex-start;
    gap: 17px;
    margin: 34px 0 25px;
    padding: 21px 19px 20px 21px;
  }

  .vmc-content .vmc-rankings-invite-title {
    font-size: 1.16rem;
  }

  .vmc-rankings-invite-button,
  .vmc-content .vmc-rankings-invite-button {
    width: 100%;
    min-height: 45px;
  }
}


/* 1.2.368 - Commercial disclosures in article header metadata + compact one-line mobile metadata. */
.vmc-header-meta .vmc-meta-disclosure {
  color: var(--vmc-muted);
  white-space: nowrap;
}

@media (max-width: 640px) {
  .vmc-single-header .vmc-header-meta {
    width: fit-content;
    max-width: 100%;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    margin-left: auto;
    margin-right: auto;
    padding: 0 3px 4px;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    font-size: .74rem;
  }

  .vmc-single-header .vmc-header-meta::-webkit-scrollbar {
    display: none;
  }

  .vmc-single-header .vmc-header-meta .vmc-meta-date,
  .vmc-single-header .vmc-header-meta .vmc-meta-item-group {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .vmc-single-header .vmc-header-meta .vmc-meta-item-group {
    gap: 6px;
    margin-left: 7px;
  }

  .vmc-single-header .vmc-header-meta .vmc-meta-separator {
    display: inline-block;
    width: 3px;
    height: 3px;
    flex: 0 0 3px;
    border-radius: 50%;
    background: currentColor;
    opacity: .58;
  }
}

/* 1.2.372 : validation e-mail du compte, etat explicite et renvoi. */
#primary.vmc-gr-site-main .vmc-gr-member-email-verification,
#primary.vmc-mr-site-main .vmc-gr-member-email-verification { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
#primary.vmc-gr-site-main .vmc-gr-member-email-verification p,
#primary.vmc-mr-site-main .vmc-gr-member-email-verification p { margin:0; }
#primary.vmc-gr-site-main .vmc-gr-member-email-verification form,
#primary.vmc-mr-site-main .vmc-gr-member-email-verification form { margin:0; }

/* 1.2.378 — autres rubriques : memes panneaux et cartes que les sections d'articles. */
.vmc-home .vmc-home-other-categories {
  padding: 0;
  margin: 0;
}
.vmc-home .vmc-home-other-categories .vmc-home-other-category-card {
  min-width: 0;
}
.vmc-home .vmc-home-other-categories .vmc-home-other-category-link {
  display: block;
  height: 100%;
  color: var(--vmc-text);
  text-decoration: none;
}
.vmc-home .vmc-home-other-categories .vmc-card-body {
  display: block;
}
.vmc-home .vmc-home-other-categories .vmc-home-other-category-count {
  display: block;
  margin-bottom: 8px;
  color: var(--vmc-muted);
  font-size: .76rem;
}
.vmc-home .vmc-home-other-categories .vmc-home-other-category-name {
  display: block;
  color: var(--vmc-text);
  text-decoration: none;
}
.vmc-home .vmc-home-other-categories .vmc-home-other-category-card {
  transition: transform .18s ease, box-shadow .18s ease;
}
.vmc-home .vmc-home-other-categories .vmc-home-other-category-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 38px rgba(23, 21, 18, .09);
}
.vmc-home .vmc-home-other-categories .vmc-home-other-category-link:focus-visible {
  outline: 3px solid currentColor;
  outline-offset: -4px;
  border-radius: 12px;
}
@media (max-width: 640px) {
  .vmc-home .vmc-home-other-categories .vmc-grid-3 {
    grid-template-columns: 1fr;
  }
}
html[data-vmc-theme="dark"] .vmc-home .vmc-home-other-categories .vmc-home-other-category-card:hover {
  box-shadow: 0 18px 38px rgba(0, 0, 0, .24);
}


/* 1.2.380 — panel compact quand une ou deux autres rubriques sont presentes. */
@media (min-width: 901px) {
  /* Trois rubriques = largeur habituelle. Une ou deux = largeur des cartes +
     le meme espacement et les memes marges que les panneaux principaux. */
  .vmc-home .vmc-home-other-categories--count-1 > .vmc-container,
  .vmc-home .vmc-home-other-categories--count-2 > .vmc-container {
    box-sizing: border-box;
    margin-left: max(20px, calc((100% - 1180px) / 2));
    margin-right: 0;
    padding: 30px;
  }
  .vmc-home .vmc-home-other-categories--count-1 > .vmc-container {
    width: min(417.333px, calc(33.333333% + 10.666667px));
  }
  .vmc-home .vmc-home-other-categories--count-2 > .vmc-container {
    width: min(798.667px, calc(66.666667% - 14.666667px));
  }
  .vmc-home .vmc-home-other-categories--count-1 .vmc-grid-3 {
    grid-template-columns: minmax(0, 1fr);
  }
  .vmc-home .vmc-home-other-categories--count-2 .vmc-grid-3 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 641px) and (max-width: 900px) {
  /* A cette largeur, les sections ordinaires utilisent deux colonnes. */
  .vmc-home .vmc-home-other-categories--count-1 > .vmc-container {
    box-sizing: border-box;
    width: calc((100% - 40px) / 2 + clamp(22px, 3vw, 30px) - 12px);
    margin-left: 20px;
    margin-right: 0;
  }
  .vmc-home .vmc-home-other-categories--count-1 .vmc-grid-3 {
    grid-template-columns: minmax(0, 1fr);
  }
}


/* 1.2.382 — rubrique unique : un bloc autonome, sans rattachement ni séparateur. */
.vmc-home .vmc-home-single-category-section {
  margin: 0;
  padding: 0;
}
.vmc-home .vmc-home-single-category-section > .vmc-container {
  margin-bottom: clamp(18px, 2.8vw, 28px);
}
.vmc-home .vmc-home-single-category-link {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  min-height: 76px;
  padding: 18px 22px;
  border: 1px solid rgba(23, 21, 18, .08);
  border-radius: 20px;
  background: #f5f4f2;
  color: var(--vmc-text);
  text-decoration: none;
  transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}
.vmc-home .vmc-home-single-category-name {
  min-width: 0;
  font-size: clamp(1rem, 1.15vw, 1.18rem);
  line-height: 1.2;
  font-weight: 850;
  letter-spacing: -.025em;
}
.vmc-home .vmc-home-single-category-arrow {
  flex: 0 0 auto;
  color: var(--vmc-muted);
  font-size: 1.18rem;
  transition: transform .18s ease, color .18s ease;
}
.vmc-home .vmc-home-single-category-link:hover {
  background: var(--vmc-soft);
  border-color: var(--vmc-border);
  transform: translateY(-2px);
}
.vmc-home .vmc-home-single-category-link:hover .vmc-home-single-category-arrow {
  color: var(--vmc-text);
  transform: translateX(3px);
}
.vmc-home .vmc-home-single-category-link:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
html[data-vmc-theme="dark"] .vmc-home .vmc-home-single-category-link {
  border-color: rgba(244, 241, 234, .11);
  background: #15171c;
}
html[data-vmc-theme="dark"] .vmc-home .vmc-home-single-category-link:hover {
  border-color: rgba(244, 241, 234, .22);
  background: #1f2229;
}
@media (max-width: 640px) {
  .vmc-home .vmc-home-single-category-section > .vmc-container {
    width: min(100% - 20px, 1180px);
    margin-bottom: 16px;
  }
  .vmc-home .vmc-home-single-category-link {
    min-height: 64px;
    padding: 15px 17px;
    border-radius: 16px;
  }
  .vmc-home .vmc-home-single-category-name {
    font-size: 1rem;
  }
}


/* 1.2.386 — même échelle de H1 sur les archives de catégories et les articles,
   sur desktop comme sur mobile. Préserver le centrage de l'archive. */
.vmc-category-archive-header h1,
.vmc-category-archive-header .vmc-category-archive-panel h1 {
  font-size: clamp(2rem, 4.2vw, 3.65rem);
  line-height: 1.04;
  letter-spacing: -.045em;
}


/* 1.2.413 — Accueil : colonne droite en deux blocs empilés
   (« À suivre » + « Récemment mis à jour », 4 articles chacun). */
.vmc-home-side-stack {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}

.vmc-home-side-stack > .vmc-home-side {
  flex: 1 1 auto;
}

.vmc-home-side--updated .vmc-side-header {
  display: flex;
  align-items: center;
  gap: 9px;
}

.vmc-home-side--updated .vmc-side-header::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: rgb(245, 197, 66);
  box-shadow: 0 0 0 4px rgba(245, 197, 66, .18);
}

@media (max-width: 1080px) {
  .vmc-home-side-stack { gap: 18px; }
}


/* 1.2.413 — Citations : carte éditoriale cohérente avec le thème
   (surface claire arrondie, guillemet serif surligné jaune, source en kicker). */
.vmc-content blockquote,
.vmc-content .wp-block-quote,
.vmc-content .wp-block-pullquote {
  position: relative;
  margin: 2.2em 0;
  padding: clamp(26px, 3.4vw, 38px) clamp(22px, 3.6vw, 42px) clamp(24px, 3vw, 32px) clamp(64px, 7vw, 92px);
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background:
    radial-gradient(circle at 0% 0%, rgba(245, 197, 66, .16), transparent 46%),
    linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(247, 245, 240, .92));
  box-shadow: 0 18px 50px rgba(23, 21, 18, .07);
  color: var(--vmc-text);
  font-style: normal;
  text-align: left;
  quotes: none;
}

.vmc-content blockquote::before,
.vmc-content .wp-block-pullquote::before {
  content: "\201C";
  position: absolute;
  top: clamp(24px, 3.2vw, 34px);
  left: clamp(18px, 2.6vw, 30px);
  display: grid;
  place-items: center;
  width: clamp(36px, 3.8vw, 44px);
  height: clamp(36px, 3.8vw, 44px);
  padding-top: .32em;
  box-sizing: border-box;
  border-radius: 999px;
  background: rgba(245, 197, 66, .55);
  font-family: var(--vmc-serif, var(--serif, Georgia, "Times New Roman", serif));
  font-size: clamp(2rem, 3vw, 2.5rem);
  font-style: normal;
  font-weight: 700;
  line-height: 1;
  color: var(--vmc-text);
  pointer-events: none;
}

/* La pullquote Gutenberg contient elle-même un blockquote : on ne décore que la figure. */
.vmc-content .wp-block-pullquote blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
.vmc-content .wp-block-pullquote blockquote::before { content: none; }

.vmc-content blockquote p,
.vmc-content .wp-block-pullquote p {
  margin: 0 0 .7em;
  font-family: var(--vmc-serif, var(--serif, Georgia, "Times New Roman", serif));
  font-size: clamp(1.18rem, 1.65vw, 1.42rem);
  font-style: italic;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: -.012em;
  color: var(--vmc-text);
}

.vmc-content blockquote p:last-of-type,
.vmc-content .wp-block-pullquote p:last-of-type { margin-bottom: 0; }

.vmc-content blockquote cite,
.vmc-content blockquote footer,
.vmc-content .wp-block-quote cite,
.vmc-content .wp-block-pullquote cite {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  font-family: inherit;
  font-size: .76rem;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .13em;
  line-height: 1.4;
  text-transform: uppercase;
  color: var(--vmc-muted);
}

.vmc-content blockquote cite::before,
.vmc-content blockquote footer::before,
.vmc-content .wp-block-pullquote cite::before {
  content: "";
  flex: 0 0 auto;
  width: 22px;
  height: 2px;
  border-radius: 999px;
  background: rgb(245, 197, 66);
}

.vmc-content blockquote cite a,
.vmc-content blockquote footer a { color: inherit; }

.vmc-content blockquote > :last-child { margin-bottom: 0; }

/* Variante « grande » de Gutenberg : texte plus présent. */
.vmc-content .wp-block-quote.is-style-large p,
.vmc-content .wp-block-quote.is-large p,
.vmc-content .wp-block-pullquote p {
  font-size: clamp(1.35rem, 2.1vw, 1.75rem);
  line-height: 1.38;
}

/* Variante « simple » : même famille visuelle, sans carte. */
.vmc-content .wp-block-quote.is-style-plain {
  padding: 4px 0 4px 26px;
  border: 0;
  border-left: 3px solid rgb(245, 197, 66);
  border-radius: 0;
  background: none;
  box-shadow: none;
}
.vmc-content .wp-block-quote.is-style-plain::before { content: none; }

@media (max-width: 640px) {
  .vmc-content blockquote,
  .vmc-content .wp-block-quote,
  .vmc-content .wp-block-pullquote {
    margin: 1.8em 0;
    padding: 66px 20px 22px;
    border-radius: 20px;
  }
  .vmc-content blockquote::before,
  .vmc-content .wp-block-pullquote::before {
    top: 16px;
    left: 20px;
  }
  .vmc-content .wp-block-quote.is-style-plain { padding: 2px 0 2px 18px; }
}

html[data-vmc-theme="dark"] .vmc-content .wp-block-pullquote {
  background: linear-gradient(135deg, rgba(32, 36, 44, .98), rgba(18, 20, 26, .96)) !important;
  border-color: rgba(244, 241, 234, .14) !important;
  box-shadow: 0 16px 44px rgba(0, 0, 0, .26) !important;
}

html[data-vmc-theme="dark"] .vmc-content blockquote::before,
html[data-vmc-theme="dark"] .vmc-content .wp-block-pullquote::before {
  color: #171512;
  background: rgb(245, 197, 66);
}

html[data-vmc-theme="dark"] .vmc-content blockquote cite,
html[data-vmc-theme="dark"] .vmc-content blockquote footer,
html[data-vmc-theme="dark"] .vmc-content .wp-block-pullquote cite {
  color: var(--vmc-muted) !important;
}

html[data-vmc-theme="dark"] .vmc-content .wp-block-pullquote blockquote,
html[data-vmc-theme="dark"] .vmc-content .wp-block-quote.is-style-plain {
  background: none !important;
  box-shadow: none !important;
}
html[data-vmc-theme="dark"] .vmc-content .wp-block-pullquote blockquote { border: 0 !important; }
html[data-vmc-theme="dark"] .vmc-content .wp-block-quote.is-style-plain { border-color: rgb(245, 197, 66) !important; }


/* 1.2.414 — Légendes d'images harmonisées : image à la une et images du contenu
   (discrètes, italiques, centrées). */
body.vmc-media-child .vmc-single-media figcaption,
body.vmc-media-child .vmc-single-media .wp-element-caption,
body.vmc-media-child .vmc-content figure.wp-block-image figcaption,
body.vmc-media-child .vmc-content .wp-block-image .wp-element-caption,
body.vmc-media-child .vmc-content .wp-block-gallery figcaption,
body.vmc-media-child .vmc-content .wp-block-gallery .wp-element-caption,
body.vmc-media-child .vmc-content .wp-caption .wp-caption-text,
body.vmc-media-child .vmc-content figure.wp-block-embed figcaption,
body.vmc-media-child .vmc-content .wp-block-video figcaption,
body.vmc-media-child .vmc-content .wp-block-media-text figcaption {
  display: block;
  max-width: 62ch;
  margin: 10px auto 0;
  padding: 0 12px;
  color: var(--vmc-muted);
  font-family: inherit;
  font-size: .82rem;
  font-style: italic;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.45;
  text-align: center;
  text-transform: none;
}

body.vmc-media-child .vmc-single-media figcaption a,
body.vmc-media-child .vmc-content figure figcaption a,
body.vmc-media-child .vmc-content .wp-caption-text a {
  color: inherit;
  text-decoration-thickness: .06em;
  text-underline-offset: .16em;
}

/* Légende posée sur l'image dans une galerie Gutenberg : on garde le rendu natif. */
body.vmc-media-child .vmc-content .wp-block-gallery .wp-block-image figcaption {
  max-width: none;
  margin: 0;
  padding: 8px;
  color: #fff;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-single-media figcaption,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content figure.wp-block-image figcaption,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .wp-caption .wp-caption-text,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content figure.wp-block-embed figcaption,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .wp-block-video figcaption {
  color: var(--vmc-muted) !important;
}


/* 1.2.416 — Pied de page collé en bas de l'écran sur les pages au contenu court
   (la barre d'admin WordPress est déduite de la hauteur). */
body.vmc-media-child {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
}

@supports (min-height: 100dvh) {
  body.vmc-media-child {
    min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px));
  }
}

body.vmc-media-child > * {
  flex-shrink: 0;
}

body.vmc-media-child > main,
body.vmc-media-child > #primary {
  flex: 1 0 auto;
  width: 100%;
}

body.vmc-media-child > .vmc-site-footer {
  margin-top: auto;
}


/* 1.2.420 — Seuls les H1 des pages (article, catégorie, page, recherche,
   auteur…) sont équilibrés sur plusieurs lignes pour éviter un mot isolé.
   Un éventuel H1 saisi dans le contenu d'un article garde la coupure normale.
   Navigateurs non compatibles : retour à la coupure classique. */
body.vmc-media-child h1 {
  text-wrap: balance;
}

body.vmc-media-child .vmc-content h1 {
  text-wrap: wrap;
}


/* 1.2.424 — Images du contenu centrées, y compris les <figure> sans classe
   WordPress, et légendes identiques à celle de l'image à la une. */
body.vmc-media-child .vmc-content figure:not(.wp-block-table):not(.wp-block-pullquote):not(.wp-block-embed):not(.wp-block-video):not(.wp-block-gallery),
body.vmc-media-child .vmc-content .wp-caption {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

body.vmc-media-child .vmc-content figure:not(.wp-block-table):not(.wp-block-gallery) > img,
body.vmc-media-child .vmc-content figure:not(.wp-block-table):not(.wp-block-gallery) > a > img,
body.vmc-media-child .vmc-content .wp-caption img,
body.vmc-media-child .vmc-content p > img:only-child,
body.vmc-media-child .vmc-content p > a:only-child > img,
body.vmc-media-child .vmc-content img.aligncenter,
body.vmc-media-child .vmc-content img.alignleft,
body.vmc-media-child .vmc-content img.alignright,
body.vmc-media-child .vmc-content img.alignnone {
  display: block;
  max-width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
  float: none;
}

body.vmc-media-child .vmc-content p:has(> img:only-child),
body.vmc-media-child .vmc-content p:has(> a:only-child > img) {
  text-align: center;
}

body.vmc-media-child .vmc-content .wp-block-image.alignleft,
body.vmc-media-child .vmc-content .wp-block-image.alignright,
body.vmc-media-child .vmc-content .wp-block-image .alignleft,
body.vmc-media-child .vmc-content .wp-block-image .alignright,
body.vmc-media-child .vmc-content figure.alignleft,
body.vmc-media-child .vmc-content figure.alignright {
  float: none;
  display: table;
  margin-left: auto;
  margin-right: auto;
}

body.vmc-media-child .vmc-content figure:not(.wp-block-table):not(.wp-block-gallery) > figcaption,
body.vmc-media-child .vmc-content figure:not(.wp-block-table):not(.wp-block-gallery) > .wp-element-caption {
  display: block;
  max-width: 62ch;
  margin: 10px auto 0;
  padding: 0 12px;
  color: var(--vmc-muted);
  font-family: inherit;
  font-size: .82rem;
  font-style: italic;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.45;
  text-align: center;
  text-transform: none;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content figure:not(.wp-block-table) > figcaption {
  color: var(--vmc-muted) !important;
}


/* 1.2.424 — Bloc « En résumé » : carte éditoriale raccord avec les citations
   et l'accueil (lueur jaune discrète, kicker à pastille, filet de séparation). */
#resume_article,
.vmc-content #resume_article {
  position: relative;
  margin: 0 0 2em;
  padding: 24px 28px 24px;
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background:
    radial-gradient(circle at 100% 0%, rgba(245, 197, 66, .14), transparent 42%),
    linear-gradient(145deg, #ffffff 0%, #fbfaf8 100%);
  box-shadow: 0 14px 38px rgba(23, 21, 18, .06);
  overflow: hidden;
}

#resume_article::before,
.vmc-content #resume_article::before {
  content: "En résumé";
  display: block;
  width: auto;
  margin: 0 0 16px;
  padding: 0 0 14px 18px;
  border-bottom: 1px solid var(--vmc-border);
  border-radius: 0;
  background: radial-gradient(circle at 4px 6px, rgb(245, 197, 66) 3.5px, rgba(245, 197, 66, .22) 4px, rgba(245, 197, 66, .22) 7px, transparent 7.5px) no-repeat 0 0 / 16px 14px;
  color: var(--vmc-text);
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .13em;
  line-height: 1;
  text-transform: uppercase;
}

#resume_article p,
.vmc-content #resume_article p {
  margin: 0 0 .75em;
  color: var(--vmc-text);
  font-size: 1.02em;
  font-weight: 500;
  line-height: 1.68;
}

#resume_article > :last-child,
.vmc-content #resume_article > :last-child {
  margin-bottom: 0;
}

#resume_article ul,
.vmc-content #resume_article ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

#resume_article li,
.vmc-content #resume_article li {
  position: relative;
  margin: 0;
  padding: 10px 0 10px 22px;
  line-height: 1.6;
}

#resume_article li:first-child,
.vmc-content #resume_article li:first-child { padding-top: 0; }
#resume_article li:last-child,
.vmc-content #resume_article li:last-child { padding-bottom: 0; }

#resume_article li + li,
.vmc-content #resume_article li + li {
  border-top: 1px dashed var(--vmc-border);
}

#resume_article li::before,
.vmc-content #resume_article li::before {
  content: "";
  position: absolute;
  left: 2px;
  top: calc(10px + .62em);
  width: 7px;
  height: 7px;
  border-radius: 2px;
  background: rgb(245, 197, 66);
  transform: rotate(45deg);
}

#resume_article li:first-child::before,
.vmc-content #resume_article li:first-child::before { top: .62em; }

html[data-vmc-theme="dark"] #resume_article,
html[data-vmc-theme="dark"] .vmc-content #resume_article {
  border-color: rgba(244, 241, 234, .13) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(245, 197, 66, .10), transparent 42%),
    linear-gradient(145deg, #1d2026 0%, #1a1c21 100%) !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, .2) !important;
}

html[data-vmc-theme="dark"] #resume_article::before,
html[data-vmc-theme="dark"] .vmc-content #resume_article::before {
  background: radial-gradient(circle at 4px 6px, rgb(245, 197, 66) 3.5px, rgba(245, 197, 66, .22) 4px, rgba(245, 197, 66, .22) 7px, transparent 7.5px) no-repeat 0 0 / 16px 14px !important;
  border-bottom-color: rgba(244, 241, 234, .13) !important;
  color: var(--vmc-text) !important;
}

@media (max-width: 640px) {
  #resume_article,
  .vmc-content #resume_article {
    padding: 20px 18px;
    border-radius: 18px;
  }
}


/* 1.2.425 — Rubriques de l'article : libellé explicite et pastilles cliquables,
   plus visibles qu'avant tout en restant secondaires par rapport au bloc auteur. */
.vmc-post-terms {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 14px;
  margin: 0 0 18px;
}

.vmc-post-terms-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--vmc-muted);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .13em;
  line-height: 1;
  text-transform: uppercase;
}

.vmc-post-terms-label::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: rgb(245, 197, 66);
  box-shadow: 0 0 0 3px rgba(245, 197, 66, .2);
}

.vmc-post-terms-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.vmc-post-terms-list li { margin: 0; padding: 0; }
.vmc-post-terms-list li::before,
.vmc-post-terms-list li::marker { content: none; }

.vmc-post-term {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 8px 14px 7px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  color: var(--vmc-text);
  font-size: .86rem;
  font-weight: 750;
  line-height: 1;
  text-decoration: none;
  transition: background-color .18s ease, border-color .18s ease, color .18s ease;
}

.vmc-post-term-arrow {
  display: inline-block;
  font-size: .9em;
  opacity: .45;
  transition: transform .18s ease, opacity .18s ease;
}

.vmc-post-term:hover,
.vmc-post-term:focus-visible {
  border-color: var(--vmc-text);
  background: var(--vmc-text);
  color: var(--vmc-bg);
}

.vmc-post-term:hover .vmc-post-term-arrow,
.vmc-post-term:focus-visible .vmc-post-term-arrow {
  opacity: 1;
  transform: translateX(2px);
}

.vmc-post-term:focus-visible {
  outline: 3px solid rgba(245, 197, 66, .55);
  outline-offset: 2px;
}

html[data-vmc-theme="dark"] .vmc-post-term {
  border-color: rgba(244, 241, 234, .16) !important;
  background: #1a1c21 !important;
  color: var(--vmc-text) !important;
}

html[data-vmc-theme="dark"] .vmc-post-term:hover,
html[data-vmc-theme="dark"] .vmc-post-term:focus-visible {
  border-color: #f4f1ea !important;
  background: #f4f1ea !important;
  color: #0e0f12 !important;
}

@media (max-width: 640px) {
  .vmc-post-terms { gap: 10px; }
  .vmc-post-terms-label { flex: 0 0 100%; }
}


/* 1.2.426 — Sobriété : suppression des pastilles jaunes (rubriques, résumé,
   « Récemment mis à jour ») et du filet sous le titre du résumé. */
.vmc-home-side--updated .vmc-side-header::before,
.vmc-post-terms-label::before {
  content: none;
  display: none;
}

.vmc-home-side--updated .vmc-side-header {
  display: block;
}

.vmc-post-terms-label {
  gap: 0;
}

#resume_article::before,
.vmc-content #resume_article::before {
  margin-bottom: 12px;
  padding: 0;
  border-bottom: 0;
  background: none;
}

html[data-vmc-theme="dark"] #resume_article::before,
html[data-vmc-theme="dark"] .vmc-content #resume_article::before {
  border-bottom: 0 !important;
  background: none !important;
}

#resume_article li::before,
.vmc-content #resume_article li::before {
  background: var(--vmc-muted);
}


/* 1.2.427 — Bloc « En résumé : » plus éditorial, raccord avec le slogan de
   l'accueil : titre en serif italique surligné, surface chaude, texte plus présent. */
#resume_article,
.vmc-content #resume_article {
  padding: 26px 30px 26px;
  border: 1px solid rgba(214, 170, 50, .28);
  background:
    radial-gradient(120% 140% at 100% 0%, rgba(245, 197, 66, .16), transparent 55%),
    linear-gradient(160deg, #fffdf7 0%, #fbf7ec 100%);
  box-shadow: 0 18px 44px rgba(120, 90, 20, .08);
}

#resume_article::before,
.vmc-content #resume_article::before {
  content: "En résumé :";
  display: inline;
  margin: 0;
  padding: 0 .12em;
  font-family: var(--vmc-serif, var(--serif, Georgia, "Times New Roman", serif));
  font-size: 1.32rem;
  font-style: italic;
  font-weight: 500;
  letter-spacing: -.01em;
  line-height: 1.2;
  text-transform: none;
  color: var(--vmc-text);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  background: linear-gradient(180deg, transparent 58%, rgba(245, 197, 66, .55) 58%, rgba(245, 197, 66, .55) 90%, transparent 90%);
}

#resume_article > :first-child,
.vmc-content #resume_article > :first-child {
  margin-top: 14px;
}

#resume_article p,
.vmc-content #resume_article p {
  font-size: 1.06em;
  line-height: 1.7;
}

html[data-vmc-theme="dark"] #resume_article,
html[data-vmc-theme="dark"] .vmc-content #resume_article {
  border-color: rgba(245, 197, 66, .22) !important;
  background:
    radial-gradient(120% 140% at 100% 0%, rgba(245, 197, 66, .10), transparent 55%),
    linear-gradient(160deg, #1f2026 0%, #1a1c21 100%) !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .24) !important;
}

html[data-vmc-theme="dark"] #resume_article::before,
html[data-vmc-theme="dark"] .vmc-content #resume_article::before {
  color: var(--vmc-text) !important;
  background: linear-gradient(180deg, transparent 58%, rgba(245, 197, 66, .38) 58%, rgba(245, 197, 66, .38) 90%, transparent 90%) !important;
}

@media (max-width: 640px) {
  #resume_article,
  .vmc-content #resume_article { padding: 20px 18px; }
  #resume_article::before,
  .vmc-content #resume_article::before { font-size: 1.2rem; }
}


/* 1.2.428 — Rubriques sur mobile : libellé en ligne avec les pastilles,
   pastilles compactes sans flèche, pour éviter un bloc lourd sur plusieurs lignes. */
@media (max-width: 640px) {
  .vmc-post-terms {
    gap: 6px;
    margin-bottom: 16px;
  }

  .vmc-post-terms-label {
    flex: 0 0 auto;
    margin-right: 2px;
    font-size: .68rem;
    letter-spacing: .11em;
  }

  .vmc-post-terms-list {
    display: contents;
  }

  .vmc-post-term {
    min-height: 28px;
    padding: 7px 11px 4px;
    font-size: .8rem;
    font-weight: 700;
    line-height: 1.1;
  }

  .vmc-post-term-arrow {
    display: none;
  }
}


/* 1.2.429 — Fin d'article unifiée :
   - un seul style de libellé (petites capitales grises) ;
   - assistants IA en pastilles, comme les rubriques ;
   - « Signaler une erreur » en lien discret ;
   - rubriques + auteur réunis dans une carte « À propos de cet article ». */

/* Libellé « Comprendre avec l'IA : » */
body.vmc-media-child .vmc-content .vmc-ai-summary-label {
  display: block;
  margin: 0 0 12px;
  padding: 0;
  border-radius: 0;
  background: none;
  color: var(--vmc-muted);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .13em;
  line-height: 1.2;
  text-transform: uppercase;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-ai-summary-label {
  background: none !important;
  color: var(--vmc-muted) !important;
}

body.vmc-media-child .vmc-ai-summary {
  padding: 18px 20px;
  border-radius: 20px;
}

body.vmc-media-child .vmc-ai-summary-actions {
  flex-wrap: wrap;
  gap: 8px;
}

/* Assistants IA : pastilles identiques aux rubriques. */
body.vmc-media-child .vmc-content .vmc-ai-summary-provider {
  box-sizing: border-box;
  gap: 8px;
  min-height: 34px;
  padding: 8px 14px 7px 11px;
  border: 1px solid var(--vmc-border);
  border-radius: 999px;
  background: var(--vmc-surface);
  box-shadow: none;
  font-size: .86rem;
  font-weight: 750;
}

body.vmc-media-child .vmc-content .vmc-ai-summary-provider:hover,
body.vmc-media-child .vmc-content .vmc-ai-summary-provider:focus-visible {
  border-color: var(--vmc-text);
  box-shadow: none;
  transform: none;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-ai-summary-provider {
  border: 1px solid rgba(244, 241, 234, .16);
  background: #1a1c21;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-ai-summary-provider:hover,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-ai-summary-provider:focus-visible {
  border-color: rgba(244, 241, 234, .6);
  background: #1a1c21;
}

/* « Signaler une erreur dans cet article » : lien tertiaire. */
body.vmc-media-child .vmc-single .vmc-content .vmc-error-report-entry {
  margin-top: 22px;
}

body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger {
  gap: 7px;
  min-height: 0;
  padding: 4px 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--vmc-muted);
  font-size: .84rem;
  font-weight: 650;
  transform: none;
}

body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger span {
  text-decoration: underline;
  text-decoration-thickness: .07em;
  text-underline-offset: .22em;
  text-decoration-color: rgba(111, 106, 98, .45);
}

body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger:hover,
body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger:focus-visible {
  border: 0;
  background: none;
  box-shadow: none;
  color: var(--vmc-text);
  transform: none;
}

body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger:hover span,
body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger:focus-visible span {
  text-decoration-color: currentColor;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger {
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  color: var(--vmc-muted) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger:hover,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-single .vmc-content button.vmc-error-report-trigger:focus-visible {
  color: var(--vmc-text) !important;
}

/* Carte « À propos de cet article » : bandeau rubriques + auteur. */
body.vmc-media-child .vmc-article-about {
  margin-top: 34px;
  padding: 0;
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
  box-shadow: 0 14px 38px rgba(23, 21, 18, .05);
  overflow: hidden;
}

body.vmc-media-child .vmc-article-about .vmc-post-terms {
  margin: 0;
  padding: 16px 26px;
  border-bottom: 1px solid var(--vmc-border);
  background: #fdfcfa;
  gap: 8px 12px;
}

body.vmc-media-child .vmc-article-about .vmc-post-terms-label {
  font-size: .72rem;
}

body.vmc-media-child .vmc-article-about .vmc-post-term {
  min-height: 30px;
  padding: 7px 12px 6px;
  font-size: .8rem;
}

body.vmc-media-child .vmc-article-about .vmc-byline {
  margin: 0;
  padding: 22px 26px 24px;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}

body.vmc-media-child .vmc-article-about .vmc-byline-label {
  display: block;
  margin: 0 0 7px;
  color: var(--vmc-muted);
  font-family: inherit;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .13em;
  line-height: 1.2;
  text-transform: uppercase;
}

body.vmc-media-child .vmc-article-about .vmc-author-name {
  display: inline-block;
  color: var(--vmc-text);
  font-family: var(--vmc-display, var(--display, inherit));
  font-size: clamp(1.15rem, 1.7vw, 1.32rem);
  font-weight: 850;
  letter-spacing: -.02em;
  line-height: 1.2;
  text-decoration: underline;
  text-decoration-thickness: .07em;
  text-underline-offset: .22em;
  text-decoration-color: rgba(23, 21, 18, .22);
  transition: text-decoration-color .18s ease;
}

body.vmc-media-child .vmc-article-about .vmc-author-name:hover,
body.vmc-media-child .vmc-article-about .vmc-author-name:focus-visible {
  text-decoration-color: currentColor;
}

body.vmc-media-child .vmc-article-about .vmc-author-bio {
  margin-top: 6px;
  color: var(--vmc-muted);
  font-size: .95rem;
  line-height: 1.55;
}

body.vmc-media-child .vmc-article-about .vmc-author-bio p { margin: 0; }

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-article-about {
  border-color: rgba(244, 241, 234, .13) !important;
  background: #17191f !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, .22) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-article-about .vmc-post-terms {
  border-bottom-color: rgba(244, 241, 234, .12);
  background: #1a1c21;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-article-about .vmc-author-name {
  color: var(--vmc-text) !important;
  text-decoration-color: rgba(244, 241, 234, .3);
}

@media (max-width: 640px) {
  body.vmc-media-child .vmc-article-about { border-radius: 20px; }
  body.vmc-media-child .vmc-article-about .vmc-post-terms { padding: 14px 18px; }
  body.vmc-media-child .vmc-article-about .vmc-byline { padding: 18px 18px 20px; }
  body.vmc-media-child .vmc-article-about .vmc-post-term { min-height: 28px; padding: 7px 11px 4px; }
}

@media (max-width: 640px) {
  body.vmc-media-child .vmc-ai-summary { padding: 16px; }
  body.vmc-media-child .vmc-ai-summary-actions { gap: 6px; }
  body.vmc-media-child .vmc-content .vmc-ai-summary-provider {
    gap: 6px;
    min-height: 30px;
    padding: 7px 11px 6px 9px;
    font-size: .8rem;
  }
}


/* 1.2.430 — Pas de filet entre le bloc auteur et les commentaires. */
body.vmc-media-child .vmc-comments-separator {
  border-top: 0;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-comments-separator {
  border-top: 0 !important;
}


/* 1.2.431 — Rendu unique pour toutes les images du contenu : coins arrondis,
   aucune bordure ni ombre (y compris les bordures saisies dans l'éditeur,
   souvent en style inline, d'où les !important). */
body.vmc-media-child .vmc-content img:not(.emoji):not(.wp-smiley):not(.avatar) {
  border: 0 !important;
  border-radius: 18px !important;
  box-shadow: none !important;
  outline: 0;
}

body.vmc-media-child .vmc-content figure.wp-block-image,
body.vmc-media-child .vmc-content figure.wp-block-image.has-custom-border,
body.vmc-media-child .vmc-content figure:has(> img),
body.vmc-media-child .vmc-content .wp-caption {
  border: 0 !important;
  box-shadow: none !important;
  background: none;
}

/* Le style « Arrondi » de Gutenberg (cercle) devient le même arrondi standard. */
body.vmc-media-child .vmc-content .wp-block-image.is-style-rounded img {
  border-radius: 18px !important;
}

@media (max-width: 640px) {
  body.vmc-media-child .vmc-content img:not(.emoji):not(.wp-smiley):not(.avatar) {
    border-radius: 14px !important;
  }
}

/* 1.2.431 — Espacement symétrique autour du bloc « À propos de cet article » :
   même écart au-dessus (contenu) et en dessous (commentaires). */
body.vmc-media-child .vmc-article-about {
  margin-top: 34px;
}

body.vmc-media-child .vmc-single-footer:not(:has(*)) {
  display: none;
}

body.vmc-media-child .vmc-single-footer:has(*) {
  margin-top: 24px;
}

body.vmc-media-child .vmc-comments-separator {
  margin-top: 34px;
  padding-top: 0;
}

@media (max-width: 640px) {
  body.vmc-media-child .vmc-article-about,
  body.vmc-media-child .vmc-comments-separator {
    margin-top: 26px;
  }
}


/* 1.2.432 — Tableaux des articles harmonisés : une seule carte arrondie
   (comme le résumé et les citations), en-tête en petites capitales grises,
   lignes séparées par un filet fin, première colonne en gras, défilement
   horizontal sur mobile. S'applique aux blocs Gutenberg (.wp-block-table)
   comme aux tableaux bruts enveloppés par le JS (.vmc-table-scroll). */
body.vmc-media-child .vmc-content .wp-block-table,
body.vmc-media-child .vmc-content div.vmc-table-scroll {
  margin: 2em 0;
  padding: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid var(--vmc-border);
  border-radius: var(--vmc-radius);
  background: var(--vmc-surface);
  box-shadow: 0 14px 38px rgba(23, 21, 18, .05);
}

body.vmc-media-child .vmc-content table,
body.vmc-media-child .vmc-content .wp-block-table table {
  width: 100%;
  min-width: 0;
  margin: 0;
  border: 0 !important;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: var(--vmc-text);
  font-size: .94rem;
  line-height: 1.55;
}

body.vmc-media-child .vmc-content th,
body.vmc-media-child .vmc-content td {
  padding: 14px 18px;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none;
  color: var(--vmc-text);
  text-align: left;
  vertical-align: top;
}

body.vmc-media-child .vmc-content tbody tr + tr > *,
body.vmc-media-child .vmc-content thead + tbody tr:first-child > *,
body.vmc-media-child .vmc-content table > tr + tr > * {
  border-top: 1px solid var(--vmc-border) !important;
}

/* En-tête */
body.vmc-media-child .vmc-content thead th,
body.vmc-media-child .vmc-content thead td {
  padding-top: 13px;
  padding-bottom: 12px;
  background: #fbfaf8;
  color: var(--vmc-muted);
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .1em;
  line-height: 1.35;
  text-transform: uppercase;
  vertical-align: bottom;
}

/* Première colonne = libellé de ligne */
body.vmc-media-child .vmc-content tbody th,
body.vmc-media-child .vmc-content tbody td:first-child {
  font-weight: 750;
  color: var(--vmc-text);
}

body.vmc-media-child .vmc-content tbody td {
  color: rgba(23, 21, 18, .86);
}

/* Aucun effet de survol ni de zébrure parasite. */
body.vmc-media-child .vmc-content tbody tr:nth-child(even) td,
body.vmc-media-child .vmc-content tbody tr:hover td,
body.vmc-media-child .vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd),
body.vmc-media-child .vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) td {
  background: transparent;
}

/* Variante « bandes » de l'éditeur : zébrure très légère, cohérente. */
body.vmc-media-child .vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(even) > * {
  background: #fdfcfa;
}

/* Légende du tableau : même rendu que les légendes d'images. */
body.vmc-media-child .vmc-content .wp-block-table figcaption,
body.vmc-media-child .vmc-content table caption {
  margin: 0;
  padding: 12px 18px 14px;
  border-top: 1px solid var(--vmc-border);
  color: var(--vmc-muted);
  font-size: .82rem;
  font-style: italic;
  line-height: 1.45;
  text-align: center;
}

body.vmc-media-child .vmc-content table caption {
  caption-side: bottom;
}

/* Mode sombre */
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .wp-block-table,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content div.vmc-table-scroll {
  border-color: rgba(244, 241, 234, .13) !important;
  background: #17191f !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, .22) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content th,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content td,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content tbody tr:nth-child(even) td,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content tbody tr:hover td,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(odd) td {
  background: transparent !important;
  color: var(--vmc-text) !important;
  box-shadow: none !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content tbody tr + tr > *,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content thead + tbody tr:first-child > *,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content table > tr + tr > * {
  border-top: 1px solid rgba(244, 241, 234, .10) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content thead th,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content thead td {
  background: #1a1c21 !important;
  color: var(--vmc-muted) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content tbody td:not(:first-child) {
  color: rgba(244, 241, 234, .86) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .wp-block-table.is-style-stripes tbody tr:nth-child(even) > * {
  background: rgba(255, 255, 255, .03) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .wp-block-table figcaption,
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content table caption {
  border-top-color: rgba(244, 241, 234, .10);
  color: var(--vmc-muted) !important;
}

/* Mobile : la carte défile horizontalement, colonnes lisibles. */
@media (max-width: 720px) {
  body.vmc-media-child .vmc-content .wp-block-table,
  body.vmc-media-child .vmc-content div.vmc-table-scroll {
    width: 100%;
    margin: 1.6em 0;
    padding: 0;
    border-radius: 18px;
  }

  body.vmc-media-child .vmc-content table,
  body.vmc-media-child .vmc-content .wp-block-table table {
    min-width: 560px;
    font-size: .88rem;
  }

  body.vmc-media-child .vmc-content th,
  body.vmc-media-child .vmc-content td {
    padding: 12px 14px;
  }
}


/* 1.2.433 — Blocs partenaires (affiliation). Variante Amazon : bandeau bleu
   nuit, bouton jaune, filet orange. Les règles .vmc-content p sont neutralisées. */
body.vmc-media-child .vmc-content .vmc-aff {
  margin: 2em 0;
  overflow: hidden;
  border: 1px solid #d5d9d9;
  border-radius: var(--vmc-radius);
  background: #ffffff;
  box-shadow: 0 16px 40px rgba(35, 47, 62, .12);
  color: #0f1111;
  text-align: left;
}

body.vmc-media-child .vmc-content .vmc-aff p { margin: 0; }

body.vmc-media-child .vmc-content .vmc-aff-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 22px;
  background: #232f3e;
  color: #ffffff;
  font-size: .95rem;
  line-height: 1.2;
}

body.vmc-media-child .vmc-content .vmc-aff-store { font-weight: 650; }
body.vmc-media-child .vmc-content .vmc-aff-store strong { color: #ff9900; font-weight: 850; }

body.vmc-media-child .vmc-content .vmc-aff-badge {
  color: rgba(255, 255, 255, .72);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
}

body.vmc-media-child .vmc-content .vmc-aff-body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px 22px;
  padding: 20px 22px 18px;
  border-bottom: 3px solid #ff9900;
}

body.vmc-media-child .vmc-content .vmc-aff-copy { min-width: 0; }

body.vmc-media-child .vmc-content .vmc-aff-title {
  color: #0f1111;
  font-family: var(--vmc-display, inherit);
  font-size: 1.2rem;
  font-weight: 850;
  letter-spacing: -.02em;
  line-height: 1.25;
}

body.vmc-media-child .vmc-content .vmc-aff-text {
  margin-top: 5px;
  color: #565959;
  font-size: .95rem;
  line-height: 1.5;
}

body.vmc-media-child .vmc-content .vmc-aff-button {
  box-sizing: border-box;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 11px 22px 10px;
  border: 1px solid #fcd200;
  border-radius: 999px;
  background: #ffd814;
  box-shadow: 0 2px 5px rgba(213, 217, 217, .5);
  color: #0f1111;
  cursor: pointer;
  font-size: .92rem;
  font-weight: 800;
  line-height: 1.1;
  text-align: center;
  user-select: none;
  white-space: nowrap;
  transition: background-color .16s ease, border-color .16s ease, transform .16s ease;
}

body.vmc-media-child .vmc-content .vmc-aff-button:hover {
  border-color: #f2c200;
  background: #f7ca00;
  transform: translateY(-1px);
}

body.vmc-media-child .vmc-content .vmc-aff-button:focus-visible {
  outline: 3px solid #232f3e;
  outline-offset: 3px;
}

body.vmc-media-child .vmc-content .vmc-aff-arrow { font-size: .95em; }

body.vmc-media-child .vmc-content .vmc-aff-disclosure {
  padding: 10px 22px 12px;
  background: #f7f8f8;
  color: #565959;
  font-size: .74rem;
  font-style: italic;
  line-height: 1.45;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-aff {
  border-color: rgba(244, 241, 234, .14) !important;
  background: #17191f !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .3) !important;
}

html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-aff-title { color: #f4f1ea !important; }
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-aff-text { color: #b8b2a7 !important; }
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-aff-button { color: #0f1111 !important; }
html[data-vmc-theme="dark"] body.vmc-media-child .vmc-content .vmc-aff-disclosure {
  background: #1a1c21 !important;
  color: #b8b2a7 !important;
}

@media (max-width: 640px) {
  body.vmc-media-child .vmc-content .vmc-aff { border-radius: 18px; }
  body.vmc-media-child .vmc-content .vmc-aff-top { padding: 11px 18px; font-size: .88rem; }
  body.vmc-media-child .vmc-content .vmc-aff-body { flex-direction: column; align-items: stretch; padding: 18px; }
  body.vmc-media-child .vmc-content .vmc-aff-button { width: 100%; white-space: normal; }
  body.vmc-media-child .vmc-content .vmc-aff-disclosure { padding: 10px 18px 12px; }
}

/* 1.2.435 — Mention légale de la plateforme en bas des articles avec un bloc partenaire. */
body.vmc-media-child .vmc-content p.vmc-aff-legal {
  margin: 2em 0 0;
  color: var(--vmc-muted);
  font-size: .8rem;
  font-style: italic;
  line-height: 1.5;
}

/* 1.2.442 — Fil d'Ariane présenté comme « Rubriques : » : la ligne et les
   pastilles reprennent .vmc-post-terms / .vmc-post-term ; seul le séparateur › s'ajoute. */
.vmc-post-breadcrumb-list li {
  display: inline-flex;
  align-items: center;
}

.vmc-post-terms-list.vmc-post-breadcrumb-list li + li::before {
  content: "›";
  margin: 0 8px 0 0;
  color: var(--vmc-muted);
  font-size: .95rem;
  font-weight: 700;
  line-height: 1;
}

/* 1.2.440 — Ces petits textes chargeaient à eux seuls Fraunces (195 Ko) et
   JetBrains Mono (73 Ko) sur chaque article : ils reprennent la police du site. */
.vmc-comment-form-wrap .comment-notes,
.vmc-comment-form-wrap .logged-in-as,
.skip-link,
#cancel-comment-reply-link {
  font-family: inherit;
}
