/* Popup Studio: dialogs stay inside the native module; the browser's top layer handles stacking. */
.dps-instance { position:relative; }
.dps-trigger { appearance:none; border:0; border-radius:6px; color:#fff; cursor:pointer; padding:12px 22px; font:inherit; line-height:1.4; }
.dps-trigger:focus-visible,.dps-close:focus-visible { outline:3px solid #2563eb; outline-offset:4px; }
.dps-dialog { width:100vw; height:100vh; height:100dvh; max-width:none; max-height:none; margin:0; padding:16px; border:0; background:transparent; box-sizing:border-box; overflow:auto; }
.dps-dialog:not([open]) { display:none; }
.dps-dialog[open] { display:flex; align-items:center; justify-content:center; }
.dps-dialog::backdrop { background:var(--dps-overlay-color,rgba(15,23,42,.65)); }
.dps-panel { position:relative; isolation:isolate; width:640px; max-width:100%; max-height:calc(100vh - 32px); max-height:calc(100dvh - 32px); padding:32px; border:0; border-radius:12px; overflow:auto; box-sizing:border-box; color:#172033; background:transparent; box-shadow:0 24px 80px rgba(0,0,0,.22); flex-shrink:1; }
.dps-title { margin:0 32px 16px 0; padding:0; font-size:28px; line-height:1.2; }
.dps-body { position:relative; }
.dps-body>:last-child { margin-bottom:0; padding-bottom:0; }
.dps-body img { max-width:100%; height:auto; }
.dps-close { appearance:none; position:absolute; z-index:2; top:10px; right:10px; display:flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; border:0; border-radius:50%; color:#172033; background:#fff; font:28px/1 system-ui,sans-serif; cursor:pointer; }
html.dps-has-popup { overflow:hidden; }
.dps-preview { display:flex; justify-content:center; padding:24px; margin-top:16px; border-radius:12px; }
.dps-preview .dps-panel { max-height:none; }
.dps-builder-label,.dps-layout-placeholder { padding:12px; background:#f1f5f9; color:#475569; border-radius:6px; font:14px/1.5 system-ui,sans-serif; }
@media (max-width:600px) { .dps-panel { padding:24px; } .dps-title { font-size:24px; } }
@media print { .dps-dialog { display:none !important; } }
