/* One rotating close owner. The guest map has its own material below. */
html body.plaza-shell :is(dialog:not(.plaza-map-modal),.ny-seating-viewer){--plaza-dialog-close-bg:transparent;--plaza-dialog-close-shadow:none;--plaza-dialog-close-hover:var(--plaza-dialog-close-ink)}
html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close){box-sizing:border-box;position:var(--plaza-close-position,absolute);z-index:3;top:var(--plaza-close-top,16px);left:var(--plaza-close-left,16px);right:var(--plaza-close-right,auto);bottom:auto;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;min-height:48px;margin:0;padding:0;background:var(--plaza-dialog-close-bg,transparent)!important;color:var(--plaza-dialog-close-ink)!important;border:0!important;box-shadow:var(--plaza-dialog-close-shadow,none)!important;transform:none!important}
html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close,.wellness-photo-dialog .wellness-photo-close)>svg{width:var(--plaza-close-icon-size,20px);height:var(--plaza-close-icon-size,20px);transform:rotate(0deg)!important;transition:transform .55s cubic-bezier(.22,1,.36,1)}
html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close,.wellness-photo-dialog .wellness-photo-close):is(:hover,:focus-visible){color:var(--plaza-dialog-close-hover,var(--plaza-dialog-close-ink))!important}
@media(hover:hover) and (pointer:fine){html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close,.wellness-photo-dialog .wellness-photo-close):hover>svg{transform:rotate(90deg)!important}}
html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close,.wellness-photo-dialog .wellness-photo-close):focus-visible{outline:2px solid var(--plaza-dialog-close-ink)!important;outline-offset:3px}
html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close,.wellness-photo-dialog .wellness-photo-close):focus-visible>svg{transform:rotate(90deg)!important}
/* Ordinary dialogs: no tile, shadow, backdrop blur or hover fill. Gallery idle fading is retained. */
html body.plaza-shell :is(dialog:not(.plaza-map-modal),.ny-seating-viewer) :is(.plaza-policy-close,.plaza-dialog-close){background:transparent!important;box-shadow:none!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important;text-shadow:none!important;color:var(--plaza-dialog-close-ink)!important}
html body.plaza-shell :is(dialog:not(.plaza-map-modal),.ny-seating-viewer) :is(.plaza-policy-close,.plaza-dialog-close,.wellness-photo-close)::before,html body.plaza-shell :is(dialog:not(.plaza-map-modal),.ny-seating-viewer) :is(.plaza-policy-close,.plaza-dialog-close,.wellness-photo-close)::after{content:none!important}
html body.plaza-shell .plaza-sitemap-dialog{--plaza-close-top:20px;--plaza-close-left:auto;--plaza-close-right:20px;--plaza-close-icon-size:28px}
html body.plaza-shell .plaza-room-media-dialog{--plaza-close-position:static;--plaza-close-icon-size:28px}
html body.plaza-shell :is(.plaza-policy-modal,.plaza-camera-modal:not(.plaza-map-modal)){--plaza-close-position:static;--plaza-close-icon-size:24px}
html body.plaza-shell .wellness-photo-dialog{--plaza-close-icon-size:24px}
/* Isolated guest-map style: it is not the default for any other popup. */
html body.plaza-shell .plaza-map-modal{--plaza-dialog-close-bg:#fcfbf8;--plaza-dialog-close-shadow:0 8px 24px #0006,0 2px 6px #0004;--plaza-dialog-close-hover:var(--plaza-service-link-hover)}
html body.plaza-shell.plaza-network .plaza-map-modal{--plaza-close-icon-size:28px}
@media(max-width:699px),(max-width:960px) and (max-height:500px){html body.plaza-shell .plaza-sitemap-dialog{--plaza-close-top:12px;--plaza-close-right:12px}html body.plaza-shell .plaza-map-modal{--plaza-close-top:12px;--plaza-close-left:12px}}
@media(prefers-reduced-motion:reduce){html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close,.wellness-photo-dialog .wellness-photo-close)>svg{transition:none}html body.plaza-shell :is(.plaza-map-modal>.plaza-policy-close,.plaza-sitemap-dialog .plaza-policy-close,.plaza-room-media-dialog .plaza-dialog-close,.plaza-footer-sheet>.plaza-policy-close,.psk-ny .ny-seating-viewer .plaza-dialog-close,.plaza-policy-modal .plaza-policy-close,.plaza-camera-modal .plaza-policy-close,.wellness-photo-dialog .wellness-photo-close):is(:hover,:focus-visible)>svg{transform:none!important}}

/* Standalone frame players use the same transparent 48px / 28px rotating close. */
#viewer.plaza-frame-viewer>#expand.plaza-frame-close{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;min-height:48px;margin:0;padding:0;border:0;color:var(--plaza-dialog-close-ink,#b2945f);background:transparent;box-shadow:none;cursor:pointer;transition:color .25s}
#viewer.plaza-frame-viewer>#expand.plaza-frame-close>svg{width:28px;height:28px;transform:rotate(0deg);transition:transform .55s cubic-bezier(.22,1,.36,1)}
#viewer.plaza-frame-viewer>#expand.plaza-frame-close:is(:hover,:focus-visible){color:var(--plaza-dialog-close-hover,#94733f)}
#viewer.plaza-frame-viewer>#expand.plaza-frame-close:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(hover:hover) and (pointer:fine){#viewer.plaza-frame-viewer>#expand.plaza-frame-close:hover>svg{transform:rotate(90deg)}}
#viewer.plaza-frame-viewer>#expand.plaza-frame-close:focus-visible>svg{transform:rotate(90deg)}
@media(prefers-reduced-motion:reduce){#viewer.plaza-frame-viewer>#expand.plaza-frame-close>svg{transition:none}#viewer.plaza-frame-viewer>#expand.plaza-frame-close:is(:hover,:focus-visible)>svg{transform:none}}
