.fdp-c5{--ink:#292a27;--muted:#6d706b;--line:#dedfd9;--soft:#f6f6f2;--accent:#39483b;color:var(--ink);max-width:1040px;margin:0 auto;padding:clamp(18px,3vw,34px);border:1px solid var(--line);border-radius:18px;background:#fff;box-sizing:border-box;font-family:inherit}.fdp-c5 *{box-sizing:border-box}.fdp-c5 [hidden]{display:none!important}.fdp-c5 .eyebrow{font-size:.72rem;letter-spacing:.11em;font-weight:700;color:var(--muted)}.fdp-c5 h2{font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.16;margin:0 0 10px}.fdp-c5 header>p:not(.eyebrow){color:var(--muted)}.fdp-c5 .fields,.fdp-c5 .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fdp-c5 form{margin-top:26px}.fdp-c5 label{display:block;font-weight:600}.fdp-c5 input{display:block;width:100%;padding:13px;margin-top:7px;border:1px solid #cfd1ca;border-radius:9px;font:inherit}.fdp-c5 button,.fdp-c5 .shop{display:flex;justify-content:center;align-items:center;width:100%;margin-top:17px;padding:14px;border:0;border-radius:9px;background:var(--accent);color:#fff;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.fdp-c5 .error{color:#a12d2d}.fdp-c5 .results{margin-top:28px}.fdp-c5 .card{padding:clamp(16px,2vw,24px);border:1px solid var(--line);border-radius:13px;min-width:0}.fdp-c5 .card h3{font-size:1.15rem;line-height:1.3;margin:0 0 10px}.fdp-c5 .card p{line-height:1.55}.fdp-c5 .standard-formats,.fdp-c5 .tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.fdp-c5 .standard-format,.fdp-c5 .tile{display:grid;place-items:center;padding:14px 6px;background:var(--soft);border:1px solid var(--line);border-radius:8px;font-weight:700}.fdp-c5 .mod-head{display:flex;gap:12px;align-items:center}.fdp-c5 .photo{display:grid;place-items:center;min-width:76px;height:68px;border-radius:8px;background:#e9e4db;font-size:2rem}.fdp-c5 .format-label{font-weight:700}.fdp-c5 .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.fdp-c5 .tile{min-height:105px;font-size:1.25rem}.fdp-c5 .shop{margin-top:18px}@media(max-width:640px){.fdp-c5 .grid{grid-template-columns:1fr}.fdp-c5 .fields{gap:10px}.fdp-c5{padding:18px}}.fdp-c5 .standard-format,.fdp-c5 .tile{display:flex;flex-direction:column;justify-content:center;gap:9px;text-align:center}.fdp-c5 .format-shape{display:grid;place-items:center;width:min(100%,110px);min-height:36px;max-height:74px;margin:0 auto;padding:5px;border:1px solid #9da398;border-radius:4px;background:#eeeee8;font-weight:800;aspect-ratio:2.5}.fdp-c5 .format-shape span{font-size:1rem}.fdp-c5 .standard-format small,.fdp-c5 .tile small{font-size:.72rem;font-weight:500;line-height:1.3}.fdp-c5 .standard-formats{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));margin:12px 0}.fdp-c5 .standard-format{min-height:115px}.fdp-c5 .tile{min-height:125px}.fdp-c5 .standard-note{color:var(--muted);font-size:.9rem}

/* v1.2.0 : présentation plus claire et proportionnelle des formats */
.fdp-c5 .results{scroll-margin-top:24px}
.fdp-c5 .grid{align-items:stretch;gap:18px}
.fdp-c5 .card{display:flex;flex-direction:column;background:linear-gradient(180deg,#fff 0%,#fcfcf9 100%);box-shadow:0 3px 14px rgba(25,30,20,.035)}
.fdp-c5 .single-content{width:100%}
.fdp-c5 .standard-formats{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));align-items:stretch;gap:10px;margin:16px 0}
.fdp-c5 .standard-format,.fdp-c5 .tile{min-width:0;min-height:132px;padding:13px 10px;border:1px solid #d8dbd2;border-radius:11px;background:#f8f8f4;transition:border-color .15s ease,background .15s ease}
.fdp-c5 .format-shape{width:min(100%,124px);height:auto;min-height:0;max-height:none;aspect-ratio:2.5;border:1.5px solid #9ca397;border-radius:5px;background:linear-gradient(135deg,#f1f1eb,#e8e9e1);box-shadow:inset 0 0 0 3px rgba(255,255,255,.45);display:grid;place-items:center;padding:5px}
.fdp-c5 .format-shape span{font-size:clamp(.85rem,1.4vw,1rem);letter-spacing:.015em}
.fdp-c5 .standard-format small,.fdp-c5 .tile small{display:block;font-size:.74rem;color:#62665e;white-space:normal}
.fdp-c5 .standard-note{margin-top:4px;font-size:.84rem;line-height:1.45}
.fdp-c5 .mod-head{align-items:center;margin-bottom:6px}
.fdp-c5 .mod-head h3{margin:0}
.fdp-c5 .photo{flex:0 0 60px;min-width:60px;width:60px;height:60px;color:#39483b;background:#eeeee7;border:1px solid #e2e3db;font-size:1.8rem}
.fdp-c5 .format-label{margin:18px 0 8px;font-size:.94rem}
.fdp-c5 .tiles{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:10px}
.fdp-c5 .tile{min-height:132px;font-size:1rem}
.fdp-c5 .shop{min-height:50px;letter-spacing:.01em}
@media(max-width:640px){.fdp-c5 .grid{gap:12px}.fdp-c5 .card{padding:16px}.fdp-c5 .standard-formats,.fdp-c5 .tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fdp-c5 .standard-format,.fdp-c5 .tile{min-height:118px;padding:11px 7px}.fdp-c5 .format-shape{width:min(100%,110px)}}
@media(prefers-reduced-motion:reduce){.fdp-c5 *{transition:none!important;scroll-behavior:auto!important}}

/* v1.3.0 : vignettes compactes, style bouton et maximum de deux formats par ligne */
.fdp-c5 .standard-formats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:100%;}
.fdp-c5 .standard-format,.fdp-c5 .tile{min-height:0;height:auto;padding:10px 12px;gap:5px;border-radius:9px;text-decoration:none;color:inherit;transition:background .15s ease,border-color .15s ease,transform .15s ease;}
.fdp-c5 .standard-format{flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;min-height:58px;}
.fdp-c5 .standard-format .format-shape,.fdp-c5 .tile .format-shape{width:auto;min-width:68px;max-width:92px;height:32px;min-height:32px;max-height:32px;aspect-ratio:auto!important;padding:3px 8px;box-shadow:none;border-radius:5px;background:#f0f1eb;}
.fdp-c5 .standard-format .format-shape span,.fdp-c5 .tile .format-shape span{font-size:.9rem;}
.fdp-c5 .standard-format small,.fdp-c5 .tile small{font-size:.7rem;line-height:1.25;text-align:left;}
.fdp-c5 .standard-format.is-link,.fdp-c5 .tile.is-link{cursor:pointer;}
.fdp-c5 .standard-format.is-link:hover,.fdp-c5 .tile.is-link:hover{background:#eef0e8;border-color:#aeb6a7;transform:translateY(-1px);}
.fdp-c5 .tiles{grid-template-columns:repeat(2,minmax(0,1fr));}
.fdp-c5 .tile{min-height:68px;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;}
@media(max-width:640px){.fdp-c5 .standard-formats{grid-template-columns:repeat(2,minmax(0,1fr));}.fdp-c5 .standard-format,.fdp-c5 .tile{padding:9px 7px;gap:6px;}.fdp-c5 .standard-format .format-shape,.fdp-c5 .tile .format-shape{min-width:52px;max-width:68px;height:30px;min-height:30px;max-height:30px;}.fdp-c5 .standard-format small,.fdp-c5 .tile small{font-size:.65rem;}}


/* v1.4.0 : cartes de formats blanches, avec cadre et ombre cohérents avec les cartes de résultat.
   La différence de couleur reste réservée au petit bouton portant le nom du format. */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  background: #fff;
  border: 1px solid #dedfd9;
  box-shadow: 0 3px 12px rgba(25,30,20,.07);
  color: var(--ink);
}
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  background: #eeeee8;
  border-color: #9ca397;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.5);
}
.fdp-c5 .standard-format.is-link:hover,
.fdp-c5 .tile.is-link:hover {
  background: #fff;
  border-color: #aeb6a7;
  box-shadow: 0 5px 14px rgba(25,30,20,.11);
}


/* v1.5.0 : les grandes cartes reprennent le fond de la page.
   Les vignettes de formats restent blanches pour garder une hiérarchie visuelle claire. */
.fdp-c5 .result-card,
.fdp-c5 .result-panel,
.fdp-c5 .success-card,
.fdp-c5 .modular-card {
  background: transparent;
  box-shadow: 0 3px 12px rgba(25,30,20,.06);
  border-color: rgba(80, 85, 72, .22);
}

/* Les petites vignettes de formats gardent leur fond blanc distinctif. */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  background: #fff;
}


/* v1.5.1 : correction ciblée sur les vrais sélecteurs des cartes (.card).
   Fond transparent forcé pour reprendre celui de la page, sans toucher aux vignettes. */
.fdp-c5 .results .grid > article.card,
.fdp-c5 .results .grid > .card {
  background: transparent !important;
  background-image: none !important;
  box-shadow: 0 3px 12px rgba(25, 30, 20, .06) !important;
  border-color: rgba(80, 85, 72, .22) !important;
}
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  background: #fff !important;
}


/* v1.7.0 : icône modulaire légère en SVG inline, remplissant la vignette arrondie. */
.fdp-c5 .photo { overflow:hidden; padding:0 !important; background:#e9e4db; }
.fdp-c5 .modular-wall-icon { display:block; width:100%; height:100%; max-width:60px; max-height:60px; object-fit:cover; }

/* Couleurs distinctives et stables par format, limitées au bouton du nom. */
.fdp-c5 .format-shape[data-format="XS"] { background:#e7efe3 !important; border-color:#a8b9a1 !important; }
.fdp-c5 .format-shape[data-format="S"] { background:#f3e5dc !important; border-color:#d0b2a2 !important; }
.fdp-c5 .format-shape[data-format="M"] { background:#deebf2 !important; border-color:#9db9ca !important; }
.fdp-c5 .format-shape[data-format="XXL"] { background:#e9e1f1 !important; border-color:#b7a4cb !important; }

/* v1.7.0 — icônes paysage au ratio d’or, dimensions identiques pour tous les formats */
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  display:grid; place-items:center; flex:0 0 auto;
  width:88px !important; min-width:88px !important; max-width:88px !important;
  height:auto !important; min-height:54.4px !important; max-height:none !important;
  aspect-ratio:1.718 !important; border-radius:7px !important;
  border:1px solid #b8bec4; background:#e5e7e9; color:#343a40;
  font-size:.9rem; line-height:1; font-weight:700;
}
.fdp-c5 .format-shape[data-format="SM"] {background:#e7efe3!important;border-color:#a8b9a1!important;color:#26372a!important}
.fdp-c5 .format-shape[data-format="XS"] {background:#e5e7e9!important;border-color:#b8bec4!important;color:#343a40!important}
.fdp-c5 .format-shape[data-format="S"] {background:#f3e5dc!important;border-color:#d0b2a2!important;color:#49372f!important}
.fdp-c5 .format-shape[data-format="M"] {background:#deebf2!important;border-color:#9db9ca!important;color:#2c4351!important}
.fdp-c5 .format-shape[data-format="XXL"] {background:#e9e1f1!important;border-color:#b7a4cb!important;color:#42364e!important}
.fdp-c5 .standard-format-sm {grid-column:1 / -1; width:100%}
.fdp-c5 .standard-format-sm .format-description {font-size:.9rem;font-weight:700}
.fdp-c5 .standard-format-sm .format-shape {width:88px!important;min-width:88px!important}
.fdp-c5 .tile-sm {grid-column:1 / -1}
.fdp-c5 .standard-format.is-link,.fdp-c5 .tile.is-link {text-decoration:none}
@media(max-width:640px){.fdp-c5 .standard-format .format-shape,.fdp-c5 .tile .format-shape{width:88px!important;min-width:88px!important}}

/* v1.7.1 — vignette SM : libellé sur la première ligne, dimensions saisies dessous */
.fdp-c5 .standard-format-sm {
  display:grid !important;
  grid-template-columns: 88px minmax(0,1fr);
  grid-template-rows:auto auto;
  align-items:center;
  justify-items:stretch;
  column-gap:14px;
  row-gap:5px;
  padding:12px 16px !important;
  text-align:left;
}
.fdp-c5 .standard-format-sm .format-shape {
  grid-column:1;
  grid-row:1 / span 2;
  justify-self:center;
  align-self:center;
}
.fdp-c5 .standard-format-sm .format-description {
  grid-column:2;
  grid-row:1;
  align-self:end;
  font-size:.92rem;
  line-height:1.2;
  white-space:normal;
}
.fdp-c5 .standard-format-sm small {
  grid-column:2;
  grid-row:2;
  align-self:start;
  font-size:.78rem;
  line-height:1.25;
  color:#656860;
  white-space:normal;
}
@media(max-width:520px){
 .fdp-c5 .standard-format-sm{grid-template-columns:76px minmax(0,1fr);column-gap:10px}
 .fdp-c5 .standard-format-sm .format-shape{width:76px!important;min-width:76px!important}
}

/* v1.7.3 — icônes moins hautes, code plus lisible, alignement homogène */
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  width:78px !important;
  min-width:78px !important;
  max-width:78px !important;
  height:44px !important;
  min-height:44px !important;
  max-height:44px !important;
  aspect-ratio:auto !important;
  font-size:1.12rem !important;
  line-height:1 !important;
  border-radius:7px !important;
}
.fdp-c5 .standard-format-sm .format-shape {width:78px!important;min-width:78px!important;height:44px!important;min-height:44px!important}
.fdp-c5 .tile-sm {
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  padding:12px 14px !important;
  text-align:left !important;
}
.fdp-c5 .tile-sm .format-shape {margin:0 !important;flex:0 0 78px !important}
.fdp-c5 .tile-sm .format-description {font-size:.92rem;line-height:1.2}

/* v1.7.4 — icônes réduites, codes agrandis et lisibles */
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  width:39px !important;
  min-width:39px !important;
  max-width:39px !important;
  height:22px !important;
  min-height:22px !important;
  max-height:22px !important;
  aspect-ratio:auto !important;
  font-size:1rem !important;
  line-height:1 !important;
  font-weight:800 !important;
  border-radius:5px !important;
  border-width:1px !important;
}
.fdp-c5 .standard-format-sm .format-shape,
.fdp-c5 .tile-sm .format-shape {
  width:39px !important;
  min-width:39px !important;
  height:22px !important;
  min-height:22px !important;
  flex-basis:39px !important;
  font-size:1rem !important;
}
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  gap:7px !important;
}
.fdp-c5 .standard-format small,
.fdp-c5 .tile small {
  font-size:.76rem !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
}
.fdp-c5 .standard-format-sm {
  grid-template-columns:39px minmax(0,1fr) !important;
  column-gap:12px !important;
}
.fdp-c5 .tile-sm {
  gap:12px !important;
  padding:12px 14px !important;
}
.fdp-c5 .format-description {
  font-size:.92rem !important;
  line-height:1.15 !important;
  font-weight:700 !important;
}
@media(max-width:640px){
 .fdp-c5 .standard-format small,.fdp-c5 .tile small{white-space:normal!important}
}

/* v1.7.5 — alignement commun des pastilles et dimensions cohérentes */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  box-sizing:border-box;
  align-items:center !important;
}
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  height:25px !important;
  min-height:25px !important;
  max-height:25px !important;
  flex:0 0 44px !important;
  margin:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:1.02rem !important;
  font-weight:800 !important;
  line-height:1 !important;
  box-sizing:border-box !important;
}
.fdp-c5 .standard-format-sm {
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  align-items:center !important;
  column-gap:12px !important;
}
.fdp-c5 .standard-format-sm .format-shape {
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  justify-self:start !important;
  align-self:center !important;
}
.fdp-c5 .standard-format-sm .format-description {
  grid-column:2 !important;
  grid-row:1 !important;
}
.fdp-c5 .standard-format-sm small {
  grid-column:2 !important;
  grid-row:2 !important;
}
.fdp-c5 .tile-sm {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  padding:12px 14px !important;
}
.fdp-c5 .tile-sm .format-shape {
  margin:0 !important;
  flex:0 0 44px !important;
}
.fdp-c5 .tile-sm .format-description {
  display:block;
  margin:0;
  text-align:left;
}

/* v1.7.6 — alignements typographiques et respiration des blocs */
.fdp-c5 .standard-format {
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  column-gap:12px !important;
  row-gap:2px !important;
  align-items:center !important;
  justify-items:stretch !important;
}
.fdp-c5 .standard-format .format-shape {
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  justify-self:start !important;
  align-self:center !important;
}
.fdp-c5 .standard-format:not(.standard-format-sm) small {
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  justify-self:start !important;
  align-self:center !important;
  margin:0 !important;
  white-space:nowrap !important;
}
.fdp-c5 .standard-format-sm {
  margin-bottom:16px !important;
}
.fdp-c5 .standard-title {
  margin-top:0 !important;
  margin-bottom:14px !important;
}
.fdp-c5 .standard-formats {
  margin-top:0 !important;
}
.fdp-c5 .mod-copy {
  margin-left:56px !important;
}
.fdp-c5 .mod-title {
  margin-left:56px !important;
}
@media(max-width:640px){
 .fdp-c5 .mod-copy,.fdp-c5 .mod-title{margin-left:0!important}
}

/* v1.7.7 — grille commune : icône, gouttière, colonne de texte */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  column-gap:12px !important;
  align-items:center !important;
  justify-items:stretch !important;
  box-sizing:border-box !important;
  text-align:left !important;
}
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  justify-self:start !important;
  align-self:center !important;
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  height:25px !important;
  min-height:25px !important;
  max-height:25px !important;
  margin:0 !important;
}
.fdp-c5 .standard-format:not(.standard-format-sm) small,
.fdp-c5 .tile:not(.tile-sm) small {
  grid-column:2 !important;
  grid-row:1 / span 2 !important;
  justify-self:start !important;
  align-self:center !important;
  margin:0 !important;
  white-space:nowrap !important;
}
.fdp-c5 .standard-format-sm,
.fdp-c5 .tile-sm {
  grid-template-columns:44px minmax(0,1fr) !important;
  column-gap:12px !important;
}
.fdp-c5 .standard-format-sm .format-description,
.fdp-c5 .tile-sm .format-description {
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:start !important;
  align-self:end !important;
  margin:0 !important;
  text-align:left !important;
}
.fdp-c5 .standard-format-sm small {
  grid-column:2 !important;
  grid-row:2 !important;
  justify-self:start !important;
  align-self:start !important;
  margin:0 !important;
  white-space:nowrap !important;
}
.fdp-c5 .tile-sm .format-shape {
  grid-column:1 !important;
  grid-row:1 !important;
}
.fdp-c5 .tile-sm .format-description {
  grid-row:1 !important;
  align-self:center !important;
}
.fdp-c5 .standard-title {
  margin-top:0 !important;
  margin-bottom:14px !important;
}
.fdp-c5 .standard-format-sm { margin-bottom:18px !important; }
@media(max-width:640px) {
  .fdp-c5 .standard-format:not(.standard-format-sm) small,
  .fdp-c5 .tile:not(.tile-sm) small { white-space:normal !important; }
}

/* v1.7.8 — grille unique et stable pour toutes les vignettes */
.fdp-c5 .standard-formats,
.fdp-c5 .tiles {
  align-items:stretch !important;
}
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  grid-template-rows:minmax(22px,auto) !important;
  column-gap:12px !important;
  align-items:center !important;
  justify-items:stretch !important;
  text-align:left !important;
  padding-left:14px !important;
  padding-right:12px !important;
  box-sizing:border-box !important;
}
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  grid-column:1 !important;
  grid-row:1 !important;
  align-self:center !important;
  justify-self:start !important;
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  height:25px !important;
  min-height:25px !important;
  max-height:25px !important;
  flex:none !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.fdp-c5 .standard-format:not(.standard-format-sm) small,
.fdp-c5 .tile:not(.tile-sm) small {
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:start !important;
  align-self:center !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
  text-align:left !important;
}
.fdp-c5 .standard-format-sm,
.fdp-c5 .tile-sm {
  grid-template-columns:44px minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  row-gap:2px !important;
}
.fdp-c5 .standard-format-sm .format-shape {
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
}
.fdp-c5 .standard-format-sm .format-description {
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:start !important;
  align-self:end !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
.fdp-c5 .standard-format-sm small {
  grid-column:2 !important;
  grid-row:2 !important;
  justify-self:start !important;
  align-self:start !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
  text-align:left !important;
}
.fdp-c5 .tile-sm .format-shape {
  grid-column:1 !important;
  grid-row:1 !important;
}
.fdp-c5 .tile-sm .format-description {
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:start !important;
  align-self:center !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
.fdp-c5 .standard-format-sm { margin-bottom:18px !important; }
.fdp-c5 .standard-title { margin-top:0 !important; margin-bottom:14px !important; }
@media(max-width:640px) {
  .fdp-c5 .standard-format:not(.standard-format-sm) small,
  .fdp-c5 .tile:not(.tile-sm) small { white-space:normal !important; }
}

/* v1.7.9 — hauteur uniforme des vignettes et grille du bloc modulaire */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  min-height:58px !important;
  height:58px !important;
  padding-top:10px !important;
  padding-bottom:10px !important;
}
.fdp-c5 .standard-format-sm {
  height:58px !important;
  min-height:58px !important;
}
.fdp-c5 .tile-sm {
  height:58px !important;
  min-height:58px !important;
}
.fdp-c5 .mod-title,
.fdp-c5 .mod-copy {
  margin-left:0 !important;
  padding-left:0 !important;
}
.fdp-c5 .mod-title {
  margin-top:0 !important;
  margin-bottom:8px !important;
  line-height:1.25 !important;
}
.fdp-c5 .mod-copy {
  margin-top:0 !important;
  margin-bottom:0 !important;
  line-height:1.35 !important;
}

.fdp-c5 .mod-head {
  display:grid !important;
  grid-template-columns:64px minmax(0,1fr) !important;
  column-gap:16px !important;
  row-gap:8px !important;
  align-items:start !important;
}
.fdp-c5 .mod-head .photo {
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  margin:0 !important;
  align-self:start !important;
}
.fdp-c5 .mod-head .mod-title {
  grid-column:2 !important;
  grid-row:1 !important;
  margin:0 !important;
  padding:0 !important;
}
.fdp-c5 .mod-head .mod-copy {
  grid-column:2 !important;
  grid-row:2 !important;
  margin:0 !important;
  padding:0 !important;
}
.fdp-c5 .modular .format-label,
.fdp-c5 .modular .tiles {
  margin-top:14px !important;
}
@media(max-width:640px){
 .fdp-c5 .mod-head{grid-template-columns:52px minmax(0,1fr)!important;column-gap:12px!important}
}

/* v1.8.0 — centrage vertical systématique du contenu des vignettes */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  align-items:center !important;
  align-content:center !important;
}
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  align-self:center !important;
}
.fdp-c5 .standard-format:not(.standard-format-sm) small,
.fdp-c5 .tile:not(.tile-sm) small {
  align-self:center !important;
}
.fdp-c5 .standard-format-sm {
  grid-template-rows:auto auto !important;
  align-content:center !important;
}
.fdp-c5 .standard-format-sm .format-shape {
  align-self:center !important;
  grid-row:1 / span 2 !important;
}
.fdp-c5 .standard-format-sm .format-description {
  align-self:end !important;
}
.fdp-c5 .standard-format-sm small {
  align-self:start !important;
}
.fdp-c5 .tile-sm {
  align-content:center !important;
  align-items:center !important;
}
.fdp-c5 .tile-sm .format-shape,
.fdp-c5 .tile-sm .format-description {
  align-self:center !important;
}

/* v1.9.0 — libellés facultatifs des formats standards */
.fdp-c5 .standard-format,.fdp-c5 .tile{align-items:center!important}
.fdp-c5 .standard-format .format-description,.fdp-c5 .tile .format-description{display:block;min-width:0;font-weight:700;line-height:1.15;text-align:left}
.fdp-c5 .standard-format:has(.format-description),.fdp-c5 .tile:has(.format-description){display:grid!important;grid-template-columns:68px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px!important;row-gap:2px!important;align-content:center!important;justify-items:start!important}
.fdp-c5 .standard-format:has(.format-description) .format-shape,.fdp-c5 .tile:has(.format-description) .format-shape{grid-column:1;grid-row:1/span 2;justify-self:center;align-self:center}
.fdp-c5 .standard-format:has(.format-description) .format-description,.fdp-c5 .tile:has(.format-description) .format-description{grid-column:2;grid-row:1;align-self:end}
.fdp-c5 .standard-format:has(.format-description) small,.fdp-c5 .tile:has(.format-description) small{grid-column:2;grid-row:2;align-self:start}
@media(max-width:640px){.fdp-c5 .standard-format:has(.format-description),.fdp-c5 .tile:has(.format-description){grid-template-columns:52px minmax(0,1fr);column-gap:7px!important}}

/* v1.9.5 — correction structurelle : groupe texte centré verticalement, mobile-first */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  column-gap:12px !important;
  align-items:center !important;
  align-content:center !important;
  min-height:58px !important;
  height:auto !important;
  box-sizing:border-box !important;
}
.fdp-c5 .standard-format .format-shape,
.fdp-c5 .tile .format-shape {
  grid-column:1 !important;
  grid-row:1 !important;
  align-self:center !important;
  justify-self:start !important;
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  height:25px !important;
  min-height:25px !important;
  max-height:25px !important;
  margin:0 !important;
}
.fdp-c5 .standard-format .format-copy,
.fdp-c5 .tile .format-copy {
  grid-column:2 !important;
  grid-row:1 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  align-self:center !important;
  min-width:0 !important;
  width:100% !important;
  gap:2px !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}
.fdp-c5 .standard-format .format-description,
.fdp-c5 .tile .format-description {
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  text-align:left !important;
}
.fdp-c5 .standard-format .format-copy small,
.fdp-c5 .tile .format-copy small {
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.2 !important;
  white-space:normal !important;
  text-align:left !important;
}
.fdp-c5 .standard-format-sm .format-copy,
.fdp-c5 .tile-sm .format-copy {
  justify-content:center !important;
  align-self:center !important;
}
@media(max-width:640px) {
 .fdp-c5 .standard-format,
 .fdp-c5 .tile {
   grid-template-columns:44px minmax(0,1fr) !important;
   column-gap:10px !important;
   padding-top:8px !important;
   padding-bottom:8px !important;
 }
}

/* v1.9.6 — alignement définitif : libellé et dimensions forment un seul bloc */
.fdp-c5 .standard-format,
.fdp-c5 .tile {
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  grid-template-rows:minmax(25px,auto) !important;
  align-items:center !important;
  align-content:center !important;
  justify-items:stretch !important;
  column-gap:12px !important;
  row-gap:0 !important;
}
.fdp-c5 .standard-format > .format-shape,
.fdp-c5 .tile > .format-shape {
  grid-column:1 !important; grid-row:1 !important;
  align-self:center !important; justify-self:start !important;
  width:44px !important; min-width:44px !important; max-width:44px !important;
  height:25px !important; min-height:25px !important; max-height:25px !important;
  margin:0 !important;
}
.fdp-c5 .standard-format > .format-copy,
.fdp-c5 .tile > .format-copy {
  grid-column:2 !important; grid-row:1 !important;
  display:flex !important; flex-flow:column nowrap !important;
  justify-content:center !important; align-items:stretch !important;
  align-self:center !important; justify-self:stretch !important;
  min-width:0 !important; width:100% !important; height:auto !important;
  margin:0 !important; padding:0 !important; gap:1px !important;
  line-height:normal !important; text-align:left !important;
}
.fdp-c5 .standard-format > .format-copy > .format-description,
.fdp-c5 .tile > .format-copy > .format-description,
.fdp-c5 .standard-format > .format-copy > small,
.fdp-c5 .tile > .format-copy > small {
  position:static !important; float:none !important; grid-column:auto !important; grid-row:auto !important;
  display:block !important; flex:none !important; align-self:stretch !important;
  width:auto !important; min-width:0 !important; height:auto !important;
  margin:0 !important; padding:0 !important; transform:none !important;
  white-space:normal !important; text-align:left !important;
}
.fdp-c5 .standard-format > .format-copy > .format-description,
.fdp-c5 .tile > .format-copy > .format-description {
  font-weight:700 !important; line-height:1.15 !important; overflow-wrap:anywhere !important;
}
.fdp-c5 .standard-format > .format-copy > small,
.fdp-c5 .tile > .format-copy > small {
  font-size:inherit !important; line-height:1.2 !important;
}
@media(max-width:640px) {
  .fdp-c5 .standard-format,
  .fdp-c5 .tile { grid-template-columns:44px minmax(0,1fr) !important; column-gap:10px !important; }
}


/* v1.9.7 — restitue la taille discrète des dimensions de la v1.9.0 */
.fdp-c5 .standard-format > .format-copy > small,
.fdp-c5 .tile > .format-copy > small {
  font-size: .76rem !important;
}


/* v1.9.8 — vignettes de gamme dans le panneau gauche lorsque la pièce unique est impossible */
.fdp-c5 .impossible-format-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.fdp-c5 .impossible-format-tiles .standard-format{min-width:0}
@media(min-width:900px){.fdp-c5 .impossible-format-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.9.12 — repère de surface et quantités indicatives en pose modulaire */
.fdp-c5 .quantity-summary{margin-top:14px;display:flex;flex-direction:column;gap:8px}
.fdp-c5 .surface-summary{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:12px 14px;min-height:58px;border:1px solid #cfd8ca;border-radius:8px;background:#edf1e9;color:var(--accent);font-weight:700}
.fdp-c5 .surface-label{font-size:.95rem}
.fdp-c5 .surface-value{font-size:1.35rem;line-height:1.2}
.fdp-c5 .quantity-cards{display:flex;flex-direction:column;gap:8px}
.fdp-c5 .quantity-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:12px;min-height:58px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}
.fdp-c5 .quantity-card .format-shape{display:grid;place-items:center;width:44px;min-width:44px;height:25px;min-height:25px;padding:2px;border:1px solid #b9c4b8;border-radius:5px;background:#e8ece5;font-weight:800;color:#39483b}
.fdp-c5 .quantity-card.quantity-s .format-shape{background:#eee5d8;border-color:#d7c5ad;color:#6b4d34}
.fdp-c5 .quantity-card .format-copy{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}
.fdp-c5 .quantity-card .format-description{font-size:.95rem;line-height:1.2;font-weight:700}
.fdp-c5 .quantity-card .format-copy small{font-size:.76rem;line-height:1.2;color:var(--muted)}
@media(max-width:640px){.fdp-c5 .quantity-card{column-gap:10px;padding:8px}.fdp-c5 .surface-value{font-size:1.2rem}}


/* v1.9.13 — alignement des badges des quantités sur les vignettes existantes */
.fdp-c5 .quantity-card {
  grid-template-columns:44px minmax(0,1fr) !important;
  column-gap:12px !important;
  align-items:center !important;
  align-content:center !important;
  box-sizing:border-box !important;
}
.fdp-c5 .quantity-card .format-shape {
  grid-column:1 !important;
  grid-row:1 !important;
  align-self:center !important;
  justify-self:start !important;
  width:44px !important;
  min-width:44px !important;
  max-width:44px !important;
  height:25px !important;
  min-height:25px !important;
  max-height:25px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.fdp-c5 .quantity-card .format-copy {
  grid-column:2 !important;
  min-width:0 !important;
  align-self:center !important;
}
@media(max-width:640px) {
  .fdp-c5 .quantity-card {
    grid-template-columns:44px minmax(0,1fr) !important;
    column-gap:10px !important;
  }
}


/* v1.9.14 — les cartes de quantité réutilisent le modèle structurel des vignettes standard */
.fdp-c5 .quantity-card.standard-format {
  display:grid !important;
  grid-template-columns:44px minmax(0,1fr) !important;
  grid-template-rows:minmax(25px,auto) !important;
  align-items:center !important;
  align-content:center !important;
  justify-items:stretch !important;
  column-gap:12px !important;
  row-gap:0 !important;
  min-height:58px !important;
  height:auto !important;
  padding:8px 12px !important;
}
.fdp-c5 .quantity-card.standard-format > .format-shape {
  grid-column:1 !important; grid-row:1 !important;
  align-self:center !important; justify-self:start !important;
  width:44px !important; min-width:44px !important; max-width:44px !important;
  height:25px !important; min-height:25px !important; max-height:25px !important;
  margin:0 !important;
}
.fdp-c5 .quantity-card.standard-format > .format-copy {
  grid-column:2 !important; grid-row:1 !important;
  display:flex !important; flex-flow:column nowrap !important;
  justify-content:center !important; align-items:stretch !important;
  align-self:center !important; justify-self:stretch !important;
  min-width:0 !important; width:100% !important; height:auto !important;
  margin:0 !important; padding:0 !important; gap:1px !important;
  text-align:left !important;
}
.fdp-c5 .quantity-card.standard-format > .format-copy > .format-description,
.fdp-c5 .quantity-card.standard-format > .format-copy > small {
  display:block !important; position:static !important; float:none !important;
  grid-column:auto !important; grid-row:auto !important;
  align-self:stretch !important; width:auto !important; min-width:0 !important;
  height:auto !important; margin:0 !important; padding:0 !important; transform:none !important;
  white-space:normal !important; text-align:left !important;
}
.fdp-c5 .quantity-card.standard-format > .format-copy > .format-description {font-weight:700 !important;line-height:1.15 !important}
.fdp-c5 .quantity-card.standard-format > .format-copy > small {font-size:.76rem !important;line-height:1.2 !important;color:var(--muted) !important}
@media(max-width:640px){.fdp-c5 .quantity-card.standard-format{grid-template-columns:44px minmax(0,1fr)!important;column-gap:10px!important;padding:8px!important}}

/* v1.9.20 — mêmes bordures, reliefs et couleurs que les badges standard */
.fdp-c5 .quantity-card.standard-format > .format-shape {
  border-width: 1px !important;
  border-style: solid !important;
  border-radius: 5px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.5) !important;
  box-sizing: border-box !important;
}
.fdp-c5 .quantity-card .format-shape[data-format="SM"] {
  background:#e7efe3 !important; border-color:#a8b9a1 !important; color:#26372a !important;
}
.fdp-c5 .quantity-card .format-shape[data-format="XS"] {
  background:#e5e7e9 !important; border-color:#b8bec4 !important; color:#343a40 !important;
}
.fdp-c5 .quantity-card .format-shape[data-format="S"] {
  background:#f3e5dc !important; border-color:#d0b2a2 !important; color:#49372f !important;
}
.fdp-c5 .quantity-card .format-shape[data-format="M"] {
  background:#deebf2 !important; border-color:#9db9ca !important; color:#2c4351 !important;
}
.fdp-c5 .quantity-card .format-shape[data-format="XXL"] {
  background:#e9e1f1 !important; border-color:#b7a4cb !important; color:#42364e !important;
}

/* v1.9.21 — note explicative paramétrable, placée après toutes les quantités visibles */
.fdp-c5 .quantity-summary > .quantity-note {
  margin: 8px 2px 0 !important;
  padding: 0 !important;
  color: var(--muted) !important;
  font-size: .78rem !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}


/* v1.9.22 — vignette de surface : charte verte, libellés à gauche et valeur dynamique à droite */
.fdp-c5 .surface-summary {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  justify-content:stretch !important;
  gap:18px !important;
  padding:14px 18px !important;
  min-height:76px !important;
  border:1px solid #cfd8ca !important;
  border-radius:8px !important;
  background:#e9eee3 !important;
  color:var(--accent) !important;
  font-weight:400 !important;
  box-sizing:border-box !important;
}
.fdp-c5 .surface-labels {
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:4px !important;
  min-width:0 !important;
}
.fdp-c5 .surface-title {
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  color:var(--accent) !important;
  font-size:1rem !important;
  line-height:1.25 !important;
  font-weight:700 !important;
}
.fdp-c5 .surface-dimensions {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:baseline !important;
  gap:5px !important;
  color:var(--muted) !important;
  font-size:.82rem !important;
  line-height:1.3 !important;
}
.fdp-c5 .surface-dimensions-label,
.fdp-c5 .surface-dimensions-value {
  display:inline !important;
  margin:0 !important;
  padding:0 !important;
  color:inherit !important;
  font-size:inherit !important;
  line-height:inherit !important;
  font-weight:400 !important;
}
.fdp-c5 .surface-value {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:stretch !important;
  margin:0 !important;
  padding:0 0 0 18px !important;
  border-left:1px solid #c4d1bd !important;
  color:var(--accent) !important;
  font-size:clamp(1.25rem,2vw,1.8rem) !important;
  line-height:1.15 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
@media(max-width:640px) {
  .fdp-c5 .surface-summary {grid-template-columns:minmax(0,1fr) auto !important;gap:10px !important;padding:12px !important}
  .fdp-c5 .surface-value {padding-left:10px !important;font-size:1.2rem !important}
  .fdp-c5 .surface-dimensions {font-size:.75rem !important}
}


/* v1.9.24 — sur mobile, afficher les vignettes de formats sur une seule colonne.
   Les grilles et l'ordre des éléments restent inchangés sur ordinateur. */
@media (max-width: 640px) {
  .fdp-c5 .standard-formats,
  .fdp-c5 .tiles,
  .fdp-c5 .impossible-format-tiles {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* FDP-C5: hidden doit rester prioritaire sur les styles du thème. */
.fdp-c5 [hidden] { display: none !important; }
