.wpcm-di-gallery { --gap: 14px; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
.wpcm-di-toolbar { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.wpcm-di-zip-btn { background:#1a202c; color:#fff; border:0; padding:10px 14px; border-radius:6px; cursor:pointer; }
.wpcm-di-zip-btn:hover { opacity:.92; }
.wpcm-di-helper { color:#555; font-size:14px; }

.wpcm-di-grid { display:grid; gap: var(--gap); }
.wpcm-di-grid.cols-2 { grid-template-columns: repeat(2, 1fr); }
.wpcm-di-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
.wpcm-di-grid.cols-4 { grid-template-columns: repeat(4, 1fr); }
.wpcm-di-grid.cols-5 { grid-template-columns: repeat(5, 1fr); }
.wpcm-di-grid.cols-6 { grid-template-columns: repeat(6, 1fr); }
@media (max-width: 980px){ .wpcm-di-grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 600px){ .wpcm-di-grid { grid-template-columns: 1fr !important; } }

.wpcm-di-item { background:#fff; border:1px solid #e5e7eb; border-radius:10px; overflow:hidden; box-shadow: 0 1px 2px rgba(0,0,0,.04); display:flex; flex-direction:column; }
.wpcm-di-thumb-wrap { aspect-ratio: 4 / 3; background:#f7f7f7; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.wpcm-di-thumb { width:100%; height:100%; object-fit:cover; display:block; }

.wpcm-di-caption { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px; border-top:1px solid #f0f0f0; }
.wpcm-di-btn { text-decoration:none; display:inline-block; padding:8px 12px; border-radius:6px; background:#2563eb; color:#fff; font-weight:600; }
.wpcm-di-btn:hover { opacity:.95; }

.wpcm-di-select { display:flex; align-items:center; gap:8px; font-size:14px; color:#333; }
.wpcm-di-checkbox { transform: scale(1.2); }
.wpcm-di-msg { padding:12px; background:#fffbe6; border:1px solid #ffe58f; border-radius:8px; color:#614700; }
