/* ============================================================
   MEDIVEXA LABS - abandoned-cart capture (assets/js/leads.js)
   Call-back box in the cart drawer + exit popup + checkout note.
   Uses the brand tokens from style.css.
   ============================================================ */

/* ---------- shared mini form ---------- */
.ld-fields{display:grid;gap:12px}
.ld-f{display:grid;gap:6px}
.ld-f>span{font-family:var(--fm);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink2)}
.ld-f input,.ld-f select{width:100%;height:46px;padding:0 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff;font:inherit;font-size:.92rem;color:var(--ink);transition:border-color .2s,box-shadow .2s}
.ld-f input:focus,.ld-f select:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 4px rgba(73,66,225,.12)}
.ld-pre{display:flex;align-items:stretch;border:1.5px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.ld-pre:focus-within{border-color:var(--violet);box-shadow:0 0 0 4px rgba(73,66,225,.12)}
.ld-pre em{font-style:normal;display:grid;place-items:center;padding:0 12px;background:var(--tint);color:var(--ink2);font-family:var(--fm);font-size:.82rem;border-right:1px solid var(--line)}
.ld-pre input{border:0;border-radius:0;box-shadow:none!important;letter-spacing:.04em}
.ld-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0}
.ld-err{min-height:0;margin:8px 0 0;font-size:.8rem;color:var(--danger)}
.ld-err:empty{display:none}
.ld-btn{width:100%;margin-top:12px;padding:.85rem 1.2rem}
.ld-btn:disabled{opacity:.6;pointer-events:none}
.ld-consent{margin-top:10px;font-size:.72rem;line-height:1.55;color:var(--ink3)}
.ld-link{background:none;border:0;padding:0;font:inherit;color:var(--indigo);font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.ld-x{width:32px;height:32px;border-radius:50%;background:var(--tint);color:var(--ink);font-size:20px;line-height:1;display:grid;place-items:center;flex-shrink:0;transition:.3s}
.ld-x:hover{background:var(--grad);color:#fff;transform:rotate(90deg)}

/* ---------- call-back box (cart drawer) ---------- */
.ld-cb{margin:-.2rem 0 1.1rem;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--sh-card)}
.ld-cb-ico{width:38px;height:38px;border-radius:12px;background:var(--grad-soft);color:var(--indigo);display:grid;place-items:center;flex-shrink:0}
.ld-cb-ico.ok{background:rgba(15,157,88,.1);color:var(--success)}
.ld-cb-toggle{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;text-align:left;color:var(--ink)}
.ld-cb-toggle b,.ld-cb-head b,.ld-cb-done b{display:block;font-family:var(--fd);font-weight:600;font-size:.88rem}
.ld-cb-toggle small,.ld-cb-head small,.ld-cb-done small{display:block;font-size:.76rem;color:var(--ink2);line-height:1.45}
.ld-cb-toggle>span:nth-child(2){flex:1;min-width:0}
.ld-chev{color:var(--ink3);transition:transform .3s}
.ld-cb-toggle:hover .ld-chev{transform:translateY(2px);color:var(--indigo)}
.ld-cb-form{padding:14px}
.ld-cb-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ld-cb-head>div{flex:1;min-width:0}
.ld-cb-done{display:flex;align-items:center;gap:12px;padding:12px 14px}
.ld-cb .ld-f input,.ld-cb .ld-f select,.ld-cb .ld-pre{height:42px}
.ld-cb .ld-pre input{height:auto}

/* ---------- exit popup ---------- */
.ld-exit{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:16px;visibility:hidden}
.ld-exit.open{visibility:visible}
.ld-exit-scrim{position:absolute;inset:0;background:rgba(21,16,46,.55);backdrop-filter:blur(4px);opacity:0;transition:opacity .3s}
.ld-exit.open .ld-exit-scrim{opacity:1}
.ld-exit-box{position:relative;width:min(440px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:var(--r-lg);padding:30px 28px 22px;box-shadow:var(--sh);
  opacity:0;transform:translateY(16px) scale(.97);transition:opacity .35s var(--ease),transform .35s var(--ease)}
.ld-exit.open .ld-exit-box{opacity:1;transform:none}
.ld-exit-x{position:absolute;top:14px;right:14px}
.ld-exit-badge{width:52px;height:52px;border-radius:16px;background:var(--grad);color:#fff;display:grid;place-items:center;margin-bottom:16px;box-shadow:var(--sh-btn)}
.ld-exit-badge.ok{background:var(--success);box-shadow:none}
.ld-kicker{font-family:var(--fm);font-size:.64rem;letter-spacing:.18em;color:var(--violet);margin-bottom:6px}
.ld-exit-box h3{font-family:var(--fd);font-size:1.35rem;font-weight:600;line-height:1.25;margin-bottom:8px;padding-right:28px}
.ld-exit-sub{font-size:.88rem;color:var(--ink2);line-height:1.65;margin-bottom:18px}
.ld-exit-no{display:block;margin:12px auto 0;font-weight:500;color:var(--ink2);font-size:.82rem}
@media (max-width:520px){
  .ld-exit{place-items:end center;padding:0}
  .ld-exit-box{width:100%;border-radius:22px 22px 0 0;padding:26px 20px 20px;transform:translateY(40px)}
}
@media (prefers-reduced-motion:reduce){.ld-exit-box,.ld-exit-scrim{transition:none}}

/* ---------- checkout consent note ---------- */
.co-lead-note{display:block;margin-top:6px;font-size:.74rem;line-height:1.5;color:var(--ink3)}

/* ---------- header: customer account button (site-wide; see usercontrol/header.ascx) ---------- */
.acct-btn{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--tint);color:var(--ink);border:1px solid var(--line);transition:.3s;flex:none;font-family:var(--fd);font-weight:600;font-size:.82rem}
.acct-btn:hover{border-color:var(--violet);color:var(--violet)}
.acct-btn.in{background:var(--grad);color:#fff;border-color:transparent}

@media (max-width:480px){
  .nav-inner{gap:10px}
  .nav-cta{gap:7px}
  .nav-cta .acct-btn,.nav-cta .cart-btn,.nav-cta .hamburger,.nav-cta .loc-btn{width:38px;height:38px}
  .nav-cta .acct-btn{font-size:.74rem}
}
@media (max-width:360px){.nav-cta .loc-btn{display:none}}
