/* Pages sans session : connexion et activation d'un compte externe. */
body.auth{margin:0;min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--fond-2);color:var(--encre);font-family:var(--font-sans);padding:24px}
.auth-card{width:min(440px,100%);padding:32px 32px 28px;background:var(--fond);border:1px solid var(--trait);border-radius:var(--rayon);box-shadow:var(--ombre-2)}
.auth-card.wide{width:min(640px,100%)}
.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.auth-brand img{height:22px}
.auth-brand .produit{font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--encre)}
.auth-card h1{font-size:22px;line-height:28px;margin:0 0 18px}
.auth-card h2{font-size:15px;line-height:22px;margin:0 0 10px}
.dw-btn.large{display:flex;justify-content:center;height:44px;font-size:15px}
.auth-card>.dw-aide{margin:10px 0 18px}
details#external{border-top:1px solid var(--trait);padding-top:14px}
details#external summary{cursor:pointer;font-weight:600;color:var(--encre-2);list-style:none;display:flex;align-items:center;gap:8px}
details#external summary::before{content:"▸";font-size:12px}
details#external[open] summary::before{content:"▾"}
.auth-form{display:flex;flex-direction:column;gap:12px;margin-top:14px}
.auth-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:500;color:var(--encre-2)}
.auth-form input{height:40px;padding:0 12px;border:1px solid var(--trait-fort);border-radius:var(--rayon-sm);background:var(--fond);color:var(--encre);font:15px/1 var(--font-sans)}
.auth-form input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}
.auth-form button{height:42px;font-size:15px}
.auth-error{margin:0;padding:10px 12px;border-radius:var(--rayon-sm);background:var(--erreur-doux);color:var(--erreur);font-size:13px;font-weight:500}
.auth-step{padding:16px;border:1px solid var(--trait);border-radius:var(--rayon);display:flex;flex-direction:column;gap:10px}
.qr-row{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.qr{width:184px;height:184px;padding:8px;box-sizing:border-box;background:#fff;border-radius:var(--rayon-sm);border:1px solid var(--trait)}
.qr svg{display:block;width:100%;height:100%}
.secret{display:block;margin-top:4px;font:14px/1.5 ui-monospace,Consolas,monospace;letter-spacing:.04em;word-break:break-all;max-width:260px}
#done{display:flex;flex-direction:column;gap:16px}
