/* Checkout Popup — ventana (hereda colores y tipografía de Woodmart / Elementor) */
:root{
	--wcpo-accent:var(--wd-primary-color,var(--e-global-color-primary,#111));
	--wcpo-radius:var(--wd-brd-radius,14px);
	--wcpo-font:var(--wd-text-font,var(--e-global-typography-text-font-family,inherit));
	--wcpo-title-font:var(--wd-title-font,var(--e-global-typography-primary-font-family,inherit));
}
html.wcpo-lock,html.wcpo-lock body{overflow:hidden}
.wcpo-modal{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;font-family:var(--wcpo-font)}
.wcpo-modal[hidden]{display:none!important}
.wcpo-backdrop{position:absolute;inset:0;background:rgba(15,15,20,.6);backdrop-filter:blur(2px)}
.wcpo-dialog{position:relative;display:flex;flex-direction:column;width:min(540px,96vw);height:min(860px,94vh);background:#fff;border-radius:var(--wcpo-radius);box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden;outline:0;animation:wcpo-in .22s ease-out}
.wcpo-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid rgba(0,0,0,.08)}
.wcpo-title{font-family:var(--wcpo-title-font);font-weight:700;font-size:1.05rem;color:var(--wd-title-color,#111)}
.wcpo-x{all:unset;cursor:pointer;width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:26px;line-height:1;border-radius:50%;color:#444}
.wcpo-x:hover{background:rgba(0,0,0,.06)}
.wcpo-x:focus-visible{outline:2px solid var(--wcpo-accent)}
.wcpo-body{position:relative;flex:1 1 auto;min-height:0}
.wcpo-frame{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff;opacity:0;transition:opacity .2s}
.wcpo-frame.is-ready{opacity:1}
.wcpo-loader{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:#555;font-size:.95rem}
.wcpo-loader[hidden]{display:none}
.wcpo-spin{width:34px;height:34px;border-radius:50%;border:3px solid rgba(0,0,0,.12);border-top-color:var(--wcpo-accent);animation:wcpo-spin .8s linear infinite}
@keyframes wcpo-spin{to{transform:rotate(360deg)}}
@keyframes wcpo-in{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
.wcpo-loading{opacity:.7;pointer-events:none}
@media (max-width:640px){
	.wcpo-modal{align-items:flex-end}
	.wcpo-dialog{width:100vw;height:96vh;border-radius:var(--wcpo-radius) var(--wcpo-radius) 0 0;animation:wcpo-up .25s ease-out}
}
@keyframes wcpo-up{from{transform:translateY(100%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.wcpo-dialog,.wcpo-spin{animation:none}.wcpo-frame{transition:none}}
