/* === RESET COMPLET POUR PICKEENOO STUDIO AI === */

/* Reset du body */
html, body {
    margin: 0 !important;
    padding: 0 !important;
    background: #1a1a2e !important;
    color: white !important;
}

/* Reset SP Page Builder */
#sp-page-builder,
.sp-page-builder,
.sp-page-builder-content,
.page-content,
#sp-main-body {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}


/* Fond gradient forcé */
.cinema-gradient {
    background: linear-gradient(90deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%) !important;
    min-height: 100vh !important;
}

/* Texte blanc forcé */
.text-white,
.cinema-gradient * {
    color: white !important;
}

/* Fix padding pour le contenu sous le nav fixe */
section:first-of-type {
    padding-top: 4rem !important;
}
  @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');
        
        * {
            font-family: 'Inter', sans-serif;
        }
        
        .gradient-bg {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
        }
        
        .cinema-gradient {
            background: linear-gradient(90deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%) !important;
        }
        
        .glass-effect {
            background: rgba(255, 255, 255, 0.05) !important;
            backdrop-filter: blur(10px) !important;
            border: 1px solid rgba(255, 255, 255, 0.1) !important;
        }
        
        .prompt-card {
            transition: all 0.3s ease !important;
            transform: translateY(0) !important;
        }
        
        .prompt-card:hover {
            transform: translateY(-5px) !important;
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3) !important;
        }
        
        .typing-effect {
            overflow: hidden !important;
            white-space: nowrap !important;
            animation: typing 3s steps(40, end) !important;
        }
        
        @keyframes typing {
            from { width: 0 }
            to { width: 100% }
        }
        
        .floating {
            animation: floating 3s ease-in-out infinite !important;
        }
        
        @keyframes floating {
            0%, 100% { transform: translateY(0px); }
            50% { transform: translateY(-10px); }
        }
        
        .shimmer {
            background: linear-gradient(90deg, transparent, rgba(255,255,255,0.1), transparent) !important;
            background-size: 200% 100% !important;
            animation: shimmer 2s infinite !important;
        }
        
        @keyframes shimmer {
            0% { background-position: -200% 0; }
            100% { background-position: 200% 0; }
        }
        
        /* Styles pour les visualisations du guide */
        .shot-visual {
            width: 80px !important;
            height: 60px !important;
            border: 2px solid rgba(255, 255, 255, 0.2) !important;
            border-radius: 4px !important;
            position: relative !important;
        }
        
        .ecu {
            background: linear-gradient(135deg, #4f46e5, #7c3aed) !important;
        }
        
        .ecu .face {
            width: 40px !important;
            height: 40px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 50% !important;
            position: absolute !important;
            top: 10px !important;
            left: 20px !important;
            transform: translateX(-50%) !important;
        }
        
        .cu {
            background: linear-gradient(135deg, #8b5cf6, #d946ef) !important;
        }
        
        .cu .head-shoulders {
            width: 50px !important;
            height: 45px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 25px 25px 5px 5px !important;
            position: absolute !important;
            top: 8px !important;
            left: 50% !important;
            transform: translateX(-50%) !important;
        }
        
        .ms {
            background: linear-gradient(135deg, #ec4899, #f43f5e) !important;
        }
        
        .ms .upper-body {
            width: 40px !important;
            height: 50px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 20px 20px 5px 5px !important;
            position: absolute !important;
            top: 5px !important;
            left: 50% !important;
            transform: translateX(-50%) !important;
        }
        
        .fs {
            background: linear-gradient(135deg, #f59e0b, #d97706) !important;
        }
        
        .fs .full-body {
            width: 30px !important;
            height: 55px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 15px 15px 5px 5px !important;
            position: absolute !important;
            top: 3px !important;
            left: 50% !important;
            transform: translateX(-50%) !important;
        }
        
        .ws {
            background: linear-gradient(135deg, #10b981, #059669) !important;
        }
        
        .ws .body-environment {
            width: 25px !important;
            height: 40px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 12px 12px 5px 5px !important;
            position: absolute !important;
            bottom: 10px !important;
            left: 20px !important;
        }
        
        .ews {
            background: linear-gradient(135deg, #3b82f6, #1d4ed8) !important;
        }
        
        .ews .landscape {
            width: 70px !important;
            height: 20px !important;
            background: rgba(255, 255, 255, 0.2) !important;
            border-radius: 10px !important;
            position: absolute !important;
            bottom: 10px !important;
            left: 5px !important;
        }
        
        .camera-angle {
            width: 200px !important;
            height: 150px !important;
            position: relative !important;
            margin: 0 auto !important;
        }
        
        .camera-angle .camera {
            width: 30px !important;
            height: 20px !important;
            background: rgba(255, 255, 255, 0.8) !important;
            border-radius: 5px !important;
            position: absolute !important;
        }
        
        .camera-angle .subject {
            width: 40px !important;
            height: 60px !important;
            background: rgba(147, 51, 234, 0.7) !important;
            border-radius: 10px !important;
            position: absolute !important;
            bottom: 20px !important;
            left: 80px !important;
        }
        
        .high-angle .camera {
            top: 20px !important;
            left: 85px !important;
        }
        
        .eye-level .camera {
            bottom: 50px !important;
            left: 85px !important;
        }
        
        .low-angle .camera {
            bottom: 20px !important;
            left: 85px !important;
        }
        
        .movement-icon {
            width: 60px !important;
            height: 60px !important;
            background: rgba(255, 255, 255, 0.1) !important;
            border-radius: 50% !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
        }
        
        .lighting-diagram {
            width: 150px !important;
            height: 150px !important;
            background: rgba(0, 0, 0, 0.2) !important;
            border-radius: 50% !important;
        }
        
        .lighting-diagram .subject-center {
            width: 40px !important;
            height: 40px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 50% !important;
            position: absolute !important;
            top: 55px !important;
            left: 55px !important;
        }
        
        .lighting-diagram .key-light,
        .lighting-diagram .fill-light,
        .lighting-diagram .back-light,
        .lighting-diagram .light-source,
        .lighting-diagram .back-light-rim {
            width: 20px !important;
            height: 20px !important;
            background: radial-gradient(circle, #fbbf24, #f59e0b) !important;
            border-radius: 50% !important;
            position: absolute !important;
        }
        
        .three-point .key-light {
            top: 20px !important;
            left: 40px !important;
        }
        
        .three-point .fill-light {
            top: 20px !important;
            right: 40px !important;
        }
        
        .three-point .back-light {
            bottom: 20px !important;
            left: 65px !important;
        }
        
        .rembrandt .light-source {
            top: 30px !important;
            left: 30px !important;
        }
        
        .rembrandt .triangle-light {
            width: 15px !important;
            height: 15px !important;
            background: rgba(251, 191, 36, 0.6) !important;
            clip-path: polygon(50% 0%, 0% 100%, 100% 100%) !important;
            position: absolute !important;
            top: 70px !important;
            left: 48px !important;
        }
        
        .rim .back-light-rim {
            bottom: 30px !important;
            left: 65px !important;
        }
        
        .dof-visual {
            width: 120px !important;
            height: 80px !important;
            border: 2px solid rgba(255, 255, 255, 0.2) !important;
            border-radius: 4px !important;
            position: relative !important;
            overflow: hidden !important;
        }
        
        .dof-visual .focus-subject {
            width: 30px !important;
            height: 45px !important;
            background: rgba(147, 51, 234, 0.8) !important;
            border-radius: 15px 15px 5px 5px !important;
            position: absolute !important;
            top: 18px !important;
            left: 45px !important;
            z-index: 2 !important;
        }
        
        .shallow .blur-background {
            width: 100px !important;
            height: 30px !important;
            background: rgba(255, 255, 255, 0.1) !important;
            filter: blur(2px) !important;
            border-radius: 15px !important;
            position: absolute !important;
            bottom: 10px !important;
            left: 10px !important;
        }
        
        .shallow .blur-foreground {
            width: 40px !important;
            height: 15px !important;
            background: rgba(255, 255, 255, 0.1) !important;
            filter: blur(2px) !important;
            border-radius: 7px !important;
            position: absolute !important;
            top: 10px !important;
            left: 10px !important;
        }
        
        .deep .sharp-background {
            width: 100px !important;
            height: 30px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 15px !important;
            position: absolute !important;
            bottom: 10px !important;
            left: 10px !important;
        }
        
        .deep .sharp-foreground {
            width: 40px !important;
            height: 15px !important;
            background: rgba(255, 255, 255, 0.3) !important;
            border-radius: 7px !important;
            position: absolute !important;
            top: 10px !important;
            left: 10px !important;
        }
        
        .bokeh .bokeh-lights {
            width: 100% !important;
            height: 100% !important;
            position: relative !important;
        }
        
        .bokeh .bokeh-lights::before,
        .bokeh .bokeh-lights::after {
            content: '' !important;
            width: 15px !important;
            height: 15px !important;
            background: rgba(255, 255, 255, 0.5) !important;
            border-radius: 50% !important;
            position: absolute !important;
            filter: blur(1px) !important;
        }
        
        .bokeh .bokeh-lights::before {
            top: 20px !important;
            left: 20px !important;
        }
        
        .bokeh .bokeh-lights::after {
            bottom: 15px !important;
            right: 25px !important;
        }
        
        /* Styles pour les palettes de couleurs */
        .style-palette {
            margin-bottom: 1rem;
        }
        
        .color-strip {
            display: flex;
            height: 40px;
            border-radius: 8px;
            overflow: hidden;
        }
        
        .color {
            flex: 1;
        }
        
        /* Cinematic - Teal & Orange */
        .cinematic-1 { background: #0a2342; }
        .cinematic-2 { background: #2a4a6e; }
        .cinematic-3 { background: #f4a261; }
        .cinematic-4 { background: #e76f51; }
        
        /* Cyberpunk - Neon */
        .cyberpunk-1 { background: #0d0221; }
        .cyberpunk-2 { background: #261447; }
        .cyberpunk-3 { background: #ff3864; }
        .cyberpunk-4 { background: #2de2e6; }
        
        /* Film Noir - Monochrome */
        .noir-1 { background: #000000; }
        .noir-2 { background: #333333; }
        .noir-3 { background: #666666; }
        .noir-4 { background: #999999; }
        
        /* Retro - Vintage */
        .retro-1 { background: #8a7458; }
        .retro-2 { background: #b5a48a; }
        .retro-3 { background: #d4c5b2; }
        .retro-4 { background: #e8ddd0; }
        
        /* Documentary - Natural */
        .documentary-1 { background: #3a5a40; }
        .documentary-2 { background: #588157; }
        .documentary-3 { background: #a3b18a; }
        .documentary-4 { background: #dad7cd; }
        
        /* Minimalist - Clean */
        .minimalist-1 { background: #f8f9fa; }
        .minimalist-2 { background: #e9ecef; }
        .minimalist-3 { background: #dee2e6; }
        .minimalist-4 { background: #ced4da; }
        
        /* Responsive adjustments */
        @media (max-width: 768px) {
            .shot-visual {
                width: 60px;
                height: 45px;
            }
            
            .camera-angle {
                width: 150px;
                height: 120px;
            }
            
            .lighting-diagram {
                width: 120px;
                height: 120px;
            }
            
            .dof-visual {
                width: 100px;
                height: 70px;
            }
        }

        .tag-btn {
            background: rgba(255, 255, 255, 0.05);
            border: 1px solid rgba(255, 255, 255, 0.1);
            color: rgba(255, 255, 255, 0.7);
            padding: 4px 10px;
            border-radius: 6px;
            font-size: 0.75rem;
            transition: all 0.2s;
            cursor: pointer;
        }

        .tag-btn:hover {
            background: rgba(147, 51, 234, 0.2);
            border-color: rgba(147, 51, 234, 0.4);
            color: white;
        }

        .tag-btn.active {
            background: #9333ea;
            border-color: #a855f7;
            color: white;
        }

        .custom-scrollbar::-webkit-scrollbar {
            width: 6px;
        }
        .custom-scrollbar::-webkit-scrollbar-track {
            background: rgba(0, 0, 0, 0.1);
        }
        .custom-scrollbar::-webkit-scrollbar-thumb {
            background: rgba(147, 51, 234, 0.5);
            border-radius: 10px;
        }

        /* Detail & Realism selector cards */
        .detail-card {
            cursor: pointer;
            transition: transform 0.15s ease, border-color 0.15s ease, background 0.15s ease;
            border: 1px solid rgba(255,255,255,0.10);
            background: rgba(255,255,255,0.04);
        }
        .detail-card:hover {
            transform: translateY(-2px);
            border-color: rgba(147,51,234,0.45);
            background: rgba(147,51,234,0.10);
        }
        .detail-card.active {
            border-color: rgba(168,85,247,0.95);
            box-shadow: 0 0 0 2px rgba(168,85,247,0.25);
            background: rgba(147,51,234,0.18);
        }
/* Fix pour la navigation fixe */
nav.glass-effect {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    background: rgba(255, 255, 255, 0.05) !important;
    backdrop-filter: blur(10px) !important;
}

/* Fix pour le fond noir */
body.cinema-gradient,
.cinema-gradient {
    background: linear-gradient(90deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%) !important;
    min-height: 100vh !important;
    color: white !important;
}

/* Fix pour le texte visible */
.text-white {
    color: white !important;
}

/* Reset du fond blanc de Joomla */
body {
    background: transparent !important;
}

#sp-page-builder,
.sp-page-builder-content {
    background: transparent !important;
}
/* === FIX GRADIENTS TEXTE === */
.bg-gradient-to-r,
.bg-gradient-to-l,
.bg-gradient-to-t,
.bg-gradient-to-b {
    background-image: linear-gradient(to right, var(--tw-gradient-stops)) !important;
}

.bg-clip-text {
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

.text-transparent {
    color: transparent !important;
}

/* Variables de gradient */
:root {
    --tw-gradient-from: transparent;
    --tw-gradient-to: transparent;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
}
/* Gradient de texte - universel */
[class*="bg-gradient-to"] {
    background-image: linear-gradient(to right, var(--tw-gradient-stops)) !important;
}

[class*="bg-clip-text"] {
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
}

/* Variantes de gradients prédéfinies */
.gradient-purple-pink {
    background: linear-gradient(to right, #c084fc, #f472b6) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

.gradient-purple-pink-red {
    background: linear-gradient(to right, #c084fc, #f472b6, #f87171) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

/* === BOUTONS NAVIGATION === */
.nav-btn {
    color: rgba(255, 255, 255, 0.8) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    padding: 0.5rem 1rem !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
    border: none !important;
}

.nav-btn:hover {
    color: #c084fc !important; /* purple-400 */
    transform: translateY(-2px) !important;
}

/* Container des boutons nav */
.hidden.md\:flex {
    display: none !important;
}

@media (min-width: 768px) {
    .hidden.md\:flex {
        display: flex !important;
    }
}

/* Espacement entre boutons */
.space-x-6 > :not([hidden]) ~ :not([hidden]) {
    margin-left: 1.5rem !important;
}

/* Alignement items nav */
.items-center {
    align-items: center !important;
}

.flex {
    display: flex !important;
}
/* Navigation non fixe */
nav.glass-effect {
    background: rgba(255, 255, 255, 0.05) !important;
    backdrop-filter: blur(10px) !important;
}

/* Boutons nav */
.nav-btn {
    color: white !important;
    background: transparent !important;
    border: none !important;
    padding: 0.5rem 1rem !important;
    cursor: pointer !important;
}

.nav-btn:hover {
    color: #c084fc !important;
}

/* Gradient texte */
.bg-gradient-to-r {
    background-image: linear-gradient(to right, var(--tw-gradient-stops)) !important;
}

.bg-clip-text {
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}

/* Boutons plateformes */
.platform-chip {
    color: white !important;
}

.platform-chip span {
    color: white !important;
}

/* Glass effect */
.glass-effect {
    background: rgba(255, 255, 255, 0.05) !important;
    backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}
/* === INPUTS ET TEXTAREA POUR PICKEENOO STUDIO AI === */

/* Reset des inputs par défaut du template */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="date"],
input[type="password"],
textarea,
select {
    background-color: #1f2937 !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 0.5rem !important;
    padding: 0.75rem 1rem !important;
    color: white !important;
    font-size: 1rem !important;
    font-family: 'Inter', sans-serif !important;
    width: 100% !important;
    outline: none !important;
    transition: all 0.3s ease !important;
}

/* Focus state */
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="date"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
    border-color: #c084fc !important;
    ring: 2px solid rgba(192, 132, 252, 0.3) !important;
    box-shadow: 0 0 0 3px rgba(192, 132, 252, 0.1) !important;
}

/* Placeholder */
input::placeholder,
textarea::placeholder {
    color: rgba(255, 255, 255, 0.4) !important;
    font-style: italic !important;
}

/* Textarea spécifique */
textarea {
    resize: none !important;
    min-height: 8rem !important;
}

/* Textarea pour le concept */
#conceptInput {
    background-color: #1f2937 !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    border-radius: 0.5rem !important;
    padding: 1rem !important;
    color: white !important;
    font-size: 1rem !important;
    line-height: 1.6 !important;
    min-height: 8rem !important;
}

#conceptInput:focus {
    border-color: #c084fc !important;
    box-shadow: 0 0 0 3px rgba(192, 132, 252, 0.15) !important;
}

/* Select dropdowns */
select {
    background-color: #1f2937 !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    cursor: pointer !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239ca3af' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E") !important;
    background-position: right 0.5rem center !important;
    background-repeat: no-repeat !important;
    background-size: 1.5em 1.5em !important;
    padding-right: 2.5rem !important;
}

select option {
    background-color: #1f2937 !important;
    color: white !important;
    padding: 0.5rem !important;
}

/* Sélecteur de langue (plus petit) */
#langSelect {
    background-color: rgba(31, 41, 55, 0.7) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    padding: 0.25rem 0.5rem !important;
    font-size: 0.875rem !important;
    width: auto !important;
}

/* Disabled state */
input:disabled,
textarea:disabled,
select:disabled {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}

/* Hover sur les inputs */
input:not(:disabled):hover,
textarea:not(:disabled):hover,
select:not(:disabled):hover {
    border-color: rgba(192, 132, 252, 0.4) !important;
}
