/* Opportunities board + record (js/views/pipeline.js). Palette only via the shared variables. */

/* KPI tiles: five across, two per row on phones */
.opp-kpis{grid-template-columns:repeat(5,1fr)}

/* side toggle above the pipeline chooser */
.opp-chooser{display:flex;flex-direction:column;gap:10px;margin:22px 0 16px}
.opp-side button{min-width:96px;font-weight:600}
.opp-prov{font-weight:400;opacity:.75;font-size:12px}
.opp-pipes button.on .opp-prov{opacity:.9}

/* board */
.opp-board .col-b{min-height:120px}
.opp-col-empty{border:1px dashed var(--line);border-radius:12px;padding:14px 12px;font-size:12.5px;color:var(--muted-2);text-align:center}
.opp-card .top{gap:6px}
.opp-ref{font:500 11px/1 var(--og-font-title);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.opp-card .when{text-align:right}
.opp-pipe-m{font-size:11.5px;color:var(--muted-2);margin-top:2px}
.opp-est{font:600 11px/1 var(--og-font-alt);letter-spacing:.02em;color:var(--muted);text-transform:none;vertical-align:middle}
.opp-chans{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-top:8px}
.opp-chans .pill{font-size:11px;padding:3px 8px}
.opp-card .foot .pill{font-size:11px;padding:3px 8px}
.col-sum .opp-est{font-size:11px}

/* finance queue on the board */
.opp-fin-q{margin-bottom:18px}
.opp-fin-q .rows{margin:0 -4px}

/* earlier Broker Feed deals */
.opp-legacy{margin-top:22px;padding:14px 18px}
.opp-legacy summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap;cursor:pointer;list-style:none}
.opp-legacy summary::-webkit-details-marker{display:none}
.opp-legacy summary:after{content:"+";margin-left:auto;font-size:18px;color:var(--muted)}
.opp-legacy[open] summary:after{content:"–"}
.opp-legacy[open] summary{margin-bottom:10px}

/* form: the estimate checkbox sits inside .field, so undo the text-input styling for it */
#of-root .field .check{margin-top:10px}
#of-root .field .check input{-webkit-appearance:auto;appearance:auto;width:18px;height:18px;padding:0;border:0;box-shadow:none;flex:none}

/* record */
.opp-head{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.opp-value{margin-top:12px;font:500 28px/1 var(--og-font-title);letter-spacing:.04em;color:var(--ink)}
.opp-value em{font-style:normal;font-weight:200;color:var(--red)}
.opp-value .pill{vertical-align:middle;margin-left:8px}
.opp-value .opp-est{font-size:13px}
#op-stage button{font-size:12.5px;padding:7px 11px}
.opp-gate{margin:4px 0 14px;border-color:var(--red)}
.opp-gate .card-h{margin-bottom:8px}
.opp-line{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px;color:var(--ink-2);padding:6px 0}
.section .hint,.card .hint,.opp-fin .hint{font-size:12.5px;color:var(--muted);margin:6px 0}
.opp-docs{margin:8px -4px 4px}
.opp-docs .row{cursor:default}
.opp-docs .row:hover{background:transparent}
.opp-file{display:block;margin-top:3px}
.opp-file a{color:var(--red);cursor:pointer;text-decoration:underline;text-underline-offset:2px}
.opp-x{color:var(--muted-2)!important;text-decoration:none!important;margin-left:6px;font-size:12px}
.opp-x:hover{color:var(--red)!important}
.opp-up{cursor:pointer}
.opp-up input{display:none}
.opp-fin{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.opp-fin-panel{background:var(--red-soft);border:1px solid var(--red);border-radius:var(--rs);padding:14px 16px;margin-top:14px}
.opp-fin-panel .kicker{color:var(--red)}
.opp-mini .pill{font-size:11.5px}

@media(max-width:1180px){.opp-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1000px){
  .opp-kpis{grid-template-columns:1fr 1fr}
  .opp-chooser{margin:18px 0 12px}
  .opp-pipes{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .opp-pipes button{flex:none}
  .toolbar #opp-q{width:100%}
  .opp-board{grid-auto-columns:minmax(240px,82vw)}
  .opp-value{font-size:24px}
}
