﻿        /* CRITICAL MOBILE FIXES */
        html, body {
            overflow-x: hidden !important;
            width: 100%;
            position: relative;
            background-color: #050505;
            color: #EAEAEA;
            font-family: 'Cairo', sans-serif;
        }

        /* Shared Styles */
        ::-webkit-scrollbar { width: 8px; height: 4px; }
        ::-webkit-scrollbar-track { background: #050505; }
        ::-webkit-scrollbar-thumb { background: #333; border-radius: 4px; }
        ::-webkit-scrollbar-thumb:hover { background: #D4C4A8; }
        
        ::selection { background-color: #D4C4A8; color: #050505; }
        
        .no-scrollbar::-webkit-scrollbar { display: none; }
        .no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

        .hidden-view { display: none !important; }

        /* Animation Classes */
        .reveal-element { opacity: 0; transform: translateY(40px); transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
        .reveal-element.active { opacity: 1; transform: translateY(0); }
        
        .btn-hover { transition: transform 0.3s ease, box-shadow 0.3s ease; }
        .btn-hover:hover { transform: scale(1.05); box-shadow: 0 0 20px rgba(212, 196, 168, 0.2); }

        .marquee-container { display: flex; overflow: hidden; white-space: nowrap; }
        .marquee-content { display: flex; animation: scroll 20s linear infinite; }
        @keyframes scroll { 0% { transform: translateX(0); } 100% { transform: translateX(50%); } }

        /* Form Input Styles */
        .form-input { 
            width: 100%; 
            background-color: #1e1e1e; 
            border: 1px solid #333; 
            color: #f0f0f0; 
            padding: 0.85rem 1rem; 
            border-radius: 0.75rem; 
            transition: all 0.3s ease;
            font-size: 0.95rem;
        }
        .form-input:focus { 
            outline: none; 
            border-color: #D4C4A8; 
            background-color: #252525;
            box-shadow: 0 0 0 3px rgba(212, 196, 168, 0.1);
        }

        select.form-input {
            appearance: none;
            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='%23D4C4A8' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
            background-position: left 1rem center;
            background-repeat: no-repeat;
            background-size: 1.2em 1.2em;
            padding-left: 2.5rem;
        }

        input[type="date"], input[type="number"], input[type="tel"] { font-family: 'Inter', sans-serif; color-scheme: dark; }
        
        .custom-checkbox {
            appearance: none; background-color: #1e1e1e; margin: 0; font: inherit; color: currentColor;
            width: 1.5rem; height: 1.5rem; border: 1px solid #444; border-radius: 0.25rem;
            display: grid; place-content: center; cursor: pointer; transition: all 0.2s;
        }
        .custom-checkbox::before {
            content: ""; width: 0.8rem; height: 0.8rem; transform: scale(0);
            transition: 120ms transform ease-in-out; box-shadow: inset 1em 1em #D4C4A8;
            transform-origin: center; clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
        }
        .custom-checkbox:checked::before { transform: scale(1); }
        .custom-checkbox:checked { border-color: #D4C4A8; }
        
        .border-red-500 {
            border-color: #ef4444 !important;
            box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.2);
        }

        /* Admin Dashboard Specifics */
        .admin-card { background: #121212; border: 1px solid #2A2A2A; border-radius: 1rem; padding: 1.5rem; }
        .admin-table th { text-align: right; padding: 1rem; color: #888; font-size: 0.875rem; border-bottom: 1px solid #2A2A2A; }
        .admin-table td { padding: 1rem; border-bottom: 1px solid #1A1A1A; }
        
        /* PIN Input Styles */
        .pin-input {
            letter-spacing: 0.5em;
            font-family: 'Inter', sans-serif;
            text-align: center;
            font-size: 1.5rem;
        }
        
        /* Glow Blob - Constrained to viewport */
        .glow-blob {
            position: fixed; width: 400px; height: 400px;
            background: radial-gradient(circle, rgba(212,196,168,0.08) 0%, rgba(0,0,0,0) 70%);
            border-radius: 50%; pointer-events: none; z-index: 1;
        }

        /* --- NEW ANIMATION STYLES (Montage Theme) --- */
        .timeline-scanner {
            position: absolute; top: 0; bottom: 0; width: 2px;
            background: linear-gradient(to bottom, transparent, rgba(212, 196, 168, 0.5), transparent);
            box-shadow: 0 0 15px rgba(212, 196, 168, 0.3);
            z-index: 0; animation: scanLine 8s linear infinite; pointer-events: none;
        }
        @keyframes scanLine {
            0% { left: -10%; opacity: 0; }
            10% { opacity: 1; }
            90% { opacity: 1; }
            100% { left: 110%; opacity: 0; }
        }

        .float-icon {
            position: absolute; color: rgba(212, 196, 168, 0.08);
            z-index: 0; pointer-events: none; animation: floatAnim 12s ease-in-out infinite;
        }
        @keyframes floatAnim {
            0%, 100% { transform: translateY(0) rotate(0deg); }
            50% { transform: translateY(-20px) rotate(5deg); }
        }
        .icon-cut { top: 15%; left: 10%; font-size: 3rem; animation-delay: 0s; }
        .icon-film { bottom: 20%; right: 10%; font-size: 4rem; animation-delay: 2s; }
        .icon-play { top: 25%; right: 20%; font-size: 2.5rem; animation-delay: 4s; }
        .icon-layer { bottom: 15%; left: 15%; font-size: 3.5rem; animation-delay: 1s; }

        /* Markdown Styles for AI Response */
        .markdown-prose h3 { color: #D4C4A8; font-size: 1.25rem; font-weight: bold; margin-top: 1rem; margin-bottom: 0.5rem; }
        .markdown-prose ul { list-style-type: disc; padding-right: 1.5rem; color: #d1d5db; margin-bottom: 1rem; }
        .markdown-prose li { margin-bottom: 0.25rem; }
        .markdown-prose strong { color: white; font-weight: 800; }
        .markdown-prose p { margin-bottom: 0.75rem; color: #e5e7eb; line-height: 1.6; }

        /* Glitch Effect - REMOVED for clean style */
        /* Developer Card Styles */
        :root {
            --bg-card: rgba(18, 18, 18, 0.6);
            --bg-card-border: rgba(255, 255, 255, 0.08);
            --text-primary: #ffffff;
            --text-secondary: rgba(255, 255, 255, 0.6);
            --accent-color: #D4C4A8;
            --brand-color-1: rgba(255, 255, 255, 0.05);
            --brand-color-2: rgba(37, 211, 102, 0.1);
            --shadow-color: rgba(0, 0, 0, 0.5);
            --about-bg-visual: #121212;
            --about-text-highlight: #D4C4A8;
        }

        .dev-card {
            background-color: var(--bg-card); border: 1px solid var(--bg-card-border);
            border-radius: 24px; padding: 24px; width: 100%; max-width: 320px;
            margin: 0 auto; backdrop-filter: blur(12px);
            box-shadow: 0 10px 30px -10px var(--shadow-color);
            display: flex; flex-direction: column; align-items: center; text-align: center;
            transition: transform 0.3s ease, box-shadow 0.3s ease; position: relative;
        }
        .dev-card:hover { transform: translateY(-5px); box-shadow: 0 15px 40px -10px var(--shadow-color); border-color: var(--accent-color); }
        .dev-image-wrapper { position: relative; margin-bottom: 16px; }
        .dev-image {
            width: 80px; height: 80px; border-radius: 50%; object-fit: cover;
            border: 2px solid var(--accent-color); box-shadow: 0 0 15px var(--accent-color);
            transition: transform 0.3s ease;
        }
        .dev-card:hover .dev-image { transform: scale(1.05); }
        .dev-meta { margin-bottom: 20px; }
        .dev-subtitle { font-size: 0.75rem; color: var(--accent-color); display: block; margin-bottom: 4px; font-weight: 600; }
        .dev-name { font-size: 1.25rem; font-weight: 800; color: var(--text-primary); font-family: 'Cairo', sans-serif; }
        .dev-actions { display: flex; gap: 12px; width: 100%; }
        .dev-btn {
            flex: 1; display: flex; align-items: center; justify-content: center; gap: 8px;
            padding: 10px; border-radius: 12px; font-size: 0.875rem; font-weight: 600;
            text-decoration: none; transition: all 0.3s ease; font-family: 'Cairo', sans-serif;
        }
        .btn-site { background-color: var(--brand-color-1); color: var(--text-primary); border: 1px solid var(--bg-card-border); }
        .btn-site:hover { background-color: var(--text-primary); color: #000; }
        .btn-whatsapp { background-color: var(--brand-color-2); color: #25D366; border: 1px solid rgba(37, 211, 102, 0.2); }
        .btn-whatsapp:hover { background-color: #25D366; color: #fff; }
        .admin-trigger-absolute {
            position: absolute; top: 15px; left: 15px; opacity: 0.1;
            transition: opacity 0.3s; cursor: pointer; color: var(--text-secondary);
        }
        .admin-trigger-absolute:hover { opacity: 1; color: var(--accent-color); }
        
        /* AI Chat Styles */
        .chat-bubble {
            max-width: 85%;
            padding: 0.75rem 1rem;
            border-radius: 1.25rem;
            line-height: 1.6;
            font-size: 0.9375rem;
            word-wrap: break-word;
        }
        .chat-bubble.user {
            align-self: flex-end;
            background: linear-gradient(135deg, rgba(212, 196, 168, 0.15), rgba(212, 196, 168, 0.05));
            border: 1px solid rgba(212, 196, 168, 0.15);
            color: #f0f0f0;
            border-bottom-right-radius: 0.375rem;
        }
        .chat-bubble.ai {
            align-self: flex-start;
            background: rgba(255, 255, 255, 0.04);
            border: 1px solid rgba(255, 255, 255, 0.06);
            color: #d1d5db;
            border-bottom-left-radius: 0.375rem;
        }
        .chat-bubble.ai h3 { color: #D4C4A8; font-size: 1.05rem; font-weight: bold; margin: 0.75rem 0 0.4rem; }
        .chat-bubble.ai ul { list-style-type: disc; padding-right: 1.25rem; margin-bottom: 0.5rem; }
        .chat-bubble.ai li { margin-bottom: 0.2rem; }
        .chat-bubble.ai strong { color: #fff; font-weight: 800; }
        .chat-bubble.ai p { margin-bottom: 0.5rem; }
        .chat-bubble.ai p:last-child { margin-bottom: 0; }
        .chat-label {
            font-size: 0.7rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            opacity: 0.5;
            margin-bottom: 0.25rem;
        }
