/* Acceso a pantalla completa, independiente de los módulos. */
.adj-login{margin:0;background:#fff;color:#0f2042;font-family:'Plus Jakarta Sans','Segoe UI',sans-serif}
.adj-login *{box-sizing:border-box}
.login-layout{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.login-brand{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#0f2042 0%,#013d8d 75%,#075aad 100%);color:#fff;padding:clamp(32px,5vw,80px);display:flex;flex-direction:column;justify-content:space-between;gap:64px}
.login-brand::before,.login-brand::after{content:'';position:absolute;width:560px;height:560px;border:1px solid #ffffff12;border-radius:50%;z-index:-1;pointer-events:none;right:-280px;bottom:-160px}
.login-brand::after{width:740px;height:740px;right:-370px;bottom:-250px}
.login-logo{width:235px;max-width:100%;height:auto;object-fit:contain;align-self:flex-start}
.login-brand-copy{max-width:500px;padding:20px 0}
.login-eyebrow{font-size:14px;font-weight:600;letter-spacing:.03em;color:#bcd9ff}
.login-brand h1{color:#fff;font-size:clamp(38px,4.1vw,62px);line-height:1.14;letter-spacing:-.045em;margin:22px 0;font-weight:700}
.login-brand-copy p{color:#deebff;font-size:17px;line-height:1.8;margin:0;max-width:320px}
.login-capabilities{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.login-capabilities span{border:1px solid #ffffff30;border-radius:30px;padding:9px 16px;font-size:13px;background:#ffffff08;color:#edf5ff}
.login-brand-foot{font-size:12px;color:#c7ddf8;line-height:1.6}
.login-access{padding:64px clamp(28px,5vw,80px) 24px;display:flex;flex-direction:column;min-width:0;background:linear-gradient(155deg,#f6f9fe,#fff 55%)}
.login-form-wrap{width:100%;max-width:410px;margin:auto;padding:28px 0 48px}
.login-access-icon{display:flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:16px;background:#eaf1fc;color:#013d8d;margin-bottom:28px}
.login-access-icon svg{width:26px;height:26px}
.login-section-label{font-size:12px;color:#52657e;font-weight:600}
.login-access h2{font-size:32px;color:#0f2042;letter-spacing:-.035em;margin:10px 0 12px;font-weight:700}
.login-description{font-size:14px;color:#66768c;line-height:1.7;margin:0 0 32px}
.login-field{margin-bottom:24px}
.login-field label{display:block;font-size:13px;font-weight:600;color:#253954;margin-bottom:9px}
.login-field input{display:block;width:100%;min-width:0;height:54px;font-size:16px;color:#0f2042;border:1px solid #d3deec;border-radius:12px;background:#fff;padding:14px 16px;transition:border-color .15s,box-shadow .15s}
.login-field input::placeholder{color:#8391a5;font-size:14px}
.login-field input:focus{outline:none;border-color:#013d8d;box-shadow:0 0 0 4px #013d8d12}
.login-password{position:relative}.login-password input{padding-right:60px}
.login-password-toggle{position:absolute;right:5px;top:5px;height:44px;width:44px;background:transparent;border:0;border-radius:9px;display:grid;place-items:center;color:#66768c;cursor:pointer}
.login-password-toggle svg{width:22px;height:22px}.login-password-toggle:hover,.login-password-toggle[aria-pressed=true]{background:#eaf1fc;color:#013d8d}
.login-submit{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;min-height:54px;border:0;border-radius:12px;background:#013d8d;color:#fff;font-weight:600;font-size:15px;cursor:pointer;margin-top:32px;box-shadow:0 8px 18px #013d8d1a}
.login-submit svg{width:20px;height:20px}.login-submit:hover{background:#09336b}.login-submit:disabled{opacity:.65;cursor:wait}
.login-password-toggle:focus-visible,.login-submit:focus-visible{outline:3px solid #4386dd;outline-offset:3px}
.login-footer{text-align:center;font-size:11px;line-height:1.8;color:#728197;margin-top:24px}.login-footer span{display:block;font-size:10px;margin-top:3px}
@media(max-width:900px){.login-layout{grid-template-columns:1fr}.login-brand{padding:calc(28px + env(safe-area-inset-top)) 28px 30px;gap:24px}.login-logo{width:180px}.login-brand-copy{padding:0;max-width:none}.login-brand h1{font-size:30px;margin:10px 0 12px;letter-spacing:-.035em}.login-brand h1 br{display:none}.login-eyebrow{font-size:12px}.login-brand-copy p{font-size:13px;max-width:none;line-height:1.6}.login-capabilities,.login-brand-foot{display:none}.login-access{padding:30px 28px calc(18px + env(safe-area-inset-bottom))}.login-form-wrap{max-width:440px;padding:0 0 22px}.login-access-icon{display:none}.login-access h2{font-size:27px}.login-description{margin-bottom:26px}.login-field{margin-bottom:20px}.login-submit{margin-top:26px}.login-footer{margin-top:auto;padding-top:20px}.login-layout{grid-template-rows:auto 1fr}}
@media(max-width:360px){.login-brand{padding-left:22px;padding-right:22px}.login-access{padding-left:22px;padding-right:22px}.login-brand h1{font-size:27px}}
@media(max-height:550px) and (max-width:900px){.login-brand{padding-top:18px;padding-bottom:18px;gap:16px}.login-brand-copy h1{font-size:24px}.login-form-wrap{margin:0 auto}.login-access{padding-top:24px}}
