body.auth-ui-2026 {
  --auth-primary: #2563eb;
  --auth-secondary: #0f766e;
  --auth-accent: #06b6d4;
  --auth-surface: rgba(255, 255, 255, 0.9);
  --auth-border: rgba(148, 163, 184, 0.2);
  --auth-text: #0f172a;
  --auth-text-soft: #475569;
  --auth-muted: #64748b;
  --auth-shadow: 0 28px 70px rgba(15, 23, 42, 0.14);
  font-family: "Plus Jakarta Sans", "Inter", "Source Sans Pro", "Segoe UI", sans-serif !important;
  color: var(--auth-text);
  background:
    radial-gradient(circle at top left, rgba(37, 99, 235, 0.2), transparent 26%),
    radial-gradient(circle at top right, rgba(6, 182, 212, 0.16), transparent 22%),
    linear-gradient(180deg, #f3f8fd 0%, #eef5fb 50%, #f8fbff 100%) !important;
  background-attachment: fixed;
}

body.auth-ui-2026::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.18), transparent 42%),
    radial-gradient(circle at bottom left, rgba(14, 165, 233, 0.08), transparent 18%);
}

body.auth-ui-2026 .main-container,
body.auth-ui-2026 .container {
  position: relative;
  z-index: 1;
}

body.auth-ui-2026 .language-selector .btn,
body.auth-ui-2026 .language-selector .dropdown-menu {
  border-radius: 18px !important;
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.1) !important;
  backdrop-filter: blur(18px);
}

body.auth-ui-2026 .language-selector .btn {
  background: rgba(255, 255, 255, 0.86) !important;
  color: var(--auth-text) !important;
  font-weight: 700;
  padding: 0.72rem 0.95rem !important;
}

body.auth-ui-2026 .language-selector .dropdown-menu {
  padding: 0.4rem;
  background: rgba(255, 255, 255, 0.92) !important;
}

body.auth-ui-2026 .language-selector .dropdown-item {
  border-radius: 14px;
  padding: 0.72rem 0.85rem;
  color: var(--auth-text-soft);
  font-weight: 600;
}

body.auth-ui-2026 .language-selector .dropdown-item.active,
body.auth-ui-2026 .language-selector .dropdown-item:hover {
  background: rgba(219, 234, 254, 0.88);
  color: #1d4ed8;
}

body.auth-ui-2026 .main-container.centered-layout {
  max-width: 560px;
}

body.auth-ui-2026 .login-container,
body.auth-ui-2026 .form-signin {
  position: relative;
}

body.auth-ui-2026 .login-container::before,
body.auth-ui-2026 .form-signin::before {
  content: "";
  position: absolute;
  inset: -14px;
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(37, 99, 235, 0.14), rgba(6, 182, 212, 0.08));
  filter: blur(24px);
  z-index: -1;
}

body.auth-ui-2026 .login-logo {
  margin-bottom: 1.7rem;
}

body.auth-ui-2026 .login-logo img {
  width: 86px;
  height: 86px;
  max-width: 86px;
  object-fit: contain;
  margin-bottom: 0.95rem;
  padding: 0.8rem;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 22px 42px rgba(37, 99, 235, 0.16);
}

body.auth-ui-2026 .login-logo a {
  color: var(--auth-text) !important;
  font-family: "Plus Jakarta Sans", "Inter", sans-serif !important;
  font-size: 2rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.05em;
}

body.auth-ui-2026 .card,
body.auth-ui-2026 .form-signin {
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  border-radius: 32px !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.92)) !important;
  box-shadow: var(--auth-shadow) !important;
  backdrop-filter: blur(22px);
  overflow: hidden;
}

body.auth-ui-2026 .form-signin {
  max-width: 520px;
  margin: 7vh auto 0;
  padding: 2rem 1.8rem !important;
}

body.auth-ui-2026 .login-card-body,
body.auth-ui-2026 .login-wrap {
  padding: 2rem !important;
}

body.auth-ui-2026 .login-box-msg,
body.auth-ui-2026 .form-signin h1,
body.auth-ui-2026 .form-signin h3 {
  margin-bottom: 1rem !important;
  padding-bottom: 0 !important;
  border: 0 !important;
  color: var(--auth-text) !important;
  font-family: "Plus Jakarta Sans", "Inter", sans-serif !important;
  font-size: clamp(1.35rem, 2vw, 1.8rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.05em;
}

body.auth-ui-2026 .login-box-msg i,
body.auth-ui-2026 .form-signin h1::before,
body.auth-ui-2026 .form-signin h3::before {
  color: var(--auth-primary);
}

body.auth-ui-2026 .form-signin p,
body.auth-ui-2026 .forgot-password,
body.auth-ui-2026 #infoMessage,
body.auth-ui-2026 .text-muted {
  color: var(--auth-muted) !important;
}

body.auth-ui-2026 #infoMessage {
  margin-bottom: 1rem;
  border-radius: 18px;
  background: rgba(254, 226, 226, 0.76);
  padding: 0.9rem 1rem;
}

body.auth-ui-2026 .input-group,
body.auth-ui-2026 .form-signin p {
  margin-bottom: 1.1rem !important;
}

body.auth-ui-2026 .form-signin label {
  display: block;
  margin-bottom: 0.5rem !important;
  color: var(--auth-muted);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body.auth-ui-2026 .form-control,
body.auth-ui-2026 .form-signin input[type="text"],
body.auth-ui-2026 .form-signin input[type="password"],
body.auth-ui-2026 .form-signin input[type="email"] {
  min-height: 54px !important;
  border: 1px solid rgba(203, 213, 225, 0.88) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  color: var(--auth-text) !important;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
  padding: 0.95rem 1rem !important;
  font-size: 0.96rem !important;
}

body.auth-ui-2026 .form-control:focus,
body.auth-ui-2026 .form-signin input[type="text"]:focus,
body.auth-ui-2026 .form-signin input[type="password"]:focus,
body.auth-ui-2026 .form-signin input[type="email"]:focus {
  border-color: rgba(37, 99, 235, 0.56) !important;
  box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12) !important;
}

body.auth-ui-2026 .input-group-text {
  border-radius: 18px !important;
  border: 1px solid rgba(203, 213, 225, 0.88) !important;
  background: rgba(248, 250, 252, 0.94) !important;
  color: var(--auth-primary) !important;
  padding: 0 1rem !important;
}

body.auth-ui-2026 .btn,
body.auth-ui-2026 input[type="submit"],
body.auth-ui-2026 .detailsbutton {
  border: 0 !important;
  border-radius: 18px !important;
  font-family: "Plus Jakarta Sans", "Inter", sans-serif !important;
  font-size: 0.94rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em;
  min-height: 52px;
  padding: 0.9rem 1.2rem !important;
  box-shadow: 0 18px 30px rgba(37, 99, 235, 0.16);
}

body.auth-ui-2026 .btn-primary,
body.auth-ui-2026 input[type="submit"],
body.auth-ui-2026 .detailsbutton {
  background: linear-gradient(135deg, var(--auth-primary), #3b82f6) !important;
  color: #ffffff !important;
}

body.auth-ui-2026 .btn-light,
body.auth-ui-2026 .btn-secondary {
  background: rgba(241, 245, 249, 0.96) !important;
  color: var(--auth-text-soft) !important;
  box-shadow: none !important;
}

body.auth-ui-2026 .btn:hover,
body.auth-ui-2026 input[type="submit"]:hover,
body.auth-ui-2026 .detailsbutton:hover {
  transform: translateY(-1px);
  filter: brightness(1.02);
}

body.auth-ui-2026 .forgot-password {
  font-weight: 700;
}

body.auth-ui-2026 .forgot-password:hover {
  color: var(--auth-primary) !important;
  text-decoration: none;
}

body.auth-ui-2026 .modal-content {
  border: 1px solid rgba(255, 255, 255, 0.72) !important;
  border-radius: 28px !important;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.92)) !important;
  box-shadow: 0 30px 70px rgba(15, 23, 42, 0.18) !important;
}

body.auth-ui-2026 .modal-header,
body.auth-ui-2026 .modal-footer {
  border: 0 !important;
  padding: 1rem 1.3rem !important;
}

body.auth-ui-2026 .modal-body {
  padding: 0 1.3rem 1.2rem !important;
}

body.auth-ui-2026 .modal-title {
  color: var(--auth-text) !important;
  font-family: "Plus Jakarta Sans", "Inter", sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 800 !important;
}

body.auth-ui-2026 .close {
  color: var(--auth-muted) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

body.auth-ui-2026 .alert {
  border: 0 !important;
  border-radius: 18px !important;
  padding: 0.9rem 1rem !important;
}

body.auth-ui-2026 .alert-danger {
  background: rgba(254, 226, 226, 0.94) !important;
  color: #b91c1c !important;
}

body.auth-ui-2026 table,
body.auth-ui-2026 th,
body.auth-ui-2026 td {
  border-color: rgba(226, 232, 240, 0.76) !important;
}

@media (max-width: 991.98px) {
  body.auth-ui-2026 {
    padding: 1.2rem !important;
  }

  body.auth-ui-2026 .main-container.centered-layout,
  body.auth-ui-2026 .container {
    max-width: 100%;
  }

  body.auth-ui-2026 .login-card-body,
  body.auth-ui-2026 .login-wrap,
  body.auth-ui-2026 .form-signin {
    padding: 1.4rem !important;
  }
}

@media (max-width: 575.98px) {
  body.auth-ui-2026 .language-selector {
    top: 12px;
    right: 12px;
  }

  body.auth-ui-2026 .login-logo img {
    width: 72px;
    height: 72px;
  }

  body.auth-ui-2026 .login-logo a {
    font-size: 1.65rem !important;
  }
}
