/* Component Scope Root - shared by Login_Form (.NearUpLogin) and Sign_Up_Form (.NearUpSignUp) */
.NearUpLogin,
.NearUpSignUp {
  position: relative;
  width: 100%;
}

/* Logo on peach header */
.NearUpLogin .auth_logo_area,
.NearUpSignUp .auth_logo_area {
  display: flex;
  justify-content: center;
  padding: 36px 0 22px;
  background: linear-gradient(180deg, #fde2d8 0%, #fff4ef 100%);
}

.NearUpLogin .auth_logo,
.NearUpSignUp .auth_logo {
  height: 70px;
  max-width: 180px;
  object-fit: contain;
}

.NearUpLogin .auth_card,
.NearUpSignUp .auth_card {
  background-color: #ffffff;
  border-radius: 14px 14px 0 0;
  margin-top: -12px;
  padding: 18px 20px 22px;
  position: relative;
}

/* Tabs */
.NearUpLogin .auth_tabs {
  display: flex;
  background-color: #f3f4f6;
  border-radius: 6px;
  padding: 3px;
  margin-bottom: 18px;
}

.NearUpLogin .auth_tab {
  flex: 1;
  border: none;
  background: transparent;
  border-radius: 4px;
  padding: 7px 0;
  font-size: 13px;
  font-weight: 500;
  color: #374151;
  cursor: pointer;
  transition: all 0.2s ease;
}

.NearUpLogin .auth_tab.active {
  background-color: #f97316;
  color: #ffffff;
}

/* Headings */
.NearUpLogin .auth_title,
.NearUpSignUp .auth_title {
  font-size: 20px;
  font-weight: 700;
  color: #000000;
  text-align: center;
  margin: 0 0 4px 0;
}

.NearUpLogin .auth_subtitle,
.NearUpSignUp .auth_subtitle {
  font-size: 13px;
  color: #6b7280;
  text-align: center;
  margin: 0 0 18px 0;
}

.NearUpLogin .auth_label,
.NearUpSignUp .auth_label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #000000;
  margin-bottom: 6px;
}

/* Inputs */
.NearUpSignUp .auth_field {
  margin-bottom: 12px;
}

.NearUpLogin .phone_input,
.NearUpSignUp .phone_input {
  display: flex;
  align-items: center;
  border: 1px solid #d1d5db;
  border-radius: 6px;
  overflow: hidden;
  background-color: #ffffff;
}

.NearUpLogin .phone_input.has_error,
.NearUpSignUp .phone_input.has_error {
  border-color: #dc2626;
}

.NearUpLogin .phone_prefix,
.NearUpSignUp .phone_prefix {
  padding: 0 10px;
  font-size: 13px;
  color: #000000;
  border-right: 1px solid #d1d5db;
  white-space: nowrap;
}

.NearUpLogin .phone_input .form-control,
.NearUpSignUp .phone_input .form-control {
  border: none;
  box-shadow: none;
}

.NearUpLogin .form-control,
.NearUpSignUp .form-control {
  height: 40px;
  font-size: 13px;
  border-color: #d1d5db;
  border-radius: 6px;
}

.NearUpLogin .form-control:focus,
.NearUpSignUp .form-control:focus {
  border-color: #1e3a8a;
  box-shadow: none;
}

.NearUpSignUp .password_holder {
  position: relative;
}

.NearUpSignUp .password_holder .eye-icc {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  color: #6b7280;
  cursor: pointer;
}

.NearUpLogin .auth_error,
.NearUpSignUp .auth_error {
  font-size: 11px;
  color: #dc2626;
  margin: 4px 0 0 0;
}

/* Primary button */
.NearUpLogin .auth_primary_btn,
.NearUpSignUp .auth_primary_btn {
  width: 100%;
  height: 42px;
  margin-top: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: none;
  border-radius: 6px;
  background-color: #1e3a8a;
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.NearUpLogin .auth_primary_btn:hover,
.NearUpSignUp .auth_primary_btn:hover {
  opacity: 0.92;
}


/* Switch login / sign up */
.NearUpLogin .auth_switch_text,
.NearUpSignUp .auth_switch_text {
  font-size: 13px;
  color: #374151;
  text-align: center;
  margin: 14px 0 0 0;
}

.NearUpLogin .auth_switch_text span,
.NearUpSignUp .auth_switch_text span {
  color: #1e3a8a;
  font-weight: 700;
  cursor: pointer;
}


/* Original form fields (Login_Form / Sign_Up_Form markup) */
.NearUpLogin .logo_holder,
.NearUpSignUp .logo_holder {
  display: inline-flex;
  cursor: pointer;
}

.NearUpLogin .input_group,
.NearUpSignUp .input_group {
  margin-bottom: 12px;
}

.NearUpLogin .password_holder,
.NearUpSignUp .password_holder {
  position: relative;
}

/* "Send Otp" inside the mobile field */
.NearUpLogin .password_holder .form-control {
  padding-right: 90px;
}

.NearUpLogin .verify_text {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  font-size: 13px;
  font-weight: 700;
  color: #dc2626;
  text-decoration: underline;
  cursor: pointer;
}

/* "OTP Valid For 00:59 Sec" */
.NearUpLogin .otp_field_holder .resend_holder p {
  font-size: 13px;
  font-weight: 600;
  color: #dc2626;
  margin: 6px 0 0 0;
}

.NearUpLogin sup.text-danger,
.NearUpSignUp sup.text-danger {
  top: 0;
  font-size: 11px;
}

.NearUpLogin .submit_btn_div,
.NearUpSignUp .submit_btn_div {
  margin-top: 16px;
}

.NearUpLogin .submit_btn_div .Login_Green_Btn,
.NearUpSignUp .submit_btn_div .Login_Green_Btn {
  height: 42px;
  border-radius: 6px;
}

.NearUpLogin .submit_btn_div .Login_Green_Btn .btn_text,
.NearUpSignUp .submit_btn_div .Login_Green_Btn .btn_text {
  margin: 0;
}

@media (min-width: 0px) and (max-width: 485px) {
  .NearUpLogin .auth_logo_area,
  .NearUpSignUp .auth_logo_area {
    padding: 50px 0 26px;
  }

  .NearUpLogin .auth_logo,
  .NearUpSignUp .auth_logo {
    height: 58px;
  }

  .NearUpLogin .auth_card,
  .NearUpSignUp .auth_card {
    padding: 16px 16px 20px;
  }

  .NearUpLogin .auth_tab {
    font-size: 11px;
  }

  .NearUpLogin .auth_title,
  .NearUpSignUp .auth_title {
    font-size: 17px;
  }

  .NearUpLogin .auth_subtitle,
  .NearUpSignUp .auth_subtitle,
  .NearUpLogin .auth_label,
  .NearUpSignUp .auth_label,
  .NearUpLogin .auth_switch_text,
  .NearUpSignUp .auth_switch_text {
    font-size: 12px;
  }

  .NearUpLogin .auth_primary_btn,
  .NearUpSignUp .auth_primary_btn {
    height: 40px;
    font-size: 13px;
  }
}
