@font-face{font-family:LoginRoboto;src:url('../fonts/roboto-login.woff2') format('woff2');font-display:swap;font-weight:400}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:LoginRoboto,Roboto,Helvetica,Arial,sans-serif;color:#3e3e3e;font-size:14px}.reference-login{background:#282828}.reference-login:before{content:"";position:fixed;inset:0;background:linear-gradient(#0009,#0009),url('../images/login/poster-background.png') center/cover no-repeat;z-index:-1}
.login-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:32px 16px}.login-container{background:#fff;padding:40px;border-radius:8px;box-shadow:0 0 10px #0005;text-align:center;max-width:450px;width:100%}.login-brand{height:37px;display:flex;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:#080627;font-size:14px;letter-spacing:.8px;font-weight:700;margin:0 auto 25px}.login-brand-card{display:flex;align-items:center;justify-content:center;width:22px;height:31px;border:2px solid #f5e635;border-radius:2px;color:#e8d72c}.login-brand-card svg{width:17px}
h1{font-size:20px;font-weight:400;line-height:1.334;margin:0 0 20px}.login-subtitle{color:#7c7c7c;font-size:14px;line-height:1.5;margin:0 0 15px}.outlined-field{position:relative;margin:0 0 8px;text-align:left}.outlined-field label{position:absolute;left:10px;top:-7px;padding:0 4px;background:#fff;font-size:12px;line-height:14px;color:#777;z-index:1}.outlined-field input{height:56px;width:100%;border:1px solid #c4c4c4;border-radius:4px;padding:16px 14px;background:#fff;color:#333;font:16px LoginRoboto,Arial,sans-serif;outline:none}.outlined-field input:hover{border-color:#555}.outlined-field input:focus{border:2px solid #2d9bea;padding-left:13px}.outlined-field:focus-within label{color:#2d9bea}.password-step{margin-top:22px}.password-step input{padding-right:60px}.password-toggle{position:absolute;right:10px;top:17px;background:none;border:0;color:#777;cursor:pointer;font-family:inherit}.continue-btn{background:#2d9bea;color:#fff;width:100%;border:0;border-radius:4px;min-height:37px;padding:7px 16px;margin-top:10px;font:500 14px/1.6 LoginRoboto,Arial,sans-serif;cursor:pointer}.continue-btn:hover{background:#258bd3}.continue-btn:disabled{cursor:default;opacity:.85}.or-separator{height:50px;display:flex;align-items:center;gap:30px;margin:10px 15px;font-weight:600;color:#262626}.or-separator:before,.or-separator:after{content:"";height:1px;flex:1;background:#aaa}.other-login-links{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:10px}.other-login-links a{border:1px solid #c4c4c4;border-radius:4px;text-decoration:none;color:#7c7c7c;padding:8px 15px;min-height:36px;font-size:14px;letter-spacing:.3px;line-height:19px}.other-login-links a:hover{background:#f6f6f6}.alert{padding:12px;margin-bottom:18px;border:1px solid #ebc3c3;background:#fff3f3;color:#a13030;border-radius:4px;font-size:13px;line-height:1.5}.alert-success{background:#eff8ef;color:#28612f;border-color:#cde3cd}[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:2px solid #2d9bea;outline-offset:3px}
@media(max-width:600px){.login-container{padding:20px;max-width:350px}.login-brand{font-size:12px;height:29px;margin-bottom:25px}.login-brand-card{height:26px;width:20px}h1{font-size:16px}.login-subtitle{font-size:12px}.outlined-field input{height:45px}.other-login-links a{font-size:12px;line-height:16px;padding:9px 12px}.password-toggle{top:13px}.or-separator{gap:22px}}

/* Slow background motion shared by login and registration. */
.reference-login:before{inset:-3%;transform-origin:center;animation:auth-background-drift 26s ease-in-out infinite alternate;will-change:transform;pointer-events:none}
@keyframes auth-background-drift{0%{transform:translate3d(-1%,0,0) scale(1.03)}50%{transform:translate3d(1%,-1%,0) scale(1.08)}100%{transform:translate3d(-.5%,1%,0) scale(1.13)}}
@media(prefers-reduced-motion:reduce){.reference-login:before{animation:none;transform:none;will-change:auto}}
/* Registration shares the login visual style with room for all account fields. */
.reference-register .outlined-field{margin-top:22px;margin-bottom:0}.reference-register .password-wrap{position:relative}.reference-register .password-wrap input{padding-right:62px}.reference-register .password-guidance{font-size:11px;line-height:1.4;color:#7c7c7c;margin:8px 0 0}.reference-register .password-guidance.is-ready{color:#28734c}.reference-register .continue-btn{margin-top:20px}.reference-register input::placeholder{color:#aaa;font-size:14px}.reference-register .login-container{margin:auto}.reference-register .login-brand{margin-bottom:20px}.reference-register h1{margin-bottom:12px}
.auth-audience-tabs{display:flex;gap:5px;background:#f0f2f6;border:1px solid #e3e6eb;padding:5px;border-radius:10px;margin:0 0 25px}.auth-audience-tabs a{flex:1;text-align:center;padding:10px 15px;border-radius:7px;color:#657080;text-decoration:none;font-size:13px;font-weight:600}.auth-audience-tabs a[aria-current=page]{background:#fff;color:#123d65;box-shadow:0 2px 8px #172f4c12}.auth-audience-tabs a:focus-visible{outline:2px solid #2367a4;outline-offset:2px}.reseller-auth .continue-btn{background:#173f67}.reseller-auth .continue-btn:hover{background:#0e2b48}.reseller-auth .login-subtitle{line-height:1.65}.reseller-auth.reference-register .login-container{margin-top:25px;margin-bottom:25px}
