/* ==========================================================================
   Espace parent 1.7.0 — barre latérale claire + écran Accueil
   --------------------------------------------------------------------------
   CSS écrit à la main, chargé par ClientDashboard sur la seule page qui porte
   [relpro_client_dashboard], après relpro-booking.css (dépendance).

   Même construction que l'espace pro (relpro-pro-dashboard.css, classes
   relpro-shell__*), mais dans des classes propres (relpro-cd*) : les deux
   feuilles ne sont jamais chargées ensemble, et l'espace pro ne doit pas
   bouger quand celui-ci change.

   Teinte : « Pêche », plus douce que le corail vif des pros. Toutes les
   couleurs passent par les variables ci-dessous — changer de teinte, c'est
   changer ce seul bloc (variante « Sauge » en commentaire).
   ========================================================================== */

.relpro-cd {
  --cd-accent:      #C2593F;   /* texte et icône actifs */
  --cd-accent-700:  #A84A33;
  --cd-accent-100:  #FBE3D5;   /* fonds doux, liens d'action */
  --cd-hero-a:      #F7D3C3;   /* carte vedette, dégradé */
  --cd-hero-b:      #FBE6D3;
  --cd-hero-fg:     #3B2A24;
  --cd-hero-sub:    #7A5A4E;
  --cd-hero-ring:   rgba(212, 85, 58, .18);
  --cd-glass:       rgba(255, 255, 255, .55);
  --cd-glass-hover: rgba(255, 255, 255, .8);
  /* Sauge : accent #3F8780, 700 #2F6B65, 100 #DCEEEA, hero #CFE6E1 → #EAF3EC,
     fg #24433F, sub #4F6D68, ring rgba(63,135,128,.2). */

  --cd-teal:      var(--cp-teal, #5BA8A0);
  --cd-teal-700:  #3F8780;
  --cd-teal-200:  #C8E2DF;
  --cd-cream:     var(--cp-cream, #FBF6F0);
  --cd-peach:     var(--cp-peach, #F5EDE3);
  --cd-cacao:     var(--cp-cacao, #3B2A24);
  --cd-ink:       var(--cp-graphite, #2C2C2A);
  --cd-muted:     #888780;
  --cd-line:      #ECE3D6;
  --cd-soft:      #5C5650;
  --cd-ok:        #2E7A55;
  --cd-ok-bg:     #E3F1EA;
  --cd-wait:      #8A5A00;
  --cd-wait-bg:   #FFF3D6;
  --cd-danger:    #B3261E;
  --cd-shadow:    0 10px 30px rgba(59, 42, 36, .07), 0 2px 6px rgba(59, 42, 36, .04);
  --cd-ease:      cubic-bezier(.22, .61, .36, 1);
}

/* La page du thème porte déjà un H1 : l'en-tête « Bonjour … » le remplace.
   Fond uni, comme l'espace pro (1.6.1). */
body:has(.relpro-cd) .entry-header { display: none; }
body:has(.relpro-cd) { background: var(--cp-white, #fff); }
body:has(.relpro-cd) .inside-article { background: transparent; padding: 28px 0 48px; }

/* ── Cadre ── */
.relpro-client-dashboard.relpro-cd {
  max-width: none;
  width: min(1320px, calc(100vw - 32px));
  margin: 8px 0 40px calc((100% - min(1320px, calc(100vw - 32px))) / 2);
  padding: 0;
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  background: var(--cd-cream);
  border-radius: 32px;
  box-shadow: 0 30px 80px rgba(59, 42, 36, .12);
  font-family: 'Lato', var(--relpro-font-body, sans-serif);
  color: var(--cd-ink);
}
.relpro-cd a { text-decoration: none; }

/* ── Barre latérale ── */
.relpro-cd__rail {
  background: var(--cd-peach);
  border-right: 1px solid var(--cd-line);
  border-radius: 32px 0 0 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 24px 0 20px;
  position: sticky;
  top: 0;
  align-self: start;
  min-height: 100%;
}
.relpro-cd__me { display: block; width: 54px; height: 54px; border-radius: 18px; overflow: hidden; margin-bottom: 18px; border: 3px solid #fff; box-shadow: var(--cd-shadow); background: var(--cd-accent-100); color: var(--cd-accent); }
.relpro-cd__me img { width: 100%; height: 100%; object-fit: cover; display: block; }
.relpro-cd__me span { display: grid; place-items: center; height: 100%; font-weight: 700; font-size: 20px; }
.relpro-cd__item {
  position: relative;
  width: 80px;
  padding: 10px 2px 8px;
  border-radius: 18px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  color: var(--cd-soft);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  transition: background-color .2s var(--cd-ease), color .2s var(--cd-ease), box-shadow .2s var(--cd-ease);
}
.relpro-cd__item svg { width: 22px; height: 22px; }
.relpro-cd__item:hover { background: rgba(59, 42, 36, .06); color: var(--cd-ink); }
.relpro-cd__item.is-active { background: #fff; color: var(--cd-accent); box-shadow: 0 6px 16px rgba(59, 42, 36, .08); }
.relpro-cd__spacer { flex: 1; min-height: 16px; }
.relpro-cd__badge {
  position: absolute;
  top: 2px;
  right: 14px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 9px;
  background: var(--cd-accent);
  color: #fff;
  font-size: 10.5px;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
}

/* ── Zone principale ── */
.relpro-cd__main { padding: 32px 36px 40px; min-width: 0; }
.relpro-cd__top { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-bottom: 26px; }
.relpro-cd__hello { flex: 1; min-width: 240px; }
.relpro-cd__title { font-family: 'Caveat', cursive; font-weight: 700; font-size: 46px; line-height: 1; margin: 0; color: var(--cd-ink); }
.relpro-cd__title span { color: var(--cd-accent); }
.relpro-cd__subtitle { margin: 6px 0 0; color: var(--cd-muted); font-size: 14px; }
.relpro-cd__pill { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border-radius: 999px; background: #fff; box-shadow: var(--cd-shadow); font-size: 14px; font-weight: 700; color: var(--cd-ink); }
.relpro-cd__pill::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #3DAA77; box-shadow: 0 0 0 4px rgba(61, 170, 119, .18); }
.relpro-cd__pill:hover { color: var(--cd-ink); }
.relpro-cd__btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 20px; border-radius: 999px; background: var(--cd-cacao); color: #fff; font-weight: 700; font-size: 14px; transition: transform .2s var(--cd-ease), box-shadow .2s var(--cd-ease); }
.relpro-cd__btn:hover { color: #fff; transform: translateY(-2px); box-shadow: var(--cd-shadow); }

/* ── Cartes ── */
.relpro-cd-card { display: block; background: #fff; border: 0; border-radius: 28px; padding: 24px 26px; box-shadow: var(--cd-shadow); color: var(--cd-ink); min-width: 0; }
a.relpro-cd-card { transition: transform .2s var(--cd-ease); }
a.relpro-cd-card:hover { transform: translateY(-3px); color: var(--cd-ink); }
.relpro-cd-card__head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 14px; }
.relpro-cd-card__title { font-family: 'Lato', sans-serif; font-size: 17px; font-weight: 700; margin: 0; color: inherit; letter-spacing: 0; line-height: 1.3; }
.relpro-cd-card__sub { display: block; font-size: 13px; color: var(--cd-muted); margin-top: 2px; }
.relpro-cd-card__link { font-size: 14px; font-weight: 700; color: var(--cd-accent); white-space: nowrap; }
.relpro-cd-card__link:hover { color: var(--cd-accent-700); }
.relpro-cd-card__empty { margin: 4px 0 0; font-size: 14.5px; line-height: 1.6; color: var(--cd-soft); }
.relpro-cd-card__empty a { font-weight: 700; color: var(--cd-accent); margin-left: 4px; }
.relpro-cd-block + .relpro-cd-block { margin-top: 22px; }

/* ==========================================================================
   Accueil
   ========================================================================== */

.relpro-cd-home {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(0, .95fr);
  grid-auto-flow: row dense;
  gap: 22px;
  align-items: start;
}
.relpro-cd-home__card--wide,
.relpro-cd-hero--welcome { grid-column: span 2; }
.relpro-cd-home__stack { display: grid; gap: 22px; grid-column: 3; grid-row: 1 / span 6; }

/* Carte vedette */
.relpro-cd-hero { background: linear-gradient(140deg, var(--cd-hero-a) 0%, var(--cd-hero-b) 100%); color: var(--cd-hero-fg); position: relative; overflow: hidden; }
.relpro-cd-hero::after { content: ""; position: absolute; width: 260px; height: 260px; border-radius: 50%; border: 2px solid var(--cd-hero-ring); right: -90px; top: -110px; pointer-events: none; }
.relpro-cd-hero .relpro-cd-card__sub { color: var(--cd-hero-sub); }
.relpro-cd-hero__date { display: flex; align-items: flex-end; gap: 14px; margin: 12px 0 14px; }
.relpro-cd-hero__day { font-family: 'Caveat', cursive; font-weight: 700; font-size: 64px; line-height: 1; color: var(--cd-accent); }
.relpro-cd-hero__date div { padding-bottom: 8px; font-size: 15px; line-height: 1.35; }
.relpro-cd-hero__date b { display: block; font-size: 17px; }
.relpro-cd-hero__pro { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 18px; background: var(--cd-glass); }
.relpro-cd-hero__pro small { display: block; font-size: 13px; color: var(--cd-hero-sub); }
.relpro-cd-hero__ph { width: 44px; height: 44px; border-radius: 50%; background: var(--cd-accent-100); color: var(--cd-accent); display: grid; place-items: center; font-weight: 700; flex: none; }
.relpro-cd-hero__actions { display: flex; gap: 10px; margin-top: 16px; flex-wrap: wrap; position: relative; z-index: 1; }
/* GeneratePress blanchit les <button> au survol et au focus : couleurs posées
   sur les trois états. */
.relpro-cd .relpro-cd-hero__btn,
.relpro-cd .relpro-cd-hero__btn:hover,
.relpro-cd .relpro-cd-hero__btn:focus { padding: 9px 16px; border-radius: 999px; font: 700 13.5px/1.3 'Lato', sans-serif; cursor: pointer; }
.relpro-cd .relpro-cd-hero__btn--solid,
.relpro-cd .relpro-cd-hero__btn--solid:hover,
.relpro-cd .relpro-cd-hero__btn--solid:focus { background: var(--cd-hero-fg); color: #fff; border: 1px solid var(--cd-hero-fg); }
.relpro-cd .relpro-cd-hero__btn--line,
.relpro-cd .relpro-cd-hero__btn--line:hover,
.relpro-cd .relpro-cd-hero__btn--line:focus { background: transparent; color: var(--cd-hero-fg); border: 1px solid var(--cd-hero-sub); }
.relpro-cd .relpro-cd-hero__btn--line:hover { background: var(--cd-glass); }

/* Étapes de bienvenue */
.relpro-cd-steps { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 14px; position: relative; z-index: 1; }
.relpro-cd-steps li { margin: 0; }
.relpro-cd-step { display: block; height: 100%; background: var(--cd-glass); border-radius: 20px; padding: 16px; color: var(--cd-hero-fg); transition: background-color .2s var(--cd-ease); }
.relpro-cd-step:hover { background: var(--cd-glass-hover); color: var(--cd-hero-fg); }
.relpro-cd-step b { display: block; font: 700 28px/1 'Caveat', cursive; color: var(--cd-accent); margin-bottom: 6px; }
.relpro-cd-step strong { display: block; font-size: 15px; margin-bottom: 4px; }
.relpro-cd-step span { font-size: 13px; line-height: 1.45; color: var(--cd-hero-sub); }

/* Petites cartes à pastille */
.relpro-cd-mini { display: flex; align-items: center; gap: 16px; }
.relpro-cd-mini__tile { width: 72px; height: 72px; border-radius: 22px; display: grid; place-content: center; text-align: center; flex: none; font-family: 'Caveat', cursive; font-weight: 700; font-size: 26px; line-height: 1; }
.relpro-cd-mini__tile small { display: block; font: 700 10.5px 'Lato', sans-serif; margin-top: 3px; }
.relpro-cd-mini__tile--accent { background: var(--cd-accent-100); color: var(--cd-accent); }
.relpro-cd-mini__tile--teal { background: var(--cd-teal-200); color: var(--cd-teal-700); }
.relpro-cd-mini__body { flex: 1; min-width: 0; }
.relpro-cd-mini__body strong { display: block; font-size: 16px; }
.relpro-cd-mini__body small { display: block; margin-top: 6px; font-size: 12.5px; color: var(--cd-muted); }
.relpro-cd-mini__bar { display: block; height: 9px; border-radius: 9px; background: var(--cd-peach); margin-top: 9px; overflow: hidden; }
.relpro-cd-mini__bar span { display: block; height: 100%; border-radius: 9px; background: var(--cd-teal); }

/* Mes professionnels */
.relpro-cd-pros { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.relpro-cd-pro { display: flex; align-items: center; gap: 12px; margin: 0; }
.relpro-cd-pro__ph { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; flex: none; background: var(--cd-accent-100); color: var(--cd-accent); object-fit: cover; }
.relpro-cd-pro:nth-child(even) .relpro-cd-pro__ph { background: var(--cd-teal-200); color: var(--cd-teal-700); }
.relpro-cd-pro div { flex: 1; min-width: 0; }
.relpro-cd-pro strong { display: block; font-size: 15px; }
.relpro-cd-pro small { color: var(--cd-muted); font-size: 13px; }
.relpro-cd-pro a { font-size: 13px; font-weight: 700; color: var(--cd-accent); white-space: nowrap; }
.relpro-cd-foot { display: flex; align-items: center; gap: 14px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--cd-line); color: var(--cd-muted); font-size: 13.5px; }
.relpro-cd-foot:hover { color: var(--cd-muted); }
.relpro-cd-foot__ic { width: 42px; height: 42px; border-radius: 14px; background: var(--cd-teal-200); color: var(--cd-teal-700); display: grid; place-items: center; flex: none; }
.relpro-cd-foot > span:nth-child(2) { flex: 1; }
.relpro-cd-foot strong { display: block; color: var(--cd-ink); font-size: 15px; }
.relpro-cd-foot b { font-size: 22px; color: var(--cd-ink); }

/* ==========================================================================
   Onglets Rendez-vous et Pros
   ========================================================================== */

.relpro-cd-rows { list-style: none; margin: 0; padding: 0; }
.relpro-cd-row {
  display: grid;
  grid-template-columns: 52px minmax(0, 1.5fr) minmax(0, 1fr) 150px 170px;
  gap: 14px;
  align-items: center;
  padding: 12px 10px;
  margin: 0;
  border: 0;
  border-radius: 18px;
  background: transparent;
  box-shadow: none;
  transition: background-color .2s var(--cd-ease);
}
.relpro-cd-row:hover { background: var(--cd-cream); }
.relpro-cd-row + .relpro-cd-row { border-top: 1px solid var(--cd-line); border-radius: 0; }
.relpro-cd-row__date { width: 52px; height: 52px; border-radius: 16px; background: var(--cd-accent-100); color: var(--cd-accent); display: grid; place-content: center; text-align: center; font-size: 11.5px; font-weight: 700; text-transform: uppercase; line-height: 1.1; }
.relpro-cd-row__date b { display: block; font: 700 24px/1 'Caveat', cursive; text-transform: none; }
.relpro-cd-row__main strong { display: block; font-size: 15px; }
.relpro-cd-row__main small, .relpro-cd-row__when small { display: block; color: var(--cd-muted); font-size: 13px; font-weight: 400; }
.relpro-cd-row__main a { color: var(--cd-soft); }
.relpro-cd-row__main a:hover { color: var(--cd-accent); }
.relpro-cd-row__when { font-size: 14px; font-weight: 700; }
.relpro-cd-row__actions { display: flex; justify-content: flex-end; gap: 8px; }
.relpro-cd-row__stars { color: #E8833A; letter-spacing: 2px; font-size: 14px; }

.relpro-cd-tag { justify-self: start; padding: 5px 12px; border-radius: 999px; font-size: 12.5px; font-weight: 700; background: var(--cd-peach); color: var(--cd-soft); }
.relpro-cd-tag--ok { background: var(--cd-teal-200); color: var(--cd-teal-700); }
.relpro-cd-tag--wait { background: var(--cd-wait-bg); color: var(--cd-wait); }
.relpro-cd-tag--done { background: var(--cd-ok-bg); color: var(--cd-ok); }
.relpro-cd-tag--off { background: var(--cd-peach); color: var(--cd-muted); }

/* Petits boutons d'action (lien ou <button>, trois états à cause du thème). */
.relpro-cd .relpro-cd-act,
.relpro-cd .relpro-cd-act:hover,
.relpro-cd .relpro-cd-act:focus { display: inline-flex; align-items: center; padding: 8px 14px; border-radius: 999px; font: 700 13px/1.2 'Lato', sans-serif; cursor: pointer; background: var(--cd-peach); color: var(--cd-soft); border: 0; white-space: nowrap; }
.relpro-cd .relpro-cd-act:hover { background: var(--cd-line); color: var(--cd-ink); }
.relpro-cd .relpro-cd-act--accent,
.relpro-cd .relpro-cd-act--accent:focus { background: var(--cd-accent-100); color: var(--cd-accent-700); }
.relpro-cd .relpro-cd-act--accent:hover { background: var(--cd-accent); color: #fff; }
.relpro-cd .relpro-cd-act:disabled { opacity: .55; cursor: default; }

.relpro-cd-procards { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 16px; }
.relpro-cd-procard { margin: 0; padding: 16px; border-radius: 22px; background: var(--cd-cream); border: 0; box-shadow: none; overflow: visible; display: flex; flex-direction: column; gap: 14px; }
.relpro-cd-procard:hover { box-shadow: none; }
.relpro-cd-procard__link { display: flex; align-items: center; gap: 14px; color: var(--cd-ink); }
.relpro-cd-procard__link:hover { color: var(--cd-ink); }
.relpro-cd-procard__ph { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; flex: none; display: grid; place-items: center; font-weight: 700; font-size: 22px; background: var(--cd-accent-100); color: var(--cd-accent); }
.relpro-cd-procard__info { min-width: 0; }
.relpro-cd-procard__info strong { display: block; font-size: 15.5px; }
.relpro-cd-procard__info small { display: block; color: var(--cd-muted); font-size: 13px; }
.relpro-cd-procard__actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* ==========================================================================
   Onglet Compte
   ========================================================================== */

.relpro-cd-account { max-width: 860px; }
.relpro-cd-notice { margin: 0 0 18px; padding: 12px 16px; border-radius: 16px; background: var(--cd-wait-bg); color: var(--cd-wait); font-size: 14px; font-weight: 700; }
.relpro-cd-avatar { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.relpro-cd-avatar__placeholder { width: 80px; height: 80px; border-radius: 50%; background: var(--cd-peach); color: var(--cd-muted); display: grid; place-items: center; }
.relpro-cd-visually-hidden { position: absolute; width: 1px; height: 1px; opacity: 0; overflow: hidden; }
.relpro-cd-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 18px; margin-bottom: 18px; }
.relpro-cd-form .relpro-field label { display: block; font-size: 13.5px; font-weight: 700; margin-bottom: 6px; color: var(--cd-ink); }
.relpro-cd-form .relpro-input { width: 100%; padding: 11px 14px; border-radius: 12px; border: 1px solid var(--cd-line); background: #fff; font: 15px 'Lato', sans-serif; color: var(--cd-ink); }
.relpro-cd-form .relpro-input:focus { outline: 2px solid var(--cd-accent-100); border-color: var(--cd-accent); }
.relpro-cd-form .relpro-field__hint { display: block; margin-top: 5px; font-size: 12.5px; color: var(--cd-muted); }
.relpro-cd .relpro-cd-submit,
.relpro-cd .relpro-cd-submit:focus { padding: 11px 22px; border-radius: 999px; border: 0; background: var(--cd-cacao); color: #fff; font: 700 14px 'Lato', sans-serif; cursor: pointer; }
.relpro-cd .relpro-cd-submit:hover { background: var(--cd-ink); color: #fff; }
.relpro-cd .relpro-cd-submit--danger,
.relpro-cd .relpro-cd-submit--danger:focus { background: var(--cd-danger); }
.relpro-cd .relpro-cd-submit--danger:hover { background: #8C1D17; }
.relpro-cd .relpro-cd-submit:disabled { opacity: .55; cursor: default; }
.relpro-cd-otp { display: flex; gap: 14px; align-items: flex-start; margin: 0 0 20px; padding: 16px 18px; border-radius: 20px; background: var(--cd-teal-200); color: #24433F; }
.relpro-cd-otp__ic { width: 40px; height: 40px; border-radius: 14px; background: #fff; color: var(--cd-teal-700); display: grid; place-items: center; flex: none; }
.relpro-cd-otp p { margin: 0; font-size: 14.5px; line-height: 1.6; }
.relpro-cd-otp a { color: #24433F; font-weight: 700; text-decoration: underline; }
.relpro-cd-check { display: flex; gap: 10px; align-items: center; margin: 4px 0 18px; font-size: 14px; color: var(--cd-soft); }
.relpro-cd-block--danger .relpro-cd-card__title { color: var(--cd-danger); }

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1180px) {
  .relpro-cd-home { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .relpro-cd-home__stack { grid-column: 1 / -1; grid-row: auto; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .relpro-cd-row { grid-template-columns: 52px minmax(0, 1fr) minmax(0, 1fr); }
  .relpro-cd-row > .relpro-cd-tag { grid-column: 2; }
  .relpro-cd-row__actions { grid-column: 3; }
}

@media (max-width: 900px) {
  .relpro-client-dashboard.relpro-cd { grid-template-columns: minmax(0, 1fr); width: 100%; margin: 0 0 24px; border-radius: 0; box-shadow: none; padding-bottom: 84px; }
  .relpro-cd__rail {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    top: auto;
    z-index: 50;
    min-height: 0;
    flex-direction: row;
    align-items: stretch;
    gap: 0;
    padding: 6px 6px calc(6px + env(safe-area-inset-bottom));
    border-radius: 0;
    border-right: 0;
    border-top: 1px solid var(--cd-line);
    box-shadow: 0 -6px 20px rgba(59, 42, 36, .06);
    overflow-x: auto;
    scrollbar-width: none;
  }
  .relpro-cd__rail::-webkit-scrollbar { display: none; }
  .relpro-cd__me,
  .relpro-cd__spacer { display: none; }
  .relpro-cd__item { flex: 1 1 0; min-width: 0; width: auto; padding-inline: 0; font-size: 10px; }
  .relpro-cd__badge { right: 10px; }
  .relpro-cd__main { padding: 22px 16px 24px; }
  .relpro-cd__title { font-size: 38px; }
  .relpro-cd-home,
  .relpro-cd-home__stack { grid-template-columns: minmax(0, 1fr); }
  .relpro-cd-home__card--wide,
  .relpro-cd-hero--welcome { grid-column: auto; }
  .relpro-cd-card { padding: 22px 20px; }
  .relpro-cd-row { grid-template-columns: 52px minmax(0, 1fr); }
  .relpro-cd-row > :nth-child(n+3) { grid-column: 2; }
  .relpro-cd-row__actions { justify-content: flex-start; }
  .relpro-cd-form__grid { grid-template-columns: minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
  .relpro-cd *,
  .relpro-cd *::before { transition: none !important; }
}

/* ── Compte supprimé (1.7.2) ──
   Même cause que côté pro : le JS remplace le contenu par
   .relpro-account-deleted, que la grille de l'espace logeait dans la
   colonne de la barre latérale. */
.relpro-client-dashboard.relpro-cd:has(> .relpro-account-deleted) { grid-template-columns: minmax(0, 1fr); }
.relpro-cd .relpro-account-deleted { display: flex; flex-direction: column; align-items: center; max-width: 520px; margin: 0 auto; padding: 72px 24px 80px; text-align: center; }
.relpro-cd .relpro-account-deleted__icon { width: 72px; height: 72px; margin-bottom: 22px; border-radius: 50%; display: grid; place-items: center; background: var(--cd-teal-200); color: var(--cd-teal-700); }
.relpro-cd .relpro-account-deleted h2 { margin: 0 0 12px; font: 700 44px/1.05 'Caveat', cursive; color: var(--cd-ink); }
.relpro-cd .relpro-account-deleted p { margin: 0 0 28px; font-size: 16px; line-height: 1.6; color: var(--cd-soft); }
.relpro-cd .relpro-account-deleted .relpro-btn,
.relpro-cd .relpro-account-deleted .relpro-btn:hover,
.relpro-cd .relpro-account-deleted .relpro-btn:focus { display: inline-flex; padding: 14px 26px; border: 0; border-radius: 999px; font-family: 'Lato', sans-serif; background: var(--cd-cacao); color: #fff; font-weight: 700; text-decoration: none; white-space: nowrap; }
.relpro-cd .relpro-account-deleted .relpro-btn:hover { background: var(--cd-ink); }
