/* Écrans d'authentification Signature (refonte 2026, maquette auth-consultation-signature.css) : connexion, mot de passe
   oublié, nouveau mot de passe, inscription et activation. Introduction à gauche, formulaire lilas à droite ; sur mobile,
   courte introduction puis le formulaire. Bandeau, fil d'Ariane et marges : socle (signature.css). */

.au-layout{display:grid;grid-template-columns:1fr 1.06fr;gap:clamp(45px,7vw,110px);align-items:start;max-width:1120px;margin:54px auto 30px}
.au-intro{padding:18px 0}
.au-kicker{margin:0 0 22px;font-size:12px;color:var(--cv-purple)}
.au-intro h1{max-width:470px;margin:0 0 24px;font:400 clamp(32px,3.4vw,48px)/1.18 'Lora',serif;letter-spacing:-1.3px;color:var(--cv-ink)}
.au-lead{max-width:410px;font-size:14px;line-height:1.9;color:#65576a}
.au-editorial{margin-top:42px;padding:30px 34px;background:var(--cv-sage)}
.au-editorial h2{margin:14px 0;font:400 24px/1.4 'Lora',serif;color:var(--cv-ink)}
.au-editorial p{max-width:340px;margin:0 0 20px;font-size:13px;line-height:1.85}
.au-editorial-icon{display:inline-flex;color:#66705e}
.au-editorial-icon .cv-icon{width:28px;height:28px}
.au-channels{display:flex;flex-wrap:wrap;gap:14px 20px;padding-top:20px;border-top:1px solid #ccd4c6;font-size:11px}
.au-channels span{display:flex;align-items:center;gap:6px}
.au-channels .cv-icon{width:16px;height:16px}
.au-footnote{margin-top:15px;font-size:11px;line-height:1.7;color:var(--cv-muted)}

.au-panel{min-width:0;padding:34px 38px 38px;background:var(--cv-lilac)}
.au-panel h2{margin:0 0 12px;font:400 28px/1.35 'Lora',serif;letter-spacing:-.5px;color:var(--cv-ink)}
.au-panel h2:focus{outline:none}
.au-panel p{margin:0 0 24px;font-size:13px;line-height:1.8}
.au-panel form{margin-top:26px}
.au-field{min-width:0;margin-bottom:21px}
.au-field>label,.au-birth legend{display:block;margin-bottom:9px;font-size:12px;font-weight:500;color:var(--cv-ink)}
.au-field input,.au-birth select{box-sizing:border-box;width:100%;min-width:0;height:48px;padding:11px 13px;border:1px solid #cfc3d4;border-radius:0;background:var(--cv-paper);color:var(--cv-ink);font:400 14px 'Work Sans',sans-serif}
.au-field input::placeholder{color:#877c8a}
.au-field small,.au-birth small{display:block;margin-top:8px;font-size:11px;line-height:1.7;color:var(--cv-muted)}
.au-field .is-invalid,.au-birth .is-invalid{border-color:#a35449}
.au-field .invalid-feedback,.au-birth .invalid-feedback,.au-check .invalid-feedback{display:block;margin-top:6px;font-size:12px;color:#823e36}
.au-password{position:relative}
.au-password input{padding-right:48px}
.au-password button{position:absolute;top:0;right:0;display:grid;place-items:center;width:46px;height:48px;border:0;background:transparent;color:var(--cv-purple);cursor:pointer}
.au-password .cv-icon{width:20px;height:20px}
.au-password button[aria-pressed=true] .cv-icon{opacity:.6}
.au-options{display:flex;justify-content:space-between;align-items:start;gap:14px;margin:4px 0 25px;font-size:11px}
.au-options a,.au-check a,.au-signin a{color:var(--cv-purple);text-decoration:underline;text-underline-offset:3px}
.au-check{display:flex;align-items:flex-start;flex-wrap:wrap;gap:9px;margin:0 0 16px;font-size:12px;line-height:1.7}
.au-check>span{flex:1;min-width:0}
.au-options .au-check{margin:0;font-size:11px}
.au-check input{flex:0 0 15px;width:15px;height:15px;margin:3px 0 0;accent-color:var(--cv-purple)}
.au-check .invalid-feedback{flex-basis:100%}

.au-button{display:flex;justify-content:space-between;align-items:center;gap:16px;box-sizing:border-box;width:100%;min-height:49px;padding:14px 18px;border:1px solid var(--cv-purple);border-radius:0;background:var(--cv-purple);color:#fff;font:400 13px/1.5 'Work Sans',sans-serif;text-decoration:none;cursor:pointer;transition:background .18s}
.au-button:hover{background:#51345b;color:#fff}
.au-button:disabled{opacity:.55;cursor:not-allowed}
.au-button span{flex-shrink:0}
.au-secondary{background:transparent;color:var(--cv-purple)}
.au-secondary:hover{background:#e3dbe7;color:var(--cv-purple)}
.au-alternative{margin-top:30px;padding-top:26px;border-top:1px solid #d8cedc}
.au-alternative h3{margin:0 0 8px;font:400 20px/1.5 'Lora',serif;color:var(--cv-ink)}
.au-alternative p{margin-bottom:17px;font-size:12px}
.au-text-link,.au-back{padding:0;border:0;background:transparent;color:var(--cv-purple);font:400 12px/1.6 'Work Sans',sans-serif;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
.au-back{display:inline-block;margin:0 0 24px;text-decoration:none}
.au-signin{margin:25px 0 0;font-size:12px;text-align:center}

/* Messages : erreur (formulaire), information (compte sur un autre store), succès */
.au-panel .au-error,.au-panel .au-notice{margin:0 0 18px;padding:12px 14px;font-size:12px;line-height:1.7}
.au-panel .au-error{border-left:2px solid #b66656;background:#f5e4df;color:#823e36}
.au-panel .au-notice{border-left:2px solid #8a9a7f;background:var(--cv-sage);color:#3e4b39}
.au-panel .au-notice a,.au-panel .au-error a{color:inherit;text-decoration:underline}
.au-panel .au-hint{font-size:12px;color:var(--cv-muted)}
.au-seal{display:grid;place-items:center;width:55px;height:55px;margin:0 0 24px;border-radius:50%;background:#e0e7da;color:#536847;font-size:26px}
.au-seal .cv-icon{width:25px;height:25px}

/* Inscription : progression, date de naissance, code promo, code SMS */
.au-progress{display:flex;gap:12px;margin:0 0 34px;padding:0;list-style:none}
.au-progress li{flex:1;display:flex;align-items:center;gap:7px;padding-bottom:15px;border-bottom:1px solid #c8bdce;font-size:11px;color:var(--cv-muted)}
.au-progress li span{display:grid;place-items:center;flex-shrink:0;width:23px;height:23px;border:1px solid #c8bdce;border-radius:50%}
.au-progress [aria-current]{border-bottom:2px solid var(--cv-purple);color:var(--cv-purple)}
.au-progress [aria-current] span{border-color:var(--cv-purple);background:var(--cv-purple);color:#fff}
.au-progress .au-complete span{border-color:#c7d2c0;background:#dbe3d6;color:#3e5137}
.au-email-recap{overflow-wrap:anywhere;color:var(--cv-purple)}
.au-birth{min-width:0;margin:0 0 20px;padding:0;border:0}
.au-birth>div{display:grid;grid-template-columns:.8fr 1.25fr 1fr;gap:9px}
.au-birth select{padding:8px;font-size:12px}
.au-promo{margin:24px 0;padding:15px 0;border-block:1px solid #d8cedc}
.au-promo summary{font-size:12px;cursor:pointer}
.au-promo .au-field{margin:16px 0 0}
.au-field .iti{display:block;width:100%}
.au-field .iti input[type=tel]{padding-left:52px}
.au-field .iti__search-input{height:auto;padding:8px}
.au-code{height:58px;font-size:24px;letter-spacing:8px}
.au-resend{margin:24px 0 8px}
.au-resend:disabled{opacity:.6;cursor:default;text-decoration:none}

.au-help{display:flex;gap:15px;max-width:1120px;margin:35px auto 0;padding-top:22px;border-top:1px solid var(--cv-line);font-size:12px;color:var(--cv-muted)}
.au-help a{color:var(--cv-purple);text-decoration:underline;text-underline-offset:4px}
.cv-auth :is(input,select,button,a,summary):focus-visible{outline:2px solid var(--cv-purple);outline-offset:3px}

@media(max-width:1000px){.au-layout{gap:35px;margin-top:35px}.au-panel{padding:28px}.au-editorial{padding:26px}.au-options{flex-wrap:wrap}.au-intro h1{font-size:37px}}
@media(max-width:760px){
	.au-layout{display:block;max-width:540px;margin-top:22px}
	.au-intro{padding:0}
	.au-kicker{margin-bottom:12px}
	.au-intro h1{max-width:420px;margin-bottom:14px;font-size:32px;letter-spacing:-.7px}
	.au-lead{max-width:100%;margin:0 0 25px;font-size:13px;line-height:1.8}
	.au-editorial,.au-footnote{display:none}
	.au-panel{padding:25px}
	.au-help{flex-direction:column;gap:8px;max-width:540px}
	.au-panel h2{font-size:25px}
	.au-progress{margin-bottom:26px}
}
@media(max-width:580px){
	.au-panel{padding:24px 20px}
	.au-layout{margin-top:22px}
	.au-field input,.au-birth select{font-size:16px}
	.au-birth select{font-size:13px}
	.au-options{gap:14px 10px}
	.au-intro h1{font-size:30px}
	.au-progress{gap:8px}
	.au-progress li{gap:5px}
	.au-panel h2{font-size:24px}
}
@media(prefers-reduced-motion:reduce){.au-button{transition:none}}
