/* ========================================================================
 * ВАШИ СТИЛИ, УЛУЧШЕННЫЕ СОГЛАСНО ЗАПРОСУ (СИНИЙ ЦВЕТ)
 * - Сохранена ваша структура CSS
 * - Удалены все градиенты
 * - Модернизирован вид полей ввода и кнопок
 * - Основной цвет изменен на синий
 * ======================================================================== */

/* ---------------------------------------------------------------------- */
/* 1. ОБЩИЕ СТИЛИ И КОНТЕЙНЕРЫ (Ваши стили)
/* ---------------------------------------------------------------------- */

.registration-link a {
  text-decoration: none;
}

.login-blok1 {
  width: 100%; /* Улучшено для адаптивности */
  max-width: 600px; /* Ограничиваем максимальную ширину */
  margin: 0 auto;
  background: #fff;
  padding: 40px;
  border-radius: 15px;
  /* ИЗМЕНЕНИЕ: Тень теперь синяя */
  box-shadow: 0 6px 20px rgb(137 137 137 / 15%);
  animation: fadeIn 0.5s ease-in-out;
  border: 1px solid #e0e0e0;
  margin-top: 40px;
  margin-bottom: 40px;
}

.form-login {
  padding: 0;
  margin-top: 10px;
}

/* ---------------------------------------------------------------------- */
/* 2. ПОЛЯ ВВОДА (Модернизация)
/* ---------------------------------------------------------------------- */

.form-login .form-control,
#resetPasswordForm .form-control,
.form-control {
  border: 1px solid #eaeaea; 
 
  background-color: #fff;
  padding: 12px 15px; 
  font-size: 16px;
  color: #333;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  height: 46px;
}
.rounded-right-only {
  border-top-right-radius: 12px;
  border-bottom-right-radius: 12px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

/* Универсальный фокус для всех полей */
.form-login .form-control:focus,
#resetPasswordForm .form-control:focus,
#codeVerificationForm input:focus,
#forgotPasswordForm input:focus,
.form-control:focus {
  outline: none;
  /* ИЗМЕНЕНИЕ: Рамка и тень теперь синие */
  border-color: #cccccc;
  box-shadow: none;
}

.input-group-text {
  border: 1px solid #d8d8d8;
  /* border-right: none; */
  border-radius: 8px 0 0 8px;
  background: #fcfcfc;
  font-size: 16px;
  color: #000000;
  padding: 0 12px;
  transition: color 0.3s ease, border-color 0.3s ease;
}
/* Подсветка иконки при фокусе родителя */
.input-group:focus-within .input-group-text {
    /* ИЗМЕНЕНИЕ: Цвет рамки теперь синий */
    border-color: #b8b8b8;
}

.form-login .position-relative {
  position: relative;
}

.form-login .position-absolute {
  top: 50%;
  right: 15px; 
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}

.form-login .position-absolute:hover {
  transform: translateY(-50%) scale(1.1);
}

.form-login .position-absolute img,
#resetPasswordForm .eye-icon-container img {
  filter: grayscale(1) opacity(0.6); 

}

.eye-icon-container-modal img {
  margin-top: 10px;
  z-index: 10;
}


.form-login .position-absolute:hover img,
#resetPasswordForm .eye-icon-container:hover img {
  filter: none;
}

/* ---------------------------------------------------------------------- */
/* 3. КНОПКИ (Модернизация)
/* ---------------------------------------------------------------------- */

.btn-dark {
  /* ИЗМЕНЕНИЕ: Фон теперь синий */
  background: #007bff;
  border: none;
  padding: 12px 30px;
  font-size: 16px;
  color: #fff;
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  border-radius: 8px; 
  font-family: 'Segoe UI', Tahoma, sans-serif; 
  letter-spacing: 0.5px;
  position: relative;
  overflow: hidden;
  height: 50px;
}

.btn-dark:hover {
  /* ИЗМЕНЕНИЕ: Затемненный синий */
  background: #0069d9;
  transform: translateY(-2px);
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

.btn-dark::before, .btn-dark::after {
  display: none;
}

#resetPasswordForm .btn-dark:disabled {
  background: #6c757d;
  cursor: not-allowed;
  opacity: 0.65;
  transform: none;
  box-shadow: none;
}

/* ---------------------------------------------------------------------- */
/* 4. ССЫЛКИ И ТЕКСТ (Ваши стили, с мелкими правками)
/* ---------------------------------------------------------------------- */

.forgot-password a {
  text-decoration: none;
  color: #6c757d; 
  font-size: 14px;
  transition: color 0.3s ease;
}
.forgot-password a:hover {
  /* ИЗМЕНЕНИЕ: Цвет при наведении теперь синий */
  color: #007bff;
  transform: none;
}
.forgot-password-hover a:hover{
  /* ИЗМЕНЕНИЕ: Цвет при наведении теперь синий */
  color: #007bff !important;
}

.footer-text {
  font-size: 14px;
  color: #666;
  text-align: center;
  margin-top: 20px;
}
.footer-text a {
  color: #00aaff;
  text-decoration: none;
  font-weight: 500;
}
.footer-text a:hover {
  /* ИЗМЕНЕНИЕ: Цвет при наведении теперь синий */
  color: #007bff;
}

.create-account {
  margin-top: 20px;
  font-size: 14px;
  color: #666;
}
.create-account a {
  color: #00aaff;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}
.create-account a:hover {
  /* ИЗМЕНЕНИЕ: Цвет при наведении теперь синий */
  color: #007bff;
  text-decoration: underline;
}

/* ---------------------------------------------------------------------- */
/* 5. МОДАЛЬНЫЕ ОКНА (Ваши стили)
/* ---------------------------------------------------------------------- */

.modal-content-forgotPassword {
  margin-top: 200px;
  border: none;
  border-radius: 15px;
  /* ИЗМЕНЕНИЕ: Тень теперь синяя */
  box-shadow: 0 6px 20px rgba(0, 123, 255, 0.2);
  animation: slideIn 0.5s ease-out;
}
.modal-body-forgotPassword {
  padding: 20px 40px; 
  display: flex;
  flex-direction: column;
  align-items: center;
}
.modal-header-forgotPassword {
  padding: 10px;
  border-bottom: none;
}
.modal-header-forgotpasswor{
  justify-content: left !important;
  padding: 0;
}
.btn-close-forgotpasswor {
    position: absolute;
    top: 24px; right: 28px;
    width: 30px; height: 30px;
    background-color: white; border-radius: 50%;
    border: none;
    z-index: 1051; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    transition: box-shadow 0.3s ease, transform 0.2s ease;
    font-size: 14px;
    padding: 0 !important;
}
.btn-close-forgotpasswor::before, .btn-close-forgotpasswor::after {
    content: ''; position: absolute; width: 16px; height: 2px;
    background-color: #3a3a3a; transition: background-color 0.3s ease;
}
.btn-close-forgotpasswor::before { transform: rotate(45deg); }
.btn-close-forgotpasswor::after { transform: rotate(-45deg); }
.btn-close-forgotpasswor:hover {
    
}
.btn-close-forgotpasswor:hover::before, .btn-close-forgotpasswor:hover::after {
    /* ИЗМЕНЕНИЕ: Цвет крестика при наведении теперь синий */
    background-color: #000000;
}

/* ---------------------------------------------------------------------- */
/* 6. ЗАГОЛОВКИ И ДРУГИЕ ЭЛЕМЕНТЫ (Модернизация)
/* ---------------------------------------------------------------------- */

h2 {
  /* ИЗМЕНЕНИЕ: Цвет заголовка теперь синий */
  color: #007bff;
  font-size: 24px;
  margin-bottom: 30px;
  animation: bounceIn 0.5s ease-out;
}
h4.text-center, h5.modal-title {
  font-weight: 600;
  /* ИЗМЕНЕНИЕ: Цвет заголовков теперь синий */
  color: #000000; 
  background: none;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
  position: relative;
  display: inline-block;
  animation: bounceIn 0.5s ease-out;
}
h4.text-center { font-size: 24px; }
h5.modal-title { font-size: 22px; }

hr.d-none.d-md-block.my-4 {
  border: 0;
  height: 1px;
  background: #e0e0e0;
  margin: 2rem 0;
}

/* ---------------------------------------------------------------------- */
/* 7. ОСТАЛЬНЫЕ ВАШИ СТИЛИ (Без изменений)
/* ---------------------------------------------------------------------- */

.custom-font-size {
  font-size: 14px;
  font-weight: 500;
}
.input-VerificationCode {
  width: 150px;
}
.tooltip-container {
  position: relative;
  display: inline-block;
}
.tooltip-text {
  position: absolute;
  top: -40px; left: 50%;
  transform: translateX(-50%);
  padding: 8px;
  background: #333; 
  color: #fff;
  border-radius: 4px;
  font-size: 12px;
  white-space: nowrap;
  display: none;
  z-index: 10;
  animation: fadeIn 0.3s ease-in-out;
}
.tooltip-container:hover .tooltip-text {
  display: block;
}
#generatePassword-1 {
  border-radius: 0;
}
#errorMessage, #loginPhoneError, #captchaError, #errorMessageResetPassword {
  font-size: 14px;
  color: #dc3545;
  animation: fadeIn 0.3s ease-in-out;
}
.d-flex {
  gap: 20px;
}
.form-control::placeholder {
  color: #b0b0b0;
  opacity: 1;
}
.position-absolute {
  cursor: pointer;
  padding: 6px;
  border-radius: 50%;
  transition: background-color 0.3s ease;
}
.position-absolute:hover {
  transform: translateY(-50%) scale(1.15);
}
.forgot-password-form{
  width: 300px;
}
.verificationcode-form{
  text-align: center;
}
#resetPasswordForm {
  max-width: 400px; margin: 0 auto; text-align: center;
}
#resetPasswordForm .custom-font-size {
  font-size: 16px; font-weight: 500; color: #333; margin-bottom: 1rem;
}
#resetPasswordForm .input-group {
  position: relative; margin-bottom: 1.5rem;
}
#resetPasswordForm .generate-password-btn {
  border: none;
  border-left: none;
  border-top: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
  background: #fefefe;
  padding: 0 10px;
  transition: transform 0.3s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
#resetPasswordForm .eye-icon-container {
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px;
  transition: transform 0.3s ease;
}
#resetPasswordForm .password-strength-container {
  display: flex; align-items: center; justify-content: center;
  margin-top: 10px; gap: 8px;
}
#resetPasswordForm .strength-text {
  font-size: 12px; min-height: 16px; margin: 0; letter-spacing: 1px;
}
#resetPasswordForm .strength-bar-container {
  display: flex; gap: 4px;
}
#resetPasswordForm .strength-bar {
  width: 30px; height: 4px; background: #e0e0e0;
  border-radius: 2px; transition: background 0.3s ease;
}
#resetPasswordForm .strength-bar.weak { background: #ff4d4d; }
#resetPasswordForm .strength-bar.medium { background: #ffc107; }
#resetPasswordForm .strength-bar.strong { background: #00d430; }
#resetPasswordForm #matchIconContainer {
  min-height: 20px; font-size: 14px;
  display: flex; align-items: center; justify-content: center;
  gap: 4px;
}
#resetPasswordForm .password-mismatch {
  color: #ff4d4d; font-size: 12px; letter-spacing: 1px;
}
.custom-font-size-resetpassword {
  font-size: 16px;
  font-weight: 600;
  /* ИЗМЕНЕНИЕ: Цвет теперь синий */
  color: #007bff; 
  margin-bottom: 1rem;
  display: inline-block;
  animation: fadeIn 0.5s ease-in-out;
  letter-spacing: 1.2px;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}
#successMessageContainer .alert {
  font-size: 24px;
  font-weight: 700;
  background: #007bff;
  border: none;
  box-shadow: none;
  padding: 1rem 1rem;
  margin: 0 auto;
  display: inline-block;
  animation: fadeIn 0.7s ease-in-out;
  letter-spacing: 1.5px;
  color: #fff;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  /* height: 100px; */
  width: 400px;
}
.icon-shadow {
  filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.4));
}
#resetPasswordForm .gradient-svg {
  width: 24px; height: 24px; display: inline-block;
  cursor: pointer; transition: transform 0.3s ease, filter 0.3s ease;
  transform-origin: center;
}
#resetPasswordForm .generate-password-btn:hover .gradient-svg {
  filter: brightness(1.2) saturate(120%);
}
#resetPasswordForm .generate-password-btn:active .gradient-svg {
  transform: scale(0.95); filter: brightness(0.9);
}

/* ---------------------------------------------------------------------- */
/* 8. АНИМАЦИИ (Ваши анимации)
/* ---------------------------------------------------------------------- */

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes slideIn {
  from { transform: translateY(-50px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}
@keyframes bounceIn {
  0% { transform: scale(0.9); opacity: 0; }
  50% { transform: scale(1.05); opacity: 0.5; }
  100% { transform: scale(1); opacity: 1; }
}
@keyframes waveEffect {
  0% { width: 0; height: 0; opacity: 0; }
  30% { width: 300px; height: 300px; opacity: 1; }
  100% { width: 300px; height: 300px; opacity: 0; } 
}


/* приклади кольорів */
.strength-weak {
  background-color: #dc3545; /* червоний */
}
.strength-medium {
  background-color: #ffc107; /* жовтий */
}
.strength-strong {
  background-color: #28a745; /* зелений */
}

.indicator{
  margin-right: 100px;
  z-index: 10;

}






#resetPasswordForm .generate-password-btn {
  border: none;
  /* border-left: none; */
  /* border-top: 1px solid #d8d8d8; */
  /* border-right: 1px solid #d8d8d8; */
  /* border-bottom: 1px solid #d8d8d8; */
  /* background: #fefefe; */
  /* padding: 0 10px; */
  /* transition: transform 0.3s ease; */
  /* display: flex; */
  /* align-items: center; */
  /* justify-content: center; */
  position: absolute;
  top: 0;
  margin-top: 12px;
  right: 0;
  margin-right: 50px;
  z-index: 10;
}


.tooltip-container {
  position: relative;

}
.tooltip-text {
  position: absolute;
  top: -40px; /* Положення над кнопкою */
  left: 50%;
  transform: translateX(-50%);
  padding: 8px;
  background-color: #333;
  color: #fff;
  border-radius: 4px;
  font-size: 12px;
  white-space: nowrap;
  display: none; /* Сховати за замовчуванням */
  z-index: 10;
}

.tooltip-container:hover .tooltip-text {
  display: block;
}


.btn-dark:disabled {
  background: #6c757d;
  cursor: not-allowed;
  opacity: 0.65;
  transform: none;
  box-shadow: none;
}


#twoFactorModalLabel{
  font-size: 20px;
}


.btn-closetwoFactor:focus {
  box-shadow: none !important;
  outline: none !important;
}


.complaint-success-message {
  text-align: center;
  padding: 20px;
}
.complaint-success-message img {
  margin-bottom: 15px;
}
.complaint-success-message h4 {
  color: #28a745;
  margin-bottom: 10px;
}
.complaint-success-message p {
  color: #6c757d;
  font-size: 0.9rem;
  margin: 0;
}
.resetWithEmailPhoneBtn{
  font-size: 16px;
}

.resetWit{
  font-size: 16px;
}