/* Cycles Blain 1.9.64 (reprend la 1.9.63) — fiche vélo allégée (maquette validée le 8 nov. 2026)
   Haut : titre + prix + Cofidis en un seul bloc, puis de l'air ; Cofidis sur une ligne ; En bref et dispo ajustés à leur texte ;
   « Quelle taille pour moi ? » en petite pastille. Bas : « Vous pourriez aussi aimer » (2 vélos proches). */

/* La colonne de droite ne déborde plus de l'écran */
body.cb-fiche-velo #product .product-page-right,
body.cb-fiche-velo #product .row > [class*="col-"] { min-width: 0; max-width: 100%; }

/* ---------- Cofidis : une seule ligne, sans encadré ---------- */
body.cb-fiche-velo .cb-cofidis-slot { margin: 2px 0 34px; }
body.cb-fiche-velo .cb-cof { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; max-width: 100%; padding: 0; border: 0; border-radius: 0; background: none; }
body.cb-fiche-velo .cb-cof-logo { height: 22px; max-width: 56px; border-radius: 4px; }
body.cb-fiche-velo .cb-cof-txt { flex: 0 1 auto; }
body.cb-fiche-velo .cb-cof-main { font-size: 15px; font-weight: 500; color: #374151; }
body.cb-fiche-velo .cb-cof-main strong { color: #1d1d1f; }
body.cb-fiche-velo .cb-cof.cb-cof-ligne .cb-cof-sub { display: none; }
body.cb-fiche-velo .cb-cof-plus { font-size: 14px; color: var(--cb-bleu, #0b5cad) !important; }
body.cb-fiche-velo .cb-cof-plus:hover { color: #094c8f !important; }

/* ---------- En bref : ajusté au texte, de l'air dessous ---------- */
body.cb-fiche-velo .cb-en-bref { width: fit-content; max-width: 100%; box-sizing: border-box; margin-bottom: 34px; padding-right: 28px; }

/* ---------- « Quelle taille pour moi ? » : petite pastille ---------- */
body.cb-fiche-velo .cb-ouvrir-guide { display: inline-flex !important; width: auto; max-width: 100%; gap: 8px; padding: 8px 16px; border: 1.5px solid #c9d8ec; border-radius: 999px; background: #eef4fb; }
body.cb-fiche-velo .cb-ouvrir-guide[hidden] { display: none !important; }
body.cb-fiche-velo .cb-ouvrir-guide svg { width: 18px; height: 18px; }
body.cb-fiche-velo .cb-guide-textes strong { font-size: 14px; }
body.cb-fiche-velo .cb-guide-textes span { display: none; }

/* ---------- Dispo (encadré vert ou gris) : ajustée à son texte ---------- */
body.cb-fiche-velo #product-availability.cb-availability-card,
body.cb-fiche-velo [data-product-availability].cb-availability-card { width: fit-content; max-width: 100%; padding-right: 26px; }

/* ---------- « Vous pourriez aussi aimer » ---------- */
.cb-proches { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 36px; align-items: center; max-width: 1240px; margin: 110px auto 56px; padding: 32px 36px; border-radius: 28px; background: #f6f1e9; box-sizing: border-box; }
.cb-proches-titre { margin: 0; font-size: 30px; font-weight: 700; line-height: 1.2; color: #1d1d1f; text-transform: none; letter-spacing: 0; }
.cb-proches-texte { margin: 10px 0 0; font-size: 15px; line-height: 1.5; color: #4b4436; }
.cb-proches-aide[hidden] { display: none; }
.cb-proches-liste { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.cb-proche { display: flex; flex-direction: column; gap: 12px; padding: 14px 14px 18px; border: 1px solid #eee9e1; border-radius: 22px; background: #ffffff; }
.cb-proche-photo { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 16px; background: #ece8e1; isolation: isolate; }
/* 1.9.64 : la photo remplit toute la bulle (plus de petit rectangle au milieu) */
.cb-proche-photo img, .cb-proche-photo picture, .cb-proche-photo > * { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; margin: 0 !important; padding: 0 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
/* photo carrée de PrestaShop : la bande studio 4:3 remplit exactement la bulle ; un fond blanc se fond dans la bulle */
.cb-proche-photo img { object-fit: cover; object-position: center; mix-blend-mode: multiply; transition: transform .25s ease; }
.cb-proche:hover .cb-proche-photo img { transform: scale(1.03); }
.cb-proche-corps { display: flex; flex: 1; flex-direction: column; gap: 8px; padding: 0 6px; }
.cb-proche-marque { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #6b7280; }
.cb-proche-nom { margin: -4px 0 0; font-size: 18px; font-weight: 800; line-height: 1.25; }
.cb-proche-nom a { color: #1d1d1f !important; text-decoration: none !important; }
.cb-proche-nom a:hover { color: var(--cb-bleu, #0b5cad) !important; }
.cb-proche-prix { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; }
.cb-proche-prix strong { font-size: 22px; font-weight: 800; color: var(--cb-bleu, #0b5cad); }
.cb-proche-prix s { font-size: 14px; color: #6b7280; }
.cb-proche-puces { display: flex; flex-wrap: wrap; gap: 8px; }
.cb-proche-puce { padding: 6px 10px; border-radius: 999px; font-size: 13px; font-weight: 600; line-height: 1.2; }
.cb-proche-ecart { background: #f6eee1; color: #5c4321; }
.cb-proche-stock { background: #eef6ef; color: #1e7a3c; }
.cb-proche-boutons { display: flex; gap: 10px; margin-top: auto; padding-top: 6px; }
.cb-proche-voir, .cb-proche-comparer { display: inline-flex; flex: 1; align-items: center; justify-content: center; min-height: 44px; border-radius: 10px; font: 700 14px/1.2 Montserrat, "Helvetica Neue", Arial, sans-serif; text-decoration: none !important; cursor: pointer; }
.cb-proche-voir { border: 2px solid var(--cb-bleu, #0b5cad); color: var(--cb-bleu, #0b5cad) !important; background: #ffffff; }
.cb-proche-voir:hover { background: #eef4fb; }
.cb-proche-comparer { border: 1px solid #e4d3b6; color: #5c4321; background: #f6eee1; }
.cb-proche-comparer:hover { background: #efe2cc; }
.cb-proche-comparer[hidden] { display: none; }
.cb-proche-voir:focus-visible, .cb-proche-comparer:focus-visible { outline: 2px solid #0b5cad; outline-offset: 2px; }
/* L'ancien bloc du thème « Vous aimerez aussi » est remplacé */
.cb-ancien-aimerez { display: none !important; }

@media (max-width: 991px) {
  .cb-proches { grid-template-columns: 1fr; gap: 20px; margin: 72px 12px 40px; padding: 24px 18px; border-radius: 22px; }
  .cb-proches-titre { font-size: 24px; }
}
@media (max-width: 599px) {
  .cb-proches-liste { grid-template-columns: 1fr; gap: 16px; }
  body.cb-fiche-velo .cb-cofidis-slot { margin-bottom: 26px; }
  body.cb-fiche-velo .cb-en-bref { margin-bottom: 26px; }
}

/* 1.9.65 — choix sélectionné en bordure bleue sur fond clair (plus de noir plein) : tailles et vrais choix (batterie...) */
.cb-taille-case.cb-choisie label { background: #eef5fd !important; border-color: var(--cb-bleu) !important; }
.cb-taille-case.cb-choisie .cb-taille-nom { color: var(--cb-encre) !important; }
.cb-taille-case.cb-choisie .cb-taille-etat { color: #6b7686 !important; }
.cb-taille-case.cb-choisie[data-cb-etat="stock"] .cb-taille-etat,
.cb-taille-case.cb-choisie[data-cb-etat="fournisseur"] .cb-taille-etat { color: #1e8a4a !important; }
.cb-taille-case.cb-choisie[data-cb-etat="arrivage"] .cb-taille-etat { color: #2c6fb5 !important; }
.cb-option-case label:has(input:checked) { background: #eef5fd !important; border-color: var(--cb-bleu) !important; color: var(--cb-encre) !important; }
.cb-option-case input:checked ~ .cb-option-nom { color: var(--cb-encre) !important; }
.cb-option-case label:has(input:checked) .cb-option-icone { color: var(--cb-bleu) !important; }
