/* Fontes do Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&family=Geist:wght@100..900&family=Inter:wght@100..900&family=Lora:ital,wght@0,400..700;1,400..700&family=Manrope:wght@200..800&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Orbitron:wght@400..900&family=Outfit:wght@100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=Rajdhani:wght@300..700&family=Space+Grotesk:wght@300..700&family=Syne:wght@400..800&display=swap');

:root {
  --primary: #4F46E5;
  --secondary: #7C3AED;
  --accent: #06B6D4;
  --background: #09090B;
  --surface: #18181B;
  --border-color: #27272A;
  --text-main: #FAFAFA;
  --text-sub: #A1A1AA;

  font-family: 'Geist', 'Inter', 'Manrope', sans-serif;
}

/* Camada de ruído premium */
.noise-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  content: "";
  opacity: 0.02;
  pointer-events: none;
  z-index: 9999;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
}

/* Scrollbar premium */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: var(--background);
}

::-webkit-scrollbar-thumb {
  background: var(--border-color);
  border-radius: 999px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--secondary);
}

/* Efeito Glow */
.glow-primary {
  box-shadow: 0 0 40px -10px rgba(79, 70, 229, 0.3);
}

.glow-secondary {
  box-shadow: 0 0 40px -10px rgba(124, 58, 237, 0.3);
}

.glow-accent {
  box-shadow: 0 0 40px -10px rgba(6, 182, 212, 0.3);
}

/* Gradiente de texto */
.text-gradient-primary {
  background: linear-gradient(135deg, #4F46E5 0%, #7C3AED 50%, #06B6D4 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.text-gradient-purple {
  background: linear-gradient(135deg, #a78bfa 0%, #c084fc 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Glassmorphism custom */
.glass-panel {
  background: rgba(24, 24, 27, 0.7);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

/* Efeito de borda gradiente ativa */
.gradient-border-active {
  position: relative;
  background: var(--surface);
  border-radius: inherit;
}

.gradient-border-active::before {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  border-radius: inherit;
  z-index: -1;
  pointer-events: none;
}

/* ApexCharts custom tooltips dark */
.apexcharts-canvas .apexcharts-tooltip.apexcharts-theme-light {
  background: rgba(24, 24, 27, 0.9) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: #FAFAFA !important;
  border-radius: 8px !important;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.5) !important;
  backdrop-filter: blur(8px);
}

.apexcharts-canvas .apexcharts-tooltip-title {
  background: rgba(39, 39, 42, 0.8) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: #FAFAFA !important;
}

/* Custom Animation classes for simulated generation */
@keyframes pulseGlow {
  0%,
  100% {
    opacity: 0.3;
    transform: scale(1);
  }

  50% {
    opacity: 0.6;
    transform: scale(1.05);
  }
}

.glow-pulse {
  animation: pulseGlow 3s infinite ease-in-out;
}
