/* CA State Template visual theme for Form Assistant.
   Keep existing layout/positioning behavior intact. */

:root {
  --fa-ca-brand: var(--color-p2, #046b99);
  --fa-ca-brand-dark: var(--color-p2-darker, #214a68);
  --fa-ca-surface: var(--gray-50, #fafafa);
  --fa-ca-border: var(--gray-200, #d4d4d7);
  --fa-ca-text: var(--gray-900, #3b3a48);
}

body {
  color: var(--fa-ca-text);
  background-color: var(--fa-ca-surface);
}

.fa-ca-logo {
  display: inline-block;
  width: 1.95rem;
  height: 1.95rem;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  vertical-align: middle;
  flex: 0 0 auto;
}

.fa-ca-logo-lg {
  width: 2.5rem;
  height: 2.5rem;
}

.fa-ca-logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  text-decoration: none;
}

.fa-ca-logo-link:hover,
.fa-ca-logo-link:focus {
  background-color: rgba(4, 107, 153, 0.08);
}

.fa-top-nav {
  background: #fff;
  border-color: var(--fa-ca-border) !important;
}

.fa-top-nav .navbar-brand {
  color: var(--fa-ca-text);
  font-weight: 700;
}

.fa-top-nav .btn-outline-secondary {
  color: var(--fa-ca-brand-dark);
  border-color: var(--fa-ca-border);
}

.fa-top-nav .btn-outline-secondary:hover,
.fa-top-nav .btn-outline-secondary:focus {
  color: #fff;
  background-color: var(--fa-ca-brand-dark);
  border-color: var(--fa-ca-brand-dark);
}

.fa-admin-titlebar {
  background: #fff !important;
  border-color: var(--fa-ca-border) !important;
}

.fa-admin-tabbar {
  background: linear-gradient(180deg, #fff, var(--fa-ca-surface)) !important;
  border-color: var(--fa-ca-border) !important;
}

.fa-admin-tabbar .btn {
  border-color: var(--fa-ca-border);
  color: var(--fa-ca-brand-dark);
  background: #fff;
}

.fa-admin-tabbar .btn.active {
  background: var(--fa-ca-brand) !important;
  border-color: var(--fa-ca-brand) !important;
  color: #fff !important;
}

.fa-admin-tabbar .btn:disabled {
  color: var(--gray-600, #72717c) !important;
  background: var(--gray-100, #f3f3f4);
  border-color: var(--fa-ca-border);
  opacity: 1;
}

.btn-primary {
  background-color: var(--fa-ca-brand);
  border-color: var(--fa-ca-brand);
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: var(--fa-ca-brand-dark);
  border-color: var(--fa-ca-brand-dark);
}

.btn-outline-primary {
  color: var(--fa-ca-brand);
  border-color: var(--fa-ca-brand);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
  color: #fff;
  background-color: var(--fa-ca-brand);
  border-color: var(--fa-ca-brand);
}

.form-control:focus,
.form-select:focus {
  border-color: rgba(4, 107, 153, 0.4);
  box-shadow: 0 0 0 0.2rem rgba(4, 107, 153, 0.14);
}

.card,
.table,
.table-responsive,
.border {
  border-color: var(--fa-ca-border) !important;
}

.fa-step-chip.is-current {
  color: var(--fa-ca-brand-dark);
  border-color: rgba(4, 107, 153, 0.28);
  background: rgba(4, 107, 153, 0.1);
}

#faProgressToastHost #faStepProgressWrap,
#faProgressToastHost #faBatchProgressWrap {
  border-color: var(--fa-ca-border) !important;
}

.fa-help-icon {
  cursor: help;
}
