.engraver-app { margin-top: 12px; }
.engraver-step { margin-bottom: 14px; }
.engraver-step-title { font-weight: 600; margin-bottom: 6px; }
.engraver-cats .engraver-cat-opt { }
.engraver-cats{
    display: flex;
    flex-wrap: wrap;
    gap: 20px 10px;
}

.engraver-fonts { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:8px; }
.engraver-font-option input { margin-right: 6px; }

.engraver-step.two-cols { display: flex; gap: 16px; align-items: flex-start; flex-wrap: wrap; }
.engraver-preview-col { flex: 1 1 60%; min-width: 320px; }
.engraver-lines-col { flex: 1 1 35%; min-width: 260px; }
#engraver-preview { width: 100%; height: auto; display:block; border:1px solid #ddd; background:#fafafa; }

.engraver-line { display: flex; align-items: center; gap: 3px; margin-bottom: 15px; flex-wrap: wrap;}
.engraver-line input[type="text"] { flex: 1 1 auto; width: calc(100% - 40px)}
.engraver-counter { color:#666; font-size: 12px; }

.engraver-icons .engraver-ico { border:1px solid #ddd; background:#fff; padding:3px 6px; border-radius:4px; margin-right:4px; cursor:pointer; }
.engraver-icons .engraver-ico:hover { background:#f6f6f6; }

.engraver-summary { margin-top:8px; padding:10px; border:1px dashed #bbb; border-radius:6px; background:#fffef7; }
.engraver-summary-title { margin-bottom:6px; }
.engraver-summary-list { margin:0; padding-left:18px; }
.engraver-summary .btn.btn-link { padding-left:0; }

.engraver-error { margin-top:8px; margin-bottom: 15px; padding:8px 10px; border-left:4px solid #d93025; background:#ffeceb; color:#a40000; border-radius:4px; font-size:13px; }
