/* ══════════════════════════════════════════════════════════════
   AMBIENTE MASP — visual (Etapa 4A)
   Base: classes do Pós-vendas (pv-*, em posvendas.css) e do portal
   (.page-header, .cad-card, .cad-field, .hist-table, .manut-tab...).
   Cores SEMPRE pelas variáveis do :root.
══════════════════════════════════════════════════════════════ */

/* Paleta das situações */
.masp-cor-azul{background:var(--azul-light);color:var(--azul);border-color:var(--azul)}
.masp-cor-verde{background:var(--verde-bg);color:var(--verde);border-color:var(--verde-brd)}
.masp-cor-vermelho{background:var(--verm-bg);color:var(--vermelho);border-color:var(--verm-brd)}
.masp-cor-ouro{background:#FFF8E1;color:var(--ouro-dark);border-color:var(--ouro)}
.masp-cor-laranja{background:#FFF4E5;color:var(--laranja);border-color:var(--laranja)}
.masp-cor-cinza{background:var(--cinza-card);color:var(--txt-muted);border-color:var(--brd)}
.masp-borda-azul{border-left-color:var(--azul)}
.masp-borda-verde{border-left-color:var(--verde)}
.masp-borda-vermelho{border-left-color:var(--vermelho)}
.masp-borda-ouro{border-left-color:var(--ouro)}
.masp-borda-laranja{border-left-color:var(--laranja)}
.masp-borda-cinza{border-left-color:var(--txt-muted)}

/* Método (FSP / A3 / KAIZEN) */
.masp-metodo{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.4px;padding:3px 8px;border-radius:6px;border:1.5px solid var(--brd);background:var(--cinza-card);color:var(--azul)}
.masp-metodo-a3{background:var(--azul-light);border-color:var(--azul-mid)}
.masp-metodo-kaizen{background:var(--verde-bg);color:var(--verde);border-color:var(--verde-brd)}

/* Lista */
.masp-filtros .pv-busca{grid-column:span 2}
.masp-tabela td{vertical-align:middle}
.masp-alerta-mini{font-size:11px;font-weight:700;color:var(--ouro-dark);margin-top:4px}

/* Formulário */
.masp-form .cad-card{margin-bottom:14px}
.masp-botoes{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:10px;max-width:520px}
.masp-botao{min-height:48px;border-radius:12px;border:2px solid var(--brd);background:white;font:inherit;font-size:15px;font-weight:800;color:var(--txt);cursor:pointer;letter-spacing:.5px}
.masp-botao:hover{border-color:var(--azul)}
.masp-botao.ativo{background:var(--grad-azul);border-color:var(--azul);color:white;box-shadow:0 3px 10px rgba(2,43,91,.25)}
.masp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.masp-chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:99px;background:var(--cinza-card);border:1.5px solid var(--brd);color:var(--txt)}
.masp-chip.usuario{background:var(--azul-light);border-color:var(--azul-light);color:var(--azul)}
.masp-chip button{border:none;background:none;cursor:pointer;color:inherit;padding:0 0 0 2px;font-size:12px}
.masp-part-add{display:flex;gap:8px}
.masp-part-add input{flex:1;min-width:0}
.masp-pv-res{display:flex;flex-direction:column;gap:4px;margin-top:6px;max-height:240px;overflow:auto}
.masp-pv-op{text-align:left;border:1.5px solid var(--brd);background:white;border-radius:8px;padding:8px 10px;font:inherit;font-size:13px;cursor:pointer;color:var(--txt)}
.masp-pv-op:hover{border-color:var(--azul);background:var(--azul-light)}
.masp-pv-escolhido{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;border-radius:10px;background:var(--azul-light);color:var(--azul);font-size:13.5px}
.masp-destaque{border-left:5px solid var(--ouro)}
.masp-obrig{color:var(--ouro-dark)}
.masp-barra-salvar{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;position:sticky;bottom:0;padding:12px 0;background:linear-gradient(transparent, var(--cinza-bg) 30%);z-index:5}

/* Detalhe */
.masp-acoes{display:flex;gap:8px;flex-wrap:wrap;margin:-6px 0 16px}
.masp-acoes:empty{display:none}
.masp-resposta{border-radius:12px;padding:14px 16px;margin-bottom:16px;border:1.5px solid var(--ouro);background:#FFF8E1}
.masp-resposta-irregularidade{border-color:var(--vermelho);background:var(--verm-bg)}
.masp-resposta-tit{font-weight:800;margin-bottom:6px;color:var(--ouro-dark)}
.masp-resposta-irregularidade .masp-resposta-tit{color:var(--vermelho)}
.masp-chip-link{cursor:pointer;border:1.5px solid var(--azul-light);font:inherit}
.masp-chip-link:hover{border-color:var(--azul)}
.masp-linha-tempo{display:flex;flex-direction:column;gap:10px;border-left:3px solid var(--brd);padding-left:14px}
.masp-lt-item{font-size:13px}
.masp-lt-cab{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:3px}
.masp-lt-alteracao .masp-lt-cab strong,.masp-lt-irregularidade .masp-lt-cab strong{color:var(--vermelho)}
.masp-hist-val{max-width:260px;word-break:break-word}

/* Caixa de entrada */
.masp-caixa{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin-top:14px}
.masp-caixa-item{margin:0;cursor:pointer;display:flex;flex-direction:column;gap:8px;border-left:5px solid var(--ouro);transition:box-shadow .15s}
.masp-caixa-item:hover{box-shadow:var(--shadow-hover)}
.masp-caixa-top{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--azul)}
.masp-caixa-info{display:flex;flex-wrap:wrap;gap:4px}
.masp-caixa-desc{font-size:13px;color:var(--txt)}
.masp-caixa-abrir{margin-top:auto}

/* Listas */
.masp-cfg-nova{display:flex;gap:8px;flex-wrap:wrap}
.masp-cfg-nova input{flex:1;min-width:200px}

/* (5A) Formulário da tratativa */
.masp-modelos{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));max-width:none}
.masp-botao-modelo{font-size:13.5px;letter-spacing:0;padding:8px 12px;line-height:1.25}
.masp-botao-modelo small{display:block;font-size:11px;font-weight:600;opacity:.8;margin-top:2px}
.masp-form-campos{margin-top:12px}
.masp-form-campos:empty{display:none}
.masp-form-bts{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
#maspSecForm.editando{border-color:var(--azul-mid)}
.masp-hist-desfeita td{opacity:.6}
.masp-hist-desfeita td:nth-child(4),.masp-hist-desfeita td:nth-child(5){text-decoration:line-through}

@media (max-width:640px){
  .masp-filtros .pv-busca{grid-column:auto}
  .masp-caixa{grid-template-columns:1fr}
  .masp-barra-salvar .btn-save,.masp-barra-salvar .pv-btn-sec{flex:1}
}
@media print{
  .masp-sem-print,.masp-barra-salvar{display:none!important}
}
/* (5B) Cabeçalho da impressão */
.masp-print-cab{display:none}
@media print{
  .masp-print-cab{display:block;border-bottom:2px solid var(--azul);padding-bottom:8px;margin-bottom:12px;color:#000}
  .masp-print-l1{display:flex;justify-content:space-between;gap:12px;font-size:12px}
  .masp-print-tit{font-size:17px;font-weight:800;color:var(--azul);margin:3px 0}
  .masp-print-l2{font-size:11px;color:#444}
  #modMasp .voltar-row,.masp-acoes,#maspAbas,#modMasp .page-header{display:none!important}
  #maspSecForm .fq-bloco{break-inside:auto}
  #maspSecForm .pv-dl-item,#maspSecForm .cad-field{break-inside:avoid;page-break-inside:avoid}
}

/* (4B) Plano de ação e evidências */
.masp-plano td{vertical-align:top}
.masp-acao-linha.finalizada td{background:var(--cinza-card)}
.masp-acao-bts{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;min-width:150px;max-width:300px;margin-left:auto}
.masp-acao-bts .pv-btn-sec,.masp-acao-bts .btn-save{padding:5px 9px;font-size:12px}
.masp-cp{display:inline-block;min-width:22px;text-align:center;font-weight:800;font-size:12px;border-radius:6px;padding:2px 6px;border:1.5px solid var(--brd)}
.masp-cp-c{background:var(--verm-bg);color:var(--vermelho);border-color:var(--verm-brd)}
.masp-cp-p{background:var(--azul-light);color:var(--azul);border-color:var(--azul-light)}
.masp-atraso{color:var(--vermelho);font-weight:700}
.masp-acao-extras{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.masp-evid,.masp-repr{font-size:12.5px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.masp-evid-arq{border:1.5px solid var(--brd);background:white;border-radius:8px;padding:3px 8px;font:inherit;font-size:12.5px;font-weight:600;color:var(--azul);cursor:pointer}
.masp-evid-arq:hover{border-color:var(--azul)}
.masp-evid-x{border:none;background:none;color:var(--txt-muted);cursor:pointer;font-size:12px}
.masp-evid-x:hover{color:var(--vermelho)}
.masp-repr{color:var(--laranja)}

/* (4B) Lista: ações abertas na própria linha */
.masp-exp-cel{width:34px}
.masp-exp{border:1.5px solid var(--brd);background:white;border-radius:8px;width:28px;height:28px;cursor:pointer;color:var(--azul);transition:transform .15s}
.masp-exp.aberta i{transform:rotate(90deg)}
.masp-exp i{transition:transform .15s}
.masp-sub-linha>td{background:var(--cinza-card);padding:8px 10px 14px}
.masp-sub-tabela{font-size:12.5px;background:white}
.masp-acoes-cont{font-weight:800;color:var(--azul)}

/* (6) Assinatura eletrônica */
.masp-assinar{border:2px solid var(--ouro);background:#FFFCF2}
.masp-parecer{grid-template-columns:repeat(2,minmax(120px,1fr));max-width:420px}
.masp-parecer .masp-botao{font-size:14px;display:flex;gap:8px;align-items:center;justify-content:center}
.masp-parecer .masp-botao.ativo[data-p="eficaz"]{background:var(--grad-verde);border-color:var(--verde)}
.masp-parecer .masp-botao.ativo[data-p="nao_eficaz"]{background:var(--grad-verm);border-color:var(--vermelho)}
.masp-assinar input[type=password]{width:100%;box-sizing:border-box}
.masp-assin-rod{margin-bottom:10px}
.masp-assin-rod-tit{font-size:12.5px;font-weight:800;color:var(--azul-mid);margin:4px 0 6px;cursor:default}
details.masp-assin-rod > summary{cursor:pointer}
.masp-assin-tab td{vertical-align:top}
.masp-assin-cancelada td{opacity:.65}
.masp-codigo{font-family:ui-monospace,Consolas,monospace;font-weight:800;font-size:12.5px;background:var(--azul-light);color:var(--azul);padding:2px 6px;border-radius:6px;white-space:nowrap}
.masp-codigo-todo{display:block;font-family:ui-monospace,Consolas,monospace;font-size:10.5px;word-break:break-all;color:var(--txt-muted);margin-top:3px}
.masp-assin-lista{display:flex;flex-direction:column;gap:4px;max-height:46vh;overflow:auto;margin-bottom:6px}
.masp-assin-op{display:flex;gap:8px;align-items:center;padding:7px 9px;border:1.5px solid var(--brd);border-radius:9px;background:white}
.masp-assin-busca{width:100%;box-sizing:border-box;border:1.5px solid var(--brd);border-radius:8px;padding:8px 10px;font:inherit;margin-bottom:8px}
.masp-assin-sub{font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--txt-muted);margin:6px 0}
.masp-copia{display:flex;flex-direction:column;gap:8px}
.masp-copia-selo{display:flex;gap:12px;align-items:flex-start;border:1.5px solid var(--verde-brd);background:var(--verde-bg);border-radius:10px;padding:10px 12px}
.masp-copia-selo > i{font-size:22px;color:var(--verde);margin-top:2px}
.masp-copia-tit{font-weight:800;color:var(--azul);margin-top:6px;padding-bottom:4px;border-bottom:2px solid var(--azul-light)}
.masp-copia-msgs{margin:0;padding-left:18px;font-size:13px;line-height:1.6}
.masp-conf{border:1.5px solid var(--brd);border-radius:10px;padding:10px 12px;margin-bottom:8px;font-size:13px;line-height:1.6}
.masp-conf.ok{border-color:var(--verde-brd);background:var(--verde-bg)}
.masp-conf.falha{border-color:var(--verm-brd);background:var(--verm-bg)}
.masp-conf-tit{font-weight:800}
.masp-conf.ok .masp-conf-tit{color:var(--verde)}
.masp-conf.falha .masp-conf-tit,.masp-conf.falha > i{color:var(--vermelho)}
@media print{
  #maspAssinaturas{break-inside:avoid;page-break-inside:avoid}
  .masp-codigo{background:none;border:1px solid #999}
}

/* (7A) Painel */
.masp-pn-filtros{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.masp-pn-acoes>div{display:flex;gap:6px;flex-wrap:wrap}
.masp-pn-kpis{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.masp-pn-kpi-sub{font-size:11.5px;font-weight:600;color:var(--txt-muted);margin-top:2px}
.masp-pn-quadro .chart-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.masp-pn-nota{font-weight:500;font-size:11.5px;margin-left:auto}
.masp-pn-seletor{display:inline-flex;gap:4px;margin-left:auto;flex-wrap:wrap}
.masp-pn-seletor .pv-btn-sec{padding:4px 10px;font-size:12px}
.masp-pn-seletor .pv-btn-sec.ativo{background:var(--azul);border-color:var(--azul);color:white}
.masp-pn-tab{margin-top:10px;font-size:13px}
.masp-pn-tab summary{cursor:pointer;color:var(--azul-mid);font-weight:700;font-size:12.5px}
.masp-pn-tab .table-container{margin-top:8px;max-height:320px;overflow:auto}
.masp-pn-atrasos td,.masp-pn-atrasos th{white-space:nowrap}
.masp-pn-120{font-weight:800;color:var(--vermelho)}
.admin-table-header .masp-pn-seletor{margin-left:auto}
@media print{
  .masp-pn-filtros select,.masp-pn-filtros input{border:none;padding:0}
  .masp-pn-tab{display:none}
  .masp-pn-quadro{break-inside:avoid}
}
