   #loader {
      position: fixed;
      inset: 0;
      background: white;
      display: flex;
      justify-content: center;
      align-items: center;
      opacity: 1;
      pointer-events: all;
      transition: opacity 0.3s ease;
      z-index: 9999;
    }

    .ebook-card {
      border-radius: 12px;
      overflow: hidden;
      transition: transform 0.2s ease, box-shadow 0.2s ease;
    }
    .ebook-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 6px 20px rgba(0,0,0,0.08);
    }
    .ebook-card img {
      height: 200px;
      object-fit: cover;
    }
    .card-description {
      max-height: 3.5rem;
      overflow: hidden;
      position: relative;
    }
    .card-description::after {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      height: 1.5rem;
      width: 100%;
      background: linear-gradient(to bottom, transparent, white);
    }