#aba-aditivo {
    background: #f3f6f8;
    min-height: calc(100vh - 170px);
    padding: 18px;
    color: #172b38;
    font-family: "Segoe UI", Inter, system-ui, sans-serif;
}

.aditivo-shell {
    max-width: 1140px;
    margin: 0 auto;
}

/* ── Topo compacto — P-ADITIVO-WORKSPACE-UX-DEFINITIVO-02 (§8),
   identidade azul restaurada por P-ADITIVO-WORKSPACE-UX-FECHAMENTO-03
   (§5) ───────────────────────────────────────────────────────────────
   Substitui o hero azul grande antigo + o banner separado "Orçamento
   selecionado" por UMA linha discreta — mas com fundo azul (mesma
   identidade do SIAO), não um bloco alto decorativo. Só identifica a
   tela; o contexto real do aditivo (AD/status/ações) vive no navegador
   logo abaixo. */

.aditivo-topo-compacto {
    display: flex;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 10px;
    padding: 8px 14px;
    border-radius: 10px;
    background: linear-gradient(135deg, #0b3c5d, #145a86);
    color: #eaf4fb;
}

.aditivo-topo-titulo {
    font-size: 0.86rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #ffffff;
}

.aditivo-topo-separador {
    color: rgba(234, 244, 251, 0.55);
}

.aditivo-topo-orcamento {
    font-size: 0.86rem;
    font-weight: 600;
    color: #eaf4fb;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Navegador de ADs (barra superior) — P-ADITIVO-WORKSPACE-UX-
   DEFINITIVO-02 (§8-15). Substitui `_cardContextoAditivo` +
   `_blocoPrazoAditivo` + `_blocoNovoAditivo` + `_blocoHistoricoAditivos`
   (4 blocos empilhados) por UMA região com 3 linhas densas: navegador +
   ações, aviso (se houver), faixa de prazo, faixa financeira. ────────── */

.aditivo-topo-navegador {
    margin-bottom: 14px;
    padding: 12px 16px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    border-top: 4px solid #34a37a;
    background: #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.aditivo-topo-navegador--consolidado {
    border-top-color: #64748b;
}

.aditivo-topo-navegador--reaberto {
    border-top-color: #d97706;
}

/* P-ADITIVO-ESTABILIZACAO-FINAL-05 (§12-15): DEFEITO 1 — linha externa
   NUNCA quebra (flex-wrap: nowrap); os chips (select + status +
   classificação + data + contrato) vivem num contêiner PRÓPRIO que pode
   quebrar internamente em várias linhas (flex-wrap: wrap, min-width: 0
   para poder encolher) sem NUNCA arrastar as ações consigo — ações fica
   de largura protegida (flex-shrink: 0), sempre na mesma linha em
   largura normal de desktop. Sem posicionamento absoluto. */
.aditivo-topo-navegador-linha1 {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    flex-wrap: nowrap;
}

.aditivo-topo-navegador-chips {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    flex: 1 1 auto;
    min-width: 0;
}

.aditivo-topo-navegador-acoes {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    flex-wrap: nowrap;
}

.aditivo-topo-navegador-texto {
    flex: 1;
    min-width: 220px;
    color: #334155;
    font-size: 0.84rem;
}

/* P-ADITIVO-HOTFIX-ESTABILIZACAO-06 (§6-7): BUG 1 — a correção da frente
   anterior fixou as AÇÕES (nunca mais quebram), mas o chip "CONTRATO
   PUBLICADO" (último da sequência) ainda sobrava sozinho numa 2ª linha
   em largura de desktop normal, quando a largura acumulada dos chips
   (select incluso) excedia o espaço disponível. Reduzido o max-width do
   select (folga suficiente para "AD03 · Misto · Reaberto (atual)") — só
   layout, nenhum conteúdo de chip alterado. */
.aditivo-navegador-select {
    max-width: 260px;
    font-weight: 700;
    color: #0b3c5d;
}

.aditivo-topo-aviso {
    margin-top: 8px;
    padding: 6px 10px;
    border-radius: 8px;
    background: #f8fafc;
    color: #5a7a8c;
    font-size: 0.74rem;
    font-style: italic;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: help;
}

.aditivo-topo-navegador--reaberto .aditivo-topo-aviso {
    background: #fffaf0;
    color: #92400e;
}

/* Faixas densas (prazo/financeiro) — uma linha de chips, nunca mais
   grades de 3-5 cards cada (§14-15). Nenhum valor deixa de existir, só
   muda de formato "card" para "chip". */
.aditivo-faixa-compacta {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px dashed #e2e8f0;
    font-size: 0.80rem;
    color: #172b38;
}

.aditivo-faixa-item {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

.aditivo-faixa-rotulo {
    color: #94a3b8;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.aditivo-faixa-item strong {
    color: #0b3c5d;
    font-weight: 800;
}

.aditivo-prazo-input-grupo input {
    width: 56px;
}

/* ── Estado vazio (sem orçamento) ─────────────────────────────────── */

.aditivo-estado-vazio {
    min-height: 360px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 42px 20px;
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
    background: #fff;
    color: #5a7a8c;
    text-align: center;
}

.aditivo-estado-vazio > i {
    color: #0b3c5d;
    font-size: 36px;
}

.aditivo-estado-vazio h2 {
    max-width: 560px;
    margin: 0;
    color: #172b38;
    font-size: 1.1rem;
}

.aditivo-estado-vazio p {
    max-width: 520px;
    margin: 0;
    font-size: 0.80rem;
}

/* ── Estados de carregamento/aviso ────────────────────────────────── */

.aditivo-carregando {
    margin: 0 0 14px;
    padding: 14px 16px;
    color: #5a7a8c;
    font-size: 0.80rem;
}

.aditivo-aviso {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 14px;
    padding: 14px 16px;
    border: 1px solid #fde8cd;
    border-radius: 10px;
    background: #fff8ec;
    color: #92400e;
    font-size: 0.80rem;
}

.aditivo-aviso-erro {
    border-color: #fca5a5;
    background: #fef2f2;
    color: #b91c1c;
}

/* P-ADITIVO-05D: alerta reforçado — título em destaque + mensagem abaixo,
   usado tanto no toast do topo (mostrarAvisoTemporario) quanto no card
   inline da gaveta (aditivo-gaveta-erro). Borda mais grossa e sombra leve
   para chamar mais atenção do que o aviso informativo comum. */
.aditivo-aviso-destacado {
    border-width: 2px;
    box-shadow: 0 2px 10px rgba(185, 28, 28, 0.15);
}

.aditivo-aviso-titulo {
    font-weight: 700;
    font-size: 0.86rem;
    margin-bottom: 4px;
}

.aditivo-aviso-mensagem {
    font-size: 0.80rem;
}

.aditivo-gaveta-erro {
    border: 2px solid #fca5a5;
    background: #fef2f2;
    color: #b91c1c;
    border-radius: 10px;
    padding: 12px 14px;
    margin-bottom: 12px;
    box-shadow: 0 2px 10px rgba(185, 28, 28, 0.15);
}

.aditivo-gaveta-erro-titulo {
    font-weight: 700;
    font-size: 0.86rem;
    margin-bottom: 4px;
}

.aditivo-gaveta-erro-mensagem {
    font-size: 0.80rem;
}

/* P-ADITIVO-05D: sinaliza que justificativa técnica não bloqueia o
   lançamento — texto é sempre opcional, só o cálculo é obrigatório. */
.aditivo-campo-opcional {
    font-weight: 400;
    color: #94a3b8;
    font-size: 0.72rem;
}

/* ── Blocos de seção (KPIs/tabela/roadmap/esteira) ────────────────── */

.aditivo-secao-bloco {
    margin-bottom: 16px;
}

.aditivo-secao-cabecalho {
    margin-bottom: 10px;
}

.aditivo-secao-cabecalho h3 {
    margin: 0 0 3px;
    color: #172b38;
    font-size: 1rem;
    font-weight: 800;
}

.aditivo-secao-cabecalho p {
    margin: 0;
    color: #5a7a8c;
    font-size: 0.78rem;
}

.aditivo-secao-cabecalho-linha {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

/* ── KPIs de resumo contratual ─────────────────────────────────────── */

.aditivo-kpis {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 12px;
    margin-bottom: 16px;
}

.aditivo-kpi {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

.aditivo-kpi-corpo {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.aditivo-kpi-label {
    color: #5a7a8c;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.aditivo-kpi-valor {
    margin: 3px 0 2px;
    color: #0b3c5d;
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.15;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ── Pills / chips ─────────────────────────────────────────────────── */

.aditivo-pills {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.aditivo-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    border-radius: 999px;
    background: #eef2f6;
    color: #334155;
    font-size: 0.70rem;
    font-weight: 700;
    white-space: nowrap;
}

.aditivo-pill-leitura {
    background: #eaf3ee;
    color: #1a7a4a;
}

.aditivo-chip {
    display: inline-flex;
    padding: 4px 10px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #334155;
    font-size: 0.68rem;
    font-weight: 600;
    white-space: nowrap;
}

.aditivo-chip-verba {
    background: #fff3e0;
    color: #c46a10;
}

.aditivo-chip-item {
    background: #eef2f6;
    color: #334155;
}

/* ── Itens contratados como gavetas read-only (P-ADITIVO-04E) ────────
   Cada item vira um card compacto (cabeçalho + métricas + rodapé), sem
   nenhuma interação real — só sugere visualmente a futura gaveta. */

.aditivo-itens-gavetas {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 560px;
    overflow-y: auto;
    padding: 2px 4px 2px 2px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #f8fafc;
}

.aditivo-item-gaveta {
    padding: 12px 14px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
}

.aditivo-item-gaveta--verba {
    border-color: #fde8cd;
    background: #fffaf3;
}

.aditivo-item-gaveta__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.aditivo-item-gaveta__titulo {
    display: flex;
    align-items: baseline;
    gap: 10px;
    min-width: 0;
    flex: 1 1 260px;
}

.aditivo-item-codigo {
    flex: 0 0 auto;
    padding: 2px 8px;
    border-radius: 6px;
    background: #eef2f6;
    color: #0b3c5d;
    font-size: 0.70rem;
    font-weight: 800;
    white-space: nowrap;
}

.aditivo-item-gaveta__titulo h4 {
    margin: 0;
    min-width: 0;
    flex: 1 1 auto;
    color: #172b38;
    font-size: 0.82rem;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.aditivo-item-gaveta__badges {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    flex: 0 0 auto;
}

.aditivo-item-gaveta__metricas {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 8px 16px;
    margin: 10px 0 8px;
    padding-top: 10px;
    border-top: 1px dashed #eef2f5;
}

.aditivo-item-gaveta__metricas span {
    display: block;
    color: #94a3b8;
    font-size: 0.64rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.aditivo-item-gaveta__metricas strong {
    display: block;
    margin-top: 2px;
    color: #334155;
    font-size: 0.80rem;
    font-weight: 700;
}

.aditivo-item-gaveta__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 4px;
    flex-wrap: wrap;
}

/* P-ADITIVO-05C: agrupa "Editar lançamento" + "Remover lançamento". */
.aditivo-item-gaveta__acoes {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

/* P-ADITIVO-05D: .aditivo-gaveta-erro (título + mensagem + destaque) já
   definida acima — mantém só o registro do porquê ela existe aqui perto
   do rodapé do card de item: erro nunca fecha nem esconde a gaveta. */

.aditivo-item-gaveta__aviso {
    color: #94a3b8;
    font-size: 0.68rem;
    font-style: italic;
}

.aditivo-btn-futuro {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    background: #f8fafc;
    color: #94a3b8;
    font-size: 0.68rem;
    font-weight: 700;
    cursor: not-allowed;
    white-space: nowrap;
}

/* ── Itens fora do escopo / serviços novos (P-ADITIVO-07) ────────────
   Painel/lista/gaveta PRÓPRIOS — paleta secundária controlada (âmbar/
   dourado/laranja-queimado), deliberadamente distinta do azul principal
   do módulo e do laranja já usado em "verba global" (.aditivo-chip-verba),
   mas nunca vermelho-de-erro/roxo/neon/gradiente agressivo. Mesma
   estrutura de card/tipografia/espaçamento do resto do SIAO — só o
   acento de cor muda, para nunca parecer "um sistema diferente". */

/* Badge âmbar — mesmo formato do .aditivo-pill/.aditivo-badge do resto do
   módulo, só a cor muda para sinalizar "mundo separado do contratado".
   Usado no badge de cada card de serviço novo (_cardItemForaEscopo). */
.aditivo-fora-escopo-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 12px;
    border-radius: 999px;
    background: #f6dfa9;
    color: #6b4409;
    font-size: 0.66rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    white-space: nowrap;
}

/* ── Painel único de trabalho — P-ADITIVO-WORKSPACE-UX-DEFINITIVO-02
   (§17-20/§27-29). Substitui `.aditivo-fora-escopo`/`.aditivo-fora-
   escopo-empty` (seção própria + estado vazio próprio) e o antigo editor
   inline por item contratado — UMA única região, acima da lista, para os
   2 modos (dentro/fora do escopo). ─────────────────────────────────── */

.aditivo-painel-trabalho {
    margin-bottom: 16px;
}

/* P-ADITIVO-WORKSPACE-UX-FECHAMENTO-03 (§14): hierarquia visual clara —
   o painel de trabalho precisa ser reconhecido IMEDIATAMENTE como o
   editor, distinto da lista flat abaixo (.aditivo-secao-bloco não tem
   fundo/borda nenhum). Fundo branco elevado (sombra leve) + faixa de
   destaque à esquerda — mesma identidade em qualquer um dos 2 modos. */
.aditivo-painel-trabalho-dentro {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-left: 4px solid #0b3c5d;
    border-radius: 12px;
    padding: 16px 18px;
    box-shadow: 0 2px 10px rgba(15, 45, 68, 0.08);
}

.aditivo-painel-trabalho-vazio {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    padding: 20px 22px;
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
    background: #f8fafc;
    color: #5a7a8c;
    font-size: 0.84rem;
}

.aditivo-modo-workspace {
    display: flex;
    gap: 4px;
    margin-bottom: 10px;
}

.aditivo-modo-workspace-btn {
    padding: 8px 16px;
    border: 1px solid #e2e8f0;
    border-bottom: none;
    border-radius: 10px 10px 0 0;
    background: #f1f5f9;
    color: #5a7a8c;
    font-size: 0.80rem;
    font-weight: 700;
    cursor: pointer;
}

.aditivo-modo-workspace-btn--ativo {
    background: #fff;
    color: #0b3c5d;
    box-shadow: 0 -2px 6px rgba(15, 23, 42, 0.04);
}

.aditivo-painel-contexto-item {
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px dashed #e2e8f0;
}

.aditivo-painel-contexto-item-titulo {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.aditivo-painel-contexto-item-titulo h4 {
    margin: 0;
    color: #172b38;
    font-size: 0.94rem;
    font-weight: 800;
}

.aditivo-item-gaveta--ativo {
    border-color: #34a37a;
    box-shadow: 0 0 0 2px rgba(52, 163, 122, 0.18);
}

/* ── Lista própria de itens fora do escopo ───────────────────────────── */

.aditivo-fora-escopo-card {
    padding: 12px 14px;
    border: 1px solid #eccb84;
    border-radius: 10px;
    background: #fffdf7;
    box-shadow: 0 1px 3px rgba(138, 90, 15, 0.08);
    transition: box-shadow .15s ease, border-color .15s ease;
}

/* P-ADITIVO-07D: card inteiro clicável (mesmo padrão de "clicar na
   linha carrega no painel" do Memorial) — só quando não consolidado
   (nesse caso o card não tem role="button"/cursor). */
.aditivo-fora-escopo-card[role="button"] {
    cursor: pointer;
}

.aditivo-fora-escopo-card[role="button"]:hover,
.aditivo-fora-escopo-card[role="button"]:focus-visible {
    border-color: #d9ab52;
    box-shadow: 0 4px 10px rgba(138, 90, 15, 0.14);
    outline: none;
}

.aditivo-fora-escopo-card--em-edicao {
    border-color: #8a5a0f;
    border-width: 2px;
    background: #fff8ea;
    box-shadow: 0 2px 8px rgba(138, 90, 15, 0.18);
}

.aditivo-fora-escopo-card .aditivo-item-codigo {
    background: #f6dfa9;
    color: #6b4409;
}

.aditivo-fora-escopo-card .aditivo-item-gaveta__metricas {
    border-top-color: #f1dfae;
}

/* ── Gaveta própria (criação/edição de serviço fora do escopo) ───────── */

.aditivo-fora-escopo-gaveta {
    margin-top: 4px;
    margin-bottom: 14px;
    padding: 14px 16px;
    border: 1px solid #eccb84;
    border-radius: 10px;
    background: #fffaf0;
}

.aditivo-fora-escopo-gaveta-titulo {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #6b4409;
    font-size: 0.86rem;
    font-weight: 800;
}

/* P-ADITIVO-UX-FORA-ESCOPO-HIERARQUIA-VISUAL-08 (§7-9/§37-40/§43): 4
   macroblocos operacionais (Serviço/Origem, Composição/Preço, Aplicação/
   Quantitativo, Resultado) — cards reais em branco, "saindo" do fundo
   âmbar de .aditivo-fora-escopo-gaveta (o "painel externo" — permanece
   como está, §43). Poucos cards (4), nunca um por campo (§7/§44). */
.aditivo-fora-escopo-macrobloco {
    margin-bottom: 14px;
    border: 1px solid #e2caa0;
    border-radius: 10px;
    background: #ffffff;
    box-shadow: 0 1px 4px rgba(138, 90, 15, 0.07);
    overflow: hidden;
}

.aditivo-fora-escopo-macrobloco:last-child {
    margin-bottom: 0;
}

.aditivo-fora-escopo-macrobloco-cabecalho {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 16px;
    background: #fdf6e8;
    border-bottom: 1px solid #eccb84;
}

.aditivo-fora-escopo-macrobloco-numero {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: #8a5a0f;
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
}

.aditivo-fora-escopo-macrobloco-cabecalho h4 {
    margin: 0;
    color: #4a2e05;
    font-size: 0.84rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.aditivo-fora-escopo-macrobloco-corpo {
    padding: 14px 16px;
}

/* P-ADITIVO-UX-FORA-ESCOPO-HIERARQUIA-VISUAL-08 (§26-27): macrobloco D
   (Resultado) precisa ser reconhecido como o FECHAMENTO do fluxo — borda
   mais marcada, cabeçalho num tom mais forte. Nunca cor de "sucesso"
   (verde) no card inteiro (§27/§42) — só reforço estrutural. */
.aditivo-fora-escopo-macrobloco--resultado {
    border-color: #8a5a0f;
    border-width: 1.5px;
    box-shadow: 0 2px 8px rgba(138, 90, 15, 0.14);
}

.aditivo-fora-escopo-macrobloco--resultado .aditivo-fora-escopo-macrobloco-cabecalho {
    background: #f6dfa9;
}

/* P-ADITIVO-UX-FORA-ESCOPO-HIERARQUIA-VISUAL-08 (§32/§35): rodapé de
   status+ações do card D separado das métricas por um divisor sólido
   próprio — "não deixar botões boiando ao lado das métricas". Escopado
   só ao rodapé DENTRO do macrobloco Resultado do Fora — nunca afeta o
   rodapé de Dentro do escopo (.aditivo-gaveta-rodape em si intocada). */
.aditivo-fora-escopo-macrobloco--resultado .aditivo-gaveta-rodape {
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid #f1dfae;
}

/* P-ADITIVO-UX-FORA-ESCOPO-HIERARQUIA-VISUAL-08 (§28-30): "Valor deste
   lançamento" precisa de mais peso que Quantidade/Preço unitário (que
   ficam com o tamanho padrão de .aditivo-item-gaveta__metricas strong),
   mas cor/tamanho deliberadamente diferentes da faixa financeira do topo
   (.aditivo-faixa-item strong, azul) — nunca pode ser lido como "Total
   do Aditivo". */
.aditivo-fora-escopo-valor-lancamento-destaque {
    font-size: 0.98rem !important;
    color: #6b4409 !important;
}

.aditivo-fora-escopo-bloco {
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px dashed #eccb84;
}

.aditivo-fora-escopo-bloco:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.aditivo-fora-escopo-bloco h5 {
    margin: 0 0 10px;
    color: #6b4409;
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

/* P-ADITIVO-UX-FORA-ESCOPO-FECHAMENTO-07 (§8/§11/§19): hierarquia de 3
   níveis dentro do MESMO painel, sem criar novos containers/cards — só
   diferenciação tipográfica/espaçamento. "--nivel1" (origem/busca/
   seleção) fica deliberadamente mais leve que a formação de preço/
   memória (nível 2, que mantém o h5 padrão acima, sem modificador).
   "--leve" (aplicação/observação, §19) é ainda mais discreto. */
.aditivo-fora-escopo-bloco--nivel1 {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom-style: solid;
    border-bottom-color: #f6ecd2;
}

.aditivo-fora-escopo-bloco--nivel1 h5 {
    color: #94781f;
    font-size: 0.70rem;
    font-weight: 700;
}

.aditivo-fora-escopo-bloco--leve {
    padding-bottom: 12px;
    margin-bottom: 12px;
    /* P-ADITIVO-UX-FORA-ESCOPO-HIERARQUIA-VISUAL-08 (§22/§41): divisor
       SÓLIDO (não mais tracejado) para separar Aplicação/observação de
       Memória quantitativa — reduz a dependência de linha tracejada como
       única ferramenta de hierarquia dentro do macrobloco C. */
    border-bottom-style: solid;
    border-bottom-color: #f1dfae;
}

.aditivo-fora-escopo-bloco--leve h5 {
    color: #94781f;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: none;
    letter-spacing: normal;
}

.aditivo-fora-escopo-bloco-aviso {
    margin: -4px 0 10px;
    color: #94781f;
    font-size: 0.70rem;
    font-style: italic;
}

.aditivo-fora-escopo-formacao-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 10px 16px;
    margin-bottom: 4px;
}

.aditivo-fora-escopo-formacao-grid > div:not(.aditivo-gaveta-campo) span {
    display: block;
    color: #94781f;
    font-size: 0.64rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.aditivo-fora-escopo-formacao-grid > div:not(.aditivo-gaveta-campo) strong {
    display: block;
    margin-top: 2px;
    color: #334155;
    font-size: 0.84rem;
    font-weight: 700;
}

/* P-ADITIVO-WORKSPACE-DEFINITIVO-MEDICAO-FECHAMENTO-01 (§30-32): origem
   do preço de um serviço novo — sempre as 3 visíveis, nunca escondidas
   atrás de configuração. Mesma paleta âmbar do resto do bloco fora do
   escopo; nenhuma cor nova. */
.aditivo-fonte-preco-seletor {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-bottom: 14px;
}

.aditivo-fonte-preco-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 999px;
    border: 1px solid #f0d9a8;
    background: #fff;
    color: #94781f;
    font-size: 0.74rem;
    font-weight: 700;
    cursor: pointer;
}

.aditivo-fonte-preco-btn--ativo {
    background: #fbbf24;
    border-color: #d97706;
    color: #4a2e05;
}

.aditivo-fonte-manual-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 10px 16px;
}

/* P-ADITIVO-WORKSPACE-UX-FECHAMENTO-03 (§31-35): alternância buscar/criar
   CPU — mesmo padrão visual das subabas do workspace (aditivo-modo-
   workspace-btn), escala menor por estar dentro de um bloco da gaveta. */
.aditivo-cpu-modo-seletor {
    display: flex;
    gap: 4px;
    margin-bottom: 10px;
    border-bottom: 1px solid #e2e8f0;
}

.aditivo-cpu-modo-btn {
    padding: 6px 12px;
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 0.76rem;
    font-weight: 700;
    cursor: pointer;
    border-bottom: 2px solid transparent;
}

.aditivo-cpu-modo-btn--ativo {
    color: #0b3c5d;
    border-bottom-color: #0b3c5d;
}

.aditivo-cpu-criar-nova {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* P-ADITIVO-FECHAMENTO-UX-OPERACIONAL-04 (§35-38): receita (insumos/
   coeficientes) de uma CPU já lançada — só leitura, visualmente distinta
   da memória de quantitativo do lançamento (mesma tabela compacta, sem
   inputs). */
.aditivo-cpu-receita {
    margin: 10px 0;
    padding: 10px 12px;
    border: 1px solid #e2e8f0;
    border-left: 3px solid #94a3b8;
    border-radius: 8px;
    background: #f8fafc;
}

.aditivo-cpu-receita-titulo {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: #475569;
    margin-bottom: 6px;
}

/* P-ADITIVO-WORKSPACE-UX-FECHAMENTO-03 (§36-38), redesenhado por
   P-ADITIVO-FECHAMENTO-UX-OPERACIONAL-04 (§18-20): resultado do
   lançamento, sempre backend-authoritative (só aparece quando já existe
   lançamento persistido) — bloco TÉCNICO compacto (mesma grade de
   métricas do resumo contratual acima dele), nunca mais uma faixa verde
   de "sucesso"/banner. */
.aditivo-painel-resultado-lancamento {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px dashed #cbd5e1;
}

/* P-ADITIVO-UX-FORA-ESCOPO-HIERARQUIA-VISUAL-08 (§26-29/§53): dentro do
   Fora do escopo, este bloco agora é o PRIMEIRO conteúdo do macrobloco D
   (o cabeçalho do card já entrega a separação visual) — a margem/borda
   tracejada superior herdada de .aditivo-painel-resultado-lancamento
   (pensada para quando ele vem NO MEIO do painel de Dentro do escopo,
   ver _contextoItemAtivo) ficaria órfã aqui. Override escopado só à
   classe exclusiva do Fora — .aditivo-painel-resultado-lancamento em si
   (compartilhada com Dentro) permanece intocada. */
.aditivo-fora-escopo-resultado {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.aditivo-painel-resultado-lancamento-titulo {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: #475569;
    margin-bottom: 6px;
}

/* P-ADITIVO-WORKSPACE-DEFINITIVO-MEDICAO-FECHAMENTO-01 (§8-10): cabeçalho
   inequívoco — reaberto ganha acento âmbar (mesma família de "atenção"
   do resto do SIAO), distinto do verde "ativo" e do slate "consolidado". */
.aditivo-pill-reaberto {
    background: #fef3c7;
    color: #92400e;
}

.aditivo-pill-classificacao {
    background: #eef4fa;
    color: #0b3c5d;
}

/* P-ADITIVO-WORKSPACE-DEFINITIVO-MEDICAO-FECHAMENTO-01 (§13-14): grupos/
   gavetas do XLS contratado — mesmo vocabulário visual de card já usado
   no resto da aba (borda clara, cabeçalho levemente destacado). */
.aditivo-grupos-lista {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.aditivo-grupo-gaveta {
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
}

.aditivo-grupo-gaveta-cabecalho {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 12px 16px;
    background: linear-gradient(90deg, #eef4fa 0%, #f8fbfe 100%);
}

.aditivo-grupo-gaveta--fechado .aditivo-grupo-gaveta-cabecalho {
    background: #f8fafc;
}

/* P-ADITIVO-WORKSPACE-UX-DEFINITIVO-02 (§25-29): o cabeçalho do grupo
   deixou de ser um único <button> (o toggle) para poder acomodar uma 2ª
   ação própria ("+ Novo serviço", só no grupo de serviços novos) sem
   aninhar um <button> dentro de outro. */
.aditivo-grupo-gaveta-toggle {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
    min-width: 0;
    border: none;
    background: none;
    cursor: pointer;
    text-align: left;
    padding: 0;
}

.aditivo-grupo-gaveta-seta {
    color: #0b3c5d;
    font-size: 0.82rem;
    width: 14px;
    flex: 0 0 auto;
}

.aditivo-grupo-gaveta-nome {
    flex: 1;
    color: #0b3c5d;
    font-weight: 800;
    font-size: 0.86rem;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.aditivo-grupo-gaveta-contagem {
    background: #eef4fa;
    color: #0b3c5d;
    font-size: 0.68rem;
}

/* P-ADITIVO-FECHAMENTO-UX-OPERACIONAL-04 (§21-22): quantos itens deste
   grupo já foram aditados no AD atual — mesma família de acento verde já
   usada para "consolidado"/sucesso no resto do SIAO, discreto. */
.aditivo-grupo-gaveta-aditados {
    background: #ecfdf5;
    color: #047857;
    font-size: 0.68rem;
}

.aditivo-grupo-gaveta--novos .aditivo-grupo-gaveta-cabecalho {
    background: linear-gradient(90deg, #fdf6e8 0%, #fffdf7 100%);
}

.aditivo-grupo-gaveta--novos .aditivo-grupo-gaveta-nome {
    color: #6b4409;
}

.aditivo-grupo-gaveta .aditivo-itens-gavetas {
    padding: 12px 16px 16px;
    border: none;
    border-radius: 0;
    max-height: 460px;
}

.aditivo-fora-escopo-fator {
    margin-bottom: 0;
}

.aditivo-fora-escopo-busca-linha {
    display: flex;
    gap: 8px;
}

.aditivo-fora-escopo-busca-linha .aditivo-input {
    flex: 1 1 auto;
}

.aditivo-fora-escopo-busca-status {
    margin: 8px 0 0;
    color: #94781f;
    font-size: 0.74rem;
}

.aditivo-fora-escopo-resultados {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
    max-height: 220px;
    overflow-y: auto;
    border: 1px solid #eccb84;
    border-radius: 8px;
    background: #fff;
}

.aditivo-fora-escopo-resultado-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    border-bottom: 1px solid #f6ecd2;
    cursor: pointer;
    font-size: 0.76rem;
}

.aditivo-fora-escopo-resultado-item:last-child {
    border-bottom: none;
}

.aditivo-fora-escopo-resultado-item:hover,
.aditivo-fora-escopo-resultado-item:focus {
    background: #fdf6e8;
    outline: none;
}

.aditivo-fora-escopo-resultado-codigo {
    flex: 0 0 auto;
    padding: 2px 8px;
    border-radius: 6px;
    background: #f6dfa9;
    color: #6b4409;
    font-weight: 800;
    white-space: nowrap;
}

.aditivo-fora-escopo-resultado-descricao {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #334155;
}

.aditivo-fora-escopo-resultado-valor {
    flex: 0 0 auto;
    color: #5a7a8c;
    white-space: nowrap;
}

.aditivo-fora-escopo-item-selecionado {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
    padding: 10px 12px;
    border: 1px solid #eccb84;
    border-radius: 8px;
    background: #fff;
    color: #6b4409;
}

/* P-ADITIVO-07C: corpo textual do "Item selecionado" — separado do
   ícone (à esquerda) e do botão "Trocar serviço" (à direita), que só
   aparece quando a busca está recolhida. */
.aditivo-fora-escopo-item-selecionado-corpo {
    flex: 1 1 auto;
    min-width: 0;
}

.aditivo-fora-escopo-item-selecionado strong {
    display: block;
    color: #172b38;
    font-size: 0.80rem;
}

.aditivo-fora-escopo-item-selecionado span {
    display: block;
    margin-top: 2px;
    color: #7a5a1e;
    font-size: 0.72rem;
}

/* P-ADITIVO-07C (Correção 7): deixa explícito que a base foi escolhida
   manualmente — nunca finge vínculo automático que não existe nesta
   frente. */
.aditivo-fora-escopo-origem-selecao {
    display: flex !important;
    align-items: center;
    gap: 4px;
    margin-top: 6px !important;
    color: #94781f !important;
    font-size: 0.66rem !important;
    font-style: italic;
}

.aditivo-fora-escopo-sem-selecao {
    margin: 10px 0 0;
    color: #94781f;
    font-size: 0.74rem;
    font-style: italic;
}

/* P-ADITIVO-07B (Correção 1/2): botão "Buscar" secundário/dispensável —
   a busca automática ao digitar é o fluxo principal agora. Ícone só,
   compacto, discreto — nunca compete visualmente com o campo de busca. */
.aditivo-btn-ghost {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background: transparent;
    color: #94a3b8;
    cursor: pointer;
}

.aditivo-btn-ghost:hover {
    background: #f8fafc;
    color: #64748b;
}

.aditivo-btn-ghost:disabled {
    color: #cbd5e1;
    cursor: not-allowed;
}

/* P-ADITIVO-07B (Correção 2): dica curta acima da lista de resultados —
   nunca deixa parecer que a busca já escolheu algo por conta própria. */
.aditivo-fora-escopo-busca-status--dica {
    color: #94781f;
    font-style: italic;
}

/* Ação explícita "Selecionar" em cada linha de resultado — reforça que
   é um CANDIDATO, não algo já escolhido. */
.aditivo-fora-escopo-resultado-acao {
    flex: 0 0 auto;
    padding: 3px 10px;
    border-radius: 999px;
    background: #f6dfa9;
    color: #6b4409;
    font-size: 0.66rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em;
    white-space: nowrap;
}

.aditivo-fora-escopo-resultado-item--selecionado {
    background: #fdf6e8;
    border-left: 3px solid #8a5a0f;
}

.aditivo-fora-escopo-resultado-item--selecionado .aditivo-fora-escopo-resultado-acao {
    background: #e7f6ee;
    color: #1a7a4a;
}

.aditivo-fora-escopo-item-selecionado-rotulo {
    color: #94781f;
    font-size: 0.64rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

/* P-ADITIVO-07B (Correção 6/9): nunca "R$ 0,00" quando o preço não foi
   resolvido — mensagem curta em tom neutro (nem erro vermelho, nem
   sucesso), coerente com a paleta âmbar do módulo. */
.aditivo-fora-escopo-preco-indisponivel {
    color: #94781f;
    font-size: 0.76rem;
    font-weight: 600;
    font-style: italic;
}

/* P-ADITIVO-07B (ADENDO fator contratual): explicação curta da origem do
   fator (automático vs manual) — mesmo tom do aviso de memória, discreto. */
.aditivo-fora-escopo-fator-explicacao {
    margin: -4px 0 8px;
    color: #94781f;
    font-size: 0.70rem;
    font-style: italic;
}

.aditivo-fora-escopo-fator-indisponivel {
    font-style: normal;
    font-weight: 600;
}

/* P-ADITIVO-07C (Correção 6): bloco de auditoria do fator calculado
   automaticamente — critério + os dois totais usados + o valor
   resultante, sempre visível junto do campo (nunca só um texto solto). */
.aditivo-fora-escopo-fator-auditoria {
    margin: -4px 0 10px;
    padding: 8px 10px;
    border: 1px dashed #eccb84;
    border-radius: 8px;
    background: #fffdf7;
}

.aditivo-fora-escopo-fator-auditoria-titulo {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 4px;
    color: #1a7a4a;
    font-size: 0.72rem;
    font-weight: 800;
}

.aditivo-fora-escopo-fator-auditoria-linha {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    font-size: 0.70rem;
}

.aditivo-fora-escopo-fator-auditoria-linha span {
    color: #94781f;
}

.aditivo-fora-escopo-fator-auditoria-linha strong {
    color: #172b38;
    font-weight: 700;
    white-space: nowrap;
}

/* P-ADITIVO-07C (Correção 2): "aplicação/observação" do usuário, sempre
   separada da descrição oficial no card salvo — só aparece quando
   preenchida. */
.aditivo-fora-escopo-observacao {
    display: flex;
    align-items: baseline;
    gap: 6px;
    margin: 6px 0 0;
    padding-top: 6px;
    border-top: 1px dashed #f1dfae;
    font-size: 0.74rem;
}

.aditivo-fora-escopo-observacao span {
    flex: 0 0 auto;
    color: #94781f;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.62rem;
    letter-spacing: .03em;
}

.aditivo-fora-escopo-observacao strong {
    color: #334155;
    font-weight: 600;
    font-style: italic;
}

/* Indicador de autosave da gaveta de fora do escopo — mesmo vocabulário
   visual (cores por estado) do indicador do item contratado, classe/id
   próprios (aditivo-fora-escopo-autosave), nenhum estado compartilhado. */
.aditivo-fora-escopo-autosave {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
}

.aditivo-fora-escopo-autosave.aditivo-autosave--idle { color: #64748b; }
.aditivo-fora-escopo-autosave.aditivo-autosave--pendente { color: #b45309; }
.aditivo-fora-escopo-autosave.aditivo-autosave--salvando { color: #0ea5e9; }
.aditivo-fora-escopo-autosave.aditivo-autosave--salvo { color: #10b981; }
.aditivo-fora-escopo-autosave.aditivo-autosave--erro { color: #ef4444; }

/* -- (Mapa de evolucao / roadmap em fases removido -- P-ADITIVO-WORKSPACE-UX-DEFINITIVO-02 sec 5/45/47, zero funcao operacional) -- */

/* ── Card de rascunho (P-ADITIVO-05B) ─────────────────────────────── */

.aditivo-card-rascunho {
    margin-bottom: 14px;
    padding: 16px 18px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(15, 23, 42, 0.05);
}

/* P-ADITIVO-06: consolidado — acento neutro/slate, distinto do verde
   "ativo/editável" e do vermelho de erro; comunica "trancado", não
   "problema". Usado hoje pela visão de histórico somente leitura
   (`_renderizarVisualizacaoHistorico`) — o navegador/barra superior usa
   `.aditivo-topo-navegador--consolidado` (mesma paleta, container novo). */
.aditivo-card-rascunho-consolidado {
    border-top: 4px solid #64748b;
}

.aditivo-pill-consolidado {
    background: #eef1f5;
    color: #475569;
}

.aditivo-btn-reabrir {
    border-color: #64748b;
    color: #334155;
}

/* P-MEDICAO-ADITIVO-NAVEGADOR-TEMPORAL-CARDS-M17-01 (§27-34): mesmo aviso,
   compactado para 1 linha (texto completo preservado via `title`, lido no
   hover — nada é removido, só deixa de ocupar 2-3 linhas de altura). */
.aditivo-aviso-linha-unica {
    padding: 8px 14px;
    margin-bottom: 10px;
    font-size: 0.76rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    cursor: help;
}

.aditivo-card-rascunho-cabecalho {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.aditivo-card-rascunho-cabecalho > div {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.aditivo-card-rascunho-meta {
    color: #94a3b8;
    font-size: 0.72rem;
}

.aditivo-kpis-compactos .aditivo-kpi {
    padding: 10px 12px;
}

.aditivo-kpis-compactos .aditivo-kpi-valor {
    font-size: 0.94rem;
}

/* P-MEDICAO-ADITIVO-NAVEGADOR-TEMPORAL-CARDS-M17-01 (§27-34): grade
   financeira compactada em 5 colunas em telas de desktop (>=1100px) —
   usada hoje pela visão de histórico somente leitura; a barra superior
   normal usa `.aditivo-faixa-compacta` (1 linha de chips, sempre). */
@media (min-width: 1100px) {
    .aditivo-grid-financeiro {
        grid-template-columns: repeat(5, 1fr);
    }
}

/* ── Prazo (efeito temporal do aditivo) — P-PRAZO-CONTRATUAL-ADITIVO-
   PRAZO-UX-02, agora dentro da faixa compacta da barra superior. ──────── */

.aditivo-prazo-input-grupo {
    display: flex;
    align-items: center;
    gap: 6px;
}

.aditivo-prazo-input-grupo .aditivo-input-fator {
    width: 56px;
}

.aditivo-prazo-input-grupo span {
    color: #5a7a8c;
    font-size: 0.78rem;
}

.aditivo-prazo-valor-readonly {
    color: #0b3c5d;
    font-weight: 800;
}

/* ── Visualização de histórico somente leitura — P-ADITIVO-WORKSPACE-
   DEFINITIVO-MEDICAO-FECHAMENTO-01 (§7/§11). O histórico deixou de ter
   sua própria listagem de chips (agora é uma opção do navegador, ver
   `.aditivo-topo-navegador`) — o que resta aqui é só a TELA somente
   leitura de UM aditivo do histórico. ──────────────────────────────── */

.aditivo-historico-visualizacao {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.aditivo-historico-topo {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.aditivo-historico-voltar {
    align-self: flex-start;
}

.aditivo-card-rascunho-historico {
    border-top-color: #1a5c8a;
}

/* ── Botões (P-ADITIVO-05B) ────────────────────────────────────────── */

.aditivo-btn-primario {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 16px;
    border: none;
    border-radius: 999px;
    background: #0b3c5d;
    color: #fff;
    font-size: 0.78rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}

.aditivo-btn-primario:hover {
    background: #0a3350;
}

.aditivo-btn-primario:disabled {
    background: #94a3b8;
    cursor: not-allowed;
}

.aditivo-btn-secundario {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    background: #fff;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
}

.aditivo-btn-secundario:hover {
    background: #f8fafc;
}

.aditivo-btn-secundario:disabled {
    color: #cbd5e1;
    cursor: not-allowed;
}

/* ── Gaveta funcional de item contratado (P-ADITIVO-05B) ─────────────
   Painel expansível dentro do próprio card do item — só existe quando
   há rascunho ativo e o usuário clica "Abrir gaveta". */

/* P-ADITIVO-WORKSPACE-UX-FECHAMENTO-03 (§14): sem borda/fundo próprios —
   já vive dentro de .aditivo-painel-trabalho-dentro (único frame/elevação
   do painel), evitar caixa-dentro-de-caixa. */
.aditivo-gaveta-painel {
    margin-top: 10px;
}

.aditivo-gaveta-campo {
    margin-bottom: 10px;
}

.aditivo-gaveta-campo label {
    display: block;
    margin-bottom: 4px;
    color: #5a7a8c;
    font-size: 0.70rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.aditivo-select,
.aditivo-textarea,
.aditivo-input {
    width: 100%;
    box-sizing: border-box;
    padding: 6px 10px;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    background: #fff;
    color: #172b38;
    font-size: 0.80rem;
    font-family: inherit;
}

.aditivo-textarea {
    resize: vertical;
}

.aditivo-input-fator {
    width: 68px;
    text-align: right;
}

.aditivo-memoria {
    margin-bottom: 10px;
}

.aditivo-memoria-cabecalho {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 6px;
}

.aditivo-memoria-cabecalho > span:first-child {
    color: #172b38;
    font-size: 0.80rem;
    font-weight: 800;
}

.aditivo-memoria-aviso {
    color: #94a3b8;
    font-size: 0.68rem;
    font-style: italic;
}

.aditivo-tabela-memoria th,
.aditivo-tabela-memoria td {
    padding: 6px 8px;
}

.aditivo-subtotal-preview {
    font-weight: 700;
    color: #0b3c5d;
    white-space: nowrap;
}

.aditivo-btn-remover-linha {
    width: 22px;
    height: 22px;
    border: none;
    border-radius: 50%;
    background: #fee2e2;
    color: #b91c1c;
    font-size: 0.85rem;
    line-height: 1;
    cursor: pointer;
}

.aditivo-btn-remover-linha:hover {
    background: #fecaca;
}

.aditivo-gaveta-rodape {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 4px;
}

/* P-ADITIVO-06B: agrupa os botões do rodapé da gaveta, separado do
   indicador de autosave (que fica à esquerda). */
.aditivo-gaveta-rodape-acoes {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.aditivo-btn-salvar-agora {
    font-size: 0.72rem;
    color: #64748b;
}

/* P-ADITIVO-UX-FORA-ESCOPO-FECHAMENTO-07 (§27/§30): "Fechar" é ação de
   SAÍDA — nunca deve competir visualmente com "Novo serviço" (ação de
   continuidade). Mesmo formato/tamanho de .aditivo-btn-secundario, só
   mais discreto (borda/fundo neutros). Escopado só ao Fora do escopo —
   não altera .aditivo-btn-secundario nem o "Fechar" de Dentro do escopo. */
.aditivo-fora-escopo-btn-fechar {
    border-color: transparent;
    background: transparent;
    color: #94a3b8;
}

.aditivo-fora-escopo-btn-fechar:hover {
    background: #f8fafc;
    color: #64748b;
}

/* P-ADITIVO-06B: indicador de autosave da gaveta — vocabulário visual
   inspirado no indicador do Memorial (mesmas cores/ícones), mas isolado:
   classes e id próprios do módulo Aditivo, sem nenhuma dependência de
   src/ui.js. */
.aditivo-autosave-indicador {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.76rem;
    font-weight: 700;
    white-space: nowrap;
}

.aditivo-autosave--idle {
    color: #64748b;
}

.aditivo-autosave--pendente {
    color: #b45309;
}

.aditivo-autosave--salvando {
    color: #0ea5e9;
}

.aditivo-autosave--salvo {
    color: #10b981;
}

.aditivo-autosave--erro {
    color: #ef4444;
}

/* ── Responsividade ────────────────────────────────────────────────── */

@media (max-width: 640px) {
    /* P-ADITIVO-ESTABILIZACAO-FINAL-05 (§12-15): em telas estreitas, a
       quebra é CONTROLADA (empilha os 2 grupos inteiros, nunca deixa
       ações "soltas" no meio dos chips) — mesmo princípio do desktop, só
       a direção muda. */
    .aditivo-topo-navegador-linha1 {
        flex-direction: column;
        align-items: stretch;
        flex-wrap: wrap;
    }

    .aditivo-topo-navegador-acoes {
        flex-wrap: wrap;
    }

    .aditivo-faixa-compacta {
        gap: 10px;
    }

    .aditivo-secao-cabecalho-linha {
        flex-direction: column;
        align-items: flex-start;
    }

    .aditivo-itens-gavetas {
        max-height: 460px;
    }

    .aditivo-item-gaveta__footer {
        justify-content: flex-start;
    }

    .aditivo-painel-trabalho-vazio {
        flex-direction: column;
        align-items: flex-start;
    }

    .aditivo-fora-escopo-busca-linha {
        flex-direction: column;
    }

    .aditivo-card-rascunho-cabecalho {
        flex-direction: column;
        align-items: flex-start;
    }

    .aditivo-gaveta-rodape {
        justify-content: flex-start;
    }
}
