:root {
  --color-brand-50: #eaf2ff;
  --color-brand-100: #cfe0ff;
  --color-brand-500: #145bd5;
  --color-brand-600: #0f4fb8;
  --color-brand-700: #0d3f91;
  --color-ink-950: #10213d;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family:
    "Inter",
    ui-sans-serif,
    system-ui,
    sans-serif;
  color: var(--color-ink-950);
  text-rendering: optimizeLegibility;
}

html.dark body.auvexa-site,
html[data-theme="dark"] body.auvexa-site {
  background: #0b0712 !important;
  color: #f8f4ff !important;
}

html.dark .auvexa-site .bg-white,
html.dark .auvexa-site [class*="bg-white"],
html[data-theme="dark"] .auvexa-site .bg-white,
html[data-theme="dark"] .auvexa-site [class*="bg-white"] {
  background-color: #171021 !important;
}

html.dark .auvexa-site [class*="bg-[#fbf9ff]"],
html.dark .auvexa-site [class*="bg-\\[\\#fbf9ff\\]"],
html[data-theme="dark"] .auvexa-site [class*="bg-[#fbf9ff]"],
html[data-theme="dark"] .auvexa-site [class*="bg-\\[\\#fbf9ff\\]"] {
  background-color: #0b0712 !important;
}

html.dark .auvexa-site [class*="bg-[#f5edfe]"],
html.dark .auvexa-site [class*="bg-\\[\\#f5edfe\\]"],
html[data-theme="dark"] .auvexa-site [class*="bg-[#f5edfe]"],
html[data-theme="dark"] .auvexa-site [class*="bg-\\[\\#f5edfe\\]"] {
  background-color: rgba(139, 69, 237, 0.16) !important;
}

html.dark .auvexa-site [class*="bg-[#120a1f]"],
html.dark .auvexa-site [class*="bg-\\[\\#120a1f\\]"],
html[data-theme="dark"] .auvexa-site [class*="bg-[#120a1f]"],
html[data-theme="dark"] .auvexa-site [class*="bg-\\[\\#120a1f\\]"] {
  background-color: #10091a !important;
}

html.dark .auvexa-site [class*="text-[#120a1f]"],
html.dark .auvexa-site [class*="text-\\[\\#120a1f\\]"],
html[data-theme="dark"] .auvexa-site [class*="text-[#120a1f]"],
html[data-theme="dark"] .auvexa-site [class*="text-\\[\\#120a1f\\]"] {
  color: #f8f4ff !important;
}

html.dark .auvexa-site .text-slate-700,
html.dark .auvexa-site .text-slate-600,
html.dark .auvexa-site .text-slate-500,
html[data-theme="dark"] .auvexa-site .text-slate-700,
html[data-theme="dark"] .auvexa-site .text-slate-600,
html[data-theme="dark"] .auvexa-site .text-slate-500 {
  color: #c5d3e8 !important;
}

html.dark .auvexa-site .text-slate-400,
html.dark .auvexa-site .text-slate-300,
html[data-theme="dark"] .auvexa-site .text-slate-400,
html[data-theme="dark"] .auvexa-site .text-slate-300 {
  color: #9aaec8 !important;
}

html.dark .auvexa-site [class*="border-[#eadbfd]"],
html.dark .auvexa-site [class*="border-\\[\\#eadbfd\\]"],
html[data-theme="dark"] .auvexa-site [class*="border-[#eadbfd]"],
html[data-theme="dark"] .auvexa-site [class*="border-\\[\\#eadbfd\\]"] {
  border-color: rgba(234, 219, 253, 0.14) !important;
}

html.dark .auvexa-site .shadow-sm,
html.dark .auvexa-site .shadow-xl,
html.dark .auvexa-site .shadow-2xl,
html[data-theme="dark"] .auvexa-site .shadow-sm,
html[data-theme="dark"] .auvexa-site .shadow-xl,
html[data-theme="dark"] .auvexa-site .shadow-2xl {
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.28) !important;
}

html.dark .auvexa-site input,
html.dark .auvexa-site textarea,
html[data-theme="dark"] .auvexa-site input,
html[data-theme="dark"] .auvexa-site textarea {
  background-color: #10091a !important;
  border-color: rgba(234, 219, 253, 0.16) !important;
  color: #f8f4ff !important;
}

html.dark .auvexa-site input::placeholder,
html.dark .auvexa-site textarea::placeholder,
html[data-theme="dark"] .auvexa-site input::placeholder,
html[data-theme="dark"] .auvexa-site textarea::placeholder {
  color: #8f7fa3;
}

.auvexa-theme-toggle .theme-icon-sun {
  display: none;
}

html.dark .auvexa-theme-toggle .theme-icon-moon,
html[data-theme="dark"] .auvexa-theme-toggle .theme-icon-moon {
  display: none;
}

html.dark .auvexa-theme-toggle .theme-icon-sun,
html[data-theme="dark"] .auvexa-theme-toggle .theme-icon-sun {
  display: inline-block;
}

.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item[open] .faq-icon {
  background: var(--color-brand-500);
  color: #fff;
  transform: rotate(180deg);
}

::selection {
  background: var(--color-brand-100);
  color: var(--color-ink-950);
}

:focus-visible {
  outline: 3px solid rgba(20, 91, 213, 0.42);
  outline-offset: 3px;
}

.primary-bg {
  background-color: var(--color-brand-500);
}

.primary-text {
  color: var(--color-brand-700);
}

.gradient-bg {
  background:
    radial-gradient(circle at 18% 20%, rgba(20, 91, 213, 0.22), transparent 32%),
    linear-gradient(135deg, var(--color-ink-950), #16366b 58%, var(--color-brand-700));
}

.glass {
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid rgba(234, 219, 253, 0.82);
  backdrop-filter: blur(18px);
}

.shadow-futuristic {
  box-shadow:
    0 24px 80px rgba(18, 10, 31, 0.12),
    0 1px 0 rgba(255, 255, 255, 0.68) inset;
}

.ai-glow {
  box-shadow: 0 18px 48px rgba(20, 91, 213, 0.28);
}

.animate-float {
  animation: auvexa-float 6s ease-in-out infinite;
}

.reveal-up {
  animation: auvexa-reveal-up 0.72s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.neural-bg,
.neural-bg2 {
  background:
    radial-gradient(circle at 15% 10%, rgba(20, 91, 213, 0.22), transparent 30%),
    radial-gradient(circle at 86% 24%, rgba(207, 224, 255, 0.18), transparent 28%),
    var(--color-ink-950);
}

@keyframes auvexa-float {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-12px);
  }
}

@keyframes auvexa-reveal-up {
  from {
    opacity: 0;
    transform: translateY(22px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}
