.deal-bom-host{min-height:150px}
.bom-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.bom-summary h4{margin:3px 0 0;font-size:18px}
.bom-coverage{display:grid;justify-items:end;gap:2px}
.bom-coverage strong{font-size:22px;color:#7eafff}.bom-coverage small{color:var(--muted);font-size:10px}
.bom-group{margin-top:12px;border:1px solid #202630;border-radius:14px;overflow:hidden;background:#0d1015}
.bom-group-head{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#111722;border-bottom:1px solid #202630}
.bom-group-head>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#172236;color:#8db5ff}
.bom-group-head>div{display:grid}.bom-group-head small{color:var(--muted);font-size:10px}
.bom-lines{display:grid}.bom-line{display:grid;grid-template-columns:130px minmax(0,1fr) 110px;gap:12px;align-items:center;padding:9px 12px;border-top:1px solid #1d232c}
.bom-line:first-child{border-top:0}.bom-code{font:11px ui-monospace,SFMono-Regular,Consolas,monospace;color:#9bb9e9}
.bom-main{min-width:0;display:grid}.bom-main b,.bom-main small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bom-main small{font-size:10px;color:var(--muted);margin-top:2px}
.bom-line-tail{display:grid;justify-items:end;gap:2px}.bom-line-tail strong{font-size:12px}.bom-line-tail small{font-size:9px;color:var(--muted)}
.bom-costing{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 12px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.025);margin-bottom:12px}.bom-costing>div{display:grid;gap:2px}.bom-costing b{font-size:12px}.bom-costing small{font-size:9px;color:var(--muted)}.bom-costing>strong{font-size:14px;white-space:nowrap}.bom-costing.ready{border-color:rgba(61,190,124,.25);background:rgba(61,190,124,.05)}.bom-costing.pending{border-color:rgba(229,185,79,.22);background:rgba(229,185,79,.04)}
.bom-missing{margin-top:12px;border:1px solid rgba(229,185,79,.32);border-radius:14px;overflow:hidden;background:#17140e}
.bom-missing-head{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;color:#e5c66d;border-bottom:1px solid rgba(229,185,79,.18)}
.bom-missing-head span{min-width:24px;height:24px;border-radius:99px;display:grid;place-items:center;background:#2a2311;font-size:10px}
.bom-missing-row{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;border-top:1px solid rgba(229,185,79,.12)}
.bom-missing-row:first-of-type{border-top:0}.bom-missing-row div{display:grid}.bom-missing-row small{color:var(--muted);font-size:10px}.bom-missing-row strong{font-size:11px}
.bom-missing-actions{padding:10px 12px;border-top:1px solid rgba(229,185,79,.16)}
.bom-document-card{border-color:rgba(82,132,216,.35)}
@media(max-width:780px){.bom-summary{flex-direction:column}.bom-coverage{justify-items:start}.bom-costing{align-items:flex-start;flex-direction:column}.bom-line{grid-template-columns:95px minmax(0,1fr)}.bom-line-tail{grid-column:2;justify-items:start}.bom-code{grid-row:1/3}}
.bom-evidence{margin-top:12px;border:1px solid rgba(126,175,255,.28);border-radius:14px;overflow:hidden;background:rgba(12,18,29,.72)}
.bom-evidence-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-bottom:1px solid rgba(126,175,255,.15)}
.bom-evidence-head>div{display:grid;gap:2px}.bom-evidence-head small{color:var(--muted);font-size:10px}
.bom-evidence-head>span{min-width:25px;height:25px;border-radius:999px;display:grid;place-items:center;background:rgba(126,175,255,.13);color:#9fc2ff;font-size:10px}
.bom-evidence-row{padding:10px 12px;border-top:1px solid rgba(126,175,255,.10);display:grid;gap:7px}.bom-evidence-row:first-of-type{border-top:0}
.bom-evidence-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.bom-evidence-title>div{display:grid;gap:2px}.bom-evidence-title small{color:var(--muted);font-size:10px}
.bom-evidence-title>strong{font-size:9px;letter-spacing:.02em;padding:4px 7px;border-radius:999px;white-space:nowrap}.bom-evidence-title>strong.missing{background:rgba(229,111,111,.13);color:#ef9b9b}.bom-evidence-title>strong.partial{background:rgba(229,185,79,.14);color:#e5c66d}
.bom-evidence-source{color:#9fc2ff!important;font-size:10px}
.bom-evidence-required{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.bom-evidence-required>small{color:var(--muted);font-size:9px;margin-right:2px}.bom-evidence-required>span{font-size:9px;padding:3px 6px;border:1px solid rgba(255,255,255,.10);border-radius:7px;background:rgba(255,255,255,.03)}
.bom-production-block{padding:11px 12px}.bom-production-block>b{color:#e5c66d}.bom-production-block p{margin:5px 0;color:var(--muted);font-size:10px}
@media(max-width:780px){.bom-evidence-title{flex-direction:column;gap:6px}}
.bom-evidence-stats{display:flex;gap:7px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid rgba(126,175,255,.12)}
.bom-evidence-stats span{font-size:9px;padding:4px 7px;border-radius:7px;background:rgba(126,175,255,.07);color:var(--muted)}
.bom-evidence-stats b{color:#c6d9ff}
.bom-evidence-required{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px!important}
.bom-evidence-required>small{grid-column:1/-1}
.bom-evidence-requirement{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 8px;border:1px solid rgba(255,255,255,.08);border-radius:9px;background:rgba(255,255,255,.025)}
.bom-evidence-requirement>div{display:grid;gap:2px;min-width:0}.bom-evidence-requirement b{font-size:10px}.bom-evidence-requirement small{font-size:9px;color:var(--muted)}
.bom-evidence-requirement.verified{border-color:rgba(61,190,124,.28);background:rgba(61,190,124,.06)}
.bom-evidence-requirement.submitted{border-color:rgba(229,185,79,.28);background:rgba(229,185,79,.05)}
.bom-evidence-requirement.rejected{border-color:rgba(229,111,111,.28);background:rgba(229,111,111,.05)}
.bom-evidence-upload{flex:0 0 auto;cursor:pointer;font-size:9px;font-weight:700;color:#9fc2ff;border:1px dashed rgba(126,175,255,.35);border-radius:7px;padding:4px 6px}
.bom-evidence-upload:hover{background:rgba(126,175,255,.08)}
.bom-evidence-documents{display:grid;gap:5px}.bom-evidence-documents>small{font-size:9px;color:var(--muted)}
.bom-evidence-document{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 8px;border:1px solid rgba(255,255,255,.07);border-radius:9px;background:rgba(255,255,255,.02)}
.bom-evidence-document>div:first-child{display:grid;gap:2px;min-width:0}.bom-evidence-document b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bom-evidence-document small{font-size:9px;color:var(--muted)}
.bom-evidence-document small .verified{color:#77d6a6}.bom-evidence-document small .submitted{color:#e5c66d}.bom-evidence-document small .rejected{color:#ef9b9b}
.bom-evidence-document-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}.bom-evidence-document-actions>a{font-size:9px;font-weight:700;color:#9fc2ff;text-decoration:none}.bom-evidence-document-actions>a:hover{text-decoration:underline}
.bom-evidence-review{display:flex;gap:5px}.bom-evidence-review .btn{padding:4px 6px;font-size:9px}.bom-evidence-review .danger{color:#ef9b9b;border-color:rgba(229,111,111,.32)}
.bom-complete-module{justify-self:start;margin-top:2px}
@media(max-width:780px){.bom-evidence-required{grid-template-columns:1fr}.bom-evidence-document{align-items:flex-start;flex-direction:column}.bom-evidence-document-actions{justify-content:flex-start}}
.bom-evidence-row-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
.product-spec-focus{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.product-spec-focus .btn{margin-left:auto}
.bom-workflow-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:10px 12px;border-bottom:1px solid rgba(126,175,255,.12)}
.bom-workflow-stats span{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:7px 8px;border-radius:9px;font-size:9px;border:1px solid rgba(255,255,255,.07)}
.bom-workflow-stats span.components{background:rgba(229,111,111,.06);color:#efb0b0}.bom-workflow-stats span.documents{background:rgba(229,185,79,.06);color:#ead28d}.bom-workflow-stats span.review{background:rgba(126,175,255,.07);color:#b7d1ff}.bom-workflow-stats span.ready{background:rgba(61,190,124,.07);color:#8ce0b5}
.bom-workflow-stats b{font-size:14px;color:inherit}
.bom-evidence-badges{display:flex;gap:5px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.bom-evidence-badges strong,.bom-evidence-badges em{font-size:9px;letter-spacing:.02em;padding:4px 7px;border-radius:999px;white-space:nowrap;font-style:normal}.bom-evidence-badges strong.missing{background:rgba(229,111,111,.13);color:#ef9b9b}.bom-evidence-badges strong.partial{background:rgba(229,185,79,.14);color:#e5c66d}.bom-evidence-badges em.components{background:rgba(229,111,111,.10);color:#efb0b0}.bom-evidence-badges em.documents{background:rgba(229,185,79,.10);color:#ead28d}.bom-evidence-badges em.review{background:rgba(126,175,255,.10);color:#b7d1ff}.bom-evidence-badges em.ready{background:rgba(61,190,124,.10);color:#8ce0b5}
@media(max-width:900px){.bom-workflow-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.bom-workflow-stats{grid-template-columns:1fr}.bom-evidence-badges{justify-content:flex-start}}
.bom-equivalence-source{font-size:9px;color:#8bc6ff;padding:4px 7px;border:1px solid rgba(126,175,255,.25);border-radius:7px;background:rgba(126,175,255,.06)}
