/* lightbox.css: the viewer for lightbox.js (Loomwest "pictures zoom and cards respond", 2026-10-12). Colours come from
   --lwlb-* variables with neutral fallbacks, so any site can skin it; frames keep Rav's 6 to 10 px corners. */
.lwlb-zoom{cursor:zoom-in}
.lwlb-zoom:focus-visible{outline:3px solid var(--lwlb-focus,#2f6fed);outline-offset:3px}
.lwlb-card{cursor:zoom-in}
.lwlb-open,.lwlb-open body{overflow:hidden}
.lwlb{position:fixed;inset:0;z-index:2147483000;display:none;align-items:center;justify-content:center;flex-direction:column;
  padding:56px 64px 72px;background:var(--lwlb-bg,rgba(12,13,14,.94));color:var(--lwlb-fg,#f4f4f2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lwlb:not([hidden]){display:flex}
.lwlb-in{animation:lwlb-in .22s ease-out}
@keyframes lwlb-in{from{opacity:0}to{opacity:1}}
.lwlb-stage{position:relative;flex:1 1 auto;width:100%;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}
.lwlb-img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:var(--lwlb-radius,8px);
  box-shadow:0 30px 90px rgba(0,0,0,.5);cursor:zoom-in;transition:transform .18s ease-out;user-select:none;-webkit-user-drag:none}
.lwlb-zoomed .lwlb-img{cursor:grab;transition:none}
.lwlb-cap{margin:14px 0 0;max-width:72ch;text-align:center;font:400 14px/1.45 var(--lwlb-font,system-ui,sans-serif);color:var(--lwlb-muted,rgba(244,244,242,.78))}
.lwlb-cap:empty{display:none}
.lwlb-n{position:absolute;top:22px;left:24px;font:600 13px/1 var(--lwlb-font,system-ui,sans-serif);letter-spacing:.06em;color:var(--lwlb-muted,rgba(244,244,242,.78))}
.lwlb-b{position:absolute;display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:1px solid rgba(255,255,255,.35);
  border-radius:var(--lwlb-btn-radius,8px);background:rgba(255,255,255,.12);color:#fff;font:400 30px/1 system-ui,sans-serif;cursor:pointer;transition:background-color .15s}
.lwlb-b:hover{background:rgba(255,255,255,.24)}
.lwlb-b:focus-visible{outline:3px solid var(--lwlb-focus,#fff);outline-offset:2px}
.lwlb-b[hidden]{display:none}
.lwlb-x{top:14px;right:16px;font-size:28px}
.lwlb-prev{left:12px;top:50%;margin-top:-23px}
.lwlb-next{right:12px;top:50%;margin-top:-23px}
@media (max-width:640px){.lwlb{padding:60px 10px 70px}.lwlb-prev,.lwlb-next{top:auto;bottom:14px;margin-top:0}.lwlb-prev{left:calc(50% - 56px)}.lwlb-next{right:calc(50% - 56px)}}
@media (prefers-reduced-motion:reduce){.lwlb-in{animation:none}.lwlb-img,.lwlb-b{transition:none}}
