/* MJ Boutique - fiche produit. NE PAS MODIFIER. Valeurs reprises de la maquette v9. */

/* Miniatures (84px, carrees, contour #111111 sur l'active) */
.mjp-thumb,.mjp-thumb:hover,.mjp-thumb:focus{display:block;width:100%;aspect-ratio:1/1;padding:0 !important;margin:0;border:0 !important;border-radius:0 !important;background:#F4F4F3 !important;cursor:pointer;outline:1px solid transparent;outline-offset:0;transition:outline-color .15s;overflow:hidden;}
.mjp-thumb img{display:block;width:100%;height:100%;object-fit:cover;}
.mjp-thumb.active{outline:1px solid #111111;}
.mjp-thumb:focus-visible{outline:2px solid #111111;}
.mjp-galerie-seule{grid-template-columns:1fr !important;}
@media(max-width:1024px){.mjp-thumb{flex:0 0 72px;width:72px;}}

/* Zoom au survol de l'image principale */
.mjp-zoomable{cursor:zoom-in;}
.mjp-zoomable img{transition:transform .3s ease;}
.mjp-zoomable img.mjp-zoom{transform:scale(2);}

/* Details du produit (maquette : lignes 180px / 1fr) */
.mjp-dl{margin:0;padding:0;}
.mjp-drow{display:grid;grid-template-columns:180px 1fr;gap:14px;padding:11px 0;border-top:1px solid #E6E6E4;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:14px;line-height:1.55;color:#111111;}
.mjp-drow dt{color:#6B6B6B;letter-spacing:.04em;}
.mjp-drow dd{margin:0;}
@media(max-width:767px){.mjp-drow{grid-template-columns:120px 1fr;}}

/* Grille des pointures (4 colonnes) */
.mjp-sizes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.mjp-sizes button,.mjp-sizes button:focus{border:1px solid #E6E6E4 !important;border-radius:0 !important;padding:12px 0 !important;margin:0;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:13px;line-height:1.2;letter-spacing:.02em;background:#FFFFFF !important;color:#111111 !important;cursor:pointer;transition:.15s;}
.mjp-sizes button:hover{border-color:#111111 !important;background:#FFFFFF !important;color:#111111 !important;}
.mjp-sizes button.sel,.mjp-sizes button.sel:hover{background:#111111 !important;color:#FFFFFF !important;border-color:#111111 !important;}
.mjp-sizes button:disabled{color:#6B6B6B !important;text-decoration:line-through;cursor:not-allowed;opacity:.5;}
.mjp-sizes button:focus-visible{outline:2px solid #111111;outline-offset:2px;}

/* Message d'erreur */
.mjp-err{display:none;margin:10px 0 0;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:13px;line-height:1.55;color:#111111;}
.mjp-err.on{display:block;}
a[href="#mj-ajout"][aria-busy="true"]{opacity:.6;pointer-events:none;}

/* Toast */
.mjp-toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);background:#111111;color:#FFFFFF;padding:14px 22px;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:14px;letter-spacing:.02em;z-index:9999;opacity:0;visibility:hidden;transition:.35s;}
.mjp-toast.on{opacity:1;visibility:visible;transform:translateX(-50%);}

/* Avis (maquette) */
.mjp-rev-summary{display:flex;align-items:baseline;gap:14px;margin:0 0 30px;}
.mjp-num{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:34px;line-height:1.1;color:#111111;}
.mjp-stars{color:#111111;letter-spacing:3px;font-size:15px;line-height:1.4;}
.mjp-rev-sub{font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:13px;color:#6B6B6B;}
.mjp-rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.mjp-rev{border-top:1px solid #E6E6E4;padding-top:16px;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;}
.mjp-rev .mjp-stars{letter-spacing:2px;font-size:13px;}
.mjp-rev p{font-size:13.5px;color:#6B6B6B;line-height:1.6;margin:8px 0 0;}
.mjp-who{font-size:12px;color:#6B6B6B;margin-top:10px;}
@media(max-width:1024px){.mjp-rev-grid{grid-template-columns:1fr;}}

/* 2e image au survol ("Vous aimerez aussi") */
.mj-fiche [role="listitem"] a:has(> img.mjb-alt){position:relative;display:block;}
.mj-fiche img.mjb-alt{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease;pointer-events:none;z-index:1;}
.mj-fiche [role="listitem"].mjb-has-alt:hover img.mjb-alt{opacity:1;}

@media(prefers-reduced-motion:reduce){.mjp-thumb,.mjp-zoomable img,.mjp-sizes button,.mjp-toast,.mj-fiche img.mjb-alt{transition:none !important;animation:none !important;}}

/* Tiroir "Donner mon avis" (champs repris de la maquette : perso-field) */
.mjp-avis-body{padding:8px 26px 26px !important;}
.mjp-avis-form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;margin:0;}
.mjp-field{margin:0 0 22px;}
.mjp-label{display:block;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#6B6B6B;margin:18px 0 10px;}
.mjp-field textarea,.mjp-field input[type="text"],.mjp-field input[type="email"]{width:100%;border:1px solid #E6E6E4;border-radius:0;background:#FFFFFF;padding:12px;font-family:"Jost","Helvetica Neue",Arial,sans-serif;font-weight:300;font-size:14px;line-height:1.55;color:#111111;resize:vertical;box-shadow:none;}
.mjp-field textarea:focus,.mjp-field input:focus{outline:none;border-color:#111111;}
.mjp-hint{font-size:12px;color:#6B6B6B;margin:10px 0 0;line-height:1.5;}
.mjp-rate{display:flex;gap:6px;}
.mjb-drawer .mjp-rate button,.mjb-drawer .mjp-rate button:hover,.mjb-drawer .mjp-rate button:focus{font-size:24px !important;line-height:1 !important;padding:0 !important;color:#E6E6E4 !important;background:none !important;border:0 !important;transition:color .15s;}
.mjb-drawer .mjp-rate button.on{color:#111111 !important;}
.mjb-drawer .mjp-rate button:focus-visible{outline:2px solid #111111;outline-offset:3px;}
.mjp-avis-msg{display:none;font-size:13px;line-height:1.55;color:#111111;margin:0;}
.mjp-avis-msg.on{display:block;}
.mjp-avis-merci{font-family:"Playfair Display",Georgia,serif;font-weight:400;font-size:20px;line-height:1.4;color:#111111;margin:26px 0 0;}
