.jkj-pop-op-root{position:fixed;inset:0;z-index:999999;display:flex;pointer-events:auto}.jkj-pop-op-root.position-center{align-items:center;justify-content:center}.jkj-pop-op-root.position-top{align-items:flex-start;justify-content:center;padding-top:40px}.jkj-pop-op-root.position-bottom{align-items:flex-end;justify-content:center;padding-bottom:40px}.jkj-pop-op-root.no-overlay{pointer-events:none}.jkj-pop-op-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}.jkj-pop-op-root.no-overlay .jkj-pop-op-overlay{display:none}.jkj-pop-op-box{position:relative;width:min(var(--jkj-box-width,var(--jkj-width)),calc(100vw - 32px));height:var(--jkj-box-height,auto);max-height:calc(100vh - 32px);overflow:auto;background-color:var(--jkj-bg);background-size:var(--jkj-bg-size,cover);background-repeat:no-repeat;background-position:center;color:var(--jkj-text);font-family:var(--jkj-font);font-size:var(--jkj-font-size);border-color:var(--jkj-border-color);border-width:var(--jkj-border-width);border-radius:var(--jkj-radius);padding:34px;box-shadow:0 25px 80px rgba(0,0,0,.35);pointer-events:auto}.jkj-pop-op-content>*:first-child{margin-top:0}.jkj-pop-op-content>*:last-child{margin-bottom:0}.jkj-pop-op-close{position:absolute;top:10px;right:12px;border:0;background:rgba(255,255,255,.85);color:#111827;width:34px;height:34px;border-radius:999px;font-size:24px;line-height:30px;cursor:pointer;box-shadow:0 1px 8px rgba(0,0,0,.18)}.border-none{border-width:0!important;border-style:none!important}.border-simple{border-style:solid}.border-double{border-style:double}.border-dashed{border-style:dashed}.border-ornament{border-style:solid}.border-ornament:before{content:"✦ ✧ ✦";display:block;text-align:center;font-size:22px;letter-spacing:10px;color:var(--jkj-border-color);margin-bottom:10px}.border-ornament:after{content:"✦ ✧ ✦";display:block;text-align:center;font-size:22px;letter-spacing:10px;color:var(--jkj-border-color);margin-top:10px}.border-flourished{border-style:double}.border-flourished:before{content:"❦";position:absolute;top:6px;left:14px;color:var(--jkj-border-color);font-size:30px}.border-flourished:after{content:"❦";position:absolute;bottom:6px;right:14px;color:var(--jkj-border-color);font-size:30px;transform:rotate(180deg)}
.anim-fade-in{animation:jkjFadeIn .45s ease both}.anim-slide-down{animation:jkjSlideDown .5s ease both}.anim-slide-up{animation:jkjSlideUp .5s ease both}.anim-zoom-in{animation:jkjZoomIn .45s ease both}.anim-flip-in{animation:jkjFlipIn .55s ease both}.jkj-out-fade-out{animation:jkjFadeOut .35s ease both}.jkj-out-slide-out-up{animation:jkjSlideOutUp .35s ease both}.jkj-out-slide-out-down{animation:jkjSlideOutDown .35s ease both}.jkj-out-zoom-out{animation:jkjZoomOut .35s ease both}.jkj-out-flip-out{animation:jkjFlipOut .35s ease both}@keyframes jkjFadeIn{from{opacity:0}to{opacity:1}}@keyframes jkjSlideDown{from{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@keyframes jkjSlideUp{from{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes jkjZoomIn{from{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes jkjFlipIn{from{opacity:0;transform:perspective(900px) rotateX(-20deg)}to{opacity:1;transform:perspective(900px) rotateX(0)}}@keyframes jkjFadeOut{to{opacity:0}}@keyframes jkjSlideOutUp{to{opacity:0;transform:translateY(-50px)}}@keyframes jkjSlideOutDown{to{opacity:0;transform:translateY(50px)}}@keyframes jkjZoomOut{to{opacity:0;transform:scale(.85)}}@keyframes jkjFlipOut{to{opacity:0;transform:perspective(900px) rotateX(20deg)}}@media(max-width:640px){.jkj-pop-op-box{padding:26px 20px}.jkj-pop-op-root.position-top{padding-top:16px}.jkj-pop-op-root.position-bottom{padding-bottom:16px}}

.jkj-border-blink{transition:border-color var(--jkj-blink-fade,.35s) ease, outline-color var(--jkj-blink-fade,.35s) ease, box-shadow var(--jkj-blink-fade,.35s) ease;outline:0 solid transparent}.jkj-border-blink:before,.jkj-border-blink:after{transition:color var(--jkj-blink-fade,.35s) ease}.jkj-border-blink.jkj-border-off{border-color:transparent!important;outline-color:transparent!important;box-shadow:0 25px 80px rgba(0,0,0,.35)}.jkj-border-blink.jkj-border-on{outline:calc(var(--jkj-border-width,2px) + 2px) solid var(--jkj-border-color)!important;box-shadow:0 25px 80px rgba(0,0,0,.35),0 0 22px var(--jkj-border-color)}.jkj-border-blink.jkj-border-off:before,.jkj-border-blink.jkj-border-off:after{color:transparent!important}.jkj-border-blink.jkj-border-on:before,.jkj-border-blink.jkj-border-on:after{color:var(--jkj-border-color)!important}
.jkj-box-blink-on,.jkj-box-blink-off{transition:opacity var(--jkj-blink-fade,.35s) ease,filter var(--jkj-blink-fade,.35s) ease}.jkj-box-blink-on{opacity:1;filter:none}.jkj-box-blink-off{opacity:.18;filter:saturate(.75)}

.jkj-pop-op-root.bg-mode-natural .jkj-pop-op-box{width:min(var(--jkj-natural-bg-width,var(--jkj-box-width,var(--jkj-width))),calc(100vw - 32px));height:min(var(--jkj-natural-bg-height,auto),calc(100vh - 32px));background-size:contain;background-repeat:no-repeat;background-position:center;display:flex;align-items:center;justify-content:center}.jkj-pop-op-root.bg-mode-natural .jkj-pop-op-content{max-width:100%;max-height:100%;overflow:auto}
.jkj-pop-op-root.bg-mode-custom .jkj-pop-op-box{width:min(var(--jkj-custom-bg-width,var(--jkj-box-width,var(--jkj-width))),calc(100vw - 32px));height:var(--jkj-custom-bg-height,var(--jkj-box-height,auto));max-height:calc(100vh - 32px);background-size:var(--jkj-bg-size,cover);background-repeat:no-repeat;background-position:center}
.jkj-pop-op-root.bg-mode-crop_text .jkj-pop-op-box{height:auto}
@media(max-width:640px){.jkj-pop-op-root.bg-mode-natural .jkj-pop-op-box,.jkj-pop-op-root.bg-mode-custom .jkj-pop-op-box{height:auto;min-height:180px}}

/* JKJ pop-op v1.4.0 fixes: reliable whole-box blink, smooth colour cycling and soft edges */
.jkj-pop-op-box.jkj-box-blink-enabled{will-change:opacity,filter,transform}
.jkj-pop-op-box.jkj-box-blink-active{animation:jkjWholeBoxBlink var(--jkj-blink-frequency,1s) ease-in-out infinite alternate!important}
@keyframes jkjWholeBoxBlink{0%{opacity:1;filter:none}100%{opacity:.08;filter:saturate(.65) brightness(.92)}}
.jkj-pop-op-box.jkj-border-blink{transition:border-color var(--jkj-cycle-transition,var(--jkj-blink-fade,.35s)) ease-in-out,outline-color var(--jkj-cycle-transition,var(--jkj-blink-fade,.35s)) ease-in-out,box-shadow var(--jkj-cycle-transition,var(--jkj-blink-fade,.35s)) ease-in-out!important}
.jkj-pop-op-box.jkj-border-blink:before,.jkj-pop-op-box.jkj-border-blink:after{transition:color var(--jkj-cycle-transition,var(--jkj-blink-fade,.35s)) ease-in-out,text-shadow var(--jkj-cycle-transition,var(--jkj-blink-fade,.35s)) ease-in-out!important}
.jkj-pop-op-box.jkj-border-soft-edge{box-shadow:0 25px 80px rgba(0,0,0,.35),0 0 18px var(--jkj-border-color),inset 0 0 10px color-mix(in srgb,var(--jkj-border-color) 35%,transparent)}
.jkj-pop-op-box.jkj-border-soft-edge:before,.jkj-pop-op-box.jkj-border-soft-edge:after{text-shadow:0 0 8px var(--jkj-border-color)}
.jkj-pop-op-box.jkj-box-soft-edge{border-radius:calc(var(--jkj-radius,18px) + 10px);box-shadow:0 30px 95px rgba(0,0,0,.32),0 0 34px rgba(255,255,255,.18);overflow:auto}

/* JKJ pop-op v1.5.0: viewport units and aspect-ratio support */
.jkj-pop-op-box.jkj-keep-aspect{aspect-ratio:var(--jkj-aspect-ratio);height:auto}
.jkj-pop-op-root.bg-mode-custom .jkj-pop-op-box.jkj-keep-aspect{aspect-ratio:var(--jkj-bg-aspect-ratio,var(--jkj-aspect-ratio));height:auto}
.jkj-pop-op-root.bg-mode-natural .jkj-pop-op-box.jkj-keep-aspect{aspect-ratio:var(--jkj-bg-aspect-ratio,var(--jkj-aspect-ratio));height:auto}

/* JKJ pop-op v1.6.0: Boks baggrund, gradient and opacity */
.jkj-pop-op-box{background:transparent!important;isolation:isolate}
.jkj-pop-op-bg{position:absolute;inset:0;border-radius:inherit;background-color:var(--jkj-bg);background-image:var(--jkj-bg-image,none),var(--jkj-bg-layer);background-size:var(--jkj-bg-size,cover),cover;background-repeat:no-repeat;background-position:center;opacity:var(--jkj-box-opacity,1);z-index:0;pointer-events:none}
.jkj-pop-op-close,.jkj-pop-op-content{position:relative;z-index:2}
.jkj-pop-op-root.bg-mode-fit_box .jkj-pop-op-box{width:min(var(--jkj-box-width,var(--jkj-width)),calc(100vw - 32px));height:var(--jkj-box-height,auto);background-size:var(--jkj-bg-size,cover)}
.jkj-pop-op-root.bg-mode-fit_box .jkj-pop-op-bg{background-size:var(--jkj-bg-size,cover),cover}
.jkj-box-background-settings{margin:0 0 18px;padding:14px 16px;border:1px solid #dcdcde;border-radius:10px;background:#fff}
.jkj-box-background-settings h3{margin-top:0}

/* JKJ pop-op v1.7.0: image priority and text placement */
.jkj-pop-op-root.has-bg-image .jkj-pop-op-bg{background-color:transparent!important;background-image:var(--jkj-bg-image)!important;background-size:var(--jkj-bg-size,cover)!important;background-repeat:no-repeat!important;background-position:center!important}
.jkj-pop-op-root.no-bg-image .jkj-pop-op-bg{background-image:var(--jkj-bg-layer)!important}
.jkj-pop-op-box{display:flex;flex-direction:column}
.jkj-pop-op-box.text-v-top{justify-content:flex-start}
.jkj-pop-op-box.text-v-center{justify-content:center}
.jkj-pop-op-box.text-v-bottom{justify-content:flex-end}
.jkj-pop-op-content{width:100%}
.jkj-pop-op-box.text-h-left .jkj-pop-op-content{text-align:left}
.jkj-pop-op-box.text-h-center .jkj-pop-op-content{text-align:center}
.jkj-pop-op-box.text-h-right .jkj-pop-op-content{text-align:right}

/* JKJ pop-op v1.9.0: close button positions */
.jkj-pop-op-close.close-top-right{top:10px;right:12px;bottom:auto;left:auto}
.jkj-pop-op-close.close-top-left{top:10px;left:12px;right:auto;bottom:auto}
.jkj-pop-op-close.close-bottom-right{bottom:10px;right:12px;top:auto;left:auto}
.jkj-pop-op-close.close-bottom-left{bottom:10px;left:12px;top:auto;right:auto}


/* JKJ pop-op v1.9.1: robust close button and backend preview parity */
.jkj-pop-op-close{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:absolute!important;
  z-index:50!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  font-family:Arial,sans-serif!important;
  font-weight:700!important;
}
.jkj-pop-op-close.close-top-right{top:10px!important;right:12px!important;bottom:auto!important;left:auto!important}
.jkj-pop-op-close.close-top-left{top:10px!important;left:12px!important;right:auto!important;bottom:auto!important}
.jkj-pop-op-close.close-bottom-right{bottom:10px!important;right:12px!important;top:auto!important;left:auto!important}
.jkj-pop-op-close.close-bottom-left{bottom:10px!important;left:12px!important;top:auto!important;right:auto!important}
.jkj-admin-preview-root .jkj-pop-op-root{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:flex!important}
.jkj-admin-preview-root .jkj-pop-op-box{max-width:calc(100vw - 32px);max-height:calc(100vh - 32px)}

/* JKJ pop-op v1.10.0: background overlay and configurable close button */
.jkj-pop-op-bg::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:var(--jkj-bg-overlay-color,#000000);
  opacity:var(--jkj-bg-overlay-opacity,0);
  pointer-events:none;
}
.jkj-pop-op-close{
  width:var(--jkj-close-size,34px)!important;
  height:var(--jkj-close-size,34px)!important;
  min-width:var(--jkj-close-size,34px)!important;
  min-height:var(--jkj-close-size,34px)!important;
  border-radius:var(--jkj-close-radius,999px)!important;
  background:var(--jkj-close-bg,#ffffff)!important;
  color:var(--jkj-close-color,#111827)!important;
  font-size:calc(var(--jkj-close-size,34px) * .68)!important;
  line-height:1!important;
  padding:0!important;
}
.jkj-pop-op-close.close-shape-circle{--jkj-close-radius:999px}
.jkj-pop-op-close.close-shape-rounded{--jkj-close-radius:10px}
.jkj-pop-op-close.close-shape-square{--jkj-close-radius:0px}

/* JKJ pop-op v1.13.0: responsive boxes, media, controls and close button */
.jkj-pop-op-root,
.jkj-pop-op-root *{box-sizing:border-box}
.jkj-pop-op-box{
  width:clamp(280px,var(--jkj-box-width,var(--jkj-width,620px)),calc(100vw - 32px));
  max-width:calc(100vw - 32px)!important;
  max-height:calc(100dvh - 32px)!important;
  overflow:auto;
  overflow-wrap:anywhere;
  word-break:normal;
  scrollbar-gutter:stable;
}
.jkj-pop-op-content{max-width:100%;overflow-wrap:anywhere}
.jkj-pop-op-content img,
.jkj-pop-op-content video,
.jkj-pop-op-content iframe,
.jkj-pop-op-content table{max-width:100%;height:auto}
.jkj-pop-op-content table{display:block;overflow-x:auto}
.jkj-pop-op-bg{background-clip:padding-box}
.jkj-pop-op-root.position-top{padding:clamp(10px,4vh,40px) 16px 16px}
.jkj-pop-op-root.position-bottom{padding:16px 16px clamp(10px,4vh,40px)}
.jkj-pop-op-root.position-center{padding:16px}
.jkj-pop-op-close{
  width:clamp(26px,var(--jkj-close-size,34px),56px)!important;
  height:clamp(26px,var(--jkj-close-size,34px),56px)!important;
  min-width:clamp(26px,var(--jkj-close-size,34px),56px)!important;
  min-height:clamp(26px,var(--jkj-close-size,34px),56px)!important;
  font-size:clamp(16px,calc(var(--jkj-close-size,34px) * .68),34px)!important;
}
.jkj-pop-op-root.bg-mode-natural .jkj-pop-op-box,
.jkj-pop-op-root.bg-mode-custom .jkj-pop-op-box,
.jkj-pop-op-root.bg-mode-fit_box .jkj-pop-op-box{
  max-width:calc(100vw - 32px)!important;
  max-height:calc(100dvh - 32px)!important;
}
@media (max-width: 782px){
  .jkj-pop-op-root.position-top,
  .jkj-pop-op-root.position-bottom,
  .jkj-pop-op-root.position-center{padding:12px}
  .jkj-pop-op-box{
    width:min(var(--jkj-box-width,var(--jkj-width,620px)),calc(100vw - 24px))!important;
    max-width:calc(100vw - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    padding:clamp(18px,5vw,28px)!important;
  }
  .jkj-pop-op-root.bg-mode-natural .jkj-pop-op-box,
  .jkj-pop-op-root.bg-mode-custom .jkj-pop-op-box,
  .jkj-pop-op-root.bg-mode-fit_box .jkj-pop-op-box{
    width:min(var(--jkj-box-width,var(--jkj-width,620px)),calc(100vw - 24px))!important;
    height:auto;
    min-height:min(180px,calc(100dvh - 24px));
  }
  .jkj-pop-op-content{font-size:clamp(14px,4vw,18px)}
  .jkj-pop-op-close.close-top-right{top:8px!important;right:8px!important}
  .jkj-pop-op-close.close-top-left{top:8px!important;left:8px!important}
  .jkj-pop-op-close.close-bottom-right{bottom:8px!important;right:8px!important}
  .jkj-pop-op-close.close-bottom-left{bottom:8px!important;left:8px!important}
}
@media (max-width: 420px){
  .jkj-pop-op-box{padding:18px 14px!important;border-width:min(var(--jkj-border-width,2px),6px)!important}
  .border-ornament:before,.border-ornament:after{font-size:18px;letter-spacing:5px}
  .border-flourished:before,.border-flourished:after{font-size:22px}
}

/* JKJ pop-op v1.14.0: configurable in/out animation duration */
.anim-fade-in,.anim-slide-down,.anim-slide-up,.anim-zoom-in,.anim-flip-in{animation-duration:var(--jkj-animation-in-duration,.45s)!important}
.jkj-out-fade-out,.jkj-out-slide-out-up,.jkj-out-slide-out-down,.jkj-out-zoom-out,.jkj-out-flip-out{animation-duration:var(--jkj-animation-out-duration,.35s)!important}

/* JKJ pop-op v2.0.31: make visual frame, rounded corners and background layer use the exact same box */
.jkj-pop-op-box,
.jkj-pop-op-box *{
  box-sizing:border-box!important;
}
.jkj-pop-op-box{
  position:relative!important;
  overflow:hidden!important;
  scrollbar-gutter:auto!important;
  background:transparent!important;
  background-clip:border-box!important;
  border-radius:var(--jkj-radius,18px)!important;
}
.jkj-pop-op-bg{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  border-radius:inherit!important;
  background-origin:border-box!important;
  background-clip:border-box!important;
  overflow:hidden!important;
}
.jkj-pop-op-root.has-bg-image .jkj-pop-op-bg{
  background-image:var(--jkj-bg-image)!important;
  background-size:var(--jkj-bg-size,cover)!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
}
.jkj-pop-op-content{
  position:relative!important;
  z-index:2!important;
  width:100%!important;
  max-width:100%!important;
  overflow:auto!important;
  max-height:calc(100dvh - 96px)!important;
}
.jkj-pop-op-close{
  z-index:5!important;
}


/* JKJ pop-op v2.0.32: match the image/background corner curve to the visible border curve.
   The frame stays on .jkj-pop-op-box; the visual background is clipped inside the border. */
.jkj-pop-op-box{
  border-radius:var(--jkj-radius,18px)!important;
  overflow:hidden!important;
}
.jkj-pop-op-bg{
  inset:var(--jkj-border-width,0px)!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  border-radius:calc(var(--jkj-radius,18px) - var(--jkj-border-width,0px))!important;
  background-clip:padding-box!important;
  overflow:hidden!important;
}
.jkj-pop-op-bg::after{
  border-radius:inherit!important;
}
.jkj-pop-op-root.has-bg-image .jkj-pop-op-bg{
  background-clip:padding-box!important;
}


/* JKJ pop-op v2.0.33: remove the visible gap between frame and background image.
   The background layer is anchored to the padding box edge (the inside edge of the border),
   while the corner curve is reduced by the border width so it follows the border's inner curve. */
.jkj-pop-op-box{
  border-radius:var(--jkj-radius,18px)!important;
  overflow:hidden!important;
  background:transparent!important;
}
.jkj-pop-op-bg{
  inset:0!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  border-radius:max(0px, calc(var(--jkj-radius,18px) - var(--jkj-border-width,0px)))!important;
  background-origin:padding-box!important;
  background-clip:padding-box!important;
  overflow:hidden!important;
}
.jkj-pop-op-bg::after{
  inset:0!important;
  border-radius:inherit!important;
}
.jkj-pop-op-root.has-bg-image .jkj-pop-op-bg{
  background-image:var(--jkj-bg-image)!important;
  background-size:var(--jkj-bg-size,cover)!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
}
