.sd-wrap #sd-designer {
    display: flex; gap: 16px; align-items: flex-start; flex-wrap: wrap;
}
.sd-layers-panel { width: 160px; }
.sd-layers-panel > label, .sd-tools label { font-weight: 600; font-size: 13px; display: block; }
#sd-layers { display: flex; flex-direction: column; gap: 3px; margin-top: 4px; }
.sd-layer { display: flex; align-items: center; gap: 4px; border: 1px solid #eee; border-radius: 4px; padding: 2px 4px; font-size: 12px; }
.sd-layer .sd-layer-name { flex: 1; cursor: pointer; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sd-layer button { border: none; background: none; cursor: pointer; padding: 0 2px; }
.sd-stage { display: flex; flex-direction: column; gap: 8px; }
.sd-views { display: flex; gap: 6px; flex-wrap: wrap; }
.sd-view-tab { border: 1px solid #ccc; background: #fff; border-radius: 4px; padding: 4px 10px; cursor: pointer; font-size: 13px; }
.sd-view-tab.active { background: #1b5e20; color: #fff; border-color: #1b5e20; }
#sd-canvas { border: 1px solid #ddd; border-radius: 6px; }
.sd-undo-row { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.sd-swatches { display: inline-flex; gap: 5px; }
.sd-swatch { width: 24px; height: 24px; border-radius: 50%; border: 2px solid #ddd; cursor: pointer; padding: 0; }
.sd-swatch.active { border-color: #1b5e20; box-shadow: 0 0 0 2px #1b5e2055; }
.sd-tools { min-width: 240px; flex: 1; display: flex; flex-direction: column; gap: 14px; }
.sd-tool-group { display: flex; flex-direction: column; gap: 6px; padding-bottom: 12px; border-bottom: 1px solid #eee; }
.sd-tool-group .sd-sub { font-weight: 400; color: #666; }
.sd-row { display: flex; gap: 4px; align-items: center; flex-wrap: wrap; }
.sd-tool-group input[type="text"], .sd-tool-group input[type="email"], .sd-tool-group input[type="number"], .sd-tool-group select { padding: 4px 6px; }
.sd-clipart-grid { display: flex; flex-wrap: wrap; gap: 4px; max-height: 110px; overflow-y: auto; }
.sd-clip { width: 40px; height: 40px; object-fit: contain; border: 1px solid #eee; border-radius: 4px; cursor: pointer; background: #fff; }
.sd-price { font-size: 13px; font-weight: 600; }
#sd-status { font-size: 13px; color: #1b5e20; min-height: 18px; }
.sd-consent { font-size: 11px; color: #888; }

.sd-ai-img { max-width: 220px; border-radius: 6px; margin-top: 6px; }

.sd-roster-row { gap: 4px; }
.sd-roster-row input { padding: 3px 5px; }
