/* Boutique Pro DZ – popups */
.bpdz-popup{position:fixed;inset:0;z-index:99995;display:flex;align-items:center;justify-content:center;padding:16px;pointer-events:none}
.bpdz-popup[hidden]{display:none !important}
.bpdz-popup-overlay{position:absolute;inset:0;background:var(--bpdz-popup-overlay,rgba(15,23,42,.62));opacity:0;pointer-events:auto;transition:opacity .3s ease}
.bpdz-popup.is-open .bpdz-popup-overlay{opacity:1}
.bpdz-popup-no-overlay .bpdz-popup-overlay{display:none}
.bpdz-popup-dialog{position:relative;display:flex;flex-direction:column;max-width:100%;max-height:100%;pointer-events:auto;outline:none;opacity:0;transition:opacity .3s ease,transform .35s cubic-bezier(.2,.8,.25,1.1)}
/* The box: the document of the popup (its own settings win: no specificity here). */
:where(.bpdz-popup-dialog > .bpdz){box-sizing:border-box;width:520px;max-width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;background:#fff;color:#1f2937;border-radius:var(--bpdz-popup-radius,16px);box-shadow:0 30px 80px -20px rgba(15,23,42,.5)}
/* Entrance */
.bpdz-popup-anim-zoom .bpdz-popup-dialog{transform:scale(.88)}
.bpdz-popup-anim-slide-up .bpdz-popup-dialog{transform:translateY(48px)}
.bpdz-popup-anim-slide-down .bpdz-popup-dialog{transform:translateY(-48px)}
.bpdz-popup-anim-slide-start .bpdz-popup-dialog{transform:translateX(-60px)}
.bpdz-popup-anim-slide-end .bpdz-popup-dialog{transform:translateX(60px)}
[dir=rtl] .bpdz-popup-anim-slide-start .bpdz-popup-dialog{transform:translateX(60px)}
[dir=rtl] .bpdz-popup-anim-slide-end .bpdz-popup-dialog{transform:translateX(-60px)}
.bpdz-popup.is-open .bpdz-popup-dialog,[dir] .bpdz-popup.is-open .bpdz-popup-dialog{opacity:1;transform:none}
.bpdz-popup-anim-none .bpdz-popup-dialog,.bpdz-popup-anim-none .bpdz-popup-overlay{transition:none}
@media (prefers-reduced-motion:reduce){.bpdz-popup-dialog,.bpdz-popup-overlay{transition:opacity .15s ease !important;transform:none !important}}
/* Positions */
.bpdz-popup-pos-top{align-items:flex-start}
.bpdz-popup-pos-bottom{align-items:flex-end}
.bpdz-popup-pos-bottom-start{align-items:flex-end;justify-content:flex-start}
.bpdz-popup-pos-bottom-end{align-items:flex-end;justify-content:flex-end}
.bpdz-popup-pos-start,.bpdz-popup-pos-end{align-items:stretch;padding:0}
.bpdz-popup-pos-start{justify-content:flex-start}
.bpdz-popup-pos-end{justify-content:flex-end}
.bpdz-popup-pos-start .bpdz-popup-dialog,.bpdz-popup-pos-end .bpdz-popup-dialog{height:100%}
.bpdz-popup-pos-start :where(.bpdz-popup-dialog > .bpdz),.bpdz-popup-pos-end :where(.bpdz-popup-dialog > .bpdz){width:400px;height:100%;max-height:none;border-radius:0}
.bpdz-popup-pos-bar-top,.bpdz-popup-pos-bar-bottom{padding:0;align-items:flex-start}
.bpdz-popup-pos-bar-bottom{align-items:flex-end}
.bpdz-popup-pos-bar-top .bpdz-popup-dialog,.bpdz-popup-pos-bar-bottom .bpdz-popup-dialog{width:100%}
.bpdz-popup-pos-bar-top .bpdz-popup-dialog > .bpdz,.bpdz-popup-pos-bar-bottom .bpdz-popup-dialog > .bpdz{width:100% !important;border-radius:0;max-height:70vh}
.bpdz-popup-pos-fullscreen{padding:0}
.bpdz-popup-pos-fullscreen .bpdz-popup-dialog{width:100%;height:100%}
.bpdz-popup-pos-fullscreen .bpdz-popup-dialog > .bpdz{width:100% !important;height:100%;max-height:none;border-radius:0}
/* Close button */
.bpdz-popup-close{position:absolute;z-index:5;top:10px;inset-inline-end:10px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;margin:0;padding:0;border:0;border-radius:50%;background:var(--bpdz-popup-close-bg,rgba(15,23,42,.07));color:var(--bpdz-popup-close,#0f172a);cursor:pointer;line-height:1;transition:transform .2s,background .2s}
.bpdz-popup-close:hover{transform:rotate(90deg)}
.bpdz-popup-close:focus-visible{outline:3px solid rgba(14,124,102,.45);outline-offset:2px}
.bpdz-popup-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.bpdz-popup-close-outside{top:-14px;inset-inline-end:-14px;background:var(--bpdz-popup-close-bg,#fff);box-shadow:0 8px 20px -6px rgba(0,0,0,.35)}
.bpdz-popup-pos-fullscreen .bpdz-popup-close-outside,.bpdz-popup-pos-bar-top .bpdz-popup-close-outside,.bpdz-popup-pos-bar-bottom .bpdz-popup-close-outside,.bpdz-popup-pos-start .bpdz-popup-close-outside,.bpdz-popup-pos-end .bpdz-popup-close-outside{top:10px;inset-inline-end:10px}
html.bpdz-popup-locked,html.bpdz-popup-locked body{overflow:hidden}
@media (max-width:767px){
	.bpdz-popup{padding:12px}
	.bpdz-popup.bpdz-popup-pos-start,.bpdz-popup.bpdz-popup-pos-end,.bpdz-popup.bpdz-popup-pos-fullscreen,.bpdz-popup.bpdz-popup-pos-bar-top,.bpdz-popup.bpdz-popup-pos-bar-bottom{padding:0}
	.bpdz-popup-pos-start :where(.bpdz-popup-dialog > .bpdz),.bpdz-popup-pos-end :where(.bpdz-popup-dialog > .bpdz){width:86vw}
	/* A side panel leaves a strip of the page visible on phones (tap it to close). */
	.bpdz-popup-pos-start .bpdz-popup-dialog,.bpdz-popup-pos-end .bpdz-popup-dialog{max-width:86vw}
	.bpdz-popup-close-outside{top:-10px;inset-inline-end:-6px}
}

/* Editor: a popup template is shown as its box on a dimmed page. */
body.bpdz-popup-canvas{min-height:100vh;margin:0;background:#cbd2dc;background-image:radial-gradient(rgba(15,23,42,.08) 1px,transparent 1px);background-size:18px 18px}
body.bpdz-popup-canvas :where(.bpdz[data-bpdz-doc]){box-sizing:border-box;width:520px;max-width:calc(100% - 32px);margin:56px auto}
/* Look of the box: no weight, so the background, radius and shadow of the popup settings show in the editor. */
:where(body.bpdz-popup-canvas .bpdz[data-bpdz-doc]){background:#fff;color:#1f2937;border-radius:var(--bpdz-popup-radius,16px);box-shadow:0 30px 80px -20px rgba(15,23,42,.5)}
body.bpdz-popup-canvas.bpdz-editor-active [data-bpdz-root]{min-height:180px}
