/* Ohio Data Solutions — quiet internal portal homepage */

body.ods-portal-body,
body:has(.ods-portal-card) {
  background: #1a1d23 !important;
  min-height: 100%;
  color: #f5f0e6;
}

body.ods-portal-body #wrapwrap,
body:has(.ods-portal-card) #wrapwrap {
  background: #1a1d23 !important;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

body.ods-portal-body #wrapwrap > main,
body:has(.ods-portal-card) #wrapwrap > main {
  flex: 1 0 auto;
  display: flex;
  align-items: center;
}

.ods-portal-wrap {
  width: 100%;
}

.ods-portal-card,
.ods-portal-card.card,
div.card.ods-portal-card {
  background: #22262e !important;
  background-color: #22262e !important;
  --bs-card-bg: #22262e !important;
  --bs-body-bg: #22262e !important;
  --bs-body-color: #f5f0e6 !important;
  color: #f5f0e6 !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 36px rgba(0, 0, 0, 0.4);
  width: 100%;
  max-width: 420px;
}

.ods-portal-card .card-body {
  background: transparent !important;
  padding: 1.75rem 1.5rem;
  color: #f5f0e6 !important;
}

.ods-portal-logo {
  max-height: 88px;
  max-width: 100%;
  width: auto;
  height: auto;
}

.ods-portal-card .border-bottom,
.ods-portal-card .border-top {
  border-color: #3a414d !important;
}

.ods-portal-tagline {
  color: #f5f0e6 !important;
  font-size: 1.05rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  margin: 0;
}

.ods-portal-muted {
  color: #a8b0bd !important;
  margin: 0;
}

.ods-portal-btn-primary,
.ods-portal-card .btn-primary,
a.btn.ods-portal-btn-primary {
  background-color: #1d4ed8 !important;
  border-color: #1d4ed8 !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 0.65rem 1rem;
  font-weight: 600;
  text-decoration: none !important;
}

.ods-portal-btn-primary:hover,
.ods-portal-btn-primary:focus,
.ods-portal-card .btn-primary:hover,
.ods-portal-card .btn-primary:focus {
  background-color: #1e40af !important;
  border-color: #1e40af !important;
  color: #fff !important;
}

.ods-portal-secondary a {
  color: #f5c518 !important;
  text-decoration: none;
  font-size: 0.95rem;
}

.ods-portal-secondary a:hover,
.ods-portal-secondary a:focus {
  color: #ffd84d !important;
  text-decoration: underline;
}

.ods-portal-footer,
.ods-portal-footer a,
.ods-portal-card .ods-portal-footer a {
  color: #a8b0bd !important;
  text-decoration: none;
}

.ods-portal-footer a:hover,
.ods-portal-card .ods-portal-footer a:hover {
  color: #f5c518 !important;
}

/* Suppress residual website chrome if flags fail */
body.ods-portal-body header#top,
body:has(.ods-portal-card) header#top,
body.ods-portal-body footer#bottom,
body:has(.ods-portal-card) footer#bottom {
  display: none !important;
}
