/* Bellmax login only. Presentation does not alter authentication or the OS shell. */
body.bellmax-login{color-scheme:dark;--login-bg:#020e12;--login-text:#f4faf9;--login-muted:#c0d1d4;--login-green:#00df72;--login-danger:#ffc0c7;min-height:100vh;min-height:100dvh;margin:0;overflow-x:hidden;background:var(--login-bg);color:var(--login-text);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
.bellmax-login *,.bellmax-login *::before,.bellmax-login *::after{box-sizing:border-box}
.bellmax-login :where(button,input){font:inherit}
.bellmax-login .login-shell{position:relative;isolation:isolate;display:grid;place-items:center;min-height:100vh;min-height:100dvh;padding:40px 20px}
.bellmax-login .login-shell::before{content:"";position:fixed;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(0,12,15,.16),rgba(0,12,15,.04) 50%,rgba(0,12,15,.16)),var(--login-bg) url("login-cyber-operations.webp") center/cover no-repeat;pointer-events:none}
.bellmax-login .login-access{width:min(100%,680px);min-width:0}
.bellmax-login .login-card{position:relative;display:flex;flex-direction:column;width:100%;min-width:0;min-height:816px;padding:38px 64px 28px;border:1px solid #34b8a9;border-radius:36px;background:linear-gradient(145deg,rgba(143,226,218,.09),transparent 32%),linear-gradient(0deg,rgba(0,131,105,.07),transparent 28%),rgba(2,18,23,.91);box-shadow:0 20px 60px rgba(0,0,0,.55),0 0 30px rgba(0,204,168,.09),inset 0 1px 0 rgba(167,255,231,.15),inset 0 -1px 0 rgba(0,225,177,.2);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.bellmax-login .login-card::before{content:"";position:absolute;top:-1px;left:26%;right:26%;height:2px;background:linear-gradient(90deg,transparent,#64f3d1,transparent);box-shadow:0 0 14px rgba(0,231,185,.3);pointer-events:none}
.bellmax-login .login-identity{margin-bottom:26px;text-align:center}
.bellmax-login .login-logo-lockup{display:flex;align-items:center;justify-content:center;gap:21px;min-width:0}
.bellmax-login .login-logo{display:block;width:265px;max-width:69%;height:auto}
.bellmax-login .login-logo-os{padding-left:21px;border-left:1px solid #86a2a0;color:var(--login-green);font-size:50px;line-height:1;font-weight:750;letter-spacing:-.04em}
.bellmax-login .login-platform{display:flex;align-items:center;justify-content:center;gap:15px;margin:23px -10px 0;color:#e0ebeb;font-size:10px;font-weight:650;line-height:1.6;letter-spacing:.27em;white-space:nowrap}
.bellmax-login .login-platform::before,.bellmax-login .login-platform::after{content:"";height:1px;flex:1;min-width:18px;background:linear-gradient(90deg,transparent,#00b973)}
.bellmax-login .login-platform::after{transform:rotate(180deg)}
.bellmax-login .login-card-header{text-align:center}
.bellmax-login .login-card-header h1{margin:0;color:var(--login-text);font-size:34px;line-height:1.22;font-weight:750;letter-spacing:-.035em}
.bellmax-login .login-card-header h1 em{color:var(--login-green);font-style:normal;white-space:nowrap}
.bellmax-login .login-card-header p{margin:12px 0 0;color:var(--login-muted);font-size:17px;line-height:1.55}
.bellmax-login .login-error{margin:18px 0 0;padding:12px 14px;border:1px solid #a16570;border-left:3px solid #efa4af;border-radius:10px;background:#291923;color:var(--login-danger);font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.bellmax-login .login-card form,.bellmax-login .login-field,.bellmax-login .login-input-wrap{min-width:0}
.bellmax-login .login-card form{margin-top:24px}
.bellmax-login .login-field+.login-field{margin-top:20px}
.bellmax-login .login-field label{display:block;margin-bottom:9px;color:#eef5f5;font-size:15px;font-weight:650;line-height:1.45}
.bellmax-login .login-input-wrap{position:relative;display:flex;align-items:center}
.bellmax-login .login-input-wrap>span{position:absolute;z-index:1;left:20px;top:0;bottom:0;display:grid;place-items:center;color:#d5e2e5;pointer-events:none}
.bellmax-login .login-input-wrap>span svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.bellmax-login .login-input-wrap input{width:100%;min-width:0;height:56px;padding:0 17px 0 58px;border:1px solid #8da3ab;border-radius:10px;outline:0;background:#102329;color:var(--login-text);font-size:16px;box-shadow:inset 0 1px 2px rgba(0,0,0,.2);transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
.bellmax-login .login-input-wrap input::placeholder{color:#b9c9cf;opacity:1}
.bellmax-login .login-input-wrap input:hover{border-color:#b4d1cd;background:#12272e}
.bellmax-login .login-input-wrap input:focus{border-color:#71e8cb;box-shadow:0 0 0 3px rgba(46,224,172,.18);background:#12272e}
.bellmax-login .login-input-wrap input[readonly]{color:#d7e5e7;background:#0d2027}
.bellmax-login .login-input-wrap input:-webkit-autofill{-webkit-text-fill-color:var(--login-text);box-shadow:0 0 0 100px #102329 inset;caret-color:var(--login-text)}
.bellmax-login .login-input-wrap input:-webkit-autofill:focus{box-shadow:0 0 0 3px rgba(46,224,172,.18),0 0 0 100px #12272e inset}
.bellmax-login .login-password-wrap input{padding-right:58px}
.bellmax-login .login-password-toggle{position:absolute;right:9px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:7px;background:transparent;color:#d0dfe3;cursor:pointer;transition:background-color .16s ease,color .16s ease}
.bellmax-login .login-password-toggle:hover{background:rgba(255,255,255,.08);color:#fff}
.bellmax-login .login-password-toggle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6}
.bellmax-login .login-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:60px;padding:15px 20px;margin-top:28px;border:1px solid #4ee88d;border-radius:10px;background:linear-gradient(110deg,#007634,#007f38);box-shadow:0 7px 20px rgba(0,110,52,.2),inset 0 1px 0 rgba(172,255,198,.23);color:#fff;font-size:20px;font-weight:750;line-height:1.35;text-align:center;cursor:pointer;transition:box-shadow .18s ease,border-color .18s ease}
.bellmax-login .login-submit [data-login-submit-label]{min-width:0;overflow-wrap:anywhere}
.bellmax-login .login-submit>span[aria-hidden]{flex:none}
.bellmax-login .login-submit:hover:not(:disabled){background:linear-gradient(110deg,#007c37,#00833a);border-color:#a2ffc4;box-shadow:0 9px 24px rgba(0,155,76,.25),inset 0 1px 0 rgba(212,255,226,.3)}
.bellmax-login .login-submit:active:not(:disabled){background:linear-gradient(110deg,#006a30,#007333);box-shadow:inset 0 1px 3px rgba(0,0,0,.18)}
.bellmax-login .login-submit:disabled{cursor:wait;background:linear-gradient(110deg,#175c37,#1b633e);color:#fff;border-color:#709f86;box-shadow:none;filter:none}
.bellmax-login :is(.login-password-toggle,.login-submit,.login-change-email):focus-visible,.bellmax-login .login-card a:focus-visible{outline:3px solid #a6ffe0;outline-offset:4px}
.bellmax-login .login-change-email{display:block;margin:12px auto 0;padding:6px 12px;border:0;border-radius:5px;background:transparent;color:#bdece0;font:inherit;font-size:14px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.bellmax-login .login-change-email:hover{color:#fff}
.bellmax-login .login-change-email:disabled{opacity:.7;cursor:wait}
.bellmax-login .login-card>p{margin:16px 0 16px;text-align:center;font-size:14px;line-height:1.5}
.bellmax-login .login-card a{color:#bdece0;text-underline-offset:3px}
.bellmax-login .login-card a:hover{color:#fff}
.bellmax-login .login-card noscript{color:var(--login-muted);font-size:14px;line-height:1.5}
.bellmax-login .login-card footer{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:auto;padding-top:19px;border-top:1px solid #36504f;color:#d0dfdf;font-size:12px;line-height:1.6;text-align:center}
.bellmax-login .login-card footer svg{width:17px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.bellmax-login .login-footer-divider{display:inline-block;padding-inline:10px;color:#9db4b2}
.bellmax-login .login-field #login-mfa-help{margin:9px 0 0;color:var(--login-muted);font-size:12px;line-height:1.5}
@media(max-width:900px){.bellmax-login .login-shell{padding:28px 20px}.bellmax-login .login-shell::before{background-position:48% center}}
@media(max-width:600px){.bellmax-login .login-shell{padding:24px 16px}.bellmax-login .login-card{min-height:0;padding:30px 26px 25px;border-radius:28px}.bellmax-login .login-identity{margin-bottom:25px}.bellmax-login .login-logo-lockup{gap:15px}.bellmax-login .login-logo{width:230px;max-width:68%}.bellmax-login .login-logo-os{padding-left:15px;font-size:42px}.bellmax-login .login-platform{gap:9px;margin:19px 0 0;font-size:9px;letter-spacing:.18em;white-space:normal}.bellmax-login .login-platform::before,.bellmax-login .login-platform::after{min-width:12px}.bellmax-login .login-card-header h1{font-size:clamp(25px,6.2vw,33px)}.bellmax-login .login-card-header p{margin-top:11px;font-size:15px}.bellmax-login .login-card form{margin-top:26px}.bellmax-login .login-field label{font-size:14px}.bellmax-login .login-input-wrap input{height:55px;padding-left:52px;font-size:16px}.bellmax-login .login-input-wrap>span{left:16px}.bellmax-login .login-submit{min-height:58px;margin-top:26px;font-size:18px}.bellmax-login .login-card footer{margin-top:9px;padding-top:20px;font-size:11px}.bellmax-login .login-shell::before{background-position:43% center}}
@media(max-width:360px){.bellmax-login .login-card{padding-inline:20px}.bellmax-login .login-logo-lockup{gap:11px}.bellmax-login .login-logo-os{padding-left:11px;font-size:36px}.bellmax-login .login-platform{font-size:8px;letter-spacing:.12em}.bellmax-login .login-footer-divider{padding-inline:6px}}
@media(max-height:760px) and (min-width:601px){.bellmax-login .login-shell{padding-block:24px}.bellmax-login .login-card{min-height:680px;padding-top:30px;padding-bottom:25px}.bellmax-login .login-identity{margin-bottom:21px}.bellmax-login .login-logo{width:245px}.bellmax-login .login-logo-os{font-size:46px}.bellmax-login .login-platform{margin-top:17px}}
@media(prefers-reduced-motion:reduce){.bellmax-login :is(input,button,a){transition:none!important;animation:none!important}.bellmax-login .login-card::before{box-shadow:none}}
