
        /* Tipografías base y variables */
        @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;800;900&display=swap');
        
        :root {
            --neon-blue: #2563eb;
            --neon-purple: #9333ea;
            --bg-dark: #050505;
        }

        html, body { 
            font-family: 'Outfit', sans-serif;
            background-color: var(--bg-dark);
            color: #f8fafc;
            overflow-x: hidden;
        }

/* Aumento de tamaño de letra global para mejorar accesibilidad a personas mayores */
html { font-size: 18px; }
@media (max-width: 640px) { html { font-size: 19px; } }



        /* Ruido (Grain) para estética Awwwards */
        body::before {
            content: "";
            position: fixed;
            top: 0; left: 0; width: 100vw; height: 100vh;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
            opacity: 0.04;
            z-index: 9999;
            pointer-events: none;
        }

        /* Orbe animado de fondo (Mesh Gradient) */
        .ambient-orb {
            position: fixed;
            top: -20vh; left: -20vw;
            width: 80vw; height: 80vw;
            background: radial-gradient(circle, rgba(147,51,234,0.15) 0%, rgba(37,99,235,0.05) 40%, transparent 70%);
            border-radius: 50%;
            filter: blur(80px);
            z-index: -1;
            animation: floatOrb 20s ease-in-out infinite alternate;
        }

        @keyframes floatOrb {
            0% { transform: translate(0, 0) scale(1); }
            100% { transform: translate(30vw, 20vh) scale(1.2); }
        }

        /* Bento Box Glassmorphism (Premium App) */
        .card-bento {
            background: rgba(255, 255, 255, 0.08); /* Gris visible y elegante */
            border: 1px solid rgba(255, 255, 255, 0.15);
            backdrop-filter: blur(24px);
            -webkit-backdrop-filter: blur(24px);
            border-radius: 2rem;
            box-shadow: 0 30px 60px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.1);
            transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .card-bento:hover {
            border-color: rgba(255, 255, 255, 0.25);
            background: rgba(255, 255, 255, 0.12);
            box-shadow: 0 40px 80px rgba(0,0,0,0.6), 0 0 40px rgba(37,99,235,0.15), inset 0 1px 0 rgba(255,255,255,0.2);
        }

        /* Tipografía Brutalista */
        .hero-brutal {
            font-weight: 900;
            font-size: clamp(3.5rem, 8vw, 8rem);
            line-height: 0.9;
            letter-spacing: -0.04em;
            text-transform: uppercase;
        }

        /* Textos gradientes premium */
        .text-glow {
            background: linear-gradient(to right, #fff, #a5b4fc);
            -webkit-background-clip: text;
            background-clip: text;
            color: transparent;
            text-shadow: 0 0 40px rgba(165, 180, 252, 0.3);
        }

        /* Inputs Soft Dark Mode */
        .input, .select, .checkbox, .radio {
            background-color: rgba(255, 255, 255, 0.08) !important;
            border: 1px solid rgba(255, 255, 255, 0.15) !important;
            border-radius: 1rem !important; /* Bordes suaves */
            color: #f8fafc !important;
            font-size: 1.05rem;
            transition: all 0.3s;
            color-scheme: dark; /* Para que el menú nativo sea oscuro */
        }
        /* Para navegadores que permiten estilizar los option */
        option {
            background-color: var(--bg-dark);
            color: #f8fafc;
        }
        .input:focus, .select:focus {
            background-color: rgba(255, 255, 255, 0.15) !important;
            border-color: var(--neon-blue) !important;
            box-shadow: 0 0 0 4px rgba(37,99,235,0.2) !important;
            outline: none;
        }

        /* Botón principal magnético */
        .btn-magnetic {
            background: linear-gradient(135deg, var(--neon-blue), var(--neon-purple));
            border: none;
            border-radius: 100px;
            color: white;
            font-weight: 800;
            letter-spacing: 1px;
            text-transform: uppercase;
            box-shadow: 0 10px 30px rgba(37,99,235,0.4);
            position: relative;
            overflow: hidden;
            transition: transform 0.3s ease;
        }
        .btn-magnetic::before {
            content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%;
            background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
            transition: left 0.7s ease;
        }
        .btn-magnetic:hover::before { left: 100%; }
        .btn-magnetic:hover { transform: scale(1.02); }
    
        /* Forzar colores claros ya que el tema black de DaisyUI no está en el app.css compilado */
        .label-text, .label-text-alt, p, h2, h3, h4, span, li, strong, em {
            color: #f8fafc;
        }
        .text-base-content\/80, .text-base-content\/70, .text-base-content\/50, .text-base-content\/60, .text-base-content\/40, .text-base-content\/30 {
            color: rgba(255,255,255,0.7) !important;
        }
        .bg-base-200 { background-color: rgba(255,255,255,0.05) !important; color: white !important; }
        .text-gray-900, .text-slate-800, .text-blue-900, .text-blue-800 { color: #fff !important; }
        
        .alert { background-color: rgba(255,255,255,0.05) !important; border-color: rgba(255,255,255,0.1) !important; color: white !important; }

    
.text-base-content { color: #f8fafc !important; }
a { color: #f8fafc; }


/* Corrección de colores semánticos para Dark Mode */
.text-primary { color: #60a5fa !important; } /* blue-400 */
.text-error { color: #f87171 !important; } /* red-400 */
.text-info { color: #38bdf8 !important; } /* sky-400 */
.text-warning { color: #fcd34d !important; } /* amber-300 */
.text-success { color: #4ade80 !important; } /* green-400 */

