/* =========================================
   PREMIUM GLASS UI SYSTEM
========================================= */

/* 1. Dark Glass */
.glass-dark {
    background: rgba(24, 24, 27, 0.4);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.4);
}

.glass-dark-hover:hover {
    background: rgba(24, 24, 27, 0.6);
    border: 1px solid rgba(255, 255, 255, 0.15);
    transform: translateY(-4px);
    box-shadow: 0 12px 40px 0 rgba(0, 0, 0, 0.5);
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

/* 2. Light Glass - Enhanced Visibility */
.glass-light {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0.2) 100%);
    backdrop-filter: blur(28px);
    -webkit-backdrop-filter: blur(28px);
    border: 1px solid rgba(255, 255, 255, 0.9);
    border-right-color: rgba(255, 255, 255, 0.4);
    border-bottom-color: rgba(255, 255, 255, 0.4);
    box-shadow: 0 16px 40px 0 rgba(0, 0, 0, 0.08), inset 0 2px 2px rgba(255, 255, 255, 1);
}

.glass-light-hover:hover {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.7) 0%, rgba(255, 255, 255, 0.3) 100%);
    border: 1px solid rgba(255, 255, 255, 1);
    transform: translateY(-6px);
    box-shadow: 0 20px 50px 0 rgba(0, 0, 0, 0.12), inset 0 2px 2px rgba(255, 255, 255, 1);
    transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

/* 3. Floating Glass / Acrylic */
.glass-floating {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.03));
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.18);
    box-shadow: 
        0 8px 32px 0 rgba(0, 0, 0, 0.37),
        inset 0 1px 1px rgba(255,255,255,0.2);
}

.glass-floating-light {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.6), rgba(255, 255, 255, 0.1));
    backdrop-filter: blur(32px);
    -webkit-backdrop-filter: blur(32px);
    border: 1px solid rgba(255, 255, 255, 0.9);
    border-right-color: rgba(255, 255, 255, 0.3);
    border-bottom-color: rgba(255, 255, 255, 0.3);
    box-shadow: 
        0 16px 48px 0 rgba(31, 38, 135, 0.12),
        inset 0 2px 3px rgba(255, 255, 255, 1);
}

/* 4. Navbar Glass Variants */
.glass-nav-dark {
    background: rgba(10, 10, 12, 0.75);
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.4);
}

.glass-nav-light {
    background: rgba(255, 255, 255, 0.65);
    backdrop-filter: blur(24px) saturate(180%);
    -webkit-backdrop-filter: blur(24px) saturate(180%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.85);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.07);
}

/* 5. Universal scrolled navbar glass */
.glass-nav {
    background: rgba(255, 255, 255, 0.14);
    backdrop-filter: blur(28px) saturate(200%);
    -webkit-backdrop-filter: blur(28px) saturate(200%);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 32px rgba(0, 0, 0, 0.18);
}

/* Base Transitions for Buttons & Cards */
.glass-btn {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.glass-btn::after {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.2) 0%, rgba(255,255,255,0) 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.glass-btn:hover::after {
    opacity: 1;
}

/* =========================================
   DARK SECTION GLASS OVERRIDES
   Glass cards look great on dark backgrounds
========================================= */
.theme-dark .glass-light {
    background: linear-gradient(135deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.03) 100%);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-right-color: rgba(255, 255, 255, 0.05);
    border-bottom-color: rgba(255, 255, 255, 0.05);
    box-shadow: 0 8px 32px rgba(0,0,0,0.5), inset 0 1px 1px rgba(255,255,255,0.1);
}

.theme-dark .glass-light-hover:hover {
    background: linear-gradient(135deg, rgba(255,255,255,0.14) 0%, rgba(255,255,255,0.06) 100%);
    border-color: rgba(255, 255, 255, 0.2);
    box-shadow: 0 16px 48px rgba(0,0,0,0.6), inset 0 1px 1px rgba(255,255,255,0.15);
}

.theme-dark .glass-floating-light {
    background: linear-gradient(135deg, rgba(255,255,255,0.1), rgba(255,255,255,0.04));
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-right-color: rgba(255, 255, 255, 0.06);
    border-bottom-color: rgba(255, 255, 255, 0.06);
    box-shadow: 0 16px 48px rgba(0,0,0,0.45), inset 0 1px 2px rgba(255,255,255,0.12);
}

/* Page banner (dark background without theme-dark class) glass adjustments */
.page-banner .glass-floating-light,
.page-banner .glass-light {
    background: linear-gradient(135deg, rgba(255,255,255,0.12), rgba(255,255,255,0.04));
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-right-color: rgba(255, 255, 255, 0.07);
    border-bottom-color: rgba(255, 255, 255, 0.07);
    box-shadow: 0 16px 48px rgba(0,0,0,0.5), inset 0 1px 2px rgba(255,255,255,0.15);
}

/* Reduced Motion & Mobile Optimization */
@media (prefers-reduced-motion: reduce) {
    .glass-dark-hover:hover,
    .glass-light-hover:hover {
        transform: none;
    }
}

@media (max-width: 768px) {
    /* Reduce expensive blur on mobile */
    .glass-dark,
    .glass-light,
    .glass-floating,
    .glass-floating-light {
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
    }
}
