.small-grid-view { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; } .large-grid-view { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 24px; } .image-card { position: relative; overflow: hidden; border-radius: 8px; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1); transition: all 0.3s; } .image-card:hover { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); transform: translateY(-2px); } .image-checkbox { position: absolute; top: 8px; left: 8px; z-index: 10; } .image-wrapper { cursor: pointer; } .image-info { display: flex; align-items: center; justify-content: space-between; padding: 8px; } .image-title { flex: 1; margin-right: 8px; overflow: hidden; font-size: 12px; white-space: nowrap; text-overflow: ellipsis; } @media (max-width: 768px) { .small-grid-view { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: 12px; } .large-grid-view { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 16px; } } @media (max-width: 480px) { .small-grid-view { grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); gap: 8px; } .large-grid-view { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; } }