.apm-modal-open { overflow: hidden; }
.apm-overlay[hidden] { display: none !important; }
.apm-overlay { position: fixed; inset: 0; z-index: 2147483000; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(0,0,0,.72); }
.apm-dialog { position: relative; width: min(92vw, 720px); max-height: 90vh; outline: none; }
.apm-link { display: block; border-radius: 10px; overflow: hidden; background: #fff; box-shadow: 0 18px 60px rgba(0,0,0,.35); }
.apm-image { display: block; width: 100%; height: auto; max-height: 86vh; object-fit: contain; }
.apm-close { position: absolute; top: -14px; right: -14px; z-index: 2; width: 40px; height: 40px; border: 0; border-radius: 999px; background: #fff; color: #111; font-size: 28px; line-height: 1; cursor: pointer; box-shadow: 0 4px 18px rgba(0,0,0,.25); }
.apm-close:focus-visible { outline: 3px solid currentColor; outline-offset: 2px; }
@media (max-width: 782px) { .apm-overlay { display: none !important; } }
@media (prefers-reduced-motion: no-preference) { .apm-dialog { animation: apm-in .16s ease-out; } @keyframes apm-in { from { opacity: 0; transform: translateY(8px) scale(.985); } to { opacity: 1; transform: none; } } }
