/* Standalone login page — centered card, theme-aware (html[data-theme]). */

body.portal-chrome-login-body.or-portal-with-brand-accent-bar {
  margin: 0;
  min-height: 100vh;
  padding-top: calc(var(--portal-brand-accent-bar-height, 10px) + 2rem);
  font-family: var(--cds-font-family-base, "Barlow", "Inter", "Segoe UI", system-ui, sans-serif);
}

main.portal-chrome-login-main {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1rem 3rem;
  min-height: calc(100vh - var(--portal-brand-accent-bar-height, 10px) - 4rem);
}

.portal-chrome-login-card {
  max-width: 26rem;
}

html[data-theme="light"] body.portal-chrome-login-body {
  background-color: #f8fafc;
  color: #1e1e1e;
}

html[data-theme="dark"] body.portal-chrome-login-body {
  color-scheme: dark;
  background-color: #121416;
  color: #e8eaed;
}

html[data-theme="dark"] .portal-chrome-login-card .form-control {
  background-color: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
  color: #e8eaed;
}

html[data-theme="dark"] .portal-chrome-login-card .form-control:focus {
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.35);
  color: #fff;
}

html[data-theme="dark"] .text-muted {
  color: rgba(232, 234, 237, 0.65) !important;
}

/* Theme toggle on login: fixed bottom-right, matches portal-appearance.js */
.portal-chrome-login-theme-bar {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  z-index: 1030;
}

.portal-chrome-login-theme-bar .btn-link {
  color: inherit;
  opacity: 0.85;
}

html[data-theme="dark"] .portal-chrome-login-theme-bar .btn-link {
  color: #e8eaed;
}
