/*
 * Nexora AI visual system
 * A restrained, high-contrast SaaS layer over the existing compiled UI.
 * This file intentionally changes presentation only; routes, copy and
 * interaction code remain in the existing application bundle.
 */

:root,
.dark {
  --background: 216 17% 5.3%;
  --foreground: 210 20% 96%;
  --card: 216 17% 8.6%;
  --card-foreground: 210 20% 96%;
  --card-border: 216 15% 16%;
  --border: 216 15% 16%;
  --input: 216 15% 16%;
  --ring: 210 14% 81%;
  --muted: 216 17% 10%;
  --muted-foreground: 220 9% 61%;
  --popover: 216 17% 8.6%;
  --popover-foreground: 210 20% 96%;
  --popover-border: 216 15% 16%;
  --primary: 210 14% 81%;
  --primary-foreground: 216 17% 5.3%;
  --secondary: 216 12% 74%;
  --secondary-foreground: 216 17% 5.3%;
  --accent: 210 14% 81%;
  --accent-foreground: 216 17% 5.3%;
  --sidebar: 216 17% 6.8%;
  --sidebar-foreground: 210 20% 96%;
  --sidebar-border: 216 15% 16%;
  --sidebar-primary: 210 14% 81%;
  --sidebar-primary-foreground: 216 17% 5.3%;
  --sidebar-accent: 216 14% 12%;
  --sidebar-accent-foreground: 210 20% 96%;
  --sidebar-ring: 210 14% 81%;
  --radius: 0.875rem;
}

html {
  background: #0b0d10 !important;
  color-scheme: dark;
}

body {
  background: #0b0d10 !important;
  color: #f3f4f6 !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif !important;
  letter-spacing: -0.005em;
}

::selection {
  background: #c9ced6;
  color: #0b0d10;
}

/* Existing top-level route backgrounds. */
[class*="bg-[#030712]"] {
  background-color: #0b0d10 !important;
}

[style*="rgba(3,7,18"] {
  background: rgba(11, 13, 16, 0.92) !important;
}

/* Replace the old translucent/glowing cards with quiet, legible surfaces. */
.glass,
.glass-strong {
  -webkit-backdrop-filter: blur(16px) !important;
  backdrop-filter: blur(16px) !important;
  box-shadow: none !important;
}

.glass {
  background: #111418 !important;
  border: 1px solid #252a32 !important;
}

.glass-strong {
  background: #171a20 !important;
  border: 1px solid #252a32 !important;
}

[style*="rgba(14,17,35"],
[style*="rgba(8,10,22"] {
  background: #111418 !important;
  border-color: #252a32 !important;
}

/* Keep visual hierarchy monochrome instead of rainbow utility accents. */
[class*="text-blue-"],
[class*="text-indigo-"],
[class*="text-purple-"],
[class*="text-violet-"],
[class*="text-cyan-"],
[class*="text-teal-"],
[class*="text-emerald-"],
[class*="text-green-"],
[class*="text-amber-"],
[class*="text-orange-"],
[class*="text-rose-"],
[class*="text-pink-"],
[class*="text-red-"],
[class*="text-lime-"] {
  color: #c9ced6 !important;
}

[class*="border-blue-"],
[class*="border-indigo-"],
[class*="border-purple-"],
[class*="border-violet-"],
[class*="border-cyan-"],
[class*="border-teal-"],
[class*="border-emerald-"],
[class*="border-green-"],
[class*="border-amber-"],
[class*="border-orange-"],
[class*="border-rose-"],
[class*="border-pink-"],
[class*="border-red-"],
[class*="border-lime-"] {
  border-color: #252a32 !important;
}

[class*="bg-blue-"],
[class*="bg-indigo-"],
[class*="bg-purple-"],
[class*="bg-violet-"],
[class*="bg-cyan-"],
[class*="bg-teal-"],
[class*="bg-emerald-"],
[class*="bg-green-"],
[class*="bg-amber-"],
[class*="bg-orange-"],
[class*="bg-rose-"],
[class*="bg-pink-"],
[class*="bg-red-"],
[class*="bg-lime-"] {
  background-color: #171a20 !important;
}

/* Remove decorative gradients and bloom effects without changing the layout. */
[class*="bg-gradient-"],
.gradient-text,
.gradient-text-gold,
.bg-grid,
.bg-radial-glow {
  background-image: none !important;
}

[class*="bg-gradient-"] {
  background-color: #171a20 !important;
}

.gradient-text,
.gradient-text-gold {
  background-color: transparent !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #f3f4f6 !important;
  color: #f3f4f6 !important;
}

[style*="linear-gradient"],
[style*="radial-gradient"] {
  background-image: none !important;
  background-color: #171a20 !important;
}

[style*="box-shadow"] {
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.24) !important;
}

.glow-blue,
.glow-purple,
.glow-btn,
[class*="shadow-[0_0_"],
[class*="hover:shadow-"] {
  box-shadow: none !important;
}

[class*="blur-"][class*="absolute"] {
  opacity: 0 !important;
}

.animate-shimmer,
.animate-pulse {
  animation: none !important;
}

/* Sharper SaaS rhythm and calmer interaction states. */
h1,
h2,
h3,
h4 {
  letter-spacing: -0.035em;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

button {
  border-radius: 0.75rem;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid #c9ced6 !important;
  outline-offset: 3px;
}

input,
textarea,
select {
  background-color: #111418 !important;
  border-color: #252a32 !important;
  color: #f3f4f6 !important;
}

input::placeholder,
textarea::placeholder {
  color: #6b7280 !important;
}

/* Neutralize the compiled tool-card bloom while keeping its hover affordance. */
[style*="rgba(59,130,246"],
[style*="rgba(99,102,241"],
[style*="rgba(139,92,246"],
[style*="rgba(20,184,166"],
[style*="rgba(244,63,94"],
[style*="rgba(245,158,11"],
[style*="rgba(6,182,212"],
[style*="rgba(34,197,94"],
[style*="rgba(249,115,22"],
[style*="rgba(239,68,68"],
[style*="rgba(168,85,247"],
[style*="rgba(132,204,22"] {
  background: #171a20 !important;
  border-color: #252a32 !important;
  box-shadow: none !important;
}

[style*="#3b82f6"],
[style*="#6366f1"],
[style*="#8b5cf6"],
[style*="#14b8a6"],
[style*="#f43f5e"],
[style*="#f59e0b"],
[style*="#06b6d4"],
[style*="#22c55e"],
[style*="#f97316"],
[style*="#ef4444"],
[style*="#a855f7"],
[style*="#84cc16"],
[style*="#ec4899"] {
  color: #c9ced6 !important;
  border-color: #252a32 !important;
}

[style*="text-fill-color"] {
  -webkit-text-fill-color: #f3f4f6 !important;
}

#nexora-founder-about,
#nexora-founder-section {
  background: #111418 !important;
  border-color: #252a32 !important;
  box-shadow: none !important;
}

#nexora-founder-about p,
#nexora-founder-section p,
#nexora-founder-section h2 {
  color: #c9ced6 !important;
}

@media (max-width: 640px) {
  h1 {
    letter-spacing: -0.045em;
  }

  .glass,
  .glass-strong {
    border-radius: 1.25rem !important;
  }
}