/* Lightweight shared identity for password, SMS, recovery and lockout pages. */
.login-body{background:radial-gradient(ellipse at 92% 0%,#24477366,transparent 50%),radial-gradient(ellipse at 0% 100%,#c1a03209,transparent 45%),#0b1527!important;color:#eef4fc;font-family:YasinUI,Tahoma,Arial,sans-serif;position:relative;isolation:isolate;padding:28px 24px;min-height:100svh}
.login-body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:url('../images/chemistry-field.svg') repeat;background-size:960px 760px;opacity:.12}
.login-body :is(input,button,select,textarea){font-family:YasinUI,Tahoma,Arial,sans-serif}
.login-body .login-card{background:linear-gradient(145deg,#233d588a,#11243fe8 60%,#93732113)!important;border:1px solid #657d9b7a;border-top:1px solid #e6d28290;box-shadow:inset 0 1px #fff3,0 24px 70px #03091459;border-radius:24px;padding:32px;color:#eef4fc;width:min(100%,460px);backdrop-filter:blur(8px)}
.login-body .login-card :is(h1,h2){color:#f3f6fb;font-weight:700;letter-spacing:-.5px;font-size:25px;margin:8px 0 10px}
.login-body .login-card p,.login-body .login-card .muted{color:#b8cce5;font-size:12px;line-height:1.9}
.login-body .login-card :is(input:not([type=checkbox]),select,textarea){background:#0b1c33d9;color:#edf4fd;border:1px solid #637da1;min-height:49px;border-radius:11px;padding:11px 13px;font-size:14px}
.login-body .login-card input::placeholder{color:#8da7c9}
.login-body .login-card label{color:#dce9f9;font-size:12px;font-weight:700}
.login-body .login-card .btn-primary{background:linear-gradient(115deg,#f9dc63,#ebc12c);color:#122036;border-color:#f2cf35;box-shadow:inset 0 1px #fff7,0 8px 20px #c99a221a;min-height:50px;border-radius:11px;font-weight:700}
.login-body .login-card a{color:#e8d68d;font-size:12px}
.login-body .login-card :is(input,button,a):focus-visible{outline:3px solid #f2cf35;outline-offset:3px}
.login-body .login-card .password-toggle,.login-body .password-security-toggle{background:#1c3351;color:#dfeafa;border-color:#637da1;min-height:49px;border-radius:11px}
.login-body .login-card .password-toggle:hover{background:#2c4667}
.login-body .login-card .message.error,.login-body .login-card .errorlist{background:#532c35;color:#ffe0df;border-color:#c67a82}
.login-body .login-card .message.success{background:#1c453e;color:#cef5e2;border-color:#4b8f7d}
.login-body .login-brand-image{margin:0 auto 15px;max-width:195px}
.login-body .login-brand-image img{mix-blend-mode:screen;border:0;background:none}
.login-body .login-divider{background:linear-gradient(90deg,transparent,#edcf5a75,transparent);height:1px;margin-bottom:22px}
.login-body .login-foot{border-top:1px solid #708db440;padding-top:19px;color:#9cb6d7;font:10px/1.8 Arial,sans-serif;letter-spacing:.7px;text-align:center;margin-top:23px}
.login-portal{width:min(1180px,100%);margin:auto;position:relative}
.portal-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:42px}
.portal-wordmark{display:flex;align-items:center;gap:16px;color:#f1f5fc}
.portal-wordmark img{width:104px;height:66px;object-fit:contain;mix-blend-mode:screen}
.portal-wordmark strong{display:block;font-size:19px;font-weight:700}
.portal-wordmark small{display:block;color:#aec5e1;font:9px/1.9 Arial,sans-serif;letter-spacing:1.8px;margin-top:4px}
.portal-website{display:inline-flex;align-items:center;gap:12px;color:#e4d38e!important;font-size:12px;padding:11px 0;border-bottom:1px solid #dac35c45}
.portal-grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:70px;align-items:center}
.portal-intro{position:relative;align-self:stretch;min-height:520px;padding:36px 0;display:flex;flex-direction:column;justify-content:center}
.portal-eyebrow{font:10px/1.8 Arial,sans-serif;letter-spacing:2.8px;color:#e3cf84;text-align:right;margin-bottom:16px}
.portal-intro h1{font-size:clamp(38px,4.6vw,65px);font-weight:700;line-height:1.45;letter-spacing:-1.6px;margin:0 0 17px;color:#f4f6fc}
.portal-intro h1>span{color:#f4d14d}
.portal-intro>p{max-width:420px;font-size:14px;color:#c2d2e8;line-height:2.1;margin:0 0 22px}
.portal-signature{display:flex;align-items:center;gap:13px;margin-bottom:26px}
.portal-drop{width:45px;height:60px;filter:drop-shadow(0 5px 12px #d8b12d25)}
.portal-signature>span{color:#e9d58a;font:italic 600 17px/1.6 Arial,sans-serif;letter-spacing:.1px}
.portal-factory{position:relative;max-width:490px;aspect-ratio:2.7;overflow:hidden;border-radius:20px 4px 20px 4px;border:1px solid #60759166}
.portal-factory img{width:100%;height:100%;object-fit:cover;object-position:center 58%;filter:brightness(.7) saturate(.65)}
.portal-factory::after{content:'';position:absolute;inset:0;background:linear-gradient(270deg,#0b1527a6,transparent 85%)}
.portal-factory figcaption{position:absolute;bottom:17px;right:19px;z-index:1;font-size:10px;color:#e1e9f6}
.portal-factory{margin:0}
.portal-grid .login-card{width:100%;margin:0}
.portal-form-kicker{color:#e6d184!important;font:10px/1.8 Arial,sans-serif!important;letter-spacing:2px;margin:0 0 9px!important}
.login-body .portal-grid .login-card h2{margin:0 0 9px;font-size:24px}
.login-body .portal-grid .login-card .stack-form{margin:24px 0 18px;gap:9px}
.portal-remember{display:flex;align-items:center;gap:8px;margin:8px 0 10px;cursor:pointer}
.portal-remember input{width:17px;height:17px;accent-color:#f2cf35}
.portal-support{padding-top:16px;border-top:1px solid #49617e66;display:flex;align-items:center;justify-content:space-between;gap:10px}
.portal-support small{color:#92adc9;font-size:10px}
.portal-footer{display:flex;justify-content:space-between;gap:15px;margin-top:38px;padding-top:16px;border-top:1px solid #738cad24;color:#91a9c5;font-size:10px}
.portal-footer span[lang=en]{font:9px/1.8 Arial,sans-serif;letter-spacing:.7px}
@media(max-width:1020px){.portal-grid{gap:35px;grid-template-columns:minmax(0,1fr) 390px}.portal-intro h1{font-size:44px}.portal-intro>p{font-size:13px}.portal-header{margin-bottom:25px}}
@media(max-width:760px){.login-body{padding:20px 17px}.login-body::before{opacity:.08;background-size:780px 618px}.portal-header{margin-bottom:24px;align-items:center}.portal-wordmark{gap:9px}.portal-wordmark img{width:70px;height:43px}.portal-wordmark strong{font-size:14px}.portal-wordmark small{font-size:6.5px;letter-spacing:.8px}.portal-website{font-size:10px;gap:5px}.portal-grid{display:flex;flex-direction:column;gap:21px}.portal-intro{min-height:0;padding:0;align-self:stretch}.portal-eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:8px}.portal-intro h1{font-size:30px;letter-spacing:-.7px;margin-bottom:8px}.portal-intro h1 br{display:none}.portal-intro>p{font-size:11px;line-height:1.9;margin-bottom:8px;max-width:none}.portal-signature{display:none}.portal-factory{display:none}.portal-grid .login-card{max-width:460px;align-self:center;backdrop-filter:none;padding:25px 23px}.portal-grid .login-card h2{font-size:22px}.portal-footer{margin-top:22px;font-size:9px;gap:8px}.portal-footer span[lang=en]{font-size:8px}.portal-support{flex-wrap:wrap}.login-body .login-card{backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.login-body *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
