/* Bundle count stepper */
.sl-stepper{display:flex;align-items:center;gap:18px;}
.sl-stepper-btn{
  width:40px;height:40px;border-radius:12px;border:1.5px solid var(--line);background:#fff;
  font-size:20px;font-weight:700;color:var(--ink);display:flex;align-items:center;justify-content:center;
  transition:all .2s ease;
}
.sl-stepper-btn:hover{border-color:var(--blue);color:var(--blue);}
.sl-stepper-val{font-family:var(--font-display);font-weight:800;font-size:20px;min-width:24px;text-align:center;}

/* Photo galleries */
.sl-photo-group{
  background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:16px;margin-bottom:14px;
}
.sl-photo-group-title{
  width:100%;padding:11px 13px;border-radius:10px;border:1.5px solid var(--line);
  font-family:inherit;font-size:14px;font-weight:600;margin-bottom:12px;
}
.sl-photo-group-title:focus{outline:none;border-color:var(--blue);}
.sl-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.sl-photo-thumb{
  position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--bg-soft);border:1px solid var(--line);
}
.sl-photo-thumb img{width:100%;height:100%;object-fit:cover;}
.sl-photo-remove{
  position:absolute;top:5px;right:5px;width:22px;height:22px;border-radius:50%;
  background:rgba(17,24,39,0.75);color:#fff;font-size:12px;display:flex;align-items:center;justify-content:center;
}
.sl-photo-add{
  aspect-ratio:1;border-radius:12px;border:2px dashed var(--line);background:var(--bg-soft);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  font-size:20px;color:var(--ink-soft);cursor:pointer;transition:all .2s ease;
}
.sl-photo-add:hover{border-color:var(--blue);color:var(--blue);}
.sl-photo-add span{font-size:10px;font-weight:700;}
.sl-photo-count{font-size:11.5px;font-weight:700;margin-top:10px;}
.sl-photo-count.ok{color:var(--green);}
.sl-photo-count.short{color:#DC2626;}

/* Success preview card (mirrors the home feed card) */
.sl-preview-card{
  max-width:230px;margin:24px auto 28px;text-align:left;
  background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow-md);
}
.sl-preview-cover{height:120px;position:relative;display:flex;align-items:center;justify-content:center;}
.sl-preview-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.sl-preview-emoji{font-size:34px;}
.sl-preview-body{padding:12px;}
.sl-preview-title{font-weight:700;font-size:13px;margin-bottom:6px;}
.sl-preview-price{font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--green);}