/**
 * Espace client — « Mes devis » et le détail d'un devis (templates YITH).
 *
 * Les templates du plugin sont laissés intacts : la mise en page est refaite ici, et
 * scripts/compte-devis.js se contente de regrouper les blocs déjà rendus (en-tête, actions,
 * colonnes) sans recréer de nœuds, pour ne pas casser les gestionnaires de YITH.
 *
 * Repères de la charte : crème #F2EFD9, or #BFAE41, vert-gris #555E50, texte #4A4A3F.
 */

.woocommerce-account .ywraq_my_account_quotes_title,
.woocommerce-account .ywraq-view-quote-wrapper h2 {
	margin: 0 0 1.75rem;
	color: #555E50;
	font-family: 'The Seasons', 'the-seasons', serif;
	font-size: clamp(1.75rem, 3vw, 2.25rem);
	font-weight: 400;
	line-height: 1.1;
}

/* --------------------------------------------------------------------------
   Liste « Mes devis »
   -------------------------------------------------------------------------- */
.woocommerce-account table.my_account_quotes {
	width: 100%;
	margin: 0;
	border: 1px solid rgba(85, 94, 80, .14);
	border-radius: 16px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	background: #fff;
	font-family: 'Basic Sans', 'basic-sans', sans-serif;
}
.woocommerce-account table.my_account_quotes thead th {
	padding: 14px 20px;
	border: none;
	background: #FBFAF4;
	color: #6F6B57;
	font-size: .78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	text-align: left;
}
.woocommerce-account table.my_account_quotes tbody td {
	padding: 16px 20px;
	border: none;
	border-top: 1px solid rgba(85, 94, 80, .1);
	color: #4A4A3F;
	font-size: .95rem;
	vertical-align: middle;
}
.woocommerce-account table.my_account_quotes tbody tr:hover td { background: #FCFBF5; }

.woocommerce-account table.my_account_quotes .quotes-number a {
	color: #555E50;
	font-weight: 700;
	text-decoration: none;
}
.woocommerce-account table.my_account_quotes .quotes-number a:hover { color: #BFAE41; }
.woocommerce-account table.my_account_quotes .quotes-date,
.woocommerce-account table.my_account_quotes .quotes-date time { color: #6F6B57; }

/* Le total reprenait la police de prix du thème (très grande) : on le ramène au corps du tableau. */
.woocommerce-account table.my_account_quotes .quotes-total,
.woocommerce-account table.my_account_quotes .quotes-total .woocommerce-Price-amount,
.woocommerce-account table.my_account_quotes .quotes-total bdi {
	color: #4A4A3F;
	font-family: 'Basic Sans', 'basic-sans', sans-serif !important;
	font-size: .95rem !important;
	font-weight: 700;
	line-height: 1.3 !important;
}
/* Le template laisse l'en-tête de la colonne statut vide : on lui rend son libellé. */
.woocommerce-account table.my_account_quotes thead th.order-status::after { content: 'Statut'; }
.woocommerce-account table.my_account_quotes .quotes-status,
.woocommerce-account table.my_account_quotes thead th.order-status { width: 1%; white-space: nowrap; }

/* Pastilles de statut : une seule taille, quelle que soit la longueur du libellé. */
.woocommerce-account .ywraq-status,
.woocommerce-account .my_account_quotes .quotes-status > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 104px;
	padding: 6px 14px;
	border-radius: 40px;
	background: #EFEDE0;
	color: #555E50;
	font-size: .7rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .05em;
	line-height: 1.4;
	white-space: nowrap;
}
.woocommerce-account .ywraq-status.ywraq-new,
.woocommerce-account .my_account_quotes .quotes-status .ywraq-new { background: #F4EFE0; color: #8A7A22; }
.woocommerce-account .ywraq-status.ywraq-pending,
.woocommerce-account .my_account_quotes .quotes-status .ywraq-pending { background: #BFAE41; color: #fff; }
.woocommerce-account .ywraq-status.ywraq-accepted { background: #E4EDE2; color: #3F6B45; }
.woocommerce-account .ywraq-status.ywraq-rejected,
.woocommerce-account .ywraq-status.ywraq-expired { background: #F3E4E4; color: #8A4A4A; }

.woocommerce-account .ywraq-no-quote-in-list {
	padding: 22px;
	border: 1px dashed rgba(85, 94, 80, .25);
	border-radius: 16px;
	background: #FBFAF4;
	color: #6F6B57;
}

@media (max-width: 720px) {
	.woocommerce-account table.my_account_quotes thead { display: none; }
	.woocommerce-account table.my_account_quotes tbody tr { display: block; padding: 6px 0; border-top: 1px solid rgba(85, 94, 80, .1); }
	.woocommerce-account table.my_account_quotes tbody td { display: flex; justify-content: space-between; gap: 16px; padding: 8px 18px; border: none; }
	.woocommerce-account table.my_account_quotes tbody td::before { content: attr(data-title); color: #6F6B57; font-size: .8rem; text-transform: uppercase; letter-spacing: .05em; }
	.woocommerce-account table.my_account_quotes tbody td.quotes-actions::before { content: none; }
}

/* --------------------------------------------------------------------------
   Détail d'un devis
   -------------------------------------------------------------------------- */
.woocommerce-account .ywraq-view-quote-wrapper {
	font-family: 'Basic Sans', 'basic-sans', sans-serif;
	color: #4A4A3F;
}
.woocommerce-account .ywraq-view-quote-wrapper > p:first-child a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 1.25rem;
	color: #6F6B57;
	font-size: .875rem;
	text-decoration: none;
}
.woocommerce-account .ywraq-view-quote-wrapper > p:first-child a:hover { color: #BFAE41; text-decoration: underline; }

/* En-tête regroupé par le script : titre + repères (date, statut, total) + actions. */
.olwe-devis-entete {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 1.5rem;
	padding: 22px 26px;
	border: 1px solid rgba(85, 94, 80, .14);
	border-radius: 18px;
	background: #FBFAF4;
}
.olwe-devis-entete h2 { margin: 0 0 12px; }
.olwe-devis-entete__reperes { display: flex; flex-wrap: wrap; gap: 10px 28px; }
.olwe-devis-entete__repere { display: flex; flex-direction: column; gap: 3px; }
.olwe-devis-entete__repere > strong,
.olwe-devis-entete .ywraq-view-quote-wrapper strong {
	color: #6F6B57;
	font-size: .72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
}
/* Le montant hérite sinon de la police de prix du thème (~2rem). */
.olwe-devis-entete__repere > span,
.olwe-devis-entete__repere .woocommerce-Price-amount,
.olwe-devis-entete__repere bdi {
	color: #4A4A3F;
	font-family: 'Basic Sans', 'basic-sans', sans-serif !important;
	font-size: .95rem !important;
	font-weight: 700;
	line-height: 1.3 !important;
}
/* Les <p> déplacés par le script gardent leur markup « <strong>Libellé</strong> valeur ». */
.olwe-devis-entete p { display: flex; flex-direction: column; gap: 3px; margin: 0; font-size: .95rem; font-weight: 700; }
.olwe-devis-entete .ywraq-status { align-self: flex-start; margin-top: 2px; }

.olwe-devis-entete__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }

/* Deux colonnes : produits à gauche, informations à droite. */
.olwe-devis-colonnes {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
	align-items: start;
	gap: 24px;
}
@media (max-width: 900px) {
	.olwe-devis-colonnes { grid-template-columns: minmax(0, 1fr); }
}

/* La feuille du plugin donne à ce tableau un fond gris et un padding asymétrique
   (ywraq-my-account.css:78) : on reprend la main avec la même spécificité, en plus précis. */
.woocommerce-account .ywraq-view-quote-wrapper table.shop_table.order_details,
.woocommerce-account .ywraq-view-quote-wrapper table.order_details {
	width: 100%;
	padding: 0;
	background-color: #fff;
	margin: 0;
	border: 1px solid rgba(85, 94, 80, .14);
	border-radius: 16px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	background: #fff;
}
/* Carte « Produits dans votre demande » : le titre remplace la ligne d'en-tête du tableau,
   dont le colspan ne couvrait pas toute la largeur (voir scripts/compte-devis.js). */
.olwe-devis-section {
	border: 1px solid rgba(85, 94, 80, .14);
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
}
.olwe-devis-section__titre {
	margin: 0;
	padding: 14px 20px;
	border-bottom: 1px solid rgba(85, 94, 80, .1);
	background: #FBFAF4;
	color: #6F6B57;
	/* Les titres du thème sont en The Seasons : ici on veut le même libellé que les autres
	   en-têtes de tableau, en Basic Sans. */
	font-family: 'Basic Sans', 'basic-sans', sans-serif !important;
	font-size: .78rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .06em;
	line-height: 1.4 !important;
}
/* Le tableau est désormais à l'intérieur de la carte : il n'a plus de cadre propre. */
.woocommerce-account .olwe-devis-section table.shop_table.order_details,
.woocommerce-account .olwe-devis-section table.order_details { border: none; border-radius: 0; }
.woocommerce-account .olwe-devis-section table.order_details tbody tr:first-child td { border-top: none; }

.woocommerce-account .ywraq-view-quote-wrapper table.order_details thead th {
	padding: 14px 20px;
	border: none;
	background: #FBFAF4;
	color: #6F6B57;
	font-size: .78rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
	text-align: left;
}
.woocommerce-account .ywraq-view-quote-wrapper table.order_details thead th.product-total { text-align: right; }
.woocommerce-account .ywraq-view-quote-wrapper table.shop_table.order_details tbody tr td,
.woocommerce-account .ywraq-view-quote-wrapper table.order_details td {
	padding: 14px 20px;
	border: none;
	border-top: 1px solid rgba(85, 94, 80, .1);
	vertical-align: middle;
}
.woocommerce-account .woocommerce-MyAccount-content .ywraq-view-quote-wrapper .order_details th {
	padding: 14px 20px;
}
.woocommerce-account .ywraq-view-quote-wrapper td.product-name {
	display: flex;
	align-items: center;
	gap: 16px;
	font-size: .95rem;
}
.woocommerce-account .ywraq-view-quote-wrapper .product-thumbnail { flex: 0 0 auto; }
.woocommerce-account .ywraq-view-quote-wrapper .product-thumbnail img {
	width: 60px;
	height: 60px;
	border-radius: 10px;
	object-fit: cover;
	display: block;
}
.woocommerce-account .ywraq-view-quote-wrapper .product-name-item a { color: #4A4A3F; text-decoration: none; }
.woocommerce-account .ywraq-view-quote-wrapper .product-name-item a:hover { color: #BFAE41; }
.woocommerce-account .ywraq-view-quote-wrapper .product-quantity { color: #6F6B57; font-weight: 700; }

/* Les montants reprenaient la police de prix du thème (~2rem) : même corps que le tableau. */
.woocommerce-account .ywraq-view-quote-wrapper td.product-total,
.woocommerce-account .ywraq-view-quote-wrapper td.product-total .woocommerce-Price-amount,
.woocommerce-account .ywraq-view-quote-wrapper td.product-total bdi {
	color: #4A4A3F;
	font-family: 'Basic Sans', 'basic-sans', sans-serif !important;
	font-size: .95rem !important;
	font-weight: 700;
	line-height: 1.3 !important;
	text-align: right;
	white-space: nowrap;
}
/* Le plugin met « padding: 15px 0 10px 0 » sur ces cellules (ywraq-my-account.css:89 et 99) :
   les montants se collaient au bord de la carte. */
.woocommerce-account .woocommerce-MyAccount-content .ywraq-view-quote-wrapper table.shop_table.order_details tfoot th,
.woocommerce-account .woocommerce-MyAccount-content .ywraq-view-quote-wrapper table.shop_table.order_details tfoot td,
.woocommerce-account .ywraq-view-quote-wrapper table.order_details tfoot th,
.woocommerce-account .ywraq-view-quote-wrapper table.order_details tfoot td {
	padding: 14px 20px;
	border: none;
	border-top: 1px solid rgba(85, 94, 80, .12);
	background: #FBFAF4;
	color: #555E50;
	font-size: .95rem;
	font-weight: 700;
}
.woocommerce-account .ywraq-view-quote-wrapper table.order_details tfoot td { text-align: right; }
.woocommerce-account .ywraq-view-quote-wrapper table.order_details tfoot .woocommerce-Price-amount,
.woocommerce-account .ywraq-view-quote-wrapper table.order_details tfoot bdi {
	font-family: 'Basic Sans', 'basic-sans', sans-serif !important;
	font-size: 1.05rem !important;
	line-height: 1.3 !important;
}

/* Boutons : même gabarit que partout ailleurs, plus de pleine largeur empilée. */
.woocommerce-account .ywraq-view-quote-wrapper a.ywraq-button,
.woocommerce-account .ywraq-view-quote-wrapper a.ywraq-pdf-file {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto !important;
	min-width: 0;
	padding: 12px 26px !important;
	border: none !important;
	border-radius: 40px !important;
	font-size: .78rem !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .05em;
	text-decoration: none;
	transition: opacity .2s;
}
.woocommerce-account .ywraq-view-quote-wrapper a.ywraq-accept { background: #BFAE41 !important; color: #fff !important; }
.woocommerce-account .ywraq-view-quote-wrapper a.ywraq-reject {
	background: transparent !important;
	color: #6F6B57 !important;
	box-shadow: inset 0 0 0 1px rgba(85, 94, 80, .3);
}
.woocommerce-account .ywraq-view-quote-wrapper a.ywraq-pdf-file { background: #555E50 !important; color: #fff !important; }
.woocommerce-account .ywraq-view-quote-wrapper a.ywraq-button:hover,
.woocommerce-account .ywraq-view-quote-wrapper a.ywraq-pdf-file:hover { opacity: .88; }
/* La ligne d'actions du tfoot est vidée par le script : on masque ce qui resterait. */
.woocommerce-account .ywraq-view-quote-wrapper tfoot tr.olwe-actions-vidées { display: none; }

/* Informations client / réponse de l'équipe */
.woocommerce-account .ywraq-additional-information {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0;
}
.woocommerce-account .ywraq-customer-information,
.woocommerce-account .ywraq-admin-message {
	/* Le plugin les rétrécit (169 px mesurés) : dans la colonne, elles prennent toute la largeur. */
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0;
	padding: 20px 22px;
	border: 1px solid rgba(85, 94, 80, .14);
	border-radius: 16px;
	background: #fff;
}
.woocommerce-account .ywraq-additional-information header { margin-bottom: 12px; }
.woocommerce-account .ywraq-additional-information h3 {
	margin: 0;
	color: #555E50;
	font-family: 'The Seasons', 'the-seasons', serif;
	font-size: 1.15rem;
	font-weight: 400;
}
.woocommerce-account .ywraq-view-quote__customer-info {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0 0 12px;
	font-size: .92rem;
	line-height: 1.45;
}
.woocommerce-account .ywraq-view-quote__customer-info:last-child { margin-bottom: 0; }
/* Une adresse e-mail longue ne doit pas déborder de la carte. */
.woocommerce-account .ywraq-view-quote__customer-info { overflow-wrap: anywhere; }
.woocommerce-account .ywraq-view-quote__customer-info strong {
	color: #6F6B57;
	font-size: .72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .06em;
}
.woocommerce-account .ywraq-admin-message .message-content p { margin: 0; font-size: .92rem; line-height: 1.5; }
