.dmz-category-grid,.dmz-album-grid,.dmz-photo-grid{display:grid;gap:20px;margin:20px 0}
.dmz-category-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
.dmz-album-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.dmz-photo-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.dmz-category-card,.dmz-album-card,.dmz-photo-card{background:#fff;border:1px solid #e6e6e6;border-radius:14px;overflow:hidden;box-shadow:0 4px 18px rgba(0,0,0,.06)}
.dmz-category-card{padding:22px}.dmz-category-card h3,.dmz-album-body h3{margin:0 0 8px}
.dmz-category-card p,.dmz-album-body p{color:#666}
.dmz-category-card>a,.dmz-album-body>a,.dmz-download{display:inline-block;padding:8px 12px;border-radius:8px;background:#111;color:#fff;text-decoration:none}
.dmz-album-card img,.dmz-photo-card> a img{width:100%;height:240px;object-fit:cover;display:block}
.dmz-album-body{padding:16px}.dmz-album-body small{color:#777}
.dmz-photo-info{padding:12px}.dmz-photo-info strong,.dmz-photo-info small{display:block}.dmz-photo-info small{color:#777;margin-top:4px}
.dmz-score{display:inline-block;margin-top:7px;font-size:12px;color:#147a3e;font-weight:600}
.dmz-actions,.dmz-share-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.dmz-actions a,.dmz-share-row a{font-size:12px;padding:6px 9px;border:1px solid #ddd;border-radius:7px;text-decoration:none}
.dmz-search-box{padding:24px;border:1px solid #ddd;border-radius:16px;background:#fafafa}
.dmz-search-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.dmz-search-form button{padding:11px 16px;border:0;border-radius:9px;background:#111;color:#fff;cursor:pointer}
.dmz-progress{margin:15px 0;padding:12px;background:#eee;border-radius:8px}
.dmz-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px;margin-top:20px}
.dmz-album-header{margin:25px 0}.dmz-album-header h2{margin:5px 0}
.dmz-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}
.dmz-admin-photo{border:1px solid #ddd;padding:8px}.dmz-admin-photo img{width:100%;height:150px;object-fit:cover;display:block;margin-bottom:8px}

.sds-copy-link{font-size:12px;padding:6px 9px;border:1px solid #ddd;border-radius:7px;background:#fff;cursor:pointer}

.sds-photo-table-wrap{margin-top:12px;overflow-x:auto}
.sds-photo-table th,.sds-photo-table td{vertical-align:middle}
.sds-photo-table .sds-drag-col{width:55px;text-align:center}
.sds-admin-thumb{width:72px;height:72px;object-fit:cover;border-radius:6px;display:block}
.sds-drag-handle{display:inline-block;font-size:24px;line-height:1;cursor:grab;color:#777;padding:6px;user-select:none}
.sds-sortable-photo{cursor:default}
.sds-sortable-photo.sds-dragging{opacity:.45}
.sds-sortable-photo.sds-drag-over td{border-top:3px solid #2271b1}
.sds-photo-order-status{min-height:24px;margin:8px 0;font-weight:600}
.sds-photo-order-status.sds-status-error{color:#b32d2e}
@media(max-width:782px){
  .sds-photo-table th:nth-child(5),.sds-photo-table td:nth-child(5),.sds-photo-table th:nth-child(6),.sds-photo-table td:nth-child(6){display:none}
}

.sds-sortable-placeholder{height:86px;background:#f0f6fc;border:2px dashed #2271b1;}
.sds-drag-handle{touch-action:none;}

.sds-download-all-similar{margin:12px 0;padding:9px 14px;border:0;border-radius:7px;cursor:pointer;font-weight:600}
.sds-face-status,.sds-face-build-status{margin-left:8px;color:#666}
.sds-download-all-similar{margin:0 0 16px;padding:10px 16px;border:0;border-radius:8px;background:#111;color:#fff;cursor:pointer;font-weight:600}
.sds-download-all-similar:disabled{opacity:.6;cursor:wait}
.sds-search-note{padding:10px 12px;background:#f6f7f7;border-left:3px solid #2271b1}

.sds-search-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.sds-open-camera{padding:11px 16px;border:1px solid #ccc;border-radius:9px;background:#fff;color:#111;cursor:pointer}
.sds-camera-panel{margin-top:16px;padding:16px;border:1px solid #ddd;border-radius:14px;background:#111;color:#fff}
.sds-camera-preview-wrap{width:100%;max-width:640px;margin:0 auto;overflow:hidden;border-radius:12px;background:#000;aspect-ratio:4/3}
.sds-camera-video{display:block;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.sds-camera-canvas{display:none}
.sds-camera-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.sds-camera-actions button{padding:10px 15px;border:0;border-radius:8px;cursor:pointer}
.sds-capture-selfie{background:#fff;color:#111;font-weight:600}
.sds-close-camera,.sds-retake-selfie{background:#333;color:#fff}
.sds-camera-status{margin-top:10px;text-align:center;font-size:14px}
.sds-selfie-preview{margin-top:16px;padding:14px;border:1px solid #ddd;border-radius:14px;background:#fff}
.sds-selfie-image{display:block;width:100%;max-width:420px;max-height:520px;object-fit:contain;margin:0 auto;border-radius:10px}
.sds-use-selfie{background:#111;color:#fff;font-weight:600}
@media(max-width:600px){
  .sds-search-controls{align-items:stretch}
  .sds-search-controls input[type=file],.sds-search-controls button{width:100%;box-sizing:border-box}
}
.sds-download-album{padding:8px 12px;border:1px solid #ddd;border-radius:7px;background:#111;color:#fff;cursor:pointer}
.sds-download-album:disabled{opacity:.6;cursor:wait}
body.sds-lightbox-open{overflow:hidden}
.sds-lightbox{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:30px;box-sizing:border-box}
.sds-lb-content{max-width:92vw;max-height:92vh;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.sds-lb-img{max-width:90vw;max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:6px}
.sds-lb-caption{color:#fff;font-size:14px}
.sds-lb-download{display:inline-block;background:#fff;color:#111;padding:8px 14px;border-radius:8px;text-decoration:none}
.sds-lb-close,.sds-lb-prev,.sds-lb-next{position:absolute;border:0;background:rgba(255,255,255,.14);color:#fff;border-radius:50%;cursor:pointer}
.sds-lb-close{top:18px;right:22px;width:44px;height:44px;font-size:30px}
.sds-lb-prev,.sds-lb-next{top:50%;transform:translateY(-50%);width:52px;height:52px;font-size:42px;line-height:42px}
.sds-lb-prev{left:18px}.sds-lb-next{right:18px}
@media(max-width:600px){.sds-lightbox{padding:12px}.sds-lb-prev,.sds-lb-next{width:42px;height:42px;font-size:32px}.sds-lb-prev{left:8px}.sds-lb-next{right:8px}.sds-lb-img{max-width:94vw;max-height:75vh}}
.sds-category-album-sort{max-width:700px;margin:10px 0 8px;padding:0;list-style:none}
.sds-category-album-sort li{padding:12px 14px;margin:5px 0;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:grab}
.sds-category-album-sort .sds-drag-handle{margin-right:10px}
.sds-album-order-status{font-weight:600;color:#666;min-height:20px}

/* Compact category banner: match the site's short, centered ALBUM title strip. */
.sds-category-hero{position:relative;width:100%;height:104px;min-height:104px;margin:0 0 20px;border-radius:0;overflow:hidden;background:#333;color:#fff;isolation:isolate}
.sds-category-hero-image{position:absolute!important;left:0!important;top:0!important;right:0!important;bottom:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;display:block!important;margin:0!important;transform:none!important;z-index:-2}
.sds-category-hero:not(.sds-all-categories-hero) .sds-category-hero-image{object-position:50% 50%!important}
.sds-category-hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.42);z-index:-1}
.sds-category-hero-content{position:relative;width:100%;height:104px;min-height:104px;padding:10px 52px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.sds-category-hero-no-image{background:#333}
.sds-category-hero-back{position:absolute;left:12px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;padding:6px 10px;border-radius:4px;background:rgba(0,0,0,.42);border:1px solid rgba(255,255,255,.28);color:#fff;text-decoration:none;font-size:13px;backdrop-filter:blur(3px);font-weight:500;transition:background .2s}
.sds-category-hero-back:hover,.sds-category-hero-back:focus{background:rgba(0,0,0,.7);color:#fff}
.sds-category-hero-title{width:100%;margin:0}
.sds-category-hero-title span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;opacity:.86;margin-bottom:3px}
.sds-category-hero-title h1{margin:0;color:#fff;font-size:clamp(20px,2.5vw,30px);line-height:1.2;text-shadow:0 1px 5px rgba(0,0,0,.3);font-weight:600}
/* Keep a 50px gap between the All Categories banner and category cards. */
.sds-all-categories-hero + .dmz-category-grid{margin-top:50px!important}
.dmz-album-header{margin:0 0 25px}
@media(max-width:600px){.sds-category-hero,.sds-category-hero-content{height:88px;min-height:88px}.sds-category-hero{margin-bottom:16px}.sds-category-hero-content{padding:8px 42px}.sds-category-hero-title h1{font-size:21px}.sds-category-hero-back{left:7px;padding:5px 7px;font-size:11px}}


.sds-category-qr-panel{margin:20px 0;padding:20px;background:#fff;border:1px solid #dcdcde;border-radius:8px;max-width:620px}
.sds-category-qr-preview{display:inline-flex;padding:12px;background:#fff;border:1px solid #ddd;border-radius:6px;margin:8px 0 12px}
.sds-category-qr-preview img{display:block;width:300px;height:300px;max-width:100%;object-fit:contain}
.sds-category-qr-mini img{display:block;background:#fff;border:1px solid #ddd;padding:3px;border-radius:4px}


/* SDS front-end display refinements */
.dmz-category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.dmz-category-card{padding:0;border:0!important;box-shadow:0 5px 22px rgba(0,0,0,.08);border-radius:14px;background:#fff}
.dmz-category-card .sds-category-image-link{display:block;line-height:0;overflow:hidden;border:0!important;outline:0;border-radius:14px 14px 0 0}
.dmz-category-card .sds-category-image{display:block;width:100%;aspect-ratio:1920/720;object-fit:cover;border:0!important;outline:0;border-radius:0!important;margin:0!important;transition:transform .25s ease}
.dmz-category-card .sds-category-image-link:hover .sds-category-image{transform:scale(1.025)}
.sds-category-card-content{text-align:center;padding:17px 12px 20px}
.sds-category-card-content h3{margin:0 0 6px;font-size:18px;line-height:1.35}
.sds-category-card-content p{margin:0 0 12px;color:#666}
.sds-category-card-content>a{display:inline-block;padding:8px 14px;border-radius:8px;background:#111;color:#fff;text-decoration:none}
.dmz-album-card.sds-album-list-card{border:0;box-shadow:0 5px 22px rgba(0,0,0,.08)}
.sds-album-cover-link{display:block;line-height:0}
.sds-album-list-body{text-align:center;padding:14px 12px 18px}
.sds-album-list-body small{display:block;margin-bottom:5px;color:#666}
.sds-album-list-body h3{margin:0!important}
.sds-album-list-body h3 a{color:inherit;text-decoration:none}
.sds-album-detail-header{margin:0 0 18px;text-align:center}
.sds-album-detail-header span{display:block;color:#666;margin-bottom:4px}
.dmz-photo-grid .dmz-photo-info{display:none!important}
.sds-lb-caption{display:none!important}
.sds-lb-content{gap:0}
.sds-lb-close,.sds-lb-prev,.sds-lb-next{display:flex;align-items:center;justify-content:center;padding:0;line-height:1;box-sizing:border-box;text-align:center}
.sds-lb-close{font-size:28px;line-height:1}
.sds-lb-prev,.sds-lb-next{font-size:38px;line-height:1}
@media (min-width:768px){.dmz-category-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:767px){.dmz-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sds-category-card-content{padding:13px 8px 15px}.sds-category-card-content h3{font-size:16px}}
@media (max-width:420px){.dmz-category-grid{grid-template-columns:1fr}}


/* SDS v3.2.5 category card refinements */
@media (min-width: 768px) {
  .dmz-category-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
.dmz-category-card { border: 0 !important; outline: 0 !important; }
.dmz-category-card .sds-category-image-link,
.dmz-category-card .sds-category-image-link:focus,
.dmz-category-card .sds-category-image-link:active {
  position: relative; display: block; line-height: 0; overflow: hidden;
  border: 0 !important; outline: 0 !important; box-shadow: none !important;
  background: #e9e9e9; border-radius: 14px 14px 0 0;
}
.dmz-category-card .sds-category-image {
  display: block; width: 100%; aspect-ratio: 1920 / 720; object-fit: cover;
  border: 0 !important; outline: 0 !important; box-shadow: none !important;
  border-radius: 0 !important; margin: 0 !important;
}
.sds-category-album-count {
  position: absolute; right: 12px; bottom: 12px; z-index: 2;
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  min-width: 38px; min-height: 32px; padding: 5px 10px; box-sizing: border-box;
  border: 1px solid rgba(255,255,255,.35); border-radius: 999px;
  background: rgba(0,0,0,.72); color: #fff; font-size: 14px; font-weight: 700;
  line-height: 1; box-shadow: none; backdrop-filter: blur(4px);
}
.sds-category-album-icon { display: inline-flex; align-items: center; justify-content: center; font-size: 17px; line-height: 1; }
.sds-category-no-image { min-height: 110px; background: linear-gradient(135deg,#444,#888) !important; }
.sds-category-card-content { text-align: center !important; }
.sds-category-card-content h3 { text-align: center !important; margin: 0 !important; }
.sds-category-card-content p,
.sds-category-card-content > a { display: none !important; }
@media (max-width: 767px) {
  .dmz-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 14px; }
}
@media (max-width: 420px) {
  .dmz-category-grid { grid-template-columns: 1fr !important; }
}

/* SDS v3.2.6: remove dark strip below category image and enforce desktop grid */
@media (min-width: 768px) {
  .dmz-category-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
.dmz-category-card {
  background: transparent !important;
  background-color: transparent !important;
}
.dmz-category-card .sds-category-card-content,
.dmz-category-card .sds-category-card-content h3 {
  background: transparent !important;
  background-color: transparent !important;
  color: inherit;
}
.dmz-category-card::before,
.dmz-category-card::after,
.dmz-category-card .sds-category-card-content::before,
.dmz-category-card .sds-category-card-content::after {
  content: none !important;
  display: none !important;
}
@media (min-width: 768px) {
  .dmz-category-grid > .dmz-category-card { min-width: 0; }
}


/* SDS v3.2.7: edge-to-edge category images and larger gallery icon */
.dmz-category-card {
  padding: 0 !important;
  margin: 0;
  overflow: hidden !important;
  box-sizing: border-box;
}
.dmz-category-card .sds-category-image-link {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-sizing: border-box !important;
  line-height: 0 !important;
}
.dmz-category-card .sds-category-image {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-sizing: border-box !important;
  object-fit: cover;
}
.sds-category-album-icon {
  display: inline-flex !important;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  align-items: center;
  justify-content: center;
  line-height: 1;
}
.sds-category-album-icon svg {
  display: block;
  width: 23px;
  height: 23px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 767px) {
  .sds-category-album-count { gap: 7px; padding: 6px 11px; }
  .sds-category-album-icon { width: 25px; height: 25px; flex-basis: 25px; }
  .sds-category-album-icon svg { width: 24px; height: 24px; }
}


/* SDS v3.2.8: show the album's category name as an overlay on its cover image */
.sds-album-cover-link {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  line-height: 0;
  isolation: isolate;
  border-radius: 14px 14px 0 0;
}
.sds-album-cover-link > img {
  display: block;
  width: 100%;
  height: 240px;
  object-fit: cover;
}
.sds-album-category-overlay {
  position: absolute;
  left: 12px;
  bottom: 12px;
  z-index: 2;
  display: inline-block;
  max-width: calc(100% - 24px);
  padding: 8px 13px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 8px;
  background: rgba(0,0,0,.64);
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
  box-sizing: border-box;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
@media (max-width: 767px) {
  .sds-album-category-overlay { left: 8px; bottom: 8px; max-width: calc(100% - 16px); padding: 6px 10px; font-size: 12px; }
}


/* SDS v3.2.9: compact album title, four-column desktop photos and album actions */
.dmz-album-header.sds-album-detail-header {
  margin: 8px 0 10px !important;
  padding: 0 !important;
}
.sds-album-detail-header h2 {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.25;
}
.sds-album-toolbar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
  margin: 10px 0 20px;
  padding: 0 !important;
}
.sds-album-toolbar .sds-download-album,
.sds-album-toolbar .sds-album-share {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 40px;
  box-sizing: border-box;
  border: 0;
  border-radius: 9px;
  padding: 9px 15px;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
  cursor: pointer;
  transition: filter .2s ease, transform .2s ease;
}
.sds-album-toolbar .sds-download-album { background: #171717; color: #fff; }
.sds-album-toolbar .sds-share-facebook { background: #1877f2; color: #fff; }
.sds-album-toolbar .sds-share-whatsapp { background: #25d366; color: #073b1b; }
.sds-album-toolbar .sds-copy-link { background: #f2f4f7; color: #20242a; border: 1px solid #d9dee5; }
.sds-album-toolbar .sds-download-album:hover,
.sds-album-toolbar .sds-album-share:hover { filter: brightness(.94); transform: translateY(-1px); }
.dmz-photo-grid.sds-album-photo-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin-top: 0 !important;
}
@media (min-width: 768px) {
  .dmz-photo-grid.sds-album-photo-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (max-width: 767px) {
  .dmz-photo-grid.sds-album-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; }
  .sds-album-toolbar { gap: 8px; }
  .sds-album-toolbar .sds-download-album,
  .sds-album-toolbar .sds-album-share { padding: 8px 10px; font-size: 13px; min-height: 38px; }
}
@media (max-width: 420px) {
  .dmz-photo-grid.sds-album-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important; }
}

/* Bulk upload progress indicator */
.sds-upload-progress{max-width:680px;margin:16px 0 22px;padding:16px;border:1px solid #dcdcde;border-radius:12px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.04)}
.sds-upload-progress-track{height:12px;overflow:hidden;border-radius:999px;background:#e8edf2;box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}
.sds-upload-progress-track span{display:block;width:0;height:100%;border-radius:999px;background:linear-gradient(90deg,#2271b1,#46b450,#72c8e8);background-size:200% 100%;transition:width .3s ease;animation:sdsUploadShimmer 1.5s linear infinite}
.sds-upload-progress-label{margin:10px 0 0;font-size:13px;font-weight:600;color:#1d2327}
.sds-face-upload-submit:disabled{opacity:.65;cursor:wait}
@keyframes sdsUploadShimmer{from{background-position:100% 0}to{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){.sds-upload-progress-track span{animation:none;transition:none}}


/* SDS v3.3.11: photo count badge on album cover, top-right on desktop, laptop and tablet */
.sds-album-photo-count {
  position: absolute;
  right: 12px;
  top: 12px;
  bottom: auto;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 999px;
  background: rgba(0,0,0,.68);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(0,0,0,.18);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  pointer-events: none;
}
.sds-album-photo-count svg {
  display: block;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 767px) {
  .sds-album-photo-count { right: 8px; top: 8px; bottom: auto; gap: 5px; padding: 6px 8px; font-size: 12px; }
  .sds-album-photo-count svg { width: 16px; height: 16px; flex-basis: 16px; }
}


/* SDS v3.3.6: compact gallery presentation for similar-photo search results */
.dmz-results.sds-search-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;align-items:start}
.dmz-results.sds-search-gallery .sds-search-note{grid-column:1/-1;margin:0 0 4px}
.dmz-results.sds-search-gallery .sds-download-all-similar{grid-column:1/-1;justify-self:start}
.dmz-results.sds-search-gallery .dmz-photo-card{border:0;border-radius:10px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.10);min-width:0}
.dmz-results.sds-search-gallery .dmz-photo-card>a.sds-lightbox-trigger{display:block;line-height:0;background:#f2f2f2;overflow:hidden}
.dmz-results.sds-search-gallery .dmz-photo-card>a.sds-lightbox-trigger img{display:block;width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;transition:transform .2s ease}
.dmz-results.sds-search-gallery .dmz-photo-card>a.sds-lightbox-trigger:hover img{transform:scale(1.035)}
.dmz-results.sds-search-gallery .dmz-photo-info{padding:8px 9px}
.dmz-results.sds-search-gallery .dmz-photo-info strong{font-size:12px;line-height:1.35;display:block;overflow-wrap:anywhere}
.dmz-results.sds-search-gallery .dmz-photo-info small{font-size:11px;line-height:1.3}
.dmz-results.sds-search-gallery .dmz-actions{gap:5px;margin-top:7px}
.dmz-results.sds-search-gallery .dmz-actions a{font-size:11px;padding:5px 7px}
@media(max-width:480px){.dmz-results.sds-search-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dmz-results.sds-search-gallery .dmz-photo-info{padding:7px}}


/* SDS v3.3.8: remove white padding/spacing around photos inside album pages */
.dmz-photo-grid.sds-album-photo-grid .dmz-photo-card {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
  align-self: start !important;
}
.dmz-photo-grid.sds-album-photo-grid .dmz-photo-card > a.sds-lightbox-trigger {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
}
.dmz-photo-grid.sds-album-photo-grid .dmz-photo-card > a.sds-lightbox-trigger img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  vertical-align: top !important;
}
.dmz-photo-grid.sds-album-photo-grid .dmz-photo-card .dmz-photo-info { display: none !important; }


/* SDS v3.3.9: compact album card title area to match category cards */
.dmz-album-grid > .dmz-album-card.sds-album-list-card {
  padding: 0 !important;
  margin-block: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: #fff;
}
.dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-cover-link {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
.dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-cover-link > img {
  display: block !important;
  width: 100% !important;
  height: 240px !important;
  object-fit: cover !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  vertical-align: top !important;
}
.dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-list-body {
  display: block !important;
  margin: 0 !important;
  padding: 0px 0px 0px !important;
  min-height: 0 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  box-sizing: border-box !important;
  background: #fff !important;
}
.dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-list-body > h3 {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.3 !important;
  font-size: 16px !important;
}
.dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-list-body > h3 > a {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: inherit !important;
  text-decoration: none;
}
@media (max-width: 767px) {
  .dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-cover-link > img { height: 180px !important; }
  .dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-list-body { padding: 0px 0px 0px !important; }
  .dmz-album-grid > .dmz-album-card.sds-album-list-card > .sds-album-list-body > h3 { font-size: 14px !important; }
}

/* v3.3.12: make category title navigation clear and consistent */
.dmz-category-card-content h3 .sds-category-title-link{color:inherit;text-decoration:none;display:inline-block;cursor:pointer}
.dmz-category-card-content h3 .sds-category-title-link:hover,.dmz-category-card-content h3 .sds-category-title-link:focus{text-decoration:none;opacity:.85}
