        /* Preloader styles */
      .app-preloader {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(255, 255, 255, 0.95);
        display: flex;
        align-items: center;
        justify-content: center;
        z-index: 9999;
        transition: opacity 0.5s ease, visibility 0.5s ease;
      }

      .dark-style .app-preloader {
        background-color: rgba(0, 0, 0, 0.95);
      }

      .app-preloader .spinner {
        width: 40px;
        height: 40px;
        position: relative;
      }

      .app-preloader .spinner .double-bounce1,
      .app-preloader .spinner .double-bounce2 {
        width: 100%;
        height: 100%;
        border-radius: 50%;
        background-color: #696cff;
        opacity: 0.6;
        position: absolute;
        top: 0;
        left: 0;
        animation: sk-bounce 2.0s infinite ease-in-out;
      }

      .app-preloader .spinner .double-bounce2 {
        animation-delay: -1.0s;
      }

      .app-preloader.loaded {
        opacity: 0;
        visibility: hidden;
      }

      @keyframes sk-bounce {
        0%, 100% { 
          transform: scale(0.0);
        } 50% { 
          transform: scale(1.0);
        }
      }

      /* Hide body content until preloader is dismissed */
      body > :not(.app-preloader) {
        opacity: 0;
        transition: opacity 0.3s ease;
      }
      
      body.loaded > :not(.app-preloader) {
        opacity: 1;
      }
   