/**
 * Composants — Amizet 2026
 *
 * Reliquat du premier portage (Phase 1) : la quasi-totalité des règles a été
 * remplacée par `assets/css/maquette.css` (Tâches 2-13, portage fidèle de la
 * maquette). Ne restent ici que les sélecteurs encore réellement utilisés
 * par les gabarits PHP (vérifié par `rg` dans tout `theme-src/amizet-2026` —
 * voir le rapport de la Tâche 14 pour le détail des sélecteurs retirés).
 *
 * Utilise uniquement les variables de tokens.css : aucune couleur/police en
 * dur ici.
 */

.gerer-preferences {
	font-family: var(--font-texte);
	color: var(--color-nuit);
	font-size: 0.85rem;
}

.gerer-preferences {
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	text-decoration: underline;
}

/*
 * `.form-mention-donnees` est posée par le contenu même des formulaires CF7
 * 5568/5571 (mention RGPD) : la classe existe donc toujours dans le DOM.
 * `assets/css/maquette.css` la stylise déjà via `.dc-form p.form-mention-donnees`
 * (spécificité supérieure, gagne en cascade) ; cette règle reste en filet de
 * secours minimal si un formulaire est rendu hors `.dc-form`.
 */
.form-mention-donnees {
	font-size: 0.8rem;
	color: var(--color-epicea);
}

/*
 * Boutique / produit / commande
 *
 * Habillage visuel des gabarits WooCommerce (boutique : archive-product.php
 * + content-product.php ; fiche produit : single-product.php). `.boutique-page`
 * et `.produit-page` sont posées par ces gabarits en même temps que `.dc-shop`
 * (Tâche 8) : tied-specificity sur certains sélecteurs communs (ex. `.produit-carte`),
 * mais aucune collision réelle — les règles `.dc-shop …` de maquette.css sont
 * chargées après et gagnent en cascade. La page panier (cart/cart.php, Tâche 12)
 * utilise désormais `.dc-cart` et n'a plus `.panier-page` : ce bloc a été retiré
 * (mort, voir rapport Tâche 14). La page commande (checkout) n'a pas de gabarit
 * surchargé : elle est habillée plus bas uniquement via les classes natives
 * WooCommerce rendues par ses propres templates. Aucune classe métier
 * WooCommerce (noms de champs, classes utilisées par le JS panier/commande)
 * n'est renommée ou retirée, uniquement stylée.
 */

.boutique-page,
.produit-page {
	margin: 0 auto;
}

.boutique-page .woocommerce-breadcrumb,
.produit-page .woocommerce-breadcrumb {
	font-family: var(--font-texte);
	font-size: 0.85rem;
	color: var(--color-epicea);
	margin: 0 0 1.5rem;
}

.boutique-page .woocommerce-breadcrumb a {
	color: var(--color-epicea);
}

.boutique-page .woocommerce-result-count,
.boutique-page .woocommerce-ordering {
	font-family: var(--font-texte);
	font-size: 0.85rem;
}

.boutique-page ul.products {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
	gap: clamp(1.5rem, 4vw, 2.5rem);
	list-style: none;
	margin: 2rem 0 0;
	padding: 0;
}

.boutique-page ul.products .produit-carte {
	display: flex;
	flex-direction: column;
}

.boutique-page .produit-carte a {
	text-decoration: none;
	color: inherit;
}

.boutique-page .produit-carte img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 4px;
}

.boutique-page .produit-carte .woocommerce-loop-product__title {
	font-family: var(--font-titres);
	text-transform: uppercase;
	font-size: 1rem;
	letter-spacing: 0.03em;
	margin: 1rem 0 0.25rem;
}

.boutique-page .produit-carte .price {
	font-family: var(--font-texte);
	color: var(--color-renard);
}

.boutique-page .produit-carte .button {
	display: inline-flex;
	align-items: center;
	font-family: var(--font-titres);
	text-transform: uppercase;
	font-size: 0.8rem;
	letter-spacing: 0.05em;
	text-decoration: none;
	color: var(--color-nuit);
	background-color: var(--color-brume);
	border: 1px solid var(--color-nuit);
	border-radius: 999px;
	padding: 0.6rem 1.25rem;
	margin-top: 0.75rem;
}

.boutique-page .produit-carte .button:hover,
.boutique-page .produit-carte .button:focus {
	background-color: var(--color-renard);
	border-color: var(--color-renard);
	color: var(--color-brume);
}

.boutique-page .woocommerce-pagination {
	margin: 3rem 0 0;
}

.boutique-page .woocommerce-pagination ul {
	display: flex;
	gap: 0.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.boutique-page .woocommerce-pagination a,
.boutique-page .woocommerce-pagination span {
	font-family: var(--font-titres);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	text-decoration: none;
	color: var(--color-nuit);
}

.boutique-page .woocommerce-pagination .current {
	background-color: var(--color-renard);
	color: var(--color-brume);
}

/* Fiche produit (single-product.php) */

.produit-page .product_title {
	font-size: clamp(1.6rem, 3vw, 2.4rem);
}

.produit-page .price {
	font-family: var(--font-texte);
	font-size: 1.3rem;
	color: var(--color-renard);
	margin: 0.5rem 0;
}

.produit-page .woocommerce-product-details__short-description {
	font-family: var(--font-texte);
	margin: 1rem 0;
}

.produit-page .single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	font-family: var(--font-titres);
	text-transform: uppercase;
	font-size: 0.85rem;
	letter-spacing: 0.05em;
	color: var(--color-brume);
	background-color: var(--color-epicea);
	border: none;
	border-radius: 999px;
	padding: 0.9rem 1.75rem;
}

.produit-page .single_add_to_cart_button:hover,
.produit-page .single_add_to_cart_button:focus {
	background-color: var(--color-renard);
}

.produit-page .woocommerce-tabs {
	margin-top: 3rem;
	font-family: var(--font-texte);
}

/*
 * Commande (checkout) — pas de gabarit PHP surchargé : habillage CSS des
 * classes natives WooCommerce rendues par ses propres templates checkout.
 */

.woocommerce-checkout h3 {
	font-size: 1.1rem;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
	font-family: var(--font-texte);
	border: 1px solid var(--color-sable);
	border-radius: 4px;
	padding: 0.6rem 0.75rem;
}

.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-review-order {
	background-color: var(--color-sable);
	border-radius: 4px;
	padding: clamp(1.5rem, 4vw, 2rem);
}

.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount {
	color: var(--color-renard);
	font-weight: 700;
}

.woocommerce-checkout #place_order {
	display: inline-flex;
	align-items: center;
	font-family: var(--font-titres);
	text-transform: uppercase;
	font-size: 0.9rem;
	letter-spacing: 0.05em;
	color: var(--color-brume);
	background-color: var(--color-epicea);
	border: none;
	border-radius: 999px;
	padding: 0.9rem 1.75rem;
	cursor: pointer;
}

.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus {
	background-color: var(--color-renard);
}
