/* ==========================================================================
   DUELPORT — AUTH PAGE (login / register)
   Вставте фонове зображення: /img/auth-bg.webp
   ========================================================================== */
.dp-auth {
  min-height: 100dvh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 18px;
  background-color: #05091a;
  background-image:
    linear-gradient(360deg, rgba(0, 0, 29, 0.75) 0%, rgba(0, 0, 53, 0.3) 45.48%, rgba(0, 0, 29, 0) 121.28%),
    url("/img/auth-bg.webp");
  background-size: cover;
  background-position: center;

}

.dp-auth__card {
  width: 100%;
  max-width: 420px;
  background: linear-gradient(180deg, #060c18, #0b1526);
  border: 1px solid var(--dp-line);
  border-radius: 18px;
  padding: 26px 22px;
  box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .9);
}
@media (min-width: 1024px) { .dp-auth__card { max-width: 440px; padding: 32px 30px; } }

.dp-auth__logo { display: inline-flex; justify-content: center; width: 100%; margin: 0 auto 20px; }
@media (min-width: 1024px) { .dp-auth__logo { margin-bottom: 24px; } }

/* --- Вкладки --- */
.dp-auth__tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  padding: 5px;
  background: rgba(4, 8, 16, .6);
  border: 1px solid var(--dp-line);
  border-radius: 999px;
}

.dp-auth__tab {
  padding: 11px 14px;
  border-radius: 999px;
  color: var(--dp-muted);
  font-size: 14px;
  font-weight: 700;
  transition: background-color .2s var(--dp-ease), color .2s var(--dp-ease);
}
.dp-auth__tab:hover { color: var(--dp-text); }
.dp-auth__tab.is-active {
  background: linear-gradient(180deg, var(--dp-gold-2), var(--dp-gold));
  color: #1a1204;
  box-shadow: 0 8px 22px -12px rgba(244, 176, 25, .8);
}

/* --- Повідомлення --- */
.dp-auth__msg {
  margin-top: 16px;
  padding: 11px 14px;
  border-radius: 10px;
  font-size: 13px;
  line-height: 1.45;
}
.dp-auth__msg[hidden] { display: none; }
.dp-auth__msg.is-error { background: rgba(210, 60, 60, .14); border: 1px solid rgba(210, 60, 60, .5); color: #f2b8b8; }
.dp-auth__msg.is-ok { background: rgba(43, 143, 224, .14); border: 1px solid rgba(43, 143, 224, .5); color: var(--dp-blue-2); }

/* --- Панелі / форми --- */
.dp-auth__panel { margin-top: 20px; }
.dp-auth__panel[hidden] { display: none; }

.dp-auth__form { display: flex; flex-direction: column; gap: 15px; }

.dp-auth__field { display: flex; flex-direction: column; gap: 7px; }
.dp-auth__label { color: #cdd6e6; font-size: 13px; font-weight: 500; }

.dp-auth__input {
  width: 100%;
  padding: 13px 14px;
  background: rgba(4, 8, 16, .6);
  border: 1px solid var(--dp-line);
  border-radius: var(--dp-radius-sm);
  color: var(--dp-text);
  font-family: inherit;
  font-size: 15px;
  transition: border-color .2s var(--dp-ease), box-shadow .2s var(--dp-ease);
}
.dp-auth__input::placeholder { color: var(--dp-dim); }
.dp-auth__input:focus {
  outline: none;
  border-color: var(--dp-blue);
  box-shadow: 0 0 0 3px rgba(43, 143, 224, .18);
}

.dp-auth__submit { margin-top: 6px; }
.dp-auth__submit:disabled { opacity: .7; cursor: default; }

/* --- Перемикання / назад --- */
.dp-auth__switch { margin-top: 18px; text-align: center; color: var(--dp-muted); font-size: 13px; }
.dp-auth__link { color: var(--dp-blue-2); font-weight: 700; font-size: 13px; }
.dp-auth__link:hover { text-decoration: underline; }

.dp-auth__back {
  display: block;
  margin-top: 18px;
  text-align: center;
  color: var(--dp-dim);
  font-size: 13px;
  transition: color .2s var(--dp-ease);
}
.dp-auth__back:hover { color: var(--dp-text); }
