/* Tenant-only animated divider. The platform sign-in keeps its own layout. */
.sky-login:not(.platform-login) .brand-panel::before,
.sky-login:not(.platform-login) .brand-panel::after{
 content:"";position:absolute;pointer-events:none;top:-10%;height:120%;
 border-radius:65% 0 0 45% / 48% 0 0 52%;transform-origin:right center;
}
.sky-login:not(.platform-login) .brand-panel::before{
 width:108px;right:-66px;z-index:1;
 background:linear-gradient(180deg,#1d7cf53b,#55d7ff85 48%,#0d6be541);
 border-left:1px solid #83e6ff99;
 box-shadow:-9px 0 30px #28beff26;
 animation:sky-divider-glow 14s ease-in-out infinite alternate;
}
.sky-login:not(.platform-login) .brand-panel::after{
 width:98px;right:-70px;z-index:2;
 background:linear-gradient(180deg,#f1f8ff,#e9f4ff 55%,#f3f9ff);
 border-left:2px solid #82dfff;
 box-shadow:-3px 0 12px #36bdfc40;
 animation:sky-divider-wave 10s ease-in-out infinite alternate;
}
@keyframes sky-divider-wave{
 from{transform:translateX(0) scaleX(1);border-radius:65% 0 0 45% / 48% 0 0 52%}
 to{transform:translateX(7px) scaleX(.92);border-radius:42% 0 0 72% / 60% 0 0 40%}
}
@keyframes sky-divider-glow{
 from{transform:translateX(2px) scaleX(.96);opacity:.65}
 to{transform:translateX(-5px) scaleX(1.04);opacity:1}
}
@media(max-width:740px){
 .sky-login:not(.platform-login) .brand-panel::before,
 .sky-login:not(.platform-login) .brand-panel::after{display:none}
}
@font-face{font-family:Skybridge;src:url('/assets/fonts/MontserratLight.woff2') format('woff2');font-weight:300 500;font-display:swap}
:root{--login-navy:#071b45;--login-blue:#0862ed;--login-cyan:#45cef5;--login-muted:#65728a;--login-border:#dce5f0}
*{box-sizing:border-box}.sky-login{margin:0;color:var(--login-navy);background:#eff7ff;font-family:Skybridge,'Trebuchet MS',sans-serif;line-height:1.5}.login-layout{display:grid;grid-template-columns:51% 49%;min-height:100svh}.brand-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,#020e29,#083c91);min-height:100%;isolation:isolate}.bridge-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;z-index:-1;animation:bridge-drift 24s ease-in-out infinite alternate}.brand-content{padding:7.5vh clamp(40px,8vw,135px) 30px;min-height:100%;display:flex;flex-direction:column;color:white;background:linear-gradient(180deg,rgba(0,12,40,.13),transparent 60%)}.brand-logo{width:210px;height:auto;border-radius:16px;box-shadow:0 12px 40px #00132b30}.brand-message{margin-top:clamp(50px,10vh,110px);margin-right:-85px}.brand-message h1{font-size:clamp(32px,3.5vw,60px);font-weight:800;letter-spacing:-1.8px;line-height:1.16;margin:0 0 30px;text-shadow:0 2px 18px #03143255}.brand-message h1 span{color:var(--login-cyan)}.brand-message p{font-size:clamp(17px,1.6vw,25px);margin:0;max-width:450px}.brand-caption{margin:auto 0 0;padding-top:220px;font-size:10px;letter-spacing:2.2px;color:#d1ebff}.form-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:54px clamp(28px,5vw,100px) 24px;background:radial-gradient(ellipse at 5% 60%,#d9ecff,transparent 65%),linear-gradient(135deg,#f1f8ff,#f8fbff);min-width:0}.login-card{width:100%;max-width:560px;background:rgba(255,255,255,.94);border:1px solid #d7e7fa;border-radius:28px;padding:28px clamp(26px,3vw,48px) 24px;box-shadow:0 25px 65px #1264af19,0 2px 8px #41698e07,inset 0 0 0 1px #fff;animation:card-arrive .65s cubic-bezier(.2,.75,.25,1) both}.card-logo{display:block;width:186px;height:auto;margin:0 auto 14px}.card-heading{text-align:center;margin-bottom:28px}.card-heading h2{font-family:'Trebuchet MS',sans-serif;font-size:clamp(30px,2.6vw,42px);line-height:1.15;letter-spacing:-1.2px;margin:0 0 10px;font-weight:800}.card-heading p{color:var(--login-muted);font-size:16px;margin:0}.field{margin-top:22px}.field label{display:block;font-family:'Trebuchet MS',sans-serif;font-weight:700;margin-bottom:8px;font-size:15px}.input-shell{display:flex;align-items:center;min-height:58px;background:#fbfcfe;border:1px solid var(--login-border);border-radius:12px;transition:border-color .2s,box-shadow .2s}.input-shell:focus-within{border-color:#4b9aff;box-shadow:0 0 0 4px #2084ff14,0 4px 15px #2783ea0d}.input-shell>i{color:#8291aa;font-size:20px;width:50px;text-align:center;flex-shrink:0}.input-shell input{width:100%;min-width:0;border:0;background:transparent;outline:none;font:inherit;font-size:16px;padding:16px 12px 16px 0;color:var(--login-navy);border-radius:12px}.input-shell input::placeholder{color:#7e8a9e;opacity:1}.password-toggle{flex-shrink:0;border:0;background:transparent;color:#687d98;font-size:18px;cursor:pointer;width:46px;align-self:stretch;border-radius:10px}.password-toggle:hover{color:var(--login-blue);background:#edf5ff}.help-row{display:flex;justify-content:flex-end;margin:17px 0 23px;font-size:13px}a{color:#075acb;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}.help-row a{text-decoration:none}.help-row a:hover{text-decoration:underline}.sign-in{display:flex;justify-content:center;align-items:center;gap:16px;width:100%;min-height:58px;border:0;border-radius:12px;color:#fff;background:linear-gradient(105deg,#1456f5,#087bdd 70%,#008ace);box-shadow:0 9px 18px #096dee24;cursor:pointer;font:700 18px 'Trebuchet MS',sans-serif;transition:transform .2s,box-shadow .2s}.sign-in:hover{transform:translateY(-2px);box-shadow:0 12px 24px #096dee35}.sign-in:active{transform:translateY(0) scale(.99)}.sign-in:disabled{cursor:wait;opacity:.8;transform:none}.submit-status{font-size:13px;text-align:center;color:var(--login-muted);margin:8px 0;min-height:0}.submit-status:empty{display:none}.account-help{font-size:13px;text-align:center;margin:25px 0}.account-help summary{cursor:pointer;color:#075acb;list-style-position:inside;padding:5px}.account-help p{text-align:left;background:#f0f6fe;border-radius:10px;padding:14px;line-height:1.7;color:#42526f}.security-note{display:flex;gap:10px;justify-content:center;align-items:center;border-top:1px solid #e6edf6;padding-top:18px;color:#61748c;font-size:11px}.login-copyright{font-size:11px;color:#63758e;margin-top:30px;text-align:center}.login-error{display:flex;gap:10px;padding:13px 15px;border:1px solid #efb8b8;border-radius:10px;background:#fff3f3;color:#8f2525;font-size:13px}.login-error i{margin-top:3px}.caps-warning{color:#83571b;font-size:12px;margin:7px 0 0}.skip-link{position:fixed;top:10px;left:10px;z-index:10;background:white;padding:12px;border-radius:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}:is(a,button,summary):focus-visible{outline:3px solid #1779e8;outline-offset:4px}input:focus-visible{outline:none}[hidden]{display:none!important}@keyframes card-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes bridge-drift{from{transform:scale(1)}to{transform:scale(1.035) translateY(-.5%)}}@media(min-width:1500px){.login-card{padding-top:32px;padding-bottom:28px}.card-logo{width:210px;margin-bottom:24px}.card-heading{margin-bottom:30px}.field{margin-top:24px}.account-help{margin:27px 0}}@media(max-width:1000px){.brand-content{padding:50px 35px 30px}.brand-message{margin-right:0}.brand-message h1{font-size:36px;letter-spacing:-1px}.brand-logo{width:170px}.form-panel{padding:35px 25px 24px}.card-heading p{font-size:14px}.login-card{padding:25px}.security-note{font-size:10px}}@media(max-width:740px){.login-layout{display:block}.brand-panel{display:none}.form-panel{min-height:100svh;padding:28px 18px 18px}.login-card{max-width:480px;padding:26px 24px;border-radius:24px}.card-logo{width:165px;margin-bottom:18px}.card-heading h2{font-size:32px}.card-heading{margin-bottom:26px}.login-copyright{margin-top:24px}.security-note{font-size:11px}}@media(max-width:360px){.form-panel{padding:16px 12px}.login-card{padding:22px 18px}.card-heading h2{font-size:29px}.security-note{font-size:10px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
