/**
 * Coupons (inc/coupons-vendeurs.php), 17/10/2026 : pastille du code promo
 * dans le bandeau de la page boutique, champ de code et lignes de réduction
 * du panier.
 * Couleurs de la marque : bleu nuit #1c2b36, beige #f9ebda, pêche #ffcead.
 */

/* DM Mono (code promo), hébergée sur le site (assets/fonts/, licence OFL). */
@font-face {
	font-family: "DM Mono";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/dm-mono-latin-400.woff2") format("woff2");
}

@font-face {
	font-family: "DM Mono";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("../fonts/dm-mono-latin-500.woff2") format("woff2");
}

/* Page de la boutique : pastille du code promo dans le bandeau noir
   (composant fourni le 17/10 ; mêmes tailles et couleurs). Sélecteurs
   précédés de l'identifiant du bandeau : le thème (store-page.css) impose
   ses propres tailles aux textes de l'en-tête. */
html body #wcfmmp-store #wcfm_store_header .anaaz-promos {
	display: flex;
	flex-wrap: nowrap;
	gap: 10px;
	width: max-content;
	max-width: 470px; /* une pastille entière (446 px) ; les suivantes défilent */
	margin: 0;
	padding: 0;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

html body #wcfmmp-store #wcfm_store_header .anaaz-promos::-webkit-scrollbar {
	display: none;
}

/* Plusieurs codes : on devine le suivant (fondu à droite). */
html body #wcfmmp-store #wcfm_store_header .anaaz-promos--plusieurs {
	-webkit-mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
	mask-image: linear-gradient(to right, #000 calc(100% - 28px), transparent);
	padding-right: 24px;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill {
	--accent: #ffdcc2; /* pêche */
	display: inline-flex !important;
	flex: 0 0 auto;
	align-items: center;
	gap: 16px;
	height: 56px;
	box-sizing: border-box;
	margin: 0;
	padding: 0 8px 0 24px;
	border: 1px solid rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.07);
	border-radius: 28px;
	color: #fff;
	font-family: inherit;
	scroll-snap-align: start;
	white-space: nowrap;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__discount {
	display: inline;
	font-size: 26px !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em;
	line-height: 1 !important;
	color: var(--accent) !important;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__sep {
	display: block;
	flex: 0 0 auto;
	width: 1px;
	height: 24px;
	background: rgba(255, 255, 255, 0.22);
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__text {
	display: flex;
	align-items: center;
	gap: 16px;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__intro {
	display: inline;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	color: rgba(255, 255, 255, 0.72) !important;
	text-transform: none;
	letter-spacing: normal;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__intro-full {
	display: inline;
	font-size: inherit !important;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__intro-short {
	display: none;
	font-size: inherit !important;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__code {
	-webkit-user-select: all;
	user-select: all;
	display: inline;
	font-family: "DM Mono", ui-monospace, monospace !important;
	font-size: 18px !important;
	font-weight: 500 !important;
	letter-spacing: 0.1em;
	line-height: 1 !important;
	color: #fff !important;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__copy {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	min-height: 0;
	margin: 0 0 0 4px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--accent);
	color: #1a1a1a;
	box-shadow: none;
	cursor: pointer;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__copy:hover {
	filter: brightness(1.06);
	background: var(--accent);
	color: #1a1a1a;
}

html body #wcfmmp-store #wcfm_store_header .promo-pill__copy svg[hidden] {
	display: none;
}

/* Ordinateur et tablette : pastille à gauche du bouton « Contacter la
   boutique », dans le bandeau. */
@media (min-width: 769px) {
	html body #wcfmmp-store #wcfm_store_header .bd_icon_area {
		gap: 16px !important;
	}
}

/* Nom de la boutique limité à la place laissée par la pastille (points de
   suspension si besoin), avec un code promo. */
@media (min-width: 769px) and (max-width: 1024px) {
	html body.anaaz-boutique-promo #wcfmmp-store #wcfm_store_header .wcfm_store_title {
		max-width: calc(100vw - 696px) !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		white-space: nowrap !important;
	}
}

@media (min-width: 1025px) and (max-width: 1100px) {
	html body.anaaz-boutique-promo #wcfmmp-store #wcfm_store_header .wcfm_store_title {
		max-width: calc(96vw - 834px) !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		white-space: nowrap !important;
	}
}

@media (min-width: 1101px) {
	html body.anaaz-boutique-promo #wcfmmp-store #wcfm_store_header .wcfm_store_title {
		max-width: calc(96vw - 948px) !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		white-space: nowrap !important;
	}
}

/* 769 à 1100 px avec un code promo : « Contacter la boutique » réduit à une
   icône ronde pour laisser la place au nom de la boutique. */
@media (min-width: 769px) and (max-width: 1100px) {
	html body.anaaz-boutique-promo #wcfmmp-store #wcfm_store_header a.wcfm_store_enquiry {
		width: 44px !important;
		min-width: 44px !important;
		height: 44px !important;
		min-height: 44px !important;
		padding: 0 !important;
		gap: 0 !important;
	}

	html body.anaaz-boutique-promo #wcfmmp-store #wcfm_store_header a.wcfm_store_enquiry span {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		clip: rect(0 0 0 0) !important;
		white-space: nowrap !important;
	}

	html body.anaaz-boutique-promo #wcfmmp-store #wcfm_store_header a.wcfm_store_enquiry::before {
		font-size: 16px !important;
	}
}

/* Téléphone (768 px et moins), version compacte (17/10) : pastille sous le
   nom de la boutique, entre le logo et l'icône « Contacter » ; le bandeau
   garde sa hauteur (78 px jusqu'à 640 px, 72 px au-delà). Tablette (769 à
   1024 px) : même pastille compacte, à côté de l'icône « Contacter ». */
@media (max-width: 768px) {
	html body #wcfmmp-store #wcfm_store_header .header_right {
		position: static !important;
		transform: none !important;
		width: auto !important;
		height: 0 !important;
		min-height: 0 !important;
		padding: 0 !important;
	}

	html body #wcfmmp-store #wcfm_store_header .bd_icon_area,
	html body #wcfmmp-store #wcfm_store_header .bd_icon_box {
		display: block !important;
	}

	html body #wcfmmp-store #wcfm_store_header a.wcfm_store_enquiry {
		position: absolute !important;
		top: 17px !important;
		right: 12px !important;
		width: 44px !important;
		min-width: 44px !important;
		height: 44px !important;
		min-height: 44px !important;
		padding: 0 !important;
		gap: 0 !important;
		z-index: 40 !important;
	}

	html body #wcfmmp-store #wcfm_store_header a.wcfm_store_enquiry span {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		clip: rect(0 0 0 0) !important;
		white-space: nowrap !important;
	}

	html body #wcfmmp-store #wcfm_store_header a.wcfm_store_enquiry::before {
		font-size: 16px !important;
	}

	html body #wcfmmp-store #wcfm_store_header .address,
	html body #wcfmmp-store #wcfm_store_header .address.rgt {
		max-width: calc(100% - 98px - 68px) !important;
	}

	/* Rangée des pastilles : sous le nom, jusqu'à l'icône « Contacter ». */
	html body #wcfmmp-store #wcfm_store_header .anaaz-promos {
		position: absolute;
		top: 36px;
		left: 98px;
		width: auto;
		max-width: calc(100% - 98px - 12px - 44px - 8px);
		z-index: 30;
	}

	html body #wcfmmp-store #wcfm_store_header .anaaz-promos--plusieurs {
		padding-right: 18px;
		-webkit-mask-image: linear-gradient(to right, #000 calc(100% - 20px), transparent);
		mask-image: linear-gradient(to right, #000 calc(100% - 20px), transparent);
	}

}

/* Pastille compacte (36 px), téléphone ET tablette (1024 px et moins),
   dans le bandeau noir existant (17/10). */
@media (max-width: 1024px) {
	html body #wcfmmp-store #wcfm_store_header .promo-pill {
		display: inline-flex !important;
		flex: 0 0 auto;
		width: auto;
		max-width: 100%;
		height: 36px;
		gap: 8px;
		padding: 0 4px 0 12px;
		border-radius: 18px;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__discount {
		font-size: 15px !important;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__sep {
		height: 16px;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__text {
		flex: 0 1 auto;
		min-width: 0;
		flex-direction: column;
		align-items: flex-start;
		gap: 2px;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__intro {
		font-size: 8px !important;
		font-weight: 500 !important;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__intro-full {
		display: none;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__intro-short {
		display: inline;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__code {
		display: block;
		max-width: 100%;
		overflow: hidden;
		text-overflow: ellipsis;
		font-size: 12.5px !important;
		letter-spacing: 0.06em;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__copy {
		width: 28px;
		height: 28px;
		margin-left: 0;
	}

	html body #wcfmmp-store #wcfm_store_header .promo-pill__copy svg {
		width: 14px;
		height: 14px;
	}
}

/* 641 à 768 px : le thème garde un bandeau de 72 px, nom en haut du bandeau,
   à droite du logo de 90 px. */
@media (min-width: 641px) and (max-width: 768px) {
	html body #wcfmmp-store #wcfm_store_header a.wcfm_store_enquiry {
		top: 14px !important;
		right: 20px !important;
	}

	html body #wcfmmp-store #wcfm_store_header .anaaz-promos {
		top: 30px;
		left: 130px;
		max-width: calc(100% - 130px - 20px - 44px - 12px);
	}
}

/* Panier : lignes de réduction et champ de code promo */
.cart-panel .anaaz-panier-reduction strong,
.cart-panel .anaaz-panier-reduction span {
	color: #1c2b36;
}

.anaaz-panier-reduction__valeur {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 2px;
}

.anaaz-panier-reduction__montant,
.anaaz-panier-reduction__montant * {
	white-space: nowrap;
}

.anaaz-panier-reduction__retirer {
	color: #6b6b6b;
	font-size: 12px;
	text-decoration: underline;
}

.cart-panel .anaaz-panier-code {
	display: block;
}

.anaaz-panier-code label {
	display: block;
	margin: 0 0 6px;
	font-size: 14px;
	font-weight: 600;
}

.anaaz-panier-code__champ {
	display: flex;
	gap: 8px;
}

.anaaz-panier-code__champ input[type="text"] {
	box-sizing: border-box;
	flex: 1 1 auto;
	min-width: 0;
	height: 44px;
	padding: 0 12px;
	border: 1px solid #d8d3cc;
	border-radius: 4px;
	background: #fff;
	font-family: inherit;
	font-size: 14px;
	text-transform: uppercase;
}

.anaaz-panier-code__bouton {
	flex: 0 0 auto;
	height: 44px;
	padding: 0 18px;
	border: 1px solid #1c2b36;
	border-radius: 4px;
	background: #fff;
	color: #1c2b36;
	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
}

/* Pas d'effet de couleur au survol (17/10). */
.cart-panel .anaaz-panier-code__bouton:hover,
.cart-panel .anaaz-panier-code__bouton:focus,
.cart-panel .anaaz-panier-code__bouton:active {
	border-color: #1c2b36;
	background: #fff;
	color: #1c2b36;
}
