
        body { font-family: 'Inter', sans-serif; }
        
        /* Fade In Animation classes */
        .fade-in-section {
            opacity: 0;
            transform: translateY(30px);
            transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity, transform;
        }
        .fade-in-section.is-visible {
            opacity: 1;
            transform: none;
        }
        
        /* Custom Scrollbar for Light Theme */
        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: transparent; }
        ::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 8px; }
        ::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

        /* Modal Transitions */
        #foreign-modal { transition: opacity 0.4s ease, visibility 0.4s ease; }
        #foreign-modal .modal-content {
            transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), scale 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
        }

        /* Ticker Item Transitions */
        .ticker-content {
            transition: max-height 0.5s ease-in-out, opacity 0.5s ease-in-out, padding 0.5s ease-in-out;
            max-height: 0;
            opacity: 0;
            overflow: hidden;
        }
        .ticker-item.is-open .ticker-content {
            max-height: 350px; 
            opacity: 1;
        }
        
        .progress-bar-fill { transition: width 1s cubic-bezier(0.16, 1, 0.3, 1); }
        .chevron-icon { transition: transform 0.3s ease; }
        .ticker-item.is-open .chevron-icon { transform: rotate(180deg); }

        /* Big Card Transitions */
        .big-card-overlay { transition: opacity 0.4s ease; }
        .big-card-content {
            transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
            opacity: 0;
            transform: scale(0.95) translateY(10px);
        }
        .big-card.revealed .big-card-overlay {
            opacity: 0;
            pointer-events: none;
        }
        .big-card.revealed .big-card-content {
            opacity: 1;
            transform: scale(1) translateY(0);
        }
        
        /* Glassmorphism for light theme */
        .glass {
            background: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
            border: 1px solid rgba(255, 255, 255, 0.5);
        }
        
        /* Zoom In Card Transitions */
        .zoom-in-card {
            opacity: 0;
            transform: scale(0.8);
            transition: opacity 0.6s ease-out, transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
            will-change: opacity, transform;
        }
        .zoom-in-card.is-visible {
            opacity: 1;
            transform: scale(1);
        }

        /* Bounce In Numbers */
        .number-bounce {
            display: inline-block;
            opacity: 0;
            transform: scale(0.3);
            transition: opacity 0.4s ease, transform 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);
        }
        .zoom-in-card.is-visible .number-bounce {
            opacity: 1;
            transform: scale(1);
        }

        /* Mouse Click Animation */
        @keyframes cursorMoveClick {
            0% { transform: translate(35px, 35px); opacity: 0; }
            15% { transform: translate(35px, 35px); opacity: 1; }
            50% { transform: translate(0, 0) scale(1); opacity: 1; }
            65% { transform: translate(0, 0) scale(0.85); opacity: 1; } /* Simulate Click */
            80% { transform: translate(0, 0) scale(1); opacity: 1; } /* Release */
            100% { transform: translate(0, 0) scale(1); opacity: 0; }
        }
        .animate-cursor {
            animation: cursorMoveClick 2.5s infinite;
        }
        
        /* Hidden Section Support */
        .hidden-section {
            display: none;
            opacity: 0;
            transform: translateY(20px);
            transition: opacity 0.8s ease-out, transform 0.8s ease-out;
        }
        .hidden-section.revealed {
            opacity: 1;
            transform: translateY(0);
        }
    