/**
 * Panier en popup et barre de livraison offerte — skeditions.fr.
 * Module : mu-plugins/bp-skeditions-panier-popup.php.
 * Miroir local : skeditions.fr/refonte/bricks-child/assets/ — modifier localement puis pousser.
 */

/* Le mini-panier de Bricks et le lien « Voir le panier » ajouté sous les boutons : le popup les remplace. */
.sk-panier .cart-detail { display: none !important; }
a.added_to_cart.wc-forward { display: none; }
html.sk-pop-ouvert { overflow: hidden; }

/* ---------- popup ---------- */
.sk-pop { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 24px; }
.sk-pop[hidden] { display: none; }
.sk-pop__voile { position: absolute; inset: 0; background: rgba(21, 21, 33, .55); animation: sk-pop-voile .2s ease-out; }
.sk-pop__boite {
	position: relative; display: flex; flex-direction: column; width: 100%; max-width: 560px; max-height: 100%;
	background: var(--color-white); border-radius: var(--radius-md); box-shadow: 0 24px 64px rgba(21, 21, 33, .28);
	animation: sk-pop-boite .22s ease-out;
}
.sk-pop.est-occupe .sk-pop__contenu { opacity: .6; pointer-events: none; }
@keyframes sk-pop-voile { from { opacity: 0; } }
@keyframes sk-pop-boite { from { opacity: 0; transform: translateY(12px); } }
@media (prefers-reduced-motion: reduce) {
	.sk-pop__voile, .sk-pop__boite { animation: none; }
	.sk-jauge__piste span { transition: none; }
}

.sk-pop__fermer {
	position: absolute; top: 12px; right: 12px; z-index: 1; width: 40px; height: 40px; padding: 0;
	border: 0; border-radius: 50%; background: transparent; color: var(--color-dark); font: 400 28px/1 var(--font-body); cursor: pointer;
}
.sk-pop__fermer:hover, .sk-pop__fermer:focus-visible { background: var(--color-grey-3); }

.sk-pop__contenu { display: flex; flex-direction: column; min-height: 0; padding: 24px; gap: var(--sp-16); transition: opacity .15s; }
.sk-pop__titre { margin: 0; padding-right: 40px; font: 700 24px/1.25 var(--font-heading); color: var(--color-dark); }
.sk-pop__titre span { font: 400 var(--fs-16)/1 var(--font-body); color: var(--color-text-muted); }

.sk-pop__liste { flex: 1 1 auto; min-height: 96px; margin: 0; padding: 0; list-style: none; overflow-y: auto; }
.sk-pop__ligne { display: grid; grid-template-columns: 64px 1fr auto; gap: 14px; align-items: start; padding: 14px 0; border-top: 1px solid var(--color-grey-2); }
.sk-pop__ligne:first-child { border-top: 0; padding-top: 0; }
.sk-pop__couverture img { display: block; width: 64px; height: auto; border-radius: 4px; box-shadow: var(--shadow-faint); }
.sk-pop__nom { font: 600 var(--fs-16)/1.35 var(--font-body); color: var(--color-dark); }
.sk-pop__nom a { color: inherit; text-decoration: none; }
.sk-pop__nom a:hover { color: var(--color-primary); }
.sk-pop__prix { font: 700 var(--fs-16)/1.35 var(--font-body); color: var(--color-dark); white-space: nowrap; }

.sk-pop__actions-ligne { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin-top: 8px; }
.sk-pop__qte { display: inline-flex; align-items: center; border: 1px solid var(--color-grey-2); border-radius: var(--radius-md); }
.sk-pop__qte button { width: 34px; height: 34px; padding: 0; border: 0; background: transparent; color: var(--color-dark); font: 500 18px/1 var(--font-body); cursor: pointer; }
.sk-pop__qte button:hover:not([disabled]) { color: var(--color-primary); }
.sk-pop__qte button[disabled] { opacity: .35; cursor: default; }
.sk-pop__qte span { min-width: 24px; text-align: center; font: 600 var(--fs-14)/1 var(--font-body); }
.sk-pop__retirer { padding: 0; border: 0; background: none; color: var(--color-text-muted); font: 400 var(--fs-14)/1.4 var(--font-body); text-decoration: underline; cursor: pointer; }
.sk-pop__retirer:hover { color: var(--color-primary); }

.sk-pop__pied { display: flex; flex-direction: column; gap: 10px; padding-top: var(--sp-16); border-top: 1px solid var(--color-grey-2); }
.sk-pop__total { display: flex; justify-content: space-between; align-items: baseline; font: 400 var(--fs-16)/1.3 var(--font-body); color: var(--color-dark); }
.sk-pop__total strong { font: 700 22px/1.2 var(--font-heading); }
.sk-pop__note { margin: 0; font: 400 var(--fs-14)/1.4 var(--font-body); color: var(--color-text-muted); }
.sk-pop__pied .sk-btn { width: 100%; min-height: 48px; padding: 0 var(--sp-16); font-size: var(--fs-16); }
.sk-pop__commander { margin-top: 4px; }
.sk-pop__secondaires { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }

/* ---------- jauge ---------- */
.sk-jauge__texte { margin: 0 0 6px; font: 400 var(--fs-14)/1.35 var(--font-body); color: var(--color-dark); }
.sk-jauge__texte strong { font-weight: 700; color: var(--color-primary); }
.sk-jauge__piste { height: 8px; border-radius: 4px; background: var(--color-primary-soft); overflow: hidden; }
.sk-jauge__piste span { display: block; height: 100%; border-radius: 4px; background: var(--color-primary); transition: width .35s ease-out; }

/* ---------- barre en bas d'écran ---------- */
.sk-barre { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990; background: var(--color-white); box-shadow: 0 -6px 24px rgba(21, 21, 33, .14); }
.sk-barre[hidden] { display: none; }
.sk-barre__dedans { display: flex; align-items: center; gap: 24px; max-width: 1320px; margin: 0 auto; padding: 10px 24px; }
.sk-barre .sk-jauge { flex: 1 1 auto; min-width: 0; }
.sk-barre__bouton {
	flex: none; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 var(--sp-16);
	border: 0; border-radius: var(--radius-md); background: var(--color-primary); color: var(--color-white);
	font: 700 var(--fs-14)/1 var(--font-heading); cursor: pointer; transition: background-color .2s;
}
.sk-barre__bouton:hover, .sk-barre__bouton:focus-visible { background: var(--color-primary-hover); }
.sk-barre__bouton span { min-width: 22px; height: 22px; padding: 0 5px; border-radius: 11px; background: var(--color-white); color: var(--color-primary); font: 700 12px/22px var(--font-body); text-align: center; }
body:has(.sk-barre:not([hidden])) { padding-bottom: 72px; }
/* L'onglet de Complianz, posé au bas de l'écran, passe au-dessus de la barre pour rester cliquable. */
body:has(.sk-barre:not([hidden])) #cmplz-manage-consent .cmplz-manage-consent { bottom: 64px; }

/* ---------- page du panier ---------- */
.sk-jauge-panier:empty { display: none; }
.sk-jauge-panier { margin-bottom: var(--sp-16); padding: 14px 18px; border-radius: var(--radius-md); background: var(--color-grey-3); }
.sk-jauge-panier .sk-jauge__texte { font-size: var(--fs-16); }

.sk-pop-erreur { margin: 0 0 var(--sp-16); padding: 12px 16px; border-left: 3px solid var(--color-primary); background: var(--color-primary-soft); color: var(--color-dark); font: 400 var(--fs-14)/1.4 var(--font-body); }

/* ---------- petits écrans : le popup monte du bas ---------- */
@media (max-width: 600px) {
	.sk-pop { align-items: flex-end; padding: 0; }
	.sk-pop__boite { max-width: none; max-height: 92%; border-radius: var(--radius-md) var(--radius-md) 0 0; }
	.sk-pop__contenu { padding: 20px 16px; }
	.sk-pop__titre { font-size: 21px; }
	.sk-pop__secondaires { grid-template-columns: 1fr; }
	.sk-pop__ligne { grid-template-columns: 52px 1fr auto; gap: 10px; }
	.sk-pop__couverture img { width: 52px; }
	.sk-barre__dedans { gap: 12px; padding: 8px 16px; }
	.sk-barre__bouton { min-height: 40px; padding: 0 12px; }
}
