img[data-zoom] { cursor: zoom-in; }
img[data-zoom]:focus-visible { outline: 3px solid var(--teal, #0f6f6a); outline-offset: 3px; }
.lb { position: fixed; inset: 0; z-index: 1000; background: rgba(8, 20, 19, .86); display: grid; place-items: center; padding: max(16px, env(safe-area-inset-top)) 16px max(16px, env(safe-area-inset-bottom)); }
.lb[hidden] { display: none; }
.lb-img { max-width: min(1200px, 100%); max-height: calc(100vh - 96px); border-radius: 12px; box-shadow: 0 20px 60px rgba(0,0,0,.45); background: #fff; }
.lb-close { position: absolute; top: max(12px, env(safe-area-inset-top)); right: 12px; width: 48px; height: 48px; border-radius: 50%; border: 0; background: #fff; color: #10201e; font-size: 28px; line-height: 1; cursor: pointer; }
.lb-close:focus-visible { outline: 3px solid var(--coral, #ff7f50); outline-offset: 2px; }
html.lb-open { overflow: hidden; }
@media (prefers-reduced-motion: no-preference) { .lb:not([hidden]) { animation: lbIn .16s ease-out; } @keyframes lbIn { from { opacity: 0 } } }

/* The assistant launcher sits above everything; hide it under an enlarged screenshot. */
html.lb-open .tga-root { visibility: hidden; }
