/* HDC Parcours — styles front. Surchargez les variables dans le thème
   enfant Blocksy pour coller à la charte. */
:root{
	--hdc-vert-nuit:#141F17;
	--hdc-vert:#2E6B48;
	--hdc-vert-clair:#4C8F66;
	--hdc-pollen:#D9A441;
	--hdc-lin:#EDEFE2;
	--hdc-granit:#5B6A5E;
	--hdc-trait:#D8DECB;
	--hdc-radius:14px;
}

/* ---------- Sélecteur de profil ---------- */
.hdc-intents{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;max-width:920px;margin:0 auto}
.hdc-intent{background:rgba(20,31,23,.06);border:1.5px solid var(--hdc-trait);border-radius:var(--hdc-radius);
	padding:22px 14px;cursor:pointer;font-weight:600;font-size:.98rem;display:flex;flex-direction:column;
	align-items:center;gap:10px;transition:transform .15s,border-color .15s,background .15s;text-align:center}
.hdc-intent small{font-weight:400;color:var(--hdc-granit);font-size:.82rem}
.hdc-intent:hover{transform:translateY(-3px);border-color:var(--hdc-vert)}
.hdc-intent[aria-pressed="true"]{background:var(--hdc-vert);border-color:var(--hdc-pollen);color:#fff}
.hdc-intent[aria-pressed="true"] small{color:rgba(255,255,255,.75)}
.hdc-intent:focus-visible{outline:3px solid var(--hdc-pollen);outline-offset:2px}

/* ---------- Bloc parcours ---------- */
.hdc-parcours .hdc-intro{color:var(--hdc-granit)}
.hdc-tag{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid var(--hdc-vert);
	border-radius:999px;padding:8px 18px;font-weight:600;font-size:.95rem;margin-bottom:16px}
.hdc-changer{background:none;border:none;color:var(--hdc-vert);font-size:.88rem;cursor:pointer;
	text-decoration:underline;margin-left:12px}
.hdc-note{margin-top:18px;background:#fff;border-left:3px solid var(--hdc-pollen);
	border-radius:0 var(--hdc-radius) var(--hdc-radius) 0;padding:14px 18px;font-size:.88rem;color:var(--hdc-granit)}

/* ---------- Cartes ---------- */
.hdc-reco-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.hdc-carte{background:#fff;border:1px solid var(--hdc-trait);border-radius:var(--hdc-radius);padding:22px;
	display:flex;flex-direction:column;gap:10px;position:relative;transition:transform .15s,box-shadow .15s}
.hdc-carte:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(20,31,23,.1)}
.hdc-carte.star{border:2px solid var(--hdc-vert)}
.hdc-carte img{border-radius:8px;width:100%;height:auto}
.hdc-carte h3{margin:0;font-size:1.1rem}
.hdc-carte h3 a{text-decoration:none;color:var(--hdc-vert-nuit)}
.hdc-carte p{font-size:.9rem;color:var(--hdc-granit);flex-grow:1;margin:0}
.hdc-prix{font-weight:700;color:var(--hdc-vert-nuit)}
.hdc-badge-reco{position:absolute;top:-12px;right:14px;background:var(--hdc-vert);color:#fff;font-size:.72rem;
	font-weight:700;padding:4px 12px;border-radius:999px;letter-spacing:.04em}
.hdc-badge-profil{position:absolute;top:-11px;left:14px;background:var(--hdc-pollen);color:var(--hdc-vert-nuit);
	font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:999px;letter-spacing:.04em;z-index:2}

/* ---------- Catalogue ---------- */
.hdc-catalogue{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.hdc-cat-item{background:#fff;border:1px solid var(--hdc-trait);border-radius:var(--hdc-radius);padding:18px;
	display:flex;flex-direction:column;gap:8px;position:relative}
.hdc-cat-item.match{border:1.5px solid var(--hdc-vert)}
.hdc-cat-lien{text-decoration:none;color:inherit}
.hdc-cat-lien img{border-radius:8px;width:100%;height:auto}
.hdc-cat-item h3{margin:8px 0 0;font-size:1rem}
.hdc-cat-ligne{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:auto}

/* ---------- Boutons ---------- */
.hdc-btn{display:inline-block;background:var(--hdc-vert);color:#fff;border:none;border-radius:999px;
	padding:10px 20px;font-weight:600;font-size:.92rem;cursor:pointer;text-decoration:none;text-align:center;
	transition:background .15s,transform .15s}
.hdc-btn:hover{background:var(--hdc-vert-clair);color:#fff;transform:translateY(-1px)}
.hdc-btn:disabled{opacity:.6;cursor:wait}
.hdc-btn:focus-visible{outline:3px solid var(--hdc-pollen);outline-offset:2px}
.hdc-btn-or{background:var(--hdc-pollen);color:var(--hdc-vert-nuit)}
.hdc-btn-or:hover{background:#E4B65C;color:var(--hdc-vert-nuit)}

/* ---------- Tiroir panier ---------- */
.hdc-voile{position:fixed;inset:0;background:rgba(20,31,23,.45);opacity:0;pointer-events:none;
	transition:opacity .2s;z-index:9990}
.hdc-voile.on{opacity:1;pointer-events:auto}
.hdc-tiroir{position:fixed;top:0;right:0;height:100dvh;width:min(400px,92vw);background:#fff;z-index:9991;
	transform:translateX(105%);transition:transform .25s ease;display:flex;flex-direction:column;
	box-shadow:-12px 0 34px rgba(20,31,23,.18)}
.hdc-tiroir.on{transform:translateX(0)}
.hdc-tiroir-tete{padding:18px 22px;border-bottom:1px solid var(--hdc-trait);display:flex;
	justify-content:space-between;align-items:center}
.hdc-tiroir-tete h2{margin:0;font-size:1.15rem}
.hdc-fermer{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--hdc-granit);
	line-height:1;padding:4px 8px}
.hdc-livraison{padding:16px 22px;border-bottom:1px solid var(--hdc-trait);background:var(--hdc-lin)}
.hdc-jauge{height:8px;background:var(--hdc-trait);border-radius:999px;overflow:hidden;margin-bottom:8px}
.hdc-jauge-fill{height:100%;width:0;background:var(--hdc-vert);border-radius:999px;transition:width .3s ease}
.hdc-jauge-fill.ok{background:var(--hdc-pollen)}
.hdc-livraison p{font-size:.85rem;color:var(--hdc-granit);margin:0}
.hdc-tiroir-lignes{flex:1;overflow-y:auto;padding:12px 22px}
.hdc-ligne{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--hdc-trait)}
.hdc-infos{flex:1}
.hdc-nom{font-weight:600;font-size:.92rem}
.hdc-pu{font-size:.8rem;color:var(--hdc-granit)}
.hdc-qte{display:flex;align-items:center;gap:8px}
.hdc-qte button{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--hdc-trait);background:#fff;
	cursor:pointer;font-weight:700;color:var(--hdc-vert)}
.hdc-qte button:hover{border-color:var(--hdc-vert)}
.hdc-qte span{min-width:18px;text-align:center;font-weight:600;font-size:.92rem}
.hdc-st{font-weight:700;font-size:.92rem;min-width:60px;text-align:right}
.hdc-panier-vide{text-align:center;color:var(--hdc-granit);padding:40px 10px;font-size:.92rem}
.hdc-tiroir-pied{padding:18px 22px;border-top:1px solid var(--hdc-trait)}
.hdc-total{display:flex;justify-content:space-between;font-size:1.05rem;margin-bottom:12px}
.hdc-tiroir-pied .hdc-btn{width:100%}

/* ---------- Toast ---------- */
.hdc-toast{position:fixed;left:50%;bottom:88px;transform:translateX(-50%) translateY(20px);
	background:var(--hdc-vert-nuit);color:var(--hdc-lin);padding:10px 22px;border-radius:999px;font-size:.9rem;
	font-weight:600;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:9992;white-space:nowrap}
.hdc-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---------- Barre mobile ---------- */
.hdc-barre-mobile{display:none;position:fixed;left:0;right:0;bottom:0;z-index:9980;background:var(--hdc-vert-nuit);
	padding:12px 16px calc(12px + env(safe-area-inset-bottom));align-items:center;gap:12px;
	box-shadow:0 -8px 24px rgba(20,31,23,.25)}
.hdc-bm-total{color:var(--hdc-lin);font-size:.85rem;line-height:1.3}
.hdc-bm-total b{display:block;font-size:1.05rem}
.hdc-barre-mobile .hdc-btn{margin-left:auto}

/* ---------- Responsive ---------- */
@media(max-width:860px){
	.hdc-intents{grid-template-columns:repeat(2,1fr)}
	.hdc-reco-grid{grid-template-columns:1fr}
	.hdc-catalogue{grid-template-columns:1fr 1fr}
	.hdc-barre-mobile{display:flex}
	body{padding-bottom:76px}
}
@media(max-width:560px){
	.hdc-catalogue{grid-template-columns:1fr}
}
@media (prefers-reduced-motion: reduce){
	.hdc-tiroir,.hdc-voile,.hdc-toast,.hdc-jauge-fill,.hdc-intent,.hdc-carte,.hdc-btn{transition:none}
}
