        /* --- CORE --- */
        body {
            background-color: #020617;
            color: #f8fafc;
            font-family: 'Inter', sans-serif;
            margin: 0;
            overflow: hidden;
            /* Prevent full body scroll, handle scroll in feed */
            opacity: 0;
            /* JS fade in */
        }

        .display {
            font-family: 'Syncopate', sans-serif;
        }

        /* --- ANIMATIONS --- */
        @keyframes animationIn {
            0% {
                opacity: 0;
                transform: translateY(40px) scale(0.95);
                filter: blur(12px);
            }

            100% {
                opacity: 1;
                transform: translateY(0) scale(1);
                filter: blur(0px);
            }
        }

        .animate-in {
            animation: animationIn 0.8s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
            transform-origin: top center;
        }

        @keyframes shimmer {
            from {
                transform: translateX(-100%) skewX(-15deg);
            }

            to {
                transform: translateX(200%) skewX(-15deg);
            }
        }

        @keyframes bgShimmer {
            0% {
                background-position: 200% 0;
            }

            100% {
                background-position: -200% 0;
            }
        }

        /* --- UI COMPONENTS --- */
        .glass-panel {
            background: rgba(15, 23, 42, 0.6);
            backdrop-filter: blur(20px);
            border: 1px solid rgba(14, 165, 233, 0.1);
        }

        @keyframes aiGlow {

            0%,
            100% {
                box-shadow: 0 0 15px rgba(14, 165, 233, 0.1);
                border-color: rgba(14, 165, 233, 0.2);
            }

            50% {
                box-shadow: 0 0 30px rgba(14, 165, 233, 0.3);
                border-color: rgba(14, 165, 233, 0.5);
            }
        }

        .ai-bubble {
            animation: aiGlow 4s ease-in-out infinite;
            position: relative;
            background: linear-gradient(135deg, rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9));
        }

        .ai-bubble::before {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(90deg, transparent, rgba(14, 165, 233, 0.05), transparent);
            background-size: 200% 100%;
            animation: bgShimmer 4s infinite linear;
            border-radius: inherit;
            pointer-events: none;
            z-index: 0;
        }

        .ai-bubble>* {
            position: relative;
            z-index: 1;
        }

        /* --- FLASHLIGHT EFFECT --- */
        .flashlight-card {
            position: relative;
            background: rgba(15, 23, 42, 0.4);
            border: 1px solid rgba(14, 165, 233, 0.1);
            overflow: hidden;
            /* Fix: Garante que o brilho respeite o border-radius */
        }

        .flashlight-card::before {
            content: "";
            position: absolute;
            inset: 0px;
            background: radial-gradient(600px circle at var(--mouse-x) var(--mouse-y),
                    rgba(14, 165, 233, 0.15),
                    transparent 40%);
            opacity: 0;
            transition: opacity 0.5s;
            pointer-events: none;
            z-index: 2;
        }

        .flashlight-card:hover::before {
            opacity: 1;
        }

        /* Estilo para remover fundo branco de logos se necessário */
        .logo-blend {
            mix-blend-mode: screen;
            /* Para logos com fundo preto */
            /* filter: multiply; // Para logos com fundo branco use mix-blend-mode: multiply */
        }

        .noise-overlay {
            position: fixed;
            inset: 0;
            pointer-events: none;
            z-index: 9000;
            opacity: 0.03;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='1'/%3E%3C/svg%3E");
        }

        /* Markdown Styles for AI Response */
        .prose p {
            margin-bottom: 0.75em;
            line-height: 1.6;
        }

        .prose h1,
        .prose h2,
        .prose h3 {
            font-weight: 600;
            color: #fff;
            margin-top: 1em;
            margin-bottom: 0.5em;
        }

        .prose ul {
            list-style-type: disc;
            padding-left: 1.5em;
            margin-bottom: 1em;
        }

        .prose ol {
            list-style-type: decimal;
            padding-left: 1.5em;
            margin-bottom: 1em;
        }

        .prose code {
            background-color: rgba(30, 41, 59, 0.8);
            padding: 0.2em 0.4em;
            border-radius: 4px;
            font-family: monospace;
            color: #38bdf8;
            font-size: 0.9em;
        }

        .prose pre {
            background-color: #0f172a;
            padding: 1em;
            border-radius: 8px;
            overflow-x: auto;
            margin-bottom: 1em;
            border: 1px solid rgba(255, 255, 255, 0.05);
        }

        .prose pre code {
            background-color: transparent;
            padding: 0;
            color: #f8fafc;
        }

        .prose strong {
            color: #fff;
            font-weight: 600;
        }

        /* --- GEMINI LOADING --- */
        @keyframes geminiGradient {
            0% {
                background-position: 0% 50%;
            }

            50% {
                background-position: 100% 50%;
            }

            100% {
                background-position: 0% 50%;
            }
        }

        @keyframes sparklePulse {

            0%,
            100% {
                transform: scale(1);
                opacity: 0.8;
            }

            50% {
                transform: scale(1.2);
                opacity: 1;
            }
        }

        .gemini-loader-text {
            background: linear-gradient(90deg, #38bdf8, #818cf8, #38bdf8);
            background-size: 200% auto;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            animation: geminiGradient 3s linear infinite;
        }

        .sparkle-icon {
            animation: sparklePulse 2s ease-in-out infinite;
        }

        /* Custom Scrollbar for Feed */
        ::-webkit-scrollbar {
            width: 6px;
        }

        ::-webkit-scrollbar-track {
            background: transparent;
        }

        ::-webkit-scrollbar-thumb {
            background: rgba(14, 165, 233, 0.2);
            border-radius: 10px;
        }

        ::-webkit-scrollbar-thumb:hover {
            background: rgba(14, 165, 233, 0.5);
        }
