:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#214866;background:#f4f8f8;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100svh;display:grid;place-items:center;padding:32px;background:radial-gradient(ellipse at 4% 15%,#dceeea 0,transparent 52%),#f4f8f8}.login-shell{width:min(1320px,100%);min-height:680px;display:grid;grid-template-columns:minmax(0,756px) minmax(340px,1fr);background:white;border:1px solid #d8e8e4;border-radius:26px;overflow:hidden;box-shadow:0 24px 80px #244b6110}.brand-panel{position:relative;padding:54px 48px 38px;background:linear-gradient(150deg,#e8f5f1,#d3eae6);display:flex;flex-direction:column;overflow:hidden}.brand-panel:after{content:"";position:absolute;width:480px;height:480px;border:1px solid #85b8b83d;border-radius:50%;right:-240px;bottom:-185px;box-shadow:0 0 0 55px #ffffff16,0 0 0 110px #ffffff12;pointer-events:none}.brand-logo{width:660px;max-width:100%;height:auto;object-fit:contain;object-position:left}.brand-copy{margin:auto 0;padding:54px 0;position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:700;color:#538385;margin:0 0 14px}.brand-copy h1{font-size:clamp(30px,3vw,39px);line-height:1.2;letter-spacing:-1.4px;font-weight:600;margin:0 0 22px;color:#214866}.brand-copy p{font-size:16px;line-height:1.6;max-width:320px;margin:0;color:#57757f}.brand-footer{display:flex;align-items:center;gap:9px;font-size:11px;color:#507478;z-index:1}.brand-dot{width:7px;height:7px;border-radius:50%;background:#519e91}.form-panel{padding:56px 58px 26px;display:flex;flex-direction:column;justify-content:center}.form-content{margin:auto 0}.welcome-icon{display:grid;place-items:center;background:#f0f7f5;border:1px solid #e0eeea;border-radius:14px;width:48px;height:48px;margin-bottom:28px;color:#598b90}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}h2{font-size:29px;letter-spacing:-.8px;margin:0 0 10px;font-weight:600}.description{font-size:14px;color:#73868d;margin:0 0 30px;line-height:1.5}label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}input{display:block;width:100%;height:48px;padding:0 14px;border:1px solid #cfdfdd;border-radius:10px;color:#4b8c9b;background:white;font:400 15px inherit;margin-top:8px;font-family:inherit;font-size:15px;outline:none}input::placeholder{color:#8fa8ac;font-size:14px}input:focus{border-color:#6d9ca4;box-shadow:0 0 0 3px #88b7b521}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #83adb7;outline-offset:3px}.password-field{position:relative;display:block}.password-field input{padding-right:50px}.password-field button{position:absolute;right:7px;top:6px;height:36px;width:36px;border:0;border-radius:8px;background:transparent;color:#6b8f98;display:grid;place-items:center}.password-field button:hover{background:#edf5f3}.eye-slash{display:none}[aria-pressed=true] .eye-slash{display:block}#login-status{font-size:13px;color:#9e4949;line-height:1.5;margin:0 0 16px}#login-status:empty{display:none}.submit{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;height:48px;border:1px solid #a9c6c9;border-radius:10px;background:#e8f1f1;color:#214866;font-size:14px;font-weight:600;transition:background .15s}.submit:hover{background:#dbeaea}.submit:disabled{opacity:.65;cursor:wait}.access-help{font-size:12px;line-height:1.6;color:#839499;margin:24px auto 0;max-width:280px;text-align:center}#continue-session{display:block;font-size:13px;text-align:center;color:#467d86;margin-top:18px;text-underline-offset:4px}.form-panel footer{font-size:10px;color:#9aa9ad;letter-spacing:.3px;text-align:center;padding-top:34px}.form-panel footer span{padding:0 6px}[hidden]{display:none!important}@media(max-width:760px){body{padding:16px}.login-shell{grid-template-columns:1fr;min-height:0;max-width:480px}.brand-panel{padding:26px 30px;background:#e9f4f0;align-items:center}.brand-logo{width:460px}.brand-copy,.brand-footer{display:none}.form-panel{padding:30px}.welcome-icon{display:none}.form-panel footer{padding-top:28px}}@media(max-height:760px) and (min-width:761px){body{padding:20px}.login-shell{min-height:600px}.brand-panel{padding:32px 42px}.form-panel{padding:32px 48px 24px}.brand-copy{padding:32px 0}.welcome-icon{margin-bottom:20px}}
