/* JaluziMarket Lead Widget v3 */
.jm-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9800;justify-content:flex-end;flex-direction:column;align-items:center}
.jm-overlay.open{display:flex;animation:jmFadeIn .2s}
@keyframes jmFadeIn{from{opacity:0}to{opacity:1}}

.jm-box{
  background:#fff;
  width:100%;max-width:520px;
  max-height:90vh;
  border-radius:20px 20px 0 0;
  display:flex;flex-direction:column;
  overflow:hidden;
  font-family:'Inter','Segoe UI',sans-serif;
  animation:jmSlideUp .25s ease;
}
@keyframes jmSlideUp{from{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}

@media(min-width:600px){
  .jm-overlay{justify-content:center}
  .jm-box{border-radius:20px;max-height:88vh}
}

/* Header */
.jm-head{
  background:#1A1A1A;
  padding:18px 20px 14px;
  display:flex;align-items:flex-start;justify-content:space-between;
  flex-shrink:0;
}
.jm-head-title{color:#D4AF37;font-weight:800;font-size:17px;line-height:1.2}
.jm-head-sub{color:#aaa;font-size:12px;margin-top:3px}
.jm-x{background:none;border:none;color:#666;font-size:28px;line-height:1;cursor:pointer;padding:0;margin-left:12px;flex-shrink:0}
.jm-x:hover{color:#fff}

/* Progress */
.jm-prog{background:#2c2c2c;height:3px;flex-shrink:0}
.jm-prog-bar{height:3px;background:#D4AF37;transition:width .3s}

/* Body */
.jm-body{padding:22px 20px 24px;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}

/* Step */
.jm-s{display:none}
.jm-s.on{display:block}

.jm-q{font-weight:700;font-size:17px;color:#1A1A1A;margin-bottom:5px;display:block;line-height:1.3}
.jm-hint{font-size:13px;color:#6B7280;margin-bottom:14px;line-height:1.5;display:block}

/* Input */
.jm-inp{
  width:100%;padding:13px 15px;
  border:2px solid #E5E7EB;border-radius:12px;
  font-size:16px;outline:none;
  box-sizing:border-box;color:#1A1A1A;
  -webkit-appearance:none;transition:border-color .2s;
}
.jm-inp:focus{border-color:#D4AF37}

/* Dim row */
.jm-dims{display:flex;gap:12px}
.jm-dims>div{flex:1}
.jm-dims label{font-size:12px;font-weight:600;color:#6B7280;display:block;margin-bottom:5px}

/* Grid options */
.jm-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}
.jm-opt{
  padding:13px 10px;
  border:2px solid #E5E7EB;border-radius:12px;
  background:#fff;color:#1A1A1A;
  cursor:pointer;font-size:14px;font-weight:500;
  text-align:center;line-height:1.3;
  transition:border-color .15s,background .15s;
}
.jm-opt:hover,.jm-opt.sel{border-color:#D4AF37;background:#fdf8e7;font-weight:700}

/* Nav */
.jm-nav{display:flex;gap:10px;margin-top:20px}
.jm-next{
  flex:1;padding:14px;
  background:#D4AF37;color:#1A1A1A;
  border:none;border-radius:12px;
  font-weight:700;font-size:15px;cursor:pointer;
  transition:background .2s;
}
.jm-next:hover{background:#b8952a}
.jm-next:disabled{opacity:.6;cursor:not-allowed}
.jm-back{
  padding:14px 18px;
  background:#F3F4F6;color:#6B7280;
  border:none;border-radius:12px;
  font-size:15px;cursor:pointer;
}
.jm-back:hover{background:#E5E7EB}

/* Error */
.jm-err{color:#EF4444;font-size:13px;margin-top:7px;display:none;font-weight:500}

/* Summary */
.jm-sum{background:#fdf8e7;border-radius:12px;padding:14px 16px;margin-bottom:16px}
.jm-sum-row{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid #ede9c8;font-size:14px}
.jm-sum-row:last-child{border:none}
.jm-sum-row span:first-child{color:#6B7280;font-weight:500}
.jm-sum-row span:last-child{font-weight:700;color:#1A1A1A}

/* Spinner */
.jm-spin{display:inline-block;width:16px;height:16px;border:2px solid rgba(0,0,0,.2);border-top-color:#1A1A1A;border-radius:50%;animation:jmSpin .7s linear infinite;vertical-align:middle;margin-right:6px}
@keyframes jmSpin{to{transform:rotate(360deg)}}

/* Success */
.jm-ok{text-align:center;padding:30px 10px}
.jm-ok-icon{font-size:60px;display:block;margin-bottom:16px}
.jm-ok h3{font-weight:800;font-size:22px;color:#1A1A1A;margin-bottom:10px}
.jm-ok p{color:#6B7280;font-size:14px;line-height:1.7}
.jm-ok-btn{margin-top:22px;padding:13px 36px;background:#D4AF37;color:#1A1A1A;border:none;border-radius:12px;font-weight:700;font-size:15px;cursor:pointer}

@media(max-width:380px){
  .jm-head-title{font-size:15px}
  .jm-q{font-size:15px}
  .jm-opt{font-size:13px;padding:11px 8px}
}
