/* Login may also be rendered after routing/expired-session handling, when the
   body's initial route class is missing. The actual form is authoritative. */
body.partner-login-page,body:has(.partner-login){background:#f4f6fa;color:#25334b}
body.partner-login-page #main,body:has(.partner-login) #main{display:block;min-height:100vh;height:auto}
body.partner-login-page #content,body:has(.partner-login) #content{display:block;float:none;margin:0;padding:0;width:100%}
.partner-ui.partner-login{max-width:1060px;margin:0 auto;padding:48px 28px 24px;background:transparent}
.partner-ui .partner-login-panel{display:grid;grid-template-columns:1fr 1.05fr;min-height:600px;background:#fff;border:1px solid #e2e9f3;border-radius:20px;overflow:hidden;box-shadow:0 20px 60px #24477609}
.partner-ui .partner-login-story{display:flex;flex-direction:column;position:relative;overflow:hidden;padding:40px;background:linear-gradient(145deg,#174d95,#183866 70%,#1d3152);color:#fff}
.partner-ui .partner-login-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:1.8px;color:#8ca5c5;margin:0}
.partner-ui .partner-login-story>.partner-login-eyebrow{color:#a9c5ec}
.partner-ui .partner-login-art{display:flex;align-items:center;justify-content:center;position:relative;width:125px;height:125px;margin:38px 0 28px;border:1px solid #ffffff1f;border-radius:28px;background:#ffffff0a;transform:rotate(-8deg)}
.partner-ui .partner-login-art>.partner-icon{width:74px;height:74px;color:#99bff3;stroke-width:1.2}
.partner-ui .partner-login-art-dot{position:absolute;right:-7px;top:18px;width:15px;height:15px;border:4px solid #26518c;border-radius:50%;background:#8bdeca}
.partner-ui .partner-login-story h2{font-size:31px;font-weight:700;line-height:1.25;letter-spacing:-.6px;margin:0 0 18px;color:#fff}
.partner-ui .partner-login-story>p{font-size:13px;line-height:1.8;color:#b2c7e3;max-width:325px;margin:0 0 26px}
.partner-ui .partner-login-benefits{list-style:none;padding:0;margin:0 0 35px}
.partner-ui .partner-login-benefits li{display:flex;align-items:center;gap:11px;font-size:12px;color:#dae7f8;margin:0 0 13px;line-height:1.5}
.partner-ui .partner-login-benefits li>span{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:7px;background:#ffffff0d;color:#a6ccff;flex-shrink:0}
.partner-ui .partner-login-benefits .partner-icon{width:16px;height:16px}
.partner-ui .partner-login-story-footer{font-size:9px;letter-spacing:1.5px;color:#88a5cd;margin-top:auto;padding-top:20px;border-top:1px solid #ffffff15}
.partner-ui .partner-login-form-panel{padding:59px 48px 38px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.partner-ui .partner-login-heading{margin-bottom:28px}
.partner-ui .partner-login-heading h1{font-size:28px;font-weight:700;letter-spacing:-.5px;color:#243753;margin:10px 0}
.partner-ui .partner-login-heading p{font-size:12px;line-height:1.7;color:#8491a5;margin:0}
.partner-ui .partner-login-field{margin-bottom:20px}
.partner-ui .partner-login-field .form-label{display:block;font-size:12px;font-weight:600;color:#4a5d78;margin:0 0 8px}
.partner-ui .partner-login-field .form-control{display:block;width:100%;height:46px;min-width:0;padding:12px 14px;border:1px solid #dce4f0;border-radius:8px;background:#fbfcfe;color:#273c5b;font-size:13px;line-height:1.5;text-align:left;box-shadow:none}
.partner-ui .partner-login-field .form-control::placeholder{color:#9ba9bd;opacity:1}
.partner-ui .partner-login-field .form-control:focus{background:#fff;border-color:#80abeb;outline:0;box-shadow:0 0 0 3px #1764d815}
.partner-ui .partner-password-wrap{position:relative}
.partner-ui .partner-password-wrap .form-control{padding-right:48px}
.partner-ui .partner-password-toggle{display:flex;align-items:center;justify-content:center;position:absolute;right:4px;top:4px;width:38px;height:38px;margin:0;border:0;background:transparent;color:#91a2bb;border-radius:6px;cursor:pointer;padding:8px}
.partner-ui .partner-password-toggle:hover{background:#edf3fb;color:#38649c}
.partner-ui .partner-password-toggle .partner-icon{width:18px;height:18px}
.partner-ui .partner-password-visible{display:none}.partner-ui .partner-password-toggle.is-visible .partner-password-visible{display:inline-flex}.partner-ui .partner-password-toggle.is-visible .partner-password-hidden{display:none}
.partner-ui .partner-login-remember{display:flex;align-items:center;gap:9px;min-height:20px;padding:0;margin:3px 0 25px}
.partner-ui .partner-login-remember .form-check-input{position:static;float:none;margin:0;width:16px;height:16px;cursor:pointer;border-color:#cbd7e8;border-radius:4px;flex-shrink:0}
.partner-ui .partner-login-remember .form-check-label{color:#74849b;font-size:12px;cursor:pointer}
.partner-ui .partner-login-submit{display:block;width:100%;height:46px;padding:12px;font-size:13px;border-radius:8px;line-height:1.4}
.partner-ui .partner-login-note{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:23px;color:#a3afc0;font-size:10px}
.partner-ui .partner-login-note .partner-icon{width:13px;height:13px}
.partner-ui .partner-login-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:23px;color:#98a5b8;font-size:10px}
.partner-ui .partner-login-footer a{color:#7a8fae}.partner-ui .partner-login-footer a:hover{color:#1764d8}
[data-partner-theme=dark] body.partner-login-page,[data-partner-theme=dark] body:has(.partner-login){background:#111a29;color:#d9e3f2}
[data-partner-theme=dark] .partner-ui .partner-login-panel{background:#182538;border-color:#2c3c54;box-shadow:0 20px 60px #0002}
[data-partner-theme=dark] .partner-ui .partner-login-story{background:linear-gradient(145deg,#203e65,#1b3152 70%,#1a2a43)}
[data-partner-theme=dark] .partner-ui .partner-login-heading h1{color:#e0e9f7}
[data-partner-theme=dark] .partner-ui .partner-login-heading p,[data-partner-theme=dark] .partner-ui .partner-login-remember .form-check-label{color:#95a9c6}
[data-partner-theme=dark] .partner-ui .partner-login-field .form-label{color:#bacce5}
[data-partner-theme=dark] .partner-ui .partner-login-field .form-control{background:#202f45;color:#e0e9f7;border-color:#354a67}
[data-partner-theme=dark] .partner-ui .partner-login-field .form-control::placeholder{color:#8297b5}
[data-partner-theme=dark] .partner-ui .partner-login-field .form-control:focus{border-color:#6599e4;box-shadow:0 0 0 3px #6299ed18}
[data-partner-theme=dark] .partner-ui .partner-password-toggle:hover{background:#2b405d;color:#c2dbfc}
[data-partner-theme=dark] .partner-ui .partner-login-note,[data-partner-theme=dark] .partner-ui .partner-login-footer{color:#7c93b3}
@media(min-width:992px) and (min-height:850px){.partner-ui.partner-login{padding-top:75px}}
@media(max-width:767px){.partner-ui.partner-login{padding:28px 18px 20px;max-width:500px}.partner-ui .partner-login-panel{display:block;min-height:0;border-radius:15px}.partner-ui .partner-login-story{padding:25px 28px}.partner-ui .partner-login-story h2{font-size:23px;margin:14px 0 0}.partner-ui .partner-login-story h2 br{display:none}.partner-ui .partner-login-art,.partner-ui .partner-login-story>p,.partner-ui .partner-login-benefits,.partner-ui .partner-login-story-footer{display:none}.partner-ui .partner-login-form-panel{padding:30px 28px}.partner-ui .partner-login-heading{margin-bottom:24px}.partner-ui .partner-login-heading h1{font-size:25px}.partner-ui .partner-login-field{margin-bottom:18px}.partner-ui .partner-login-field .form-control{font-size:16px}.partner-ui .partner-login-footer{font-size:9px}}
@media(max-width:359px){.partner-ui .partner-login-form-panel,.partner-ui .partner-login-story{padding-left:20px;padding-right:20px}}
