/* Lot LA5 — habillage dynamique des cartes de type de consultation.
   Fond décoratif + contenus HTML dynamiques, commun front/admin. */

.consultation-type-card {
  position: relative;
  isolation: isolate;
}

.consultation-type-card .consultation-card-feature {
  display: contents;
}

.consultation-type-card .consultation-card-divider {
  display: none;
}

.consultation-type-card--icon-hidden .card-icon {
  display: none !important;
}

.consultation-type-card--visual-background,
.consultation-front-preview .consultation-type-card--visual-background,
#step-consultation-type .consultation-type-card--visual-background.location-option {
  min-height: 340px;
  padding: 28px 24px 26px !important;
  overflow: hidden;
  border-radius: 24px !important;
  border-color: rgba(103, 58, 151, .18) !important;
  background: transparent !important;
  box-shadow: 0 18px 44px rgba(49, 32, 67, .12);
}

.consultation-type-card--visual-background::after {
  content: "";
  position: absolute;
  inset: 10px;
  z-index: -1;
  border: 1px solid rgba(98, 64, 133, .13);
  border-radius: 20px;
  pointer-events: none;
}

.consultation-type-card--visual-background > .consultation-card-media,
.consultation-front-preview .consultation-type-card--visual-background > .consultation-card-media,
.consultation-front-preview .consultation-type-card--visual-background > .consultation-preview-card__media,
#step-consultation-type .consultation-type-card--visual-background > .consultation-card-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border-radius: inherit !important;
  background-image: var(--consultation-card-image-overlay), var(--consultation-card-image) !important;
  background-size: cover !important;
  background-position: var(--consultation-card-image-position, center center) !important;
  background-repeat: no-repeat !important;
  box-shadow: none !important;
}

.consultation-type-card--visual-background > .card-icon,
.consultation-front-preview .consultation-type-card--visual-background > .card-icon,
#step-consultation-type .consultation-type-card--visual-background > .card-icon.consultation-icon {
  position: relative;
  z-index: 1;
}

.consultation-type-card--visual-background > .card-content,
.consultation-front-preview .consultation-type-card--visual-background > .card-content,
#step-consultation-type .consultation-type-card--visual-background > .card-content {
  position: relative;
  z-index: 1;
}

.consultation-type-card--visual-background.selected,
.consultation-front-preview .consultation-type-card--visual-background.selected,
.consultation-front-preview .consultation-type-card--visual-background.is-preview-selected,
#step-consultation-type .consultation-type-card--visual-background.selected {
  background: transparent !important;
  box-shadow: 0 20px 52px rgba(74, 11, 119, .18) !important;
}

.consultation-type-card--layout-centered > .card-content,
.consultation-type-card--layout-spiritual-centered > .card-content {
  align-items: center;
  text-align: center;
}

.consultation-type-card--layout-spiritual-centered > .card-content {
  gap: 12px;
}

.consultation-type-card--layout-spiritual-centered .card-title,
.consultation-front-preview .consultation-type-card--layout-spiritual-centered .card-title,
#step-consultation-type .consultation-type-card--layout-spiritual-centered .card-title {
  max-width: 13ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.55rem, 4.8vw, 2.45rem) !important;
  font-weight: 500 !important;
  line-height: 1.04 !important;
  letter-spacing: -.02em;
  text-wrap: balance;
}

.consultation-type-card--theme-spiritual-purple {
  color: #312043;
}

.consultation-type-card--theme-spiritual-purple .card-title,
.consultation-front-preview .consultation-type-card--theme-spiritual-purple .card-title,
#step-consultation-type .consultation-type-card--theme-spiritual-purple .card-title {
  color: #32134f !important;
}

.consultation-type-card--theme-spiritual-purple .card-description,
.consultation-type-card--theme-spiritual-purple .consultation-card-help,
.consultation-front-preview .consultation-type-card--theme-spiritual-purple .card-description,
.consultation-front-preview .consultation-type-card--theme-spiritual-purple .consultation-card-help,
#step-consultation-type .consultation-type-card--theme-spiritual-purple .card-description,
#step-consultation-type .consultation-type-card--theme-spiritual-purple .consultation-card-help {
  color: rgba(49, 32, 67, .86) !important;
}

.consultation-type-card--theme-light .card-title,
.consultation-type-card--theme-light .card-description,
.consultation-type-card--theme-light .consultation-card-help,
.consultation-type-card--theme-light .consultation-card-badge,
.consultation-type-card--theme-light .consultation-card-action {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.consultation-type-card--density-compact {
  min-height: 0;
}

.consultation-type-card--density-hero.consultation-type-card--visual-background {
  min-height: 390px;
}

.consultation-type-card--icon-medallion > .card-icon,
.consultation-front-preview .consultation-type-card--icon-medallion > .card-icon,
#step-consultation-type .consultation-type-card--icon-medallion > .card-icon.consultation-icon {
  display: inline-flex !important;
  width: 64px !important;
  height: 64px !important;
  margin: 0 auto 8px !important;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(103, 58, 151, .22) !important;
  background: rgba(255, 255, 255, .76) !important;
  box-shadow: 0 10px 28px rgba(55, 28, 91, .14) !important;
  backdrop-filter: blur(8px);
  font-size: 1.75rem !important;
}

.consultation-type-card--divider-line .consultation-card-divider,
.consultation-type-card--divider-lotus .consultation-card-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(220px, 70%);
  height: 18px;
  margin: 0 auto;
  color: rgba(103, 58, 151, .45);
}

.consultation-type-card--divider-line .consultation-card-divider::before,
.consultation-type-card--divider-lotus .consultation-card-divider::before,
.consultation-type-card--divider-line .consultation-card-divider::after,
.consultation-type-card--divider-lotus .consultation-card-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: currentColor;
}

.consultation-type-card--divider-lotus .consultation-card-divider::before,
.consultation-type-card--divider-line .consultation-card-divider::before {
  margin-right: 12px;
}

.consultation-type-card--divider-lotus .consultation-card-divider::after,
.consultation-type-card--divider-line .consultation-card-divider::after {
  margin-left: 12px;
}

.consultation-type-card--divider-lotus .consultation-card-divider {
  font-size: 1.05rem;
}

.consultation-type-card--divider-lotus .consultation-card-divider::marker {
  content: none;
}

.consultation-type-card--divider-lotus .consultation-card-divider {
  --consultation-card-divider-symbol: "✧";
}

.consultation-type-card--divider-lotus .consultation-card-divider::before {
  box-shadow: 34px 0 0 -33px currentColor;
}

.consultation-type-card--divider-lotus .consultation-card-divider::after {
  box-shadow: -34px 0 0 -33px currentColor;
}

.consultation-type-card--divider-lotus .consultation-card-divider {
  gap: 0;
}

.consultation-type-card--divider-lotus .consultation-card-divider::selection {
  background: transparent;
}

.consultation-type-card--divider-lotus .consultation-card-divider[aria-hidden="true"] {
  font-family: Georgia, "Times New Roman", serif;
}

.consultation-type-card--divider-lotus .consultation-card-divider[aria-hidden="true"] {
  text-indent: 0;
}

.consultation-type-card--divider-lotus .consultation-card-divider[aria-hidden="true"]::before {
  content: "";
}

.consultation-type-card--divider-lotus .consultation-card-divider[aria-hidden="true"]::after {
  content: "";
}

.consultation-type-card--divider-lotus .consultation-card-divider::selection {
  color: inherit;
}

.consultation-type-card--badge-none .consultation-card-feature,
.consultation-type-card--badge-none .consultation-card-badge,
.consultation-type-card--badge-none .consultation-card-help {
  display: none !important;
}

.consultation-type-card--badge-glass-panel .consultation-card-feature {
  display: block;
  width: min(100%, 300px);
  margin: 2px auto 0;
  padding: 14px 18px;
  border-radius: 20px;
  border: 1px solid rgba(103, 58, 151, .10);
  background: rgba(255, 255, 255, .58);
  box-shadow: 0 12px 28px rgba(54, 34, 80, .10);
  backdrop-filter: blur(10px);
}

.consultation-type-card--badge-glass-panel .consultation-card-badge,
.consultation-front-preview .consultation-type-card--badge-glass-panel .consultation-card-badge,
#step-consultation-type .consultation-type-card--badge-glass-panel .consultation-card-badge {
  display: block !important;
  width: auto;
  margin: 0 0 4px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #4f2684 !important;
  font-weight: 750 !important;
  text-align: left;
}

.consultation-type-card--badge-glass-panel .consultation-card-help,
.consultation-front-preview .consultation-type-card--badge-glass-panel .consultation-card-help,
#step-consultation-type .consultation-type-card--badge-glass-panel .consultation-card-help {
  margin: 0 !important;
  text-align: left;
}

.consultation-type-card--button-pill .consultation-card-action,
.consultation-type-card--button-brand-gradient .consultation-card-action,
.consultation-front-preview .consultation-type-card--button-pill .consultation-card-action,
.consultation-front-preview .consultation-type-card--button-brand-gradient .consultation-card-action,
#step-consultation-type .consultation-type-card--button-pill .consultation-card-action,
#step-consultation-type .consultation-type-card--button-brand-gradient .consultation-card-action {
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  width: min(100%, 260px) !important;
  min-height: 44px !important;
  margin: 8px auto 0 !important;
  padding: 0 22px !important;
  border-radius: 999px !important;
  font-weight: 760 !important;
  text-decoration: none !important;
}

.consultation-type-card--button-pill .consultation-card-action,
.consultation-front-preview .consultation-type-card--button-pill .consultation-card-action,
#step-consultation-type .consultation-type-card--button-pill .consultation-card-action {
  border: 1px solid rgba(103, 58, 151, .22) !important;
  background: rgba(255, 255, 255, .68) !important;
  color: #4f2684 !important;
  -webkit-text-fill-color: #4f2684 !important;
}

.consultation-type-card--button-brand-gradient .consultation-card-action,
.consultation-front-preview .consultation-type-card--button-brand-gradient .consultation-card-action,
#step-consultation-type .consultation-type-card--button-brand-gradient .consultation-card-action {
  border: 0 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: linear-gradient(135deg, #6f3bb2, #3f166e) !important;
  box-shadow: 0 12px 26px rgba(63, 22, 110, .22) !important;
}

@media (max-width: 767px) {
  .consultation-type-card--visual-background > .consultation-card-media,
  .consultation-front-preview .consultation-type-card--visual-background > .consultation-card-media,
  #step-consultation-type .consultation-type-card--visual-background > .consultation-card-media {
    background-image: var(--consultation-card-image-overlay), var(--consultation-card-mobile-image, var(--consultation-card-image)) !important;
  }

  .consultation-type-card--density-hero.consultation-type-card--visual-background {
    min-height: 330px;
    padding: 24px 18px !important;
  }

  .consultation-type-card--layout-spiritual-centered .card-title,
  .consultation-front-preview .consultation-type-card--layout-spiritual-centered .card-title,
  #step-consultation-type .consultation-type-card--layout-spiritual-centered .card-title {
    font-size: clamp(1.32rem, 8vw, 2rem) !important;
  }
}

.consultation-type-card--surface-soft-card.consultation-type-card--visual-background::before,
.consultation-type-card--surface-glass.consultation-type-card--visual-background::before {
  content: "";
  position: absolute;
  inset: 18px;
  z-index: -1;
  border-radius: 22px;
  pointer-events: none;
}

.consultation-type-card--surface-soft-card.consultation-type-card--visual-background::before {
  background: rgba(255, 255, 255, .30);
}

.consultation-type-card--surface-glass.consultation-type-card--visual-background::before {
  background: rgba(255, 255, 255, .42);
  border: 1px solid rgba(255, 255, 255, .45);
  backdrop-filter: blur(8px);
}

.consultation-front-preview .consultation-type-card--visual-background > .card-icon.consultation-icon,
#step-consultation-type .consultation-type-card--visual-background > .card-icon.consultation-icon {
  margin-top: 0 !important;
}

/* Lot LA7 — garde-fous de parité front/admin.
   Le front peut recevoir la configuration visuelle sous forme racine, camelCase,
   snake_case ou data-attributes. Ces sélecteurs garantissent que le mode
   “background” reste un fond pleine carte et ne retombe jamais sur l'ancien
   rendu bandeau image. */
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image {
  min-height: 390px;
  padding: 28px 24px 26px !important;
  overflow: hidden;
  border-radius: 24px !important;
  background: transparent !important;
  box-shadow: 0 18px 44px rgba(49, 32, 67, .12) !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image > .consultation-card-media,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image > .consultation-card-media,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image > .consultation-preview-card__media {
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border-radius: inherit !important;
  background-image: var(--consultation-card-image-overlay), var(--consultation-card-image) !important;
  background-size: cover !important;
  background-position: var(--consultation-card-image-position, center center) !important;
  background-repeat: no-repeat !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  #step-consultation-type .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image > .consultation-card-media,
  .consultation-front-preview .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image > .consultation-card-media,
  .consultation-front-preview .consultation-type-card[data-card-visual-mode="background"].consultation-type-card--has-image > .consultation-preview-card__media {
    background-image: var(--consultation-card-image-overlay), var(--consultation-card-mobile-image, var(--consultation-card-image)) !important;
  }
}

/* En mode image de fond, le badge “sélectionné” ne doit pas modifier la hauteur
   ni casser la correspondance avec la prévisualisation admin. */
#step-consultation-type .consultation-type-card--visual-background .consultation-selected-badge,
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"] .consultation-selected-badge {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: var(--brand-primary, #4a0b77) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 10px 24px rgba(74, 11, 119, .24) !important;
  font-size: 0 !important;
  line-height: 1 !important;
}

#step-consultation-type .consultation-type-card--visual-background .consultation-selected-badge::before,
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"] .consultation-selected-badge::before {
  content: "✓";
  font-size: 1rem;
  font-weight: 800;
}

/* Lot LA9 — parité stricte front/admin même si seules les data-attributes arrivent côté front. */
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-has-admin-image="true"],
#step-consultation-type .location-option[data-card-visual-mode="background"][data-has-admin-image="true"],
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-has-admin-image="true"] {
  min-height: 390px !important;
  padding: 28px 24px 26px !important;
  overflow: hidden !important;
  border-radius: 24px !important;
  border-color: rgba(103, 58, 151, .18) !important;
  background: transparent !important;
  box-shadow: 0 18px 44px rgba(49, 32, 67, .12) !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-has-admin-image="true"] > .consultation-card-media,
#step-consultation-type .location-option[data-card-visual-mode="background"][data-has-admin-image="true"] > .consultation-card-media,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-has-admin-image="true"] > .consultation-card-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border-radius: inherit !important;
  background-image: var(--consultation-card-image-overlay), var(--consultation-card-image) !important;
  background-size: cover !important;
  background-position: var(--consultation-card-image-position, center center) !important;
  background-repeat: no-repeat !important;
  box-shadow: none !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-mode="background"] > .card-icon,
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"] > .card-content,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"] > .card-icon,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"] > .card-content {
  position: relative !important;
  z-index: 1 !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-layout="centered"] > .card-content,
#step-consultation-type .consultation-type-card[data-card-visual-layout="spiritual_centered"] > .card-content,
.consultation-front-preview .consultation-type-card[data-card-visual-layout="centered"] > .card-content,
.consultation-front-preview .consultation-type-card[data-card-visual-layout="spiritual_centered"] > .card-content {
  align-items: center !important;
  text-align: center !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-layout="spiritual_centered"] .card-title,
.consultation-front-preview .consultation-type-card[data-card-visual-layout="spiritual_centered"] .card-title {
  max-width: 13ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.55rem, 4.8vw, 2.45rem) !important;
  font-weight: 500 !important;
  line-height: 1.04 !important;
  letter-spacing: -.02em !important;
  text-wrap: balance;
  color: #32134f !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-text-theme="spiritual_purple"] .card-description,
#step-consultation-type .consultation-type-card[data-card-visual-text-theme="spiritual_purple"] .consultation-card-help,
.consultation-front-preview .consultation-type-card[data-card-visual-text-theme="spiritual_purple"] .card-description,
.consultation-front-preview .consultation-type-card[data-card-visual-text-theme="spiritual_purple"] .consultation-card-help {
  color: rgba(49, 32, 67, .86) !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-icon-style="medallion"] > .card-icon.consultation-icon,
.consultation-front-preview .consultation-type-card[data-card-visual-icon-style="medallion"] > .card-icon.consultation-icon {
  display: inline-flex !important;
  width: 64px !important;
  height: 64px !important;
  margin: 0 auto 8px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  border: 1px solid rgba(103, 58, 151, .22) !important;
  background: rgba(255, 255, 255, .76) !important;
  box-shadow: 0 10px 28px rgba(55, 28, 91, .14) !important;
  backdrop-filter: blur(8px);
  font-size: 1.75rem !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-divider="line"] .consultation-card-divider,
#step-consultation-type .consultation-type-card[data-card-visual-divider="lotus"] .consultation-card-divider,
.consultation-front-preview .consultation-type-card[data-card-visual-divider="line"] .consultation-card-divider,
.consultation-front-preview .consultation-type-card[data-card-visual-divider="lotus"] .consultation-card-divider {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: min(220px, 70%) !important;
  height: 18px !important;
  margin: 0 auto !important;
  color: rgba(103, 58, 151, .45) !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-badge-style="glass_panel"] .consultation-card-feature,
.consultation-front-preview .consultation-type-card[data-card-visual-badge-style="glass_panel"] .consultation-card-feature {
  display: block !important;
  width: min(100%, 300px) !important;
  margin: 2px auto 0 !important;
  padding: 14px 18px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(103, 58, 151, .10) !important;
  background: rgba(255, 255, 255, .58) !important;
  box-shadow: 0 12px 28px rgba(54, 34, 80, .10) !important;
  backdrop-filter: blur(10px);
}

#step-consultation-type .consultation-type-card[data-card-visual-badge-style="glass_panel"] .consultation-card-badge,
.consultation-front-preview .consultation-type-card[data-card-visual-badge-style="glass_panel"] .consultation-card-badge {
  display: block !important;
  width: auto !important;
  margin: 0 0 4px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #4f2684 !important;
  font-weight: 750 !important;
  text-align: left !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-button-style="brand_gradient"] .consultation-card-action,
.consultation-front-preview .consultation-type-card[data-card-visual-button-style="brand_gradient"] .consultation-card-action {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: min(100%, 260px) !important;
  min-height: 44px !important;
  margin: 8px auto 0 !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  font-weight: 760 !important;
  text-decoration: none !important;
  background: linear-gradient(135deg, #6f3bb2, #3f166e) !important;
  box-shadow: 0 12px 26px rgba(63, 22, 110, .22) !important;
}

@media (max-width: 767px) {
  #step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-has-admin-image="true"] > .consultation-card-media,
  .consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-has-admin-image="true"] > .consultation-card-media {
    background-image: var(--consultation-card-image-overlay), var(--consultation-card-mobile-image, var(--consultation-card-image)) !important;
  }

  #step-consultation-type .consultation-type-card[data-card-visual-density="hero"][data-card-visual-mode="background"],
  .consultation-front-preview .consultation-type-card[data-card-visual-density="hero"][data-card-visual-mode="background"] {
    min-height: 330px !important;
    padding: 24px 18px !important;
  }
}

/* Lot LA11 — densité réellement active en mode fond dynamique.
   Les garde-fous LA7/LA9 forçaient min-height:390px pour toutes les cartes
   background avec image ; ce bloc rétablit des écarts visibles entre Compact,
   Standard et Grande carte visuelle, en admin comme en front. */
#step-consultation-type .consultation-type-card--visual-background.consultation-type-card--density-compact,
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="compact"],
.consultation-front-preview .consultation-type-card--visual-background.consultation-type-card--density-compact,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="compact"] {
  min-height: 300px !important;
  padding: 20px 18px 18px !important;
}

#step-consultation-type .consultation-type-card--visual-background.consultation-type-card--density-standard,
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="standard"],
.consultation-front-preview .consultation-type-card--visual-background.consultation-type-card--density-standard,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="standard"] {
  min-height: 390px !important;
  padding: 28px 24px 26px !important;
}

#step-consultation-type .consultation-type-card--visual-background.consultation-type-card--density-hero,
#step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="hero"],
.consultation-front-preview .consultation-type-card--visual-background.consultation-type-card--density-hero,
.consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="hero"] {
  min-height: 520px !important;
  padding: 36px 28px 32px !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="compact"] > .card-content,
.consultation-front-preview .consultation-type-card[data-card-visual-density="compact"] > .card-content {
  gap: 5px !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="standard"] > .card-content,
.consultation-front-preview .consultation-type-card[data-card-visual-density="standard"] > .card-content {
  gap: 10px !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="hero"] > .card-content,
.consultation-front-preview .consultation-type-card[data-card-visual-density="hero"] > .card-content {
  gap: 15px !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="compact"] > .card-icon.consultation-icon,
.consultation-front-preview .consultation-type-card[data-card-visual-density="compact"] > .card-icon.consultation-icon {
  width: 44px !important;
  height: 44px !important;
  margin-bottom: 4px !important;
  font-size: 1.25rem !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="hero"] > .card-icon.consultation-icon,
.consultation-front-preview .consultation-type-card[data-card-visual-density="hero"] > .card-icon.consultation-icon {
  width: 74px !important;
  height: 74px !important;
  margin-bottom: 10px !important;
  font-size: 2rem !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="compact"] .card-title,
.consultation-front-preview .consultation-type-card[data-card-visual-density="compact"] .card-title {
  font-size: clamp(1.25rem, 3.4vw, 1.75rem) !important;
  line-height: 1.08 !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="standard"] .card-title,
.consultation-front-preview .consultation-type-card[data-card-visual-density="standard"] .card-title {
  font-size: clamp(1.55rem, 4.8vw, 2.45rem) !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="hero"] .card-title,
.consultation-front-preview .consultation-type-card[data-card-visual-density="hero"] .card-title {
  font-size: clamp(2rem, 5.2vw, 3.2rem) !important;
  line-height: 1.02 !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="compact"] .consultation-card-feature,
.consultation-front-preview .consultation-type-card[data-card-visual-density="compact"] .consultation-card-feature {
  padding: 10px 12px !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="hero"] .consultation-card-feature,
.consultation-front-preview .consultation-type-card[data-card-visual-density="hero"] .consultation-card-feature {
  width: min(100%, 340px) !important;
  padding: 18px 22px !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="compact"] .consultation-card-action,
.consultation-front-preview .consultation-type-card[data-card-visual-density="compact"] .consultation-card-action {
  min-height: 36px !important;
  padding: 0 16px !important;
  font-size: .82rem !important;
}

#step-consultation-type .consultation-type-card[data-card-visual-density="hero"] .consultation-card-action,
.consultation-front-preview .consultation-type-card[data-card-visual-density="hero"] .consultation-card-action {
  width: min(100%, 300px) !important;
  min-height: 52px !important;
  padding: 0 26px !important;
  font-size: 1rem !important;
}

@media (max-width: 767px) {
  #step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="compact"],
  .consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="compact"] {
    min-height: 270px !important;
    padding: 18px 16px !important;
  }

  #step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="standard"],
  .consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="standard"] {
    min-height: 330px !important;
    padding: 24px 18px !important;
  }

  #step-consultation-type .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="hero"],
  .consultation-front-preview .consultation-type-card[data-card-visual-mode="background"][data-card-visual-density="hero"] {
    min-height: 430px !important;
    padding: 28px 20px !important;
  }
}

/* Lot LA12 — densité live vraiment prioritaire.
   Corrige le cas admin où la classe changeait mais plusieurs sous-règles ne
   ciblaient que data-card-visual-density. On cible maintenant les classes ET
   les attributs, sans dépendre du conteneur de preview. */
html body .consultation-type-card.consultation-type-card--visual-background.consultation-type-card--density-compact,
html body .consultation-type-card.consultation-type-card--visual-background[data-card-visual-density="compact"],
html body .consultation-preview-card.consultation-type-card--visual-background.consultation-type-card--density-compact,
html body .consultation-preview-card.consultation-type-card--visual-background[data-card-visual-density="compact"] {
  min-height: 270px !important;
  height: auto !important;
  max-height: none !important;
  padding: 18px 16px 16px !important;
}

html body .consultation-type-card.consultation-type-card--visual-background.consultation-type-card--density-standard,
html body .consultation-type-card.consultation-type-card--visual-background[data-card-visual-density="standard"],
html body .consultation-preview-card.consultation-type-card--visual-background.consultation-type-card--density-standard,
html body .consultation-preview-card.consultation-type-card--visual-background[data-card-visual-density="standard"] {
  min-height: 380px !important;
  height: auto !important;
  max-height: none !important;
  padding: 28px 24px 26px !important;
}

html body .consultation-type-card.consultation-type-card--visual-background.consultation-type-card--density-hero,
html body .consultation-type-card.consultation-type-card--visual-background[data-card-visual-density="hero"],
html body .consultation-preview-card.consultation-type-card--visual-background.consultation-type-card--density-hero,
html body .consultation-preview-card.consultation-type-card--visual-background[data-card-visual-density="hero"] {
  min-height: 540px !important;
  height: auto !important;
  max-height: none !important;
  padding: 42px 30px 36px !important;
}

html body .consultation-type-card.consultation-type-card--density-compact > .card-content,
html body .consultation-type-card[data-card-visual-density="compact"] > .card-content {
  gap: 5px !important;
}

html body .consultation-type-card.consultation-type-card--density-standard > .card-content,
html body .consultation-type-card[data-card-visual-density="standard"] > .card-content {
  gap: 10px !important;
}

html body .consultation-type-card.consultation-type-card--density-hero > .card-content,
html body .consultation-type-card[data-card-visual-density="hero"] > .card-content {
  gap: 16px !important;
}

html body .consultation-type-card.consultation-type-card--density-compact > .card-icon.consultation-icon,
html body .consultation-type-card[data-card-visual-density="compact"] > .card-icon.consultation-icon,
html body .consultation-preview-card.consultation-type-card--density-compact > .card-icon,
html body .consultation-preview-card[data-card-visual-density="compact"] > .card-icon {
  width: 42px !important;
  height: 42px !important;
  margin-bottom: 2px !important;
  font-size: 1.15rem !important;
}

html body .consultation-type-card.consultation-type-card--density-standard > .card-icon.consultation-icon,
html body .consultation-type-card[data-card-visual-density="standard"] > .card-icon.consultation-icon,
html body .consultation-preview-card.consultation-type-card--density-standard > .card-icon,
html body .consultation-preview-card[data-card-visual-density="standard"] > .card-icon {
  width: 64px !important;
  height: 64px !important;
  margin-bottom: 8px !important;
  font-size: 1.75rem !important;
}

html body .consultation-type-card.consultation-type-card--density-hero > .card-icon.consultation-icon,
html body .consultation-type-card[data-card-visual-density="hero"] > .card-icon.consultation-icon,
html body .consultation-preview-card.consultation-type-card--density-hero > .card-icon,
html body .consultation-preview-card[data-card-visual-density="hero"] > .card-icon {
  width: 80px !important;
  height: 80px !important;
  margin-bottom: 14px !important;
  font-size: 2.1rem !important;
}

html body .consultation-type-card.consultation-type-card--density-compact .card-title,
html body .consultation-type-card[data-card-visual-density="compact"] .card-title {
  font-size: clamp(1.18rem, 3.2vw, 1.65rem) !important;
  line-height: 1.08 !important;
}

html body .consultation-type-card.consultation-type-card--density-standard .card-title,
html body .consultation-type-card[data-card-visual-density="standard"] .card-title {
  font-size: clamp(1.55rem, 4.8vw, 2.45rem) !important;
  line-height: 1.04 !important;
}

html body .consultation-type-card.consultation-type-card--density-hero .card-title,
html body .consultation-type-card[data-card-visual-density="hero"] .card-title {
  font-size: clamp(2.15rem, 5.6vw, 3.45rem) !important;
  line-height: 1 !important;
}

html body .consultation-type-card.consultation-type-card--density-compact .card-description,
html body .consultation-type-card[data-card-visual-density="compact"] .card-description,
html body .consultation-type-card.consultation-type-card--density-compact .consultation-card-help,
html body .consultation-type-card[data-card-visual-density="compact"] .consultation-card-help {
  font-size: .82rem !important;
  line-height: 1.25 !important;
}

html body .consultation-type-card.consultation-type-card--density-hero .card-description,
html body .consultation-type-card[data-card-visual-density="hero"] .card-description {
  font-size: 1.06rem !important;
  line-height: 1.38 !important;
}

html body .consultation-type-card.consultation-type-card--density-compact .consultation-card-feature,
html body .consultation-type-card[data-card-visual-density="compact"] .consultation-card-feature {
  width: min(100%, 250px) !important;
  padding: 8px 10px !important;
}

html body .consultation-type-card.consultation-type-card--density-standard .consultation-card-feature,
html body .consultation-type-card[data-card-visual-density="standard"] .consultation-card-feature {
  width: min(100%, 300px) !important;
  padding: 14px 18px !important;
}

html body .consultation-type-card.consultation-type-card--density-hero .consultation-card-feature,
html body .consultation-type-card[data-card-visual-density="hero"] .consultation-card-feature {
  width: min(100%, 360px) !important;
  padding: 20px 24px !important;
}

html body .consultation-type-card.consultation-type-card--density-compact .consultation-card-action,
html body .consultation-type-card[data-card-visual-density="compact"] .consultation-card-action {
  width: min(100%, 210px) !important;
  min-height: 34px !important;
  padding: 0 14px !important;
  font-size: .8rem !important;
}

html body .consultation-type-card.consultation-type-card--density-standard .consultation-card-action,
html body .consultation-type-card[data-card-visual-density="standard"] .consultation-card-action {
  width: min(100%, 260px) !important;
  min-height: 44px !important;
  padding: 0 22px !important;
  font-size: .92rem !important;
}

html body .consultation-type-card.consultation-type-card--density-hero .consultation-card-action,
html body .consultation-type-card[data-card-visual-density="hero"] .consultation-card-action {
  width: min(100%, 320px) !important;
  min-height: 56px !important;
  padding: 0 28px !important;
  font-size: 1.05rem !important;
}

@media (max-width: 767px) {
  html body .consultation-type-card.consultation-type-card--visual-background.consultation-type-card--density-compact,
  html body .consultation-type-card.consultation-type-card--visual-background[data-card-visual-density="compact"] {
    min-height: 245px !important;
    padding: 16px 14px !important;
  }

  html body .consultation-type-card.consultation-type-card--visual-background.consultation-type-card--density-standard,
  html body .consultation-type-card.consultation-type-card--visual-background[data-card-visual-density="standard"] {
    min-height: 330px !important;
    padding: 24px 18px !important;
  }

  html body .consultation-type-card.consultation-type-card--visual-background.consultation-type-card--density-hero,
  html body .consultation-type-card.consultation-type-card--visual-background[data-card-visual-density="hero"] {
    min-height: 440px !important;
    padding: 30px 20px !important;
  }
}
