/* Flash Bildbetrachter */
html.iv-lock, html.iv-lock body{ overflow:hidden; }
.iv-zoomable{ cursor:zoom-in; }
.iv{ position:fixed; inset:0; z-index:1000; display:none; background:rgba(5,5,5,.96); color:#f6f2e8;
  grid-template-columns:64px 1fr 64px; grid-template-rows:auto 1fr; align-items:center;
  font-family:'Libre Franklin','Franklin Gothic Medium','Franklin Gothic',Arial,sans-serif; }
.iv.open{ display:grid; }
.iv-top{ grid-column:1 / -1; display:flex; justify-content:space-between; align-items:center; padding:12px 16px; gap:12px; }
.iv-count{ font-size:.8rem; letter-spacing:.2em; color:#bdb6a6; }
.iv-actions{ display:flex; gap:10px; }
.iv-btn{ display:inline-flex; align-items:center; gap:8px; height:44px; padding:0 14px; border-radius:999px; border:1px solid rgba(215,181,109,.5);
  background:rgba(0,0,0,.4); color:#f2dfae; font:inherit; font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; cursor:pointer; }
.iv-btn:hover, .iv-btn:focus-visible{ background:#d7b56d; color:#111; border-color:#d7b56d; }
.iv-btn svg{ width:20px; height:20px; }
.iv-close{ width:44px; padding:0; justify-content:center; }
.iv-stage{ margin:0; height:100%; min-height:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:0 0 18px; overflow:hidden; }
.iv-img{ max-width:100%; max-height:calc(100vh - 130px); max-height:calc(100dvh - 130px); object-fit:contain; display:block; box-shadow:0 30px 80px rgba(0,0,0,.7); user-select:none; -webkit-user-drag:none; }
.iv-cap{ margin-top:12px; font-size:.85rem; color:#c9c0ac; text-align:center; padding:0 12px; }
.iv-nav{ width:48px; height:48px; margin:auto; border-radius:50%; border:1px solid rgba(215,181,109,.45); background:rgba(0,0,0,.45); color:#f2dfae; cursor:pointer; display:grid; place-items:center; }
.iv-nav:hover, .iv-nav:focus-visible{ background:#d7b56d; color:#111; }
.iv-nav svg{ width:22px; height:22px; }
.iv.single .iv-nav{ visibility:hidden; }
.iv-sheet{ position:absolute; inset:0; background:rgba(0,0,0,.6); display:flex; align-items:flex-end; justify-content:center; }
.iv-sheet[hidden]{ display:none; }
.iv-sheet-box{ width:min(420px,100%); background:#141414; border:1px solid rgba(215,181,109,.35); border-radius:14px 14px 0 0; padding:18px; display:grid; gap:8px; }
.iv-sheet-box strong{ font-size:1rem; letter-spacing:.08em; text-transform:uppercase; color:#f2dfae; margin-bottom:4px; }
.iv-s{ display:block; text-align:left; padding:12px 14px; border-radius:8px; border:1px solid rgba(246,242,232,.14); background:#1b1b1b; color:#f6f2e8; text-decoration:none; font:inherit; font-size:.95rem; cursor:pointer; }
.iv-s:hover, .iv-s:focus-visible{ border-color:#d7b56d; color:#f2dfae; }
.iv-hint{ font-size:.78rem; color:#8f8f8f; margin:4px 0 0; line-height:1.45; }
.iv-sheet-close{ margin-top:4px; padding:10px; border:0; background:none; color:#c9c0ac; font:inherit; cursor:pointer; text-decoration:underline; }
@media (max-width:640px){
  .iv{ grid-template-columns:1fr; grid-template-rows:auto 1fr auto; }
  .iv-stage{ grid-row:2; padding:0 8px 8px; }
  .iv-prev, .iv-next{ grid-row:3; position:absolute; bottom:16px; }
  .iv-prev{ left:16px; } .iv-next{ right:16px; }
  .iv-img{ max-height:calc(100dvh - 170px); }
  .iv-btn span{ display:none; } .iv-btn.iv-share{ width:44px; padding:0; justify-content:center; }
}
