
        body {
            font-family: 'Inter', sans-serif;
            background-color: #f3f4f6;
            background-image: radial-gradient(circle at top right, #e0e7ff, transparent),
                              radial-gradient(circle at bottom left, #dbeafe, transparent);
        }
        
        /* Custom scrollbar */
        textarea::-webkit-scrollbar, ul::-webkit-scrollbar {
            width: 8px;
        }
        textarea::-webkit-scrollbar-track, ul::-webkit-scrollbar-track {
            background: #f1f1f1; 
            border-radius: 4px;
        }
        textarea::-webkit-scrollbar-thumb, ul::-webkit-scrollbar-thumb {
            background: #c7c7cc; 
            border-radius: 4px;
        }
        textarea::-webkit-scrollbar-thumb:hover, ul::-webkit-scrollbar-thumb:hover {
            background: #a1a1aa; 
        }

        /* Toast animation */
        @keyframes slideIn {
            from { transform: translateX(100%); opacity: 0; }
            to { transform: translateX(0); opacity: 1; }
        }
        @keyframes fadeOut {
            from { opacity: 1; }
            to { opacity: 0; }
        }
        .toast-enter { animation: slideIn 0.3s ease-out forwards; }
        .toast-exit { animation: fadeOut 0.3s ease-out forwards; }

        /* Custom Animations */
        @keyframes marquee-text {
            0% { transform: translateX(0); }
            100% { transform: translateX(-50%); }
        }
        .animate-marquee-text {
            animation: marquee-text 25s linear infinite;
        }
        
        @keyframes float {
            0% { transform: translateY(0px); }
            50% { transform: translateY(-12px); }
            100% { transform: translateY(0px); }
        }
        .animate-float {
            animation: float 4s ease-in-out infinite;
        }

        /* Submit Button Shine */
        .btn-shine {
            position: relative;
            overflow: hidden;
        }
        .btn-shine::after {
            content: "";
            position: absolute;
            top: 0;
            left: -100%;
            width: 50%;
            height: 100%;
            background: linear-gradient(to right, transparent, rgba(255,255,255,0.4), transparent);
            transform: skewX(-20deg);
            animation: shine 3s infinite;
        }
        @keyframes shine {
            0% { left: -100%; }
            20% { left: 200%; }
            100% { left: 200%; }
        }
        
        /* Premium Logo Shine Overlay */
        .img-shine-wrapper {
            position: relative;
            display: inline-flex;
            overflow: hidden;
            border-radius: 4px;
        }
        .img-shine-wrapper::after {
            content: "";
            position: absolute;
            top: 0;
            left: -100%;
            width: 40%;
            height: 100%;
            background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.4), transparent);
            transform: skewX(-25deg);
            animation: shine 4s infinite ease-in-out;
            pointer-events: none;
            z-index: 10;
        }

        /* Avatar Circle Shine Overlay */
        .avatar-shine {
            position: relative;
            overflow: hidden;
            border-radius: 50%;
        }
        .avatar-shine::after {
            content: "";
            position: absolute;
            top: 0;
            left: -100%;
            width: 50%;
            height: 100%;
            background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.5), transparent);
            transform: skewX(-20deg);
            animation: shine 4s infinite ease-in-out;
            pointer-events: none;
            z-index: 10;
        }

        /* Success Animation Classes */
        @keyframes sendDoc {
            0% { transform: translateY(40px) scale(0.9); opacity: 0; }
            40% { transform: translateY(0) scale(1); opacity: 1; }
            60% { transform: translateY(-5px) scale(1.02); }
            100% { transform: translateY(0) scale(1); opacity: 1; }
        }
        .animate-send-doc {
            opacity: 0;
            animation: sendDoc 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) 0.1s forwards;
        }

        @keyframes fadeInTick {
            0% { opacity: 0; transform: scale(0.5); }
            100% { opacity: 1; transform: scale(1); }
        }
        .animate-fade-in-tick {
            opacity: 0;
            animation: fadeInTick 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) 0.8s forwards;
        }
        
        .checkmark-svg path {
            stroke-dasharray: 40;
            stroke-dashoffset: 40;
            animation: drawCheck 0.4s ease-out 1.1s forwards;
        }
        @keyframes drawCheck {
            to { stroke-dashoffset: 0; }
        }
        
        .animate-spin-slow {
            animation: spin 3s linear infinite;
        }

        /* Initial Loading Screen Animations */
        @keyframes initProgress {
            0% { width: 0%; opacity: 1; }
            80% { width: 100%; opacity: 1; }
            100% { width: 100%; opacity: 0; }
        }
        .animate-init-progress {
            width: 0%;
            animation: initProgress 4.5s cubic-bezier(0.65, 0, 0.35, 1) forwards;
        }
        @keyframes pulseGlow {
            0%, 100% { box-shadow: 0 0 30px rgba(79, 70, 229, 0.2); }
            50% { box-shadow: 0 0 60px rgba(79, 70, 229, 0.6); }
        }
        .animate-pulse-glow {
            animation: pulseGlow 3s ease-in-out infinite;
        }

        /* Badge Animation */
        @keyframes fadeUp {
            0% { opacity: 0; transform: translateY(15px); }
            100% { opacity: 1; transform: translateY(0); }
        }
        .animate-fade-up {
            opacity: 0;
            animation: fadeUp 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
        }

        /* --- New Premium Background Animations --- */
        @keyframes blob {
            0% { transform: translate(0px, 0px) scale(1); }
            33% { transform: translate(40px, -60px) scale(1.1); }
            66% { transform: translate(-30px, 30px) scale(0.9); }
            100% { transform: translate(0px, 0px) scale(1); }
        }
        .animate-blob {
            animation: blob 10s infinite;
        }
        .animation-delay-2000 { animation-delay: 2s; }
        .animation-delay-4000 { animation-delay: 4s; }

        @keyframes scanline {
            0% { transform: translateY(-100%); }
            100% { transform: translateY(50%); }
        }
        .animate-scanline { 
            animation: scanline 6s linear infinite; 
        }

        @keyframes slideUp {
            0% { background-position: 0 0; }
            100% { background-position: 0 -200px; }
        }
        .animate-slide-up {
            animation: slideUp 10s linear infinite;
        }
    
