/* Numbered mesh photographs: preserve complete wires and accepted white margins. */
body[data-base-material="mesh"] .inspiration-open,
body[data-base-material="mesh"] .inspiration-image { border-radius: 0; background: #fff; }
body[data-base-material="mesh"] .inspiration-image.media-frame { aspect-ratio: 1 / 1; overflow: hidden; }
body[data-base-material="mesh"] .inspiration-image.media-frame img { width: 100%; height: 100%; object-fit: contain; transform: none; }
body[data-base-material="mesh"] .inspiration-open:hover .inspiration-image img,
body[data-base-material="mesh"] .inspiration-open:focus-visible .inspiration-image img { transform: none; }
.inspiration-dialog[data-numbered-mesh] .inspiration-dialog-visual { background: #fff; border-radius: 0; }
/* Read numbered samples across each row, including incremental loading. */
body[data-base-material="mesh"] .inspiration-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; columns: auto; }
body[data-base-material="mesh"] .inspiration-card { display: block; min-width: 0; margin: 0; }
@media (max-width: 1024px) { body[data-base-material="mesh"] .inspiration-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; } }
@media (max-width: 600px) { body[data-base-material="mesh"] .inspiration-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } }

/* The grid track must shrink inside the bounded modal viewport on every screen. */
.inspiration-dialog[data-numbered-mesh] .inspiration-dialog-visual { grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 1fr); min-width: 0; min-height: 0; }
.inspiration-dialog[data-numbered-mesh] #inspiration-dialog-image { width: 100%; height: 100%; min-width: 0; min-height: 0; max-width: 100%; max-height: 100%; object-fit: contain; }

/* Match Gallery: an explicit button advances each batch; scrolling does not. */
body[data-base-material="mesh"] .inspiration-progress-mark { display: none; }
.inspiration-load-more { display: block; min-height: 48px; max-width: 100%; margin: 4px auto 32px; padding: 14px 26px; border: 1px solid var(--red); background: var(--red); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.inspiration-load-more[hidden] { display: none; }
.inspiration-load-more:hover { background: #8d171e; border-color: #8d171e; }
.inspiration-load-more:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
