@media (max-width: 760px) {
  .vs-product-access-meta {
      display: none;
    }
  
  .vs-product-access-action {
      display: grid;
      grid-template-columns: auto minmax(150px, 1fr);
      gap: 8px;
      align-items: center;
    }
  
  .vs-product-access-action strong {
      font-size: 18px;
      white-space: nowrap;
    }
  
  .vs-product-access-action .vs-button {
      min-height: 42px;
      padding: 10px;
      font-size: 13px;
    }
  
  .vs-library-row {
      margin-left: calc(var(--vs-page-pad) * -1);
      margin-right: calc(var(--vs-page-pad) * -1);
      padding-bottom: 18px;
    }
  
  .vs-library-row-head {
      padding-left: var(--vs-page-pad);
      padding-right: var(--vs-page-pad);
    }
  
  .vs-library-rail {
      grid-auto-columns: minmax(232px, 72vw);
      gap: 12px;
      scroll-padding-inline: var(--vs-page-pad);
      padding-left: var(--vs-page-pad);
      padding-right: var(--vs-page-pad);
      overflow-x: auto;
    }
  
  .vs-library-cover {
      aspect-ratio: 10 / 12;
    }
  
  .vs-library-rail::-webkit-scrollbar {
      display: none;
    }
}

@media (max-width: 980px) {
  .vs-login-screen,
  .vs-login-card-grid {
    grid-template-columns: 1fr;
  }

  .vs-login-photo,
  .vs-login-photo img {
    min-height: 360px;
  }
}

@media (max-width: 520px) {
  .vs-members-action-grid {
    grid-template-columns: 1fr;
  }

  .vs-login-photo,
  .vs-login-photo img {
    min-height: 300px;
  }

  .vs-login-photo-card {
    left: 12px;
    right: 12px;
    bottom: 12px;
    padding: 14px;
  }
}
