/* ---------- Login em tela cheia (split-screen) ---------- */
.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr;}
@media (max-width:900px){.login-page{grid-template-columns:1fr;}.login-left{display:none;}}

.login-left{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg, var(--navy-deep) 0%, var(--navy) 55%, #001a38 100%);
  padding:56px 60px;display:flex;flex-direction:column;justify-content:space-between;
  color:var(--white);
}
.login-left::before{
  content:"";position:absolute;top:-120px;right:-120px;width:400px;height:400px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.06) 0%, transparent 70%);
}
.login-left::after{
  content:"";position:absolute;bottom:-160px;left:-100px;width:360px;height:360px;border-radius:50%;
  background:radial-gradient(circle, rgba(255,102,0,.08) 0%, transparent 70%);
}
.login-left-inner{position:relative;}
.login-badge{display:flex;align-items:center;gap:12px;margin-bottom:56px;}
.login-badge-icon{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:8px;
  padding:8px 11px;font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.03em;
}
.login-badge strong{display:block;font-size:14px;font-family:var(--display);}
.login-badge span{font-size:12px;color:rgba(255,255,255,.5);}
.login-left h1{font-size:clamp(28px,3.4vw,38px);line-height:1.18;margin-bottom:16px;}
.login-left h1 em{font-style:normal;color:var(--orange);}
.login-left-inner > p{color:rgba(255,255,255,.65);font-size:15px;max-width:420px;margin-bottom:36px;line-height:1.6;}
.login-features{display:grid;gap:12px;position:relative;}
.login-feature{
  display:flex;align-items:center;gap:14px;
  background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-radius:10px;padding:13px 16px;
}
.login-feature-icon{
  width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;
}
.login-feature-icon.c-blue{background:rgba(26,86,219,.16);color:#5b8cff;}
.login-feature-icon.c-green{background:rgba(30,126,66,.18);color:#4ade80;}
.login-feature-icon.c-purple{background:rgba(147,51,234,.18);color:#c084fc;}
.login-feature-icon.c-orange{background:rgba(255,102,0,.16);color:var(--orange);}
.login-feature strong{display:block;font-size:13.8px;color:var(--white);font-family:var(--display);}
.login-feature span{font-size:12.3px;color:rgba(255,255,255,.5);}
.login-left-footer{position:relative;font-size:12px;color:rgba(255,255,255,.35);}

.login-right{display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--surface);}
.login-form-wrap{
  max-width:380px;width:100%;
  background:var(--white);border:1px solid var(--border);border-radius:16px;
  padding:44px 40px;box-shadow:0 30px 70px -30px rgba(0,31,64,.25);
}
.login-logo{height:48px;margin-bottom:28px;}
.login-form-wrap h2{font-size:24px;margin-bottom:6px;}
.login-form-wrap .subtitle{color:var(--text-muted);font-size:14px;margin-bottom:22px;padding-bottom:22px;border-bottom:1px solid var(--border);}
.input-icon-field{position:relative;}
.input-icon-field svg.icon-left{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;}
.input-icon-field input{padding-left:42px;}
.input-icon-field.has-toggle input{padding-right:42px;}
.toggle-password{
  position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;
  color:var(--text-muted);cursor:pointer;padding:4px;display:flex;
}
.toggle-password:hover{color:var(--navy);}
.login-footnote{text-align:center;font-size:13px;color:var(--text-muted);margin-top:16px;}
.login-footnote a{color:var(--orange-text);font-weight:600;}
.login-wordmark{
  text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.06em;
  color:var(--text-muted);margin-top:30px;text-transform:uppercase;
}
