.login-page{min-height:100vh;position:relative;overflow:hidden;background:var(--bg);isolation:isolate}
.login-page:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 92%);z-index:-1}
.login-glow{position:absolute;width:460px;height:460px;border-radius:50%;filter:blur(110px);opacity:.18;pointer-events:none;z-index:-1}.login-glow.one{background:var(--blue);left:-180px;top:8%}.login-glow.two{background:var(--violet);right:-190px;bottom:-100px}
.login-shell{width:min(1240px,92vw);min-height:100vh;margin:auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);gap:70px;align-items:center;padding:42px 0}
.login-brand{display:inline-flex;align-items:center;gap:10px;font-size:20px;font-weight:950;letter-spacing:-.7px;margin-bottom:32px}.login-brand-mark{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--violet));box-shadow:0 0 30px rgba(94,231,255,.24);font-size:17px}.login-brand span{color:var(--violet)}
.login-copy{max-width:650px}.login-copy .eyebrow{margin-bottom:4px}.login-copy h1{font-size:clamp(44px,5.3vw,76px);line-height:.98;letter-spacing:-4px;margin:20px 0 24px}.login-copy .lead{max-width:610px;margin-bottom:28px}.login-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:620px}.login-point{display:flex;gap:11px;align-items:flex-start;padding:14px 15px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.035);backdrop-filter:blur(12px)}.login-point-icon{width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:9px;background:rgba(94,231,255,.08);border:1px solid rgba(94,231,255,.15);color:#9ff2ff}.login-point b{display:block;font-size:12px;margin-bottom:3px}.login-point small{color:#8995ae;font-size:11px;line-height:1.45}
.login-console{margin-top:25px;max-width:620px;padding:15px;border:1px solid rgba(94,231,255,.15);border-radius:18px;background:linear-gradient(145deg,rgba(17,25,48,.75),rgba(6,10,23,.72));box-shadow:0 20px 60px rgba(0,0,0,.22);backdrop-filter:blur(18px)}.console-top{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#8d9ab4;letter-spacing:.8px}.console-live{color:var(--green);font-weight:900}.console-live:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green);margin-right:6px}.console-row{display:grid;grid-template-columns:1fr auto;gap:15px;margin-top:13px;font-size:11px;color:#aab6cf}.console-bar{grid-column:1/-1;height:6px;border-radius:20px;background:#19223a;overflow:hidden;margin-top:-8px}.console-bar i{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,var(--blue),var(--violet),var(--pink))}
.login-panel{position:relative}.login-card-pro{position:relative;padding:32px;border:1px solid rgba(255,255,255,.13);border-radius:26px;background:linear-gradient(145deg,rgba(18,25,49,.92),rgba(7,11,24,.90));box-shadow:0 30px 90px rgba(0,0,0,.42),0 0 70px rgba(94,231,255,.06);backdrop-filter:blur(24px);overflow:hidden}.login-card-pro:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--blue),var(--violet),var(--pink))}.login-card-head{margin-bottom:24px}.login-card-head h2{margin:15px 0 7px;font-size:30px;letter-spacing:-1.2px}.login-card-head p{margin:0;color:#8e9ab3;font-size:13px;line-height:1.55}.login-secure{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;background:rgba(101,243,181,.06);border:1px solid rgba(101,243,181,.16);color:#b7f4d9;font-size:10px;font-weight:900;letter-spacing:.4px}
.login-form{margin:0}.login-form label.field-label{display:block;margin:16px 0 7px;color:#c0cce0;font-size:12px;font-weight:800}.field-wrap{position:relative}.login-form input[type=email],.login-form input[type=password],.login-form input[type=text]{width:100%;height:50px;padding:0 14px;border:1px solid #2b3f5c;border-radius:13px;background:rgba(4,9,19,.72);color:#f2f7ff;outline:none;transition:.2s}.login-form input::placeholder{color:#637590}.login-form input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(94,231,255,.08),0 0 24px rgba(94,231,255,.05)}.password-toggle{position:absolute;right:8px;top:7px;height:36px;padding:0 10px;border:1px solid #293e5c;border-radius:9px;background:#101a2d;color:#9eb0c8;font-size:11px;font-weight:800;cursor:pointer}.password-toggle:hover{color:#fff;border-color:#456486}.remember-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 20px}.remember-pro{display:flex!important;align-items:center!important;gap:9px!important;margin:0!important;color:#9baac0!important;font-size:11px!important;font-weight:650!important;line-height:1.4}.remember-pro input{width:17px!important;height:17px!important;accent-color:#6de9ff;flex:0 0 auto}.forgot-inline{color:#9beeff;font-size:11px;font-weight:800}.forgot-inline:hover{color:#fff}.login-submit{width:100%;height:52px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--blue),#7d8cff 48%,var(--violet));color:#06101b;font-weight:950;cursor:pointer;box-shadow:0 14px 38px rgba(94,231,255,.16);transition:.2s}.login-submit:hover{transform:translateY(-2px);box-shadow:0 18px 48px rgba(94,231,255,.24)}.login-submit:active{transform:translateY(0)}.login-submit:focus-visible,.password-toggle:focus-visible{outline:3px solid rgba(94,231,255,.22);outline-offset:2px}.login-meta{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:17px;color:#647792;font-size:10px}.login-meta span{display:inline-flex;align-items:center;gap:5px}.login-meta .ok{color:#6ff1bc}.login-error{display:flex;gap:10px;align-items:flex-start;margin-bottom:16px;padding:12px 13px;border:1px solid rgba(255,95,122,.23);border-radius:13px;background:rgba(255,95,122,.07);color:#ffd2da;font-size:11px;line-height:1.45}.login-error strong{color:#fff}.login-footer{margin-top:20px;text-align:center;color:#60738f;font-size:10px}.login-footer a{color:#b8c6dc;font-weight:800}.login-footer a:hover{color:#fff}
.login-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
@media(max-width:1000px){.login-shell{grid-template-columns:1fr;gap:30px;width:min(700px,92vw);padding:34px 0}.login-copy{text-align:center;max-width:none}.login-copy .lead{margin-left:auto;margin-right:auto}.login-brand{margin-bottom:24px}.login-points,.login-console{margin-left:auto;margin-right:auto;text-align:left}.login-panel{width:100%;max-width:560px;margin:auto}}
@media(max-width:620px){.login-shell{width:min(100% - 28px,520px);padding:22px 0 28px}.login-copy h1{font-size:42px;letter-spacing:-2.5px;margin:15px 0 18px}.login-copy .lead{font-size:15px;line-height:1.6}.login-brand{font-size:18px;margin-bottom:20px}.login-brand-mark{width:32px;height:32px}.login-points{grid-template-columns:1fr;gap:9px}.login-point{padding:12px}.login-console{display:none}.login-card-pro{padding:23px 18px;border-radius:21px}.login-card-head h2{font-size:26px}.login-card-head{margin-bottom:20px}.login-form label.field-label{margin-top:14px}.login-form input[type=email],.login-form input[type=password],.login-form input[type=text]{height:49px}.remember-row{align-items:flex-start;flex-direction:column;gap:12px}.forgot-inline{padding-left:26px}.login-submit{height:50px}.login-meta{line-height:1.5}}
@media(prefers-reduced-motion:reduce){.login-submit{transition:none}}


/* V2.9.1 — CONTRASTE PRO / BOTONES SIEMPRE LEGIBLES */
.login-page{color:#f7fbff!important;background:
 radial-gradient(circle at 12% 18%,rgba(94,231,255,.12),transparent 30%),
 radial-gradient(circle at 88% 78%,rgba(155,108,255,.16),transparent 34%),
 #050711!important;}
.login-card-pro,.login-card-pro *{color-scheme:dark;}
.login-card-head h2{color:#ffffff!important;text-shadow:0 1px 18px rgba(94,231,255,.10);}
.login-card-head p{color:#aebbd2!important;}
.login-form label.field-label{color:#eaf2ff!important;font-size:13px!important;letter-spacing:.1px;}
.login-form input[type=email],.login-form input[type=password],.login-form input[type=text]{
 background:#0d1930!important;color:#ffffff!important;border-color:#395274!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.login-form input[type=email]:hover,.login-form input[type=password]:hover,.login-form input[type=text]:hover{border-color:#52759e!important;}
.login-form input[type=email]:focus,.login-form input[type=password]:focus,.login-form input[type=text]:focus{
 background:#101e38!important;border-color:#5ee7ff!important;
 box-shadow:0 0 0 4px rgba(94,231,255,.12),0 0 28px rgba(94,231,255,.08)!important;
}
.password-toggle{
 background:#162844!important;color:#ffffff!important;border-color:#4a6688!important;
 font-size:12px!important;font-weight:900!important;min-width:76px;
}
.password-toggle:hover{background:#203758!important;color:#ffffff!important;border-color:#6aa0cf!important;}
.remember-pro,.remember-pro span{color:#d7e2f2!important;}
.forgot-inline{color:#6feaff!important;text-decoration:underline;text-underline-offset:3px;}
.forgot-inline:hover{color:#ffffff!important;}
.login-submit{
 display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
 background:linear-gradient(135deg,#5ee7ff 0%,#788cff 48%,#9b6cff 100%)!important;
 color:#07111f!important;
 border:1px solid rgba(255,255,255,.28)!important;
 font-size:14px!important;font-weight:950!important;letter-spacing:.1px;
 text-shadow:none!important;
 box-shadow:0 14px 38px rgba(94,231,255,.20),inset 0 1px 0 rgba(255,255,255,.30)!important;
}
.login-submit:hover{filter:brightness(1.08)!important;color:#050c18!important;}
.login-submit:focus-visible{outline:3px solid rgba(94,231,255,.48)!important;outline-offset:3px!important;}
.login-meta{color:#91a2bb!important;font-weight:700;}
.login-meta .ok{color:#72f2bd!important;}
.login-footer{color:#91a0b8!important;}
.login-footer a{color:#ffffff!important;text-decoration:underline;text-underline-offset:3px;}
.login-secure{color:#c8ffe5!important;background:rgba(101,243,181,.09)!important;border-color:rgba(101,243,181,.24)!important;}
.login-error{color:#ffe2e7!important;}
.login-point b{color:#f3f7ff!important;}.login-point small{color:#9eabc2!important;}
.login-brand{color:#18243a!important;}.login-brand span{color:#7d52ef!important;}
@media(max-width:1000px){
 .login-shell{min-height:auto;padding:36px 0 46px;}
 .login-page{min-height:100svh;}
}
@media(max-width:620px){
 .login-page{overflow:visible;}
 .login-shell{width:min(100% - 24px,520px);padding:18px 0 30px;gap:24px;}
 .login-copy h1{font-size:clamp(38px,12vw,50px)!important;line-height:1!important;}
 .login-copy .lead{font-size:16px!important;}
 .login-point{background:rgba(10,18,34,.72)!important;}
 .login-card-pro{padding:22px 17px!important;}
 .login-submit{min-height:54px;font-size:14px!important;}
 .password-toggle{min-width:74px;}
}
@media(max-width:380px){
 .login-shell{width:calc(100% - 18px);}
 .login-card-pro{padding:19px 14px!important;}
 .remember-row{gap:10px;}
 .login-brand{font-size:17px;}
}

/* Login identity aligned with the AI Command Center */
.login-brand,.login-brand:visited{color:#ffffff!important;text-shadow:0 0 18px rgba(255,255,255,.04)}
.login-brand span{color:#9b6cff!important}
.login-brand-mark{color:#ffffff!important;background:linear-gradient(135deg,#5ee7ff,#9b6cff)!important;-webkit-background-clip:initial!important;-webkit-text-fill-color:initial!important;box-shadow:0 0 24px rgba(94,231,255,.22)!important}

/* Final visibility fix: brand text must remain readable on the dark login hero. */
.login-brand{color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;}
.login-brand .login-brand-name{color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;}
.login-brand .login-brand-pro{color:#9b6cff!important;background:none!important;-webkit-text-fill-color:#9b6cff!important;}
.login-brand .login-brand-mark{color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;}
