/* ==================================================
   Compte client EB — V5
   Zone droite uniquement + raccourci compte navbar.
   ================================================== */
:root {
  --cceb-cream: #f9f3ea;
  --cceb-cream-2: #fbf7f0;
  --cceb-border: #d8d0c6;
  --cceb-green: #858761;
  --cceb-green-soft: #e8ead9;
  --cceb-green-pale: #f2f3e8;
  --cceb-black: #111;
  --cceb-muted: #555;
  --cceb-soft-gray: #f6f6f4;
  --cceb-radius: 18px;
  --cceb-font-mono: var(--font-mono, "Anonymous Pro", monospace);
}

html { scroll-behavior: smooth; }
.cceb-products-anchor { position: relative; top: -90px; display: block; width: 1px; height: 1px; visibility: hidden; }

body.cceb-dashboard-page .woocommerce-MyAccount-content > p:not(.cceb-panel__intro) { display: none !important; }
body.cceb-dashboard-page .woocommerce-MyAccount-content,
body.cceb-dashboard-page .woocommerce-MyAccount-content * { box-sizing: border-box; }
body.cceb-dashboard-page .woocommerce-MyAccount-navigation { /* Sidebar conservée. */ }

.cceb-dashboard { width: 100%; max-width: 100%; display: flex; flex-direction: column; gap: 28px; color: var(--cceb-black); }
.cceb-dashboard a { color: var(--cceb-black); }

/* NAVBAR COMPTE */
.cceb-navbar-account {
  position: relative;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  margin-right: 10px;
  color: #000 !important;
  text-decoration: none !important;
  vertical-align: middle;
  border-radius: 0 !important;
  transition: color .18s ease !important;
}
.cceb-navbar-account svg { width: 25px; height: 25px; display: block; }
.cceb-navbar-account:hover,
.cceb-navbar-account:focus-visible { color: #9a9a9a !important; background: transparent !important; box-shadow: none !important; transform: none !important; outline: none !important; }

/* BOUTONS */
.cceb-button,
.woocommerce .cceb-button.button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 0 22px !important;
  border-radius: 999px !important;
  border: 1px solid transparent !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-align: center !important;
  white-space: nowrap;
  cursor: pointer;
  transition: opacity .18s ease, color .18s ease, background .18s ease, border-color .18s ease;
}
.cceb-button--dark,
.woocommerce .cceb-button--dark.button { background: #252525 !important; color: #fff !important; }
.cceb-button--light,
.woocommerce .cceb-button--light.button { background: #fff !important; color: #111 !important; border-color: #cfcfcf !important; }
.cceb-button:hover { opacity: .88; }
.cceb-link { color: #111 !important; font-weight: 700 !important; text-decoration: underline !important; }
.cceb-link:hover { text-decoration: none !important; }

/* HERO */
.cceb-hero { width: 100%; }
.cceb-hero__content { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 26px; align-items: center; }
.cceb-hero__title {
  margin: 0 0 14px 0 !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: clamp(30px, 2.5vw, 38px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -.6px !important;
  color: #000 !important;
  text-transform: none !important;
  overflow-wrap: anywhere;
}
.cceb-hero__intro {
  display: block !important;
  max-width: none;
  margin: 0 !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: clamp(16px, 1.15vw, 18px) !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  color: #222 !important;
  white-space: nowrap;
}
.cceb-hero__action { display: flex; justify-content: flex-end; }
.cceb-hero__button { min-width: 210px; min-height: 58px; padding: 0 28px !important; font-size: 14px !important; }

/* STATS */
.cceb-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--cceb-border); background: #fff; }
.cceb-stat-card { min-width: 0; padding: 24px 24px 26px; border-right: 1px solid var(--cceb-border); background: var(--cceb-cream); position: relative; }
.cceb-stat-card::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 4px; background: transparent; }
.cceb-stat-card:nth-child(2) { background: var(--cceb-green-pale); }
.cceb-stat-card:nth-child(2)::before { background: var(--cceb-green); }
.cceb-stat-card:nth-child(3) { background: #fff; }
.cceb-stat-card:nth-child(4) { background: var(--cceb-cream-2); }
.cceb-stat-card:nth-child(4)::before { background: var(--cceb-green); opacity: .55; }
.cceb-stat-card:last-child { border-right: 0; }
.cceb-stat-card__label { display: block; margin: 0 0 16px 0; font-family: Montserrat, sans-serif !important; font-size: 11px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: #444; }
.cceb-stat-card__value { display: block; font-family: var(--cceb-font-mono) !important; font-size: clamp(28px, 2.7vw, 42px); font-weight: 700; line-height: 1; color: #111; white-space: nowrap; }

/* PANELS */
.cceb-panel { width: 100%; border: 1px solid var(--cceb-border); background: #fff; }
.cceb-panel__header { padding: 18px 24px; border-bottom: 1px solid var(--cceb-border); background: var(--cceb-cream-2); }
.cceb-panel__header h2,
.cceb-help-panel h2 { margin: 0 !important; font-family: var(--cceb-font-mono) !important; font-size: clamp(22px, 2vw, 30px) !important; font-weight: 700 !important; line-height: 1.08 !important; color: #000 !important; text-transform: none !important; }
.cceb-panel__intro { display: block !important; padding: 22px 24px 0; margin: 0 !important; font-family: var(--cceb-font-mono) !important; font-size: 17px !important; line-height: 1.45 !important; color: #333 !important; }
.cceb-panel__footer { display: flex; justify-content: flex-end; padding: 20px 24px 24px; }
.cceb-panel__footer--center { justify-content: center; }
.cceb-empty { padding: 24px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.cceb-empty p,
.cceb-muted { display: block !important; margin: 0 !important; font-family: var(--cceb-font-mono) !important; font-size: 17px !important; line-height: 1.45 !important; color: #444 !important; }

/* SHORTCUTS */
.cceb-shortcuts-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
.cceb-shortcut-card { min-height: 116px; padding: 22px 16px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; border-right: 1px solid var(--cceb-border); text-align: center; text-decoration: none !important; background: #fff; color: #111 !important; transition: background .18s ease, color .18s ease, opacity .18s ease; }
.cceb-shortcut-card:nth-child(odd) { background: var(--cceb-cream); }
.cceb-shortcut-card:nth-child(2) { background: var(--cceb-green-pale); }
.cceb-shortcut-card:last-child { border-right: 0; }
.cceb-shortcut-card svg { width: 28px; height: 28px; color: var(--cceb-green); fill: currentColor; flex: 0 0 auto; }
.cceb-shortcut-card span { font-family: Montserrat, sans-serif !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .045em; line-height: 1.25; text-transform: uppercase; color: #111 !important; }
.cceb-shortcut-card:hover { background: var(--cceb-green-soft); opacity: 1; }

/* HELP */
.cceb-help-panel { width: 100%; padding: 24px; border: 0; border-radius: var(--cceb-radius); background: var(--cceb-soft-gray); display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 24px; }
.cceb-help-panel p { display: block !important; margin: 12px 0 0 !important; font-family: var(--cceb-font-mono) !important; font-size: 16px !important; line-height: 1.45 !important; color: #333 !important; max-width: 900px; }
.cceb-help-actions { display: grid; grid-template-columns: repeat(4, minmax(92px, 1fr)); gap: 10px; }
.cceb-help-action { min-height: 78px; padding: 12px 10px; border: 1px solid #d7d7d2; border-radius: 14px; background: #fff; display: inline-flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-decoration: none !important; color: #111 !important; cursor: pointer; }
.cceb-help-action svg { width: 24px; height: 24px; color: var(--cceb-green); }
.cceb-help-action span { font-family: Montserrat, sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.cceb-help-action:hover { background: var(--cceb-green-soft); }

.cceb-postcard-modal { position: fixed; inset: 0; z-index: 999999; display: none; align-items: center; justify-content: center; padding: 24px; }
.cceb-postcard-modal.is-open { display: flex; }
.cceb-postcard-backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.38); }
.cceb-postcard { position: relative; width: min(780px, 100%); min-height: 410px; padding: 42px; border-radius: 22px; background: #fffdf8; box-shadow: 0 24px 70px rgba(0,0,0,.22); display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, .9fr); gap: 40px; overflow: hidden; }
.cceb-postcard::before { content: ''; position: absolute; top: 42px; bottom: 42px; left: 50%; border-left: 1px solid #ded6cc; }
.cceb-postcard__close { position: absolute; top: 14px; right: 18px; border: 0; background: transparent; color: #111; font-size: 28px; line-height: 1; cursor: pointer; }
.cceb-postcard__plant { display: flex; align-items: center; justify-content: center; color: var(--cceb-green); opacity: .88; }
.cceb-postcard__plant svg { max-width: 220px; width: 70%; height: auto; }
.cceb-postcard__details { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; gap: 7px; font-family: var(--cceb-font-mono); font-size: 15px; line-height: 1.35; color: #222; }
.cceb-postcard__logo { margin-bottom: 14px; max-width: 150px; }
.cceb-postcard__logo-img { max-width: 150px; height: auto; display: block; }
.cceb-postcard__logo-text { font-size: 17px; }
.cceb-postcard__details a { color: #222 !important; text-decoration: none !important; }
.cceb-postcard__details a:hover { text-decoration: underline !important; }

/* ORDERS */
.cceb-table-wrap { width: 100%; overflow-x: auto; }
.cceb-orders-table { width: 100%; border-collapse: collapse; margin: 0 !important; }
.cceb-orders-table th,
.cceb-orders-table td { padding: 16px 18px !important; border-bottom: 1px solid #ededed !important; font-family: var(--cceb-font-mono) !important; font-size: 15px !important; color: #333 !important; text-align: left; vertical-align: middle; }
.cceb-orders-table th { font-family: Montserrat, sans-serif !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .08em; color: #555 !important; background: #fff; }
.cceb-orders-table tr:last-child td { border-bottom: 0 !important; }
.cceb-table-action { text-align: right !important; }
.cceb-status { display: inline-flex; padding: 6px 10px; background: #f7f1e8; color: #333; border-radius: 999px; font-size: 12px; font-weight: 700; }

/* WORKSHOPS */
.cceb-workshops-list { display: flex; flex-direction: column; }
.cceb-workshop-item { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; border-bottom: 1px solid #ededed; }
.cceb-workshop-item:last-child { border-bottom: 0; }
.cceb-workshop-item h3 { margin: 0 0 6px 0 !important; font-family: var(--cceb-font-mono) !important; font-size: 19px !important; line-height: 1.2 !important; }
.cceb-workshop-item h3 a { color: #111 !important; text-decoration: none !important; }
.cceb-workshop-item p { display: block !important; margin: 0 0 4px !important; font-family: var(--cceb-font-mono) !important; font-size: 15px !important; color: #444 !important; }

/* FAVORIS / ROUTINES — rendu interne laissé au plugin EB Produits Favoris. */
.cceb-embedded-favorites,
.cceb-embedded-routines { width: 100%; max-width: 100%; overflow: hidden; }
.cceb-embedded-favorites { padding: 0; }
.cceb-embedded-routines { padding: 28px; }
.cceb-embedded-favorites .ebpf-favorites-list { margin: 0 !important; }
.cceb-embedded-routines .ebpf-routines { margin-top: 0 !important; padding-top: 0 !important; border-top: 0 !important; }
.cceb-embedded-routines .ebpf-routines-header { display: none !important; }
.cceb-embedded-routines .ebpf-routines-grid { margin: 0 !important; }

.cceb-simple-line { display: grid; grid-template-columns: 80px minmax(0, 1fr); gap: 18px; align-items: center; padding: 18px 24px; border-bottom: 1px solid #ededed; }
.cceb-simple-line:last-child { border-bottom: 0; }
.cceb-simple-line img { width: 80px !important; height: 80px !important; object-fit: cover; }
.cceb-simple-line a { font-family: var(--cceb-font-mono); font-weight: 700; text-decoration: none; color: #111; }
.cceb-simple-line span { display: block; margin-top: 6px; color: #444; }

/* RECOMMENDATIONS */
.cceb-products-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; padding: 24px; }
.cceb-reco-card { position: relative; min-width: 0; display: flex; flex-direction: column; border: 1px solid #e5ded5; background: #fff; overflow: hidden; }
.cceb-reco-card__image-wrap { position: relative; background: var(--cceb-cream); }
.cceb-reco-card__image { display: block; background: var(--cceb-cream); }
.cceb-reco-card__image img { width: 100% !important; aspect-ratio: 1 / 1; object-fit: cover; display: block; }
.cceb-reco-heart { position: absolute !important; top: 10px; right: 10px; z-index: 2; width: 40px !important; height: 40px !important; padding: 0 !important; border: 0 !important; background: rgba(255,255,255,.88) !important; color: #000 !important; border-radius: 999px !important; display: inline-flex !important; align-items: center; justify-content: center; cursor: pointer; box-shadow: none !important; }
.cceb-reco-heart svg { width: 26px; height: 26px; display: block; fill: currentColor; }
.cceb-reco-heart .cceb-heart-full { display: none; }
.cceb-reco-heart.is-favorite .cceb-heart-empty { display: none; }
.cceb-reco-heart.is-favorite .cceb-heart-full { display: block; }
.cceb-reco-card__body { padding: 14px 14px 0; flex: 1; }
.cceb-reco-card__title { display: block; font-family: var(--cceb-font-mono) !important; font-weight: 700 !important; color: #111 !important; text-decoration: none !important; text-transform: uppercase; font-size: 13px !important; line-height: 1.25; }
.cceb-reco-card__price { display: block; margin-top: 10px; font-family: var(--cceb-font-mono) !important; font-size: 14px; font-weight: 700; color: #333; }
.cceb-reco-card__actions { padding: 14px; }
.cceb-reco-cart,
.woocommerce .cceb-reco-cart.button { width: 100% !important; min-height: 48px !important; border-radius: 999px !important; background: #252525 !important; color: #fff !important; border: 0 !important; padding: 0 12px !important; display: inline-flex !important; align-items: center; justify-content: center; font-family: var(--cceb-font-mono) !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: .035em !important; line-height: 1.1 !important; text-transform: uppercase !important; white-space: normal !important; text-align: center !important; }
.cceb-reco-cart:hover { opacity: .88; }

/* RESPONSIVE */
@media (max-width: 1200px) {
  .cceb-hero__content { grid-template-columns: 1fr; align-items: start; }
  .cceb-hero__action { justify-content: flex-start; }
  .cceb-hero__intro { white-space: normal; }
  .cceb-help-panel { grid-template-columns: 1fr; }
  .cceb-help-actions { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 1100px) {
  .cceb-products-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .cceb-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cceb-stat-card:nth-child(2) { border-right: 0; }
  .cceb-stat-card:nth-child(1), .cceb-stat-card:nth-child(2) { border-bottom: 1px solid var(--cceb-border); }
  .cceb-shortcuts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cceb-shortcut-card:nth-child(2) { border-right: 0; }
  .cceb-shortcut-card:nth-child(1), .cceb-shortcut-card:nth-child(2) { border-bottom: 1px solid var(--cceb-border); }
  .cceb-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cceb-postcard { grid-template-columns: 1fr; gap: 20px; }
  .cceb-postcard::before { display: none; }
  .cceb-postcard__plant svg { max-width: 120px; }
}
@media (max-width: 768px) {
  .cceb-dashboard { gap: 24px; }
  .cceb-hero__action { justify-content: stretch; }
  .cceb-hero__button { width: 100%; min-width: 0; min-height: 56px; }
  .cceb-empty, .cceb-workshop-item { align-items: stretch; flex-direction: column; }
  .cceb-panel__footer { justify-content: stretch; }
  .cceb-panel__footer .cceb-button, .cceb-empty .cceb-button { width: 100%; }
  .cceb-products-grid { grid-template-columns: 1fr; padding: 18px; }
  .cceb-help-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cceb-embedded-routines { padding: 18px; }
}
@media (max-width: 600px) {
  .cceb-orders-table thead { display: none; }
  .cceb-orders-table, .cceb-orders-table tbody, .cceb-orders-table tr, .cceb-orders-table td { display: block; width: 100%; }
  .cceb-orders-table tr { border-bottom: 1px solid #ededed; padding: 14px 0; }
  .cceb-orders-table tr:last-child { border-bottom: 0; }
  .cceb-orders-table td { display: flex; justify-content: space-between; gap: 20px; border-bottom: 0 !important; padding: 8px 18px !important; text-align: right !important; }
  .cceb-orders-table td::before { content: attr(data-label); font-family: Montserrat, sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #555; text-align: left; }
  .cceb-table-action::before { content: "" !important; }
}
@media (max-width: 480px) {
  .cceb-stats { grid-template-columns: 1fr; }
  .cceb-stat-card, .cceb-stat-card:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--cceb-border); }
  .cceb-stat-card:last-child { border-bottom: 0; }
  .cceb-shortcuts-grid { grid-template-columns: 1fr; }
  .cceb-shortcut-card, .cceb-shortcut-card:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--cceb-border); }
  .cceb-shortcut-card:last-child { border-bottom: 0; }
  .cceb-panel__header, .cceb-panel__footer, .cceb-empty, .cceb-help-panel { padding-left: 18px; padding-right: 18px; }
  .cceb-hero__title { font-size: 30px !important; }
  .cceb-hero__intro { font-size: 17px !important; }
  .cceb-help-actions { grid-template-columns: 1fr; }
  .cceb-postcard { padding: 34px 24px; }
}

/* ==================================================
   Compte client EB — V5 correctifs finaux
   ================================================== */
.cceb-hero__content { gap: 72px !important; }
.cceb-hero__text { min-width: 0; }
.cceb-hero__action { flex-shrink: 0; }
.cceb-hero__intro { white-space: nowrap; }

.cceb-stats { background: #fff !important; }
.cceb-stat-card,
.cceb-stat-card:nth-child(2),
.cceb-stat-card:nth-child(3),
.cceb-stat-card:nth-child(4) { background: var(--cceb-cream) !important; }
.cceb-stat-card::before,
.cceb-stat-card:nth-child(2)::before,
.cceb-stat-card:nth-child(4)::before { background: var(--cceb-green) !important; opacity: 1 !important; }

.cceb-shortcut-card,
.cceb-shortcut-card:nth-child(odd),
.cceb-shortcut-card:nth-child(2) { background: #fff !important; }
.cceb-shortcut-card:hover,
.cceb-shortcut-card:focus-visible { background: var(--cceb-cream) !important; }

.cceb-button--light,
.woocommerce .cceb-button--light.button {
  border-radius: 0 !important;
  font-family: Montserrat, sans-serif !important;
  background: #fff !important;
}
.cceb-panel__footer .cceb-button--dark,
.cceb-empty .cceb-button--dark {
  border-radius: 0 !important;
  font-family: Montserrat, sans-serif !important;
}

.cceb-help-panel { margin-top: 0; gap: 54px !important; }
.cceb-help-actions { justify-self: end; }
.cceb-help-action { border-radius: 0 !important; }

.cceb-postcard { border: 1px solid #d6d6d0 !important; border-radius: 0 !important; }
.cceb-postcard::after {
  content: '';
  position: absolute;
  inset: 12px;
  pointer-events: none;
  border: 1px solid rgba(0,0,0,.18);
  background:
    repeating-linear-gradient(90deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top left / 100% 8px no-repeat,
    repeating-linear-gradient(90deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) bottom left / 100% 8px no-repeat,
    repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top left / 8px 100% no-repeat,
    repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top right / 8px 100% no-repeat;
}
.cceb-postcard__plant { flex-direction: column; gap: 12px; }
.cceb-postcard__plant img { max-width: 235px; width: 78%; height: auto; display: block; }
.cceb-postcard__plant span { display: block; text-align: center; font-family: Georgia, serif; font-size: 14px; font-style: italic; line-height: 1.3; color: #333; }
.cceb-postcard__mention { display: block; margin: 0 0 10px; font-family: Montserrat, sans-serif; font-size: 11px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: #333; }
.cceb-postcard__logo { max-width: 180px; margin-bottom: 10px; }
.cceb-postcard__logo-img { max-width: 180px !important; }

.cceb-workshop-location-note {
  margin: 18px 24px 24px;
  padding: 16px 18px;
  border-radius: 12px;
  background: var(--cceb-soft-gray);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.cceb-workshop-location-note p { margin: 0 !important; font-family: var(--cceb-font-mono) !important; font-size: 15px !important; color: #333 !important; }
.cceb-workshop-location-note .cceb-help-action--inline { min-height: 54px; min-width: 110px; }

.cceb-embedded-routines { overflow: visible !important; padding: 30px !important; }
.cceb-embedded-routines .ebpf-routine-column-header { position: relative !important; overflow: hidden !important; }
.cceb-embedded-routines .ebpf-routine-title {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  height: auto !important;
  min-height: 48px !important;
  line-height: 1.22 !important;
  padding-right: 82px !important;
}
.cceb-embedded-routines .ebpf-edit-routine,
.cceb-embedded-routines .ebpf-delete-routine { top: 50% !important; transform: translateY(-50%) !important; width: 28px !important; height: 28px !important; }
.cceb-embedded-routines .ebpf-edit-routine { right: 42px !important; }
.cceb-embedded-routines .ebpf-delete-routine { right: 10px !important; }

.cceb-reco-heart { width: 34px !important; height: 34px !important; top: 10px !important; right: 10px !important; }
.cceb-reco-heart svg { width: 19px !important; height: 19px !important; }
.cceb-reco-card__title { font-weight: 600 !important; }
.cceb-reco-card__detail { display: block; margin-top: 7px; font-family: var(--cceb-font-mono) !important; font-size: 13px !important; font-weight: 400 !important; line-height: 1.3 !important; color: #666 !important; }
.cceb-reco-card__price { font-weight: 400 !important; color: #666 !important; }
.cceb-reco-cart,
.woocommerce .cceb-reco-cart.button { border-radius: 0 !important; font-family: Montserrat, sans-serif !important; font-size: 12px !important; min-height: 46px !important; }

@media (max-width: 1180px) {
  .cceb-hero__content { gap: 34px !important; }
  .cceb-hero__intro { white-space: normal; }
}
@media (max-width: 900px) {
  .cceb-help-actions { justify-self: stretch; }
  .cceb-workshop-location-note { flex-direction: column; align-items: stretch; }
  .cceb-workshop-location-note .cceb-help-action--inline { width: 100%; }
}
@media (max-width: 768px) {
  .cceb-hero__content { gap: 24px !important; }
  .cceb-help-panel { gap: 24px !important; }
  .cceb-postcard__plant img { max-width: 150px; }
  .cceb-workshop-location-note { margin-left: 18px; margin-right: 18px; }
}

/* ==================================================
   Compte client EB — V5 correctifs terrain
   ================================================== */
:root {
  --cceb-cream-light: #fcf8f2;
}

/* Icône compte navbar : sécurité anti layout shift + dimensions stables */
.cceb-navbar-account {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  margin-right: 10px !important;
  flex: 0 0 34px !important;
}
.cceb-navbar-account svg {
  width: 24px !important;
  height: 24px !important;
}

/* Stats plus claires et cohérentes */
.cceb-stat-card,
.cceb-stat-card:nth-child(2),
.cceb-stat-card:nth-child(3),
.cceb-stat-card:nth-child(4) {
  background: var(--cceb-cream-light) !important;
}

/* Boutons secondaires plus légers */
.cceb-button--light,
.woocommerce .cceb-button--light.button,
.cceb-panel__footer .cceb-button--dark,
.cceb-empty .cceb-button--dark {
  font-family: Montserrat, sans-serif !important;
  font-weight: 400 !important;
  border-radius: 0 !important;
}

/* Mes ateliers : ligne footer intégrée, pas gros cartouche */
.cceb-workshop-location-note {
  margin: 0 !important;
  padding: 16px 24px !important;
  border-top: 1px solid #e6e6e2 !important;
  border-radius: 0 !important;
  background: #f7f7f5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}
.cceb-workshop-location-note p {
  margin: 0 !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  color: #333 !important;
}
.cceb-workshop-location-note .cceb-help-action--inline {
  min-width: 112px !important;
  min-height: 46px !important;
  border-radius: 0 !important;
  background: #fff !important;
  font-family: Montserrat, sans-serif !important;
  font-weight: 400 !important;
}

/* Routines : ne pas écraser le rendu du plugin Favoris, seulement préserver l'espace extérieur */
.cceb-embedded-routines {
  overflow: visible !important;
  padding: 28px !important;
}
.cceb-embedded-routines .ebpf-routines-grid {
  margin: 0 !important;
}
.cceb-embedded-routines .ebpf-routine-column-header {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 18px 22px !important;
  overflow: visible !important;
  height: auto !important;
  min-height: 0 !important;
}
.cceb-embedded-routines .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title {
  flex: 0 1 auto !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 62px 0 0 !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  box-sizing: border-box !important;
}
.cceb-embedded-routines .ebpf-edit-routine {
  position: static !important;
  transform: none !important;
  margin-left: 3px !important;
  margin-right: 8px !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
  top: auto !important;
  right: auto !important;
}
.cceb-embedded-routines .ebpf-delete-routine {
  position: static !important;
  transform: none !important;
  margin-left: auto !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
  top: auto !important;
  right: auto !important;
}
.cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  margin-right: 8px !important;
  padding: 0 !important;
  align-self: center !important;
}

/* Produits recommandés : cœur petit, non déformé, jamais tronqué */
.cceb-reco-heart.ebpf-favorite-button,
.woocommerce .cceb-reco-heart.ebpf-favorite-button {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
  top: 9px !important;
  right: 9px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.92) !important;
  color: #111 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  line-height: 1 !important;
  box-shadow: none !important;
  transform: none !important;
}
.cceb-reco-heart span:not(.screen-reader-text) {
  width: 14px !important;
  height: 14px !important;
  min-width: 14px !important;
  min-height: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  line-height: 1 !important;
}
.cceb-reco-heart svg,
.woocommerce .cceb-reco-heart svg {
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  min-height: 13px !important;
  max-width: 13px !important;
  max-height: 13px !important;
  display: block !important;
  overflow: visible !important;
  transform: none !important;
  flex: 0 0 auto !important;
}
.cceb-reco-heart .cceb-heart-empty,
.cceb-reco-heart .cceb-heart-full {
  overflow: visible !important;
}

.cceb-reco-card__title {
  font-weight: 600 !important;
}
.cceb-reco-card__detail,
.cceb-reco-card__price {
  font-weight: 400 !important;
  color: #666 !important;
}

/* Boutons produits recommandés : carrés, lisibles, pas gras, pas de doublon Voir le panier */
.cceb-reco-cart,
.woocommerce .cceb-reco-cart.button {
  width: 100% !important;
  min-height: 48px !important;
  border-radius: 0 !important;
  background: #252525 !important;
  color: #fff !important;
  border: 0 !important;
  padding: 0 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  text-align: center !important;
  overflow: visible !important;
}
.cceb-reco-card .added_to_cart.wc-forward {
  display: none !important;
}

/* Charger plus : même esprit que produits similaires */
.cceb-load-more-related,
.woocommerce button.cceb-load-more-related {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 34px;
  margin: 0 auto;
  background: #fff;
  color: #111;
  border: 1px solid #111;
  border-radius: 0;
  font-family: Montserrat, sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: .02em;
  text-transform: none;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, border-color .18s ease, opacity .18s ease;
}
.cceb-load-more-related:hover,
.cceb-load-more-related:focus-visible {
  background: #111;
  color: #fff;
  border-color: #111;
  opacity: 1;
}
.cceb-load-more-related:disabled {
  opacity: .65;
  cursor: wait;
}

/* Bloc aide en bas : respiration + actions à droite */
.cceb-help-panel {
  margin-top: 25px !important;
  gap: 60px !important;
}
.cceb-help-actions {
  justify-self: end !important;
}
.cceb-help-panel__text strong {
  font-weight: 700 !important;
  color: #111 !important;
}

/* Carte postale : alternance rectangles blanc/gris + timbre vintage */
.cceb-postcard {
  border: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  padding: 54px 50px 46px !important;
}
.cceb-postcard::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  border: 0 !important;
  background:
    repeating-linear-gradient(90deg, #e5e5e0 0 18px, #fff 18px 36px) top left / 100% 12px no-repeat,
    repeating-linear-gradient(90deg, #e5e5e0 0 18px, #fff 18px 36px) bottom left / 100% 12px no-repeat,
    repeating-linear-gradient(0deg, #e5e5e0 0 18px, #fff 18px 36px) top left / 12px 100% no-repeat,
    repeating-linear-gradient(0deg, #e5e5e0 0 18px, #fff 18px 36px) top right / 12px 100% no-repeat !important;
}
.cceb-postcard__stamp {
  position: absolute;
  top: 30px;
  right: 46px;
  width: 78px;
  height: 92px;
  border: 1px solid var(--cceb-green);
  background:
    linear-gradient(135deg, var(--cceb-cream) 0%, #fff 100%);
  color: var(--cceb-green);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  font-family: Montserrat, sans-serif;
  text-align: center;
  z-index: 2;
  box-shadow: inset 0 0 0 4px rgba(133,135,97,.08);
}
.cceb-postcard__stamp::before {
  content: '';
  position: absolute;
  inset: -5px;
  background:
    radial-gradient(circle at 5px 5px, transparent 0 3px, var(--cceb-green) 3.5px 4.5px, transparent 5px) 0 0 / 10px 10px;
  opacity: .42;
  pointer-events: none;
}
.cceb-postcard__stamp-plant {
  font-size: 24px;
  line-height: 1;
}
.cceb-postcard__stamp-price {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .08em;
}
.cceb-postcard__stamp-cancel {
  position: absolute;
  right: -32px;
  top: 28px;
  width: 98px;
  height: 44px;
  border: 2px solid rgba(17,17,17,.38);
  border-radius: 50%;
  color: rgba(17,17,17,.46);
  font-family: var(--cceb-font-mono);
  font-size: 10px;
  line-height: 1.15;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: rotate(-13deg);
  background: transparent;
}
.cceb-postcard__plant img {
  max-width: 310px !important;
  width: 92% !important;
  height: auto !important;
  object-fit: contain !important;
}
.cceb-postcard__plant span {
  margin-top: 2px !important;
  font-size: 14px !important;
  color: #333 !important;
}
.cceb-postcard__details {
  padding-top: 76px !important;
}
.cceb-postcard__logo {
  max-width: 190px !important;
  margin-bottom: 8px !important;
}
.cceb-postcard__logo-img {
  max-width: 190px !important;
  height: auto !important;
}
.cceb-postcard__mention {
  font-family: Montserrat, sans-serif !important;
  font-weight: 500 !important;
}
.cceb-postcard__address,
.cceb-postcard__contacts {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
}
.cceb-postcard__address {
  margin-top: 8px;
  margin-bottom: 20px;
}
.cceb-postcard__contacts {
  padding-top: 3px;
}
.cceb-postcard__details a {
  color: #222 !important;
  text-decoration: none !important;
}
.cceb-postcard__details a:hover {
  text-decoration: underline !important;
}

@media (max-width: 900px) {
  .cceb-postcard__stamp { top: 26px; right: 34px; transform: scale(.86); transform-origin: top right; }
  .cceb-postcard__details { padding-top: 22px !important; }
  .cceb-workshop-location-note { flex-direction: column; align-items: stretch !important; }
  .cceb-workshop-location-note .cceb-help-action--inline { width: 100% !important; }
}
@media (max-width: 768px) {
  .cceb-postcard { padding: 44px 26px 34px !important; }
  .cceb-postcard__plant img { max-width: 220px !important; }
  .cceb-postcard__stamp { position: relative; top: auto; right: auto; margin-left: auto; margin-bottom: 12px; }
  .cceb-help-panel { margin-top: 22px !important; }
}

/* ==================================================
   Compte client EB — V5.5 final polish
   ================================================== */
:root {
  --cceb-cream-light-55: #fdfaf6;
}

.cceb-hero__button {
  min-width: 188px !important;
  min-height: 54px !important;
  padding: 0 24px !important;
  font-size: 13px !important;
}
.cceb-hero__intro {
  font-size: 17px !important;
}

.cceb-stat-card,
.cceb-stat-card:nth-child(2),
.cceb-stat-card:nth-child(3),
.cceb-stat-card:nth-child(4) {
  background: var(--cceb-cream-light-55) !important;
}

.cceb-button--light,
.woocommerce .cceb-button--light.button,
.cceb-workshops-panel .cceb-button,
.cceb-orders-panel .cceb-button {
  border-radius: 0 !important;
  font-family: Montserrat, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
}

.cceb-workshop-location-note {
  margin: 0 !important;
  padding: 10px 18px !important;
  min-height: 0 !important;
  background: #f7f7f5 !important;
  border-top: 1px solid #e7e1d8 !important;
  gap: 12px !important;
}
.cceb-workshop-location-note p {
  font-size: 14px !important;
  line-height: 1.35 !important;
}
.cceb-workshop-location-note .cceb-help-action--inline {
  min-height: 40px !important;
  min-width: 88px !important;
  padding: 8px 10px !important;
  gap: 4px !important;
  border-radius: 0 !important;
  background: #fff !important;
}
.cceb-workshop-location-note .cceb-help-action--inline svg {
  width: 20px !important;
  height: 20px !important;
}
.cceb-workshop-location-note .cceb-help-action--inline span {
  font-size: 10px !important;
  font-weight: 400 !important;
}

.cceb-embedded-routines {
  overflow: visible !important;
  padding: 28px !important;
}
.cceb-embedded-routines .ebpf-routine-column-header {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 18px 22px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
}
.cceb-embedded-routines .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title {
  box-sizing: border-box !important;
  flex: 0 1 auto !important;
  width: auto !important;
  max-width: calc(100% - 58px) !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  padding-right: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  font-size: 16px !important;
}
.cceb-embedded-routines .ebpf-edit-routine,
.cceb-embedded-routines .ebpf-delete-routine {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
}
.cceb-embedded-routines .ebpf-edit-routine {
  margin-left: 3px !important;
  margin-right: 8px !important;
}
.cceb-embedded-routines .ebpf-delete-routine {
  margin-left: auto !important;
}
.cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  margin-right: 8px !important;
  padding: 0 !important;
}

.cceb-reco-heart.ebpf-favorite-button,
.woocommerce .cceb-reco-heart.ebpf-favorite-button {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  top: 10px !important;
  right: 10px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.95) !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  line-height: 1 !important;
}
.cceb-reco-heart::before,
.cceb-reco-heart::after {
  display: none !important;
  content: none !important;
}
.cceb-reco-heart .screen-reader-text {
  display: none !important;
}
.cceb-reco-heart .cceb-heart-empty,
.cceb-reco-heart .cceb-heart-full {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  line-height: 1 !important;
}
.cceb-reco-heart .cceb-heart-empty {
  display: flex !important;
}
.cceb-reco-heart .cceb-heart-full {
  display: none !important;
}
.cceb-reco-heart.is-favorite .cceb-heart-empty {
  display: none !important;
}
.cceb-reco-heart.is-favorite .cceb-heart-full {
  display: flex !important;
}
.cceb-reco-heart svg,
.woocommerce .cceb-reco-heart svg {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  min-height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  display: block !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
}
.cceb-reco-heart.is-favorite .cceb-heart-full svg {
  fill: currentColor !important;
  stroke: currentColor !important;
}
.cceb-reco-card__title {
  font-weight: 600 !important;
}
.cceb-reco-card__detail,
.cceb-reco-card__price {
  display: block !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #666 !important;
}
.cceb-reco-card__price {
  margin-top: 8px !important;
}
.cceb-reco-cart,
.woocommerce .cceb-reco-cart.button {
  width: 100% !important;
  min-height: 44px !important;
  border-radius: 0 !important;
  background: #252525 !important;
  color: #fff !important;
  border: 0 !important;
  padding: 0 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  text-align: center !important;
  white-space: nowrap !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  text-transform: uppercase !important;
}
.cceb-reco-cart .ebpf-cart-button-label,
.cceb-reco-cart .ebpf-button-swap {
  display: block !important;
  width: 100% !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-weight: 400 !important;
}
.cceb-reco-card .added_to_cart,
.cceb-reco-card .added_to_cart.wc-forward,
.cceb-reco-card a.added_to_cart {
  display: none !important;
}

.cceb-load-more-related,
.woocommerce button.cceb-load-more-related {
  background: #252525 !important;
  color: #fff !important;
  border: 1px solid #252525 !important;
  border-radius: 0 !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-transform: none !important;
  min-height: 48px !important;
  padding: 0 34px !important;
}
.cceb-load-more-related:hover,
.cceb-load-more-related:focus-visible,
.cceb-load-more-related.is-loading,
.cceb-load-more-related:disabled {
  background: #252525 !important;
  color: #fff !important;
  border-color: #252525 !important;
  opacity: 1 !important;
}

.cceb-help-panel {
  margin-top: 24px !important;
}
.cceb-help-panel p {
  font-size: 15px !important;
  line-height: 1.45 !important;
  max-width: 780px !important;
}
.cceb-help-panel__text strong {
  font-weight: 700 !important;
}

.cceb-postcard-modal {
  padding: 16px !important;
}
.cceb-postcard {
  width: min(1120px, calc(100vw - 32px)) !important;
  max-height: calc(100vh - 32px) !important;
  min-height: 0 !important;
  padding: 30px 32px !important;
  background: #fffdf9 !important;
  border-radius: 0 !important;
  overflow: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, .92fr) !important;
  gap: 30px !important;
}
.cceb-postcard::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    repeating-linear-gradient(90deg, #e6e4de 0 12px, #fff 12px 24px) top left / 100% 4px no-repeat,
    repeating-linear-gradient(90deg, #e6e4de 0 12px, #fff 12px 24px) bottom left / 100% 4px no-repeat,
    repeating-linear-gradient(0deg, #e6e4de 0 12px, #fff 12px 24px) top left / 4px 100% no-repeat,
    repeating-linear-gradient(0deg, #e6e4de 0 12px, #fff 12px 24px) top right / 4px 100% no-repeat !important;
}
.cceb-postcard::before {
  content: '' !important;
  position: absolute !important;
  top: 24px !important;
  bottom: 24px !important;
  left: 52% !important;
  border-left: 1px solid #ddd5ca !important;
}
.cceb-postcard__close {
  position: fixed !important;
  top: 22px !important;
  right: 22px !important;
  width: 34px !important;
  height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(17,17,17,.88) !important;
  color: #fff !important;
  font-size: 24px !important;
  line-height: 1 !important;
  z-index: 1000001 !important;
}
.cceb-postcard__plant {
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 6px 8px !important;
  gap: 8px !important;
}
.cceb-postcard__plant img {
  max-width: 340px !important;
  width: 96% !important;
  height: auto !important;
  object-fit: contain !important;
}
.cceb-postcard__plant span {
  margin-top: 0 !important;
  font-size: 15px !important;
  font-style: italic !important;
  text-align: center !important;
}
.cceb-postcard__details {
  justify-content: center !important;
  padding-top: 0 !important;
  gap: 7px !important;
}
.cceb-postcard__logo {
  max-width: 160px !important;
  margin-bottom: 6px !important;
}
.cceb-postcard__logo img,
.cceb-postcard__logo .cceb-postcard__logo-img {
  max-width: 160px !important;
  height: auto !important;
  display: block !important;
}
.cceb-postcard__mention {
  font-family: Montserrat, sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
  text-transform: none !important;
  margin-bottom: 10px !important;
}
.cceb-postcard__address {
  margin-top: 6px !important;
  margin-bottom: 18px !important;
  gap: 6px !important;
}
.cceb-postcard__contacts {
  margin-top: 8px !important;
  gap: 10px !important;
}
.cceb-postcard__contacts a,
.cceb-postcard__details a {
  text-decoration: none !important;
}
.cceb-postcard__contacts a:hover,
.cceb-postcard__details a:hover {
  text-decoration: underline !important;
}
.cceb-postcard__stamp {
  top: 22px !important;
  right: 30px !important;
  width: 96px !important;
  height: 104px !important;
  padding: 8px 8px 6px !important;
  background: var(--cceb-cream) !important;
  border: 1px solid var(--cceb-green) !important;
  box-shadow: inset 0 0 0 4px rgba(133,135,97,.10) !important;
  gap: 3px !important;
}
.cceb-postcard__stamp::before {
  display: none !important;
}
.cceb-postcard__stamp-plant {
  font-size: 18px !important;
  line-height: 1 !important;
  color: var(--cceb-green) !important;
}
.cceb-postcard__stamp-price {
  font-family: var(--cceb-font-mono) !important;
  font-size: 10px !important;
  line-height: 1.15 !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  color: var(--cceb-green) !important;
}
.cceb-postcard__stamp-cancel {
  right: -18px !important;
  top: 38px !important;
  width: 92px !important;
  height: 34px !important;
  border: 2px solid rgba(17,17,17,.60) !important;
  color: rgba(17,17,17,.75) !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  background: transparent !important;
}

@media (max-width: 900px) {
  .cceb-postcard {
    width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    padding: 24px 22px !important;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
    gap: 18px !important;
  }
  .cceb-postcard::before {
    left: 50% !important;
    top: 18px !important;
    bottom: 18px !important;
  }
  .cceb-postcard__plant img {
    max-width: 240px !important;
    width: 92% !important;
  }
  .cceb-postcard__details {
    font-size: 13px !important;
  }
  .cceb-postcard__stamp {
    transform: scale(.9);
    transform-origin: top right;
  }
}
@media (max-width: 640px) {
  .cceb-postcard {
    width: calc(100vw - 16px) !important;
    max-height: calc(100vh - 16px) !important;
    padding: 20px 16px !important;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
    gap: 14px !important;
  }
  .cceb-postcard::before {
    left: 47% !important;
    top: 16px !important;
    bottom: 16px !important;
  }
  .cceb-postcard__plant img {
    max-width: 170px !important;
    width: 95% !important;
  }
  .cceb-postcard__plant span {
    font-size: 12px !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 130px !important;
  }
  .cceb-postcard__mention {
    font-size: 9px !important;
  }
  .cceb-postcard__details {
    font-size: 12px !important;
    line-height: 1.28 !important;
    gap: 5px !important;
  }
  .cceb-postcard__address {
    margin-bottom: 12px !important;
    gap: 4px !important;
  }
  .cceb-postcard__contacts {
    gap: 7px !important;
  }
  .cceb-postcard__stamp {
    top: 14px !important;
    right: 16px !important;
    transform: scale(.72) !important;
    transform-origin: top right !important;
  }
  .cceb-postcard__close {
    top: 10px !important;
    right: 10px !important;
    width: 30px !important;
    height: 30px !important;
    font-size: 20px !important;
  }
}

/* ==================================================
   Compte client EB — V6 correctifs ciblés
   ================================================== */

/* Bouton déconnexion : même netteté que le bouton principal Favoris */
.cceb-hero__button,
.cceb-hero__button .ebpf-button-swap {
  font-family: var(--cceb-font-mono) !important;
  font-size: 13.6px !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  text-align: center !important;
  -webkit-font-smoothing: antialiased !important;
  text-rendering: geometricPrecision !important;
}

/* Raccourcis : hover gris très léger, pas vert */
.cceb-shortcut-card:hover,
.cceb-shortcut-card:focus-visible {
  background: #f6f6f6 !important;
  color: #111 !important;
  opacity: 1 !important;
}

/* Boutons secondaires : effet hover lisible avec bordure noire */
.cceb-button--light:hover,
.cceb-button--light:focus-visible,
.woocommerce .cceb-button--light.button:hover,
.woocommerce .cceb-button--light.button:focus-visible {
  background: #fff !important;
  color: #111 !important;
  border-color: #111 !important;
  opacity: 1 !important;
}

/* Mes ateliers : footer de section compact, bouton horizontal */
.cceb-workshop-location-note {
  margin: 0 !important;
  padding: 6px 14px !important;
  min-height: 36px !important;
  background: #f7f7f5 !important;
  border-top: 1px solid #e7e1d8 !important;
  border-radius: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}
.cceb-workshop-location-note p {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  color: #333 !important;
}
.cceb-workshop-location-note .cceb-help-action--inline {
  min-width: auto !important;
  width: auto !important;
  min-height: 30px !important;
  height: 30px !important;
  padding: 4px 10px !important;
  border-radius: 0 !important;
  background: #fff !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
}
.cceb-workshop-location-note .cceb-help-action--inline svg {
  width: 16px !important;
  height: 16px !important;
}
.cceb-workshop-location-note .cceb-help-action--inline span {
  font-size: 10px !important;
  font-weight: 400 !important;
  letter-spacing: .045em !important;
}

/* Favoris intégrés : titre un peu plus petit pour respirer face au bouton */
.cceb-embedded-favorites .ebpf-favorite-item-title,
.cceb-embedded-favorites .ebpf-favorite-item-title.ebpf-title-long,
.cceb-embedded-favorites .ebpf-favorite-item-title.ebpf-title-xlong,
.cceb-embedded-favorites .ebpf-favorite-item-title.ebpf-title-xxlong {
  font-size: 18px !important;
  line-height: 1.23 !important;
  font-weight: 600 !important;
}

/* Routines : le titre prend toute la place disponible, aucune troncature artificielle */
.cceb-embedded-routines .ebpf-routine-column-header {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 18px 22px !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
}
.cceb-embedded-routines .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 10px 0 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  word-break: normal !important;
  line-height: 1.2 !important;
}
.cceb-embedded-routines .ebpf-edit-routine,
.cceb-embedded-routines .ebpf-delete-routine {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  flex: 0 0 auto !important;
}
.cceb-embedded-routines .ebpf-edit-routine {
  margin-left: 0 !important;
  margin-right: 8px !important;
}
.cceb-embedded-routines .ebpf-delete-routine {
  margin-left: 0 !important;
}

/* Produits recommandés : cœur = structure et logique du plugin Favoris, un seul état visible */
.cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button,
.woocommerce .cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 4 !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  max-width: 36px !important;
  max-height: 36px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.96) !important;
  color: #000 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  overflow: hidden !important;
  line-height: 1 !important;
  transform: none !important;
}
.cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button:hover,
.cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button:focus-visible {
  background: #fff !important;
  color: #000 !important;
  transform: scale(1.04) !important;
}
.cceb-reco-heart .cceb-heart-empty,
.cceb-reco-heart .cceb-heart-full {
  display: none !important;
}
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon {
  width: 21px !important;
  height: 21px !important;
  min-width: 21px !important;
  min-height: 21px !important;
  max-width: 21px !important;
  max-height: 21px !important;
  flex: 0 0 21px !important;
  line-height: 1 !important;
}
.cceb-reco-heart.ebpf-list-heart-button svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  overflow: visible !important;
}
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon-empty {
  display: block !important;
}
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon-full {
  display: none !important;
}
.cceb-reco-heart.ebpf-list-heart-button.is-favorite .ebpf-icon-empty {
  display: none !important;
}
.cceb-reco-heart.ebpf-list-heart-button.is-favorite .ebpf-icon-full {
  display: block !important;
}

/* Boutons produits recommandés : non gras et jamais tronqués */
.cceb-reco-cart,
.woocommerce .cceb-reco-cart.button {
  width: 100% !important;
  min-height: 44px !important;
  border-radius: 0 !important;
  background: #252525 !important;
  color: #fff !important;
  border: 0 !important;
  padding: 0 6px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  text-align: center !important;
  white-space: normal !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.12 !important;
  text-transform: uppercase !important;
}
.cceb-reco-cart .ebpf-cart-button-label,
.cceb-reco-cart .ebpf-button-swap {
  display: inline !important;
  width: auto !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  font-weight: 400 !important;
  line-height: inherit !important;
}

/* Charger plus : blanc au repos, noir au survol, noir pendant Chargement... */
.cceb-load-more-related,
.woocommerce button.cceb-load-more-related {
  background: #fff !important;
  color: #111 !important;
  border: 1px solid #111 !important;
  border-radius: 0 !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  text-transform: none !important;
  min-height: 48px !important;
  padding: 0 34px !important;
  opacity: 1 !important;
}
.cceb-load-more-related:hover,
.cceb-load-more-related:focus-visible,
.cceb-load-more-related.is-loading,
.cceb-load-more-related:disabled {
  background: #252525 !important;
  color: #fff !important;
  border-color: #252525 !important;
  opacity: 1 !important;
}

/* Besoin d'aide : empêcher le paragraphe de se transformer en colonne */
.cceb-help-panel {
  grid-template-columns: minmax(640px, 1fr) auto !important;
  gap: 42px !important;
  align-items: center !important;
}
.cceb-help-panel p {
  max-width: none !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}
.cceb-help-actions {
  grid-template-columns: repeat(4, 120px) !important;
  justify-self: end !important;
}
.cceb-help-action {
  min-width: 0 !important;
}

@media (max-width: 1250px) {
  .cceb-help-panel {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .cceb-help-actions {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    justify-self: stretch !important;
  }
}
@media (max-width: 768px) {
  .cceb-workshop-location-note {
    align-items: flex-start !important;
  }
  .cceb-workshop-location-note .cceb-help-action--inline {
    width: auto !important;
  }
  .cceb-help-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* ==================================================
   Compte client EB — V6.5.1 correctifs finaux légers
   Base : V6 — aucun ajout d'image lourde.
   ================================================== */

/* Règle globale : césure interdite partout dans l'extension. */
.cceb-dashboard,
.cceb-dashboard * {
  hyphens: none !important;
  -webkit-hyphens: none !important;
  -ms-hyphens: none !important;
  word-break: normal !important;
}
.cceb-dashboard h1,
.cceb-dashboard h2,
.cceb-dashboard h3,
.cceb-dashboard a,
.cceb-dashboard span,
.cceb-dashboard p,
.cceb-dashboard button,
.cceb-dashboard .ebpf-favorite-item-title,
.cceb-dashboard .ebpf-routine-product-title,
.cceb-dashboard .ebpf-routine-title,
.cceb-dashboard .cceb-reco-card__title {
  overflow-wrap: normal !important;
  word-wrap: normal !important;
  text-overflow: unset !important;
}

/* Boutons Boutique : ne pas garder l'état focus/actif après fermeture de la popup. */
.cceb-help-action[data-cceb-open-postcard]:focus,
.cceb-help-action[data-cceb-open-postcard]:active,
.cceb-help-action[data-cceb-open-postcard][aria-expanded="true"] {
  background: #fff !important;
  color: #111 !important;
  border-color: #d7d7d2 !important;
  outline: none !important;
  box-shadow: none !important;
}
.cceb-help-action[data-cceb-open-postcard]:hover {
  background: #f8f8f8 !important;
  border-color: #d7d7d2 !important;
}

/* Besoin d'aide : retour au layout V6 propre, texte juste un peu plus petit, boutons dans l'encadré. */
.cceb-help-panel {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 24px !important;
  align-items: center !important;
  overflow: hidden !important;
}
.cceb-help-panel__text {
  min-width: 0 !important;
}
.cceb-help-panel p {
  max-width: 900px !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}
.cceb-help-actions {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(84px, 1fr)) !important;
  gap: 10px !important;
  justify-self: end !important;
  max-width: 430px !important;
  width: min(430px, 100%) !important;
}
.cceb-help-action {
  min-width: 0 !important;
  width: auto !important;
  box-sizing: border-box !important;
}
@media (max-width: 1180px) {
  .cceb-help-panel {
    grid-template-columns: 1fr !important;
    overflow: visible !important;
  }
  .cceb-help-actions {
    justify-self: stretch !important;
    max-width: none !important;
    width: 100% !important;
  }
}
@media (max-width: 640px) {
  .cceb-help-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Routines : titre jamais tronqué, les icônes gardent leur place sans manger le texte. */
.cceb-embedded-routines,
.cceb-embedded-routines * {
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-break: normal !important;
}
.cceb-embedded-routines .ebpf-routine-column-header {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
.cceb-embedded-routines .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: normal !important;
  text-overflow: unset !important;
  padding-right: 6px !important;
}
.cceb-embedded-routines .ebpf-edit-routine,
.cceb-embedded-routines .ebpf-delete-routine {
  flex: 0 0 auto !important;
}
.cceb-embedded-routines .ebpf-favorite-item-title,
.cceb-embedded-routines .ebpf-routine-product-title,
.cceb-embedded-routines .ebpf-routine-item-title {
  font-size: 15px !important;
  line-height: 1.23 !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
}

/* Produits recommandés : cœur centré, rond maîtrisé, basé sur les classes du plugin Favoris. */
.cceb-reco-heart .cceb-heart-empty,
.cceb-reco-heart .cceb-heart-full {
  display: none !important;
}
.cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button,
.woocommerce .cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button {
  --ebpf-button-size: 34px !important;
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  z-index: 4 !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.94) !important;
  color: #000 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  overflow: hidden !important;
  box-shadow: none !important;
  transform: none !important;
}
.cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button:hover,
.cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button:focus {
  background: #fff !important;
  color: #000 !important;
  transform: none !important;
  outline: none !important;
}
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  flex: 0 0 18px !important;
  display: block !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.cceb-reco-heart.ebpf-list-heart-button svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  overflow: visible !important;
  transform: none !important;
}
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon-empty { display: block !important; }
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon-full { display: none !important; }
.cceb-reco-heart.ebpf-list-heart-button.is-favorite .ebpf-icon-empty { display: none !important; }
.cceb-reco-heart.ebpf-list-heart-button.is-favorite .ebpf-icon-full { display: block !important; }

/* Charger plus : hover noir prioritaire, sans conflit thème/WooCommerce. */
body .cceb-load-more-related,
body .woocommerce button.cceb-load-more-related,
body button.cceb-load-more-related {
  background: #fff !important;
  background-color: #fff !important;
  color: #111 !important;
  border: 1px solid #111 !important;
  opacity: 1 !important;
}
body .cceb-load-more-related:hover,
body .cceb-load-more-related:focus-visible,
body .woocommerce button.cceb-load-more-related:hover,
body .woocommerce button.cceb-load-more-related:focus-visible,
body button.cceb-load-more-related:hover,
body button.cceb-load-more-related:focus-visible,
body button.cceb-load-more-related.is-loading {
  background: #000 !important;
  background-color: #000 !important;
  color: #fff !important;
  border-color: #000 !important;
  opacity: 1 !important;
}

/* Carte postale : retour à la taille desktop initiale, sans image supplémentaire dans le timbre. */
@media (min-width: 901px) {
  .cceb-postcard-modal {
    padding: 24px !important;
  }
  .cceb-postcard {
    width: min(780px, 100%) !important;
    max-width: 780px !important;
    min-height: 410px !important;
    max-height: calc(100vh - 48px) !important;
    padding: 42px !important;
    overflow: hidden !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(240px, .9fr) !important;
    gap: 40px !important;
    background: #fffdf8 !important;
    border: 1px solid #d6d6d0 !important;
    border-radius: 0 !important;
  }
  .cceb-postcard::before {
    content: '' !important;
    position: absolute !important;
    top: 42px !important;
    bottom: 42px !important;
    left: 50% !important;
    border-left: 1px solid #ded6cc !important;
  }
  .cceb-postcard__plant img {
    max-width: 235px !important;
    width: 78% !important;
  }
}

/* Bordure carte postale : rectangles 25px x 6px alternés blanc/gris. */
.cceb-postcard::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    repeating-linear-gradient(90deg, #fff 0 25px, #e6e4de 25px 50px) top left / 100% 6px no-repeat,
    repeating-linear-gradient(90deg, #fff 0 25px, #e6e4de 25px 50px) bottom left / 100% 6px no-repeat,
    repeating-linear-gradient(0deg, #fff 0 25px, #e6e4de 25px 50px) top left / 6px 100% no-repeat,
    repeating-linear-gradient(0deg, #fff 0 25px, #e6e4de 25px 50px) top right / 6px 100% no-repeat !important;
}

/* Timbre : fond coloré uniquement, plus de trèfle, tampon PTT en bas à droite. */
.cceb-postcard__stamp {
  top: 22px !important;
  right: 30px !important;
  width: 96px !important;
  height: 104px !important;
  padding: 11px 9px 8px !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg, #f9f3ea 0%, #eef0df 100%) !important;
  border: 1px solid var(--cceb-green) !important;
  box-shadow: inset 0 0 0 4px rgba(133,135,97,.10) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  overflow: hidden !important;
}
.cceb-postcard__stamp::before,
.cceb-postcard__stamp-plant {
  display: none !important;
  content: none !important;
}
.cceb-postcard__stamp-price {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 10px !important;
  line-height: 1.14 !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  color: var(--cceb-green) !important;
}
.cceb-postcard__stamp-cancel {
  position: absolute !important;
  right: 5px !important;
  bottom: 5px !important;
  top: auto !important;
  width: 58px !important;
  height: 30px !important;
  border: 1.5px solid rgba(17,17,17,.62) !important;
  border-radius: 50% !important;
  color: rgba(17,17,17,.78) !important;
  font-size: 7.5px !important;
  line-height: 1.05 !important;
  font-weight: 700 !important;
  background: transparent !important;
  transform: rotate(-8deg) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Responsive carte postale : conserver le rectangle complet, sans réorganisation verticale. */
@media (max-width: 900px) {
  .cceb-postcard-modal {
    padding: 10px !important;
  }
  .cceb-postcard {
    width: calc(100vw - 20px) !important;
    max-width: none !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: calc(100vh - 20px) !important;
    padding: 24px 22px !important;
    overflow: hidden !important;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
    gap: 18px !important;
  }
  .cceb-postcard::before {
    display: block !important;
    left: 49% !important;
    top: 18px !important;
    bottom: 18px !important;
  }
  .cceb-postcard__plant img {
    max-width: 210px !important;
    width: 88% !important;
  }
  .cceb-postcard__plant span {
    font-size: 12px !important;
  }
  .cceb-postcard__details {
    font-size: 12.5px !important;
    line-height: 1.25 !important;
    gap: 5px !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 128px !important;
  }
  .cceb-postcard__mention {
    font-size: 9px !important;
    margin-bottom: 7px !important;
  }
  .cceb-postcard__stamp {
    top: 14px !important;
    right: 18px !important;
    transform: scale(.72) !important;
    transform-origin: top right !important;
  }
}
@media (max-width: 640px) {
  .cceb-postcard-modal {
    padding: 6px !important;
  }
  .cceb-postcard {
    width: calc(100vw - 12px) !important;
    max-height: calc(100vh - 12px) !important;
    padding: 18px 13px !important;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr) !important;
    gap: 10px !important;
  }
  .cceb-postcard::before {
    left: 45% !important;
    top: 14px !important;
    bottom: 14px !important;
  }
  .cceb-postcard__plant {
    padding: 8px 2px 4px !important;
    gap: 5px !important;
  }
  .cceb-postcard__plant img {
    max-width: 135px !important;
    width: 95% !important;
  }
  .cceb-postcard__plant span {
    font-size: 10.5px !important;
  }
  .cceb-postcard__details {
    font-size: 10.5px !important;
    line-height: 1.2 !important;
    gap: 3px !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 102px !important;
  }
  .cceb-postcard__address {
    margin-top: 3px !important;
    margin-bottom: 8px !important;
    gap: 2px !important;
  }
  .cceb-postcard__contacts {
    gap: 4px !important;
  }
  .cceb-postcard__stamp {
    top: 10px !important;
    right: 12px !important;
    transform: scale(.55) !important;
  }
  .cceb-postcard__close {
    top: 8px !important;
    right: 8px !important;
  }
}


/* ==================================================
   Compte client EB — V6.5.2 correctif final ciblé
   ================================================== */

/* Popup carte postale : retour à la taille desktop V4 + stabilité responsive */
.cceb-postcard {
  width: min(780px, calc(100vw - 32px)) !important;
  min-height: 410px !important;
  max-height: calc(100vh - 32px) !important;
  padding: 42px !important;
  border: 1px solid #d6d6d0 !important;
  border-radius: 0 !important;
  background: #fffdf8 !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.22) !important;
  overflow: auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(240px, .9fr) !important;
  gap: 40px !important;
}
.cceb-postcard::after {
  content: '' !important;
  position: absolute !important;
  inset: 12px !important;
  pointer-events: none !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  background:
    repeating-linear-gradient(90deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top left / 100% 8px no-repeat,
    repeating-linear-gradient(90deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) bottom left / 100% 8px no-repeat,
    repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top left / 8px 100% no-repeat,
    repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top right / 8px 100% no-repeat !important;
}
.cceb-postcard::before {
  content: '' !important;
  position: absolute !important;
  top: 42px !important;
  bottom: 42px !important;
  left: 50% !important;
  border-left: 1px solid #ded6cc !important;
}
.cceb-postcard__close {
  position: absolute !important;
  top: 10px !important;
  right: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  background: #fff !important;
  color: #111 !important;
  font-size: 22px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 4 !important;
}
.cceb-postcard__plant {
  flex-direction: column !important;
  gap: 10px !important;
  padding: 4px 8px 0 !important;
}
.cceb-postcard__plant img {
  max-width: 285px !important;
  width: 84% !important;
  height: auto !important;
  display: block !important;
}
.cceb-postcard__plant span {
  display: block !important;
  text-align: center !important;
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  line-height: 1.22 !important;
  color: #333 !important;
}
.cceb-postcard__details {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 4px !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 15px !important;
  line-height: 1.16 !important;
  color: #222 !important;
}
.cceb-postcard__logo {
  max-width: 180px !important;
  margin-bottom: 8px !important;
}
.cceb-postcard__logo img,
.cceb-postcard__logo .cceb-postcard__logo-img {
  max-width: 180px !important;
  height: auto !important;
  display: block !important;
}
.cceb-postcard__mention {
  display: block !important;
  margin: 0 0 10px !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: none !important;
  color: #333 !important;
}
.cceb-postcard__address,
.cceb-postcard__contacts {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 4px !important;
  line-height: 1.14 !important;
}
.cceb-postcard__address {
  margin-top: 2px !important;
  margin-bottom: 18px !important;
}
.cceb-postcard__contacts {
  margin-top: 0 !important;
}
.cceb-postcard__details a,
.cceb-postcard__contacts a {
  color: #222 !important;
  text-decoration: none !important;
}
.cceb-postcard__details a:hover,
.cceb-postcard__contacts a:hover {
  text-decoration: underline !important;
}

/* Timbre : bordure stylée + texte centré + vrai tampon postal vintage */
.cceb-postcard__stamp {
  position: absolute !important;
  top: 28px !important;
  right: 34px !important;
  width: 108px !important;
  height: 126px !important;
  padding: 10px 8px 12px !important;
  border: 1px solid rgba(133,135,97,.75) !important;
  border-radius: 0 !important;
  background: #f5efe2 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.65), inset 0 0 0 6px rgba(133,135,97,.09) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.cceb-postcard__stamp::before {
  content: '' !important;
  position: absolute !important;
  inset: 5px !important;
  border: 1px dashed rgba(133,135,97,.45) !important;
  pointer-events: none !important;
}
.cceb-postcard__stamp-price {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 8px 8px 18px !important;
  text-align: center !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 12px !important;
  line-height: 1.1 !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  color: var(--cceb-green) !important;
}
.cceb-postcard__stamp-cancel {
  position: absolute !important;
  right: 4px !important;
  bottom: 6px !important;
  z-index: 2 !important;
  width: 74px !important;
  height: 34px !important;
  border: 2px solid rgba(60,60,60,.62) !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: rgba(60,60,60,.78) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  text-align: center !important;
  transform: rotate(-14deg) !important;
  transform-origin: center !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 8px !important;
  line-height: 1.05 !important;
  letter-spacing: .08em !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}
.cceb-postcard__stamp-cancel span { display: block !important; }

/* Heart recommendations: exact plugin geometry, centered, no distortion */
.cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button,
.woocommerce .cceb-reco-heart.ebpf-favorite-button.ebpf-list-heart-button {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 4 !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  box-sizing: border-box !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #000 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  overflow: hidden !important;
  line-height: 1 !important;
  font-size: 0 !important;
  text-indent: 0 !important;
  transform: none !important;
}
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  min-width: 26px !important;
  min-height: 26px !important;
  max-width: 26px !important;
  max-height: 26px !important;
  flex: 0 0 26px !important;
  line-height: 1 !important;
  overflow: visible !important;
}
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon-empty { display: inline-flex !important; }
.cceb-reco-heart.ebpf-list-heart-button .ebpf-icon-full { display: none !important; }
.cceb-reco-heart.ebpf-list-heart-button.is-favorite .ebpf-icon-empty { display: none !important; }
.cceb-reco-heart.ebpf-list-heart-button.is-favorite .ebpf-icon-full { display: inline-flex !important; }
.cceb-reco-heart.ebpf-list-heart-button svg,
.woocommerce .cceb-reco-heart.ebpf-list-heart-button svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  overflow: visible !important;
  transform: none !important;
}
.cceb-reco-heart.ebpf-list-heart-button:hover,
.cceb-reco-heart.ebpf-list-heart-button:focus-visible {
  background: #fff !important;
  color: #000 !important;
  transform: scale(1.04) !important;
}

/* Routines: titres sans césure + ligne détail/prix sur une seule ligne quand possible */
.cceb-embedded-routines .ebpf-routine-product-info {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.cceb-embedded-routines .ebpf-routine-product-title,
.cceb-embedded-routines .ebpf-routine-product-title.ebpf-title-long,
.cceb-embedded-routines .ebpf-routine-product-title.ebpf-title-xlong,
.cceb-embedded-routines .ebpf-routine-product-title.ebpf-title-xxlong {
  font-size: 16px !important;
  line-height: 1.2 !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  word-wrap: normal !important;
  white-space: normal !important;
}
.cceb-embedded-routines .ebpf-routine-product-detail {
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
  white-space: nowrap !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  word-wrap: normal !important;
  line-height: 1.2 !important;
}

/* Mobile / tablette : garder la carte complète et rectangulaire sans réorganisation mouvante */
@media (max-width: 900px) {
  .cceb-postcard {
    width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    padding: 28px 20px !important;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
    gap: 18px !important;
  }
  .cceb-postcard::before {
    top: 28px !important;
    bottom: 28px !important;
    left: 50% !important;
  }
  .cceb-postcard__plant img { max-width: 220px !important; width: 88% !important; }
  .cceb-postcard__details { font-size: 13px !important; line-height: 1.14 !important; }
  .cceb-postcard__mention { font-size: 10px !important; }
  .cceb-postcard__stamp {
    top: 18px !important;
    right: 18px !important;
    width: 90px !important;
    height: 104px !important;
  }
  .cceb-postcard__stamp-price { font-size: 10px !important; padding-bottom: 16px !important; }
  .cceb-postcard__stamp-cancel { width: 64px !important; height: 30px !important; font-size: 7px !important; }
}
@media (max-width: 640px) {
  .cceb-postcard {
    width: calc(100vw - 16px) !important;
    max-height: calc(100vh - 16px) !important;
    padding: 22px 14px !important;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
    gap: 12px !important;
  }
  .cceb-postcard::after { inset: 8px !important; }
  .cceb-postcard::before {
    top: 22px !important;
    bottom: 22px !important;
    left: 50% !important;
  }
  .cceb-postcard__plant img { max-width: 160px !important; width: 88% !important; }
  .cceb-postcard__plant span { font-size: 11px !important; }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img { max-width: 130px !important; }
  .cceb-postcard__mention { font-size: 9px !important; }
  .cceb-postcard__details { font-size: 12px !important; line-height: 1.12 !important; gap: 3px !important; }
  .cceb-postcard__address,
  .cceb-postcard__contacts { gap: 3px !important; }
  .cceb-postcard__address { margin-bottom: 10px !important; }
  .cceb-postcard__stamp {
    top: 14px !important;
    right: 14px !important;
    width: 76px !important;
    height: 88px !important;
  }
  .cceb-postcard__stamp-price { font-size: 8px !important; padding-bottom: 14px !important; }
  .cceb-postcard__stamp-cancel { width: 54px !important; height: 24px !important; font-size: 6px !important; right: 3px !important; bottom: 4px !important; }
  .cceb-postcard__close {
    top: 8px !important;
    right: 8px !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 18px !important;
  }
}

/* ==================================================
   Compte client EB — V7 final : carte postale popup
   Reprise stricte de l'esprit V4 + ratio carte postale
   ================================================== */

.cceb-postcard {
  position: relative !important;
  width: min(780px, calc(100vw - 40px)) !important;
  min-height: 520px !important;
  aspect-ratio: 3 / 2 !important;
  max-height: calc(100vh - 40px) !important;
  padding: 42px 44px !important;
  border: 1px solid #d6d6d0 !important;
  border-radius: 0 !important;
  background: #fffdf8 !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.22) !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(240px, .88fr) !important;
  gap: 40px !important;
  box-sizing: border-box !important;
}
.cceb-postcard::after {
  content: '' !important;
  position: absolute !important;
  inset: 12px !important;
  pointer-events: none !important;
  border: 1px solid rgba(0,0,0,.18) !important;
  background:
    repeating-linear-gradient(90deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top left / 100% 8px no-repeat,
    repeating-linear-gradient(90deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) bottom left / 100% 8px no-repeat,
    repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top left / 8px 100% no-repeat,
    repeating-linear-gradient(0deg, rgba(0,0,0,.18) 0 1px, transparent 1px 42px) top right / 8px 100% no-repeat !important;
}
.cceb-postcard::before {
  content: '' !important;
  position: absolute !important;
  top: 42px !important;
  bottom: 42px !important;
  left: 50% !important;
  border-left: 1px solid #ded6cc !important;
}
.cceb-postcard__close {
  position: absolute !important;
  top: 12px !important;
  right: 14px !important;
  width: 28px !important;
  height: 28px !important;
  border: 0 !important;
  background: transparent !important;
  color: #111 !important;
  border-radius: 0 !important;
  font-size: 26px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 5 !important;
}
.cceb-postcard__plant {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 0 8px !important;
  color: var(--cceb-green) !important;
}
.cceb-postcard__plant img {
  display: block !important;
  width: 86% !important;
  max-width: 300px !important;
  height: auto !important;
}
.cceb-postcard__plant span {
  display: block !important;
  margin: 0 !important;
  text-align: center !important;
  font-family: Georgia, serif !important;
  font-size: 14px !important;
  font-style: italic !important;
  line-height: 1.2 !important;
  color: #333 !important;
}
.cceb-postcard__details {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 3px !important;
  padding-top: 0 !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 15px !important;
  line-height: 1.12 !important;
  color: #222 !important;
}
.cceb-postcard__logo {
  max-width: 180px !important;
  margin: 0 0 10px !important;
}
.cceb-postcard__logo img,
.cceb-postcard__logo .cceb-postcard__logo-img {
  max-width: 180px !important;
  height: auto !important;
  display: block !important;
}
.cceb-postcard__mention {
  display: block !important;
  margin: 0 0 10px !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: none !important;
  color: #333 !important;
}
.cceb-postcard__address,
.cceb-postcard__contacts {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 3px !important;
  margin: 0 !important;
  line-height: 1.1 !important;
}
.cceb-postcard__address {
  margin-bottom: 12px !important;
}
.cceb-postcard__details a,
.cceb-postcard__contacts a {
  color: #222 !important;
  text-decoration: none !important;
}
.cceb-postcard__details a:hover,
.cceb-postcard__contacts a:hover {
  text-decoration: underline !important;
}

/* Timbre conforme aux consignes */
.cceb-postcard__stamp {
  position: absolute !important;
  top: 28px !important;
  right: 34px !important;
  width: 110px !important;
  height: 132px !important;
  padding: 8px !important;
  border: 1px solid rgba(115, 120, 86, .75) !important;
  border-radius: 0 !important;
  background: #ebe4d1 !important;
  box-shadow: inset 0 0 0 5px rgba(133,135,97,.10) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.cceb-postcard__stamp::before {
  content: '' !important;
  position: absolute !important;
  inset: 5px !important;
  border: 1px dashed rgba(115, 120, 86, .45) !important;
  pointer-events: none !important;
}
.cceb-postcard__stamp-price {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 8px 8px 22px !important;
  margin: 0 !important;
  text-align: center !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 12px !important;
  line-height: 1.08 !important;
  font-weight: 400 !important;
  letter-spacing: .02em !important;
  color: var(--cceb-green) !important;
}
.cceb-postcard__stamp-cancel {
  position: absolute !important;
  right: 3px !important;
  bottom: 5px !important;
  z-index: 2 !important;
  width: 72px !important;
  height: 34px !important;
  border: 2px solid rgba(58,58,58,.64) !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: rgba(58,58,58,.78) !important;
  box-shadow: inset 0 0 0 1px rgba(58,58,58,.18) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  text-align: center !important;
  transform: rotate(-13deg) !important;
  transform-origin: center !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 8px !important;
  line-height: 1.02 !important;
  letter-spacing: .08em !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}
.cceb-postcard__stamp-cancel span {
  display: block !important;
}

/* Tablettes : on garde la carte complète et rectangulaire, sans réorganisation */
@media (max-width: 900px) {
  .cceb-postcard {
    width: calc(100vw - 24px) !important;
    min-height: 0 !important;
    height: auto !important;
    aspect-ratio: auto !important;
    max-height: calc(100vh - 24px) !important;
    padding: 28px 20px !important;
    grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr) !important;
    gap: 18px !important;
  }
  .cceb-postcard::before {
    top: 28px !important;
    bottom: 28px !important;
    left: 50% !important;
  }
  .cceb-postcard__plant img {
    width: 88% !important;
    max-width: 220px !important;
  }
  .cceb-postcard__details {
    font-size: 13px !important;
    line-height: 1.1 !important;
  }
  .cceb-postcard__mention {
    font-size: 10px !important;
  }
  .cceb-postcard__stamp {
    top: 18px !important;
    right: 18px !important;
    width: 92px !important;
    height: 110px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 10px !important;
    padding-bottom: 18px !important;
  }
  .cceb-postcard__stamp-cancel {
    width: 60px !important;
    height: 30px !important;
    font-size: 7px !important;
  }
}

/* Smartphones : même structure, carte complète visible, aucun bloc déplacé */
@media (max-width: 640px) {
  .cceb-postcard {
    width: calc(100vw - 16px) !important;
    max-height: calc(100vh - 16px) !important;
    padding: 22px 14px !important;
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
    gap: 12px !important;
  }
  .cceb-postcard::after {
    inset: 8px !important;
  }
  .cceb-postcard::before {
    top: 22px !important;
    bottom: 22px !important;
    left: 50% !important;
  }
  .cceb-postcard__plant img {
    width: 88% !important;
    max-width: 160px !important;
  }
  .cceb-postcard__plant span {
    font-size: 11px !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 128px !important;
  }
  .cceb-postcard__mention {
    font-size: 9px !important;
  }
  .cceb-postcard__details {
    font-size: 12px !important;
    line-height: 1.08 !important;
    gap: 2px !important;
  }
  .cceb-postcard__address,
  .cceb-postcard__contacts {
    gap: 2px !important;
  }
  .cceb-postcard__address {
    margin-bottom: 8px !important;
  }
  .cceb-postcard__stamp {
    top: 14px !important;
    right: 14px !important;
    width: 76px !important;
    height: 90px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 8px !important;
    padding-bottom: 14px !important;
  }
  .cceb-postcard__stamp-cancel {
    width: 50px !important;
    height: 24px !important;
    right: 2px !important;
    bottom: 3px !important;
    font-size: 6px !important;
  }
}


/* ==================================================
   Compte client EB — V7.5 : correctif final carte postale
   ================================================== */

/* Sur desktop : vraie carte postale 3:2 à l'écran */
.cceb-postcard {
  width: min(780px, calc(100vw - 40px)) !important;
  aspect-ratio: 3 / 2 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 40px 42px 38px !important;
  gap: 42px !important;
  overflow: hidden !important;
  align-items: stretch !important;
}

/* Bordure demandée : rectangles 25 x 6 alternant blanc / gris clair */
.cceb-postcard::after {
  content: '' !important;
  position: absolute !important;
  inset: 12px !important;
  pointer-events: none !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  background:
    repeating-linear-gradient(90deg, #ffffff 0 25px, #dddddd 25px 50px) top left / 50px 6px repeat-x,
    repeating-linear-gradient(90deg, #ffffff 0 25px, #dddddd 25px 50px) bottom left / 50px 6px repeat-x,
    repeating-linear-gradient(0deg, #ffffff 0 25px, #dddddd 25px 50px) top left / 6px 50px repeat-y,
    repeating-linear-gradient(0deg, #ffffff 0 25px, #dddddd 25px 50px) top right / 6px 50px repeat-y !important;
}
.cceb-postcard::before {
  top: 40px !important;
  bottom: 40px !important;
}

/* Illustration beaucoup plus grande */
.cceb-postcard__plant {
  justify-content: space-between !important;
  gap: 8px !important;
  padding: 0 2px 0 4px !important;
}
.cceb-postcard__plant img {
  width: 98% !important;
  max-width: 360px !important;
  max-height: 400px !important;
  object-fit: contain !important;
}
.cceb-postcard__plant span {
  width: 100% !important;
  text-align: center !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
}

/* Bloc droit calé plus bas, au niveau de la ligne du nom botanique */
.cceb-postcard__details {
  justify-content: flex-end !important;
  gap: 2px !important;
  padding-top: 78px !important;
  padding-bottom: 8px !important;
  font-size: 14px !important;
  line-height: 1.08 !important;
}

/* Logo un peu plus petit */
.cceb-postcard__logo,
.cceb-postcard__logo img,
.cceb-postcard__logo .cceb-postcard__logo-img {
  max-width: 145px !important;
}
.cceb-postcard__logo {
  margin: 0 0 8px !important;
}

/* Mention plus petite, pas en capitales visuelles */
.cceb-postcard__mention {
  margin: 0 0 12px !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: .015em !important;
  text-transform: none !important;
}
.cceb-postcard__address,
.cceb-postcard__contacts {
  gap: 2px !important;
  line-height: 1.06 !important;
}
.cceb-postcard__address {
  margin-bottom: 10px !important;
}

/* Timbre avec texte centré et tampon date style cachet simple */
.cceb-postcard__stamp {
  top: 28px !important;
  right: 30px !important;
  width: 112px !important;
  height: 132px !important;
  background: #ece4cf !important;
  border: 1px solid rgba(133,135,97,.75) !important;
  box-shadow: inset 0 0 0 5px rgba(133,135,97,.08) !important;
}
.cceb-postcard__stamp::before {
  inset: 5px !important;
  border: 1px dashed rgba(133,135,97,.42) !important;
}
.cceb-postcard__stamp-price {
  padding: 8px 8px 28px !important;
  font-size: 12px !important;
  line-height: 1.06 !important;
  text-align: center !important;
  align-items: center !important;
  justify-content: center !important;
}
.cceb-postcard__stamp-cancel {
  position: absolute !important;
  right: 4px !important;
  bottom: 6px !important;
  z-index: 3 !important;
  width: 86px !important;
  min-height: 34px !important;
  padding: 4px 8px !important;
  border: 2px solid rgba(62,62,62,.7) !important;
  border-radius: 6px !important;
  background: transparent !important;
  color: rgba(62,62,62,.84) !important;
  box-shadow: inset 0 0 0 1px rgba(62,62,62,.18) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  transform: rotate(-7deg) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 10px !important;
  line-height: 1.05 !important;
  letter-spacing: .06em !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}

/* Tablettes et smartphones : carte complète, rectangulaire, sans réorganisation mouvante */
@media (max-width: 900px) {
  .cceb-postcard {
    width: calc(100vw - 24px) !important;
    aspect-ratio: auto !important;
    padding: 28px 20px !important;
    gap: 18px !important;
  }
  .cceb-postcard::after {
    inset: 10px !important;
  }
  .cceb-postcard::before {
    top: 28px !important;
    bottom: 28px !important;
  }
  .cceb-postcard__plant {
    justify-content: center !important;
  }
  .cceb-postcard__plant img {
    width: 92% !important;
    max-width: 240px !important;
    max-height: none !important;
  }
  .cceb-postcard__details {
    justify-content: center !important;
    padding-top: 44px !important;
    padding-bottom: 0 !important;
    font-size: 13px !important;
    line-height: 1.08 !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 128px !important;
  }
  .cceb-postcard__mention {
    font-size: 9px !important;
  }
  .cceb-postcard__stamp {
    width: 92px !important;
    height: 108px !important;
    top: 18px !important;
    right: 18px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 10px !important;
    padding-bottom: 20px !important;
  }
  .cceb-postcard__stamp-cancel {
    width: 68px !important;
    min-height: 28px !important;
    font-size: 8px !important;
    right: 3px !important;
    bottom: 4px !important;
  }
}

@media (max-width: 640px) {
  .cceb-postcard {
    width: calc(100vw - 16px) !important;
    padding: 22px 14px !important;
    gap: 12px !important;
  }
  .cceb-postcard::after {
    inset: 8px !important;
  }
  .cceb-postcard::before {
    top: 22px !important;
    bottom: 22px !important;
  }
  .cceb-postcard__plant img {
    width: 92% !important;
    max-width: 168px !important;
  }
  .cceb-postcard__plant span {
    font-size: 11px !important;
  }
  .cceb-postcard__details {
    padding-top: 34px !important;
    font-size: 12px !important;
    line-height: 1.05 !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 116px !important;
  }
  .cceb-postcard__mention {
    font-size: 8.5px !important;
    margin-bottom: 8px !important;
  }
  .cceb-postcard__stamp {
    width: 76px !important;
    height: 88px !important;
    top: 14px !important;
    right: 14px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 8px !important;
    padding-bottom: 16px !important;
  }
  .cceb-postcard__stamp-cancel {
    width: 54px !important;
    min-height: 22px !important;
    padding: 3px 5px !important;
    font-size: 6px !important;
    right: 2px !important;
    bottom: 3px !important;
  }
}


/* ==================================================
   Compte client EB — V7.5.5 : derniers ajustements carte postale
   ================================================== */

/* La bordure alternée devient directement le bord de la carte */
.cceb-postcard {
  position: relative !important;
  width: min(780px, calc(100vw - 40px)) !important;
  aspect-ratio: 3 / 2 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 48px 48px 34px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background:
    repeating-linear-gradient(90deg, #fff 0 25px, #dcdcdc 25px 50px) top left / 50px 6px repeat-x,
    repeating-linear-gradient(90deg, #fff 0 25px, #dcdcdc 25px 50px) bottom left / 50px 6px repeat-x,
    repeating-linear-gradient(0deg, #fff 0 25px, #dcdcdc 25px 50px) top left / 6px 50px repeat-y,
    repeating-linear-gradient(0deg, #fff 0 25px, #dcdcdc 25px 50px) top right / 6px 50px repeat-y,
    #fffdf8 !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.22) !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(240px, .88fr) !important;
  gap: 42px !important;
  align-items: stretch !important;
}
.cceb-postcard::after {
  display: none !important;
  content: none !important;
}
.cceb-postcard::before {
  content: '' !important;
  position: absolute !important;
  top: 48px !important;
  bottom: 34px !important;
  left: 50% !important;
  border-left: 1px solid #ded6cc !important;
}

/* Croix clairement visible, non mangée par le timbre */
.cceb-postcard__close {
  position: absolute !important;
  top: 16px !important;
  right: 18px !important;
  width: 28px !important;
  height: 28px !important;
  z-index: 20 !important;
  background: transparent !important;
  border: 0 !important;
  color: #000 !important;
  font-size: 28px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Illustration plus grande, nette, centrée, recollée au nom botanique */
.cceb-postcard__plant {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 4px !important;
  padding: 0 0 0 2px !important;
}
.cceb-postcard__plant img {
  width: auto !important;
  max-width: 385px !important;
  max-height: 394px !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  image-rendering: auto !important;
  transform: translateZ(0) !important;
}
.cceb-postcard__plant span {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  text-align: center !important;
  font-family: Georgia, serif !important;
  font-size: 12px !important;
  font-style: italic !important;
  line-height: 1.05 !important;
  color: #333 !important;
}

/* Coordonnées recollées à la ligne de base basse de gauche */
.cceb-postcard__details {
  justify-content: flex-end !important;
  gap: 2px !important;
  padding-top: 74px !important;
  padding-bottom: 8px !important;
  font-size: 14px !important;
  line-height: 1.08 !important;
}

/* Logo un peu plus petit */
.cceb-postcard__logo,
.cceb-postcard__logo img,
.cceb-postcard__logo .cceb-postcard__logo-img {
  max-width: 142px !important;
}
.cceb-postcard__logo {
  margin: 0 0 8px !important;
}

/* Mention demandée : MAJUSCULES et un peu plus grande */
.cceb-postcard__mention {
  margin: 0 0 12px !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
  color: #222 !important;
}
.cceb-postcard__address,
.cceb-postcard__contacts {
  gap: 2px !important;
  line-height: 1.06 !important;
}
.cceb-postcard__address {
  margin-bottom: 10px !important;
}

/* Timbre réduit de moitié environ, baissé, bordure hachurée */
.cceb-postcard__stamp {
  top: 50px !important;
  right: 42px !important;
  width: 62px !important;
  height: 74px !important;
  padding: 5px !important;
  background:
    repeating-linear-gradient(45deg, rgba(133,135,97,.28) 0 2px, transparent 2px 5px) top left / 100% 100%,
    #ece4cf !important;
  border: 1px solid rgba(133,135,97,.72) !important;
  border-radius: 0 !important;
  box-shadow: inset 0 0 0 3px rgba(255,255,255,.35) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  z-index: 4 !important;
}
.cceb-postcard__stamp::before {
  content: '' !important;
  position: absolute !important;
  inset: 4px !important;
  border: 1px dashed rgba(133,135,97,.55) !important;
  pointer-events: none !important;
}
.cceb-postcard__stamp-price {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 5px 3px 15px !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  font-family: var(--cceb-font-mono) !important;
  font-size: 7px !important;
  line-height: 1.05 !important;
  font-weight: 400 !important;
  letter-spacing: .01em !important;
  color: var(--cceb-green) !important;
}

/* Tampon qui mord clairement le coin inférieur droit du timbre */
.cceb-postcard__stamp-cancel {
  position: absolute !important;
  right: -18px !important;
  bottom: -10px !important;
  z-index: 8 !important;
  width: 82px !important;
  min-height: 30px !important;
  padding: 3px 6px !important;
  border: 2px solid rgba(55,55,55,.72) !important;
  border-radius: 5px !important;
  background: transparent !important;
  color: rgba(55,55,55,.86) !important;
  box-shadow: inset 0 0 0 1px rgba(55,55,55,.18) !important;
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  text-align: center !important;
  transform: rotate(-7deg) !important;
  transform-origin: center !important;
  font-family: "Courier New", Courier, monospace !important;
  font-size: 8px !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}
.cceb-postcard__stamp-cancel span {
  display: block !important;
  white-space: nowrap !important;
}
.cceb-postcard__stamp-cancel span:first-child {
  font-size: 8px !important;
  letter-spacing: .12em !important;
}
.cceb-postcard__stamp-cancel span:last-child {
  font-size: 7px !important;
}

/* Tablette : garder la structure, éviter le chevauchement */
@media (max-width: 900px) {
  .cceb-postcard {
    width: calc(100vw - 24px) !important;
    aspect-ratio: auto !important;
    padding: 30px 20px 24px !important;
    gap: 18px !important;
  }
  .cceb-postcard::before {
    top: 30px !important;
    bottom: 24px !important;
  }
  .cceb-postcard__plant {
    justify-content: flex-end !important;
    gap: 4px !important;
  }
  .cceb-postcard__plant img {
    max-width: 260px !important;
    max-height: 320px !important;
  }
  .cceb-postcard__plant span {
    font-size: 11px !important;
  }
  .cceb-postcard__details {
    padding-top: 40px !important;
    padding-bottom: 0 !important;
    font-size: 13px !important;
    line-height: 1.06 !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 124px !important;
  }
  .cceb-postcard__mention {
    font-size: 9.5px !important;
  }
  .cceb-postcard__stamp {
    top: 36px !important;
    right: 34px !important;
    width: 56px !important;
    height: 68px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 6.5px !important;
  }
  .cceb-postcard__stamp-cancel {
    width: 72px !important;
    min-height: 26px !important;
    right: -16px !important;
    bottom: -9px !important;
    font-size: 7px !important;
  }
  .cceb-postcard__stamp-cancel span:last-child {
    font-size: 6px !important;
  }
}

/* Mobile : conserver la carte complète, réduire proprement */
@media (max-width: 640px) {
  .cceb-postcard {
    width: calc(100vw - 16px) !important;
    padding: 24px 14px 18px !important;
    gap: 10px !important;
  }
  .cceb-postcard::before {
    top: 24px !important;
    bottom: 18px !important;
  }
  .cceb-postcard__plant img {
    max-width: 180px !important;
    max-height: 240px !important;
  }
  .cceb-postcard__plant span {
    font-size: 9.5px !important;
  }
  .cceb-postcard__details {
    padding-top: 30px !important;
    font-size: 11px !important;
    line-height: 1.04 !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 104px !important;
  }
  .cceb-postcard__mention {
    font-size: 7.8px !important;
    margin-bottom: 7px !important;
  }
  .cceb-postcard__stamp {
    top: 28px !important;
    right: 28px !important;
    width: 46px !important;
    height: 56px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 5px !important;
    padding-bottom: 10px !important;
  }
  .cceb-postcard__stamp-cancel {
    width: 58px !important;
    min-height: 20px !important;
    right: -13px !important;
    bottom: -7px !important;
    padding: 2px 4px !important;
    font-size: 5.5px !important;
  }
  .cceb-postcard__stamp-cancel span:first-child {
    font-size: 5.5px !important;
  }
  .cceb-postcard__stamp-cancel span:last-child {
    font-size: 5px !important;
  }
}


/* ==================================================
   Compte client EB — V7.5.6 : micro-correctif favoris
   ================================================== */

/* Bouton “Voir tous mes produits favoris” : texte très légèrement réduit */
.cceb-favorites-see-all .cceb-button,
.cceb-favorites-see-all .cceb-button--dark,
.woocommerce .cceb-favorites-see-all .cceb-button,
.woocommerce .cceb-favorites-see-all .button {
  font-size: 11.5px !important;
  letter-spacing: .025em !important;
  white-space: nowrap !important;
}


/* ==================================================
   Compte client EB — V8 final : derniers ajustements
   carte postale popup
   ================================================== */

/* Remonter et recentrer le contenu de la carte */
.cceb-postcard {
  padding: 42px 48px 28px !important;
}
.cceb-postcard::before {
  top: 42px !important;
  bottom: 28px !important;
}

/* Illustration + nom botanique centrés verticalement à gauche */
.cceb-postcard__plant {
  justify-content: center !important;
  gap: 3px !important;
  padding: 0 0 0 2px !important;
}
.cceb-postcard__plant img {
  max-width: 392px !important;
  max-height: 405px !important;
}
.cceb-postcard__plant span {
  font-size: 11.5px !important;
  line-height: 1.02 !important;
  margin-top: 0 !important;
}

/* Ajuster la ligne de base à droite en remontant légèrement tout le bloc */
.cceb-postcard__details {
  justify-content: center !important;
  gap: 2px !important;
  padding-top: 26px !important;
  padding-bottom: 0 !important;
  font-size: 14px !important;
  line-height: 1.08 !important;
}
.cceb-postcard__address,
.cceb-postcard__contacts {
  gap: 2px !important;
  line-height: 1.05 !important;
}
.cceb-postcard__address {
  margin-bottom: 10px !important;
}

/* Timbre un peu plus grand et descendu */
.cceb-postcard__stamp {
  top: 62px !important;
  right: 42px !important;
  width: 76px !important;
  height: 92px !important;
  padding: 5px !important;
  background: #ece4cf !important;
  border: 1px solid rgba(133,135,97,.72) !important;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,.38) !important;
}

/* Bordure du timbre style ancien / échancré, pas le fond */
.cceb-postcard__stamp::before {
  content: '' !important;
  position: absolute !important;
  inset: 4px !important;
  pointer-events: none !important;
  background:
    repeating-linear-gradient(90deg, rgba(133,135,97,.68) 0 5px, transparent 5px 10px) top left / 100% 1px no-repeat,
    repeating-linear-gradient(90deg, rgba(133,135,97,.68) 0 5px, transparent 5px 10px) bottom left / 100% 1px no-repeat,
    repeating-linear-gradient(0deg, rgba(133,135,97,.68) 0 5px, transparent 5px 10px) top left / 1px 100% no-repeat,
    repeating-linear-gradient(0deg, rgba(133,135,97,.68) 0 5px, transparent 5px 10px) top right / 1px 100% no-repeat !important;
  border: 1px dashed rgba(133,135,97,.62) !important;
}
.cceb-postcard__stamp-price {
  padding: 8px 4px 18px !important;
  font-size: 8px !important;
  line-height: 1.03 !important;
}

/* Tampon plus petit, beaucoup plus bas, mordant franchement le coin inférieur droit */
.cceb-postcard__stamp-cancel {
  right: -21px !important;
  bottom: -17px !important;
  width: 70px !important;
  min-height: 24px !important;
  padding: 2px 5px !important;
  border: 2px solid rgba(55,55,55,.72) !important;
  border-radius: 5px !important;
  box-shadow: inset 0 0 0 1px rgba(55,55,55,.18) !important;
  transform: rotate(-7deg) !important;
  font-family: "Courier New", Courier, monospace !important;
  font-size: 6.8px !important;
  line-height: 1 !important;
  letter-spacing: .09em !important;
}
.cceb-postcard__stamp-cancel span:first-child {
  font-size: 6.8px !important;
  letter-spacing: .13em !important;
}
.cceb-postcard__stamp-cancel span:last-child {
  font-size: 6.2px !important;
}

/* Responsive : conserver les mêmes intentions visuelles */
@media (max-width: 900px) {
  .cceb-postcard {
    padding: 28px 20px 20px !important;
  }
  .cceb-postcard::before {
    top: 28px !important;
    bottom: 20px !important;
  }
  .cceb-postcard__plant {
    justify-content: center !important;
  }
  .cceb-postcard__plant img {
    max-width: 268px !important;
    max-height: 328px !important;
  }
  .cceb-postcard__plant span {
    font-size: 10.5px !important;
  }
  .cceb-postcard__details {
    justify-content: center !important;
    padding-top: 20px !important;
    font-size: 13px !important;
  }
  .cceb-postcard__stamp {
    top: 46px !important;
    right: 34px !important;
    width: 66px !important;
    height: 80px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 7px !important;
    padding-bottom: 15px !important;
  }
  .cceb-postcard__stamp-cancel {
    right: -18px !important;
    bottom: -14px !important;
    width: 61px !important;
    min-height: 22px !important;
    font-size: 6px !important;
  }
  .cceb-postcard__stamp-cancel span:first-child { font-size: 6px !important; }
  .cceb-postcard__stamp-cancel span:last-child { font-size: 5.5px !important; }
}

@media (max-width: 640px) {
  .cceb-postcard {
    padding: 22px 14px 16px !important;
  }
  .cceb-postcard::before {
    top: 22px !important;
    bottom: 16px !important;
  }
  .cceb-postcard__plant img {
    max-width: 186px !important;
    max-height: 246px !important;
  }
  .cceb-postcard__plant span {
    font-size: 9px !important;
  }
  .cceb-postcard__details {
    padding-top: 16px !important;
    font-size: 11px !important;
  }
  .cceb-postcard__stamp {
    top: 34px !important;
    right: 28px !important;
    width: 54px !important;
    height: 66px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 5.8px !important;
    padding-bottom: 12px !important;
  }
  .cceb-postcard__stamp-cancel {
    right: -15px !important;
    bottom: -11px !important;
    width: 50px !important;
    min-height: 18px !important;
    font-size: 5px !important;
  }
  .cceb-postcard__stamp-cancel span:first-child { font-size: 5px !important; }
  .cceb-postcard__stamp-cancel span:last-child { font-size: 4.7px !important; }
}


/* ==================================================
   Compte client EB — V8.0.1 : micro-correctifs finaux
   ================================================== */

/* Bouton dashboard : prix en gras comme dans Favoris natif */
.cceb-reco-cart,
.woocommerce .cceb-reco-cart.button {
  white-space: nowrap !important;
}
.cceb-reco-cart .ebpf-cart-button-price,
.woocommerce .cceb-reco-cart .ebpf-cart-button-price {
  display: inline !important;
  font-weight: 700 !important;
}
.cceb-reco-cart .ebpf-cart-button-sep,
.woocommerce .cceb-reco-cart .ebpf-cart-button-sep {
  display: inline !important;
  margin: 0 .3em !important;
  font-weight: 400 !important;
}
.cceb-reco-cart .ebpf-cart-button-label,
.woocommerce .cceb-reco-cart .ebpf-cart-button-label {
  display: inline !important;
  font-weight: 400 !important;
}

/* Carte postale : tester une bordure wave / scalloped en CSS */
.cceb-postcard {
  border: 0 !important;
  background: #fffdf8 !important;
}
.cceb-postcard::after {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 6px 6px, #dcdcdc 6px, transparent 6.3px) top left / 12px 12px repeat-x,
    radial-gradient(circle at 6px 6px, #dcdcdc 6px, transparent 6.3px) bottom left / 12px 12px repeat-x,
    radial-gradient(circle at 6px 6px, #dcdcdc 6px, transparent 6.3px) top left / 12px 12px repeat-y,
    radial-gradient(circle at 6px 6px, #dcdcdc 6px, transparent 6.3px) top right / 12px 12px repeat-y !important;
}


/* ==================================================
   Compte client EB — V8.0.2 : abandon bordure wave
   retour à la bordure blanche / grise précédente
   ================================================== */
.cceb-postcard {
  background:
    repeating-linear-gradient(90deg, #fff 0 25px, #dcdcdc 25px 50px) top left / 50px 6px repeat-x,
    repeating-linear-gradient(90deg, #fff 0 25px, #dcdcdc 25px 50px) bottom left / 50px 6px repeat-x,
    repeating-linear-gradient(0deg, #fff 0 25px, #dcdcdc 25px 50px) top left / 6px 50px repeat-y,
    repeating-linear-gradient(0deg, #fff 0 25px, #dcdcdc 25px 50px) top right / 6px 50px repeat-y,
    #fffdf8 !important;
}
.cceb-postcard::after {
  display: none !important;
  content: none !important;
  background: none !important;
}


/* ==================================================
   Compte client EB — V8.1 : micro-correctifs finaux
   ================================================== */

/* Harmoniser le survol du bouton Boutique avec les 3 autres icônes */
.cceb-help-action[data-cceb-open-postcard]:hover,
.cceb-help-action[data-cceb-open-postcard]:focus-visible {
  background: var(--cceb-green-soft) !important;
  border-color: #d7d7d2 !important;
}


/* V8.1 — harmonisation titres routines embarquées : 15px, crayon collé au titre, croix à droite. */
.cceb-embedded-routines .ebpf-routine-column-header {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  overflow: visible !important;
}
.cceb-embedded-routines .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-title:focus,
.cceb-embedded-routines .ebpf-routine-title:active {
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  flex: 0 1 auto !important;
  width: auto !important;
  max-width: calc(100% - 70px) !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
.cceb-embedded-routines .ebpf-edit-routine {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  margin-left: 3px !important;
  margin-right: 8px !important;
  flex: 0 0 auto !important;
}
.cceb-embedded-routines .ebpf-delete-routine {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  margin-left: auto !important;
  flex: 0 0 auto !important;
}


/* V8.1 — correctif dashboard : routines embarquées + boutons recommandations sans prix */
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-header {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  overflow: visible !important;
}
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-title,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-title:focus,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-title:active {
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: calc(100% - 76px) !important;
  min-width: 1ch !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  field-sizing: content !important;
}
.cceb-dashboard .cceb-embedded-routines .ebpf-edit-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-edit,
.cceb-dashboard .cceb-embedded-routines [data-ebpf-edit-routine] {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  margin-left: 4px !important;
  margin-right: 8px !important;
  flex: 0 0 auto !important;
}
.cceb-dashboard .cceb-embedded-routines .ebpf-delete-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-delete,
.cceb-dashboard .cceb-embedded-routines [data-ebpf-delete-routine] {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  margin-left: auto !important;
  flex: 0 0 auto !important;
}
.cceb-dashboard .cceb-reco-cart .ebpf-cart-button-price,
.cceb-dashboard .woocommerce .cceb-reco-cart .ebpf-cart-button-price,
.cceb-dashboard .cceb-reco-cart .ebpf-cart-button-sep,
.cceb-dashboard .woocommerce .cceb-reco-cart .ebpf-cart-button-sep {
  display: none !important;
}
.cceb-dashboard .cceb-reco-cart .ebpf-cart-button-label,
.cceb-dashboard .woocommerce .cceb-reco-cart .ebpf-cart-button-label {
  display: inline !important;
  font-weight: 700 !important;
}


/* V8.3 — routines embarquées dashboard : 15px, placeholder lisible, crayon collé au titre, croix à droite. */
.cceb-embedded-routines .ebpf-routine-column-header,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-header {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  overflow: visible !important;
}
.cceb-embedded-routines .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title,
.cceb-embedded-routines .ebpf-routine-title:focus,
.cceb-embedded-routines .ebpf-routine-title:active,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-title,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header .ebpf-routine-title,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-title:focus,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-title:active {
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  width: auto !important;
  max-width: calc(100% - 58px) !important;
  min-width: 0 !important;
  flex: 0 1 auto !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
.cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title:placeholder-shown,
.cceb-embedded-routines .ebpf-routine-title:focus:placeholder-shown,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-routine-title:placeholder-shown,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-title:focus:placeholder-shown {
  width: 17ch !important;
  min-width: 17ch !important;
  max-width: calc(100% - 40px) !important;
  flex: 0 1 17ch !important;
}
.cceb-embedded-routines .ebpf-edit-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-edit-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-edit,
.cceb-dashboard .cceb-embedded-routines [data-ebpf-edit-routine] {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  margin-left: 4px !important;
  margin-right: 8px !important;
  flex: 0 0 auto !important;
}
.cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-edit-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header.is-editing .ebpf-edit-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-column-header.is-editing [data-ebpf-edit-routine] {
  display: none !important;
}
.cceb-embedded-routines .ebpf-delete-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-delete-routine,
.cceb-dashboard .cceb-embedded-routines .ebpf-routine-delete,
.cceb-dashboard .cceb-embedded-routines [data-ebpf-delete-routine] {
  position: static !important;
  top: auto !important;
  right: auto !important;
  transform: none !important;
  margin-left: auto !important;
  flex: 0 0 auto !important;
}
/* V8.4 — produits recommandés : bouton sans prix et libellé non gras. */
.cceb-reco-cart .ebpf-cart-button-price,
.woocommerce .cceb-reco-cart .ebpf-cart-button-price,
.cceb-reco-cart .ebpf-cart-button-sep,
.woocommerce .cceb-reco-cart .ebpf-cart-button-sep,
.cceb-dashboard .cceb-reco-cart .ebpf-cart-button-price,
.cceb-dashboard .woocommerce .cceb-reco-cart .ebpf-cart-button-price,
.cceb-dashboard .cceb-reco-cart .ebpf-cart-button-sep,
.cceb-dashboard .woocommerce .cceb-reco-cart .ebpf-cart-button-sep {
  display: none !important;
}
.cceb-reco-cart .ebpf-cart-button-label,
.woocommerce .cceb-reco-cart .ebpf-cart-button-label,
.cceb-dashboard .cceb-reco-cart .ebpf-cart-button-label,
.cceb-dashboard .woocommerce .cceb-reco-cart .ebpf-cart-button-label {
  display: inline !important;
  font-weight: 400 !important;
}


/* V8.4 — dernière correction : texte AJOUTER AU PANIER non gras dans les produits suggérés. */
.cceb-dashboard .cceb-reco-cart,
.cceb-dashboard .cceb-reco-cart.button,
.cceb-dashboard .cceb-reco-cart .ebpf-cart-button-label,
.cceb-dashboard .woocommerce .cceb-reco-cart,
.cceb-dashboard .woocommerce .cceb-reco-cart.button,
.cceb-dashboard .woocommerce .cceb-reco-cart .ebpf-cart-button-label,
.cceb-recommendations-panel .cceb-reco-cart,
.cceb-recommendations-panel .cceb-reco-cart.button,
.cceb-recommendations-panel .cceb-reco-cart .ebpf-cart-button-label {
  font-weight: 400 !important;
}


/* ==================================================
   Compte client EB — V8.5 : responsive carte postale
   Intervention limitée au popup Boutique / carte postale.
   - Portrait tablette + smartphone : vraie carte en portrait.
   - Paysage compact : maintien paysage avec réduction sécurisée.
   ================================================== */

/* Sécurité commune : la carte garde toujours son cadre et aucun contenu ne sort du popup. */
.cceb-postcard-modal {
  padding: clamp(8px, 2.4vw, 24px) !important;
}
.cceb-postcard {
  box-sizing: border-box !important;
  overflow: hidden !important;
}
.cceb-postcard__plant,
.cceb-postcard__details {
  position: relative !important;
  z-index: 2 !important;
  min-width: 0 !important;
  min-height: 0 !important;
}
.cceb-postcard__stamp,
.cceb-postcard__close {
  z-index: 20 !important;
}

/* Tablettes/smartphones en PORTRAIT : la carte devient verticale. */
@media (orientation: portrait) and (max-width: 900px) {
  .cceb-postcard {
    width: min(560px, calc(100vw - 18px), 65vh) !important;
    width: min(560px, calc(100vw - 18px), 65dvh) !important;
    height: auto !important;
    aspect-ratio: 2 / 3 !important;
    max-height: calc(100vh - 18px) !important;
    max-height: calc(100dvh - 18px) !important;
    padding: clamp(30px, 6.4vw, 56px) clamp(24px, 6vw, 48px) clamp(28px, 6vw, 46px) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: minmax(0, 1.05fr) minmax(0, .95fr) !important;
    gap: clamp(18px, 5vw, 34px) !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    background:
      repeating-linear-gradient(90deg, #fff 0 25px, #dcdcdc 25px 50px) top left / 50px 6px repeat-x,
      repeating-linear-gradient(90deg, #fff 0 25px, #dcdcdc 25px 50px) bottom left / 50px 6px repeat-x,
      repeating-linear-gradient(0deg, #fff 0 25px, #dcdcdc 25px 50px) top left / 6px 50px repeat-y,
      repeating-linear-gradient(0deg, #fff 0 25px, #dcdcdc 25px 50px) top right / 6px 50px repeat-y,
      #fffdf8 !important;
  }

  /* Le séparateur central devient un trait horizontal, entre l'illustration et les coordonnées. */
  .cceb-postcard::before {
    content: '' !important;
    position: absolute !important;
    top: 51.5% !important;
    left: clamp(34px, 9vw, 70px) !important;
    right: clamp(34px, 9vw, 70px) !important;
    bottom: auto !important;
    width: auto !important;
    height: 0 !important;
    border-left: 0 !important;
    border-top: 1px solid #ded6cc !important;
    pointer-events: none !important;
    z-index: 1 !important;
  }

  /* Bloc illustration en haut, avec une marge de sécurité pour le timbre et le X. */
  .cceb-postcard__plant {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: clamp(4px, 1.5vw, 8px) !important;
    padding: clamp(62px, 14vw, 104px) 0 clamp(14px, 3.4vw, 26px) !important;
    text-align: center !important;
  }
  .cceb-postcard__plant img {
    width: auto !important;
    max-width: min(76%, 330px) !important;
    max-height: min(34dvh, 340px) !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
  }
  .cceb-postcard__plant span {
    font-size: clamp(10px, 2.2vw, 13px) !important;
    line-height: 1.08 !important;
    width: 100% !important;
    text-align: center !important;
  }

  /* Bloc coordonnées en bas, centré dans la carte mais texte conservé en lecture gauche. */
  .cceb-postcard__details {
    grid-column: 1 !important;
    grid-row: 2 !important;
    justify-content: flex-start !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 360px !important;
    margin: 0 auto !important;
    padding: clamp(20px, 5.2vw, 38px) 0 0 !important;
    gap: 2px !important;
    font-size: clamp(11px, 2.7vw, 14px) !important;
    line-height: 1.12 !important;
    text-align: left !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: clamp(112px, 31vw, 160px) !important;
  }
  .cceb-postcard__logo {
    margin: 0 0 clamp(6px, 1.8vw, 10px) !important;
  }
  .cceb-postcard__mention {
    margin: 0 0 clamp(7px, 2vw, 12px) !important;
    font-size: clamp(8.5px, 2.15vw, 11px) !important;
    line-height: 1.15 !important;
    letter-spacing: .045em !important;
    text-align: left !important;
  }
  .cceb-postcard__address,
  .cceb-postcard__contacts {
    width: 100% !important;
    gap: 2px !important;
    line-height: 1.1 !important;
    align-items: flex-start !important;
  }
  .cceb-postcard__address {
    margin-bottom: clamp(8px, 2.2vw, 12px) !important;
  }

  /* Timbre + tampon + croix conservés en haut à droite, redimensionnés et jamais collés au contenu. */
  .cceb-postcard__close {
    top: clamp(10px, 2.8vw, 16px) !important;
    right: clamp(12px, 3.2vw, 22px) !important;
    width: clamp(24px, 6vw, 30px) !important;
    height: clamp(24px, 6vw, 30px) !important;
    font-size: clamp(24px, 6.4vw, 30px) !important;
  }
  .cceb-postcard__stamp {
    top: clamp(42px, 10vw, 68px) !important;
    right: clamp(26px, 7vw, 52px) !important;
    width: clamp(52px, 15vw, 76px) !important;
    height: clamp(64px, 18vw, 92px) !important;
    padding: clamp(4px, 1.2vw, 5px) !important;
  }
  .cceb-postcard__stamp-price {
    font-size: clamp(5.6px, 1.75vw, 8px) !important;
    line-height: 1.03 !important;
    padding: clamp(5px, 1.6vw, 8px) clamp(3px, 1vw, 4px) clamp(12px, 3.8vw, 18px) !important;
  }
  .cceb-postcard__stamp-cancel {
    right: clamp(-20px, -4.4vw, -13px) !important;
    bottom: clamp(-15px, -3.5vw, -10px) !important;
    width: clamp(50px, 14vw, 70px) !important;
    min-height: clamp(18px, 5vw, 24px) !important;
    padding: 2px 5px !important;
    font-size: clamp(5px, 1.6vw, 6.8px) !important;
  }
  .cceb-postcard__stamp-cancel span:first-child {
    font-size: clamp(5px, 1.6vw, 6.8px) !important;
  }
  .cceb-postcard__stamp-cancel span:last-child {
    font-size: clamp(4.7px, 1.45vw, 6.2px) !important;
  }
}

/* Smartphones portrait très étroits : on compacte sans repasser en paysage. */
@media (orientation: portrait) and (max-width: 380px) {
  .cceb-postcard {
    width: min(calc(100vw - 14px), 65vh) !important;
    width: min(calc(100vw - 14px), 65dvh) !important;
    aspect-ratio: 3 / 5 !important;
    max-height: calc(100vh - 14px) !important;
    max-height: calc(100dvh - 14px) !important;
    padding: 28px 20px 24px !important;
    gap: 16px !important;
  }
  .cceb-postcard::before {
    top: 51% !important;
    left: 30px !important;
    right: 30px !important;
  }
  .cceb-postcard__plant {
    padding-top: 58px !important;
    padding-bottom: 8px !important;
  }
  .cceb-postcard__plant img {
    max-width: 72% !important;
    max-height: 27dvh !important;
  }
  .cceb-postcard__details {
    padding-top: 18px !important;
    font-size: 10.5px !important;
    max-width: 300px !important;
  }
}

/* Tablettes et smartphones en PAYSAGE : on garde la carte paysage, mais on la réduit avant tout chevauchement. */
@media (orientation: landscape) and (max-width: 900px) {
  .cceb-postcard-modal {
    padding: 8px !important;
  }
  .cceb-postcard {
    width: min(calc(100vw - 16px), 145vh, 780px) !important;
    width: min(calc(100vw - 16px), 145dvh, 780px) !important;
    height: auto !important;
    aspect-ratio: 3 / 2 !important;
    max-height: calc(100vh - 16px) !important;
    max-height: calc(100dvh - 16px) !important;
    padding: clamp(18px, 6.2vh, 32px) clamp(18px, 4.8vw, 40px) clamp(16px, 5vh, 28px) !important;
    grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr) !important;
    gap: clamp(14px, 4.2vw, 32px) !important;
    align-items: stretch !important;
  }
  .cceb-postcard::before {
    top: clamp(18px, 6.2vh, 32px) !important;
    bottom: clamp(16px, 5vh, 28px) !important;
    left: 50% !important;
    right: auto !important;
    width: 0 !important;
    height: auto !important;
    border-top: 0 !important;
    border-left: 1px solid #ded6cc !important;
  }
  .cceb-postcard__plant {
    justify-content: center !important;
    padding: 0 0 0 2px !important;
    gap: 3px !important;
  }
  .cceb-postcard__plant img {
    max-width: min(92%, 270px) !important;
    max-height: calc(100vh - 120px) !important;
    max-height: calc(100dvh - 120px) !important;
    width: auto !important;
    height: auto !important;
  }
  .cceb-postcard__plant span {
    font-size: clamp(8.5px, 1.55vw, 10.5px) !important;
    line-height: 1.04 !important;
  }
  .cceb-postcard__details {
    justify-content: center !important;
    padding-top: clamp(12px, 5vh, 24px) !important;
    padding-bottom: 0 !important;
    font-size: clamp(10px, 1.9vw, 13px) !important;
    line-height: 1.05 !important;
    gap: 2px !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: clamp(94px, 19vw, 128px) !important;
  }
  .cceb-postcard__mention {
    font-size: clamp(7.2px, 1.35vw, 9.5px) !important;
    margin-bottom: clamp(6px, 1.9vh, 10px) !important;
  }
  .cceb-postcard__address,
  .cceb-postcard__contacts {
    gap: 1px !important;
    line-height: 1.05 !important;
  }
  .cceb-postcard__address {
    margin-bottom: clamp(6px, 2vh, 10px) !important;
  }
  .cceb-postcard__close {
    top: 8px !important;
    right: 10px !important;
    width: 24px !important;
    height: 24px !important;
    font-size: 24px !important;
  }
  .cceb-postcard__stamp {
    top: clamp(26px, 9vh, 46px) !important;
    right: clamp(24px, 5.5vw, 34px) !important;
    width: clamp(44px, 9vw, 66px) !important;
    height: clamp(54px, 11vw, 80px) !important;
    padding: 4px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: clamp(4.8px, 1vw, 7px) !important;
    padding: 4px 3px clamp(10px, 2.6vw, 15px) !important;
  }
  .cceb-postcard__stamp-cancel {
    right: clamp(-18px, -3.8vw, -12px) !important;
    bottom: clamp(-14px, -3vw, -9px) !important;
    width: clamp(48px, 9.5vw, 61px) !important;
    min-height: clamp(18px, 4vw, 22px) !important;
    font-size: clamp(4.8px, 1vw, 6px) !important;
  }
  .cceb-postcard__stamp-cancel span:first-child { font-size: clamp(4.8px, 1vw, 6px) !important; }
  .cceb-postcard__stamp-cancel span:last-child { font-size: clamp(4.4px, .9vw, 5.5px) !important; }
}

/* Paysage très bas : réduction supplémentaire pour que le trait et les deux blocs ne se touchent jamais. */
@media (orientation: landscape) and (max-height: 390px) {
  .cceb-postcard {
    padding: 16px 18px 14px !important;
    gap: 12px !important;
  }
  .cceb-postcard::before {
    top: 16px !important;
    bottom: 14px !important;
  }
  .cceb-postcard__plant img {
    max-width: 86% !important;
    max-height: calc(100vh - 98px) !important;
    max-height: calc(100dvh - 98px) !important;
  }
  .cceb-postcard__details {
    padding-top: 10px !important;
    font-size: 10px !important;
    line-height: 1.03 !important;
  }
  .cceb-postcard__logo,
  .cceb-postcard__logo img,
  .cceb-postcard__logo .cceb-postcard__logo-img {
    max-width: 92px !important;
  }
  .cceb-postcard__mention {
    font-size: 7px !important;
    margin-bottom: 5px !important;
  }
  .cceb-postcard__stamp {
    top: 24px !important;
    right: 24px !important;
    width: 42px !important;
    height: 52px !important;
  }
  .cceb-postcard__stamp-price {
    font-size: 4.5px !important;
    padding-bottom: 9px !important;
  }
  .cceb-postcard__stamp-cancel {
    width: 46px !important;
    min-height: 16px !important;
    right: -12px !important;
    bottom: -8px !important;
    font-size: 4.5px !important;
  }
  .cceb-postcard__stamp-cancel span:first-child { font-size: 4.5px !important; }
  .cceb-postcard__stamp-cancel span:last-child { font-size: 4.2px !important; }
}

/* ==================================================
   Compte client EB — V8.5.1 : micro-ajustements carte postale
   Intervention strictement limitée au popup Boutique / carte postale.
   ================================================== */

/* Version empilée portrait : coordonnées boutique centrées + respiration après le séparateur. */
@media (orientation: portrait) and (max-width: 900px) {
  .cceb-postcard__details {
    text-align: center !important;
    align-items: center !important;
    padding-top: clamp(30px, 7.2vw, 48px) !important;
  }
  .cceb-postcard__mention {
    text-align: center !important;
    width: 100% !important;
  }
  .cceb-postcard__address,
  .cceb-postcard__contacts {
    align-items: center !important;
    text-align: center !important;
    width: 100% !important;
  }
  .cceb-postcard__details a,
  .cceb-postcard__contacts a {
    text-align: center !important;
  }
}

/* Portrait très étroit : conserver la respiration entre le trait et les coordonnées. */
@media (orientation: portrait) and (max-width: 380px) {
  .cceb-postcard__details {
    padding-top: 28px !important;
  }
}

/* Paysage responsive : le bloc coordonnées garde une zone de sécurité après le trait vertical. */
@media (orientation: landscape) and (max-width: 900px) {
  .cceb-postcard__details {
    box-sizing: border-box !important;
    padding-left: clamp(18px, 3vw, 32px) !important;
  }
}

/* Paysage très bas : marge de sécurité réduite pour ne pas compresser le contenu. */
@media (orientation: landscape) and (max-height: 390px) {
  .cceb-postcard__details {
    padding-left: 12px !important;
  }
}


/* ==================================================
   Compte client EB — V9 : recommandations préchargées + centrage fiche.
   Intervention limitée au panneau Mes produits recommandés.
   ================================================== */
.cceb-recommendations-panel .cceb-reco-card__body {
  text-align: center !important;
}
.cceb-recommendations-panel .cceb-reco-card__title,
.cceb-recommendations-panel .cceb-reco-card__detail,
.cceb-recommendations-panel .cceb-reco-card__price {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ==================================================
   Compte client EB — V9.0.1 : miniature recommandations verrouillée avant chargement.
   Intervention limitée au panneau Mes produits recommandés.
   ================================================== */
.cceb-recommendations-panel .cceb-reco-card__image-wrap,
.cceb-recommendations-panel .cceb-reco-card__image {
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  background: var(--cceb-cream) !important;
}
.cceb-recommendations-panel .cceb-reco-card__image {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}
.cceb-recommendations-panel .cceb-reco-card__image img,
.cceb-recommendations-panel .cceb-reco-card__img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
