.pl-phone-login-card{margin-top:1.5rem;padding:1.25rem;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.pl-phone-login-card__divider{display:flex;align-items:center;gap:12px;margin-bottom:1rem;font-weight:700}
.pl-phone-login-card__divider:before,.pl-phone-login-card__divider:after{content:"";flex:1;height:1px;background:#e5e7eb}
.pl-phone-login-actions{display:flex;justify-content:flex-end}
.pl-phone-login-helper,.pl-register-phone-hint{margin-top:.75rem;color:#64748b;font-size:.95rem}

/* ── Login tab switcher ──────────────────────────────────────────────── */
.pl-login-switcher {
  margin-top: 1.5rem;
}

.pl-login-footer {
  
  margin-top: 1.5rem;
}

.pl-login-tabs {
  display: flex;
  gap: 0;
  border-bottom: 2px solid #e5e7eb;
  margin-top: 1rem;
  margin-bottom: 0;
}

.pl-login-panel {
  margin-bottom: 0;
}

.pl-login-tab {
  flex: 1;
  padding: .65rem 1rem;
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  margin-bottom: -2px;
  font-size: .95rem;
  font-weight: 600;
  color: #6b7280;
  cursor: pointer;
  transition: color .15s, border-color .15s;
  display: flex;
  align-items: center;
  justify-content: center;
}

.pl-login-tab:hover {
  color: #374151;
}

.pl-login-tab--active {
  color: #2563eb;
  border-bottom-color: #2563eb;
}

.pl-login-footer__hint {
  color: #6b7280;
  font-size: .9rem;
  text-align: center;
  padding: 0;
  margin: 0;
}

.pl-login-register {
  color: #2bb4cf;
  text-align: center;
  margin: .75rem 0 0;
}

.pl-login-register a {
  color: inherit;
}

.pl-phone-login-actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 1rem;
}


.pl-login-panel--phone .form-group.row {
  align-items: center;
}

.pl-login-control-col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.pl-login-control-col > .form-control,
.pl-login-control-col > select.form-control,
.pl-login-control-col > .pl-password-field,
.pl-phone-login-forgot,
.pl-phone-login-actions {
  width: var(--pl-login-control-width, 404px);
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.pl-password-field {
  display: flex;
  align-items: stretch;
}

.pl-password-field .form-control {
  min-width: 0;
  flex: 1 1 auto;
}

.pl-password-toggle {
  width: var(--pl-login-password-toggle-width, 76px);
  min-width: var(--pl-login-password-toggle-width, 76px);
  border: 1px solid #cfcfcf;
  border-left: 0;
  border-radius: 0 .375rem .375rem 0;
  background: #d9d9d9;
  color: #444;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.pl-password-field .form-control[type="password"],
.pl-password-field .form-control[type="text"] {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.pl-password-toggle:focus {
  outline: none;
  box-shadow: none;
}

.pl-phone-login-forgot {
  margin-top: .75rem;
  text-align: center;
}

.pl-phone-login-forgot a {
  color: #2bb4cf;
}

.pl-phone-login-actions {
  display: flex;
  justify-content: center;
  margin-top: .75rem;
}

.pl-phone-login-actions .btn {
  width: var(--pl-login-button-width, 192px);
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}



/* ── Phone tab visual alignment refinements ─────────────────────────── */
.pl-login-panel--phone .form-control-label {
  padding-right: 0;
}

.pl-login-panel--phone .pl-login-control-col {
  padding-left: 0;
}

.pl-login-panel--phone .pl-password-toggle svg {
  width: 16px;
  height: 16px;
}

/* ── Reduce label-to-field gap, align with native form ──────────────── */
.pl-login-panel--phone .form-group.row {
  margin-bottom: 0.5rem !important;
  align-items: center;
}

.pl-login-panel--phone .form-control-label {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
  line-height: 1.4 !important;
}

/* Remove border-top separator line above footer */
.pl-login-footer {
  border-top: none !important;
  padding-top: 1rem;
  margin-top: 1rem;
}


/* ── Hard remove stray separator line above the module footer / tabs ───── */
.pl-login-switcher,
.pl-login-panel,
.pl-login-panel--phone,
.pl-login-panel--email,
.pl-login-footer {
  border-top: 0 !important;
  background-image: none !important;
  box-shadow: none !important;
}

.pl-login-switcher::before,
.pl-login-switcher::after,
.pl-login-panel::before,
.pl-login-panel::after,
.pl-login-footer::before,
.pl-login-footer::after {
  content: none !important;
  display: none !important;
}

.pl-login-switcher hr,
.pl-login-panel hr,
.pl-login-footer hr,
.pl-login-switcher .separator,
.pl-login-switcher .login-separator,
.pl-login-switcher .form-separator,
.pl-login-switcher .card-block hr {
  display: none !important;
  border: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
