@font-face{font-family:CenturyGothic;src:local("Century Gothic"),local("CenturyGothic")}
:root{--navy:var(--login-brand);--navy-2:var(--login-brand-2);--ink:var(--login-ink);--muted:#6d7b89;--line:#dce3e9;--paper:#f4f6f8;--white:#fff;--danger:#a53b3b}
*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:CenturyGothic,"Avenir Next",Avenir,Arial,sans-serif;color:var(--ink);background:var(--paper)}
.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(320px,42%) 1fr}.brand-panel{background:linear-gradient(145deg,var(--login-hover),var(--login-hover-2));color:#fff;padding:54px;display:flex;flex-direction:column;justify-content:space-between}.brand-panel img{width:min(300px,78%);height:auto;filter:brightness(0) invert(1);opacity:.96}.brand-copy{max-width:470px}.brand-copy h1{font-size:clamp(32px,4vw,58px);line-height:1.08;margin:24px 0}.brand-copy p{color:var(--login-text,#d7e0e8);line-height:1.7}.secure-note{display:flex;gap:12px;align-items:center;color:var(--login-text,#d7e0e8);font-size:14px}.secure-note span{width:9px;height:9px;border-radius:50%;background:#8dc6a2;box-shadow:0 0 0 5px rgba(141,198,162,.13)}
.form-panel{display:flex;align-items:center;justify-content:center;padding:44px}.card{width:min(480px,100%);background:#fff;border:1px solid var(--line);border-radius:18px;padding:42px;box-shadow:0 24px 70px rgba(var(--login-rgb),.10)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--accent);font-weight:700}.card h2{font-size:30px;margin:12px 0 10px}.lead{color:var(--muted);line-height:1.55;margin:0 0 28px}.field{margin:0 0 19px}.field label{display:block;font-size:13px;font-weight:700;margin:0 0 8px}.field input{width:100%;font:inherit;font-size:16px;padding:14px 15px;border:1px solid #cbd5dd;border-radius:9px;color:var(--ink);background:#fff}.field input:focus{outline:3px solid rgba(41,71,98,.13);border-color:var(--navy-2)}.hint{font-size:12px;line-height:1.5;color:var(--muted)}.button{width:100%;border:0;border-radius:9px;background:var(--navy);color:#fff;padding:15px 18px;font:700 15px inherit;cursor:pointer}.button:hover{background:var(--navy-2)}.button.secondary{background:#fff;color:var(--navy);border:1px solid var(--line)}.error,.success{padding:13px 15px;border-radius:8px;margin:0 0 20px;font-size:14px;line-height:1.5}.error{background:#fff0f0;color:var(--danger);border:1px solid #efd0d0}.success{background:#edf8f0;color:#27633a;border:1px solid #cfe7d5}.links{display:flex;justify-content:space-between;gap:20px;margin-top:20px;font-size:13px}.links a{color:var(--navy);text-decoration:none}.footer{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);line-height:1.55}.code-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f3f5f7;border-radius:10px;padding:16px;margin:16px 0 22px}.code-grid code{font:700 14px ui-monospace,SFMono-Regular,Menlo,monospace}.secret{display:block;overflow-wrap:anywhere;background:#f3f5f7;border:1px dashed #b8c4ce;border-radius:9px;padding:14px;font:700 15px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;margin:12px 0}.dashboard{min-height:100vh;background:#f4f6f8}.topbar{background:var(--navy);color:#fff;padding:22px 5vw;display:flex;align-items:center;justify-content:space-between}.topbar img{width:150px;filter:brightness(0) invert(1)}.topbar a{color:#fff;text-decoration:none;font-size:13px}.dashboard-main{max-width:1050px;margin:0 auto;padding:70px 30px}.welcome{background:#fff;border:1px solid var(--line);border-radius:18px;padding:45px}.welcome h1{margin-top:0}.status-pill{display:inline-block;border-radius:999px;background:#edf8f0;color:#27633a;padding:8px 12px;font-size:12px;font-weight:700}
.dashboard-actions{margin-top:30px}.dashboard-button{display:inline-block;border-radius:9px;background:var(--navy);color:#fff;padding:15px 22px;text-decoration:none;font-size:14px;font-weight:700}.dashboard-button:hover{background:var(--navy-2)}.dashboard-note{margin:22px 0 0;color:var(--muted);font-size:12px}
@media(max-width:820px){.auth-shell{grid-template-columns:1fr}.brand-panel{min-height:340px;padding:34px}.brand-panel img{width:210px}.brand-copy h1{font-size:34px}.form-panel{padding:25px}.card{padding:30px 24px}}
.mt-12{margin-top:12px}.button-block{display:block;text-align:center;text-decoration:none}
/* Connexion par clé d'accès (Touch ID / Face ID) */
.passkey-button{width:100%;margin-top:12px}
.passkey-error{margin:12px 0 0;padding:11px 13px;border-radius:10px;background:#fbeeec;color:#a53b3b;font-size:.84rem;line-height:1.45}

/* Signature discrète de la plateforme (sociétés clientes uniquement). */
.platform-signature.login{margin-top:18px;color:var(--login-text,#d7e0e8);font-size:11px;letter-spacing:.06em;text-transform:uppercase;opacity:.55}

/* Logo clair choisi pour la société (menu et connexion) : affiché tel quel, sans filtre blanc. */
.brand-panel img.as-is,.topbar img.as-is{filter:none;opacity:1}
