/* Base commune : visionneuse, onglets, formulaire, accessibilité. Les couleurs viennent des variables de chaque version. */
.lb{position:fixed;inset:0;z-index:200;background:rgba(5,5,7,.94);display:grid;place-items:center;padding:56px 12px 12px}
.lb[hidden]{display:none}
.lb figure{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;gap:10px}
.lb img{max-width:100%;max-height:calc(100dvh - 120px);object-fit:contain}
.lb figcaption{color:#e8e4da;font:500 14px/1.3 system-ui,sans-serif;opacity:.8;text-align:center}
.lb button{position:absolute;background:rgba(255,255,255,.1);color:#fff;border:0;width:48px;height:48px;border-radius:50%;font-size:30px;line-height:1;cursor:pointer;display:grid;place-items:center}
.lb button:hover{background:rgba(255,255,255,.22)}
.lb-x{top:max(10px,env(safe-area-inset-top));right:12px}.lb-p{left:10px;top:50%}.lb-n{right:10px;top:50%}
.lb-open{overflow:hidden}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;background:#fff;color:#000;padding:10px 14px;z-index:300}.skip:focus{top:10px}
.js .rv{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.23,1,.32,1),transform .8s cubic-bezier(.23,1,.32,1)}.js .rv.in{opacity:1;transform:none}
[role=tablist]{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:4px}
[role=tablist]::-webkit-scrollbar{display:none}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;scroll-behavior:auto!important}}
@media (hover:none){.lb-p,.lb-n{top:auto;bottom:18px}}
