/* Styles réservés au parcours d’identification et à son glissement. */
@view-transition{navigation:none}
body:has(.login-slider-stage){background:#fff}
body:has(.login-slider-stage) .site-header{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;min-height:62px;padding:calc(8px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) 10px max(24px,env(safe-area-inset-left))}
body:has(.login-slider-stage) .site-header .brand{gap:10px;flex:0 1 auto;min-height:44px}
body:has(.login-slider-stage) .site-header .brand img{width:42px;height:43px}
body:has(.login-slider-stage) .site-header .brand-name{font-size:16px;max-width:270px}
body:has(.login-slider-stage) main{min-height:calc(100svh - 150px);padding:24px max(24px,env(safe-area-inset-right)) 28px max(24px,env(safe-area-inset-left))}
.login-slider-stage{width:100%;max-width:540px;margin:0 auto;text-align:center;color:#173d30}
.login-slider-stage [hidden]{display:none!important}
.login-slider-stage h1{font-size:24px;line-height:1.3;letter-spacing:-.4px;width:min(760px,calc(100vw - 48px));max-width:none;margin:0 0 18px 50%;transform:translateX(-50%);font-weight:720}
.login-slider-card{background:#fff;border:1px solid #d2e7da;border-radius:20px;padding:22px;box-shadow:0 16px 45px #173d3006;text-align:left;position:relative;overflow:hidden}
.login-slider-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#23AE84 0%,#72cfae 100%)}
.login-slider-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.login-slider-heading svg{color:#23AE84;width:24px;height:24px;flex:none}
.login-slider-heading h2{font-size:18px;margin:0;letter-spacing:-.2px;font-weight:720}
.login-slider-instructions{font-size:14px;line-height:1.5;margin:0 0 10px;font-weight:600}
.login-slider-shell{height:70px;position:relative;border-radius:13px;background:#ecf8f1;border:1px solid #c9e5d6;overflow:hidden;transition:background .18s,border-color .18s}
.login-slider-shell:focus-within{outline:3px solid #23AE84;outline-offset:4px}
.login-slider-path{height:1px;position:absolute;left:38px;right:50px;top:34px;background:repeating-linear-gradient(90deg,#b0d7c1 0 5px,transparent 5px 12px)}
.login-slider-track-copy{position:absolute;left:80px;right:65px;top:23px;text-align:center;color:#286b50;font-size:13px;font-weight:650;white-space:nowrap;background:#ecf8f1;padding:2px 8px;pointer-events:none}
.login-slider-track-copy svg{display:none}
.login-slider-arrow{position:absolute;right:70px;top:24px;color:#7ab399;width:20px;height:20px;pointer-events:none}
.login-slider-target{position:absolute;width:48px;height:48px;right:10px;top:10px;border-radius:50%;background:#fff;border:1px solid #cae4d5;display:grid;place-items:center;box-shadow:0 2px 6px #147fa60a;pointer-events:none}
.login-slider-target img{width:38px;height:38px;object-fit:contain}
.login-slider-handle{position:absolute;left:10px;top:10px;width:48px;height:48px;border-radius:10px;background:#23AE84;box-shadow:0 3px 8px #16815e26;display:grid;place-items:center;pointer-events:none;z-index:3}
.login-slider-handle svg{width:32px;height:32px}
.login-slider-range{position:absolute;z-index:5;left:10px;top:10px;width:calc(100% - 20px);height:48px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;opacity:0;cursor:grab;touch-action:none;border:0;padding:0}
.login-slider-range:active{cursor:grabbing}
.login-slider-range:disabled{cursor:wait}
.login-slider-range::-webkit-slider-runnable-track{height:48px;background:transparent}
.login-slider-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:48px;height:48px;background:transparent}
.login-slider-range::-moz-range-track{height:48px;background:transparent}
.login-slider-range::-moz-range-thumb{width:48px;height:48px;border:none;background:transparent}
.login-slider-status{display:flex;align-items:flex-start;gap:8px;color:#66788b;font-size:12px;line-height:1.55;margin-top:8px}
.login-slider-status svg{width:15px;height:15px;flex:none;color:#8295a6;margin-top:2px}
.login-slider-shell.is-verified{height:36px;background:#edf8f2;border-color:#c9e7d8}
.login-slider-card:has(.login-slider-shell.is-verified) .login-slider-instructions{display:none}
.login-slider-control:has(.login-slider-shell.is-verified){display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.login-slider-control:has(.login-slider-shell.is-verified) .login-slider-actions{margin:0;padding:0;border:0}
.login-slider-control:has(.login-slider-shell.is-verified) #login-slider-keyboard-help{display:none}
.is-verified .login-slider-track-copy{color:#187556;background:#edf8f2;left:15px;right:15px;top:6px;font-size:13px;display:flex;align-items:center;justify-content:center;gap:10px}
.is-verified .login-slider-track-copy svg{display:block;height:20px;width:20px;order:-1}
.is-verified .login-slider-path,.is-verified .login-slider-arrow,.is-verified .login-slider-target,.is-verified .login-slider-handle,.is-verified .login-slider-range{display:none}
.login-slider-status.is-verified{color:#187556}
.login-slider-status.is-error{color:#942c25}
.login-slider-actions{display:flex;align-items:center;justify-content:space-between;margin-top:5px;gap:12px}
.login-slider-actions p{font-size:12px;color:#66788b;line-height:1.45;margin:0}
.login-slider-actions button{padding:8px 0;color:#116147;font-size:12px;font-weight:700;background:none;border:0;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;min-height:44px}
.login-slider-actions button:disabled{color:#66788b;cursor:wait;opacity:.7}
.login-slider-stage button:focus-visible,.login-slider-stage input:focus-visible,.login-slider-stage a:focus-visible{outline:3px solid #23AE84;outline-offset:4px}
.login-slider-stage .login-slider-credentials{border:0;margin:8px 0 0;padding:0;min-width:0}
.login-slider-credentials input{height:44px;border:1px solid #bcd8c8;border-radius:10px;padding:0 12px;font-size:16px}
.login-slider-credentials label{font-size:13px;font-weight:700;margin-top:10px;margin-bottom:5px}
.login-slider-credentials button{width:100%;margin-top:14px;min-height:44px;border:0;border-radius:10px;background:#23AE84;color:#fff;font-weight:750;font-size:15px}
.login-slider-credentials p{font-size:13px;margin:0}
.login-slider-credentials a{color:#116147;display:inline-flex;align-items:center;min-height:44px}
.login-slider-links{display:flex;align-items:center;justify-content:space-between;gap:4px 10px;flex-wrap:wrap;margin-top:4px}
.login-slider-links .registration-link{border:0;padding:0}
.login-slider-information{margin-top:2px;border-top:1px solid #edf2f7}
.login-slider-information summary{display:flex;align-items:center;min-height:44px;font-size:12px;font-weight:600;cursor:pointer;gap:7px}
.login-slider-information summary:before{content:'▸';font-size:14px;color:#116147}
.login-slider-information[open] summary:before{content:'▾'}
.login-slider-information summary:focus-visible{outline:3px solid #23AE84;outline-offset:2px}
.login-slider-information .privacy-form-notice{font-size:12px;line-height:1.55;margin:6px 0 12px}
.login-slider-information .privacy-form-notice a{color:#116147}
.login-slider-card #login-attempts{font-size:12px;line-height:1.65;margin:12px 0 0;color:#66788b}
.login-slider-no-script{font-size:13px;line-height:1.65;padding:13px 15px;background:#fff5dd;border:1px solid #ead8ad;border-radius:10px;margin:18px 0 0}
.login-slider-visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){
 body:has(.login-slider-stage) .site-header{min-height:54px;padding:calc(7px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 9px max(14px,env(safe-area-inset-left))}
 body:has(.login-slider-stage) .site-header .brand{gap:7px}
 body:has(.login-slider-stage) .site-header .brand img{width:36px;height:37px}
 body:has(.login-slider-stage) .site-header .brand-mobile-name{font-size:11px;max-width:94px}
 body:has(.login-slider-stage) main{padding:14px max(14px,env(safe-area-inset-right)) 20px max(14px,env(safe-area-inset-left));min-height:calc(100svh - 140px)}
 .login-slider-stage h1{font-size:20px;line-height:1.25;letter-spacing:-.25px;width:auto;max-width:430px;margin:0 auto 12px;transform:none}
 .login-slider-card{padding:16px;border-radius:17px}
 .login-slider-heading{margin-bottom:10px}.login-slider-heading h2{font-size:17px}
 .login-slider-heading svg{width:21px;height:21px}
 .login-slider-instructions{font-size:13px;margin-bottom:8px}
 .login-slider-track-copy{left:65px;right:58px;font-size:11px;padding:2px}
 .login-slider-arrow{display:none}
 .login-slider-actions{gap:8px}.login-slider-actions p,.login-slider-actions button{font-size:11px}
 .login-slider-control:has(.login-slider-shell.is-verified){gap:8px}
 .is-verified .login-slider-track-copy{font-size:12px;left:8px;right:8px;gap:5px}
 .is-verified .login-slider-track-copy svg{width:17px;height:17px}
}
@media(max-width:350px){
 body:has(.login-slider-stage) main{padding:10px max(10px,env(safe-area-inset-right)) 16px max(10px,env(safe-area-inset-left))}
 .login-slider-stage h1{font-size:19px;line-height:1.25;margin-bottom:10px}
 .login-slider-card{padding:13px}.login-slider-heading{margin-bottom:8px}
 .login-slider-track-copy{font-size:10px;left:63px;right:55px}
 .login-slider-actions p{max-width:140px}.login-slider-credentials button{margin-top:12px}
}
@media(prefers-reduced-motion:reduce){.login-slider-stage *,.login-slider-stage *:before,.login-slider-stage *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
