/**
 * Gate partenaire (connexion + inscription self-service).
 * Réutilise les tokens du thème (--lpr-*).
 */
.lpr-gate {
	--g-line: var(--lpr-border, #e7e2d6);
	--g-ink: var(--lpr-primary-strong, #143f0d);
	--g-muted: var(--lpr-text-muted, #6b7280);
	--g-leaf: var(--lpr-leaf-500, #2e8b1e);
	--g-accent: var(--lpr-accent, #e8772e);
	--g-surface: var(--lpr-surface, #fff);
	font-family: var(--lpr-font-body, "Nunito Sans", system-ui, sans-serif);
	color: var(--lpr-text, #283021);
	max-width: 460px; margin: 1.5rem auto;
}
.lpr-gate__card {
	background: var(--g-surface); border: 1px solid var(--g-line); border-radius: 18px;
	padding: clamp(1.4rem, 4vw, 2.4rem); box-shadow: 0 16px 50px -28px rgba(20,63,13,.5);
}
.lpr-gate__card h2 { font-family: var(--lpr-font-display, "Fraunces", serif); color: var(--g-ink); font-size: 1.5rem; margin: 0 0 .3rem; }
.lpr-gate__intro { color: var(--g-muted); margin: 0 0 1rem; }
.lpr-gate__alt { margin: .8rem 0 0; font-size: .88rem; }
.lpr-gate__alt a { color: var(--g-leaf); }
.lpr-gate__switch { margin: 1.1rem 0 0; padding-top: 1rem; border-top: 1px solid var(--g-line); font-size: .9rem; color: var(--g-muted); }
.lpr-gate__switch button { background: none; border: 0; padding: 0; font: inherit; font-weight: 800; color: var(--g-accent); cursor: pointer; text-decoration: underline; }

.lpr-gate-flash { font-weight: 700; padding: .6rem .85rem; border-radius: 10px; margin: 0 0 1rem; }
.lpr-gate-flash.is-ok { background: color-mix(in srgb, var(--g-leaf) 14%, transparent); color: var(--lpr-forest-700, #1c6b14); }
.lpr-gate-flash.is-err { background: #fbeee6; color: var(--g-accent); }

/* Formulaire d'inscription */
.lpr-gate__form { display: grid; gap: .85rem; }
.lpr-gate__form label { display: grid; gap: .3rem; font-weight: 700; font-size: .85rem; color: var(--g-ink); }
.lpr-gate__form label em { font-weight: 500; color: var(--g-muted); font-style: normal; }
.lpr-gate__form input, .lpr-gate__form select {
	font: inherit; font-size: .95rem; width: 100%; padding: .65rem .85rem;
	border: 1px solid var(--g-line); border-radius: 11px; background: #fff; appearance: none;
}
.lpr-gate__form select { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='m2 4 4 4 4-4'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right .8rem center; padding-right: 2rem; }
.lpr-gate__form input:focus, .lpr-gate__form select:focus { outline: 2px solid color-mix(in srgb, var(--g-leaf) 45%, transparent); border-color: var(--g-leaf); }
.lpr-gate__consent { display: flex !important; flex-direction: row !important; align-items: flex-start; gap: .5rem; font-weight: 600 !important; color: var(--g-muted) !important; font-size: .85rem; }
.lpr-gate__consent input { width: auto !important; margin-top: .15rem; }
.lpr-gate__consent a { color: var(--g-leaf); }
.lpr-gate__submit { background: var(--g-accent); color: #fff; font-weight: 800; font-size: 1rem; border: 0; border-radius: 12px; padding: .8rem 1.2rem; cursor: pointer; }
.lpr-gate__submit:hover { filter: brightness(.96); }
.lpr-gate__submit:disabled { opacity: .6; cursor: not-allowed; }
.lpr-gate__status { font-weight: 700; margin: .2rem 0 0; }
.lpr-gate__status.is-ok { color: var(--lpr-forest-700, #1c6b14); }
.lpr-gate__status.is-err { color: var(--g-accent); }
.lpr-hp { position: absolute; left: -9999px; }

/* Formulaire WordPress natif dans le pane connexion */
.lpr-gate #loginform { display: grid; gap: .85rem; margin-top: .4rem; }
.lpr-gate #loginform p { margin: 0; }
.lpr-gate #loginform label { font-weight: 700; font-size: .85rem; color: var(--g-ink); display: grid; gap: .3rem; }
.lpr-gate #loginform input[type=text], .lpr-gate #loginform input[type=password] { width: 100%; font: inherit; font-size: .95rem; padding: .65rem .85rem; border: 1px solid var(--g-line); border-radius: 11px; background: #fff; }
.lpr-gate #loginform input:focus { outline: 2px solid color-mix(in srgb, var(--g-leaf) 45%, transparent); border-color: var(--g-leaf); }
.lpr-gate #loginform .login-remember label { display: flex; align-items: center; gap: .4rem; font-weight: 600; color: var(--g-muted); }
.lpr-gate #loginform .login-submit input { width: 100%; background: var(--g-accent); color: #fff; font-weight: 800; font-size: 1rem; border: 0; border-radius: 12px; padding: .75rem 1.2rem; cursor: pointer; }
.lpr-gate #loginform .login-submit input:hover { filter: brightness(.96); }
