/* =========================================================================
   Passion Mens — Habillage de la page « Mon compte » (WooCommerce)
   -------------------------------------------------------------------------
   Chargé uniquement sur la page « Mon compte », et seulement si l'option
   « Style Page Mon Compte Client » est activée (Prestataires > Style Page
   Mon Compte Client).

   La page « Mon compte » a DEUX structures très différentes :
     - déconnecté  -> formulaires Connexion / Inscription (#customer_login)
     - connecté    -> barre latérale (menu) + zone de contenu
   Les deux mises en page sont séparées ci-dessous.

   NOTE TECHNIQUE : WooCommerce pose un « clearfix » (::before / ::after
   avec content:"") sur ces conteneurs. En display:grid ces pseudo-
   éléments deviendraient des cases de grille et décaleraient les cartes
   en diagonale : ils sont donc neutralisés, et chaque carte est placée
   explicitement dans sa colonne.

   Les couleurs (--pm-mc-accent, --pm-mc-dark, --pm-mc-reserve) sont
   injectées dynamiquement par le plugin à partir des réglages
   « Couleurs du moteur de devis » ; les valeurs ci-dessous ne servent que
   de repli.
   ========================================================================= */

:root {
	--pm-mc-accent:        #c20974;
	--pm-mc-accent-bright: #e6007e;
	--pm-mc-dark:          #1c1b21;
	--pm-mc-reserve:       #1a7f37;
	--pm-mc-border:        #ececf0;
	--pm-mc-bg-soft:       #fafafa;
	--pm-mc-text:          #26242b;
	--pm-mc-muted:         #6b6a72;
	--pm-mc-radius:        14px;
	--pm-mc-shadow:        0 6px 24px rgba(28, 27, 33, .06);
}

/* ------------------------------------------------------------------ */
/*  0. Conteneur commun : largeur réduite + centrage (les 2 états)     */
/* ------------------------------------------------------------------ */
.woocommerce-account .woocommerce {
	max-width: 1040px;
	margin: 2.5rem auto 4rem;
	padding: 0 1.25rem;
	box-sizing: border-box;
	color: var(--pm-mc-text);
}
.woocommerce-account .woocommerce-notices-wrapper { max-width: 1040px; margin: 0 auto; }

/* ================================================================== */
/*  A. ÉTAT DÉCONNECTÉ : écran Connexion / Inscription côte à côte     */
/* ================================================================== */
.woocommerce-account #customer_login {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
	max-width: 860px;
	margin: 0 auto;
	align-items: start;
}
/* Neutralise le clearfix (sinon cases de grille fantômes -> diagonale) */
.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after {
	content: none !important;
	display: none !important;
}
/* Placement explicite des 2 cartes, quelle que soit la variante de classe */
.woocommerce-account #customer_login > .u-column1,
.woocommerce-account #customer_login > .col-1 { grid-column: 1; grid-row: 1; }
.woocommerce-account #customer_login > .u-column2,
.woocommerce-account #customer_login > .col-2 { grid-column: 2; grid-row: 1; }

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2,
.woocommerce-account #customer_login .col-1,
.woocommerce-account #customer_login .col-2 {
	width: auto;
	float: none;
	margin: 0;
	background: #fff;
	border: 1px solid var(--pm-mc-border);
	border-radius: var(--pm-mc-radius);
	box-shadow: var(--pm-mc-shadow);
	padding: 1.75rem 1.75rem 2rem;
	box-sizing: border-box;
}

.woocommerce-account #customer_login h2 {
	margin: 0 0 1.25rem;
	padding-bottom: .6rem;
	border-bottom: 2px solid var(--pm-mc-border);
	color: var(--pm-mc-dark);
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.2;
}

.woocommerce-account #customer_login label {
	display: block;
	font-weight: 600;
	color: var(--pm-mc-dark);
	margin-bottom: .35rem;
}

.woocommerce-account #customer_login .woocommerce-form-row { margin-bottom: 1rem; }

/* ================================================================== */
/*  B. ÉTAT CONNECTÉ : barre latérale (menu) + zone de contenu         */
/* ================================================================== */
body.logged-in .woocommerce-account .woocommerce {
	display: grid;
	grid-template-columns: 250px 1fr;
	gap: 2rem;
	align-items: start;
}
/* Neutralise le clearfix du conteneur .woocommerce en display:grid */
body.logged-in .woocommerce-account .woocommerce::before,
body.logged-in .woocommerce-account .woocommerce::after {
	content: none !important;
	display: none !important;
}
/* Placement explicite : menu à gauche, contenu à droite */
body.logged-in .woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation { grid-column: 1; grid-row: 1; }
body.logged-in .woocommerce-account .woocommerce > .woocommerce-MyAccount-content { grid-column: 2; grid-row: 1; }
body.logged-in .woocommerce-account .woocommerce-notices-wrapper { grid-column: 1 / -1; }

/* Barre latérale en carte */
.woocommerce-MyAccount-navigation {
	width: auto;
	float: none;
	margin: 0;
	background: #fff;
	border: 1px solid var(--pm-mc-border);
	border-radius: var(--pm-mc-radius);
	box-shadow: var(--pm-mc-shadow);
	padding: .5rem;
	position: sticky;
	top: 1.5rem;
}
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; }
.woocommerce-MyAccount-navigation ul li { margin: 0; border: 0; }
.woocommerce-MyAccount-navigation ul li a {
	display: block;
	padding: .8rem 1rem;
	border-radius: 10px;
	color: var(--pm-mc-text);
	font-weight: 600;
	text-decoration: none;
	line-height: 1.2;
	transition: background .15s ease, color .15s ease, padding-left .15s ease;
}
.woocommerce-MyAccount-navigation ul li a:hover {
	background: rgba(194, 9, 116, .07);
	color: var(--pm-mc-accent);
	padding-left: 1.25rem;
}
.woocommerce-MyAccount-navigation ul li.is-active a { background: var(--pm-mc-accent); color: #fff; }
.woocommerce-MyAccount-navigation ul li.is-active a:hover { background: var(--pm-mc-accent-bright); color: #fff; }
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout {
	margin-top: .35rem;
	padding-top: .35rem;
	border-top: 1px solid var(--pm-mc-border);
}

/* Zone de contenu en carte */
.woocommerce-MyAccount-content {
	width: auto;
	float: none;
	margin: 0;
	background: #fff;
	border: 1px solid var(--pm-mc-border);
	border-radius: var(--pm-mc-radius);
	box-shadow: var(--pm-mc-shadow);
	padding: 2rem 2.25rem;
	box-sizing: border-box;
}
.woocommerce-MyAccount-content > p:first-child { margin-top: 0; }
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
	color: var(--pm-mc-dark);
	font-weight: 700;
	margin-top: 1.75rem;
	margin-bottom: .9rem;
	padding-bottom: .5rem;
	border-bottom: 2px solid var(--pm-mc-border);
}
.woocommerce-MyAccount-content h2:first-child { margin-top: 0; }
.woocommerce-MyAccount-content a {
	color: var(--pm-mc-accent);
	text-decoration: underline;
	text-underline-offset: 2px;
}
.woocommerce-MyAccount-content a:hover { color: var(--pm-mc-accent-bright); }
.woocommerce-MyAccount-content strong { color: var(--pm-mc-dark); }

/* ------------------------------------------------------------------ */
/*  Tableaux (Mes devis, Commandes…)                                   */
/* ------------------------------------------------------------------ */
.woocommerce-MyAccount-content table.shop_table,
.woocommerce-MyAccount-content table.woocommerce-orders-table {
	border: 1px solid var(--pm-mc-border);
	border-radius: 12px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	margin: 0 0 1.5rem;
	width: 100%;
}
.woocommerce-MyAccount-content table.shop_table thead th {
	background: var(--pm-mc-bg-soft);
	color: var(--pm-mc-dark);
	font-weight: 700;
	text-transform: uppercase;
	font-size: .78rem;
	letter-spacing: .03em;
	padding: .9rem 1rem;
	border: 0;
	border-bottom: 1px solid var(--pm-mc-border);
	text-align: left;
}
.woocommerce-MyAccount-content table.shop_table tbody td {
	padding: .9rem 1rem;
	border: 0;
	border-bottom: 1px solid var(--pm-mc-border);
	vertical-align: middle;
}
.woocommerce-MyAccount-content table.shop_table tbody tr:last-child td { border-bottom: 0; }
.woocommerce-MyAccount-content table.shop_table tbody tr:hover td { background: rgba(194, 9, 116, .03); }

/* ------------------------------------------------------------------ */
/*  Boutons (contenu + connexion/inscription)                          */
/* ------------------------------------------------------------------ */
.woocommerce-account .woocommerce .button,
.woocommerce-account .woocommerce .woocommerce-button,
.woocommerce-account .woocommerce button.button,
.woocommerce-account .woocommerce button[type="submit"] {
	display: inline-block;
	background: var(--pm-mc-accent);
	color: #fff !important;
	border: 1px solid var(--pm-mc-accent);
	border-radius: 9px;
	padding: .6rem 1.2rem;
	font-weight: 600;
	text-decoration: none;
	line-height: 1.2;
	cursor: pointer;
	transition: background .15s ease, border-color .15s ease, transform .05s ease;
}
.woocommerce-account .woocommerce .button:hover,
.woocommerce-account .woocommerce .woocommerce-button:hover,
.woocommerce-account .woocommerce button.button:hover,
.woocommerce-account .woocommerce button[type="submit"]:hover {
	background: var(--pm-mc-accent-bright);
	border-color: var(--pm-mc-accent-bright);
	color: #fff !important;
}
.woocommerce-account .woocommerce .button:active,
.woocommerce-account .woocommerce button.button:active,
.woocommerce-account .woocommerce button[type="submit"]:active { transform: translateY(1px); }

/* Bouton secondaire « Demander ma facture » */
.woocommerce-MyAccount-content button.pm-request-invoice {
	background: #fff;
	color: var(--pm-mc-accent) !important;
	border: 1px solid var(--pm-mc-accent);
}
.woocommerce-MyAccount-content button.pm-request-invoice:hover {
	background: rgba(194, 9, 116, .07);
	color: var(--pm-mc-accent) !important;
	border-color: var(--pm-mc-accent);
}
.woocommerce-MyAccount-content button.pm-request-invoice:disabled { opacity: .6; cursor: default; }

/* ------------------------------------------------------------------ */
/*  Champs de formulaire                                                */
/* ------------------------------------------------------------------ */
.woocommerce-account .woocommerce input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.woocommerce-account .woocommerce select,
.woocommerce-account .woocommerce textarea {
	border: 1px solid var(--pm-mc-border);
	border-radius: 9px;
	padding: .6rem .75rem;
	box-sizing: border-box;
	transition: border-color .15s ease, box-shadow .15s ease;
}
.woocommerce-account .woocommerce input:focus,
.woocommerce-account .woocommerce select:focus,
.woocommerce-account .woocommerce textarea:focus {
	outline: none;
	border-color: var(--pm-mc-accent);
	box-shadow: 0 0 0 3px rgba(194, 9, 116, .12);
}
.woocommerce-account .woocommerce form .woocommerce-form-row label,
.woocommerce-MyAccount-content form label { font-weight: 600; color: var(--pm-mc-dark); }

/* ------------------------------------------------------------------ */
/*  Bandeaux de notification WooCommerce                               */
/* ------------------------------------------------------------------ */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-error {
	border-top-color: var(--pm-mc-accent);
	border-radius: 10px;
}
.woocommerce-account .woocommerce-message::before,
.woocommerce-account .woocommerce-info::before { color: var(--pm-mc-accent); }

/* ------------------------------------------------------------------ */
/*  Responsive : empilement sur mobile / tablette (inchangé, OK)       */
/* ------------------------------------------------------------------ */
@media (max-width: 782px) {
	.woocommerce-account .woocommerce { margin-top: 1.5rem; }
	.woocommerce-account #customer_login {
		grid-template-columns: 1fr;
	}
	.woocommerce-account #customer_login > .u-column1,
	.woocommerce-account #customer_login > .col-1 { grid-column: 1; grid-row: 1; }
	.woocommerce-account #customer_login > .u-column2,
	.woocommerce-account #customer_login > .col-2 { grid-column: 1; grid-row: 2; }
	body.logged-in .woocommerce-account .woocommerce {
		grid-template-columns: 1fr;
		gap: 1.25rem;
	}
	body.logged-in .woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation { grid-column: 1; grid-row: 1; }
	body.logged-in .woocommerce-account .woocommerce > .woocommerce-MyAccount-content { grid-column: 1; grid-row: 2; }
	.woocommerce-MyAccount-navigation { position: static; top: auto; }
	.woocommerce-MyAccount-content { padding: 1.5rem 1.25rem; }
	.woocommerce-MyAccount-content table.shop_table_responsive { border-radius: 12px; }
}
