/* Pantalla de acceso funcional inspirada en la referencia aprobada. */
body[data-screen="login"]{min-height:100vh;overflow:auto;background:#edf4f8}
body[data-screen="login"] #app{min-height:100vh;padding:6px}
body[data-screen="login"] #main.login-reference{display:grid;grid-template-columns:minmax(0,1.72fr) minmax(390px,1fr);width:100%;max-width:none;min-height:calc(100vh - 12px);margin:0;padding:0;overflow:hidden;border:1px solid #d7e2ed;border-radius:24px;background:#fff;box-shadow:0 16px 48px rgba(11,36,106,.12)}
.login-reference .login-story{position:relative;min-width:0;min-height:740px;padding:34px 36px 26px;overflow:hidden;background:#f7fbff;color:#082f67}
.login-story-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.login-story-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.91) 34%,rgba(255,255,255,.24) 70%,rgba(255,255,255,.06) 100%)}
.login-brand{position:relative;z-index:1;display:flex;align-items:center;gap:20px}.login-brand .logo{width:144px;height:116px;max-width:none;padding:0;margin:0;border:0;border-radius:0;background:transparent;object-fit:contain}.login-brand span{padding-left:18px;border-left:2px solid #1671e8;font-size:21px;line-height:1.25}
.login-story-copy{position:relative;z-index:1;width:min(450px,56%);margin-top:30px}.login-tag{display:inline-block;padding:7px 13px;border-radius:8px;background:#e6f4ff;color:#0757b8;font-size:13px;font-weight:800}.login-story-copy h1{margin:14px 0;color:#071f45;font-size:clamp(52px,5vw,78px);font-weight:900;line-height:.94;letter-spacing:0}.login-story-copy h1 em{color:#079c9b;font-style:normal}.login-story-copy p{margin:0;color:#173e70;font-size:17px;line-height:1.45}.login-story-copy strong{display:block;margin-top:25px;color:#0868e9;font-family:Georgia,serif;font-size:25px;font-style:italic;line-height:1.12;transform:rotate(-4deg)}
.login-journey{position:absolute;z-index:2;left:28px;right:28px;bottom:176px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:0;padding:16px 12px;list-style:none;border:1px solid rgba(202,218,234,.9);border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 8px 26px rgba(11,58,107,.08);backdrop-filter:blur(8px)}
.login-journey li{display:grid;grid-template-columns:30px 36px 1fr;grid-template-rows:auto auto;align-items:center;min-width:0;padding:0 8px;color:#0b3a6b;border-right:1px solid #dbe6f1}.login-journey li:last-child{border-right:0}.login-journey li>span{grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#0c9b86;color:#fff;font-weight:800}.login-journey li:nth-child(2)>span{background:#0868e9}.login-journey li:nth-child(3)>span{background:#7a24dc}.login-journey li:nth-child(4)>span{background:#ef8616}.login-journey li:nth-child(5)>span{background:#ef3340}.login-journey .icon{grid-row:1/3;width:28px;height:28px;padding:4px;border-radius:8px;background:#eaf4ff;color:#0868e9}.login-journey b{font-size:13px}.login-journey small{font-size:11px;color:#58718f}
.login-benefits{position:absolute;z-index:2;left:38px;right:38px;bottom:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.login-benefits article{display:grid;grid-template-columns:42px 1fr;gap:4px 10px;padding-right:10px;border-right:1px solid #cfdeeb;color:#0b3a6b}.login-benefits article:last-child{border-right:0}.login-benefits .icon{grid-row:1/3;width:42px;height:42px;padding:9px;border-radius:12px;background:#dff4ff;color:#0868e9}.login-benefits article:nth-child(2) .icon{background:#efe4ff;color:#7a24dc}.login-benefits article:nth-child(3) .icon{background:#e8f8de;color:#4fa800}.login-benefits article:nth-child(4) .icon{background:#ffe7e8;color:#ef3340}.login-benefits b{font-size:13px;line-height:1.15}.login-benefits small{font-size:11px;color:#58718f;line-height:1.25}
.login-reference .login-form.work-zone{position:relative;min-width:0;padding:28px 7% 24px;background:#f8fbff}.login-welcome{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border-radius:999px;background:#e9f4ff;color:#1558a0;font-size:13px}.login-welcome .icon{width:18px;height:18px;color:#0868e9}.login-reference .login-card{margin:30px 0 0;padding:34px 34px 26px;border-radius:26px;background:#fff;box-shadow:0 10px 34px rgba(13,58,116,.07)}
.login-reference .login-card h1{margin:0;color:#071f45;font-family:'Inter','Atkinson Hyperlegible',Arial,sans-serif;font-size:clamp(36px,3.35vw,50px);font-weight:900;line-height:1.02;letter-spacing:0}.login-reference .login-card h1 em{color:#0868f7;font-style:normal}.login-reference .login-intro{margin:16px 0 24px;color:#49658c;font-size:16px;line-height:1.4}.login-reference #login-form{margin:0}.login-reference #login-form label{margin:0 0 15px;color:#092652;font-size:14px;font-weight:800}
.login-reference .login-input{display:flex;align-items:center;width:100%;height:52px;margin-top:7px;padding:0 14px;border:1px solid #c6d5e6;border-radius:10px;background:#f9fbfd;color:#8298b6;box-shadow:inset 0 1px 2px rgba(11,36,106,.03)}.login-reference .login-input:focus-within{border-color:#0868f7;box-shadow:0 0 0 3px rgba(8,104,247,.14)}.login-reference .login-input>.icon{width:22px;height:22px}.login-reference .login-input input{min-width:0;height:100%;margin:0;padding:0 12px;border:0;border-radius:0;background:transparent;color:#0a1e3e;font-size:15px;outline:0}.login-reference .password-toggle{display:grid;place-items:center;width:40px;height:100%;min-height:0;padding:0;border:0;background:transparent;color:#6c7d96}.login-reference .password-toggle .icon{width:22px}
.login-reference .forgot-password{display:block;margin:-3px 0 15px;color:#0567e8;font-size:14px;text-align:right;text-decoration:underline}.login-reference .login-submit{width:100%;min-height:52px;margin:0;border-radius:10px;background:#0868e9;font-size:15px;box-shadow:0 5px 13px rgba(8,104,233,.22)}.login-reference .form-error{min-height:18px;margin:0;color:#b4234d;font-size:12px}.login-reference .login-divider{display:flex;align-items:center;gap:10px;margin:4px 0 14px;color:#0b3a6b;font-size:13px;font-weight:700}.login-reference .login-divider::before,.login-reference .login-divider::after{content:'';height:1px;flex:1;background:#cbd7e5}
.login-reference .login-provider{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:44px;margin:0 0 10px;padding:0 12px;border:1px solid #cbd8e7;border-radius:9px;background:#fff;color:#071f45;font-size:14px;font-weight:800;box-shadow:0 3px 8px rgba(11,36,106,.06)}.login-reference .login-provider img{width:24px;height:24px;object-fit:contain}.login-reference .demo{margin:8px 0 0;padding:0;border:1px solid #cbd8e7;border-radius:9px;background:#fff;font-size:13px}.login-reference .demo summary{padding:11px 14px;color:#164f9b;font-weight:500}.login-reference .demo p{margin:0;padding:9px 12px;border-radius:0 0 9px 9px;background:#eff5fc;color:#17395f;font-size:12px;line-height:1.55}
.login-form blockquote{margin:24px 0 14px;padding:18px 20px;border:0;border-radius:14px;background:#eaf4ff;color:#1558a0;font-family:Georgia,serif;font-size:16px;font-style:italic}.login-form blockquote cite{display:block;margin-top:8px;text-align:right;font-family:inherit;font-size:12px;font-style:normal}.login-country{margin:0;color:#1558a0;font-size:13px}.login-country::before{content:'';display:inline-block;width:48px;height:2px;margin-right:12px;background:#0868e9;vertical-align:middle}body[data-screen="login"] .access-fab{display:none}
@media(max-width:1050px){.login-reference .login-story{min-height:690px}.login-benefits{grid-template-columns:1fr 1fr}.login-benefits article:nth-child(2){border-right:0}.login-journey{bottom:224px}.login-journey li{grid-template-columns:28px 1fr}.login-journey .icon{display:none}.login-reference .login-form.work-zone{padding-inline:5%}}
@media(max-width:760px){body[data-screen="login"] #app{padding:0}body[data-screen="login"] #main.login-reference{display:block;border:0;border-radius:0;box-shadow:none}.login-reference .login-story{min-height:560px;padding:22px 20px}.login-story-photo{object-position:62% center}.login-story-shade{background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.76) 66%,rgba(255,255,255,.15))}.login-brand .logo{width:105px;height:82px}.login-brand span{font-size:15px}.login-story-copy{width:76%;margin-top:20px}.login-story-copy h1{font-size:48px}.login-story-copy p{font-size:14px}.login-story-copy strong{font-size:20px}.login-journey{left:14px;right:14px;bottom:118px;grid-template-columns:repeat(5,112px);overflow-x:auto}.login-benefits{display:none}.login-reference .login-form.work-zone{padding:18px;background:#f7fbff}.login-reference .login-card{margin:0 auto;padding:28px 22px 22px;border:1px solid #d7e2ed;border-radius:20px}.login-welcome{margin:0 0 16px}.login-reference .login-card h1{font-size:36px}.login-form blockquote{font-size:14px}}
