/* Opportunities Pipeline (piece 8c) -- web/opp-pipeline.js */
#view-opp-pipeline .op-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 12px}
#view-opp-pipeline .op-bar label{font-size:12.5px;color:var(--muted);display:flex;gap:6px;align-items:center}
#view-opp-pipeline .op-total{font-size:12.5px;color:var(--muted)}
#view-opp-pipeline .op-note{font-size:12.5px;background:var(--warn-bg,#fff7e6);border-radius:8px;padding:7px 10px;margin:0 0 10px}
#view-opp-pipeline .op-err,.op-scenarios .df-err{color:var(--no,#c5221f);font-size:12.5px}
#view-opp-pipeline .op-board{display:flex;gap:10px;overflow-x:auto;padding-bottom:10px;align-items:flex-start;max-width:100%}
#view-opp-pipeline .op-col{flex:0 0 250px;background:var(--panel,#f7f7f5);border:1px solid var(--line,#e5e5e5);border-radius:10px;padding:8px;min-height:80px}
#view-opp-pipeline .op-col-closed{opacity:.85;background:#f2f2f2}
#view-opp-pipeline .op-col-head{font-weight:700;font-size:12.5px;text-transform:uppercase;letter-spacing:.4px;margin-bottom:6px}
#view-opp-pipeline .op-count{font-weight:600;color:var(--muted)}
#view-opp-pipeline .op-empty{font-size:12px;color:var(--muted)}
#view-opp-pipeline .op-card{background:#fff;border:1px solid var(--line,#e5e5e5);border-radius:8px;padding:8px;margin-bottom:7px;cursor:pointer;font-size:12.5px}
#view-opp-pipeline .op-card:hover{border-color:var(--gold,#c9a227)}
#view-opp-pipeline .op-card-top{display:flex;gap:6px;align-items:flex-start}
#view-opp-pipeline .op-title{word-break:break-word}
#view-opp-pipeline .op-grade{flex:0 0 auto;font-weight:800;border-radius:5px;padding:0 6px;background:#eee}
#view-opp-pipeline .op-g-A,#view-opp-pipeline .op-g-B{background:#e6f4ea;color:#1e8e3e}
#view-opp-pipeline .op-g-C{background:#fff4d6;color:#8a5a00}
#view-opp-pipeline .op-g-D,#view-opp-pipeline .op-g-F{background:#fce8e6;color:#c5221f}
#view-opp-pipeline .op-meta{color:var(--muted);margin-top:4px}
#view-opp-pipeline .op-chip{display:inline-block;font-size:11px;background:var(--muted-bg,#f0f0f0);border-radius:8px;padding:1px 7px}
#view-opp-pipeline .op-lj{background:#fdf1d8}
#view-opp-pipeline .op-derived{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--gold-dk,#8a6d00);border-bottom:1px dotted currentColor}
#view-opp-pipeline .op-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
#view-opp-pipeline .op-link{font:inherit;font-size:11.5px;background:none;border:1px solid var(--line,#ddd);border-radius:6px;padding:2px 7px;cursor:pointer}
#view-opp-pipeline .op-move-form{display:flex;flex-direction:column;gap:6px;margin-top:8px;border-top:1px solid var(--line,#eee);padding-top:8px;cursor:default}
#view-opp-pipeline .op-move-form select,#view-opp-pipeline .op-move-form input{max-width:100%}
#view-opp-pipeline .op-hist-h{font-weight:700;margin-top:4px}
#view-opp-pipeline .op-hist-row{font-size:11.5px;color:var(--muted)}
#view-opp-pipeline .op-derivation{margin-top:12px;font-size:12.5px}
#view-opp-pipeline .op-derivation table{border-collapse:collapse;margin:6px 0;max-width:100%}
#view-opp-pipeline .op-derivation td,#view-opp-pipeline .op-derivation th{border-top:1px solid var(--line,#eee);padding:4px 8px;text-align:left;vertical-align:top}
.op-scenarios .op-scn{overflow-x:auto}
.op-scenarios table.op-cmp{border-collapse:collapse;width:100%;font-size:12px;margin:6px 0}
.op-scenarios table.op-cmp td,.op-scenarios table.op-cmp th{border:1px solid var(--line,#eee);padding:4px 6px;vertical-align:top;text-align:left}
.op-scenarios tr.op-differs td{background:#fff8e1}
.op-scenarios .op-scn-form textarea{width:100%;box-sizing:border-box;font:inherit;font-size:12px}
@media (max-width:640px){#view-opp-pipeline .op-col{flex-basis:78vw}}

/* Empty stages collapse into one strip; the board wraps instead of scrolling sideways. */
#view-opp-pipeline .op-board{flex-wrap:wrap;overflow-x:visible}
#view-opp-pipeline .op-col{flex:1 1 220px;min-width:0;max-width:100%}
#view-opp-pipeline .op-empties{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 10px;font-size:12.5px;color:var(--muted,#6b7280)}
#view-opp-pipeline .op-empties-l{font-weight:700}
#view-opp-pipeline .op-empty-chip{border:1px dashed var(--line,#ccc);border-radius:999px;padding:2px 9px}
#view-opp-pipeline .op-why{font-size:12.5px;color:var(--muted,#6b7280);margin:2px 0 4px}
#view-opp-pipeline .op-adv{margin-top:12px}
#view-opp-pipeline .op-adv > summary{cursor:pointer;font-weight:600}
