.mz-photo-zoomable{position:relative;cursor:zoom-in;overflow:hidden}.mz-photo-zoomable::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.28));opacity:0;transition:.2s ease}.mz-photo-zoomable:hover::after,.mz-photo-zoomable:focus-visible::after{opacity:1}.mz-photo-label{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);z-index:2;background:rgba(255,255,255,.92);color:#0F6E56;border:1px solid rgba(15,110,86,.12);box-shadow:0 10px 28px rgba(0,0,0,.14);border-radius:999px;padding:6px 11px;font-size:11px;font-weight:900;opacity:0;pointer-events:none;transition:.2s ease;white-space:nowrap}.mz-photo-zoomable:hover .mz-photo-label,.mz-photo-zoomable:focus-visible .mz-photo-label{opacity:1}.mz-modal-open{overflow:hidden}.mz-photo-modal{position:fixed;inset:0;z-index:99999;background:rgba(4,24,19,.72);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:22px}.mz-photo-box{width:min(920px,100%);max-height:92vh;background:#fff;border-radius:28px;border:1px solid rgba(255,255,255,.16);box-shadow:0 35px 120px rgba(0,0,0,.38);overflow:hidden;display:flex;flex-direction:column}.mz-photo-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #edf2ef}.mz-photo-head strong{display:block;color:#10221d;font-size:18px;font-weight:950}.mz-photo-head span{display:block;color:#718179;font-size:13px;margin-top:2px}.mz-photo-close{border:0;background:#f1f5f3;color:#15231f;width:42px;height:42px;border-radius:15px;font-size:26px;line-height:1;cursor:pointer;font-weight:700}.mz-photo-close:hover{background:#e8f7f2;color:#0F6E56}.mz-photo-stage{background:linear-gradient(135deg,#f8fbf9,#eef8f4);display:flex;align-items:center;justify-content:center;min-height:260px;padding:18px}.mz-photo-stage img{display:block;max-width:100%;max-height:72vh;width:auto;height:auto;object-fit:contain;border-radius:18px;box-shadow:0 18px 60px rgba(0,0,0,.18);background:#fff}@media(max-width:760px){.mz-photo-modal{padding:12px}.mz-photo-box{border-radius:22px;max-height:94vh}.mz-photo-head{padding:14px 15px}.mz-photo-head strong{font-size:16px}.mz-photo-stage{padding:12px;min-height:220px}.mz-photo-stage img{max-height:68vh;border-radius:14px}.mz-photo-label{opacity:1;font-size:10px;padding:5px 9px;bottom:7px}}