/* Общий просмотрщик макетов в кейсах: миниатюра-ссылка .cv-zoom с data-cv="группа", полный кадр в href.
   Цвета и шрифт задаёт кейс: --cv-acc, --cv-acc2, --cv-font. Скрипт: /js/case-viewer.js */
.cv-zoom{position:relative;display:block;color:inherit;text-decoration:none;cursor:zoom-in}
.cv-zoom:focus-visible{outline:3px solid var(--cv-acc,#C82655);outline-offset:3px}
.cv-zoom::after{content:"+";position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);color:var(--cv-acc,#C82655);font:700 22px/34px var(--cv-font,system-ui,sans-serif);text-align:center;box-shadow:0 4px 14px rgba(43,15,30,.3);transition:transform .2s,background .2s,color .2s;pointer-events:none}
.cv-zoom:hover::after,.cv-zoom:focus-visible::after{transform:scale(1.12);background:var(--cv-acc,#C82655);color:#fff}
.cv-tag{position:absolute;left:12px;bottom:12px;max-width:calc(100% - 24px);background:rgba(43,15,30,.82);color:#fff;font:600 12px/1.25 var(--cv-font,system-ui,sans-serif);font-style:normal;border-radius:14px;padding:6px 10px}
@media (hover:none){.cv-zoom::after{width:30px;height:30px;font-size:20px;line-height:30px}}
.cv-vw{position:fixed;inset:0;z-index:99990;display:flex;flex-direction:column;background:rgba(24,8,16,.95);color:#fff;font-family:var(--cv-font,system-ui,sans-serif)}
.cv-vw[hidden]{display:none}
.cv-vw-top{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:10px 16px}
.cv-vw-cap{flex:1 1 auto;min-width:0;font:700 15px/1.3 var(--cv-font,system-ui,sans-serif);overflow-wrap:anywhere}
.cv-vw-cnt{flex:0 0 auto;font-size:14px;color:#E8D3DC;white-space:nowrap}
.cv-vw-b{flex:0 0 auto;width:46px;height:46px;border-radius:50%;border:2px solid #fff;background:rgba(255,255,255,.14);color:#fff;font:400 30px/1 var(--cv-font,system-ui,sans-serif);padding:0 0 4px;cursor:pointer;display:grid;place-items:center;transition:background .15s,color .15s}
.cv-vw-b:hover,.cv-vw-b:focus-visible{background:#fff;color:var(--cv-acc,#C82655);outline:0}
.cv-vw-b:focus-visible{box-shadow:0 0 0 3px var(--cv-acc2,#F99508)}
.cv-vw-x{font-size:32px}
.cv-vw-sc{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch;padding:4px 84px 28px;outline:0}
.cv-vw-img{display:block;margin:0 auto;width:100%;height:auto;border-radius:14px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.cv-vw-img[hidden]{display:none}
.cv-vw.cv-fit .cv-vw-sc{display:flex;flex-direction:column}
.cv-vw.cv-fit .cv-vw-img{width:auto;max-width:100%;max-height:calc(100vh - 120px);max-height:calc(100dvh - 120px);margin:auto}
.cv-vw-ld{text-align:center;margin:40px 0;font-size:15px;color:#E8D3DC}
.cv-vw-ld[hidden]{display:none}
.cv-vw-prev,.cv-vw-next{position:absolute;top:50%;margin-top:-23px}
.cv-vw-prev{left:16px}.cv-vw-next{right:16px}
.cv-vw.cv-one .cv-vw-prev,.cv-vw.cv-one .cv-vw-next,.cv-vw.cv-one .cv-vw-cnt{display:none}
html.cv-vw-lock{overflow:hidden;overscroll-behavior:none}
@media (max-width:760px){.cv-vw.cv-fit .cv-vw-img{max-height:calc(100vh - 170px);max-height:calc(100dvh - 170px)}.cv-vw-top{padding:8px 12px}.cv-vw-sc{padding:2px 8px 84px}.cv-vw-img{border-radius:10px}.cv-vw-prev,.cv-vw-next{top:auto;bottom:16px;margin:0;background:rgba(43,15,30,.85)}.cv-vw-prev{left:16px}.cv-vw-next{right:16px}}
.cv-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
