/* Slider Animasyonları ve Efektler */

/* 1. Subtle Gradient Animations - Bankalar ve Fintech Tarzı */
@keyframes subtleGradientFlow {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

@keyframes gradientShift {
    0%, 100% {
        background-position: 0% 50%;
        opacity: 0.90;
    }
    25% {
        background-position: 25% 75%;
        opacity: 0.95;
    }
    50% {
        background-position: 100% 50%;
        opacity: 0.92;
    }
    75% {
        background-position: 75% 25%;
        opacity: 0.95;
    }
}

/* 2. Geometric Pattern Movement - Teknoloji Şirketleri Tarzı */
@keyframes geometricFloat {
    0%, 100% {
        transform: translate(0, 0) rotate(0deg);
        opacity: 0.75;
    }
    25% {
        transform: translate(50px, -30px) rotate(5deg);
        opacity: 0.90;
    }
    50% {
        transform: translate(80px, 20px) rotate(-3deg);
        opacity: 0.85;
    }
    75% {
        transform: translate(30px, 40px) rotate(7deg);
        opacity: 0.95;
    }
}

@keyframes geometricSlide {
    0% {
        transform: translateX(-100%) translateY(-50%) rotate(0deg);
    }
    100% {
        transform: translateX(200%) translateY(-50%) rotate(360deg);
    }
}

@keyframes pulseGlow {
    0%, 100% {
        opacity: 0.70;
        transform: scale(1);
    }
    50% {
        opacity: 0.95;
        transform: scale(1.08);
    }
}

/* İçerik animasyonları */
@keyframes slideInDown {
    0% {
        opacity: 0;
        transform: translateY(-30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes slideInUp {
    0% {
        opacity: 0;
        transform: translateY(40px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInScale {
    0% {
        opacity: 0;
        transform: scale(0.9);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

/* Slide badge animasyonu */
.slide-content .slide-badge {
    opacity: 0;
    animation: slideInDown 0.6s ease-out forwards;
}

/* Slide title animasyonu */
.slide-content .slide-title {
    opacity: 0;
    animation: slideInUp 0.7s ease-out forwards;
    animation-delay: 0.15s;
}

/* Slide description animasyonu */
.slide-content .slide-description {
    opacity: 0;
    animation: slideInUp 0.7s ease-out forwards;
    animation-delay: 0.3s;
}

/* Slide CTA button animasyonu */
.slide-content .slide-cta {
    opacity: 0;
    animation: fadeInScale 0.6s ease-out forwards;
    animation-delay: 0.45s;
}

/* Video play button animasyonu */
.video-play-button {
    opacity: 0;
    animation: fadeInScale 0.6s ease-out forwards;
    animation-delay: 0.6s;
}

/* CSS Variables for Theme Colors */
#hero-carousel {
    --theme-primary: rgba(14, 165, 233, 0.45);   /* Cyan default */
    --theme-secondary: rgba(6, 182, 212, 0.55);
    --theme-accent: rgba(59, 130, 246, 0.40);
    --theme-glow: rgba(14, 165, 233, 0.4);
}

/* Theme: Cyan (VUK IFRS) */
#hero-carousel[data-active-theme="cyan"] {
    --theme-primary: rgba(14, 165, 233, 0.45);
    --theme-primary-alpha-50: rgba(14, 165, 233, 0.25);
    --theme-primary-alpha-60: rgba(14, 165, 233, 0.35);
    --theme-primary-alpha-80: rgba(14, 165, 233, 0.40);
    --theme-secondary: rgba(6, 182, 212, 0.55);
    --theme-secondary-alpha-60: rgba(6, 182, 212, 0.30);
    --theme-accent: rgba(59, 130, 246, 0.40);
    --theme-accent-alpha-50: rgba(59, 130, 246, 0.20);
    --theme-accent-alpha-60: rgba(59, 130, 246, 0.35);
    --theme-accent-alpha-80: rgba(59, 130, 246, 0.45);
    --theme-glow: rgba(14, 165, 233, 0.4);
    --theme-line: rgba(14, 165, 233, 0.70);
    --theme-line-bright: rgba(14, 165, 233, 0.95);
    --theme-dot-primary: rgba(14, 165, 233, 0.60);
    --theme-dot-accent: rgba(59, 130, 246, 0.55);
}

/* Theme: Primary/Indigo (İç Denetim) */
#hero-carousel[data-active-theme="primary"] {
    --theme-primary: rgba(2, 132, 199, 0.45);
    --theme-primary-alpha-50: rgba(2, 132, 199, 0.25);
    --theme-primary-alpha-60: rgba(2, 132, 199, 0.35);
    --theme-primary-alpha-80: rgba(2, 132, 199, 0.40);
    --theme-secondary: rgba(88, 80, 236, 0.55);
    --theme-secondary-alpha-60: rgba(88, 80, 236, 0.30);
    --theme-accent: rgba(14, 165, 233, 0.40);
    --theme-accent-alpha-50: rgba(14, 165, 233, 0.20);
    --theme-accent-alpha-60: rgba(14, 165, 233, 0.35);
    --theme-accent-alpha-80: rgba(14, 165, 233, 0.45);
    --theme-glow: rgba(2, 132, 199, 0.4);
    --theme-line: rgba(2, 132, 199, 0.70);
    --theme-line-bright: rgba(2, 132, 199, 0.95);
    --theme-dot-primary: rgba(2, 132, 199, 0.60);
    --theme-dot-accent: rgba(88, 80, 236, 0.55);
}

/* Theme: Green (Maliyet) */
#hero-carousel[data-active-theme="green"] {
    --theme-primary: rgba(5, 122, 85, 0.45);
    --theme-primary-alpha-50: rgba(5, 122, 85, 0.25);
    --theme-primary-alpha-60: rgba(5, 122, 85, 0.35);
    --theme-primary-alpha-80: rgba(5, 122, 85, 0.40);
    --theme-secondary: rgba(14, 159, 110, 0.55);
    --theme-secondary-alpha-60: rgba(14, 159, 110, 0.30);
    --theme-accent: rgba(16, 185, 129, 0.40);
    --theme-accent-alpha-50: rgba(16, 185, 129, 0.20);
    --theme-accent-alpha-60: rgba(16, 185, 129, 0.35);
    --theme-accent-alpha-80: rgba(16, 185, 129, 0.45);
    --theme-glow: rgba(5, 122, 85, 0.4);
    --theme-line: rgba(5, 122, 85, 0.70);
    --theme-line-bright: rgba(5, 122, 85, 0.95);
    --theme-dot-primary: rgba(5, 122, 85, 0.60);
    --theme-dot-accent: rgba(14, 159, 110, 0.55);
}

/* Theme: Blue (Stok) */
#hero-carousel[data-active-theme="blue"] {
    --theme-primary: rgba(28, 100, 242, 0.45);
    --theme-primary-alpha-50: rgba(28, 100, 242, 0.25);
    --theme-primary-alpha-60: rgba(28, 100, 242, 0.35);
    --theme-primary-alpha-80: rgba(28, 100, 242, 0.40);
    --theme-secondary: rgba(6, 182, 212, 0.55);
    --theme-secondary-alpha-60: rgba(6, 182, 212, 0.30);
    --theme-accent: rgba(59, 130, 246, 0.40);
    --theme-accent-alpha-50: rgba(59, 130, 246, 0.20);
    --theme-accent-alpha-60: rgba(59, 130, 246, 0.35);
    --theme-accent-alpha-80: rgba(59, 130, 246, 0.45);
    --theme-glow: rgba(28, 100, 242, 0.4);
    --theme-line: rgba(28, 100, 242, 0.70);
    --theme-line-bright: rgba(28, 100, 242, 0.95);
    --theme-dot-primary: rgba(28, 100, 242, 0.60);
    --theme-dot-accent: rgba(6, 182, 212, 0.55);
}

/* Theme: Orange (AI) */
#hero-carousel[data-active-theme="orange"] {
    --theme-primary: rgba(208, 56, 1, 0.45);
    --theme-primary-alpha-50: rgba(208, 56, 1, 0.25);
    --theme-primary-alpha-60: rgba(208, 56, 1, 0.35);
    --theme-primary-alpha-80: rgba(208, 56, 1, 0.40);
    --theme-secondary: rgba(245, 158, 11, 0.55);
    --theme-secondary-alpha-60: rgba(245, 158, 11, 0.30);
    --theme-accent: rgba(255, 90, 31, 0.40);
    --theme-accent-alpha-50: rgba(255, 90, 31, 0.20);
    --theme-accent-alpha-60: rgba(255, 90, 31, 0.35);
    --theme-accent-alpha-80: rgba(255, 90, 31, 0.45);
    --theme-glow: rgba(208, 56, 1, 0.4);
    --theme-line: rgba(208, 56, 1, 0.70);
    --theme-line-bright: rgba(208, 56, 1, 0.95);
    --theme-dot-primary: rgba(208, 56, 1, 0.60);
    --theme-dot-accent: rgba(245, 158, 11, 0.55);
}

/* 1. Subtle Gradient Background - Fintech Style */
.slider-gradient-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    background: linear-gradient(
        135deg,
        var(--theme-primary) 0%,
        var(--theme-secondary) 20%,
        var(--theme-accent) 40%,
        var(--theme-primary) 60%,
        var(--theme-primary) 80%,
        var(--theme-secondary) 100%
    );
    background-size: 400% 400%;
    animation: subtleGradientFlow 20s ease-in-out infinite;
    transition: background 0.8s ease;
}

/* Gradient overlay layers */
.slider-gradient-bg::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(
        ellipse at 30% 40%,
        var(--theme-primary) 0%,
        var(--theme-primary-alpha-50) 30%,
        transparent 60%
    ),
    radial-gradient(
        ellipse at 70% 60%,
        var(--theme-accent) 0%,
        var(--theme-accent-alpha-50) 30%,
        transparent 60%
    );
    animation: gradientShift 25s ease-in-out infinite;
    transition: background 0.8s ease;
}

/* 2. Geometric Patterns - Tech Company Style */
.floating-orbs {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

/* Geometric Shapes */
.floating-orbs::before,
.floating-orbs::after {
    content: '';
    position: absolute;
    animation: geometricFloat 30s ease-in-out infinite;
}

/* Hexagon shape 1 */
.floating-orbs::before {
    width: 350px;
    height: 350px;
    top: 15%;
    left: 8%;
    background: 
        linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-alpha-60) 50%, transparent 100%),
        repeating-linear-gradient(
            45deg,
            var(--theme-primary-alpha-80),
            var(--theme-primary-alpha-80) 10px,
            var(--theme-secondary-alpha-60) 10px,
            var(--theme-secondary-alpha-60) 20px
        );
    clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    filter: blur(1px);
    animation-delay: 0s;
    box-shadow: 0 0 60px var(--theme-glow);
    transition: background 0.8s ease, box-shadow 0.8s ease;
}

/* Circle shape 2 */
.floating-orbs::after {
    width: 450px;
    height: 450px;
    bottom: 10%;
    right: 5%;
    background: 
        radial-gradient(circle, var(--theme-accent) 0%, var(--theme-accent-alpha-60) 40%, transparent 70%),
        repeating-radial-gradient(
            circle at center,
            var(--theme-accent-alpha-80),
            var(--theme-accent-alpha-80) 5px,
            var(--theme-primary-alpha-60) 5px,
            var(--theme-primary-alpha-60) 10px
        );
    border-radius: 50%;
    filter: blur(2px);
    animation-delay: -15s;
    box-shadow: 0 0 80px var(--theme-glow);
    transition: background 0.8s ease, box-shadow 0.8s ease;
}

/* Parlak nokta efekti - çok hafif */
@keyframes shimmer {
    0% {
        transform: translateX(-100%) translateY(-100%) rotate(45deg);
    }
    100% {
        transform: translateX(100%) translateY(100%) rotate(45deg);
    }
}

.slide-cta {
    position: relative;
    overflow: hidden;
}

.slide-cta::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        45deg,
        transparent 30%,
        rgba(255, 255, 255, 0.1) 50%,
        transparent 70%
    );
    animation: shimmer 3s infinite;
}

/* Additional Geometric Elements */
/* Animated lines */
.geometric-lines {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
}

.geometric-lines::before,
.geometric-lines::after {
    content: '';
    position: absolute;
    width: 3px;
    height: 100%;
    background: linear-gradient(
        to bottom,
        transparent 0%,
        var(--theme-line) 25%,
        var(--theme-line-bright) 50%,
        var(--theme-line) 75%,
        transparent 100%
    );
    box-shadow: 0 0 20px var(--theme-glow);
    animation: geometricSlide 15s linear infinite;
    transition: background 0.8s ease, box-shadow 0.8s ease;
}

.geometric-lines::before {
    left: 20%;
    animation-delay: -5s;
}

.geometric-lines::after {
    left: 75%;
    animation-delay: -10s;
}

/* Pulsing dots grid */
.dot-grid {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: 
        radial-gradient(circle, var(--theme-dot-primary) 2px, transparent 2px),
        radial-gradient(circle, var(--theme-dot-accent) 2px, transparent 2px);
    background-size: 50px 50px, 80px 80px;
    background-position: 0 0, 25px 25px;
    animation: pulseGlow 8s ease-in-out infinite;
    opacity: 0.85;
    transition: background-image 0.8s ease;
}

/* Responsive optimizasyonlar */
@media (max-width: 768px) {
    .floating-orbs::before {
        width: 150px;
        height: 150px;
        filter: blur(0.5px);
    }
    
    .floating-orbs::after {
        width: 200px;
        height: 200px;
        filter: blur(1px);
    }
    
    .geometric-lines::before,
    .geometric-lines::after {
        opacity: 0.5;
    }
    
    .dot-grid {
        background-size: 40px 40px, 60px 60px;
        opacity: 0.2;
    }
}

/* Prefers reduced motion desteği */
@media (prefers-reduced-motion: reduce) {
    .slide-content .slide-badge,
    .slide-content .slide-title,
    .slide-content .slide-description,
    .slide-content .slide-cta,
    .video-play-button {
        animation: none;
        opacity: 1;
    }
    
    .floating-orbs::before,
    .floating-orbs::after,
    .geometric-lines::before,
    .geometric-lines::after {
        animation: none;
    }
    
    .slider-gradient-bg,
    .slider-gradient-bg::before,
    .dot-grid {
        animation: none;
    }
}
