.pvx{position:fixed;inset:0;width:100dvw;min-width:0;height:100dvh;z-index:2147483000;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;overscroll-behavior:none;background:radial-gradient(circle at 50% 42%,#12324d 0,#081d30 44%,#03101d 100%);color:#f7fafc;font-family:var(--font-sans,"Golos Text","Manrope",Arial,sans-serif);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility 0s linear .2s}
.pvx.is-open{opacity:1;visibility:visible;transition-delay:0s}
.pvx[hidden]{display:none}
.pvx__top{position:relative;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:max(12px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left));background:linear-gradient(180deg,rgba(3,16,29,.96),rgba(3,16,29,.66),transparent)}
.pvx__heading{min-width:0;padding-left:4px}.pvx__title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-serif,"Cormorant Garamond",Georgia,serif);font-size:clamp(1.05rem,1.5vw,1.42rem);font-weight:600;letter-spacing:.015em}.pvx__meta{display:flex;gap:12px;margin-top:3px;color:rgba(242,237,226,.66);font-size:.69rem;letter-spacing:.11em;text-transform:uppercase}.pvx__zoom-readout{color:#e7b36a}
.pvx__viewport{position:relative;min-width:0;min-height:0;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:default}
.pvx__viewport.is-pannable{cursor:grab}.pvx__viewport.is-panning{cursor:grabbing}
.pvx__media{position:absolute;left:50%;top:50%;width:1px;height:1px;transform-origin:center center;will-change:transform;backface-visibility:hidden}
.pvx__media img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;pointer-events:none;background:#fff;image-rendering:auto}
.pvx__pin-layer{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.pvx__loading{position:absolute;inset:50% auto auto 50%;z-index:3;transform:translate(-50%,-50%);display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid rgba(207,122,74,.3);border-radius:999px;background:rgba(3,16,29,.88);color:#f2ede2;font-size:.76rem;letter-spacing:.08em}
.pvx__loading::before{content:"";width:15px;height:15px;border:2px solid rgba(231,179,106,.28);border-top-color:#e7b36a;border-radius:50%;animation:pvx-spin .7s linear infinite}
.pvx__loading[hidden]{display:none}
@keyframes pvx-spin{to{transform:rotate(360deg)}}
/* opaque backgrounds: the buttons float over the plan image, so translucent
   fills композитват с бялата схема и „избелват" бутона — фонът трябва да е плътен */
.pvx__button{appearance:none;border:1px solid rgba(231,179,106,.28);border-radius:999px;background:#0E2438;color:#f7fafc;min-width:44px;height:44px;padding:0 14px;font:600 .72rem/1 var(--font-sans,"Golos Text",Arial,sans-serif);letter-spacing:.06em;cursor:pointer;transition:background .18s,border-color .18s,color .18s,transform .18s;white-space:nowrap}
@media(hover:hover){.pvx__button:hover:not([disabled]){background:linear-gradient(0deg,rgba(207,122,74,.26),rgba(207,122,74,.26)) #0E2438;border-color:rgba(231,179,106,.7)}}
.pvx__button:active:not([disabled]){transform:scale(.96)}.pvx__button:focus-visible{outline:3px solid #ef8a4d;outline-offset:3px}
.pvx__button[disabled]{background:#081A2B;border-color:rgba(231,179,106,.14);color:rgba(247,250,252,.38);cursor:default}
.pvx__close{font-size:1.35rem;padding:0;width:46px}
.pvx__nav{position:absolute;z-index:7;top:50%;transform:translateY(-50%);width:50px;padding:0;font-size:1.55rem;background:#081A2B}.pvx__prev{left:max(12px,env(safe-area-inset-left))}.pvx__next{right:max(12px,env(safe-area-inset-right))}
.pvx__bar{position:relative;z-index:5;display:flex;min-width:0;align-items:center;justify-content:center;gap:7px;min-height:68px;padding:8px max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:linear-gradient(0deg,rgba(3,16,29,.98),rgba(3,16,29,.78),transparent)}
.pvx__bar .pvx__button{height:42px}.pvx__sep{width:1px;height:24px;margin:0 3px;background:rgba(242,237,226,.16)}
.pvx__panel{position:absolute;z-index:6;right:max(16px,env(safe-area-inset-right));top:84px;width:min(360px,calc(100vw - 32px));max-height:calc(100dvh - 170px);overflow:auto;padding:18px 20px;border:1px solid rgba(207,122,74,.32);border-radius:4px;background:rgba(7,28,46,.94);box-shadow:0 28px 70px rgba(0,0,0,.36);-webkit-overflow-scrolling:touch}.pvx__panel:empty{display:none}
/* reserve the panel's column on desktop so unit pins are never buried under it at fit zoom */
@media(min-width:721px){.pvx.has-panel .pvx__viewport{margin-right:384px}}
.pvx__live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html.pvx-lock,html.pvx-lock body{overflow:hidden!important;overscroll-behavior:none!important}.pvx-lock body{touch-action:none}
@media(max-width:720px){.pvx__top{padding-bottom:7px}.pvx__title{font-size:1rem}.pvx__meta{font-size:.62rem;gap:8px}.pvx__nav{top:auto;bottom:8px;width:44px;height:44px}.pvx__prev{left:max(10px,env(safe-area-inset-left))}.pvx__next{right:max(10px,env(safe-area-inset-right))}.pvx__bar{justify-content:center;gap:5px;min-height:62px;padding-left:58px;padding-right:58px}.pvx__bar .pvx__button{min-width:42px;height:44px;padding:0 10px;font-size:.66rem}.pvx__fullscreen{display:none}.pvx__sep{display:none}.pvx__panel{top:auto;bottom:74px;max-height:36dvh}.pvx.has-panel .pvx__viewport{margin-bottom:min(36dvh,260px)}}
@media(max-width:430px){.pvx__fit,.pvx__original{font-size:0!important}.pvx__fit::after{content:"Побери";font-size:.66rem}.pvx__original::after{content:"100%";font-size:.66rem}.pvx__bar{gap:4px}.pvx__bar .pvx__button{padding:0 8px}}
@media(max-height:520px) and (orientation:landscape){.pvx__top{padding-top:max(6px,env(safe-area-inset-top));padding-bottom:4px}.pvx__meta{display:none}.pvx__bar{min-height:52px;padding-top:4px;padding-bottom:max(5px,env(safe-area-inset-bottom))}.pvx__bar .pvx__button{height:40px}.pvx__nav{bottom:4px}.pvx__panel{display:none}}
@media(prefers-reduced-motion:reduce){.pvx,.pvx__button{transition:none}.pvx__loading::before{animation-duration:1.4s}}
