/**
 * @file
 * Styles for the Auth Modal module.
 */

/* Основные стили модального окна */
body .ui-dialog.ui-dialog-auth-modal {
  padding: 0;
  max-width: 450px !important;
  width: 95% !important;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  background: #fff;
  border: none;
  /* Позиционирование */
  max-height: 90vh !important;
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
  z-index: 1260;
  border-radius: 20px !important;
}

/* Заголовок модального окна */
body .ui-dialog.ui-dialog-auth-modal .ui-dialog-titlebar {
  background: #fff;
  color: #000;
  border: none;
  border-radius: 20px 20px 0 0;
  padding: 25px 20px 10px;
  text-align: center;
  position: relative;
  border-radius: 20px 20px 0 0 !important;
}

body .ui-dialog.ui-dialog-auth-modal .ui-dialog-title {
  width: 100%;
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  color: #000;
}

/* Кнопка закрытия */
body .ui-dialog.ui-dialog-auth-modal .ui-dialog-titlebar-close {
  position: absolute !important;
  right: 8px !important;
  top: 18px !important;
  background: #000 !important;
  border-radius: 50% !important;
  width: 24px !important;
  height: 24px !important;
  border: none !important;
  transition: all 0.2s ease !important;
  z-index: 1000 !important;
  opacity: 1 !important;
  font-size: 0; /* Убираем внутренний текст */
}

body .ui-dialog.ui-dialog-auth-modal .ui-dialog-titlebar-close:hover {
  background: #333 !important;
}

body .ui-dialog.ui-dialog-auth-modal .ui-dialog-titlebar-close:before {
  content: "\2715" !important; /* Добавляем крестик */
  color: white !important;
  font-size: 14px !important;
  line-height: 1 !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  font-weight: bold !important;
  text-shadow: none !important;
}

body .ui-dialog.ui-dialog-auth-modal .ui-dialog-titlebar-close .ui-icon,
body .ui-dialog.ui-dialog-auth-modal .ui-dialog-titlebar-close .ui-button-icon {
  display: none !important;
}

/* Содержимое модального окна */
body .ui-dialog.ui-dialog-auth-modal .ui-dialog-content {
  padding: 0;
  max-height: calc(90vh - 120px) !important;
  overflow-y: auto !important;
  background: #fff;
  border-radius: 0 0 20px 20px !important;
}

/* Контейнер модального окна */
body .ui-dialog.ui-dialog-auth-modal .auth-modal {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  background: #fff;
  color: #333;
}

/* Табы (логин/регистрация) */
body .ui-dialog.ui-dialog-auth-modal .auth-modal-tabs {
  display: flex;
  border-bottom: 1px solid #eee;
  margin-bottom: 25px;
  position: sticky;
  top: 0;
  background: #fff;
  z-index: 5;
  padding: 0 20px;
}

body .ui-dialog.ui-dialog-auth-modal .auth-modal-tabs .tab-link {
  flex: 1;
  text-align: center;
  padding: 15px 10px;
  cursor: pointer;
  background: none;
  border: none;
  border-bottom: 3px solid transparent;
  font-weight: 600;
  font-size: 16px;
  color: #888;
  transition: all 0.3s ease;
}

body .ui-dialog.ui-dialog-auth-modal .auth-modal-tabs .tab-link:hover {
  color: #333;
}

body .ui-dialog.ui-dialog-auth-modal .auth-modal-tabs .tab-link.active {
  border-bottom-color: #000;
  color: #000;
}

/* Контейнер содержимого */
body .ui-dialog.ui-dialog-auth-modal .auth-modal-content {
  padding: 0 30px 20px;
}

/* Контейнеры форм */
body .ui-dialog.ui-dialog-auth-modal .auth-form-container {
  transition: opacity 0.3s ease;
}

body .ui-dialog.ui-dialog-auth-modal .auth-form-container.hidden {
  display: none;
}

/* Скрываем описания полей для экономии места */
body .ui-dialog.ui-dialog-auth-modal .auth-modal .form-item__description,
body .ui-dialog.ui-dialog-auth-modal .auth-modal .description {
  display: none !important;
}

/* Стилизация полей формы */
body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="text"],
body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="password"],
body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="email"],
body .ui-dialog.ui-dialog-auth-modal form input[type="text"],
body .ui-dialog.ui-dialog-auth-modal form input[type="password"],
body .ui-dialog.ui-dialog-auth-modal form input[type="email"] {
  width: 100%;
  padding: 15px 15px 15px 45px;
  border: none;
  border-bottom: 1px solid #ddd;
  border-radius: 0;
  background-color: transparent;
  font-size: 14px;
  transition: all 0.3s ease;
  margin-top: 5px;
  margin-bottom: 15px;
  box-sizing: border-box;
  color: #333;
  box-shadow: none;
}

body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="text"]:focus,
body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="password"]:focus,
body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="email"]:focus,
body .ui-dialog.ui-dialog-auth-modal form input[type="text"]:focus,
body .ui-dialog.ui-dialog-auth-modal form input[type="password"]:focus,
body .ui-dialog.ui-dialog-auth-modal form input[type="email"]:focus {
  border-bottom-color: #000;
  background-color: transparent;
  outline: none;
  box-shadow: none;
}

/* Контейнер для полей (для позиционирования иконок) */
body .ui-dialog.ui-dialog-auth-modal .auth-modal .form-item {
  position: relative;
  margin-bottom: 20px;
}

/* Общие стили для иконок в полях ввода */
body .ui-dialog.ui-dialog-auth-modal .js-form-item:before {
  display: block;
  position: absolute;
  left: 20px;
  top: calc(50% + 1px);
  transform: translateY(-50%);
  color: #555 !important;
  z-index: 10;
  font-family: "Font Awesome 5 Free", Arial, sans-serif;
  font-weight: 900;
  font-size: 16px !important;
  pointer-events: none;
}

/* Позиционирование иконок */
body .ui-dialog.ui-dialog-auth-modal .mb-3 {
  position: relative;
}

/* Иконка пользователя */
body .ui-dialog.ui-dialog-auth-modal .js-form-item-name:before {
  content: "\f007";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 20px;
  top: 42px;
  color: #555;
  font-size: 16px;
  z-index: 50;
  pointer-events: none;
}

/* Иконка пароля */
body .ui-dialog.ui-dialog-auth-modal .js-form-item-pass:before {
  content: "\f023";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 20px;
  top: 42px;
  color: #555;
  font-size: 16px;
  z-index: 50;
  pointer-events: none;
}

/* Иконка email */
body .ui-dialog.ui-dialog-auth-modal .js-form-item-mail:before {
  content: "\f0e0";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 20px;
  top: 42px;
  color: #555;
  font-size: 16px;
  z-index: 50;
  pointer-events: none;
}

/* Стилизация кнопки отправки */
body .ui-dialog.ui-dialog-auth-modal .auth-modal .form-submit,
body .ui-dialog.ui-dialog-auth-modal .auth-modal .button.button--primary,
body .ui-dialog.ui-dialog-auth-modal .auth-modal .auth-submit-button,
body .ui-dialog.ui-dialog-auth-modal form .button.js-form-submit {
  width: 100%;
  padding: 14px;
  border: none;
  border-radius: 50px;
  background: linear-gradient(135deg, #000 0%, #333 100%);
  color: white;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all 0.3s ease;
  font-size: 14px;
  margin-top: 15px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

body .ui-dialog.ui-dialog-auth-modal .auth-modal .form-submit:hover,
body .ui-dialog.ui-dialog-auth-modal .auth-modal .button.button--primary:hover,
body .ui-dialog.ui-dialog-auth-modal .auth-modal .auth-submit-button:hover,
body .ui-dialog.ui-dialog-auth-modal form .button.js-form-submit:hover {
  background: linear-gradient(135deg, #333 0%, #000 100%);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

/* Стилизация меток полей */
body .ui-dialog.ui-dialog-auth-modal .auth-modal label {
  font-weight: 500;
  color: #555;
  font-size: 14px;
  margin-bottom: 5px;
  display: block;
}

/* Стили для CAPTCHA */
body .ui-dialog.ui-dialog-auth-modal .captcha,
body .ui-dialog.ui-dialog-auth-modal form .captcha,
body .ui-dialog.ui-dialog-auth-modal div[data-drupal-selector="edit-captcha"] {
  margin: 30px 0 20px 0; /* Увеличиваем отступ сверху */
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 10px; /* Добавляем отступ сверху */
  /* Убираем светлую границу сверху */
}

body .ui-dialog.ui-dialog-auth-modal .captcha__element {
  margin-bottom: 5px;
  display: flex;
  justify-content: center;
}

body .ui-dialog.ui-dialog-auth-modal .captcha__description {
  font-size: 12px;
  color: #777;
  text-align: center;
  max-width: 300px;
  margin: 0 auto;
}

/* Правила для отображения иконок в полях формы */
body .ui-dialog.ui-dialog-auth-modal form .js-form-type-textfield.form-type-textfield.js-form-item-name.form-item-name.mb-3:before,
body .ui-dialog.ui-dialog-auth-modal form .js-form-type-textfield:before,
body .ui-dialog.ui-dialog-auth-modal form input[name="name"]~label:before {
  content: "\f007" !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 0 !important; /* u0421u0434u0432u0438u0433u0430u0435u043c u0438u043au043eu043du043au0438 u0432u043bu0435u0432u043e u0434u043e u043au0440u0430u044f */
  top: 38px !important;
  color: #555 !important;
  font-size: 16px !important;
  z-index: 10 !important;
  pointer-events: none !important;
}

/* Правила для отображения иконок в полях формы */
body .ui-dialog.ui-dialog-auth-modal form .js-form-type-password.form-type-password.js-form-item-pass.form-item-pass.mb-3:before,
body .ui-dialog.ui-dialog-auth-modal form .js-form-type-password:before,
body .ui-dialog.ui-dialog-auth-modal form input[name="pass"]~label:before {
  content: "\f023" !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 0 !important; /* u0421u0434u0432u0438u0433u0430u0435u043c u0438u043au043eu043du043au0438 u0432u043lu0435u0432u043e u0434u043e u043au0440u0430u044f */
  top: 38px !important;
  color: #555 !important;
  font-size: 16px !important;
  z-index: 10 !important;
  pointer-events: none !important;
}

/* Правила для отображения иконок в полях формы */
body .ui-dialog.ui-dialog-auth-modal form .js-form-type-email.form-type-email.js-form-item-mail.form-item-mail.mb-3:before,
body .ui-dialog.ui-dialog-auth-modal form .js-form-type-email:before,
body .ui-dialog.ui-dialog-auth-modal form input[name="mail"]~label:before {
  content: "\f0e0" !important;
  font-family: "Font Awesome 5 Free" !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 0 !important; /* u0421u0434u0432u0438u0433u0430u0435u043c u0438u043au043eu043du043au0438 u0432u043lu0435u0432u043e u0434u043e u043au0440u0430u044f */
  top: 38px !important;
  color: #555 !important;
  font-size: 16px !important;
  z-index: 10 !important;
  pointer-events: none !important;
}

/* Настройка отступов в полях, чтобы текст не накладывался на иконки */
body .ui-dialog.ui-dialog-auth-modal form input[type="text"],
body .ui-dialog.ui-dialog-auth-modal form input[type="password"],
body .ui-dialog.ui-dialog-auth-modal form input[type="email"] {
  padding-left: 26px !important; /* u0423u043cu0435u043du044cu0448u0430u0435u043c u043eu0442u0441u0442u0443u043f, u0447u0442u043eu0431u044b u0442u0435u043au0441u0442 u043du0435 u043du0430u043au043bu0430u0434u044bu0432u0430u043bu0441u044f u043du0430 u0438u043au043eu043du043au0443 */
}

/* Fallback для Font Awesome если он не доступен */
@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  src: url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/webfonts/fa-solid-900.woff2') format('woff2');
}

/* Обеспечиваем, чтобы родительский элемент поля был с position: relative, это критично для абсолютного позиционирования псевдоэлементов */
body .ui-dialog.ui-dialog-auth-modal form .js-form-item {
  position: relative !important;
}

/* Улучшаем стили для меток полей */
body .ui-dialog.ui-dialog-auth-modal form label {
  display: block;
  margin-bottom: 8px;
  font-weight: 500;
  color: #000; /* Делаем цвет меток полей черным */
  font-size: 15px;
}

/* Добавляем звездочку для обязательных полей */
body .ui-dialog.ui-dialog-auth-modal form .form-required:after {
  content: none;
}

/* Адаптивные настройки */
@media (max-width: 480px) {
  body .ui-dialog.ui-dialog-auth-modal {
    max-width: 95% !important;
    top: 2vh !important;
  }
  
  body .ui-dialog.ui-dialog-auth-modal .auth-modal-content {
    padding: 0 15px 20px;
  }
  
  body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="text"],
  body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="password"],
  body .ui-dialog.ui-dialog-auth-modal .auth-modal input[type="email"] {
    padding: 12px 10px 12px 40px;
  }
  
  body .ui-dialog.ui-dialog-auth-modal .auth-modal-tabs .tab-link {
    padding: 12px 5px;
    font-size: 14px;
  }
}

/* Добавляем отступ для элементов mb-3 */
body .ui-dialog.ui-dialog-auth-modal form .mb-3 {
  margin-bottom: 20px !important;
}

/* Добавляем стили для модального окна */
.ui-widget-overlay {
  opacity: 0.7 !important;
  background: rgba(0, 0, 0, 0.3) !important;
}

/* Стилизуем модальное окно */
body .ui-dialog.ui-dialog-auth-modal {
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3) !important;
  max-height: 90vh !important;
  overflow: visible !important;
}

/* Обеспечиваем, чтобы содержимое модального окна было видимым */
body .ui-dialog.ui-dialog-auth-modal .ui-dialog-content {
  max-height: calc(90vh - 120px) !important;
  overflow-y: auto !important;
}

/* Адаптивные настройки */
@media (max-width: 480px) {
  body .ui-dialog.ui-dialog-auth-modal {
    width: 95vw !important;
    max-width: 400px !important;
  }
}
