/* Dobay Kampanya Litebox (Beauty) */
html.dklb-lock, body.dklb-lock{overflow:hidden !important;}
#dklb-overlay.dklb-overlay{position:fixed !important;inset:0 !important;display:flex;align-items:center;justify-content:center;padding:16px;z-index:var(--dklb-z, 2147483647) !important;isolation:isolate;background:var(--dklb-overlay, rgba(0,0,0,.55));font-family:var(--dklb-font, system-ui);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease, visibility 0s linear .22s;}
#dklb-overlay.dklb-overlay.dklb-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s ease;}
#dklb-overlay .dklb-modal{width:min(980px, 100%);background:var(--dklb-bg,#fff0f6);border-radius:22px;box-shadow:0 18px 50px rgba(0,0,0,.25);border:1px solid rgba(255,255,255,.35);overflow:hidden;position:relative;max-height:calc(100dvh - 32px);max-height:calc(100svh - 32px);max-height:calc(100vh - 32px);display:flex;flex-direction:column;transform:translateY(10px) scale(.985);opacity:0;transition:transform .22s ease, opacity .22s ease;}
#dklb-overlay .dklb-close{position:absolute;top:12px;right:12px;width:40px;height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.18);color:#fff;font-size:24px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter: blur(10px);z-index:20;transition:background .15s ease, transform .15s ease;}
#dklb-overlay .dklb-close:hover{background:rgba(255,255,255,.26);transform:scale(1.03);} 
#dklb-overlay .dklb-close:focus-visible{outline:2px solid rgba(255,255,255,.9);outline-offset:2px;}
#dklb-overlay.dklb-open .dklb-modal{transform:none;opacity:1;}

#dklb-overlay .dklb-scroll{overflow:auto;-webkit-overflow-scrolling:touch;}

#dklb-overlay .dklb-hero{padding:22px 22px 18px 22px;background:linear-gradient(135deg,var(--dklb-hero1,#ff4d88),var(--dklb-hero2,#b23b6f));color:#fff;position:relative;}
#dklb-overlay .dklb-hero-kicker{font-size:13px;font-weight:800;letter-spacing:.2px;opacity:.95;margin-bottom:6px;display:inline-flex;gap:8px;align-items:center;}
#dklb-overlay .dklb-hero-title{font-size:34px;line-height:1.08;font-weight:600;margin:0 0 12px 0;letter-spacing:-.3px;}
#dklb-overlay .dklb-hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px;}
#dklb-overlay .dklb-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.26);font-size:13px;font-weight:800;backdrop-filter: blur(10px);}
#dklb-overlay .dklb-hero-tagline{font-size:14px;font-weight:600;opacity:.92}

#dklb-overlay .dklb-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:18px;padding:18px 18px 20px 18px;}
#dklb-overlay .dklb-left{display:flex;flex-direction:column;gap:12px;}
#dklb-overlay .dklb-card{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid rgba(255,0,120,.12);border-radius:16px;padding:14px 14px;box-shadow:0 10px 24px rgba(255,70,150,.08);}
#dklb-overlay .dklb-card-icon{width:44px;height:44px;border-radius:14px;background:rgba(255,63,135,.10);border:1px solid rgba(255,63,135,.16);display:flex;align-items:center;justify-content:center;font-size:22px;flex:0 0 auto;}
#dklb-overlay .dklb-card-title{font-size:18px;font-weight:900;color:#3b1930;margin:0 0 8px 0;letter-spacing:-.2px;}
#dklb-overlay .dklb-card-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
#dklb-overlay .dklb-discount{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:rgba(255,63,135,.12);border:1px solid rgba(255,63,135,.18);color:#b31252;font-weight:900;font-size:12px;}
#dklb-overlay .dklb-card-desc{color:#6a5a66;font-size:13px;font-weight:650;}

#dklb-overlay .dklb-right{display:flex;flex-direction:column;gap:12px;}
#dklb-overlay .dklb-box{background:rgba(255,255,255,.65);border:1px dashed rgba(255,63,135,.28);border-radius:16px;padding:14px;backdrop-filter: blur(10px);}
#dklb-overlay .dklb-box-note{color:#7a1b47;font-weight:800;font-size:13px;margin-bottom:8px;}
#dklb-overlay .dklb-box-label{color:#6a3a54;font-size:13px;margin-bottom:10px;}
#dklb-overlay .dklb-count-pill{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid rgba(255,63,135,.22);border-radius:999px;padding:10px 12px;font-size:16px;font-weight:950;color:#c01857;box-shadow:0 10px 22px rgba(255,70,150,.12);}
#dklb-overlay .dklb-box-end{margin-top:10px;color:#6a5a66;font-size:12.5px;font-weight:700;}

#dklb-overlay .dklb-cta{display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;padding:14px 14px;border-radius:16px;background:linear-gradient(135deg,var(--dklb-accent,#ff3f87), #ff2d7a);color:#fff;font-weight:950;font-size:16px;box-shadow:0 14px 30px rgba(255,45,122,.25);border:1px solid rgba(255,255,255,.25);transition:transform .15s ease, filter .15s ease;}
#dklb-overlay .dklb-cta:hover{filter:brightness(1.02);transform:translateY(-1px);}
#dklb-overlay .dklb-contact{background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.45);border-radius:16px;padding:12px;color:#6a5a66;font-size:12.5px;font-weight:650}
#dklb-overlay .dklb-contact-row{display:flex;gap:8px;align-items:center;margin:4px 0;}
#dklb-overlay .dklb-tel{color:inherit;text-decoration:none;}
#dklb-overlay .dklb-tel:hover{text-decoration:underline;}

@media (max-width: 860px){
  #dklb-overlay.dklb-overlay{padding:calc(16px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-hero-title{font-size:calc(28px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-grid{grid-template-columns:1fr;}
  #dklb-overlay .dklb-modal{border-radius:18px;}
}

@media (max-width: 420px){
  #dklb-overlay .dklb-scroll{overflow:auto;-webkit-overflow-scrolling:touch;}

  /* Mobile compact controls (admin)
     - --dklb-m-scale: 0.85..1.10 (default 0.92)
     - --dklb-m-hero-y: vertical padding for header area (px)
  */
  #dklb-overlay.dklb-overlay{padding:calc(14px * var(--dklb-m-scale, 1));}

  #dklb-overlay .dklb-hero{
    padding:
      var(--dklb-m-hero-y, 16px)
      calc(16px * var(--dklb-m-scale, 1))
      calc(var(--dklb-m-hero-y, 16px) - 4px)
      calc(16px * var(--dklb-m-scale, 1));
  }
  #dklb-overlay .dklb-hero-kicker{font-size:calc(13px * var(--dklb-m-scale, 1));margin-bottom:calc(6px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-hero-title{font-size:calc(24px * var(--dklb-m-scale, 1));margin-bottom:calc(10px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-pill{padding:calc(8px * var(--dklb-m-scale, 1)) calc(12px * var(--dklb-m-scale, 1));font-size:calc(13px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-hero-tagline{font-size:calc(14px * var(--dklb-m-scale, 1));}

  #dklb-overlay .dklb-grid{gap:calc(14px * var(--dklb-m-scale, 1));padding:calc(12px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-left{gap:calc(10px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-card{gap:calc(12px * var(--dklb-m-scale, 1));padding:calc(12px * var(--dklb-m-scale, 1));border-radius:calc(16px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-card-icon{width:calc(44px * var(--dklb-m-scale, 1));height:calc(44px * var(--dklb-m-scale, 1));border-radius:calc(14px * var(--dklb-m-scale, 1));font-size:calc(22px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-card-title{font-size:calc(17px * var(--dklb-m-scale, 1));margin-bottom:calc(6px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-card-desc{font-size:calc(13px * var(--dklb-m-scale, 1));}

  #dklb-overlay .dklb-box{padding:calc(12px * var(--dklb-m-scale, 1));border-radius:calc(16px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-count-pill{font-size:calc(15px * var(--dklb-m-scale, 1));padding:calc(10px * var(--dklb-m-scale, 1)) calc(12px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-cta{padding:calc(12px * var(--dklb-m-scale, 1));font-size:calc(15px * var(--dklb-m-scale, 1));border-radius:calc(16px * var(--dklb-m-scale, 1));}
  #dklb-overlay .dklb-contact{padding:calc(10px * var(--dklb-m-scale, 1));border-radius:calc(16px * var(--dklb-m-scale, 1));font-size:calc(12.5px * var(--dklb-m-scale, 1));}

  #dklb-overlay .dklb-close{top:10px;right:10px;width:calc(38px * var(--dklb-m-scale, 1));height:calc(38px * var(--dklb-m-scale, 1));font-size:calc(24px * var(--dklb-m-scale, 1));}
}

@media (prefers-reduced-motion: reduce){
  #dklb-overlay.dklb-overlay, #dklb-overlay .dklb-modal, #dklb-overlay .dklb-cta, #dklb-overlay .dklb-close{transition:none !important;}
}
