/* Esteira operacional da Venda (ViewVenda) e miniesteira da listagem. */
.venda-esteira,.venda-entrega__card { --ve-success:#08b876; --ve-warning:#e0a800; --ve-info:#2f8cff; --ve-danger:#e5485d; --ve-gray:#94a3b8; --ve-trilho:#cbd5e1; }
.dark .venda-esteira,.dark .venda-entrega__card,.dark .venda-mini-esteira { --ve-success:#08d68a; --ve-warning:#ffc522; --ve-info:#4ea4ff; --ve-danger:#fb7185; --ve-gray:#5b6f86; --ve-trilho:#24394d; }
.venda-mini-esteira { --ve-success:#08b876; --ve-warning:#e0a800; --ve-info:#2f8cff; --ve-danger:#e5485d; --ve-gray:#94a3b8; --ve-trilho:#cbd5e1; }

.venda-esteira,.venda-entrega__card { min-width:0; padding:1.15rem 1.25rem; border:1px solid var(--app-border,#d7eaff); border-radius:.75rem; background:var(--dash-surface,#fff); box-shadow:var(--dash-surface-shadow); color:var(--app-text); }
.dark .venda-esteira,.dark .venda-entrega__card { border-color:#123c55; background:linear-gradient(115deg,#0c2132,#041522); }
.venda-esteira__cabecalho h2,.venda-entrega__cabecalho h3 { margin:0; font-size:.95rem; font-weight:600; }
.venda-esteira__cabecalho p { margin:.25rem 0 0; font-size:.8rem; color:var(--app-secondary); }

.venda-esteira__trilha { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); margin:1.25rem 0 0; padding:0; list-style:none; }
.venda-esteira__etapa { position:relative; display:flex; flex-direction:column; align-items:center; gap:.6rem; min-width:0; padding:0 .35rem; text-align:center; }
.venda-esteira__etapa:not(:last-child)::after { content:""; position:absolute; top:1.2rem; left:calc(50% + 1.5rem); width:calc(100% - 3rem); height:2px; background:var(--ve-trilho); }
.venda-esteira__etapa[data-estado="feito"]:not(:last-child)::after { background:var(--ve-success); }

.venda-esteira__marcador { display:flex; flex:0 0 2.4rem; align-items:center; justify-content:center; width:2.4rem; height:2.4rem; border:2px solid var(--ve-gray); border-radius:50%; color:var(--ve-gray); background:var(--app-surface,#fff); }
.dark .venda-esteira__marcador { background:#071825; }
.venda-esteira__marcador .fi-icon { width:1.15rem; height:1.15rem; }
[data-estado="feito"] > .venda-esteira__marcador { border-color:var(--ve-success); background:var(--ve-success); color:#fff; }
[data-estado="cancelado"] > .venda-esteira__marcador { border-color:var(--ve-danger); color:var(--ve-danger); }
[data-estado="bloqueado"] > .venda-esteira__marcador { border-style:dashed; opacity:.75; }
[data-estado="atual"][data-cor="warning"] > .venda-esteira__marcador { border-color:var(--ve-warning); color:var(--ve-warning); box-shadow:0 0 0 4px color-mix(in srgb,var(--ve-warning) 18%,transparent); }
[data-estado="atual"][data-cor="info"] > .venda-esteira__marcador { border-color:var(--ve-info); color:var(--ve-info); box-shadow:0 0 0 4px color-mix(in srgb,var(--ve-info) 18%,transparent); }
[data-estado="atual"][data-cor="success"] > .venda-esteira__marcador { border-color:var(--ve-success); color:var(--ve-success); }
[data-estado="atual"][data-cor="gray"] > .venda-esteira__marcador { border-color:var(--ve-gray); color:var(--app-text); }

.venda-esteira__texto { display:flex; flex-direction:column; gap:.15rem; min-width:0; font-size:.75rem; color:var(--app-secondary); }
.venda-esteira__texto strong { font-size:.82rem; font-weight:600; color:var(--app-text); }
.venda-esteira__texto time { font-variant-numeric:tabular-nums; }
.venda-esteira__autor { font-size:.7rem; }
[data-estado="pendente"] .venda-esteira__texto strong,[data-estado="bloqueado"] .venda-esteira__texto strong { color:var(--app-secondary); font-weight:500; }

.venda-entrega { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.venda-entrega__card--historico { grid-column:1 / -1; }
.venda-entrega__cabecalho { display:flex; align-items:center; justify-content:space-between; gap:.6rem; margin-bottom:1rem; }
.venda-entrega__etapas,.venda-entrega__historico { display:grid; gap:.9rem; margin:0; padding:0; list-style:none; }
.venda-entrega__etapas li { display:flex; align-items:flex-start; gap:.8rem; }
.venda-entrega__etapas li .venda-esteira__marcador { flex-basis:2rem; width:2rem; height:2rem; }
.venda-entrega__etapas strong,.venda-entrega__historico strong { font-size:.82rem; font-weight:600; }
.venda-entrega__etapas p,.venda-entrega__historico p,.venda-entrega__aviso,.venda-entrega__vazio,.venda-entrega__concluida,.venda-entrega__contato { margin:.15rem 0 0; font-size:.75rem; line-height:1.5; color:var(--app-secondary); }
.venda-entrega__data { font-variant-numeric:tabular-nums; }
.venda-entrega__acao { margin-top:1.1rem; }
.venda-entrega__aviso { margin-top:1.1rem; padding:.6rem .75rem; border:1px dashed var(--app-border); border-radius:.5rem; }
.venda-entrega__concluida { margin-top:1.1rem; color:var(--ve-success); }
.venda-entrega__endereco { font-style:normal; font-size:.85rem; line-height:1.6; }
.venda-entrega__historico li { padding-left:.85rem; border-left:2px solid var(--ve-trilho); }

/* Miniesteira (componente x-vendas.esteira-mini): listagem (Crédito + 5 etapas) e Dashboard (5 pontos). */
.venda-mini-esteira { display:inline-grid; grid-template-columns:repeat(var(--ve-pontos,5),2.75rem); align-items:start; margin:0; padding:0; list-style:none; }
.venda-mini-esteira__ponto { position:relative; display:flex; flex-direction:column; align-items:center; gap:.3rem; }
.venda-mini-esteira__ponto:not(:last-child)::after { content:""; position:absolute; top:.5rem; left:calc(50% + .6rem); width:calc(100% - 1.2rem); height:2px; background:var(--ve-trilho); }
.venda-mini-esteira__ponto[data-estado="feito"]:not(:last-child)::after { background:var(--ve-success); }
.venda-mini-esteira__bola { display:flex; align-items:center; justify-content:center; width:1.05rem; height:1.05rem; border:2px solid var(--ve-gray); border-radius:50%; }
.venda-mini-esteira__bola .fi-icon { width:.7rem; height:.7rem; }
[data-estado="feito"] > .venda-mini-esteira__bola { border-color:var(--ve-success); background:var(--ve-success); color:#fff; }
[data-estado="bloqueado"] > .venda-mini-esteira__bola { border-style:dashed; opacity:.7; }
[data-estado="cancelado"] > .venda-mini-esteira__bola { border-color:var(--ve-danger); color:var(--ve-danger); }
[data-estado="atual"][data-cor="warning"] > .venda-mini-esteira__bola { border-color:var(--ve-warning); background:color-mix(in srgb,var(--ve-warning) 25%,transparent); }
[data-estado="atual"][data-cor="info"] > .venda-mini-esteira__bola { border-color:var(--ve-info); background:color-mix(in srgb,var(--ve-info) 25%,transparent); }
[data-estado="atual"][data-cor="success"] > .venda-mini-esteira__bola { border-color:var(--ve-success); }
/* Etapa Crédito: risco assumido, reprovado, aguardando (relógio) e não avaliado (neutro, tracejado). */
[data-estado="risco"] > .venda-mini-esteira__bola { border-color:var(--ve-warning); background:var(--ve-warning); color:#fff; }
[data-estado="reprovado"] > .venda-mini-esteira__bola { border-color:var(--ve-danger); background:var(--ve-danger); color:#fff; }
[data-etapa="credito"][data-estado="atual"] > .venda-mini-esteira__bola { color:var(--ve-warning); }
[data-estado="nao_avaliado"] > .venda-mini-esteira__bola { border-style:dashed; color:var(--ve-gray); }
.venda-mini-esteira__ponto[data-estado="risco"]:not(:last-child)::after { background:var(--ve-warning); }
.venda-mini-esteira__rotulo { font-size:.62rem; color:var(--app-secondary); white-space:nowrap; }
[data-estado="atual"] > .venda-mini-esteira__rotulo,[data-estado="feito"] > .venda-mini-esteira__rotulo,[data-estado="risco"] > .venda-mini-esteira__rotulo,[data-estado="reprovado"] > .venda-mini-esteira__rotulo { color:var(--app-text); }

@media (max-width:900px) {
    .venda-entrega { grid-template-columns:minmax(0,1fr); }
    .venda-esteira__trilha { grid-template-columns:minmax(0,1fr); gap:1rem; }
    .venda-esteira__etapa { flex-direction:row; align-items:flex-start; text-align:left; padding:0; }
    .venda-esteira__etapa:not(:last-child)::after { top:2.6rem; left:1.15rem; width:2px; height:calc(100% - 1.8rem); }
    .venda-esteira__texto { padding-top:.25rem; }
}

/* Listagem: a esteira (6 pontos) não quebra linha nem encolhe. */
.venda-coluna-esteira { white-space:nowrap; min-width:17rem; }

/* Listagem: código pequeno acima do nome do cliente (mesma coluna). */
/* Nome do cliente longo quebra linha em vez de esticar a tabela. */
.venda-coluna-codigo-cliente { max-width:18rem; min-width:12rem; }
.venda-coluna-codigo-cliente .fi-ta-text-item { white-space:normal; overflow-wrap:anywhere; }
.venda-coluna-codigo-cliente .fi-ta-text-description { font-size:.72rem; font-weight:600; letter-spacing:.02em; color:var(--app-secondary); font-variant-numeric:tabular-nums; }

/* Listagem: botão de próxima ação em cima, "Visualizar" + contrato embaixo. */
.fi-ta-actions:has(.venda-acao-proxima) { flex-wrap:wrap; justify-content:flex-end; row-gap:.4rem; max-width:11.5rem; margin-left:auto; }
.fi-ta-actions .venda-acao-proxima { flex:1 0 100%; justify-content:center; white-space:nowrap; }
