/* Telas de produto e governanca: Release Center, Marketing Center, Financial Center, Riscos e Decisoes. */

/* Avisos ------------------------------------------------------------------------- */
.notice { border: 1px solid var(--amber); background: var(--amber-soft); color: var(--ink); border-radius: var(--radius); padding: 10px 14px; font-size: 13px; margin-bottom: 16px; }
.notice.info { border-color: var(--blue); background: var(--blue-soft); margin-bottom: 0; }
.notice b { font-weight: 600; }

/* Esteira de lojas ----------------------------------------------------------------- */
.pipe-tracks { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.pipe-track { border: 1px solid var(--line); border-radius: var(--radius); padding: 12px 14px; background: var(--paper); min-width: 0; }
.pipe-track > header { display: flex; align-items: center; gap: 12px; }
.pipe-track .pct { font-size: 24px; font-weight: 650; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; min-width: 56px; }
.pipe .step { text-align: left; }
.pipe .step:hover { border-color: var(--blue); }
.pipe .step .code { margin-left: 2px; }
.pipe .stage-lbl:first-child { margin-top: 0; }

/* Funil de campanhas ---------------------------------------------------------------- */
.funnel { display: grid; grid-template-columns: 150px 1fr 44px; gap: 8px 10px; align-items: center; font-size: 13px; }
.funnel .n { text-align: right; font-variant-numeric: tabular-nums; font-weight: 600; }
.funnel .bar { height: 14px; border-radius: 3px; }

/* Calendario editorial ------------------------------------------------------------- */
.cal-head { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; flex-wrap: wrap; }
.cal-head h3 { font-size: 15px; min-width: 160px; text-transform: capitalize; }
.cal { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 3px; }
.cal .wd { font-size: 11px; color: var(--ink-3); text-align: center; padding: 4px 0; }
.cal .day { min-height: 78px; border: 1px solid var(--line); border-radius: 4px; padding: 4px; font-size: 11px; background: var(--paper); min-width: 0; }
.cal .day.off { background: var(--paper-2); opacity: .55; }
.cal .day.today { border-color: var(--blue); box-shadow: inset 0 0 0 1px var(--blue); }
.cal .day .n { color: var(--ink-3); font-weight: 600; }
.cal .item { display: block; width: 100%; margin-top: 3px; padding: 2px 5px; border-radius: 3px; background: var(--blue-soft); color: var(--blue); cursor: pointer; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; border: 0; border-left: 3px solid var(--blue); text-align: left; font-size: 11px; }
.cal .item.publicado { background: var(--green-soft); color: var(--green); border-left-color: var(--green); }
.cal .item.aprovado { background: var(--violet-soft); color: var(--violet); border-left-color: var(--violet); }
.cal .item.rascunho { background: var(--amber-soft); color: var(--amber); border-left-color: var(--amber); }
.cal .item.ideia { background: var(--paper-2); color: var(--ink-2); border-left-color: var(--line-2); }
.cal .item.cancelado { background: var(--paper-2); color: var(--ink-3); border-left-color: var(--line-2); text-decoration: line-through; }
.cal-legend { display: flex; gap: 10px; flex-wrap: wrap; font-size: 11px; color: var(--ink-3); margin-top: 8px; }
.cal-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 2px; vertical-align: -1px; margin-right: 4px; }

/* Financeiro ------------------------------------------------------------------------- */
.fin-kinds { display: flex; flex-direction: column; gap: 14px; }
.fin-kinds .panel > header .sum { font-size: 12px; color: var(--ink-3); font-variant-numeric: tabular-nums; }
.cash-month { border: 1px solid var(--line); border-radius: var(--radius); margin-bottom: 10px; }
.cash-month > header { padding: 8px 12px; background: var(--paper-2); border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; font-weight: 600; font-size: 13px; text-transform: capitalize; }
.cash-month > header .sum { font-variant-numeric: tabular-nums; }
.cash-month .list li { padding: 6px 12px; font-size: 13px; }
.cash-month .amt { font-variant-numeric: tabular-nums; white-space: nowrap; }

/* Riscos e decisoes --------------------------------------------------------------- */
.matrix-wrap { display: flex; gap: 24px; align-items: flex-start; flex-wrap: wrap; }
.matrix-wrap .legend { font-size: 12px; color: var(--ink-3); display: flex; flex-direction: column; gap: 6px; min-width: 200px; }
.matrix-wrap .legend i { display: inline-block; width: 12px; height: 12px; border-radius: 2px; vertical-align: -2px; margin-right: 6px; }
.risk-matrix { flex: 1 1 320px; }
.risk-matrix .cell { border: 2px solid transparent; }
.risk-matrix .cell:hover { border-color: var(--blue); }
.risk-matrix .cell.active { border-color: var(--ink); }
.risk-matrix .cell.zero { color: var(--ink-3); font-weight: 400; }
.risk-matrix .ax.y { padding-right: 4px; writing-mode: horizontal-tb; }
.score { font-weight: 650; font-variant-numeric: tabular-nums; }
.score.l3 { color: var(--red); } .score.l2 { color: var(--amber); } .score.l1 { color: var(--green); }
.late { color: var(--red); font-weight: 600; }
.tab-filters { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 14px; }
.tab-filters select, .tab-filters input { padding: 6px 9px; border: 1px solid var(--line-2); border-radius: var(--radius); background: var(--paper); font-size: 13px; }
.tab-filters .count { color: var(--ink-3); font-size: 12px; margin-left: auto; }

/* Responsivo --------------------------------------------------------------------------- */
@media (max-width: 960px) {
  .pipe-tracks { grid-template-columns: 1fr; }
  .cal .day { min-height: 46px; padding: 2px 3px; }
  .cal .item { font-size: 10px; padding: 1px 3px; }
  .funnel { grid-template-columns: 110px 1fr 36px; }
  .risk-matrix { max-width: 100%; }
}
