html.website-theme {
  color-scheme: light;
  --faai-bg-base: #fff7f4;
  --faai-bg-soft: #f8ebe6;
  --faai-bg-warm: #f2ddd8;
  --faai-surface: rgba(255, 251, 249, 0.92);
  --faai-surface-soft: rgba(252, 243, 239, 0.96);
  --faai-border: rgba(122, 28, 34, 0.14);
  --faai-border-strong: rgba(122, 28, 34, 0.22);
  --faai-text: #3b1a1d;
  --faai-muted: #755053;
  --faai-link: #a31d23;
  --faai-link-hover: #7d1217;
  --faai-button: #d62d32;
  --faai-button-hover: #a81b20;
  --faai-button-soft: #f5d4cf;
  --faai-shadow: 0 20px 42px rgba(95, 15, 21, 0.12);
  --faai-header-start: #5b1218;
  --faai-header-mid: #8e2128;
  --faai-header-end: #cf373a;
  --faai-tint: rgba(201, 37, 38, 0.08);
  --faai-tint-strong: rgba(201, 37, 38, 0.14);
  background: var(--faai-bg-base);
}

html.website-theme body {
  min-height: 100%;
  position: relative;
  isolation: isolate;
  background: transparent !important;
  color: var(--faai-text) !important;
}

html.website-theme body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 8% 6%, rgba(95, 15, 21, 0.12) 0%, transparent 30%),
    radial-gradient(circle at 82% 12%, rgba(201, 37, 38, 0.14) 0%, transparent 24%),
    radial-gradient(circle at 50% 100%, rgba(214, 45, 50, 0.08) 0%, transparent 32%),
    linear-gradient(180deg, var(--faai-bg-base) 0%, var(--faai-bg-soft) 52%, var(--faai-bg-warm) 100%);
}

html.website-theme header.header-card,
html.website-theme .navbar,
html.website-theme .tagline,
html.website-theme .card-head,
html.website-theme footer.site-footer {
  background: linear-gradient(108deg, var(--faai-header-start) 0%, var(--faai-header-mid) 52%, var(--faai-header-end) 100%) !important;
  color: #ffffff !important;
}

html.website-theme header.header-card,
html.website-theme .navbar,
html.website-theme footer.site-footer,
html.website-theme .card-head {
  box-shadow: 0 16px 32px rgba(95, 15, 21, 0.18);
}

html.website-theme #cookie-banner {
  background: rgba(91, 18, 24, 0.96) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}

html.website-theme .brand-logo {
  filter: drop-shadow(0 10px 18px rgba(95, 15, 21, 0.18)) drop-shadow(0 0 14px rgba(214, 45, 50, 0.16));
}

html.website-theme .faai-guide-card {
  position: relative;
  overflow: visible !important;
}

html.website-theme .faai-guide-card:hover,
html.website-theme .faai-guide-card:focus-within {
  z-index: 220;
}

html.website-theme .faai-guide-header {
  position: relative;
  overflow: visible !important;
  z-index: 30;
}

html.website-theme .faai-guide-group {
  position: relative;
  z-index: 40;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
}

html.website-theme .faai-guide-button {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.35rem;
  border-radius: 0.5rem;
  padding: 0.15rem 0.25rem;
  color: #ffffff;
  font-size: 0.98rem;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: underline;
  text-underline-offset: 0.24rem;
}

html.website-theme .faai-guide-popover {
  display: none;
  position: absolute;
  right: 0;
  top: calc(100% + 0.75rem);
  width: min(30rem, calc(100vw - 2rem));
  max-width: 90vw;
  padding: 1rem 1.1rem;
  border-radius: 1rem;
  border: 1px solid var(--faai-border-strong);
  background: rgba(255, 251, 249, 0.99);
  color: var(--faai-text);
  box-shadow: 0 24px 48px rgba(62, 10, 15, 0.18);
  line-height: 1.6;
  z-index: 160;
  pointer-events: auto;
}

html.website-theme .faai-guide-popover p,
html.website-theme .faai-guide-popover li {
  color: var(--faai-text);
}

html.website-theme .faai-guide-popover ul {
  padding-left: 1.25rem;
}

html.website-theme .faai-guide-group:hover .faai-guide-popover,
html.website-theme .faai-guide-group:focus-within .faai-guide-popover {
  display: block;
}

html.website-theme .bg-white,
html.website-theme .bg-gray-50,
html.website-theme .bg-gray-100,
html.website-theme .bg-blue-50,
html.website-theme .bg-yellow-50,
html.website-theme .bg-purple-50,
html.website-theme .bg-indigo-100,
html.website-theme .bg-emerald-100,
html.website-theme .dark\:bg-gray-800,
html.website-theme .dark\:bg-gray-700,
html.website-theme .dark\:bg-gray-700\/50,
html.website-theme .dark\:bg-gray-900,
html.website-theme .dark\:bg-gray-900\/20,
html.website-theme .dark\:bg-gray-900\/30,
html.website-theme .dark\:bg-gray-900\/50,
html.website-theme .card,
html.website-theme .dropdown-menu,
html.website-theme .wrap .card {
  background-color: var(--faai-surface) !important;
  border-color: var(--faai-border) !important;
  color: var(--faai-text) !important;
  backdrop-filter: blur(10px);
}

html.website-theme .shadow,
html.website-theme .shadow-lg,
html.website-theme .shadow-xl,
html.website-theme .card,
html.website-theme .dropdown-menu {
  box-shadow: var(--faai-shadow) !important;
}

html.website-theme .text-gray-900,
html.website-theme .text-gray-800,
html.website-theme .dark\:text-white,
html.website-theme .dark\:text-gray-100,
html.website-theme .meta strong {
  color: var(--faai-text) !important;
}

html.website-theme .text-gray-700,
html.website-theme .text-gray-600,
html.website-theme .text-gray-500,
html.website-theme .dark\:text-gray-300,
html.website-theme .dark\:text-gray-400,
html.website-theme .meta {
  color: var(--faai-muted) !important;
}

html.website-theme a,
html.website-theme .text-blue-500,
html.website-theme .text-blue-600,
html.website-theme .text-blue-700,
html.website-theme .text-blue-800,
html.website-theme .text-blue-900,
html.website-theme .text-green-600,
html.website-theme .text-green-700,
html.website-theme .text-green-800,
html.website-theme .text-green-900,
html.website-theme .text-emerald-700,
html.website-theme .text-emerald-800,
html.website-theme .text-yellow-600,
html.website-theme .text-yellow-700,
html.website-theme .text-yellow-800,
html.website-theme .text-orange-600,
html.website-theme .text-orange-700,
html.website-theme .text-orange-800,
html.website-theme .text-orange-900,
html.website-theme .text-amber-600,
html.website-theme .text-amber-700,
html.website-theme .text-amber-800,
html.website-theme .text-amber-900,
html.website-theme .text-purple-600,
html.website-theme .text-purple-700,
html.website-theme .text-purple-800,
html.website-theme .text-purple-900,
html.website-theme .text-indigo-800,
html.website-theme .text-emerald-800,
html.website-theme .text-rose-700,
html.website-theme .text-rose-800,
html.website-theme .text-secondary,
html.website-theme .kb-response a,
html.website-theme .meta a {
  color: var(--faai-link);
}

html.website-theme a:hover,
html.website-theme .text-blue-500:hover,
html.website-theme .text-blue-600:hover,
html.website-theme .text-secondary:hover,
html.website-theme .kb-response a:hover,
html.website-theme .meta a:hover {
  color: var(--faai-link-hover);
}

html.website-theme header.header-card a,
html.website-theme .navbar a,
html.website-theme .btn,
html.website-theme .btn-primary,
html.website-theme .text-white,
html.website-theme footer.site-footer a {
  color: #ffffff !important;
}

html.website-theme .border,
html.website-theme .border-gray-200,
html.website-theme .border-gray-300,
html.website-theme .border-gray-400,
html.website-theme .border-blue-200,
html.website-theme .border-blue-300,
html.website-theme .border-yellow-200,
html.website-theme .border-amber-200,
html.website-theme .border-amber-300,
html.website-theme .border-amber-400,
html.website-theme .border-amber-500,
html.website-theme .border-amber-600,
html.website-theme .border-purple-200,
html.website-theme .border-green-200,
html.website-theme .border-green-300,
html.website-theme .border-green-400,
html.website-theme .border-green-500,
html.website-theme .border-green-600,
html.website-theme .border-orange-200,
html.website-theme .border-orange-300,
html.website-theme .border-blue-400,
html.website-theme .border-blue-500,
html.website-theme .border-blue-600,
html.website-theme .border-blue-700,
html.website-theme .border-red-200,
html.website-theme .dark\:border-gray-600,
html.website-theme .dark\:border-gray-700,
html.website-theme .dark\:border-blue-700,
html.website-theme .dark\:border-blue-800,
html.website-theme .dark\:border-green-700,
html.website-theme .dark\:border-green-800,
html.website-theme .dark\:border-amber-700,
html.website-theme .dark\:border-amber-800,
html.website-theme .dark\:border-orange-700,
html.website-theme .table th,
html.website-theme .table td,
html.website-theme .map-wrap {
  border-color: var(--faai-border-strong) !important;
}

html.website-theme .bg-primary,
html.website-theme .bg-secondary,
html.website-theme .bg-accent,
html.website-theme .bg-blue-600,
html.website-theme .bg-blue-500,
html.website-theme .bg-blue-700,
html.website-theme .bg-blue-800,
html.website-theme .bg-green-500,
html.website-theme .bg-green-600,
html.website-theme .bg-green-700,
html.website-theme .bg-green-800,
html.website-theme .bg-orange-500,
html.website-theme .bg-orange-600,
html.website-theme .bg-amber-500,
html.website-theme .bg-amber-600,
html.website-theme .bg-amber-700,
html.website-theme .bg-cyan-700,
html.website-theme .btn-primary,
html.website-theme .nav-link.active {
  background-color: var(--faai-button) !important;
  border-color: transparent !important;
}

html.website-theme .hover\:bg-blue-700:hover,
html.website-theme .hover\:bg-blue-900:hover,
html.website-theme .hover\:bg-blue-800:hover,
html.website-theme .hover\:bg-red-700:hover,
html.website-theme .hover\:bg-green-700:hover,
html.website-theme .hover\:bg-green-800:hover,
html.website-theme .hover\:bg-green-200:hover,
html.website-theme .hover\:bg-green-50:hover,
html.website-theme .hover\:bg-amber-50:hover,
html.website-theme .hover\:bg-blue-50:hover,
html.website-theme .btn-primary:hover,
html.website-theme .bg-primary:hover,
html.website-theme .bg-secondary:hover,
html.website-theme .bg-accent:hover,
html.website-theme .bg-blue-600:hover {
  background-color: var(--faai-button-hover) !important;
}

html.website-theme .from-secondary,
html.website-theme .from-primary,
html.website-theme .from-green-600,
html.website-theme .from-green-50,
html.website-theme .from-blue-50,
html.website-theme .from-blue-700,
html.website-theme .from-indigo-700,
html.website-theme .from-cyan-700,
html.website-theme .from-orange-600,
html.website-theme .from-amber-50,
html.website-theme .from-amber-600 {
  --tw-gradient-from: var(--faai-header-start) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgba(91, 18, 24, 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

html.website-theme .to-primary,
html.website-theme .to-secondary,
html.website-theme .to-green-500,
html.website-theme .to-green-100,
html.website-theme .to-blue-100,
html.website-theme .to-blue-500,
html.website-theme .to-blue-700,
html.website-theme .to-indigo-600,
html.website-theme .to-orange-500,
html.website-theme .to-orange-600,
html.website-theme .to-amber-100 {
  --tw-gradient-to: var(--faai-header-end) var(--tw-gradient-to-position) !important;
}

html.website-theme .text-indigo-100 {
  color: rgba(255, 242, 242, 0.88) !important;
}

html.website-theme .focus\:ring-secondary:focus {
  --tw-ring-color: rgba(214, 45, 50, 0.42) !important;
}

html.website-theme input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
html.website-theme textarea,
html.website-theme select,
html.website-theme .form-control {
  background-color: rgba(255, 251, 249, 0.96) !important;
  color: var(--faai-text) !important;
  border-color: var(--faai-border) !important;
}

html.website-theme input::placeholder,
html.website-theme textarea::placeholder,
html.website-theme .form-control::placeholder {
  color: rgba(117, 80, 83, 0.66) !important;
}

html.website-theme .form-control:focus,
html.website-theme input:focus,
html.website-theme textarea:focus,
html.website-theme select:focus {
  border-color: var(--faai-button) !important;
  box-shadow: 0 0 0 0.2rem rgba(214, 45, 50, 0.24) !important;
}

html.website-theme input[type="file"]::file-selector-button {
  background-color: var(--faai-button) !important;
  color: #ffffff !important;
  border: 0 !important;
}

html.website-theme input[type="file"]::file-selector-button:hover {
  background-color: var(--faai-button-hover) !important;
}

html.website-theme .bg-blue-50,
html.website-theme .bg-blue-100,
html.website-theme .bg-green-50,
html.website-theme .bg-green-100,
html.website-theme .bg-yellow-50,
html.website-theme .bg-orange-100,
html.website-theme .bg-amber-50,
html.website-theme .bg-amber-100,
html.website-theme .bg-purple-50,
html.website-theme .bg-indigo-100,
html.website-theme .bg-emerald-100,
html.website-theme .dark\:bg-blue-900\/20,
html.website-theme .dark\:bg-blue-900\/30,
html.website-theme .dark\:bg-blue-900\/40,
html.website-theme .dark\:bg-green-900\/20,
html.website-theme .dark\:bg-green-900\/30,
html.website-theme .dark\:bg-yellow-900\/20,
html.website-theme .dark\:bg-orange-900,
html.website-theme .dark\:bg-amber-900\/10,
html.website-theme .dark\:bg-amber-900\/20,
html.website-theme .dark\:bg-amber-900\/30,
html.website-theme .dark\:bg-amber-900\/40,
html.website-theme .dark\:bg-purple-900\/20,
html.website-theme .dark\:bg-indigo-900\/40,
html.website-theme .dark\:bg-emerald-900\/40 {
  background-color: var(--faai-tint) !important;
  color: var(--faai-text) !important;
  border-color: var(--faai-border-strong) !important;
}

html.website-theme .bg-red-100,
html.website-theme .dark\:bg-red-900\/20,
html.website-theme .dark\:bg-red-900\/30 {
  background-color: var(--faai-tint-strong) !important;
  color: var(--faai-text) !important;
  border-color: var(--faai-border-strong) !important;
}

html.website-theme .bg-blue-200,
html.website-theme .bg-green-200,
html.website-theme .bg-red-200 {
  background-color: rgba(201, 37, 38, 0.16) !important;
}

html.website-theme .from-blue-50,
html.website-theme .to-blue-100,
html.website-theme .from-green-50,
html.website-theme .to-green-100 {
  background-image: linear-gradient(135deg, rgba(201, 37, 38, 0.08), rgba(255, 255, 255, 0.55)) !important;
}

html.website-theme .table,
html.website-theme table {
  color: var(--faai-text) !important;
}

html.website-theme .table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: rgba(255, 255, 255, 0.03) !important;
}

html.website-theme .dropdown-item {
  color: var(--faai-text) !important;
}

html.website-theme .dropdown-item:hover,
html.website-theme .dropdown-item:focus {
  background-color: rgba(255, 255, 255, 0.08) !important;
}

html.website-theme .map-wrap {
  background: radial-gradient(circle at 20% 20%, #f5d9d3 0%, #eed1cb 52%, #e9c3bc 100%) !important;
}

html.website-theme .empty {
  background: rgba(91, 18, 24, 0.16) !important;
  color: var(--faai-text) !important;
}

html.website-theme .site-footer {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}
