/* Quote builder - one card per line item; description on its own row on narrow frames. */
.qc-items { display: grid; gap: 8px; }
.qc-item {
    display: grid; grid-template-columns: minmax(0, 4rem) minmax(0, 1fr) auto; gap: 6px 8px; align-items: end;
    padding: 8px 10px; border: 1px solid var(--e-line); border-radius: 10px; background: var(--e-surface);
}
.qc-desc { grid-column: 1 / -1; }
.qc-end { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; min-width: 0; }
.qc-line { font-weight: 650; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; text-align: right; }
.qc-remove { padding: 4px 10px; font-size: .85em; }
.qc-add { margin: 8px 0 10px; }
.e-form.qc-totals { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); margin-bottom: 4px; }
@media (min-width: 560px) {
    .qc-item { grid-template-columns: minmax(0, 1fr) 4.5rem 7.5rem auto; }
    .qc-desc { grid-column: auto; }
    .qc-end { min-width: 6rem; }
}
html[data-compact="1"] .qc-item { padding: 6px 8px; }
