/* Estudo de Viabilidade - Cards */
 
/* Remove borda/sombra da subgrid nativa */
#Subgrid_new_1,
#Subgrid_new_1 .entity-grid,
#Subgrid_new_1 .view-grid,
#Subgrid_Estudo_de_Viabilidade,
#Subgrid_Estudo_de_Viabilidade .entity-grid,
#Subgrid_Estudo_de_Viabilidade .view-grid,
#formalizacao_assinates_termo,
#formalizacao_assinates_termo .entity-grid,
#formalizacao_assinates_termo .view-grid {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

.assinante-card {
    height: auto;
}

.estudo-card__input-group {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
}

.estudo-card__input {
    padding: 8px 16px;
    border: 1px solid #7C9599;
    border-radius: 4px 0px 0px 4px;
}

.estudo-divisor-wrapper {
    padding-top: 0px;
}

#estudo-divisor-row-bottom {
    margin-top: 24px;
    margin-bottom: 24px;
}

.estudo-divisor {
    height: 1px;
    background-color: #6D32FF;
}

.estudo-cards-wrapper {
    padding-top: 0px;
}

.estudo-cards-titulo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 12px;
}

.estudo-cards-titulo__label {
    font-size: 18px;
    font-weight: 400;
    color: #222222;
    padding-bottom: 15px;
}

.estudo-cards-titulo__link {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #6D32FF;
    text-decoration: none;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
}

.estudo-cards-titulo__link:hover {
    text-decoration: underline;
}

.estudo-cards-titulo__link .fa {
    font-size: 11px;
}

.estudo-cards-container {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 480px;
    overflow-y: auto;
    overflow-x: hidden;
    border-radius: 5px !important;
}

.estudo-card {
    background: #F1F4F4 !important;
    border-radius: 6px !important;
    padding: 18px 20px 16px !important;
    min-height: 300px !important;
}

.estudo-card__header {
    padding: 0 !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    margin-bottom: 18px !important;
}

.estudo-card__titulo {
    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 700 !important;
    color: #222222 !important;
}

.estudo-card__header-right {
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.estudo-card__badge {
    height: 25px !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    border-radius: 11px !important;
    background: #7C9599 !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
}

.estudo-card__badge_enviado_cliente {
    height: 25px !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    border-radius: 11px !important;
    background: #2FCDED !important;
    color: #000 !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
}

.estudo-card__badge_assinado_cliente {
    height: 25px !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    border-radius: 11px !important;
    background: #9EE8AE !important;
    color: #000 !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
}

.estudo-card__badge_termo_cancelado {
    height: 25px !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    border-radius: 11px !important;
    background: red !important;
    color: #fff !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
}

.estudo-card__semaforo {
    width: 40px !important;
    height: 40px !important;
    background: transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.estudo-card__campos4 {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr 1fr !important;
    gap: 20px 48px !important;
    margin-bottom: 18px !important;
    padding: 0 !important;
    
}

.estudo-card__label {
    font-size: 16px !important;
    line-height: 20px !important;
    color: #7C9599 !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
}

.estudo-card__valor {
    font-size: 16px !important;
    line-height: 26px !important;
    color: #455558 !important;
    font-weight: 400 !important;
    white-space: normal !important;
}

.estudo-card__pacote {
    display: flex !important;
    flex-direction: column !important;
    margin-bottom: 22px !important;
}

.estudo-card__arquivo-label {
    margin-bottom: 10px !important;
}

.estudo-card__footer {
    min-height: 58px !important;
    margin: 0 !important;
    border-radius: 4px !important;
    background: #E6EBEC !important;
    display: flex !important;
    align-items: stretch !important;
    position: relative !important;
    padding-right: 78px !important;
}

.estudo-card__pdf-nome {
    font-size: 16px !important;
    padding: 15px 16px !important;
    color: #263CC8 !important;
    display: flex !important;
    align-items: center !important;
}

.estudo-card__download-btn {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;

    width: 58px !important;
    height: 58px !important;

    background: #6D32FF !important;
    border: none !important;
    outline: none !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 0 4px 4px 0 !important;

    cursor: pointer !important;

    padding: 0 !important;
    margin: 0 !important;
}

.estudo-card__download-btn:hover {
    background: #5B28E3 !important;
}

.estudo-card__download-btn svg {
    width: 24px !important;
    height: 24px !important;
}

.uc-divisor {
    height: 1px;
    background-color: #6D32FF;
}

.uc-cards-wrapper {
    padding-top: 0px;
}

.entity-grid.subgrid {
    border-radius: 4px !important;
    overflow: hidden;
}

.uc-cards-titulo {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 12px;
}

.uc-cards-titulo__label {
    font-size: 18px;
    font-weight: 600;
    color: #222222;
    padding-bottom: 24px;
}

.uc-cards-titulo__link {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: #6D32FF;
    text-decoration: none;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
}

.uc-cards-titulo__link:hover {
    text-decoration: underline;
}

.uc-cards-titulo__link .fa {
    font-size: 11px;
}

.uc-cards-container {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 480px;
    overflow-y: auto;
    overflow-x: hidden;
}

.uc-card {
    height: auto;
    display: flex;
    flex-direction: column;
    background: #F1F4F4;
    border-radius: 4px;
    overflow: hidden;
    font-family: inherit;
    flex-shrink: 0;
}

.uc-card__titulo {
    font-weight: bold !important;
    font-size: 16px;
    color: #222222;
    flex: 1;
}

.uc-card__header-right {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.uc-card__campos {
    flex: 1;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 8px;
    padding: 4px 12px 12px;
    align-content: start;
}

.uc-card__campo:first-child {
  grid-column: 1 / -1; 
}

.uc-card__campo {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.uc-card__label {
    font-size: 11px;
    color: #7C9599;
    font-weight: 400;
}

.uc-card__valor {
    font-size: 13px;
    color: #455558;
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.uc-card__valor--wrap {
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
    word-break: break-word;
}

.uc-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 12px 6px;
    gap: 8px;
}

.uc-card .uc-card__header .uc-card__titulo {
    font-weight: bold !important;
    font-size: 16px;
    color: #222222;
}

.uc-cards-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 0 0;
    border-top: 1px solid #e0e0e0;
    margin-top: 8px;
}

.uc-cards-footer__link {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: #6D32FF;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    text-decoration: none;
}

.uc-cards-footer__link:hover {
    text-decoration: underline;
}

.uc-cards-footer__count {
    font-size: 13px;
    color: #222222;
    font-weight: 500;
}

.btn-ver-detalhes {
    background: none;
    border: 1px solid #6D32FF;
    color: #6D32FF;
    padding: 6px 14px;
    font-size: 13px;
    cursor: pointer;
    white-space: nowrap;
}

.btn-ver-detalhes:hover {
    background: #e0e0e0;
}

.precificacao-cards-titulo__label {
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 400 !important;
    color: #222222 !important;
}

.precificacao-cards-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 !important;
}

.precificacao-card {
    min-height: 42px !important;

    background: #F1F4F4 !important;

    border-radius: 4px !important;
    box-shadow: none !important;
}

.precificacao-card__header {
    min-height: 42px !important;
    padding: 0 8px !important;
    display: flex !important;
    align-items: center !important;
}

.precificacao-card__titulo {
    font-size: 17px !important;
    line-height: 22px !important;
    font-weight: 700 !important;
    color: #222222 !important;
}

.precificacao-calcular-wrapper .btn-default {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.customToolTip {
    z-index: 999;
    white-space: normal;
    box-sizing: border-box;
    background-color: #F1F4F4;
}
.layout-analise-credito {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  width: 100%;
  margin-top: 24px;
}

.analise-credito-card {
  background: #fff;
  border: 1px solid #D7DFE0;
  border-radius: 4px;
  padding: 24px;
}

.analise-credito-card legend {
  color: #6D32FF;
  font-size: 28px;
  font-weight: 400;
  margin-bottom: 24px;
}

.analise-credito-card .control {
  margin-bottom: 18px;
}

.analise-credito-card label {
  font-weight: 700 !important;
  color: #455558 !important;
}

.analise-credito-card textarea {
  min-height: 150px;
  border: 1px solid #455558;
}
.valor-total-bloco-custom {
  clear: both;
  width: 100%;
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid #6D32FF;
}

.valor-total-titulo {
  font-size: 20px;
  font-weight: 400;
  color: #222;
  margin-bottom: 20px;
}

.valor-total-bloco-custom table.section {
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
}
.documentos-obrigatorios-wrapper {
  margin: 14px 0 18px;
}

.documentos-obrigatorios-title {
  display: flex;
  align-items: center;
  color: #455558;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 10px;
  line-height: 1.25;
}

.documentos-obrigatorios-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.documentos-obrigatorios-item {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 24px;
}

.documentos-obrigatorios-check {
  width: 22px;
  height: 22px;
  min-width: 22px;
  border: 1px solid #90A5A8;
  border-radius: 3px;
  background: #D7DFE0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.documentos-obrigatorios-text {
  font-size: 15px;
  font-weight: 400;
  color: #7C9599;
  line-height: 1.2;
}
.documentos-obrigatorios-help {
  position: relative;
  width: 18px;
  height: 18px;
  border: 1px solid #90A5A8;
  border-radius: 50%;
  font-size: 12px;
  color: #7C9599;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.tooltip-custom {
  position: absolute;
  bottom: 28px;
  left: 50%;
  transform: translateX(-50%);
  background: #222;
  color: #fff;
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 4px;
  white-space: nowrap;
  display: none;
  z-index: 10;
}

.documentos-obrigatorios-help:hover .tooltip-custom {
  display: block;
}
.documentos-obrigatorios-title .customToolTip {
    display: inline-flex;
    align-items: center;
}
#SubGrid_Parametro_Energia_Contrato
{
    width: 100% !important;
}
#SubGrid_Parametro_Energia_Contrato table,
#SubGrid_Parametro_Energia_Contrato .view-toolbar {
    display: none !important;
}
td.subgrid-cell:has(#SubGrid_Parametro_Energia_Contrato),
td.subgrid-cell:has(#SubGrid_Parametro_Energia_Contrato) > .control,
#SubGrid_Parametro_Energia_Contrato,
#SubGrid_Parametro_Energia_Contrato > .entity-grid {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
}

#SubGrid_Parametro_Energia_Contrato {
    display: block !important;
}

#SubGrid_Parametro_Energia_Contrato .param-energia-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}
.param-energia-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    height: 486px !important;

    display: flex !important;
    flex-direction: column !important;

    background: #fff !important;
    
    border-radius: 4px !important;
    overflow: hidden !important;
    box-shadow: none !important;
}

.param-energia-header {
    height: 48px !important;
    min-height: 48px !important;

    display: flex !important;
    align-items: center !important;

    padding: 0 12px !important;

    font-size: 14px !important;
    font-weight: 400 !important;
    color: #222 !important;

    border-bottom: 1px solid #D7DFE0 !important;
}

.param-energia-list {
   flex: 1 !important;
    min-height: 0 !important;
    height: auto !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    padding: 8px !important;
}

.param-energia-card {
    background: #f1f3f4;
    border-radius: 4px;
    padding: 10px 8px;
    margin-bottom: 8px;
}

.param-energia-volume {
    font-size: 18px;
    font-weight: 900;
    color: #252b2e;
    margin-bottom: 8px;
    white-space: nowrap;
}

.param-energia-fields {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 12px;
}


.param-energia-fields span {
    font-size: 10px;
    line-height: 13px;
}

.param-energia-fields > div {
    flex: 1 1 0;
    min-width: 0;
}

.param-energia-fields strong {
    display: block;
    font-size: 12px;
    line-height: 12px;
    color: #78909c;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-bottom: 5px !important;
}

.param-energia-fields span {
    display: block;
    font-size: 11px;
    line-height: 14px;
    color: #455558;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.param-energia-footer {
    height: 56px !important;
    min-height: 56px !important;

    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-end !important;

    padding: 8px !important;

    background: #fff !important;
    border-top: 1px solid #D7DFE0 !important;

    font-size: 13px !important;
    color: #252b2e !important;
}
.param-energia-footer strong {
    font-weight: 700 !important;
}

.param-energia-footer span {
    display: block !important;
    margin-top: 4px !important;
}
td:has(#edpb2c_data_validade_preco) {
    display: none !important;
}

/* ===== Layout do header com ícone ===== */
.header-custom-title-subtitle-icon-row {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.header-custom-title-subtitle-icon-icon {
    display: flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}

.header-custom-title-subtitle-icon-texts {
    display: flex !important;
    flex-direction: column !important;
}

/* Título principal em negrito */
.header-custom-title-subtitle-icon-title {
    font-size: 36px !important;
    margin-top: 15px;
}

/* ===== Subtítulo da página (Negociações - Mercado Livre) ===== */
.header-custom-title-subtitle-icon-subtitle {
    font-size: 14px !important;
    color: #455558 !important;
    font-weight: 400 !important;
    margin-top: 2px !important;
    margin-bottom: 16px !important;
    display: block !important;
}

/* ===== Categoria do Cliente ===== */
.categoria-cliente-wrapper {
    padding-top: 0 !important;
    margin-top: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 12px !important;
    color: #455558 !important;
}

.categoria-cliente-label {
    font-size: 12px !important;
    color: #455558 !important;
    font-weight: 700 !important;
}

.categoria-cliente-badge {
    background-color: white !important;
    padding: 3px 8px !important;
    border-radius: 4px !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    color: #455558 !important;
}
/* ===== Botão Perder ===== */
#loss-btn {
    color: #222222 !important;
}
/* ===== Abas - underline-tab ===== */
/* A aba SELECIONADA é a que tem a classe underline-tab */
/* As outras abas NÃO têm essa classe */

/* Aba selecionada - roxo */
li.underline-tab > a,
li.underline-tab > a:hover,
li.underline-tab > a:focus {
    color: #6D32FF !important;
}

/* Abas não selecionadas - cor padrão */
.nav.navbar-nav li:not(.underline-tab) > a {
    color: #455558 !important;
}

/* Hover nas abas não selecionadas */
.nav.navbar-nav li:not(.underline-tab) > a:hover {
    color: #6D32FF !important;
}

/* Wrapper geral dos assinantes */
.assinante-cards-wrapper {
    background: #fff;
    border: 1px solid #D7DFE0;
    border-radius: 6px;
    padding: 12px;
}
#formalizacao_assinates_termo .entity-grid {
    border: none !important;
}
.assinante-cards-titulo {
    font-size: 18px;
    font-weight: 600;
    color: #222222;

    padding-bottom: 12px;
    margin-bottom: 12px;

    border-bottom: 1px solid #E0E6E8;
}
fieldset[aria-label="Assinantes do Termo"] legend {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #222 !important;

    padding-bottom: 12px;
    margin-bottom: 12px;

    border-bottom: 1px solid #E0E6E8;
}
.assinante-cards-container {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
#formalizacao_assinates_termo .assinante-cards-wrapper {
    background: #fff !important;
    border: 1px solid #D7DFE0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    padding: 0 !important;
}

#formalizacao_assinates_termo .assinante-cards-titulo {
    height: 48px;
    padding: 0 10px;
    border-bottom: 1px solid #D7DFE0;
    display: flex;
    align-items: center;
}

#formalizacao_assinates_termo .assinante-cards-titulo__label {
    font-size: 18px;
    font-weight: 400;
    color: #222;
}

#formalizacao_assinates_termo .assinante-btn-adicionar {
    width: calc(100% - 20px);
    height: 54px;
    margin: 12px 10px 10px;
    background: #fff;
    border: 2px solid #6D32FF;
    color: #222;
    font-size: 20px;
    font-weight: 400;
}

#formalizacao_assinates_termo .estudo-cards-container {
    padding: 12px 10px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-height: 360px; 
    overflow-y: auto;
}

#formalizacao_assinates_termo .assinante-card {
    border-radius: 6px;
    background: #F1F4F4;
}

#formalizacao_assinates_termo .assinante-cards-footer {
    height: 44px;
    padding: 0 10px;
    border-top: 1px solid #D7DFE0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    color: #455558;
    font-size: 16px;
    font-weight: 700;
}
#formalizacao_assinates_termo .estudo-cards-container::-webkit-scrollbar {
    width: 6px;
}

#formalizacao_assinates_termo .estudo-cards-container::-webkit-scrollbar-thumb {
    background: #6D32FF;
    border-radius: 4px;
}
/* ===== Layout Arquivos / Documentação ===== */
@media (max-width: 1024px) {
    #layout-arquivos-documentacao {
        grid-template-columns: 1fr !important;
    }
}
#layout-arquivos-documentacao {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
    width: 100% !important;
}

.btn-anexar-documentos-topo {
    width: 100% !important;
    height: 56px !important;
    margin: 0 0 24px 0 !important;
    border: 2px solid #6D32FF !important;
    background: #fff !important;
    color: #222 !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    border-radius: 0 !important;
}

.arquivos-card-wrapper {
    background: #fff !important;
    border: 1px solid #D7DFE0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
}

.arquivos-card-header {
    height: 48px !important;
    padding: 0 12px !important;
    border-bottom: 1px solid #D7DFE0 !important;
    display: flex !important;
    align-items: center !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    color: #222 !important;
}

.arquivos-card-lista {
    padding: 12px !important;
    max-height: 505px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

#layout-arquivos-documentacao .arquivo-card {
    min-height: 78px !important;
    position: relative !important;

    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    grid-template-areas: "icon info" !important;
    column-gap: 10px !important;
    align-items: center !important;

    background: #fff !important;
    border: 1px solid #D7DFE0 !important;
    border-radius: 6px !important;
    padding: 10px 78px 10px 10px !important;
    margin-bottom: 12px !important;
}

#layout-arquivos-documentacao .arquivo-icon {
    grid-area: icon !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#layout-arquivos-documentacao .arquivo-icon svg {
    width: 24px !important;
    height: 24px !important;
}

#layout-arquivos-documentacao .arquivo-info {
    grid-area: info !important;
    min-width: 0 !important;
    width: 99.96%;
}

#layout-arquivos-documentacao .arquivo-nome {
     display: block !important;
    font-size: 14px !important;
    line-height: 18px !important;
    color: #222 !important;
    font-weight: 400 !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;

    width: 95% !important;
    max-width: 95% !important;
    min-width: 0 !important;

    padding-right: 32px;
}

#layout-arquivos-documentacao .arquivo-meta {
    display: block !important;
    max-width: 95% !important;
    font-size: 13px !important;
    line-height: 16px !important;
    color: #7C9599 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#layout-arquivos-documentacao .arquivo-action {
    grid-area: action !important;
    display: contents !important;
}

#layout-arquivos-documentacao .arquivo-status {
    position: absolute !important;
    top: 8px !important;
    right: 10px !important;
    z-index: 2 !important;

    border-radius: 5px !important;
    padding: 3px 8px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    line-height: 14px !important;
    white-space: nowrap !important;
}

#layout-arquivos-documentacao .arquivo-status.status-aprovado {
    background: #00EF3B !important;
    color: #001B0A !important;
}

#layout-arquivos-documentacao .arquivo-download,
#layout-arquivos-documentacao .arquivo-action button,
#layout-arquivos-documentacao .arquivo-action a {
    position: absolute !important;
    right: 10px !important;
    bottom: 8px !important;
    z-index: 2 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

#layout-arquivos-documentacao .arquivo-download svg,
#layout-arquivos-documentacao .arquivo-action button svg,
#layout-arquivos-documentacao .arquivo-action a svg {
    width: 18px !important;
    height: 18px !important;
    stroke: #6D32FF !important;
}

.arquivos-card-footer {
    height: 44px !important;
    padding: 0 12px !important;
    border-top: 1px solid #D7DFE0 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    color: #455558 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}

#enviar-validacao-negocio {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    height: 40px !important;
    margin-top: 26px !important;
    background: #E6EBEC !important;
    border: 1px solid #E6EBEC !important;
    color: #7C9599 !important;
    border-radius: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
}
#layout-arquivos-documentacao .arquivo-download svg,
#layout-arquivos-documentacao .arquivo-download svg * {
    stroke-width: 0.8px !important;
}
#arquivos-documentacao-topo {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    margin-bottom: 18px !important;
    padding-top: 20px;
    border-top: 1px solid #6D32FF !important;

}

#arquivos-documentacao-topo .btn-anexar-documentos-topo {
    width: calc(100% - 20px);
    height: 54px;
    margin: 12px 10px 10px;
    background: #fff;
    border: 2px solid #6D32FF;
    color: #222;
    font-size: 20px;
    font-weight: 400;
}

/* ===== Coluna direita - Documentação ===== */

#layout-arquivos-documentacao .arquivos-coluna-direita {
    width: 100% !important;
    min-width: 0 !important;
}

#layout-arquivos-documentacao .arquivos-coluna-direita td,
#layout-arquivos-documentacao .arquivos-coluna-direita .cell {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
}

#layout-arquivos-documentacao .arquivos-coluna-direita .info,
#layout-arquivos-documentacao .arquivos-coluna-direita .control {
    width: 100% !important;
    max-width: 100% !important;
}

#layout-arquivos-documentacao .arquivos-coluna-direita label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-bottom: 6px !important;

    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    color: #455558 !important;
}

#layout-arquivos-documentacao .arquivos-coluna-direita .label-renderizada,
#layout-arquivos-documentacao .arquivos-coluna-direita .responsavel-label {
    display: block !important;
    margin: 0 !important;

    font-size: 16px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
    color: #222 !important;
}

/* Esconde inputs originais só dentro desse layout */
#layout-arquivos-documentacao .arquivos-coluna-direita input,
#layout-arquivos-documentacao .arquivos-coluna-direita select,
#layout-arquivos-documentacao .arquivos-coluna-direita textarea {
    display: none !important;
}
#layout-arquivos-documentacao .documentos-obrigatorios-wrapper {
    margin: 0 0 4px 0 !important;
    padding-bottom: 18px !important;
    border-bottom: 2px solid #6D32FF !important;
}

#layout-arquivos-documentacao .documentos-obrigatorios-title {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #455558 !important;
    margin-bottom: 8px !important;
}

#layout-arquivos-documentacao .documentos-obrigatorios-text {
    font-size: 16px !important;
    color: #7C9599 !important;
}


#arquivos-documentacao-topo {
    grid-column: 1 / -1;
    width: 100%;
    margin-bottom: 18px;
}

.arquivos-coluna-direita {
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: 100%;
    margin-left: 0;
}

.campo-documentacao {
    width: 100%;
}

.campo-documentacao label,
.campo-documentacao .field-label {
    display: block;
    margin-bottom: 8px;
    font-size: 16px;
    font-weight: 700;
    color: #455558;
}

.campo-documentacao .control {
    width: 100%;
}

.campo-documentacao .label-renderizada,
.campo-documentacao .responsavel-label {
    font-size: 18px;
    line-height: 28px;
    color: #222;
}

.campo-documentacao textarea,
.campo-documentacao input,
.campo-documentacao select {
    width: 100% !important;
}
#layout-arquivos-documentacao .arquivos-coluna-direita {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

#layout-arquivos-documentacao .campo-documentacao {
    display: block !important;
    width: 100% !important;
}

#layout-arquivos-documentacao .campo-documentacao label {
    display: block !important;
    margin: 0 0 6px 0 !important;
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 700 !important;
    color: #455558 !important;
}

#layout-arquivos-documentacao .campo-documentacao .control {
    display: block !important;
    width: 100% !important;
}

#layout-arquivos-documentacao .campo-documentacao .label-renderizada,
#layout-arquivos-documentacao .campo-documentacao .responsavel-label {
    display: block !important;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 22px !important;
    color: #222 !important;
}
#layout-arquivos-documentacao .campo-documentacao {
    margin-bottom: 6px !important;
}

#layout-arquivos-documentacao .campo-documentacao label {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #455558 !important;
    margin-bottom: 4px !important;
}

#layout-arquivos-documentacao .campo-documentacao .label-renderizada,
#layout-arquivos-documentacao .campo-documentacao .responsavel-label {
    font-size: 16px !important;
    line-height: 22px !important;
    color: #222 !important;
}
td.subgrid-cell:has(#layout-arquivos-documentacao),
td.subgrid-cell:has(#layout-arquivos-documentacao) > .control {
    width: 100% !important;
    max-width: 100% !important;
}

td.subgrid-cell:has(#layout-arquivos-documentacao) {
    padding-right: 0 !important;
}

#layout-arquivos-documentacao, 
#arquivos-documentacao-topo {
    width: 100% !important;
}

#arquivos-documentacao-topo .btn-anexar-documentos-topo {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
.arquivos-empty-state {
    width: 100%;
    min-height: 420px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    text-align: center;

    padding: 32px;
}

.arquivos-empty-icon {
    margin-bottom: 24px;
}

.arquivos-empty-icon img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.arquivos-empty-text {
    max-width: 260px;

    color: #455558;
    font-size: 18px;
    font-weight: 500;
    line-height: 28px;
}
h3.info.form-subgrid-heading:has(label[for="negocios_arquivos_validados"]),
label[for="negocios_arquivos_validados"] {
    display: none !important;
}
#layout-arquivos-documentacao {
    align-items: stretch !important;
}

#layout-arquivos-documentacao .arquivos-coluna-esquerda {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

#layout-arquivos-documentacao .arquivos-card-wrapper {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 420px !important;
}

#layout-arquivos-documentacao .arquivos-card-lista {
    flex: 1 !important;
}

#enviar-validacao-negocio {
     grid-column: 1 / -1 !important;
    width: calc(100% + 34px) !important;
    margin-left: 0 !important;
    margin-top: 18px !important;
}
#layout-arquivos-documentacao #enviar-validacao-negocio {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    height: 40px !important;
    margin-top: 18px !important;
}

.money.form-control-cell .info {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-wrap: nowrap !important;
}

.money.form-control-cell .field-label {
    margin-bottom: 0 !important;
    white-space: nowrap !important;
}

.money.form-control-cell .customToolTip {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.arquivos-coluna-direita:empty {
    display: none;
}

.ux-dropdown-trigger .arrow {
  font-size: 0;
  display: flex;
  align-items: center;
}

.ux-dropdown-trigger .arrow::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-right: 1.5px solid #555;
  border-bottom: 1.5px solid #555;
  transform: rotate(45deg);
  margin-bottom: 4px;
}

#layout-arquivos-documentacao.layout--vazio {
    grid-template-columns: 1fr !important;
}

#layout-arquivos-documentacao.layout--vazio .arquivos-card-wrapper {
    min-height: unset !important;
    flex: unset !important;
    height: auto !important;
    width: 100% !important;
}
@media (max-width: 1024px) {
    #layout-arquivos-documentacao {
        grid-template-columns: 1fr !important;
    }
}

#layout-arquivos-documentacao.layout--vazio .arquivos-card-lista {
    min-height: unset !important;
    flex: unset !important;
}

#layout-arquivos-documentacao.layout--vazio .arquivos-coluna-esquerda {
    height: auto !important;
}

#layout-arquivos-documentacao.layout--vazio .arquivos-coluna-esquerda {
    height: auto !important;
    align-self: start !important;
}

.form-control-cell .field-label {
    margin-bottom: 0 !important;
    white-space: nowrap !important;
}

.form-control-cell .customToolTip {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.field-label {
    font-size: 12px !important;
    color: #455558 !important;
    font-family: "FT Base", sans-serif !important;
    margin-bottom: 4px !important;
}

.form-control-cell .info {
    display: flex !important;
    align-items: center !important;
    gap: 1px !important;
    flex-wrap: nowrap !important;
    margin-bottom: 4px !important;
}

/* remove espaço entre header e primeiro campo */
.card-session .session-header {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.card-session .session-body {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.card-session .card-wrapper {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.card-session table.section {
    margin-top: 0 !important;
}

.card-session table.section tbody tr:first-child td {
    padding-top: 4px !important;
}

.card-session legend.section-title {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

#edpb2c_cliente_label,
#edpb2c_cnpj_label,
#edpb2c_cliente_matriz_filial_label {
    color: #455558 !important;
    font-weight: 700 !important;
    font-size: 12px !important;
    font-family: "FT Base", sans-serif !important;
    margin-bottom: 0 !important;
    white-space: nowrap !important;
}

fieldset.card-session {
    background: #ffffff;
    padding: 15px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
    margin-bottom: 20px !important;
    border-radius: 1px !important;
}

.estudo-cards-container .estudo-card {
    border-radius: 1px !important;
}

.form-control-cell .input-group input.form-control {
    border-radius: 4px 0 0 4px !important;
}

.form-control-cell .input-group .input-group-btn .btn:last-child {
    border-radius: 0 4px 4px 0 !important;
}

.form-control-cell .input-group .input-group-addon {
    border-radius: 0 4px 4px 0 !important;
}

td:has(#edpb2c_produto_name) .info {
    padding-bottom: 0 !important;
    margin-bottom: 4px !important;
}
.param-energia-empty-state {
    flex: 1 !important;
    min-height: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 0 40px !important;
    text-align: center !important;

    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 400 !important;
    color: #455558 !important;
}
.campo-obrigatorio {
    color: #FF3B30;
}

#edpb2c_volume::placeholder {
    color: #F04438;
    opacity: 1;
}

.volume-error {
    border: 2px solid #F04438 !important;
    background: #FFF !important;
    color: #F04438 !important;

    padding-right: 44px;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10' stroke='%23F04438' stroke-width='1.8'/%3E%3Cpath d='M12 7V13' stroke='%23F04438' stroke-width='2' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='17' r='1.2' fill='%23F04438'/%3E%3C/svg%3E");

    background-repeat: no-repeat;
    background-position: right 14px center;
}

.volume-error-message {
    margin-top: 8px;

    color: #F04438;
    font-size: 14px;
    font-weight: 500;
}

.customToolTip,
.form-control-cell .customToolTip {
    width: 18px !important;
    height: 18px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin-top: 0 !important;
    margin-bottom: 0 !important;
    vertical-align: middle !important;

    position: relative !important;
    top: -1px !important;

    flex-shrink: 0 !important;
}
/* Ajuste de espaçamento - Dados do Cliente */
fieldset[aria-label="Dados do Cliente"] td.cell,
fieldset[aria-label="Dados do Cliente"] td.clearfix {
    padding-top: 10px !important;
    padding-bottom: 4px !important;
}

fieldset[aria-label="Dados do Cliente"] .info {
    margin-bottom: 2px !important;
    padding-bottom: 0 !important;
}

fieldset[aria-label="Dados do Cliente"] .control {
    margin-top: 0 !important;
}

fieldset[aria-label="Dados do Cliente"] .field-label,
fieldset[aria-label="Dados do Cliente"] label {
    margin-bottom: 2px !important;
    line-height: 16px !important;
}

fieldset[aria-label="Dados do Cliente"] input,
fieldset[aria-label="Dados do Cliente"] .responsavel-label,
fieldset[aria-label="Dados do Cliente"] #cliente-modal-renderizado {
    margin-top: 0 !important;
    line-height: 22px !important;
}
.btn-gerar-disabled,
.btn-gerar-disabled:hover,
.btn-gerar-disabled:focus {
    background: #D9DFE0 !important;
    border-color: #D9DFE0 !important;
    color: #7C9599 !important;

    cursor: not-allowed !important;
    opacity: 1 !important;
    box-shadow: none !important;
}
.color-red-error
{
    color: red !important;
}
#parametro-energia-fullwidth,
#SubGrid_Parametro_Energia_Contrato,
#SubGrid_Parametro_Energia_Contrato > .entity-grid,
#SubGrid_Parametro_Energia_Contrato .entity-grid,
#SubGrid_Parametro_Energia_Contrato .view-grid {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    background: transparent !important;
    padding: 0 !important;
}

#SubGrid_Parametro_Energia_Contrato {
    border-top: none !important;
}

#SubGrid_Parametro_Energia_Contrato .param-energia-wrapper {
    margin: 0 !important;
    border: 1px solid #D7DFE0 !important;
    border-radius: 4px !important;
}
/* Margem Extra Parceiro - remover R$ e arredondar */
td:has(#edpb2c_margem_extra_parceiro) .input-group-addon {
    display: none !important;
}

#edpb2c_margem_extra_parceiro {
    border-radius: 4px !important;
    width: 100% !important;
}

td:has(#edpb2c_margem_extra_parceiro) .input-group {
    width: 100% !important;
}

td:has(#edpb2c_margem_extra_parceiro) .input-group input {
    border-radius: 4px !important;
}
.precificacao-cards-wrapper {
    background: #FFFFFF !important;
    border: 1px solid #D7DFE0 !important;
    border-radius: 4px !important;
    padding: 0 10px 10px !important;
    margin-top: 24px !important;
    box-shadow: none !important;
}

/* remove espaçamento externo */
.precificacao-cards-titulo {
    height: 42px !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid #D7DFE0 !important;
    display: flex !important;
    align-items: center !important;
}

/* remove padding lateral do container */
.precificacao-cards-container {
    padding: 0 !important;
    gap: 8px !important;
}

/* cards ocupando largura total */
.precificacao-card {
    margin: 0 !important;
}

.uc-empty-state {
    height: 420px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;

    background: #FFFFFF;
}

.uc-empty-content {
    flex: 1;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    padding: 40px 32px;
    text-align: center;
}

.uc-empty-title {
    max-width: 240px;

    font-size: 18px;
    line-height: 30px;
    font-weight: 400;

    color: #455558;

    margin-bottom: 24px;
}

.uc-empty-subtitle {
    max-width: 240px;

    font-size: 18px;
    line-height: 30px;
    font-weight: 400;

    color: #455558;
}

.uc-empty-footer {
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0 12px;

    border-top: 1px solid #D7DFE0;
}

.uc-empty-link {
    color: #6D32FF;
    font-size: 14px;
    text-decoration: none;
}

.uc-empty-count {
    font-size: 14px;
    font-weight: 700;
    color: #455558;
}
.uc-empty-state {
    height: 420px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: #fff;
}

.uc-empty-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 40px 32px;
}

.uc-empty-title,
.uc-empty-subtitle {
    max-width: 260px;
    font-size: 18px;
    line-height: 30px;
    font-weight: 400;
    color: #455558;
}

.uc-empty-title {
    margin-bottom: 24px;
}

.uc-empty-footer {
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 12px;
    border-top: 1px solid #D7DFE0;
}

.uc-empty-link {
    color: #6D32FF;
    font-size: 13px;
    text-decoration: none;
}

.uc-empty-count {
    font-size: 13px;
    font-weight: 700;
    color: #455558;
}
/* Datepicker igual Figma */
.datetime .input-group.date {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.datetime .input-group.date input.form-control {
    width: 100% !important;
    height: 56px !important;

    padding: 0 56px 0 18px !important;

    border: 1px solid #7C9599 !important;
    border-radius: 4px !important;

    background: #FFFFFF !important;
    color: #222222 !important;

    font-size: 18px !important;
    box-shadow: none !important;
}

/* botão do calendário dentro do input */
.datetime .input-group.date .input-group-addon {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;

    transform: translateY(-50%) !important;

    width: 32px !important;
    height: 32px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;

    z-index: 2 !important;
    cursor: pointer !important;
}

/* remove borda/padding interno do portal */
.datetime .input-group.date .iconBorder {
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    line-height: 1 !important;
}

/* ícone cinza/verde do figma */
.datetime .input-group.date .icon-calendar {
    color: #7C9599 !important;
    font-size: 24px !important;
    line-height: 1 !important;
}
/* Datepicker igual Figma - Power Pages */
td.datetime.form-control-cell .control {
    position: relative !important;
}

td.datetime.form-control-cell .input-append.input-group.datetimepicker {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

td.datetime.form-control-cell .input-append.input-group.datetimepicker input.form-control {
    width: 100% !important;
    height: 56px !important;

    padding: 0 56px 0 18px !important;

    border: 1px solid #7C9599 !important;
    border-radius: 4px !important;

    background: #FFFFFF !important;
    color: #222222 !important;

    font-size: 18px !important;
    line-height: 56px !important;

    box-shadow: none !important;
}

/* remove botão roxo/lateral */
td.datetime.form-control-cell .input-append.input-group.datetimepicker .input-group-addon {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;

    transform: translateY(-50%) !important;

    width: 32px !important;
    height: 32px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;

    z-index: 3 !important;
    cursor: pointer !important;
}

/* remove estilo interno do portal */
td.datetime.form-control-cell .input-append.input-group.datetimepicker .iconBorder {
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
    line-height: 1 !important;
}

/* ícone calendário */
td.datetime.form-control-cell .input-append.input-group.datetimepicker .icon-calendar {
    color: #7C9599 !important;
    font-size: 24px !important;
    line-height: 1 !important;
}

/* garante que não sobre espaço de input-group */
td.datetime.form-control-cell .input-append.input-group.datetimepicker::before,
td.datetime.form-control-cell .input-append.input-group.datetimepicker::after {
    display: none !important;
}

/* ===== DATEPICKER FIGMA ===== */

td.datetime.form-control-cell .control {
    position: relative !important;
}

td.datetime.form-control-cell .input-append.input-group.datetimepicker {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

/* input */
td.datetime.form-control-cell 
.input-append.input-group.datetimepicker 
input.form-control {
    width: 100% !important;
    height: 40px !important;

    padding: 0 58px 0 18px !important;

    border: 1px solid #7C9599 !important;
    border-radius: 4px !important;

    background: #FFFFFF !important;
    color: #222222 !important;

    font-size: 14px !important;
    line-height: 40px !important;

    box-shadow: none !important;
}

/* botão calendário */
td.datetime.form-control-cell 
.input-append.input-group.datetimepicker 
.input-group-addon {

    position: absolute !important;

    top: 9px !important;
    right: 10px !important;

    width: auto !important;
    height: auto !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    border: none !important;

    transform: none !important;

    display: block !important;

    z-index: 5 !important;
}

/* remove borda interna */
td.datetime.form-control-cell 
.input-append.input-group.datetimepicker 
.iconBorder {
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
}

/* ícone */
td.datetime.form-control-cell 
.input-append.input-group.datetimepicker 
.icon-calendar {

    color: #A8B8BA !important;

    font-size: 22px !important;
    line-height: 22px !important;
}
.calculate-price-btn-wrapper {
    margin-top: 24px !important;
    padding-bottom: 24px !important;
    
}

.btn-calculate-price {
    width: 100% !important;
    height: 44px !important;
    border: none !important;
    border-radius: 0 !important;
    background: #6D32FF !important;
    color: #FFFFFF !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    cursor: pointer !important;
}

.btn-calculate-price:hover {
    opacity: 0.95;
}

.btn-calculate-price svg {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

/* remove borda externa */
td:has(.precificacao-cards-wrapper),
td:has(.calculate-price-btn-wrapper) {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

/* remove wrapper externo do portals */
.precificacao-wrapper-externo,
.precificacao-container-externo {
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

.ribbon-form-up .form-action-container-left {
    gap: 10px;
}

/* remove espaçamento da sessão */
fieldset[aria-label="Precificação"] .session-body {
    padding: 0 !important;
    margin: 0 !important;
}

/* espaço entre card e botão */
#calculate-price-btn-wrapper {
    margin-top: 24px !important;
}

/* linha roxa inferior */
#calculate-price-btn-wrapper::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #6D32FF;
    margin-top: 24px;
}
.entity-grid.subgrid {
    padding:0px !important;
    border: 0px !important;
}
/* Somente na sessão UC */
[aria-label="Precificação"] 
table.section > tbody > tr:first-child {
    display: none !important;
}
.assinantes-texto-info_n {
    font-size: 16px !important;
}
.btn-acao-docusign {
    font-size: 16px !important;
    font-family: "FT Base", sans-serif !important;
}
.btn-acao-docusign.disabled,
.btn-acao-docusign:disabled {

    background: #E6EBEC !important;
    color: #8EA1A5 !important;

    cursor: not-allowed !important;
    opacity: 1 !important;
}

.assinante-cards-wrapper {
    background: #fff !important;
    border: none !important;
    padding: 0 !important;
}

.assinante-cards-container,
.estudo-cards-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.assinante-card {
     position: relative !important;
    background: #F1F4F4 !important;
    border-radius: 4px !important;
    padding: 18px 18px 16px !important;
    min-height: 160px !important;
    overflow: hidden !important;
}

.assinante-card__topo {
     display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    margin-bottom: 10px !important;
}

.assinante-card__acoes {
    width: 190px !important;
    min-width: 190px !important;
    display: grid !important;
    grid-template-columns: 142px 28px !important;
    column-gap: 12px !important;
    align-items: center !important;
    justify-content: end !important;
    margin-left: auto !important;
}

.assinante-card__badge {
     width: 152px !important;
    height: 26px !important;
    padding: 0 12px !important;
    border-radius: 9px !important;
    background: #7C9599 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 26px !important;
    white-space: nowrap !important;
    text-align: center !important;
}

.assinante-card__delete {
    width: 26px !important;
    height: 26px !important;
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.assinante-card__delete svg {
     width: 24px !important;
    height: 24px !important;
}

.assinante-card__grid {
    display: grid !important;
    grid-template-columns:
        minmax(360px, 1fr)
        minmax(360px, 1fr) !important;
    column-gap: 46px !important;
    row-gap: 8px !important;
    max-width: none !important;

    align-items: start !important;
}

.assinante-card__campo {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    min-width: 0 !important;
    width: 100% !important;
}

.assinante-card__label,
.assinante-card__campo label,
.assinante-card__campo .estudo-card__label {
     font-size: 14px !important;
    line-height: 16px !important;
    font-weight: 700 !important;
    color: #7C9599 !important;
    margin: 0 0 1px 0 !important;
}

.assinante-card__valor,
.assinante-card__campo span {
    font-size: 14px !important;
    line-height: 18px !important;
    font-weight: 400 !important;
    color: #455558 !important;
    margin: 0 !important;
}

.assinante-card__campo .estudo-card__input-group {
     display: grid !important;
    grid-template-columns: minmax(0, 1fr) 42px !important;

    width: 100% !important;
    height: 42px !important;

    margin-top: 2px !important;
}

.assinante-card__campo .estudo-card__input {
    width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    border: 1px solid #7C9599 !important;
    border-right: none !important;
    border-radius: 4px 0 0 4px !important;
    background: #F7F7F7 !important;
    padding: 0 12px !important;
    font-size: 14px !important;
    color: #455558 !important;
    box-shadow: none !important;
    flex: 1 !important;
    
}

.assinante-card__nome {
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 700 !important;
    color: #222 !important;
}

.assinante-card__campo .estudo-card__save-icon {
   width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    background: #6D32FF !important;
    border: 1px solid #6D32FF !important;
    border-radius: 0 4px 4px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.assinante-card__campo .estudo-card__save-icon svg {
    width: 18px !important;
    height: 18px !important;
}
.assinante-card__delete svg {
    width: 35px !important;
    height: 35px !important;
}
.status-documentacao-pendente {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: 32px !important;
    padding: 0 14px !important;

    background: #1F2A3A !important;
    color: #FFFFFF !important;

    border-radius: 10px !important;
    font-size: 14px !important;
    line-height: 32px !important;
}

.status-documentacao-validada {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: 32px !important;
    padding: 0 14px !important;

    background: #00EF3B  !important;
    color: #000 !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    line-height: 32px !important;
}

.status-documentacao-reprovada {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: 32px !important;
    padding: 0 14px !important;

    background: red  !important;
    color: #fff !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    line-height: 32px !important;
}

.status-documentacao-assinatura-cliente {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    height: 32px !important;
    padding: 0 14px !important;

    background: #F0A597  !important;
    color: #000 !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    line-height: 32px !important;
}

.status-documentacao-aguardando-analise {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 32px !important;
    padding: 0 14px !important;
    background: #f7b200 !important;
    color: #000 !important;
    border-radius: 10px !important;
    line-height: 32px !important;
}

#enviar-validacao-negocio {
    font-size: 18px !important;
    font-weight: 500 !important;
    width: 99.99% !important;
    height: 50px !important;
}
.arquivo-negocio-status-aguardando-envio {
    background-color:#7C9599 !important;
    color:#FFFFFF !important;
}
#vincular-uc-opp-btn {
    width:100% !important;
}

#enviar-validacao-negocio.btn-enviar-validacao-enabled {
    background: #6D32FF !important;
    background-color: #6D32FF !important;
    color: #FFFFFF !important;
    border: none !important;
    cursor: pointer !important;
}

#enviar-validacao-negocio:disabled {
    background: #E6EBEC !important;
    background-color: #E6EBEC !important;
    color: #8EA1A5 !important;
    border: none !important;
    cursor: not-allowed !important;
}

/* ===== Ocultar células vazias — Termo de Adesão, Unidades Consumidoras e Precificação ===== */
body[data-sitemap-state*="business-form"] fieldset[aria-label="Termo de Adesão"] td.clearfix.cell:empty,
body[data-sitemap-state*="business-form"] fieldset[aria-label="Unidades Consumidoras"] td.clearfix.cell:empty,
body[data-sitemap-state*="business-form"] fieldset[aria-label="Precificação"] td.clearfix.cell:empty {
    display: none !important;
}

body[data-sitemap-state*="business-form"] .entity-grid.subgrid{
    margin-top: 0px !important;
}

.btn-perder-figma {
    height: 46px !important;
    min-width: 100px !important;
    padding: 0 10px !important;
    border: 1px solid #6D32FF !important;
    background: #FFFFFF !important;
    color: #222222 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    border-radius: 0 !important;
}

.btn-perder-figma .icon-perder {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 8px;
}

.reenviar-termo-em-pausa {
    background: #E6EBEC !important;
    background-color: #E6EBEC !important;
    color: #8EA1A5 !important;
    border: none !important;
    cursor: not-allowed !important;
    width: 100% !important;
    font-size: 18px !important;
    height: 48px !important;
    margin-right: 5px !important;
    border-radius: 0 !important;
}
.reenviar-termo-normal {
    background-color: white !important; 
    color: #000 !important; 
    border: solid 1px #6D32FF !important;
    margin-right: 5px !important;
    width: 100% !important;
    height: 48px !important;
    border-radius: 0 !important;
    font-size: 18px !important;
    
    cursor: pointer !important;
}
.cancelar-termo-envelope {
    background-color: white !important; 
    color: #000 !important; 
    border: solid 1px #6D32FF !important;
    margin-right: 5px !important;
    width: 100% !important;
    height: 48px !important;
    border-radius: 0 !important;
    font-size: 18px !important;
    cursor: pointer !important;
}

select.select-bloqueado-em-pausa {
    pointer-events: none !important;
    background-color: #f3f3f3 !important;
    color: #777 !important;
}
#bpfNegocio,
#bpfNegocio * {
    pointer-events: none !important;
    cursor: default !important;
}

.input-copy-wrapper {
    display: flex;
    align-items: center;
}
#btn-copiar.copiado {
    opacity: 0.7;
}

.boolean-radio input[disabled] + label {
    color: #777;
}

.boolean-radio input[disabled] {
    accent-color: #bdbdbd;
}
.portal-loading-overlay {
    position: fixed;
    inset: 0;
    z-index: 999999;
    background: rgba(241, 244, 244, 0.88);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: wait;
}

.portal-loading-box {
    background: #fff;
    border: 1px solid #D7DFE0;
    border-radius: 8px;
    padding: 24px 32px;
    box-shadow: 0 8px 24px rgba(0,0,0,.12) !important;
    font-size: 18px;
    color: #222;
}

.portal-loading-spinner {
    display: inline-block;
    margin-right: 10px;
    animation: portal-spin 1s linear infinite;
}

@keyframes portal-spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

#btn-consulta-serasa:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}

#btn-solicitar-analise-kam:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}

#btn-anexar-documentos-topo:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}

#anexar-documentos-negocio:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}

#btn-acao-docusign:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}

#btn-adicionar-contato:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}

#btn-consulta-serasa:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}

#create-atividade-timeline-btn:disabled {
    cursor: not-allowed;
    background: rgb(217, 217, 217);
    color: rgb(138, 138, 138);
}