/* ============================================================
   PETITLOU — Se connecter / Créer un compte / Mot de passe
   Templates : woocommerce/myaccount/form-login.php et formulaires
   de mot de passe. Variables et .pl-btn : espace-membre.css.
   ============================================================ */

.pl-auth {
    --pl-auth-violet:      #8E9CFF;
    --pl-auth-violet-soft: #EEF0FF;
    max-width: 1000px;
    margin: 32px auto 64px;
    font-family: var(--e-global-typography-text-font-family, Nunito), sans-serif;
    color: var(--pl-dark);
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.pl-auth--single { max-width: 480px; }

.pl-auth__intro { text-align: center; }

.pl-auth__title {
    margin: 0 0 6px;
    font-family: var(--e-global-typography-primary-font-family, Nunito), sans-serif;
    font-size: 32px;
    font-weight: 900;
    line-height: 1.2;
    text-wrap: balance;
    color: var(--pl-dark);
}

.pl-auth__lede { margin: 0; font-size: 16px; color: var(--pl-mid); }

.pl-auth__cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    align-items: start;
}

.pl-auth__card {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 28px;
    background: #fff;
    border-radius: var(--pl-radius);
    box-shadow: var(--pl-shadow);
}

/* Inscription : touche violette, côté accueillant */
.pl-auth__card--register { border-top: 4px solid var(--pl-auth-violet); }

.pl-auth__card-title {
    margin: 0;
    font-family: var(--e-global-typography-text-font-family, Nunito), sans-serif;
    font-size: 22px;
    font-weight: 900;
    color: var(--pl-dark);
}

.pl-auth__card-lede { margin: -10px 0 0; font-size: 15px; color: var(--pl-mid); }

.pl-auth__form { display: flex; flex-direction: column; gap: 16px; margin: 0; }

.pl-auth__field { display: flex; flex-direction: column; gap: 6px; margin: 0; }

.pl-auth__field label { font-size: 15px; font-weight: 700; }

/* Champs : même style que le reste du site, verrouillé contre le kit et le thème */
.pl-auth .pl-auth__field input.input-text {
    width: 100%;
    box-sizing: border-box;
    padding: 13px 16px !important;
    border: 1.5px solid #EDEBEB !important;
    border-radius: var(--pl-radius) !important;
    background: #fff !important;
    box-shadow: none !important;
    font-family: inherit;
    font-size: 15px;
    color: var(--pl-dark);
    outline: none;
    transition: border-color var(--pl-ease);
}

.pl-auth .pl-auth__field input.input-text:focus { border-color: var(--pl-pink) !important; }

.pl-auth__hint { font-size: 13px; line-height: 1.45; color: var(--pl-mid); margin: 0; }

.pl-auth__url { color: var(--pl-dark); word-break: break-all; }
.pl-auth__url strong { color: var(--pl-auth-violet); }

/* Mot de passe + bouton Afficher */
.pl-auth__password { position: relative; display: block; }
.pl-auth .pl-auth__password input.input-text { padding-right: 96px !important; }

.pl-auth .pl-auth__show {
    position: absolute;
    top: 50%;
    right: 8px;
    transform: translateY(-50%);
    padding: 6px 10px !important;
    border: none !important;
    border-radius: 5px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--pl-mid) !important;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    text-transform: none;
    cursor: pointer;
}

.pl-auth .pl-auth__show:hover,
.pl-auth .pl-auth__show:focus-visible { background: #EDEBEB !important; color: var(--pl-dark) !important; }

.pl-auth__row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px 16px;
}

.pl-auth__check { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; cursor: pointer; }
.pl-auth__check input { width: 18px; height: 18px; accent-color: var(--pl-pink); }

.pl-auth__link { font-size: 14px; color: var(--pl-dark); text-decoration: underline; }
.pl-auth__link:hover { color: var(--pl-pink); }
.pl-auth__back { align-self: flex-start; }

/* Bouton principal plein : .pl-btn--solid (espace-membre.css). */

.pl-auth__submit { width: 100%; padding-block: 14px !important; }

/* Indicateur de robustesse du mot de passe (WooCommerce) */
.pl-auth .woocommerce-password-strength {
    margin-top: 6px;
    padding: 6px 10px;
    border-radius: 5px;
    font-size: 13px;
    font-weight: 700;
    text-align: left;
}
.pl-auth .woocommerce-password-hint { display: block; margin-top: 6px; font-size: 13px; color: var(--pl-mid); }

/* Champs ajoutés par Dokan (conditions d'utilisation…) */
.pl-auth .tc_check_box,
.pl-auth .dokan-form-group { font-size: 14px; }

@media (max-width: 760px) {
    .pl-auth { margin: 16px auto 48px; gap: 20px; }
    .pl-auth__cards { grid-template-columns: minmax(0, 1fr); }
    .pl-auth__card { padding: 22px 18px; }
    .pl-auth__title { font-size: 26px; }
}
