
html {
  font-size: 16px;                /* база для rem */
  -webkit-text-size-adjust: 100%; /* избегаем непредсказуемого авто-скейла текста на iOS */
}


.otp-page {
  text-align: center;
  padding: 60px;
}


/* Общий фон */
/*old background color*/
/*background: linear-gradient(135deg, #1f2a38, #3a5a78, #a8c6d9);*/

body#page-login-splashpage {
  margin: 0;
  padding: 0;
  background: linear-gradient(135deg, #0e202c, #57778b, #e7f0f7);
  background-size: 300% 300%;
  animation: gradientShift 12s ease infinite;
  font-family: 'Poppins', sans-serif;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 100vh;
}

/* Анимация фона */
@keyframes gradientShift {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}


/* Карточка */

.card {
  backdrop-filter: blur(18px);
  border-radius: 18px;
  padding: 48px 56px;          /* больше внутренний отступ */
  width: 95%;                  /* почти вся ширина */
  max-width: 640px;            /* увеличили максимальную ширину */
  box-shadow: 0 6px 24px rgba(0,0,0,0.18);
  transition: transform 0.3s ease;
}
.card:hover {
  transform: translateY(-6px);
}


.card-header {
  font-size: 2rem;
  font-weight: 600;
  color: #000;
  margin-bottom: 16px;
  text-align: center;
}


/* Поля формы */
.form-control {
  width: 100%;
  max-width: 320px;
  min-height: 44px;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid rgba(0,0,0,0.1);
  font-size: 1rem;
  margin: 0 auto 14px;
  text-align: center;
  display: block;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}
.form-control:focus {
  border-color: #3a5a78;
  box-shadow: 0 0 6px rgba(58,90,120,0.3);
  outline: none;
}

/* Кнопки */
.btn {
  background: #3a5a78;
  border: none;
  border-radius: 8px;
  padding: 12px 18px;
  font-size: 1rem;
  font-weight: 500;
  color: #fff;
  transition: background 0.3s ease, transform 0.2s ease;
  width: 100%;
  max-width: 200px;
  margin: 16px auto;
  display: block;
  min-height: 44px;
}
.btn:hover {
  background: #2e4a64;
  transform: scale(1.04);
}

/* Таймер */
#timer {
  display: inline-block;
  margin-left: 8px;
  font-weight: 500;
  color: #333;
}

/* Контейнер для кнопки и таймера */
.actions-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.langmenu-container {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 1000;
    background: transparent;       /* убрали фон */
    padding: 6px 10px;             /* компактнее */
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
    display: flex;
    gap: 8px;                      /* равномерный отступ между ссылками */
}

.langmenu-container a {
    color: #fff;                   /* белый текст для контраста с фоном */
    text-decoration: none;
    font-weight: 500;
    padding: 4px 8px;
    border-radius: 6px;
    transition: background 0.3s ease, color 0.3s ease;
}

.langmenu-container a:hover {
    background: rgba(255,255,255,0.15); /* лёгкий прозрачный фон при hover */
    color: #fff;
}

/*back button*/
.back-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    background-color: #f8f9fa;
    border: 1px solid #ccc;
    border-radius: 50%;
    color: #333;
    font-size: 18px;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
    box-shadow: 0 2px 4px rgba(0,0,0,0.08);
}

.back-btn:hover {
    background-color: #e9ecef;
    border-color: #999;
    color: #000;
    box-shadow: 0 3px 6px rgba(0,0,0,0.12);
}

.back-btn:active {
    background-color: #dee2e6;
    transform: scale(0.95);
}
/*back button*/

/* Мобильная адаптация */
@media (max-width: 768px) {

  .langmenu-container {
    font-size: 12px;
    padding: 4px 6px;
    gap: 4px;
    background: rgba(0,0,0,0.3);
    border-radius: 8px;
  }

  .langmenu-container a {
    padding: 2px 4px;
  }
  
.otp-page {
    padding: 32px 16px;
  }


.card {
    width: calc(100% - 32px);
    max-width: 420px;
    padding: 24px 20px;
    margin: 0 auto;
    border-radius: 14px;

  }

  .form-control {
    font-size: 0.95rem;
  }
  .btn {
    font-size: 0.95rem;
  }
  
  .card-header {
      font-size: clamp(1.25rem, 1rem + 1.2vw, 1.6rem);
    }

  

}

/* Уважение настроек ОС */
@media (prefers-reduced-motion: reduce) {
  body#page-login-splashpage {
    animation: none;
    background-size: cover;
  }
  .card, .btn {
    transition: none;
  }
}

.card-header, #timer { color: #111; }

/* ==== OTP типографика как у splash ==== */

/* 1) Карточка — стекло и размеры в стиле splash */
#page-login-splashpage .card {
  background: rgba(255, 255, 255, 0.9);                 /* как splash */
  backdrop-filter: blur(20px);                            /* как splash */
  -webkit-backdrop-filter: blur(20px);
  border-radius: 20px;                                    /* было 16/18 -> 20 */
  padding: 40px 50px;                                     /* как splash */
  width: 80%;
  max-width: 500px;                                       /* как splash */
  min-height: 300px;                                      /* как splash */
  box-shadow: 0 8px 30px rgba(0,0,0,0.25);                /* как splash */
}

/* 2) Заголовок карточки (как h2 в splash) */
#page-login-splashpage .card-header {
  font-family: 'Poppins', sans-serif;
  font-size: 2rem;                                        /* как splash */
  font-weight: 600;
  color: #000;                                            /* тёмный текст */
  margin-bottom: 15px;
  text-align: center;
}

/* 3) Базовый текст в карточке */
#page-login-splashpage .card-body,
#page-login-splashpage .card-body p,
#page-login-splashpage label {
  font-family: 'Poppins', sans-serif;
  color: #000;                                            /* как splash */
  font-size: 1.05rem;                                     /* немного крупнее */
  line-height: 1.5;
}

/* 4) Поля формы — как в splash form внутри карточки */
#page-login-splashpage .form-control {
  width: 100%;
  max-width: 100%;                                        /* на всю ширину карточки */
  min-height: 48px;                                       /* как splash */
  padding: 10px 12px;
  border-radius: 10px;                                    /* как splash */
  border: 1px solid rgba(0,0,0,0.08);                     /* как splash */
  font-size: 1rem;
  text-align: left;                                       /* в splash поля обычные, не центр */
  margin: 0 0 14px;                                       /* убрали auto по центру */
}

/* 5) Кнопки — палитра splash */
#page-login-splashpage .btn.btn-primary,
#page-login-splashpage .btn {
  background: #152b3a;                                    /* splash */
  border: none;
  border-radius: 10px;                                    /* splash */
  padding: 12px 20px;
  font-size: 1.1rem;
  font-weight: 500;
  color: #fff;
  transition: all .3s ease;
  width: 100%;
  max-width: 100%;                                        /* тянем на ширину формы */
  margin: 16px 0;
  min-height: 48px;                                       /* комфортная тач-мишень */
}

#page-login-splashpage .btn:hover {
  background: #1f445c;                                    /* hover как в splash */
  transform: scale(1.02);
}

/* 6) Ряд с отправкой OTP — ровно и по центру */
#page-login-splashpage .actions-row,
#page-login-splashpage .d-flex.align-items-center.gap-2 {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
}

/* 7) Таймер — приглушённый, как вторичный текст */
#page-login-splashpage #timer {
  color: #333;
  font-weight: 500;
}

/* 8) Мобильная адаптация — типографика как на splash */
@media (max-width: 768px) {
  #page-login-splashpage .card {
    width: 100%;
    max-width: none;
    padding: 24px 20px;                /* как мобильный splash */
    border-radius: 16px;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 6px 22px rgba(0,0,0,0.22);
  }
  #page-login-splashpage .card-header {
    font-size: clamp(1.35rem, 1rem + 1.2vw, 1.8rem); /* плавно, как splash */
    margin-bottom: 12px;
  }
  #page-login-splashpage .card-body,
  #page-login-splashpage .card-body p,
  #page-login-splashpage label {
    font-size: .98rem;
  }
  #page-login-splashpage .btn {
    font-size: 1rem;
    padding: 14px 16px;
    border-radius: 12px;
  }
}

/* 9) Уважение prefers-reduced-motion (как на splash) */
@media (prefers-reduced-motion: reduce) {
  #page-login-splashpage .card,
  #page-login-splashpage .btn {
    transition: none;
  }
}

/* Стиль для alert внутри OTP страницы */
#page-login-splashpage .alert {
    max-width: 500px;              /* ограничиваем ширину */
    width: 100%;                    /* адаптивно */
    margin: 12px auto;             /* центрируем */
    padding: 12px 16px;            /* компактнее */
    font-size: 1rem;               /* читаемый размер */
    border-radius: 10px;           /* скругление как у карточки */
    box-shadow: 0 4px 12px rgba(0,0,0,0.15); /* лёгкая тень */
}
/* Скрыть кнопку закрытия у alert */
#page-login-splashpage .alert .btn-close,
#page-login-splashpage .alert .close {
    display: none !important;
}

