
    /* Loader overlay */
    #loader-overlay {
      position: fixed;
      inset: 0;
      background: radial-gradient(circle at center, #fcf8f0, #fff3ce);
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 9999;
      flex-direction: column;
      transition: opacity 0.7s ease, visibility 0.7s ease;
    }
    #loader-overlay.hidden {
      opacity: 0;
      visibility: hidden;
    }

    /* Logo in center */
    .loader-logo {
      position: relative;
      width: 105px;
      height: 100px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      background: rgb(255, 255, 255);
      box-shadow: 0 0 20px rgba(212,175,55,0.6),
                  0 0 40px rgba(212,175,55,0.4);
      overflow: hidden;
    }
    .loader-logo img {
      width: 100px;
      height: 100px;
      object-fit: contain;
      border-radius: 50%;
      z-index: 2;
    }

    /* Rotating golden ring */
    .gold-ring {
      position: absolute;
      width: 120px;
      height: 115px;
      border: 2px solid transparent;
      border-top: 4px solid #d4af37;
      border-right:4px solid #d4af37;
      border-radius: 50%;
      animation: spin 2s linear infinite;
    }
    @keyframes spin {
      100% { transform: rotate(360deg); }
    }

    /* Particle shine */
    .sparkle {
      position: absolute;
      width: 6px;
      height: 6px;
      background: #ffd700;
      border-radius: 50%;
      box-shadow: 0 0 8px #ffd700;
      animation: sparkleAnim 1.5s infinite ease-in-out alternate;
    }
    .sparkle:nth-child(1) { top: -10px; left: 50%; }
    .sparkle:nth-child(2) { bottom: -10px; left: 30%; animation-delay: 0.3s; }
    .sparkle:nth-child(3) { right: -10px; top: 40%; animation-delay: 0.6s; }
    .sparkle:nth-child(4) { left: -10px; top: 60%; animation-delay: 0.9s; }

    @keyframes sparkleAnim {
      from { transform: scale(0.7); opacity: 0.5; }
      to { transform: scale(1.3); opacity: 1; }
    }

    /* Text shimmer */
    .shine-text {
      margin-top: 20px;
      font-size: 1.2rem;
      font-weight: bold;
      letter-spacing: 2px;
      background: linear-gradient(90deg, #8b7500, #ffd700, #8b7500);
      background-size: 200% auto;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      animation: shimmer 2s linear infinite;
    }
    @keyframes shimmer {
      to { background-position: 200% center; }
    }

    