
/* evidence viewer: one shared overlay for every photo on the page */
.zoomwrap{display:block;position:relative;padding:0;margin:0;border:0;background:none;cursor:zoom-in;width:100%;font:inherit;color:inherit;text-align:left}
.zoomwrap img{display:block}
.zoomwrap .zbadge{position:absolute;right:8px;bottom:8px;font-family:"Courier Prime","Courier New",monospace;font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#FBF9F3;background:rgba(20,20,18,.78);padding:3px 8px;line-height:1.4;pointer-events:none}
.zoomwrap:focus-visible{outline:3px solid #B3261E;outline-offset:3px}
@media (hover:hover){.zoomwrap .zbadge{opacity:0;transition:opacity .2s}.zoomwrap:hover .zbadge,.zoomwrap:focus-visible .zbadge{opacity:1}}
.lb{position:fixed;inset:0;z-index:60;background:rgba(14,14,12,.95);display:flex;flex-direction:column;gap:10px;color:#F2EEE3;font-family:"Courier Prime","Courier New",monospace;
  padding-top:calc(env(safe-area-inset-top,0px) + 10px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px);padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(12px,env(safe-area-inset-right,0px))}
.lb-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;letter-spacing:.06em;color:#A9A493}
.lb-btn{font-family:inherit;font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:#F2EEE3;background:transparent;border:2px solid #F2EEE3;border-radius:0;padding:6px 12px;cursor:pointer;line-height:1.2}
.lb-btn:disabled{opacity:.3;cursor:default}
.lb-btn:focus-visible{outline:2px solid #FFE89A;outline-offset:2px}
.lb-stage{flex:1;min-height:0;overflow:auto;display:flex;align-items:center;justify-content:center;touch-action:pan-x pan-y pinch-zoom}
.lb-stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;cursor:zoom-in;background:#fff;box-shadow:0 0 0 8px #fff;margin:8px}
.lb.zoomed .lb-stage{display:block;text-align:left}
.lb.zoomed .lb-stage img{max-width:none;max-height:none;cursor:zoom-out;margin:8px}
.lb-cap{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap}
.lb-text{display:flex;flex-direction:column;gap:3px;font-size:14px;line-height:1.45;max-width:60ch;min-width:0}
.lb-text b{color:#FFE89A;letter-spacing:.04em}
.lb-text .lb-credit{font-size:12px;color:#A9A493}
.lb-nav{display:flex;gap:8px}
@media (prefers-reduced-motion:no-preference){.lb{animation:lbIn .18s ease-out}@keyframes lbIn{from{opacity:0}to{opacity:1}}}
