/*
 * PrimeFaces 15 – compatibilidade tema Castanhal – MODULO PORTAL DE SERVICOS.
 * Nao copiar do tributario: la usa abas (ui-tabs), layout #container e cor roxa (#8B49A7).
 * PORTAL DE SERVICOS: layout #container2 + panelMenu lateral; cor institucional (#953fa0).
 * Carregar por ultimo (_estilosPf15Compat.xhtml no fim do body).
 */

:root {
	--castanhal: #953fa0;
	--castanhal-hover: #76297f;
	--castanhal-dark: #5e2166;
	--input-bg: #ffffff;
	--input-text: #666666;
	--input-border: #abadb3;
}

.bd-radius,
.boxlogin,
.btn-padrao,
.btn-padrao2,
.ui-dialog,
.ui-panel:not(.ui-inputfield) {
	border-radius: 5px !important;
}

/*
 * Layout protocolo (#container2): menu a esquerda, conteudo ao lado.
 * PF15 pode forcar clear no panelMenu e empurrar .centroRestrito2 para baixo do menu.
 */
#container2 {
	display: block !important;
	width: 100% !important;
	overflow: hidden;
	position: relative;
}

#container2::after {
	content: "";
	display: table;
	clear: both;
}

#container2 .esquerda2,
#container2 .esquerda3 {
	float: left !important;
	clear: none !important;
	width: 15% !important;
	min-width: 190px;
	max-width: 220px;
	margin-bottom: 20px;
	border-radius: 3px;
	overflow: hidden;
}

#container2 .centroRestrito2 {
	float: left !important;
	clear: none !important;
	width: 83% !important;
	margin-left: 2% !important;
	min-height: 0 !important;
	margin-bottom: 20px;
}

#container2 .centroRestrito-inner {
	min-height: 0 !important;
}

.esquerda2 form,
.esquerda3 form,
.esquerda2 .myDiv,
.esquerda3 .myDiv,
.esquerda2 .ui-panelmenu,
.esquerda3 .ui-panelmenu {
	clear: none !important;
	float: none !important;
	max-width: 100%;
}

.ui-panelmenu {
	clear: none !important;
}

/* PanelMenu lateral */
.ui-panelmenu {
	width: 100% !important;
	max-width: 190px;
	border-radius: 5px !important;
	overflow: hidden;
}

.ui-panelmenu .ui-panelmenu-panel {
	padding: 0 !important;
}

.ui-panelmenu .ui-panelmenu-header,
.ui-panelmenu .ui-panelmenu-header.ui-state-default,
.ui-panelmenu .ui-panelmenu-header.ui-state-active,
.ui-panelmenu .ui-panelmenu-header.ui-state-hover {
	cursor: pointer;
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	border: 0 !important;
	border-bottom: 1px solid var(--castanhal-dark) !important;
}

.ui-panelmenu .ui-panelmenu-header a,
.ui-panelmenu .ui-panelmenu-header.ui-state-default a,
.ui-panelmenu .ui-panelmenu-header.ui-state-active a {
	display: block !important;
	font-size: 14px !important;
	padding: 10px 10px 10px 27px !important;
	color: #fff !important;
	text-shadow: none !important;
}

.ui-panelmenu .ui-panelmenu-header .ui-icon,
.ui-panelmenu .ui-panelmenu-header .ui-icon-triangle-1-e,
.ui-panelmenu .ui-panelmenu-header .ui-icon-triangle-1-s {
	position: absolute !important;
	left: 0.5em !important;
	top: 50% !important;
	margin-top: -8px !important;
	color: #fff !important;
	filter: none !important;
}

.ui-panelmenu .ui-panelmenu-content {
	padding: 0 !important;
	border-top: 0 !important;
	margin: -1px 0 1px 0 !important;
	background: #ccc !important;
	border-radius: 0 !important;
}

.ui-panelmenu .ui-menuitem {
	width: 100% !important;
	float: left !important;
	clear: both !important;
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid #ECECEC !important;
}

.ui-panelmenu .ui-menuitem-link,
.ui-panelmenu .ui-menuitem-link.ui-state-default,
.ui-panelmenu .ui-menuitem .ui-state-default {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 8px 10px !important;
	cursor: pointer !important;
	pointer-events: auto !important;
	color: #666 !important;
	border: 0 !important;
	float: left !important;
	line-height: 16px !important;
	font-weight: 400 !important;
	background: transparent !important;
	text-shadow: none !important;
}

.ui-panelmenu .ui-menuitem-link:hover,
.ui-panelmenu .ui-menuitem-link.ui-state-hover {
	background: #BBBBBB !important;
	color: #666 !important;
}

.ui-panelmenu .ui-menuitem-text {
	float: left !important;
}

/* Menubar (PF15 – itens horizontais; root-list em coluna quebra o portal publico) */
.ui-menubar {
	width: 99.6% !important;
	padding: 6px 4px !important;
	box-sizing: border-box !important;
}

.ui-menubar > .ui-menubar-root-list,
.ui-menubar > ul.ui-menu-list {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 4px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.ui-menubar .ui-menuitem {
	width: auto !important;
	clear: none !important;
	float: none !important;
	margin: 0 !important;
}

.ui-menubar > .ui-menubar-root-list > .ui-menuitem > .ui-menuitem-link,
.ui-menubar > ul.ui-menu-list > li.ui-menuitem > a.ui-menuitem-link {
	padding: 8px 14px !important;
	margin: 0 !important;
	white-space: nowrap !important;
	display: inline-flex !important;
	align-items: center !important;
	box-sizing: border-box !important;
	line-height: 1.3 !important;
}

.ui-menubar .ui-menu-child,
.ui-menubar ul.ui-menu-child {
	min-width: 240px !important;
	padding: 6px 0 !important;
}

.ui-menubar .ui-menu-child .ui-menuitem {
	width: 100% !important;
	clear: both !important;
	float: none !important;
	display: block !important;
	margin: 0 !important;
}

.ui-menubar .ui-menu-child .ui-menuitem-link,
.ui-menubar .ui-menu-child .ui-menuitem-link.ui-state-default {
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	padding: 10px 16px !important;
	min-height: 38px !important;
	line-height: 1.35 !important;
	white-space: nowrap !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	font-weight: 400 !important;
	text-align: left !important;
}

.menu-topo .ui-menubar {
	width: auto !important;
	padding: 0 !important;
	max-width: none !important;
	flex: 0 0 auto !important;
}

/* Campos: fundo branco (PF15 aplica ui-state-default roxo em inputs) */
.ui-inputfield.ui-state-default,
.ui-widget-content .ui-inputfield.ui-state-default,
.ui-inputtextarea.ui-state-default,
.ui-selectonemenu .ui-selectonemenu-label,
.ui-selectonemenu label.ui-selectonemenu-label,
.ui-selectonemenu input.ui-selectonemenu-label,
.ui-autocomplete-input.ui-state-default,
input.ui-inputfield,
textarea.ui-inputfield {
	background: var(--input-bg) !important;
	color: var(--input-text) !important;
	border: 1px solid var(--input-border) !important;
	box-shadow: none !important;
	font-weight: normal !important;
	border-radius: 5px !important;
}

.ui-inputfield.ui-state-hover,
.ui-inputfield.ui-state-focus,
.ui-selectonemenu .ui-selectonemenu-label.ui-state-hover,
.ui-selectonemenu .ui-selectonemenu-label.ui-state-focus {
	background: var(--input-bg) !important;
	color: var(--input-text) !important;
	border: 1px solid var(--input-border) !important;
}

.ui-selectonemenu {
	background: transparent !important;
}

.ui-selectonemenu .ui-selectonemenu-trigger.ui-state-default,
.ui-selectonemenu .ui-selectonemenu-trigger {
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	border: 0 !important;
	color: #fff !important;
	border-radius: 0 5px 5px 0 !important;
}

.ui-selectonemenu .ui-selectonemenu-trigger .ui-icon {
	color: #fff !important;
}

.ui-selectonemenu .ui-selectonemenu-trigger.ui-state-hover {
	background: var(--castanhal-hover) !important;
}


/*
 * p:calendar — botao roxo com icone ao lado do input (PF15 / tema legado sem sprites ui-icons).
 */
.ui-calendar.ui-trigger-calendar,
.ui-calendar:has(> .ui-datepicker-trigger) {
	display: inline-flex !important;
	align-items: stretch !important;
	vertical-align: middle !important;
	position: relative !important;
	white-space: nowrap !important;
}

.ui-calendar.ui-trigger-calendar > .ui-inputfield,
.ui-calendar.ui-trigger-calendar > input.hasDatepicker,
.ui-calendar:has(> .ui-datepicker-trigger) > .ui-inputfield,
.ui-calendar:has(> .ui-datepicker-trigger) > input.hasDatepicker {
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
	flex: 0 1 auto !important;
}

.ui-calendar .ui-datepicker-trigger,
.ui-calendar .ui-datepicker-trigger.ui-button,
.ui-datepicker-trigger.ui-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	width: 2.4em !important;
	min-width: 2.4em !important;
	min-height: 1.8em !important;
	padding: 0 !important;
	margin: 0 0 0 -1px !important;
	vertical-align: middle !important;
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	border: 0 !important;
	color: #fff !important;
	border-radius: 0 5px 5px 0 !important;
	cursor: pointer !important;
	box-sizing: border-box !important;
	flex-shrink: 0 !important;
	position: static !important;
	overflow: visible !important;
}

.ui-fluid .ui-calendar.ui-trigger-calendar,
.ui-fluid .ui-calendar:has(> .ui-datepicker-trigger) {
	display: block !important;
	width: 100% !important;
}

.ui-fluid .ui-calendar.ui-trigger-calendar > .ui-inputfield,
.ui-fluid .ui-calendar.ui-trigger-calendar > input.hasDatepicker,
.ui-fluid .ui-calendar:has(> .ui-datepicker-trigger) > .ui-inputfield,
.ui-fluid .ui-calendar:has(> .ui-datepicker-trigger) > input.hasDatepicker {
	width: 100% !important;
	padding-right: 2.6em !important;
	box-sizing: border-box !important;
}

.ui-fluid .ui-calendar .ui-datepicker-trigger.ui-button,
.ui-fluid .ui-calendar .ui-datepicker-trigger {
	position: absolute !important;
	right: 0 !important;
	top: 0 !important;
	bottom: 0 !important;
	height: auto !important;
	margin: 0 !important;
}

.ui-calendar .ui-datepicker-trigger .ui-button-text {
	display: none !important;
}

.ui-calendar .ui-datepicker-trigger .ui-icon,
.ui-calendar .ui-datepicker-trigger .ui-button-icon-left {
	display: inline-block !important;
	position: static !important;
	width: 14px !important;
	height: 14px !important;
	margin: 0 !important;
	left: auto !important;
	top: auto !important;
	text-indent: 0 !important;
	overflow: visible !important;
	background: none !important;
	background-image: none !important;
	font: normal normal normal 14px/1 FontAwesome !important;
	font-size: 14px !important;
	line-height: 1 !important;
	color: #fff !important;
}

.ui-calendar .ui-datepicker-trigger .ui-icon::before,
.ui-calendar .ui-datepicker-trigger .ui-button-icon-left::before {
	content: "\f073" !important;
}

.ui-calendar .ui-datepicker-trigger.ui-state-hover,
.ui-calendar .ui-datepicker-trigger.ui-button.ui-state-hover,
.ui-datepicker-trigger.ui-button.ui-state-hover {
	background: var(--castanhal-hover, #6B3682) !important;
	color: #fff !important;
}

.ui-fieldset .ui-fieldset-legend {
	background: #ccc !important;
	color: #666 !important;
	border: 1px solid #ccc !important;
}

/*
 * Checkboxes (PF15 + tema sem sprites ui-icons_*.png): caixa visivel e marcacao via CSS.
 */
.ui-chkbox {
	display: inline-block !important;
	vertical-align: middle !important;
}

.ui-chkbox .ui-chkbox-box {
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	display: inline-block !important;
	background: #fff !important;
	border: 1px solid #888 !important;
	border-radius: 3px !important;
	position: relative !important;
	box-sizing: border-box !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-default,
.ui-chkbox .ui-chkbox-box.ui-state-active,
.ui-chkbox .ui-chkbox-box.ui-state-hover,
.ui-chkbox .ui-chkbox-box.ui-state-focus {
	background: #fff !important;
	border: 1px solid #888 !important;
	color: inherit !important;
}

.ui-datatable .ui-selection-column {
	width: 32px !important;
	min-width: 32px !important;
	text-align: center !important;
	overflow: visible !important;
}

.ui-datatable .ui-selection-column .ui-chkbox,
.ui-datatable .ui-selection-column .ui-chkbox-all {
	display: inline-block !important;
	margin: 0 auto !important;
}

.ui-datatable .ui-chkbox .ui-chkbox-icon,
.ui-datatable .ui-chkbox .ui-icon,
.ui-datatable .ui-chkbox .ui-icon-blank,
.ui-datatable .ui-chkbox .ui-icon-check {
	text-indent: 0 !important;
	overflow: visible !important;
	width: 14px !important;
	height: 14px !important;
	background: none !important;
	background-image: none !important;
	display: inline-block !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	transform: translate(-50%, -50%) !important;
	margin: 0 !important;
}

.ui-datatable .ui-chkbox .ui-chkbox-box.ui-state-active .ui-chkbox-icon::before,
.ui-datatable .ui-chkbox .ui-chkbox-box.ui-state-active .ui-icon-check::before {
	content: '\2713' !important;
	color: var(--castanhal) !important;
	font-size: 14px !important;
	font-weight: bold !important;
	line-height: 1 !important;
}

.ui-datatable .ui-chkbox .ui-chkbox-box:not(.ui-state-active) .ui-icon-check,
.ui-datatable .ui-chkbox .ui-chkbox-box:not(.ui-state-active) .ui-chkbox-icon.ui-icon-check {
	display: none !important;
}

/* Botoes e titulos de panel/dialog (vermelho Castanhal) – menubar publico usa links roxos, nao botoes */
.ui-button.ui-state-default,
.ui-datepicker-trigger.ui-button,
.ui-buttonset .ui-button.ui-state-default,
.ui-fileupload-buttonbar .ui-button.ui-state-default,
#container2 .ui-menubar .ui-menuitem-link.ui-state-default {
	border: 0 !important;
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	color: #fff !important;
	border-radius: 5px !important;
}

.ui-button.ui-state-hover,
.ui-button.ui-state-focus,
.ui-selectonemenu .ui-selectonemenu-trigger.ui-state-hover,
.ui-calendar .ui-datepicker-trigger.ui-button.ui-state-hover {
	background: var(--castanhal-hover) !important;
	color: #fff !important;
}

.ui-button.ui-state-active,
.ui-paginator .ui-paginator-page.ui-state-active {
	background: var(--castanhal-dark) !important;
	color: #fff !important;
}

.btn-padrao.ui-button,
.btn-padrao,
.btn-padrao2.ui-button,
.btn-padrao2 {
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	border: 0 !important;
	color: #fff !important;
}

.ui-panel.ui-widget,
.ui-panel {
	border: 1px solid #ddd !important;
	padding: 0 !important;
	background: #fff !important;
	display: inline-block;
	width: 100%;
}

.ui-panel .ui-panel-titlebar,
.ui-panel .ui-panel-titlebar.ui-widget-header,
.ui-dialog .ui-dialog-titlebar,
.ui-dialog .ui-dialog-titlebar.ui-widget-header {
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 5px 5px 0 0 !important;
	padding: 10px !important;
}

.ui-panel .ui-panel-title,
.ui-panel .ui-panel-titlebar .ui-panel-title {
	color: #fff !important;
	font-weight: normal !important;
}

.ui-panel .ui-panel-content.ui-widget-content {
	background: #fff !important;
	border: 0 !important;
	padding: 10px !important;
}

.ui-panel .ui-panel-titlebar .ui-panel-titlebar-icon,
.ui-dialog .ui-dialog-titlebar-icon {
	color: #fff !important;
}

/*
 * DataTable – alinhar a producao (fundo #ccc nas linhas, texto escuro legivel).
 * theme.css aplica ui-state-default com color:#fff nos filhos – texto some no fundo claro.
 */
.ui-datatable thead th,
.ui-datatable tbody td,
.ui-datatable-tablewrapper > table > thead > tr > th,
.ui-datatable-tablewrapper > table > tbody > tr > td {
	overflow: hidden !important;
	white-space: normal !important;
	word-wrap: break-word !important;
	overflow-wrap: anywhere !important;
}

.ui-datatable thead th:has(.ui-calendar),
.ui-datatable tbody td:has(.ui-calendar),
.ui-datatable thead th:has(.ui-column-filter),
.ui-datatable tbody td:has(.ui-column-filter) {
	overflow: visible !important;
}

.ui-datatable-tablewrapper > table > thead > tr > th,
.ui-datatable > .ui-datatable-tablewrapper > table > thead > tr > th,
.ui-datatable thead th.tabela-table-header,
.ui-datatable thead th.ui-state-default,
.ui-datatable-tablewrapper > table > thead > tr > th.ui-state-default {
	border-radius: 0 !important;
	background: #BBB !important;
	font-weight: bold !important;
	color: #666 !important;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.44) !important;
	vertical-align: top !important;
	line-height: 1.25 !important;
	font-size: 11px !important;
}

.ui-datatable .ui-datatable-data > tr > td,
.ui-datatable-tablewrapper > table > tbody.ui-datatable-data > tr > td,
.ui-datatable-tablewrapper > table > tbody > tr > td {
	background: #ccc !important;
	color: #333 !important;
	border: 1px solid #f4f4f4 !important;
	vertical-align: top !important;
}

/* Selecao: texto vermelho, sem pintar a linha de vermelho (theme ui-state-highlight) */
.ui-datatable .ui-datatable-data > tr.ui-state-highlight,
.ui-datatable-tablewrapper > table > tbody > tr.ui-state-highlight {
	background: transparent !important;
}

.ui-datatable-tablewrapper > table > tbody > tr > td.colSelected,
.ui-datatable-tablewrapper > table > tbody > tr.ui-state-highlight > td,
.ui-datatable > .ui-datatable-tablewrapper > table > tbody > .ui-state-highlight > td {
	background: #ccc !important;
	color: var(--castanhal) !important;
	font-weight: bold !important;
}

/* Conteudo das celulas: nao herdar botao/input ui-state-default (branco sobre cinza) */
.ui-datatable tbody td .ui-outputlabel,
.ui-datatable tbody td .ui-outputlabel.ui-state-default,
.ui-datatable tbody td label,
.ui-datatable tbody td span:not(.ui-button-text),
.ui-datatable tbody td .ui-widget-content,
.ui-datatable tbody td .ui-state-default:not(.ui-button):not(.ui-chkbox-box):not(.ui-commandlink):not(.ui-separator),
.ui-datatable thead th .ui-outputlabel,
.ui-datatable thead th span:not(.ui-icon),
.ui-datatable thead th label,
.ui-datatable thead th .ui-widget-content {
	color: #666 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-weight: inherit !important;
	text-shadow: none !important;
}

.ui-datatable-tablewrapper > table > tbody > tr.ui-state-highlight > td .ui-outputlabel,
.ui-datatable-tablewrapper > table > tbody > tr.ui-state-highlight > td label,
.ui-datatable-tablewrapper > table > tbody > tr.ui-state-highlight > td span:not(.ui-button-text) {
	color: var(--castanhal) !important;
	font-weight: bold !important;
}

/* Colunas duplas (Origem/Destino, datas) – recebimento e consultas */
.tramite-th-dupla,
.tramite-cel-dupla {
	display: block;
	width: 100%;
	text-align: center;
	line-height: 1.35;
}

.tramite-cel-dupla {
	text-align: left;
}

.tramite-th-dupla span,
.tramite-cel-dupla > .ui-outputlabel,
.tramite-cel-dupla > div {
	display: block;
}

hr.tramite-sep-verde,
.tramite-sep-verde {
	display: block;
	width: 100%;
	height: 0;
	border: 0;
	border-top: 1px solid #006400;
	margin: 4px 0;
	padding: 0;
	background: none;
}


.ui-datatable .ui-column-filter,
.ui-datatable input.ui-column-filter,
.ui-datatable .ui-inputfield.ui-column-filter {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	min-height: 1.6em !important;
	height: auto !important;
	background: #fff !important;
	color: var(--input-text) !important;
	border: 1px solid var(--input-border) !important;
	margin: 4px 0 0 !important;
}

.ui-datatable tbody td i.fa {
	font-family: FontAwesome !important;
	font-size: 16px !important;
	color: #333 !important;
	text-indent: 0 !important;
}

/* Paginator (rodape das tabelas) – theme.css: fundo #ddd; nav com icone, nao pílula roxa */
.ui-datatable .ui-paginator,
.ui-datagrid .ui-paginator {
	text-align: center !important;
	padding: 2px !important;
	margin: 0 !important;
	background: #ddd !important;
	border: 0 !important;
}

.ui-paginator .ui-paginator-first,
.ui-paginator .ui-paginator-prev,
.ui-paginator .ui-paginator-next,
.ui-paginator .ui-paginator-last,
.ui-paginator .ui-paginator-page {
	display: inline-block !important;
	width: auto !important;
	min-width: 32px !important;
	min-height: 32px !important;
	line-height: 20px !important;
	padding: 6px 10px !important;
	margin: 5px 2px !important;
	border-radius: 5px !important;
	border: 0 !important;
	vertical-align: middle !important;
	box-sizing: border-box !important;
	text-align: center !important;
	cursor: pointer !important;
}

.ui-paginator .ui-paginator-first,
.ui-paginator .ui-paginator-prev,
.ui-paginator .ui-paginator-next,
.ui-paginator .ui-paginator-last,
.ui-paginator .ui-paginator-page.ui-state-default {
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	color: #fff !important;
	font-weight: normal !important;
}

.ui-paginator .ui-paginator-page.ui-state-active {
	background: var(--castanhal-dark) !important;
	color: #fff !important;
}

.ui-paginator .ui-paginator-first:hover,
.ui-paginator .ui-paginator-prev:hover,
.ui-paginator .ui-paginator-next:hover,
.ui-paginator .ui-paginator-last:hover {
	background: rgba(139, 73, 167, 0.12) !important;
	color: var(--castanhal-hover, #6B3682) !important;
}

.ui-paginator .ui-paginator-page.ui-state-hover {
	background: var(--castanhal-hover, #6B3682) !important;
	color: #fff !important;
}

/* Icones do paginador: FontAwesome (sprites PF15 ausentes no tema legado) */
.ui-paginator .ui-paginator-first .ui-icon,
.ui-paginator .ui-paginator-prev .ui-icon,
.ui-paginator .ui-paginator-next .ui-icon,
.ui-paginator .ui-paginator-last .ui-icon {
	display: inline-block !important;
	width: auto !important;
	height: auto !important;
	min-width: 1em !important;
	text-indent: 0 !important;
	overflow: visible !important;
	background: none !important;
	background-image: none !important;
	position: static !important;
	margin: 0 !important;
	color: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	font: normal normal normal 14px/1 FontAwesome !important;
	font-size: 14px !important;
	font-weight: normal !important;
	line-height: 1 !important;
	vertical-align: middle !important;
}

.ui-paginator .ui-paginator-first .ui-icon::before,
.ui-paginator .ui-icon-seek-first::before,
.ui-paginator .ui-icon-seek-start::before {
	content: "100" !important;
}

.ui-paginator .ui-paginator-prev .ui-icon::before,
.ui-paginator .ui-icon-seek-prev::before {
	content: "104" !important;
}

.ui-paginator .ui-paginator-next .ui-icon::before,
.ui-paginator .ui-icon-seek-next::before {
	content: "105" !important;
}

.ui-paginator .ui-paginator-last .ui-icon::before,
.ui-paginator .ui-icon-seek-end::before,
.ui-paginator .ui-icon-seek-last::before {
	content: "101" !important;
}


/* panelGrid dentro de cabecalho/celula da DataTable (ex.: Protocolo / Inscricao) */
.ui-datatable th .ui-panelgrid,
.ui-datatable td .ui-panelgrid,
.ui-datatable th .ui-panelgrid-content,
.ui-datatable td .ui-panelgrid-content {
	background: transparent !important;
	border: none !important;
	width: 100% !important;
	display: block !important;
}

.ui-datatable th .ui-panelgrid-content,
.ui-datatable td .ui-panelgrid-content {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 2px !important;
}

.ui-datatable th .ui-panelgrid table,
.ui-datatable th .ui-panelgrid tbody,
.ui-datatable th .ui-panelgrid tr,
.ui-datatable td .ui-panelgrid table,
.ui-datatable td .ui-panelgrid tbody,
.ui-datatable td .ui-panelgrid tr {
	display: block !important;
	width: 100% !important;
}

.ui-datatable th .ui-panelgrid-cell,
.ui-datatable td .ui-panelgrid-cell,
.ui-datatable thead th .ui-panelgrid .ui-state-default:not(.ui-column-filter):not(input),
.ui-datatable thead th .ui-panelgrid-cell.ui-state-default {
	background: transparent !important;
	border: none !important;
	padding: 2px 4px !important;
	color: #666 !important;
	text-align: center !important;
	display: block !important;
	width: 100% !important;
	box-sizing: border-box !important;
	float: none !important;
	box-shadow: none !important;
}

.ui-panelgrid > * > tr,
.ui-panelgrid .ui-panelgrid-cell {
	border: none;
}

/* TabView (Trâmite e demais telas com abas) – PF15 */
.ui-tabs.ui-tabs-top,
.ui-tabs.ui-tabs-scrollable {
	padding: 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.ui-tabs .ui-tabs-navscroller {
	overflow: hidden !important;
	background-color: #ccc !important;
	border-radius: 5px 5px 0 0 !important;
	padding-left: 18px !important;
	position: relative !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.ui-tabs .ui-tabs-nav {
	margin: 0 !important;
	padding: 4px 18px !important;
	height: auto !important;
	white-space: nowrap !important;
	border-bottom: 5px solid var(--castanhal-dark) !important;
}

.ui-tabs .ui-tabs-nav li,
.ui-tabs.ui-tabs-scrollable .ui-tabs-nav li,
.ui-tabs.ui-tabs-top > .ui-tabs-nav li {
	display: inline-block !important;
	float: none !important;
	position: relative !important;
	vertical-align: top !important;
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	border: 1px solid var(--castanhal) !important;
	border-radius: 5px 5px 0 0 !important;
	margin: 0 2px 0 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.ui-tabs .ui-tabs-nav li.ui-tabs-selected,
.ui-tabs .ui-tabs-nav li.ui-state-active,
.ui-tabs.ui-tabs-scrollable .ui-tabs-nav li.ui-tabs-selected,
.ui-tabs.ui-tabs-scrollable .ui-tabs-nav li.ui-state-active {
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	border-color: var(--castanhal) !important;
}

.ui-tabs .ui-tabs-nav li .ui-tabs-header,
.ui-tabs .ui-tabs-nav li a.ui-tabs-header,
.ui-tabs .ui-tabs-nav li a.ui-state-default,
.ui-tabs .ui-tabs-nav li a {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	float: none !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	color: #fff !important;
	font-weight: normal !important;
	padding: 0.5em 1em !important;
	text-decoration: none !important;
	cursor: pointer !important;
	white-space: nowrap !important;
}

.ui-tabs .ui-tabs-nav li .ui-tabs-header *,
.ui-tabs .ui-tabs-nav li .ui-tabs-header .ui-outputlabel,
.ui-tabs .ui-tabs-nav li .ui-tabs-header span {
	color: #fff !important;
	background: transparent !important;
}

.ui-tabs-panels,
.ui-tabs .ui-tabs-panel {
	padding: 15px !important;
	background: #fff !important;
	border: 1px solid #ccc !important;
	border-radius: 0 0 5px 5px !important;
	border-top: 5px solid var(--castanhal-dark) !important;
	width: 100% !important;
	box-sizing: border-box !important;
	clear: both !important;
	float: none !important;
}

#formCadastroTramite .ui-tabs,
#formCadastroTramite .ui-tabs-panels,
#formCadastroTramite .ui-tabs-panel {
	width: 100% !important;
	max-width: 100% !important;
}

#formCadastroTramite .ui-datatable {
	width: 100% !important;
	clear: both !important;
}

#formCadastroTramite .ui-datatable-tablewrapper {
	width: 100% !important;
	overflow-x: auto !important;
}

#formCadastroTramite .ui-datatable-tablewrapper > table {
	width: 100% !important;
	table-layout: auto !important;
}

.tramite-acoes-topo {
	width: 100% !important;
	margin: 0 0 10px 0 !important;
	border: 0 !important;
}

.tramite-acoes-topo td {
	text-align: right !important;
	border: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.ui-datatable div.ui-dt-c {
	position: static !important;
	overflow: visible !important;
}

.ui-datatable .ui-datatable-header.ui-widget-header {
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	color: #fff !important;
	border: 0 !important;
	text-transform: uppercase;
	font-weight: bold !important;
}

.ui-datatable .ui-datatable-header.ui-widget-header .ui-outputlabel,
.ui-datatable .ui-datatable-header.ui-widget-header span {
	color: #fff !important;
	background: transparent !important;
}

.ui-datatable .ui-datatable-header,
.ui-datatable .ui-datatable-footer {
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Cabecalho usuario + botao SAIR (icones FA) */
.info-em {
	overflow: visible !important;
}

.info-em .sair,
a.sair {
	display: inline-block !important;
	float: right !important;
	background: #fff !important;
	color: var(--castanhal) !important;
	z-index: 2;
	position: relative;
}

.info-em .fa {
	font-family: FontAwesome !important;
}

/*
 * Portal (portal.xhtml / cabecalho): logo, brasao e imagens do banner.
 * PF15/theme.css aplica ui-state-default (#76297f) em wrappers e pode ocultar img
 * (text-indent em .ui-icon, display em .nivoSlider antes do JS init).
 */
.logo-restrito form,
.logo-restrito .new-topo2,
.logo-restrito .bg-newBn,
#topo .new-topo,
#topo .new-banner,
#topo .bg-newBn {
	background-color: transparent !important;
}

.new-topo,
.new-topo2 {
	overflow: visible !important;
	min-height: 55px;
}

.new-topo > a > img,
.new-topo2 > a > img,
.logo-restrito .new-topo2 > a > img,
.logo-restrito > form > div > a > img {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
	text-indent: 0 !important;
	overflow: visible !important;
	height: 55px !important;
	max-height: 55px !important;
	width: auto !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	margin: 10px 0 !important;
}

#topo img:not(.ui-icon):not(.ui-chkbox-icon):not(.img-brasao) {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
	text-indent: 0 !important;
}

.img-brasao,
.img-bg-bn img,
.new-banner img,
.bg-newBn img {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
	text-indent: 0 !important;
	object-fit: contain;
}

.bg-newBn,
.new-banner,
.new-banner2 {
	overflow: visible !important;
	min-height: 80px;
}

.nivoSlider img,
#slider img,
.box-home img,
.icon-sistema img {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	text-indent: 0 !important;
	max-width: 100% !important;
}

.nivoSlider img:first-child,
#slider img:first-child {
	display: block !important;
}

/*
 * Portal publico – cabecalho (layout producao).
 * Grid 3 colunas: [brasao esquerda] [espaco] [menu + login a direita].
 */
#topo {
	background: rgba(196, 196, 196, 0.38) !important;
	position: relative !important;
	z-index: 100 !important;
	overflow: visible !important;
}

#topo .portal-topo-bar {
	background: rgba(196, 196, 196, 0.38) !important;
	width: 100%;
	overflow: visible !important;
}

#topo .portal-topo-inner {
	display: grid !important;
	grid-template-columns: auto 1fr auto;
	grid-template-rows: auto;
	align-items: center;
	column-gap: 16px;
	width: 940px;
	max-width: 100%;
	margin: 0 auto;
	min-height: 72px;
	padding: 6px 0 6px 4px;
	box-sizing: border-box;
	position: relative;
	overflow: visible !important;
}

#topo .portal-topo-brasao {
	grid-column: 1;
	grid-row: 1;
	justify-self: start;
	align-self: center;
	position: static !important;
	left: auto !important;
	top: auto !important;
	transform: none !important;
	z-index: 2;
	line-height: 0;
}

#topo .portal-topo-brasao a {
	display: inline-block;
	line-height: 0;
}

#topo .img-brasao {
	padding: 4px;
	border-radius: 12px;
	background: #fff;
	height: 65px !important;
	max-height: 65px !important;
	width: 65px !important;
	max-width: 65px !important;
	object-fit: contain;
	margin: 0 !important;
	border: 3px solid var(--castanhal);
	display: inline-block !important;
	box-sizing: border-box;
	vertical-align: middle;
}

#topo .menu-topo {
	grid-column: 3;
	grid-row: 1;
	justify-self: end;
	align-self: center;
	width: max-content;
	max-width: 100%;
	float: none !important;
	margin-top: 0 !important;
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap;
	gap: 22px;
	font-size: 18px;
	position: relative;
	z-index: 110;
	overflow: visible !important;
}

#topo .menu-topo form,
#topo .menu-topo [id$="formMenuPublico"] {
	display: flex !important;
	align-items: center !important;
	flex-wrap: nowrap;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	width: auto !important;
	max-width: 100% !important;
}

#topo .menu-topo .ui-menubar,
#topo .menu-topo .ui-menubar.ui-widget-header,
#topo .menu-topo .ui-menubar-root-list,
#topo .menu-topo .ui-menubar > ul.ui-menu-list {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 18px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	width: auto !important;
}

#topo .menu-topo .ui-menubar .ui-menuitem {
	float: none !important;
	display: list-item !important;
}

#topo .menu-topo .ui-menubar > .ui-menubar-root-list > .ui-menuitem > .ui-menuitem-link,
#topo .menu-topo .ui-menubar > ul.ui-menu-list > li.ui-menuitem > a.ui-menuitem-link {
	background: transparent !important;
	color: var(--castanhal) !important;
	font-weight: bold !important;
	font-size: 18px !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 6px 16px !important;
}

#topo .menu-topo .ui-menubar > .ui-menubar-root-list > .ui-menuitem > .ui-menuitem-link:hover,
#topo .menu-topo .ui-menubar > .ui-menubar-root-list > .ui-menuitem > .ui-menuitem-link.ui-state-hover,
#topo .menu-topo .ui-menubar > .ui-menubar-root-list > .ui-menuitem > .ui-menuitem-link.ui-state-focus {
	background: transparent !important;
	color: var(--castanhal-hover) !important;
}

/* Legado: cabecalhos antigos com new-topo + bg-newBn */
#topo .new-topo {
	position: relative;
	z-index: 2;
	min-height: 58px !important;
	padding: 0 !important;
	margin: 0 auto;
	width: 940px;
	max-width: 100%;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

#topo .bg-newBn {
	position: absolute !important;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: auto !important;
	height: auto !important;
	z-index: 2;
	background: transparent !important;
	background-image: none !important;
	pointer-events: none;
}

#topo .new-banner,
#topo .new-banner2 {
	background: transparent !important;
	background-image: none !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	pointer-events: none;
}

#topo .new-banner a,
#topo .bg-newBn a {
	pointer-events: auto;
}

/*
 * Area restrita (servico tributario / painel-interna): logo a esquerda, faixa e banner.
 */
body.painel-interna #topo form {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.painel-interna #topo .new-topo2 {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 20px;
	width: 940px;
	max-width: 100%;
	margin: 0 auto !important;
	min-height: 76px;
	padding: 8px 12px 8px 4px;
	box-sizing: border-box;
	overflow: visible !important;
}

body.painel-interna #topo .portal-restrito-logo {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	line-height: 0;
	text-decoration: none;
}

body.painel-interna #topo .img-logo-restrito {
	height: 68px !important;
	max-height: 68px !important;
	width: 68px !important;
	max-width: 68px !important;
	padding: 5px;
	margin: 0 !important;
	border-radius: 12px;
	background: #fff !important;
	border: 3px solid var(--castanhal) !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
	object-fit: contain;
	display: inline-block !important;
}

body.painel-interna #topo .portal-restrito-logo:hover .img-logo-restrito {
	border-color: var(--castanhal-hover) !important;
	box-shadow: 0 3px 12px rgba(0, 0, 0, 0.16);
}

body.painel-interna #topo .menu-topo-restrito {
	float: none !important;
	flex: 1 1 auto;
	display: flex !important;
	align-items: center !important;
	justify-content: flex-end !important;
	margin: 0 !important;
	max-width: calc(100% - 90px);
}

body.painel-interna #topo .menu-topo-restrito p {
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.35 !important;
	text-align: right;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--castanhal) !important;
	letter-spacing: 0.02em;
}

body.painel-interna #topo .bg-newBn {
	position: static !important;
	left: auto !important;
	top: auto !important;
	transform: none !important;
	width: 100% !important;
	height: auto !important;
	z-index: 1;
	background: url('../imagens_castanhal/municipio.jpg') center !important;
	background-position-y: -910px !important;
	pointer-events: auto;
}

body.painel-interna #topo .new-banner2 {
	width: 100% !important;
	background: rgba(0, 0, 0, 0.36) url('../imagens_castanhal/frente-bn.png') center !important;
	background-position-y: -910px !important;
	height: 80px !important;
	min-height: 80px !important;
	padding: 1px 0 0 0 !important;
	margin: 0 !important;
	pointer-events: auto;
}

.menu-topo .ui-menubar,
.menu-topo .ui-menubar.ui-widget-header {
	background: transparent !important;
	border: 0 !important;
}

.menu-topo .ui-menubar .ui-menuitem-link,
.menu-topo .ui-menubar .ui-menuitem-link.ui-state-default {
	background: transparent !important;
	color: var(--castanhal) !important;
	font-weight: bold !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.menu-topo .ui-menubar .ui-menuitem-link:hover,
.menu-topo .ui-menubar .ui-menuitem-link.ui-state-hover,
.menu-topo .ui-menubar .ui-menuitem-link.ui-state-focus {
	background: transparent !important;
	color: var(--castanhal-hover) !important;
}

.menu-topo .ui-menubar .ui-icon {
	color: var(--castanhal) !important;
	text-indent: 0 !important;
	background: none !important;
}

.menu-topo a.home,
.menu-topo .home {
	background: var(--castanhal, var(--primary-color, #8B49A7)) !important;
	color: #fff !important;
	margin: 0 !important;
	align-self: center;
	line-height: 1.2;
	padding: 10px !important;
	font-weight: 900 !important;
	font-size: 13px !important;
	border-radius: 5px !important;
	box-shadow: 0 0 8px #ccc !important;
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	white-space: nowrap;
}

.menu-topo a.home:hover {
	background: var(--castanhal-hover) !important;
}

#topo .menu-topo > a.bt-login,
#topo .menu-topo > .bt-login,
.menu-topo > a.bt-login,
.menu-topo > .bt-login {
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	flex: 0 0 auto !important;
	position: static !important;
	margin: 0 !important;
	padding: 6px 16px !important;
	transform: none;
	white-space: nowrap !important;
	color: var(--castanhal) !important;
	font-weight: bold !important;
	font-size: 18px !important;
	text-decoration: underline !important;
	background: transparent !important;
	box-shadow: none !important;
	line-height: 1.2 !important;
	z-index: auto !important;
}

#topo .menu-topo > a.bt-login:hover,
#topo .menu-topo > .bt-login:hover,
.menu-topo > a.bt-login:hover,
.menu-topo > .bt-login:hover {
	color: var(--castanhal-hover) !important;
	background: transparent !important;
}

/* Submenus do portal publico acima do slider (bg-slider usa z-index: 9 no default.css) */
#topo .menu-topo .ui-menubar,
#topo .menu-topo form {
	overflow: visible !important;
}

#topo .menu-topo .ui-menu-child,
#topo .menu-topo .ui-menubar .ui-menu-child,
#topo .ui-menubar .ui-menu-child {
	z-index: 1200 !important;
	background: #fff !important;
	border: 1px solid #ddd !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12) !important;
}

#topo .menu-topo .ui-menu-child .ui-menuitem-link,
#topo .menu-topo .ui-menu-child .ui-menuitem-link.ui-state-default {
	background: #fff !important;
	color: var(--castanhal) !important;
	font-weight: normal !important;
}

#topo .menu-topo .ui-menu-child .ui-menuitem-link:hover,
#topo .menu-topo .ui-menu-child .ui-menuitem-link.ui-state-hover,
#topo .menu-topo .ui-menu-child .ui-menuitem-link.ui-state-focus {
	background: #f3edf5 !important;
	color: var(--castanhal-hover) !important;
}

.bg-slider {
	z-index: 1 !important;
}

#topo .menu-topo > .clear,
#topo .portal-topo-inner > .clear {
	display: none !important;
	height: 0 !important;
	overflow: hidden !important;
}

.footer .logo-rodape-prefeitura,
.logo-rodape-prefeitura {
	display: inline-block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

.footer .links-rodape .fa,
.bn-rodape .links-rodape .fa {
	color: var(--castanhal) !important;
	font-family: FontAwesome !important;
}

#container {
	background: #fff !important;
}

/*
 * Mascara modal (statusDialog / p:dialog) – theme.css legado forca position:absolute + height:100%
 * relativos ao body (height:100% = viewport). Em paginas longas ou com scroll, cobre so parte da tela.
 * PF15 gera ui-dialog-mask com position:fixed; restauramos isso aqui.
 */
.ui-widget-overlay.ui-dialog-mask,
.ui-dialog-mask {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	width: auto !important;
	height: auto !important;
}



/* PF15 checkbox fix (global) */
/*
 * theme.css legado aplica text-indent:-99999px em .ui-icon, ocultando o check.
 * Corrige chkbox em formularios, dataTable, selectCheckboxMenu, tree e treetable.
 */
.ui-chkbox .ui-chkbox-box {
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	border: 1px solid #888 !important;
	border-radius: 3px !important;
	position: relative !important;
	box-sizing: border-box !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-default,
.ui-chkbox .ui-chkbox-box.ui-state-active,
.ui-chkbox .ui-chkbox-box.ui-state-hover,
.ui-chkbox .ui-chkbox-box.ui-state-focus {
	background: #fff !important;
	border: 1px solid #888 !important;
	color: inherit !important;
}

.ui-chkbox .ui-chkbox-icon,
.ui-chkbox .ui-icon,
.ui-chkbox .ui-icon-blank,
.ui-chkbox .ui-icon-check,
.ui-treetable .ui-chkbox .ui-chkbox-icon,
.ui-treetable .ui-chkbox .ui-icon-check,
.ui-selectcheckboxmenu-panel .ui-chkbox .ui-chkbox-icon,
.ui-selectcheckboxmenu-panel .ui-chkbox .ui-icon-check,
.ui-tree .ui-chkbox .ui-chkbox-icon,
.ui-tree .ui-chkbox .ui-icon-check {
	text-indent: 0 !important;
	overflow: visible !important;
	width: 14px !important;
	height: 14px !important;
	background: none !important;
	background-image: none !important;
	display: inline-block !important;
	position: absolute !important;
	top: 50% !important;
	left: 50% !important;
	transform: translate(-50%, -50%) !important;
	margin: 0 !important;
}

.ui-chkbox .ui-chkbox-box.ui-state-active .ui-chkbox-icon::before,
.ui-chkbox .ui-chkbox-box.ui-state-active .ui-icon-check::before,
.ui-treetable .ui-chkbox .ui-chkbox-box.ui-state-active .ui-chkbox-icon::before,
.ui-treetable .ui-chkbox .ui-chkbox-box.ui-state-active .ui-icon-check::before,
.ui-selectcheckboxmenu-panel .ui-chkbox .ui-chkbox-box.ui-state-active .ui-chkbox-icon::before,
.ui-selectcheckboxmenu-panel .ui-chkbox .ui-chkbox-box.ui-state-active .ui-icon-check::before,
.ui-tree .ui-chkbox .ui-chkbox-box.ui-state-active .ui-chkbox-icon::before,
.ui-tree .ui-chkbox .ui-chkbox-box.ui-state-active .ui-icon-check::before {
	content: '\2713' !important;
	color: var(--castanhal, #8B49A7) !important;
	font-size: 14px !important;
	font-weight: bold !important;
	line-height: 1 !important;
}

.ui-chkbox .ui-chkbox-box:not(.ui-state-active) .ui-icon-check,
.ui-chkbox .ui-chkbox-box:not(.ui-state-active) .ui-chkbox-icon.ui-icon-check {
	display: none !important;
}

.ui-datatable thead th.ui-selection-column,
.ui-datatable tbody td.ui-selection-column,
.ui-datatable .ui-selection-column {
	width: 18px !important;
	max-width: 18px !important;
	min-width: 18px !important;
	padding: 1px 2px !important;
	text-align: center !important;
	overflow: visible !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
}

.ui-datatable colgroup col.ui-selection-column {
	width: 18px !important;
}

.ui-datatable .ui-selection-column .ui-chkbox-box {
	width: 14px !important;
	height: 14px !important;
	min-width: 14px !important;
	min-height: 14px !important;
}

.ui-datatable .ui-selection-column .ui-chkbox-all {
	width: 14px !important;
	height: 14px !important;
}

.ui-datatable.tabela-table > .ui-datatable-tablewrapper > table {
	table-layout: fixed;
	width: 100%;
}

.ui-datatable .ui-selection-column .ui-chkbox,
.ui-datatable .ui-selection-column .ui-chkbox-all {
	display: inline-block !important;
	margin: 0 auto !important;
}

/* PF15 multi-label header fix (global) – linha fina entre labels empilhados no header */
.ui-datatable thead th:has(.ui-panelgrid),
.ui-datatable th:has(.ui-panelgrid) {
	overflow: visible !important;
}

.ui-datatable thead th .ui-panelgrid tbody tr > td.ui-panelgrid-cell:not(:last-child):not(:has(hr.ui-separator)):not(:has(.ui-separator)),
.ui-datatable thead th .ui-panelgrid tbody tr:not(:last-child) > td.ui-panelgrid-cell:not(:has(hr.ui-separator)):not(:has(.ui-separator)) {
	border-bottom: 1px solid rgba(60, 60, 60, 0.65) !important;
	padding-bottom: 3px !important;
}

.ui-datatable thead th .ui-panelgrid td.ui-panelgrid-cell:has(> hr.ui-separator),
.ui-datatable thead th .ui-panelgrid td.ui-panelgrid-cell:has(> .ui-separator) {
	display: none !important;
}

