@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:wght,FILL@100..700,0..1&display=swap');

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'Inter', sans-serif;
  color: #111814;
  background-color: #f6f8f7;
  transition: background-color 0.3s, color 0.3s;
}

body.dark {
  background-color: #102218;
  color: #ffffff;
}

/* Tailwind CSS */

::-webkit-scrollbar {
  width: 8px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #b3b3b3;
}

body.dark ::-webkit-scrollbar-track {
  background: #1a2e24;
}

body.dark ::-webkit-scrollbar-thumb {
  background: #2d4a3e;
}

/* Animations */
@keyframes fade-in-up {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-fade-in-up {
  animation: fade-in-up 0.8s ease-out forwards;
}

/* Infinite Slider Animations */
@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

@keyframes scroll-right {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0);
  }
}

.animate-scroll-left {
  animation: scroll-left 60s linear infinite;
}

.animate-scroll-right {
  animation: scroll-right 60s linear infinite;
}

/* Neural Wave EEG */
@keyframes eeg-scroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.animate-eeg {
  animation: eeg-scroll 14s linear infinite;
  will-change: transform;
}

@keyframes eeg-pulse {
  0%, 100% { opacity: 0.55; }
  50%       { opacity: 1; }
}

.eeg-line {
  animation: eeg-pulse 2.8s ease-in-out infinite;
}

.scientific-gradient {
  background: radial-gradient(circle at 50% 0%, rgba(43, 238, 124, 0.08) 0%, rgba(255, 255, 255, 0) 70%);
}

/* Smooth scroll */
html {
  scroll-behavior: smooth;
}

/* Material Icons */
.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.material-symbols-outlined.filled {
  font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}
