.lka-cart-image-trigger { display: inline-block; cursor: zoom-in; }
.lka-cart-image-trigger:focus-visible, [data-cart-image]:focus-visible { outline: 3px solid #0875ee; outline-offset: 3px; }
dialog.lka-image-viewer { position: fixed; inset: 0; margin: auto; padding: 0; width: min(900px, calc(100vw - 24px)); max-width: none; max-height: calc(100dvh - 24px); border: 0; border-radius: 16px; color: #172b3a; background: #fff; box-shadow: 0 24px 80px #0005; }
.lka-image-viewer::backdrop { background: #0b1526bf; }
.lka-image-viewer header { display: flex; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid #e6eaf0; }
.lka-image-viewer h2 { flex: 1; min-width: 0; margin: 0; font-size: 16px; line-height: 1.4; overflow-wrap: anywhere; }
.lka-image-viewer button { cursor: pointer; font: inherit; }
.lka-image-viewer [data-image-close] { flex: none; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: #f1f4f7; color: #172b3a; font-size: 28px; }
.lka-image-stage { height: min(65dvh, 650px); overflow: auto; background: #f5f7fa; cursor: zoom-in; overscroll-behavior: contain; }
.lka-image-stage > img { display: block; width: 100%; height: 100%; object-fit: contain; max-width: none; }
.lka-image-stage > .lka-image-artwork { width: 100%; height: 100%; min-height: 0; aspect-ratio: auto; border-radius: 0; }
.lka-image-viewer.is-zoomed .lka-image-stage { cursor: zoom-out; }
.lka-image-viewer.is-zoomed .lka-image-stage > img,
.lka-image-viewer.is-zoomed .lka-image-stage > .lka-image-artwork { width: 200%; height: 200%; }
.lka-image-viewer footer { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; padding: 12px 16px; font-size: 12px; color: #596b7d; }
.lka-image-viewer [data-image-zoom] { border: 1px solid #d5dde6; border-radius: 8px; padding: 9px 14px; background: white; color: #172b3a; font-size: 14px; font-weight: 600; }
