/* V6.7 — Composição de Engenharia. Complemento funcional sem alterar a identidade visual da V6.6. */
.composition-modal-card{max-width:1180px;width:min(1180px,96vw)}
.composition-head-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.composition-meta-chip,.composition-mode-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:700;border:1px solid var(--line,#dfe4ea);background:#f8fafc;color:#475569}.composition-mode-badge.custom{background:#fff3e8;color:#9a4d00;border-color:#ffd5ad}.composition-mode-badge.base{background:#eef8f1;color:#24663a;border-color:#cce8d4}
.composition-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}.composition-toolbar .spacer{flex:1}.composition-dirty{font-size:12px;font-weight:700;color:#a15400;background:#fff6df;border:1px solid #f2d696;padding:7px 10px;border-radius:10px}
.composition-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 16px}.composition-summary-card{background:#f8fafc;border:1px solid #e3e8ef;border-radius:14px;padding:12px 14px}.composition-summary-card span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#718096;margin-bottom:5px}.composition-summary-card strong{font-size:18px;color:#1f2937}.composition-summary-card small{display:block;margin-top:4px;color:#718096}.composition-delta.up{color:#a93b2f!important}.composition-delta.down{color:#287a42!important}.composition-delta.neutral{color:#718096!important}
.composition-table-wrap{max-height:52vh;overflow:auto;border:1px solid #e3e8ef;border-radius:14px}.composition-table{width:100%;border-collapse:collapse}.composition-table th{position:sticky;top:0;z-index:2;background:#f6f8fb;color:#5d6878;font-size:11px;text-transform:uppercase;letter-spacing:.04em;text-align:left;padding:10px;border-bottom:1px solid #e3e8ef}.composition-table td{padding:10px;border-bottom:1px solid #edf0f4;vertical-align:top;font-size:12px}.composition-table tr:last-child td{border-bottom:0}.composition-desc{max-width:390px;line-height:1.35}.composition-ref{display:block;color:#9aa4b2;font-size:9px;margin-top:3px;max-width:170px;overflow:hidden;text-overflow:ellipsis}.comp-qty-input{min-width:80px;max-width:100px}.composition-custom-badge{background:#fff3e8!important;color:#9a4d00!important;border-color:#ffd5ad!important}
.composition-note{padding:10px 12px;border-radius:12px;background:#f7f8fa;border:1px solid #e4e8ee;color:#616b79;font-size:12px;margin:8px 0}.composition-picker{margin-top:14px;border:1px solid #dfe5ec;border-radius:14px;background:#fff;padding:14px}.composition-picker-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.composition-picker-head strong{font-size:14px}.composition-picker-search{width:100%;margin-bottom:10px}.component-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:260px;overflow:auto}.component-result{display:flex;justify-content:space-between;gap:12px;text-align:left;padding:10px 12px;border:1px solid #e2e7ed;border-radius:12px;background:#fff;cursor:pointer}.component-result:hover{border-color:#b71924;background:#fff8f8}.component-result div{display:grid;gap:3px}.component-result strong{font-size:12px;color:#243142}.component-result span{font-size:11px;color:#66717f}.component-result small{font-size:10px;color:#929aa5}.component-result em{font-style:normal;font-size:11px;font-weight:700;color:#49606f;white-space:nowrap}
@media(max-width:900px){.composition-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.component-results{grid-template-columns:1fr}.composition-modal-card{width:98vw}.composition-table-wrap{max-height:56vh}}
