/* Botões secundários discretos (pílula com contorno). Usado em: Carta Banco (contratos do admin e da empresa).
   Antes a Carta Banco era um botão vermelho grande que dominava a coluna de ações. */
.btn-carta-banco {
    display: inline-flex; align-items: center; gap: 4px; width: fit-content; margin-left: auto; margin-right: auto;
    padding: 2px 9px; border: 1px solid #fecaca; border-radius: 999px; background: #fff; color: #b91c1c;
    font-size: .62rem; font-weight: 700; letter-spacing: .3px; text-decoration: none; line-height: 1.6; white-space: nowrap;
    transition: background-color .15s, border-color .15s;
}
.btn-carta-banco:hover, .btn-carta-banco:focus-visible { background: #fef2f2; border-color: #f87171; color: #991b1b; }
.btn-carta-banco:focus-visible { outline: 2px solid #fca5a5; outline-offset: 1px; }
.btn-carta-banco i { font-size: .6rem; margin: 0 !important; }
/* desabilitado: empresa sem convênio COM FOLHA */
.btn-carta-banco.is-off { color: #94a3b8; border-color: #e2e8f0; border-style: dashed; background: #f8fafc; cursor: not-allowed; }
.btn-carta-banco.is-off:hover { background: #f8fafc; border-color: #e2e8f0; color: #94a3b8; }
.btn-carta-banco small { font-size: .55rem; font-weight: 600; text-transform: lowercase; }

/* Aditivo: mesma pílula compacta da Carta Banco, em azul (antes era uma barra azul em degradê de largura total) */
.btn-aditivo-compacto {
    display: inline-flex; align-items: center; gap: 4px; width: fit-content; margin-left: auto; margin-right: auto;
    padding: 2px 10px; border: 1px solid #bfdbfe; border-radius: 999px; background: #fff; color: #1d4ed8;
    font-size: .64rem; font-weight: 800; letter-spacing: .4px; line-height: 1.7; white-space: nowrap; cursor: pointer;
    transition: background-color .15s, border-color .15s;
}
.btn-aditivo-compacto:hover, .btn-aditivo-compacto:focus-visible { background: #eff6ff; border-color: #60a5fa; color: #1e40af; }
.btn-aditivo-compacto:focus-visible { outline: 2px solid #93c5fd; outline-offset: 1px; }
.btn-aditivo-compacto i { font-size: .6rem; }

/* Aba VENCIMENTOS (Vencer e empresa) — par Aditivo / Distrato no mesmo padrão (05/11/2026, pedido do usuário):
   ícone num círculo, mesmo tamanho, contorno na cor da ação e degradê ao passar o mouse. */
.btn-venc { display: inline-flex; align-items: center; gap: 8px; min-width: 150px; justify-content: flex-start;
    padding: 6px 14px 6px 6px; border-radius: 999px; border: 1.5px solid; background: #fff; cursor: pointer;
    font-size: .7rem; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; line-height: 1.2; white-space: nowrap;
    transition: background .2s, color .2s, transform .15s, box-shadow .2s, border-color .2s; }
.btn-venc .btn-venc-ic { width: 26px; height: 26px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center;
    font-size: .72rem; flex: 0 0 auto; transition: transform .25s, background .2s, color .2s; }
.btn-venc:hover, .btn-venc:focus-visible { transform: translateY(-1px); color: #fff; }
.btn-venc:hover .btn-venc-ic, .btn-venc:focus-visible .btn-venc-ic { background: rgba(255,255,255,.22); color: #fff; transform: rotate(-12deg); }
.btn-venc:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.btn-venc.venc-aditivo { color: #1d4ed8; border-color: #93c5fd; }
.btn-venc.venc-aditivo .btn-venc-ic { background: #dbeafe; color: #1d4ed8; }
.btn-venc.venc-aditivo:hover, .btn-venc.venc-aditivo:focus-visible { color: #fff; background: linear-gradient(135deg, #2563eb, #1d4ed8); border-color: #1d4ed8;
    box-shadow: 0 8px 20px rgba(37,99,235,.28); }
.btn-venc.venc-distrato { color: #b91c1c; border-color: #fca5a5; }
.btn-venc.venc-distrato .btn-venc-ic { background: #fee2e2; color: #b91c1c; }
.btn-venc.venc-distrato:hover, .btn-venc.venc-distrato:focus-visible { color: #fff; background: linear-gradient(135deg, #dc2626, #991b1b); border-color: #991b1b;
    box-shadow: 0 8px 20px rgba(185,28,28,.28); }
.btn-venc.is-off { color: #64748b; border-color: #e2e8f0; border-style: dashed; background: #f8fafc; cursor: not-allowed; }
.btn-venc.is-off .btn-venc-ic { background: #e2e8f0; color: #64748b; }
.btn-venc.is-off:hover { transform: none; box-shadow: none; color: #64748b; background: #f8fafc; }
.btn-venc.is-off:hover .btn-venc-ic { transform: none; background: #e2e8f0; color: #64748b; }
.btn-venc-par { display: flex; flex-direction: column; align-items: stretch; gap: 6px; width: fit-content; margin-left: auto; }
@media (max-width: 768px) { .btn-venc-par { margin: 0 auto; } }

/* Aba VENCIMENTOS — coluna "Docs Renovação" (Vencer e empresa, 05/11/2026, pedido do usuário): anexar avaliação /
   declaração, baixar o modelo e ver o que foi anexado no mesmo visual. Só CSS (o JS que redesenha o bloco depois do
   envio usa as mesmas classes): pendente = contorno tracejado laranja · anexado = verde claro com ✓ · modelo = cinza. */
td[data-label="Docs Renovação"] .btn { border-radius: 10px; font-size: .66rem !important; font-weight: 800; letter-spacing: .4px;
    text-transform: uppercase; padding: 7px 12px; min-height: 34px; line-height: 1.2; box-shadow: none !important;
    display: inline-flex; align-items: center; justify-content: center; gap: 6px;
    transition: background .2s, color .2s, border-color .2s, transform .15s, box-shadow .2s; }
td[data-label="Docs Renovação"] .btn:hover { transform: translateY(-1px); }
td[data-label="Docs Renovação"] .btn i { margin-right: 0 !important; }
/* pendente: anexar */
td[data-label="Docs Renovação"] .btn.btn-status-missing,
td[data-label="Docs Renovação"] .btn.btn-outline-danger { background: #fffbeb; color: #b45309 !important; border: 1.5px dashed #f59e0b !important; }
td[data-label="Docs Renovação"] .btn.btn-status-missing:hover,
td[data-label="Docs Renovação"] .btn.btn-outline-danger:hover { background: linear-gradient(135deg, #f59e0b, #d97706); color: #fff !important;
    border-style: solid !important; box-shadow: 0 6px 16px rgba(217,119,6,.28) !important; }
/* anexado: ver / trocar */
td[data-label="Docs Renovação"] .btn.btn-status-ok,
td[data-label="Docs Renovação"] .btn.btn-success { background: #ecfdf5 !important; color: #047857 !important; border: 1.5px solid #6ee7b7 !important; }
td[data-label="Docs Renovação"] .btn.btn-status-ok:hover,
td[data-label="Docs Renovação"] .btn.btn-success:hover { background: linear-gradient(135deg, #10b981, #047857) !important; color: #fff !important;
    border-color: #047857 !important; box-shadow: 0 6px 16px rgba(4,120,87,.25) !important; }
/* baixar o modelo da avaliação */
td[data-label="Docs Renovação"] .btn.btn-outline-secondary { background: #f8fafc; color: #334155 !important; border: 1.5px solid #cbd5e1 !important; }
td[data-label="Docs Renovação"] .btn.btn-outline-secondary:hover { background: #334155; color: #fff !important; border-color: #334155 !important; }
/* botões grudados (modelo | anexar | trocar): cantos só nas pontas */
td[data-label="Docs Renovação"] .d-inline-flex[id^="docAvaliacaoRenovacao"], td[data-label="Docs Renovação"] .d-inline-flex[id^="docDeclaracaoRenovacao"] { width: 236px; max-width: 100%; }
td[data-label="Docs Renovação"] .d-inline-flex[id^="doc"] { display: flex !important; }
td[data-label="Docs Renovação"] .d-inline-flex[id^="doc"] > .btn { border-radius: 0 !important; }
td[data-label="Docs Renovação"] .d-inline-flex[id^="doc"] > .btn:first-child { border-top-left-radius: 10px !important; border-bottom-left-radius: 10px !important; }
td[data-label="Docs Renovação"] .d-inline-flex[id^="doc"] > .btn:last-child { border-top-right-radius: 10px !important; border-bottom-right-radius: 10px !important; flex: 1 1 auto; }
td[data-label="Docs Renovação"] .d-inline-flex[id^="doc"] > .btn + .btn { border-left-width: 0 !important; }
td[data-label="Docs Renovação"] .btn-group > .btn + .btn { border-left-width: 0 !important; }
/* pendência no contrato atual: cartão de aviso */
td[data-label="Docs Renovação"] .btn.btn-warning { background: #fffbeb !important; color: #92400e !important; border: 1.5px solid #fcd34d !important;
    text-transform: none; letter-spacing: 0; flex-direction: column; gap: 2px; padding: 9px 12px; }
td[data-label="Docs Renovação"] .btn.btn-warning:hover { background: #fef3c7 !important; }
/* empresa, documentos entregues: Ver avaliação / Ver declaração como pílulas */
td[data-label="Docs Renovação"] a.text-decoration-none[title^="Visualizar"] { padding: 4px 10px; border-radius: 999px; background: #ecfdf5;
    border: 1px solid #a7f3d0; font-weight: 700; transition: background .2s; }
td[data-label="Docs Renovação"] a.text-decoration-none[title^="Visualizar"]:hover { background: #d1fae5; }
