.catalog-photo-enlarge{display:block;position:relative;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in;color:inherit}
.catalog-photo-enlarge:focus-visible{outline:3px solid #17649b;outline-offset:3px}
.patio-photo-dialog{box-sizing:border-box;width:min(96vw,1200px);max-width:96vw;max-height:96vh;max-height:96dvh;margin:auto;padding:16px;border:1px solid #d5e0e7;border-radius:12px;background:#fff;color:#173a54;box-shadow:0 12px 60px #0005}
.patio-photo-dialog:not([open]){display:none}
.patio-photo-dialog::backdrop{background:#102538d9}
.photo-viewer-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-family:var(--font-brand,Arial,sans-serif);font-size:15px;font-weight:600}
.photo-viewer-toolbar button{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:10px 16px;border:1px solid #9bb0bf;border-radius:7px;background:#fff;color:#173a54;font:inherit;cursor:pointer}
.photo-viewer-toolbar button:focus-visible{outline:3px solid #17649b;outline-offset:3px}
.patio-photo-dialog>img{display:block;width:100%;height:auto;max-height:calc(88vh - 100px);max-height:calc(88dvh - 100px);object-fit:contain;transform:none!important;max-width:100%;-webkit-touch-callout:none}
.photo-viewer-status{font-size:14px;line-height:1.4;margin:8px 0 0}.photo-viewer-status:empty{display:none}
.photo-viewer-fallback[open]{position:fixed;inset:0;z-index:2147483647;display:block;box-shadow:0 0 0 100vmax #102538f2}
@media(max-width:600px){.patio-photo-dialog{padding:12px;width:96vw}.photo-viewer-toolbar{font-size:13px}.photo-viewer-toolbar button{padding:10px 12px}}
