.ssd-designer{ margin:20px 0; padding:16px; border:1px solid #e5e5e5; border-radius:12px; }
.ssd-title{ margin:0 0 10px; font-size:18px; }
.ssd-row{ margin:12px 0; }
.ssd-label{ display:block; font-weight:600; margin-bottom:8px; }
.ssd-radio label{ margin-right:14px; display:inline-flex; gap:6px; align-items:center; }

.ssd-accordion{ margin-top:14px; }
.ssd-section{ border-top:1px solid #eee; }
.ssd-section-toggle{
  width:100%;
  text-align:left;
  padding:12px 0;
  background:none;
  border:0;
  font-size:15px;
  font-weight:700;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
}
.ssd-caret{ font-size:14px; opacity:.7; }
.ssd-section-body{ display:none; padding-bottom:14px; }
.ssd-section.is-open .ssd-section-body{ display:block; }

.ssd-controls{ display:flex; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:10px; }
.ssd-upload{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.ssd-file{ display:none; }
.ssd-btn{
  border:1px solid #111;
  background:#111;
  color:#fff;
  padding:8px 12px;
  border-radius:10px;
  cursor:pointer;
  font-weight:700;
}
.ssd-btn:hover{ opacity:.92; }
.ssd-upload-status{ font-size:13px; opacity:.8; }
.ssd-hints{ font-size:13px; opacity:.75; }

.ssd-canvas-wrap{ border:1px solid #eee; border-radius:12px; padding:10px; background:#fafafa; }
.ssd-canvas{ width:100%; height:auto; display:block; border-radius:8px; }

.ssd-notes-text{ width:100%; border:1px solid #ddd; border-radius:10px; padding:10px; font-size:14px; }
.ssd-approve-label{ display:flex; gap:10px; align-items:flex-start; font-weight:600; }

.ssd-disclaimer-title{ font-weight:800; margin-bottom:8px; }
.ssd-disclaimer-list{ margin:0; padding-left:18px; }
.ssd-disclaimer-list li{ margin:6px 0; }

.ssd-patch-info{
  padding:10px 12px;
  border:1px solid #eee;
  border-radius:10px;
  background:#fafafa;
}

/* Proof preview (below mockups, above notes/approval) */
.ssd-proof-preview{ margin:14px 0; padding:12px; border:1px dashed #e2e2e2; border-radius:10px; background:#fafafa; }
.ssd-proof-title{ font-weight:700; margin-bottom:10px; }
.ssd-proof-grid{ display:flex; flex-wrap:wrap; gap:10px; }
.ssd-proof-item{ width:140px; padding:10px; border:1px solid #eee; border-radius:10px; background:#fff; }
.ssd-proof-label{ font-size:12px; font-weight:600; margin-bottom:6px; }

/* ~25% smaller previews */
.ssd-proof-img{ width:75%; display:block; margin:0 auto; height:auto; border-radius:6px; }
