/* Remove margens e paddings para ToolHeader ficar completo */
.noMarginPadding {
	margin: 0 !important;
	padding: 0 !important;
}

/* Wrapper do conteúdo principal: largura máxima 1200px, centralizado */
.ivatex-page-wrap {
	max-width: 1200px !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	box-sizing: border-box !important;
}

/* Remove margens do body para ToolHeader ficar completo */
.sapUiBody {
	margin: 0 !important;
	padding: 0 !important;
}

/* Garante que a View não tenha margens */
.sapUiView {
	margin: 0 !important;
	padding: 0 !important;
}

/* Previne re-renderizações do DynamicPage content */
.f-DynamicPage-content {
	overflow: visible !important;
}

/* Garante que o DynamicPage não corte o conteúdo */
.f-DynamicPage-content > .sapMScrollCont {
	overflow: visible !important;
}

.f-DynamicPage-content > .sapMScrollCont > .sapMScrollContScroll {
	overflow: visible !important;
}

/* Conteúdo do scroll: todos os blocos com a mesma largura e alinhamento */
.ivatex-scroll-content > .sapMFlexItem {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

/* Painel Filtros: não estoura a largura e alinha com os cards abaixo */
.ivatex-filter-panel.sapMPanel {
	max-width: 100% !important;
	min-width: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}
.ivatex-filter-panel .sapMPanelContent {
	max-width: 100% !important;
	overflow-x: auto !important;
	box-sizing: border-box !important;
}
.sapUiMdcFilterBar {
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

/* Garante que os campos do FilterBar ocupem toda a largura disponível */
#__component0---main--filterbar .sapUiMdcFieldBase {
	width: 100% !important;
	min-width: 0 !important;
	flex: 1 1 auto !important;
	max-width: 100% !important;
}

#__component0---main--filterbar .sapUiMdcFieldBase .sapMInputBase,
#__component0---main--filterbar .sapUiMdcFieldBase .sapMSelect {
	width: 100% !important;
	max-width: 100% !important;
}

/* Garante que o FilterBar layout use toda a largura e não quebre */
.sapUiMdcFilterBar .sapUiFormLayout {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.sapUiMdcFilterBar .sapUiFormLayout .sapUiFormElement {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	flex: 1 1 auto !important;
}

/* Específico para o campo de Empresa */
#__field0 {
	width: 100% !important;
	flex: 1 1 auto !important;
}

#__field0 .sapMSelect {
	width: 100% !important;
	max-width: 100% !important;
}

/* ScrollContainer: min-height 0 permite que o flex filho role corretamente (evita corte no final) */
.ivatex-scroll-container {
	min-height: 0;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

.ivatex-scroll-container .sapMScrollContScroll {
	overflow: visible !important;
	padding-bottom: 0 !important;
}

/* Margem inferior no conteúdo rolável - evita cards cortados no final */
.ivatex-scroll-content {
	padding-bottom: 2rem !important;
	margin-bottom: 1rem !important;
	box-sizing: border-box;
	min-height: fit-content !important;
}

/* Último bloco do scroll */
.ivatex-scroll-content > .sapMHBox:last-child {
	margin-bottom: 1rem !important;
	padding-bottom: 0.5rem !important;
}

/* Valor "Mil" nos cards de Dados Gerenciais e Controle de Créditos (menor, verde) */
.ivatex-value-mil {
	font-size: 0.875rem;
	color: #107e3e;
}

/* Tiles autoajustáveis na largura (preenchem o espaço disponível) */
.tileLayout {
	width: 100%;
	min-width: 0;
}

/* Remove altura fixa dos GenericTiles - altura apenas pelo conteúdo */
.sapMGT:not(.ivatex-tile-analise-divergencia),
.sapMGT:not(.ivatex-tile-analise-divergencia) .sapMGTHdrContent,
.sapMGT:not(.ivatex-tile-analise-divergencia) .sapMTileCnt,
.sapMGT:not(.ivatex-tile-analise-divergencia) .sapMTileCntContent,
.sapMGT:not(.ivatex-tile-analise-divergencia) .sapMGTContent {
	min-height: 0 !important;
	height: auto !important;
}

/* Análise de divergência: mantém altura como antes (tile padrão) */
.ivatex-tile-analise-divergencia.sapMGT {
	min-height: 11.25rem !important;
	height: auto !important;
}

.ivatex-tile-analise-divergencia .sapMGTHdrContent {
	min-height: 3rem !important;
}

.ivatex-tile-analise-divergencia .sapMTileCnt,
.ivatex-tile-analise-divergencia .sapMGTContent {
	min-height: 5rem !important;
}

/* Remove borda inferior das tabelas */
.sapMListTblRow,
.sapMListTblRow > td,
.sapMListTblCell {
	border-bottom: none !important;
}

.sapMListTbl tbody tr {
	border-bottom: none !important;
}

.sapMListTbl tbody tr td {
	border-bottom: none !important;
}

/* Garante que os tiles fiquem lado a lado no HBox */
.sapMHBox.sapMFlexBoxWrapNoWrap > .sapMFlexItem {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

.sapMHBox.sapMFlexBoxWrapNoWrap > .sapMFlexItem > .sapMVBox {
	width: 100% !important;
	min-width: 0 !important;
}

/* Painéis (CBS, IBS, Base Interna, Base Fisco) e tabelas em 100% da largura */
.sapMHBox.sapMFlexBoxWrapNoWrap > .sapMFlexItem > .sapMPanel,
.ivatex-scroll-content .sapMPanel {
	width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

.ivatex-scroll-content .sapMPanel .sapMList,
.ivatex-scroll-content .sapMPanel .sapMListTbl {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

/* CBS e IBS: forçar 100% no HBox de apuração (classes específicas) */
.ivatex-apuracao-tables > * {
	flex: 1 1 0% !important;
	min-width: 0 !important;
	max-width: none !important;
	box-sizing: border-box !important;
}

.ivatex-table-panel {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

.ivatex-table-panel .sapMPanelContent,
.ivatex-table-panel .sapMList,
.ivatex-table-panel .sapMListTbl,
.ivatex-table-panel table,
.ivatex-table-panel [id*="list"] {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

/* Apenas tiles com classe tileLayout (Custo CBS, IBS, etc.) ocupam 100% */
.sapMHBox.sapMFlexBoxWrapNoWrap .sapMGT.tileLayout {
	width: 100% !important;
	max-width: 100% !important;
}

/* Análise de divergência, Gestão de Eventos, Fila: largura padrão do componente */
.sapMHBox.sapMFlexBoxWrapNoWrap .sapMGT:not(.tileLayout) {
	width: auto !important;
	max-width: none !important;
	align-self: flex-start !important;
}

/* ScrollContainer interno */
#__container2-scroll {
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding-bottom: 1rem !important;
}

#__container2-scroll .sapMVBox:last-child {
	padding-bottom: 1.5rem !important;
}

/* Relatórios: dois tiles lado a lado, sem distância (HBox não estica os itens) */
.ivatex-relatorios-tiles.sapMHBox > .sapMFlexItem {
	flex: 0 0 auto !important;
	max-width: none !important;
}
.ivatex-relatorios-tiles {
	width: max-content !important;
	max-width: 100%;
}

/* Página Resultado Atualizado: remove todo o espaçamento superior da área de conteúdo */
section[id$="-resultadoAtualizadoPage-cont"] {
	padding-top: 0 !important;
	margin-top: 0 !important;
	min-height: 0 !important;
}
section[id$="-resultadoAtualizadoPage-cont"] .sapMScrollCont {
	margin-top: 0 !important;
	padding-top: 0 !important;
}
