@import 'tailwindcss';

@source '../../vendor/laravel/framework/src/Illuminate/Pagination/resources/views/*.blade.php';
@source '../../storage/framework/views/*.php';
@source '../**/*.blade.php';
@source '../**/*.js';

@variant dark (&:where(.dark, .dark *));

@theme {
    --font-sans: 'Instrument Sans', ui-sans-serif, system-ui, sans-serif;
    --font-display: 'Outfit', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;

    --color-brand-dark: #0f172a;
    --color-brand-blue: #2563eb;
    --color-brand-cyan: #06b6d4;
    --color-brand-purple: #8b5cf6;

    --color-dark-bg: #030712;
    --color-dark-surface: #0b0f19;
    --color-dark-border: #1f2937;
}

/* Base custom definitions */
html {
    scroll-behavior: auto; /* Lenis handles smooth scrolling */
}

section[id],
article[id] {
    scroll-margin-top: 110px;
}

body {
    font-feature-settings: "cv02", "cv03", "cv04", "cv11";
}

/* Custom lenis smooth scroll styles */
html.lenis {
    height: auto;
}

.lenis-smooth {
    scroll-behavior: auto !important;
}

.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
}

.lenis-stopped {
    overflow: hidden;
}

.lenis-scrolling iframe {
    pointer-events: none;
}

/* Premium Animations & Glow Effects */
.glass-effect {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.4);
}

.dark .glass-effect {
    background: rgba(11, 15, 25, 0.65);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.glow-blue {
    box-shadow: 0 0 40px -5px rgba(37, 99, 235, 0.15);
}
.dark .glow-blue {
    box-shadow: 0 0 50px -10px rgba(37, 99, 235, 0.3);
}

.glow-purple {
    box-shadow: 0 0 40px -5px rgba(139, 92, 246, 0.15);
}
.dark .glow-purple {
    box-shadow: 0 0 50px -10px rgba(139, 92, 246, 0.3);
}

.glow-cyan {
    box-shadow: 0 0 40px -5px rgba(6, 182, 212, 0.15);
}
.dark .glow-cyan {
    box-shadow: 0 0 50px -10px rgba(6, 182, 212, 0.3);
}

/* Interactive connection line glow in Ecosystem */
@keyframes dash {
    to {
        stroke-dashoffset: -40;
    }
}

.glowing-path {
    stroke-dasharray: 8, 12;
    animation: dash 2.5s linear infinite;
}

.glowing-path-reverse {
    stroke-dasharray: 8, 12;
    animation: dash 2.5s linear infinite reverse;
}

.ecosystem-center-logo {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ecosystem-center-logo img {
    width: auto;
    height: auto;
    max-width: 75%;
    max-height: 75%;
    object-fit: contain;
    display: block;
}

/* Parallax 3D Card styles */
.perspective-1000 {
    perspective: 1000px;
}

.transform-style-3d {
    transform-style: preserve-3d;
}

.backface-hidden {
    backface-visibility: hidden;
}

/* Floating animation */
@keyframes float {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-10px);
    }
}

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

.animate-float-delayed {
    animation: float 6s ease-in-out infinite;
    animation-delay: 2s;
}

.animate-float-slow {
    animation: float 9s ease-in-out infinite;
    animation-delay: 1s;
}
