/* Center partial rows without changing photo order or legacy page URLs. */
.large-preview-grid {--preview-columns:4;grid-template-columns:repeat(8,minmax(0,1fr));column-gap:8px;}
.large-preview-grid>tr>td,.large-preview-grid>tbody>tr>td {grid-column:span 2;}
@media(max-width:1000px){.large-preview-grid{--preview-columns:3;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:6px;}}
@media(max-width:600px){.large-preview-grid{--preview-columns:2;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:5px;}}
.large-preview-grid a:focus-visible{outline:3px solid currentColor;outline-offset:4px;}
.divers-viewer {position:fixed;inset:0;margin:0;border:0;padding:0;width:100%;max-width:100%;height:100vh;height:100dvh;max-height:100dvh;background:#101923;color:#f5f7fa;font:16px/1.4 Arial,sans-serif;box-sizing:border-box;}
.divers-viewer::backdrop {background:#101923;}
.divers-viewer .dv-layout {height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;box-sizing:border-box;padding: max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));gap:8px;}
.divers-viewer .dv-bar {display:flex;align-items:center;justify-content:space-between;gap:12px;}
.divers-viewer button,.divers-viewer .dv-original {box-sizing:border-box;min-width:48px;min-height:48px;border:1px solid #7d8b9b;border-radius:8px;background:#223142;color:#fff;font:inherit;cursor:pointer;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;}
.divers-viewer button:disabled {opacity:.35;cursor:default;}
.divers-viewer :focus-visible {outline:3px solid #b7d8ff;outline-offset:2px;}
.divers-viewer .dv-stage {min-width:0;min-height:0;position:relative;display:flex;align-items:center;justify-content:center;touch-action:pan-y pinch-zoom;}
.divers-viewer .dv-photo {display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;border:0;}
.divers-viewer .dv-caption {margin:0;text-align:center;font-size:14px;overflow-wrap:anywhere;max-height:4.2em;overflow:auto;}
.divers-viewer .dv-error {position:absolute;max-width:90%;background:#101923;padding:16px;}
@media(max-height:450px){.divers-viewer .dv-layout{gap:4px;}.divers-viewer .dv-caption{max-height:1.4em;}.divers-viewer button,.divers-viewer .dv-original{min-height:44px;padding:6px 10px;}}

/* Sixteen previews: four desktop columns, two mobile columns. */
@media(min-width:601px){.large-preview-grid{--preview-columns:4;grid-template-columns:repeat(8,minmax(0,1fr));}}
.divers-pager{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin:12px auto;font:14px/1.4 Arial,sans-serif;color:inherit;}
.divers-pager a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;box-sizing:border-box;padding:8px 12px;border:1px solid currentColor;border-radius:6px;color:inherit;text-decoration:none;}
.divers-pager a:focus-visible{outline:3px solid currentColor;outline-offset:3px;}

/* Reveal a preview only after its image has decoded. */
.large-preview-image.dv-thumb-pending{visibility:hidden;}
