/* Auth screens styled after the Codebase (Bootstrap 5) layout used by the original panel. */
:root {
  --bs-font-sans-serif: "Maven Pro", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --ga-primary: #0665d0;
  --ga-primary-alt-bg: #cfe2f6;
  --ga-primary-alt-color: #054c9c;
}

body {
  font-family: var(--bs-font-sans-serif);
  color: #343a40;
  background: #fff;
}

.bg-image {
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.bg-black-50 { background-color: rgba(0, 0, 0, .5); }
.text-white-75 { color: rgba(255, 255, 255, .75) !important; }

.hero-static { min-height: 100vh; }

.content-full { padding: 1.875rem 1.75rem; }

.form-control {
  border-radius: 0;
  border-color: #6b7280;
}
.form-control:focus {
  border-color: var(--ga-primary);
  box-shadow: none;
  border-width: 2px;
}
.form-floating > label { color: #343a40; }
.form-select { border-radius: 0; border-color: #6b7280; }

.btn-alt-primary {
  color: var(--ga-primary-alt-color);
  background-color: var(--ga-primary-alt-bg);
  border-color: var(--ga-primary-alt-bg);
  border-radius: .375rem;
}
.btn-alt-primary:hover,
.btn-alt-primary:focus {
  color: #fff;
  background-color: var(--ga-primary);
  border-color: var(--ga-primary);
}

.link-fx {
  position: relative;
  text-decoration: none;
}
.link-fx::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background-color: var(--ga-primary);
  transform: scaleX(0);
  transition: transform .12s ease-out;
}
.link-fx:hover::before { transform: scaleX(1); }

.btn-google {
  background-color: #fff;
  color: #222;
  display: inline-flex;
  align-items: center;
  padding: 10px 16px;
  border: 1px solid #818181;
  text-decoration: none;
  font-weight: 500;
}
.btn-google:hover {
  background-color: #222;
  color: #fff;
}
.btn-google img { width: 20px; height: 20px; margin-right: 8px; }

.invalid-feedback { display: block; }
