
/* ═══════════════════════════════════
   LOGIN ORBITVEND — Centrado elegante
   ═══════════════════════════════════ */
body.ov-login {
  background: #0a0b0f !important;
}
body.ov-login .bg-light.min-vh-100 {
  background: #0a0b0f !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 100vh !important;
  padding: 40px 20px !important;
}
/* Ocultar panel izquierdo — no usamos split */
body.ov-login #ov-login-left { display: none !important; }

/* El container Bootstrap — centrado */
body.ov-login .bg-light.min-vh-100 > .container,
body.ov-login .bg-light.min-vh-100 > div:not(#ov-login-left) {
  width: 100% !important;
  max-width: 460px !important;
  flex: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
/* El card-group */
body.ov-login .card-group {
  display: block !important;
  width: 100% !important;
  flex: none !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,0.5) !important;
}
/* El card — header de branding + form */
body.ov-login .card.p-4 {
  background: #111318 !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  flex: none !important;
  padding: 0 !important;
}
body.ov-login .card-body {
  padding: 40px 36px !important;
}
/* Branding header sobre el form */
#ov-login-header {
  background: #0a0b0f;
  border-bottom: 1px solid rgba(0,212,170,0.12);
  padding: 28px 36px;
  display: flex;
  align-items: center;
  gap: 12px;
}
#ov-login-header .lh-logo {
  width: 36px; height: 36px;
  background: #00d4aa; border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
#ov-login-header .lh-logo-i {
  width: 16px; height: 16px;
  background: #0a0b0f; border-radius: 3px;
}
#ov-login-header .lh-name {
  font-family: 'Syne', sans-serif;
  font-size: 18px; font-weight: 800;
  color: #f0f2f8; letter-spacing: -.4px;
}
#ov-login-header .lh-sub {
  font-size: 10px; color: #00d4aa;
  letter-spacing: .6px; font-weight: 700;
  margin-top: 2px;
}
/* Títulos del form */
body.ov-login .card-body h1,
body.ov-login .card-body h2,
body.ov-login .card-body h4 {
  font-family: 'Syne', sans-serif !important;
  font-size: 22px !important; font-weight: 700 !important;
  color: #f0f2f8 !important; margin-bottom: 4px !important;
}
body.ov-login .card-body p,
body.ov-login .card-body .text-medium-emphasis {
  font-size: 13px !important; color: #8892a4 !important;
  margin-bottom: 24px !important;
}
/* Inputs */
body.ov-login .input-group-text {
  background: #1e2230 !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-right: none !important; color: #555f72 !important;
}
body.ov-login .form-control {
  background: #1e2230 !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-left: none !important; color: #f0f2f8 !important;
  font-size: 14px !important; height: 44px !important;
}
body.ov-login .form-control:focus {
  border-color: #00d4aa !important;
  box-shadow: 0 0 0 2px rgba(0,212,170,0.15) !important;
}
body.ov-login .input-group { margin-bottom: 12px !important; }
/* Checkbox */
body.ov-login .form-check-label { color: #8892a4 !important; font-size: 13px !important; }
/* Botón */
body.ov-login .btn-primary {
  background: #00d4aa !important; border-color: #00d4aa !important;
  color: #0a0b0f !important; font-weight: 700 !important;
  border-radius: 9px !important; height: 46px !important;
  font-size: 14px !important; width: 100% !important;
  white-space: nowrap !important;
}
body.ov-login .btn-primary:hover {
  background: #00b896 !important;
  box-shadow: 0 6px 20px rgba(0,212,170,0.3) !important;
}
/* Col-6 → full width para el botón */
body.ov-login .card-body .col-6,
body.ov-login .card-body .col-md-6 {
  flex: 0 0 100% !important; max-width: 100% !important;
  width: 100% !important; padding: 0 !important;
}
body.ov-login .card-body .row { margin: 0 !important; }
/* Footer */
#ov-login-footer-bar {
  background: #0a0b0f;
  border-top: 1px solid rgba(255,255,255,0.06);
  padding: 16px 36px;
  display: flex; align-items: center;
  justify-content: space-between;
}
#ov-login-footer-bar span {
  font-size: 12px; color: #555f72;
}
/* Ocultar select original */
body.ov-login select.form-select-sm,
body.ov-login .form-select-sm { display: none !important; }
/* Lang btn */
#ov-login-lang {
  position: fixed; top: 16px; right: 20px; z-index: 9999;
  min-width: 44px; height: 36px; padding: 0 14px;
  border-radius: 9px; background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12); color: #8892a4;
  font-family: 'DM Sans', sans-serif; font-size: 12px; font-weight: 700;
  cursor: pointer; display: flex; align-items: center; justify-content: center;
  transition: all .15s; user-select: none;
}
#ov-login-lang:hover { border-color: #00d4aa; color: #00d4aa; background: rgba(0,212,170,0.08); }
#ov-login-lang.lang-en { color: #00d4aa; border-color: rgba(0,212,170,0.4); background: rgba(0,212,170,0.08); }
/* ── ROW Y COL FIX — Bootstrap tiene .row > col que limita el ancho ── */
body.ov-login .bg-light.min-vh-100 .row {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
body.ov-login .bg-light.min-vh-100 .row > [class*="col"],
body.ov-login .bg-light.min-vh-100 .row > div {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
}
/* Card-group full width */
body.ov-login .card-group {
  display: block !important;
  width: 100% !important;
  flex: none !important;
}