/* Scoped to K680; retain complete images and their embedded labels. */
.k680-page .gallery { gap: 24px; }
.k680-page .gallery figure { min-width: 0; animation: none; }
.k680-page .gallery-image { position: relative; display: block; aspect-ratio: 16 / 9; background: #070606; }
.k680-page .gallery img { width: 100%; height: 100%; min-height: 0; aspect-ratio: auto; object-fit: contain; }
.k680-page .gallery figcaption { display: flex; justify-content: space-between; gap: 12px; padding: 16px 18px; color: var(--soft); font-size: 14px; line-height: 1.5; }
.k680-page .gallery figcaption span { color: var(--gold); }
.k680-page .gallery-image:focus-visible { outline-offset: -3px; }
@media(max-width:760px) { .k680-page .gallery { gap: 20px; } .k680-page .gallery figcaption { font-size: 13px; padding: 13px 14px; } }
/* Native modal: dark canvas, persistent navigation, keyboard focus contained. */
.k680-lightbox { position: fixed; inset: 0; width: 100%; max-width: none; height: 100dvh; max-height: none; margin: 0; border: 0; padding: 20px clamp(16px,3vw,48px); background: #070606; color: #f6ecdf; overflow: hidden; }
.k680-lightbox::backdrop { background: #070606; }
.k680-lightbox[open] { display: grid; grid-template-rows: auto minmax(0,1fr) auto; gap: 16px; }
.lightbox-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.k680-lightbox button { min-height: 48px; border: 1px solid #c6a66b80; border-radius: 999px; padding: 10px 20px; background: #15120e; color: #f6ecdf; font: inherit; cursor: pointer; }
.k680-lightbox button:hover { background: #c6a66b; color: #070606; }
.k680-lightbox button:focus-visible { outline: 2px solid #c6a66b; outline-offset: 4px; }
.lightbox-counter { color: #c6a66b; font-size: 13px; letter-spacing: .15em; white-space: nowrap; }
.lightbox-stage { display: grid; grid-template-columns: 52px minmax(0,1fr) 52px; align-items: center; gap: clamp(8px,2vw,28px); min-height: 0; }
.lightbox-stage .lightbox-image { width: 100%; height: 100%; min-height: 0; object-fit: contain; }
.lightbox-stage button { padding: 0; width: 52px; height: 52px; font-size: 26px; }
.lightbox-footer { text-align: center; }
#lightbox-caption { margin: 0 0 8px; font-size: clamp(16px,2vw,22px); }
.lightbox-note { display: block; color: #a99983; font-size: 10px; line-height: 1.4; }
@media(max-width:760px) {
 .k680-lightbox { padding: 14px 12px max(16px,env(safe-area-inset-bottom)); gap: 12px; }
 .lightbox-stage { grid-template-columns: 1fr 1fr; grid-template-rows: minmax(0,1fr) 48px; gap: 12px; }
 .lightbox-stage .lightbox-image { grid-area: 1 / 1 / 2 / 3; }
 .lightbox-stage button { width: 48px; height: 48px; min-height: 48px; justify-self: center; }
 .lightbox-stage [data-prev] { grid-area: 2 / 1; } .lightbox-stage [data-next] { grid-area: 2 / 2; }
}
