/* SPDX-License-Identifier: AGPL-3.0-or-later */
/* Deployment-only login surface; the existing Vue authentication form is unchanged. */
.login-page {
  min-height: 100vh !important;
  min-height: 100svh !important;
  color: #1f2937 !important;
  background: #f5f7fa !important;
}

.login-page > :not(.site-header),
.login-page .site-nav,
.login-page .locale-switch,
.login-page .quote-trigger,
body:has(.login-page) .customer-service-widget,
body:has(.login-page) .commerce-overlay {
  display: none !important;
}

.login-page .site-header {
  min-height: 76px !important;
  padding: 16px clamp(20px, 4vw, 56px) !important;
  color: #1f2937 !important;
  background: #fff !important;
  border-bottom: 1px solid #e5e7eb !important;
  backdrop-filter: none !important;
}

.login-page .brand-lockup {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

.login-page .brand-mark {
  color: #fff !important;
  background: var(--login-theme, #2563a6) !important;
}

.login-page .brand-mark.has-logo {
  background: #fff !important;
}

.login-page .site-name strong {
  white-space: normal !important;
  overflow-wrap: anywhere;
}

.login-page .header-actions {
  flex: 0 0 auto !important;
  margin-left: auto !important;
}

.login-page .header-login {
  color: #1f2937 !important;
  background: #fff !important;
  border: 1px solid #cbd5e1 !important;
  backdrop-filter: none !important;
}

.login-page .header-login:hover,
.login-page .header-login:focus-visible {
  color: #fff !important;
  background: var(--login-theme, #2563a6) !important;
  border-color: var(--login-theme, #2563a6) !important;
}

body:has(.login-page) .auth-overlay {
  padding: 100px 20px 24px !important;
  background: transparent !important;
  backdrop-filter: none !important;
}

body:has(.login-page) .auth-panel {
  width: min(100%, 430px) !important;
  max-height: calc(100dvh - 124px) !important;
}

body:has(.login-page) .auth-card {
  border-color: #e5e7eb !important;
  box-shadow: 0 8px 28px rgb(15 23 42 / 8%) !important;
}

@media (max-width: 480px) {
  .login-page .site-header { gap: 12px !important; }
  .login-page .brand-mark { width: 36px; height: 36px; }
  .login-page .site-name strong { font-size: 14px; }
  body:has(.login-page) .auth-card { padding: 28px 22px !important; }
}
