.modalDadosOrcamento .row .pgModalContentArea {
	overflow: hidden !important;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(1),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(1),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .hf.hora:nth-child(1){
	padding-right: 7.5px;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(2),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(2),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .hf.hora:nth-child(2){
	padding-right: 7.5px;
	padding-left: 7.5px;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(3),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(3),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .hf.hora:nth-child(3){
	padding-right: 7.5px;
	padding-left: 7.5px;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(4),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .valor.hora:nth-child(4),
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .hf.hora:nth-child(4){
	padding-left: 7.5px;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .horasItensOrcamento{
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	font-variant-numeric: tabular-nums;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .horasItensOrcamento .valor.hora{
	flex: 0 0 48px;
	min-width: 48px;
	padding-left: 0px !important;
	padding-right: 0px !important;
	text-align: center;
	white-space: nowrap;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .idArea,
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .idArea{
	border-left: 3px solid #ddd;
	font-weight: 600;
	color: var(--primary-color);
	padding-right: 7.5px;
	padding-left: 10px;
}

.modalDadosChamado .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .idArea i,
.modalDadosOrcamento .contentColumn .areaItensOrcamento .tabelaListarItensOrcamento .idArea i{
	padding-right: 5px;
}

.modalAlterarItensOrcamento .pgModalDefaultHeader{
	border-bottom: 0px !important;
}

.modalAlterarItensOrcamento .pgModalPutCodeHtml{
	margin: 0px !important;
}

.modalAlterarItensOrcamento .totalizadores{
	background: #eee;
	border: 1px solid #ddd;
	border-left: 0px;
	border-right: 0px;
/*	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;*/
/*	border-top: 0px;*/
	padding-top: 7.5px;
	padding-bottom: 7.5px;
/*	margin-bottom: 10px;*/
}

.modalAlterarItensOrcamento .totalizadores .item{
	font-size: 0.9rem;
}

.modalAlterarItensOrcamento .totalizadores .item > .row:first-of-type{
	align-items: center;
	height: 100%;
}

.modalAlterarItensOrcamento .totalizadores .item .label{
	padding: 0px;
	font-weight: 600;
	color: var(--primary-color);
	text-transform: uppercase;
	font-size: 0.75rem;
}

.modalAlterarItensOrcamento .totalizadores .item .quantidade{
	padding: 0px;
	font-weight: 700;
	color: #666;
	margin-left: 10px;
}

.modalAlterarItensOrcamento .inputOcultoOrcamento{
	margin-left: 20px;
	margin-top: 15px;
	width: 100px;
	display: none;
}

.modalAlterarItensOrcamento .inputProdutoOrcamento{
	margin-left: 20px;
	/*margin-left: 10px;*/
	margin-top: 15px;
}

.modalAlterarItensOrcamento .inputResponsavelOrcamento{
	margin-left: 10px;
	margin-top: 15px;
	margin-right: 20px;
}

.modalAlterarItensOrcamento .inputDescricaoOrcamento{
	margin-left: 20px;
	margin-top: 10px;
	margin-right: 20px;
}

.modalAlterarItensOrcamento .inputHorasNegociadas{
	margin-left: 20px;
	margin-top: 10px;
	margin-right: -10px;
}

.modalAlterarItensOrcamento .inputHorasPrevistas{
	margin-left: 20px;
	margin-top: 10px;
}

.modalAlterarItensOrcamento .inputPrevisaoEntrega{
	margin-left: 10px;
	margin-top: 10px;
	margin-right: 20px;
}

.modalAlterarItensOrcamento .labelDescricaoAtividade{
	margin-left: 20px;
	margin-top: 10px;
}

.modalAlterarItensOrcamento .btnModalConfirm{
	margin-right: 20px;
}

.modalAlterarItensOrcamento .btnModalCancel{
	margin-left: 20px;
}

.modalAlterarItensOrcamento .diviserItens{
	border-bottom: 1px solid #ddd;
	margin-top: 17.5px;
	margin-bottom: 2.5px;
}

.modalAlterarItensOrcamento .areaListarItensOrcamentos .item .quillArea{
	padding: 0px;
	margin-left: 15px;
}

.modalAlterarItensOrcamento .areaListarItensOrcamentos .item .quillArea .ql-toolbar.ql-snow{
	border-top: 0px;
	border-right: 0px;
}

.modalAlterarItensOrcamento .areaListarItensOrcamentos .item .quillArea .ql-container.ql-snow{
	border-bottom: 0px;
	border-right: 0px;
	height: 200px;
}

.modalAlterarItensOrcamento .inputAnexos{
	margin-left: 20px;
	margin-right: 20px;
	margin-top: 10px;
}

.modalAlterarItensOrcamento .btnAdicionarItem{
	color: var(--primary-color);
	cursor: pointer;
/*	border: 1px solid #ddd;*/
	padding-top: 2.5px;
	padding-bottom: 2.5px;
	margin-left: 20px;
	margin-top: -2.5px;
	margin-bottom: -2.5px;
/*	background: #fff;*/
}

.modalAlterarItensOrcamento .btnAdicionarItem > .row:first-of-type{
	align-items: center;
	height: fit-content;
}

.modalAlterarItensOrcamento .btnAdicionarItem .icone{
	padding: 0px;
	margin-left: 10px;
}

.modalAlterarItensOrcamento .btnAdicionarItem .texto{
	padding: 0px;
	padding-left: 10px;
	text-transform: uppercase;
	font-size: 0.8rem;
	font-weight: 600;
	margin-right: 12.5px;
	margin-top: -2px;
}

.paginaListaOrcamentos .areaTotal {
	/*	background: green;*/
	height: 40px;
	margin-top: 15px;
	margin-left: 20px;
}

.paginaListaOrcamentos .areaTotal .label {
	padding: 0px;
	text-transform: uppercase;
	font-size: 0.8rem;
	font-weight: 600;
	color: #666;
}

.paginaListaOrcamentos .areaTotal .value {
	padding: 0px;
	font-weight: 700;
	color: #666;
	font-size: 1rem;
	margin-top: -1.5px;
}

.paginaListaOrcamentos .areaTotal .value .faturadas.diff {
	color: var(--orange);
}

.paginaListaOrcamentos .tabelaOrcamentos {
	margin: 15px;
}

.paginaListaOrcamentos .tabelaOrcamentos .idArea {
	border-left: 3px solid #ddd;
	font-weight: 600;
}

.paginaListaOrcamentos .tabelaOrcamentos .vh{
	padding: 0px !important;
	margin-left: 7.5px;
}

.paginaListaOrcamentos .tabelaOrcamentos .vh:nth-child(1){
/*	padding: 0px !important;*/
	margin-left: 12.5px;
}

.paginaListaOrcamentos .tabelaOrcamentos .vh:nth-child(4){
	margin-right: 10px;
}

.paginaListaOrcamentos .tabelaOrcamentos .valueTable {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	width: 2px;
}

.paginaListaOrcamentos .tabelaOrcamentos .valueTable span {
	color: var(--orange);
}

.paginaListaOrcamentos .tabelaOrcamentos .areaProdDept .divider {
	padding: 0px;
	margin-left: 7.5px;
	margin-right: 7.5px;
}

.paginaListaOrcamentos .tabelaOrcamentos .areaProdDept .prod {
	width: 20px;
	height: 20px;
/*	background: green;*/
	padding: 0px;
	margin-right: 10px;
	line-height: 20px;
	text-align: center;
	color: var(--primary-color);
	font-size: 1.05rem;
}

.paginaListaOrcamentos .tabelaOrcamentos .areaProdDept .depto {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	width: 2px;
	padding-left: 0px;
	margin-left: 7.5px;
}

.paginaListaOrcamentos .tabelaOrcamentos .valueSla span {
	color: var(--orange);
}

.paginaListaOrcamentos .tabelaOrcamentos .horasRealizadas {
	height: 27.5px;
}

.paginaListaOrcamentos .tabelaOrcamentos .horasRealizadas>.row:first-of-type {
	height: 100%;
	align-items: center;
}

.paginaListaOrcamentos .tabelaOrcamentos .horasRealizadas .icone {
	padding: 0px;
	font-size: 1.4rem;
	line-height: 27.5px;
	padding-left: 15px;
	margin-right: -2.5px;
}

.paginaListaOrcamentos .tabelaOrcamentos .iconStatus {
	color: var(--orange);
	padding-right: 0px;
	margin-right: -5px;
	font-size: 1.1rem;
	height: 20px;
	line-height: 22.5px;
}

.paginaListaOrcamentos .tabelaOrcamentos .iconStatusMensagem {
	color: var(--blue);
	padding-right: 0px;
	margin-right: -6px;
	font-size: 1.1rem;
	height: 20px;
	line-height: 22.5px;
}

.paginaListaOrcamentos .areaFiltros .inputVisualizacao {
	margin-left: 15px;
	margin-top: 12.5px;
}

.paginaListaOrcamentos .areaFiltros .inputTermo {
	margin-left: 10px;
	margin-top: 12.5px;
}

.paginaListaOrcamentos .areaFiltros .inputStatus {
	margin-left: 7.5px;
	margin-top: 12.5px;
}

.paginaListaOrcamentos .areaFiltros .inputTipoVisualizacaoChamado {
	margin-left: 7.5px;
	margin-top: 12.5px;
}

.paginaListaOrcamentos .areaFiltros .inputEmpresas {
	margin-left: 7.5px;
	margin-top: 12.5px;
}

.paginaListaOrcamentos .areaTotal.horas {
	margin-left: 30px;
}

.paginaListaOrcamentos .areaFiltros>.row:last-of-type {
	height: fit-content;
	align-items: end;
	margin-bottom: 2.5px;
}

.paginaListaOrcamentos .areaFiltros .btnClearFilter {
	margin-right: 15px;
}

.paginaListaOrcamentos .btnCreateDefault.btnExportData {
	margin-left: auto;
	background: #ddd;
}

.paginaListaOrcamentos .btnCreateDefault.btnExpandFilter {
	margin-left: 7.5px;
	background: var(--blue);
	margin-right: 15px;
}

.paginaListaOrcamentos .btnCreateDefault.btnExportData .icon,
.paginaListaOrcamentos .btnCreateDefault.btnExportData .text {
	color: var(--blue);
}

.modalDadosOrcamento .contentColumn .tabsArea{
/*	background: green;*/
	border: 1px solid #ddd;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	border-bottom: 0px;
}

.modalDadosOrcamento .contentColumn .tabsArea .tabItem{
	border-bottom: 2px solid #eee;
	margin-left: 0px !important;
	cursor: pointer !important;
}

.modalDadosOrcamento .contentColumn .tabsArea .tabItem.active{
	border-color: var(--primary-color);
	cursor: default !important;
}

.modalDadosOrcamento .contentColumn .contentTabEscopo,
.modalDadosOrcamento .contentColumn .contentTabDados,
.modalDadosOrcamento .contentColumn .contentTabGantt{
	border: 1px solid #ddd;
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	border-top: 0px;
}

.modalDadosOrcamento .contentColumn{
	margin-left: 15px;
}

.modalDadosOrcamento .contentColumn .descriptionArea{
	margin: 25px 25px 15px 25px !important;
}

.modalDadosOrcamento .contentColumn .timeLineArea .titleArea{
	margin-left: 20px;
}

.modalDadosChamado .contentTabEscopo .areaItensOrcamento{
	margin: 25px 25px 25px 25px !important;
}

.modalIniciarOrcamento .inputPrioridade {
	margin-left: 10px;
	width: 150px;
}

.modalIniciarOrcamento .inputProduto {
	margin-top: 12.5px;
	margin-left: 10px;
}

.modalIniciarOrcamento .inputProjeto {
	margin-left: 10px;
}

.modalIniciarOrcamento .inputNatureza {
	margin-top: 12.5px;
}

.modalIniciarOrcamento .inputDepartamento {
	margin-top: 12.5px;
	margin-left: 10px;
}

.modalIniciarOrcamento .inputTipoMetodologia{
	margin-top: 12.5px;
}

.modalIniciarOrcamento .inputAreaMetodologia{
	margin-top: 12.5px;
	margin-left: 10px;
}

.modalIniciarOrcamento .inputConclusaoPrevista{
	margin-top: 12.5px;
	margin-left: 10px;
}

.modalDadosOrcamento .areaItensOrcamento .areaQuillOrcamento{
	padding: 0px;
	margin-top: 5px;
}

.modalDadosOrcamento .areaItensOrcamento .areaQuillOrcamento .btnGerarDescricao{
	position: absolute;
	top: 11px;
	right: 12.5px !important;
	text-transform: uppercase;
	font-size: 0.825rem;
	cursor: pointer;
	padding: 0px;
	font-weight: 600;
	color: var(--primary-color);
}

.modalDadosOrcamento .previewOrcamento{
	border: 1px solid #ddd;
	border-radius: 5px;
	padding-top: 15px;
	padding-bottom: 10px;
	font-size: 0.9rem;
	color: #666;
	display: none;
	height: auto;
	overflow: visible;
}

.modalDadosOrcamento .previewOrcamento *{
	user-select: text;
	word-wrap: break-word;
  	overflow-wrap: break-word;
 	white-space: normal;
}

.modalDadosOrcamento .previewOrcamento:not(.ql-editor) ul,
.modalDadosOrcamento .previewOrcamento:not(.ql-editor) li{
	list-style-type: initial;
	margin-left: 15px;
	user-select: text;
	margin-right: 15px;
}

.modalDadosOrcamento .previewOrcamento p,
.modalDadosOrcamento .previewOrcamento img,
.modalDadosOrcamento .previewOrcamento p img {
	max-width: 100% !important;
}

.modalDadosOrcamento .tabelaListarItensOrcamento{
	margin-top: 5px;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableHeader > .row:first-of-type,
.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableItensLine > .row:first-of-type {
	align-items: center;
	flex-wrap: nowrap;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableHeader .pgTableHeaderItem {
	box-sizing: border-box;
	min-width: 0;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableHeader .pgTableHeaderItem > .row:first-of-type {
	align-items: center;
	flex-wrap: nowrap;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableHeader .pgTableHeaderItem .icone {
	font-size: 0.925rem;
	padding-right: 0px;
	margin-top: -2px;
	margin-bottom: -2px;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableHeader .pgTableHeaderItem .final {
	padding-left: 10px;
	white-space: nowrap;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .col.valor:not(.hora) {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	min-width: 0;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .horasItemOrcamento {
	height: 27.5px;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .horasItemOrcamento > .row:first-of-type {
	height: 100%;
	align-items: center;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .horasItemOrcamento .valorH {
	padding: 0px;
	min-width: 0;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .horasItemOrcamento .valorH > .row:first-of-type {
	align-items: center;
	flex-wrap: nowrap;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .horasItemOrcamento .hf {
	color: #444;
	font-weight: inherit;
	font-size: inherit;
	line-height: 27.5px;
	text-align: center;
	white-space: nowrap;
}

.modalDadosOrcamento .labelMsgOrcamento{
	margin-top: 20px;
}

.modalDadosOrcamento .btnAcao{
	margin-left: 25px;
	cursor: pointer;
}

.modalDadosOrcamento .btnAcao > .row:first-of-type{
	align-items: center;
	height: fit-content;
}

.modalDadosOrcamento .btnAcao .icone{
	font-size: 0.8rem;
	padding: 0px;
	color: var(--primary-color);
}

.modalDadosOrcamento .btnAcao .texto{
	font-size: 0.75rem;
	font-weight: 600;
	color: #666;
	padding: 0px;
	padding-left: 7.5px;
	text-transform: uppercase;
}

.modalDadosOrcamento input[type="file"]{
	display: none;
}

.modalAlterarItensOrcamento .quillArea{
	padding: 0px;
	margin-left: 20px;
	margin-right: 20px;
}

.modalAlterarItensOrcamento .btnModalRemove{
	background: var(--red);
	color: #fff;
	margin-left: 10px;
}

.modalAlterarItensOrcamento .btnModalSendStack{
	background: var(--primary-color);
	color: #fff;
	margin-left: 5px;
	margin-right: -5px;
}

.modalDadosOrcamento .areaItensOrcamento .tabelaListarItensOrcamento .checkBox {
	flex: 0 0 19px;
	width: 19px;
	height: 19px;
	border: 2px solid #ddd;
	border-radius: 2.5px;
	padding: 0px;
	/*margin-top: 3px;*/
	margin-left: 0px;
	/*margin-right: -10px;*/
	/*	display: none;*/
}

.modalDadosOrcamento .areaItensOrcamento .tabelaListarItensOrcamento .selecaoItemOrcamento {
	margin-left: 0px;
	margin-right: 0px;
	padding-left: 10px;
	justify-content: center;
}

.modalDadosOrcamento .areaItensOrcamento .tabelaListarItensOrcamento .checkBox.checked::before {
	position: absolute;
	font-family: 'Font Awesome 5 Pro';
	content: "\f00c";
	height: 22px !important;
	width: 22px !important;
	padding: 0px;
	/*background: green;*/
	font-weight: 900;
	text-align: center;
	line-height: 22px;
	color: var(--green-default);
	font-size: 0.9rem;
	text-align: center;
	margin-left: -3px;
	margin-top: -3px;
}

.modalDadosOrcamento .contentTabGantt .areaGanttSolicitacao {
	margin: 20px 25px 25px 25px !important;
	--gantt-blue-dark: #0d3b72;
	--gantt-track: #e6eaef;
	--gantt-orange: #f59e0b;
	--gantt-phase-1: #63d0f0;
	--gantt-phase-2: #4ab7dc;
	--gantt-phase-3: #629fd2;
	--gantt-phase-4: #3e6fa2;
	--gantt-phase-5: #6f70bf;
	--gantt-phase-6: #65609a;
}

.modalDadosOrcamento .contentTabGantt .areaGanttSolicitacao .filtroCliente,
.modalDadosOrcamento .contentTabGantt .areaGanttSolicitacao .filtroOperador,
.modalDadosOrcamento .contentTabGantt .areaGanttSolicitacao .filtroPeriodoInicio,
.modalDadosOrcamento .contentTabGantt .areaGanttSolicitacao .filtroProduto,
.modalDadosOrcamento .contentTabGantt .areaGanttSolicitacao .filtroCategoriaProjeto,
.modalDadosOrcamento .contentTabGantt .areaGanttSolicitacao .filtroStatusSolicitacao {
	margin-right: 10px;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltroCard {
	border: 1px solid #d7dfeb;
	border-radius: 6px;
	background: linear-gradient(180deg, #ffffff 0%, #f8fafd 100%);
	overflow: visible;
	margin-top: 10px;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .ganttFiltros {
	padding: 0 12px;
	margin-top: 8px;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .ganttFiltros:last-child {
	padding-bottom: 12px;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .btnLimparFiltrosGantt {
	margin-bottom: 2px;
}

.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual {
	padding: 8px 10px 6px 10px;
	margin-top: 10px;
	background: #f5f7fb;
	border: 1px solid #dde4ee;
	border-radius: 6px;
	overflow: hidden;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .ganttLegendaVisual {
	border: none;
	border-bottom: 1px solid #dde4ee;
	border-radius: 0;
	margin-top: 0;
	padding: 0;
	background: transparent;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .ganttLegendaVisual .barraFases {
	height: 8px;
	gap: 0;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .ganttLegendaVisual .fase {
	border-radius: 0;
}

.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .barraFases {
	gap: 2px;
	height: 18px;
	margin-left: 0;
	margin-right: 0;
}

.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .fase {
	border-radius: 2px;
	padding: 0;
}

.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .fase.fase1 { background: var(--gantt-phase-1); }
.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .fase.fase2 { background: var(--gantt-phase-2); }
.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .fase.fase3 { background: var(--gantt-phase-3); }
.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .fase.fase4 { background: var(--gantt-phase-4); }
.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .fase.fase5 { background: var(--gantt-phase-5); }
.modalDadosOrcamento .contentTabGantt .ganttLegendaVisual .fase.fase6 { background: var(--gantt-phase-6); }

.modalDadosOrcamento .contentTabGantt .ganttFiltros {
	align-items: flex-end;
	margin-top: 10px;
	margin-left: 0;
	margin-right: 0;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltros .filtroGantt {
	margin-top: 6px;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltros .filtroGantt .pgInputArea {
	margin-top: 0;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltros .filtroGantt .pgInputArea.inputDropdown .inputContent {
	overflow: visible;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltros .filtroGantt .pgInputArea.inputDropdown.opened {
	position: relative;
	z-index: 20;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltros .filtroGantt .pgInputArea.inputDropdown .itensListContainer {
	z-index: 20;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltros .filtroGantt .pgInputArea .labelDefault {
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.02em;
	color: #5f6c7b;
}

.modalDadosOrcamento .contentTabGantt .ganttFiltros .filtroGantt .pgInputArea .inputContent {
	border-color: #d8dee8;
	border-radius: 4px;
	min-height: 34px;
}

.modalDadosOrcamento .contentTabGantt .btnLimparFiltrosGantt {
	margin-left: 10px;
	margin-bottom: 1px;
}

.modalDadosOrcamento .contentTabGantt .btnClearFilter {
	margin-left: 5px;
	height: 47.5px;
	cursor: pointer;
	border-radius: 5px;
	background: #ddd;
	color: #666;
	padding: 0px;
	text-align: center;
	line-height: 47.5px;
	width: 45px;
	font-size: 1.3rem;
}

.modalDadosOrcamento .contentTabGantt .btnLimparFiltrosGantt > .row {
	align-items: center;
	justify-content: center;
}

.modalDadosOrcamento .contentTabGantt .cardsResumoGantt {
	margin-top: 15px;
	gap: 10px;
	margin-left: 0;
	margin-right: 0;
}

.modalDadosOrcamento .contentTabGantt .cardsResumoGantt .cardResumo {
	border: 1px solid #dce3ef;
	background: linear-gradient(180deg, #ffffff 0%, #f5f8fd 100%);
	border-radius: 6px;
	padding: 12px 14px;
	min-height: 78px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.modalDadosOrcamento .contentTabGantt .cardsResumoGantt .cardResumo > .row {
	margin-left: 0;
	margin-right: 0;
}

.modalDadosOrcamento .contentTabGantt .cardsResumoGantt .cardResumo .label {
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	font-weight: 700;
	color: #6f7e91;
	padding: 0;
	line-height: 1.2;
}

.modalDadosOrcamento .contentTabGantt .cardsResumoGantt .cardResumo .valor {
	font-size: 1.05rem;
	font-weight: 700;
	color: #24477f;
	padding: 0;
	margin-top: 6px;
	line-height: 1.15;
}

.modalDadosOrcamento .contentTabGantt .areaCanvasGanttSolicitacao {
	margin-top: 14px;
	padding: 14px;
	border: 1px solid #d7dfeb;
	border-radius: 6px;
	background: linear-gradient(180deg, #ffffff 0%, #fbfcff 100%);
	min-height: 340px;
	max-height: 540px;
	overflow: auto;
	box-shadow: inset 0 0 0 1px #eef2f7;
}

.modalDadosOrcamento .contentTabGantt .emptyStateGanttSolicitacao {
	margin-top: 10px;
	font-size: 0.82rem;
	font-weight: 600;
	color: #79879a;
	text-align: center;
	padding: 8px;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao {
	align-items: center;
	margin-top: 12px;
	margin-left: 0;
	margin-right: 0;
	gap: 10px;
	padding: 9px 14px;
	border: 1px solid #d7dfeb;
	border-radius: 6px;
	background: linear-gradient(180deg, #ffffff 0%, #f6f9fe 100%);
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .itensPorPaginaGantt {
	display: flex;
	align-items: center;
	gap: 8px;
	min-width: auto;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .itensPorPaginaGantt .pgInputArea {
	margin-top: 0;
	min-width: 80px;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .itensPorPaginaGantt .labelDefault {
	display: none;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .textoPorPagina {
	font-size: 0.78rem;
	font-weight: 600;
	color: #7a8fa6;
	white-space: nowrap;
	letter-spacing: 0.01em;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .infoPaginacaoGantt {
	align-self: center;
	font-size: 0.78rem;
	font-weight: 700;
	color: #607087;
	display: flex;
	align-items: center;
	gap: 6px;
	padding-left: 4px;
	white-space: nowrap;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .infoPaginacaoGantt .separador {
	opacity: 0.6;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .acoesPaginacaoGantt {
	align-self: center;
	margin-left: auto;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .acoesPaginacaoGantt > .row {
	gap: 8px;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .btnPaginarGantt {
	align-self: center;
	min-width: auto;
	padding: 0 16px;
	user-select: none;
	border: 1px solid #d4dde9;
	background: #ecf1f8;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .btnPaginarGantt > .row {
	justify-content: center;
	align-items: center;
	gap: 6px;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .btnPaginarGantt .text {
	color: #4f617a;
	text-transform: none;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .btnPaginarGantt .icon {
	color: #4f617a;
	font-size: 0.85rem;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .btnPaginarGantt:not(.disabled):hover {
	background: #dfe7f2;
}

.modalDadosOrcamento .contentTabGantt .ganttPaginacao .btnPaginarGantt.disabled {
	opacity: 0.55;
	pointer-events: none;
	cursor: default;
}

@media (max-width: 1100px) {
	.modalDadosOrcamento .contentTabGantt .ganttFiltros {
		align-items: stretch;
	}

	.modalDadosOrcamento .contentTabGantt .btnLimparFiltrosGantt {
		margin-left: 0;
		margin-top: 8px;
	}

	.modalDadosOrcamento .contentTabGantt .cardsResumoGantt {
		display: grid;
		grid-template-columns: 1fr;
	}

	.modalDadosOrcamento .contentTabGantt .ganttPaginacao {
		align-items: stretch;
		flex-wrap: wrap;
	}

	.modalDadosOrcamento .contentTabGantt .ganttPaginacao .itensPorPaginaGantt {
		align-items: center;
	}

	.modalDadosOrcamento .contentTabGantt .ganttPaginacao .infoPaginacaoGantt {
		order: 3;
		width: 100%;
		justify-content: flex-start;
		padding-left: 0;
	}

	.modalDadosOrcamento .contentTabGantt .ganttPaginacao .acoesPaginacaoGantt {
		margin-left: 0;
	}

	.modalDadosOrcamento .contentTabGantt .ganttPaginacao .btnPaginarGantt {
		min-width: auto;
		padding: 0 12px;
	}

	.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .ganttFiltros {
		padding: 0 8px;
	}

	.modalDadosOrcamento .contentTabGantt .ganttFiltroCard .ganttFiltros:last-child {
		padding-bottom: 8px;
	}
}

.modalDirecionarFilaEmMassa .descricao{
	padding: 0px;
	font-weight: 600;
	color: #666;
	text-align: center;
	font-size: 0.9rem;
	/*margin-top: 15px;*/
}

.modalDirecionarFilaEmMassa .descricao span{
	color: var(--primary-color);
}

.modalFiltroCompletoOrcamento .inputTipoChamado{
	margin-right: 10px;
	width: 260px;
	display: none;
}

.modalFiltroCompletoOrcamento .inputNatureza {
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputStatus {
	margin-top: 10px;
	margin-left: 10px;
}

.modalFiltroCompletoOrcamento .inputPrioridade {
	margin-left: 10px;
	margin-top: 10px;
	width: 300px;
}

.modalFiltroCompletoOrcamento .inputAbertura {

	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputFinalizacao {
	margin-left: 10px;
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputPrevisaoConclusao {
	margin-left: 10px;
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputEmpresas {
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputProdutos {
	margin-left: 10px;
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputTipoProjeto {
/*	margin-left: 10px;*/
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputTipoVisualizacaoChamado {
	margin-left: 10px;
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputProjetos {
	margin-left: 10px;
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputOperador {
	margin-top: 10px;
	margin-right: 10px;
}

.modalFiltroCompletoOrcamento .inputSolicitante {
	margin-top: 10px;
	margin-left: 10px;
}

.modalFiltroCompletoOrcamento .inputUsuario {
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputTermo {
	margin-left: 10px;
}

.modalFiltroCompletoOrcamento .inputPercentualUsadoDasHoras {
	margin-top: 10px;
}

.modalFiltroCompletoOrcamento .inputProjeto {
	margin-top: 10px;
	margin-left: 10px;
}


.modalFiltroCompletoOrcamento .inputSlaAberto {
	margin-top: 10px;
	margin-left: 10px;
}

.modalFiltroCompletoOrcamento .btnModalCancel.btnClearFiltro {
	background: var(--red);
	margin-left: 10px;
	color: #fff;
}

/* ── Botão Visão Operador (Tabela) ── */
.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela {
	background: transparent;
	border: 1.5px solid var(--blue-default);
	padding: 0;
	width: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela > .row {
	margin: 0;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela .icon,
.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela .text {
	color: var(--blue-default);
	padding: 0;
	margin: 0;
}

.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela .text {
	display: none;
}

.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela.active {
	background: var(--blue-default);
	border-color: var(--blue-default);
}

.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela.active .icon,
.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela.active .text {
	color: #fff;
}

.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela::after {
	content: attr(data-tooltip);
	position: absolute;
	left: 50%;
	top: calc(100% + 8px);
	transform: translateX(-50%) translateY(-4px);
	background: #1f2a44;
	color: #fff;
	padding: 5px 8px;
	border-radius: 4px;
	font-size: 0.72rem;
	line-height: 1;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.15s, transform 0.15s;
	z-index: 12;
}

.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela:hover::after,
.paginaListaOrcamentos .btnCreateDefault.btnToggleVisaoOperadorTabela:focus-visible::after {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

/* ── Botão Visão Operador (Modal) ── */
.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
	width: 36px;
	height: 36px;
	border-radius: 4px;
	border: 1.5px solid var(--blue-default);
	background: transparent;
	color: var(--blue-default);
	font-size: 0.82rem;
	font-weight: 600;
	transition: background 0.15s, color 0.15s;
	user-select: none;
	white-space: nowrap;
	position: relative;
}

.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador > .row {
	align-items: center;
}

.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador > .row {
	margin: 0;
	justify-content: center;
	align-items: center;
}

.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador .icone {
	font-size: 0.9rem;
	padding: 0;
	margin: 0;
}

.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador .texto {
	display: none;
}

.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador::after {
	content: attr(data-tooltip);
	position: absolute;
	left: 50%;
	top: calc(100% + 8px);
	transform: translateX(-50%) translateY(-4px);
	background: #1f2a44;
	color: #fff;
	padding: 5px 8px;
	border-radius: 4px;
	font-size: 0.72rem;
	line-height: 1;
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.15s, transform 0.15s;
	z-index: 12;
}

.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador:hover::after,
.modalDadosOrcamento .pgModalDefaultHeaderTitle .btnToggleVisaoOperador:focus-visible::after {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

.modalDadosOrcamento.modoOperador .pgModalDefaultHeaderTitle .btnToggleVisaoOperador {
	background: var(--blue-default);
	color: #fff;
}

/* ── Visão Operador: ocultar campos sensíveis ── */
.modalDadosOrcamento.modoOperador .dataColumn .boxItem.boxCusto {
	display: none !important;
}

.modalDadosOrcamento.modoOperador .tabelaListarItensOrcamento .col.valor.hora:nth-child(1),
.modalDadosOrcamento.modoOperador .tabelaListarItensOrcamento .col.valor.hora:nth-child(4) {
	display: none !important;
}

.modalSolicitarLevantamento .descricao{
	padding: 0px;
	text-align: center;
	font-weight: 500;
	color: #666;
	font-size: 0.9rem;
	margin-top: 15px;
}

.modalSolicitarLevantamento .descricao span{
	color: var(--primary-color);
	font-weight: 600;
}

/* Visão Operador: ocultar colunas Neg./Fat. na listagem */
.paginaListaOrcamentos.modoOperadorTabela .horasRealizadas .row .vh:first-child {
	display: none !important;
}

.paginaListaOrcamentos.modoOperadorTabela .horasRealizadas .row .vh:last-child {
	display: none !important;
}

/* ============================================================
   Modal Editor de Itens da Solicitação (edição em lote)
   ============================================================ */

.modalEditorItensSolicitacao .pgModalContentArea {
	border: 1px solid #ddd;
}

.modalEditorItensSolicitacao .pgModalPutCodeHtml {
	margin: 0px !important;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	max-height: calc(100vh - 155px);
}

.modalEditorItensSolicitacao .pgModalPutCodeHtml > .row {
	margin-left: 0;
	margin-right: 0;
}

/* Totalizadores — mesmo padrão do modalAlterarItensOrcamento */
.modalEditorItensSolicitacao .totalizadoresEditorItens {
	background: #eee;
	border: 1px solid #ddd;
	border-left: 0px;
	border-right: 0px;
	padding-top: 7.5px;
	padding-bottom: 7.5px;
}

.modalEditorItensSolicitacao .totalizadoresEditorItens .item {
	font-size: 0.875rem;
}

.modalEditorItensSolicitacao .totalizadoresEditorItens .item > .row:first-of-type {
	align-items: center;
	height: 100%;
}

.modalEditorItensSolicitacao .totalizadoresEditorItens .item .label {
	padding: 0px;
	font-weight: 600;
	color: var(--primary-color);
	text-transform: uppercase;
	font-size: 0.75rem;
}

.modalEditorItensSolicitacao .totalizadoresEditorItens .item .valor {
	padding: 0px;
	font-weight: 700;
	color: #666;
	margin-left: 10px;
}

/* Cabeçalho da grade */
.modalEditorItensSolicitacao .headerLinhasEditorItens {
	background: #f5f5f5;
	border-bottom: 2px solid #ddd;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
	padding-top: 7px;
	padding-bottom: 7px;
	padding-left: 10px;
	padding-right: 10px;
	font-size: 0.75rem;
	font-weight: 700;
	color: #888;
	text-transform: uppercase;
    display: grid;
    grid-template-columns: 90px minmax(100px, 0.5fr) 145px minmax(70px, 0.4fr) minmax(70px, 0.5fr) 155px 100px 100px 36px;
    column-gap: 10px;
	align-items: center;
	margin-bottom: 0;
	position: sticky;
	top: 0;
	z-index: 30;
}

/* Área de linhas */
.modalEditorItensSolicitacao .areaLinhasEditorItensSolicitacao {
	overflow-y: auto;
	overflow-x: hidden;
	padding: 0 18px;
	display: block;
	width: 100%;
	flex: 1 1 auto;
	min-height: 180px;
	max-height: calc(100vh - 390px);
}

/* Linhas individuais */
.modalEditorItensSolicitacao .linhaEditorItens {
	border-bottom: 1px solid #eee;
	padding-top: 7.5px;
	padding-bottom: 7.5px;
	padding-left: 10px;
	padding-right: 10px;
    display: grid;
    grid-template-columns: 90px minmax(100px, 0.5fr) 145px minmax(80px, 0.4fr) minmax(80px, 0.5fr) 155px 100px 100px 36px;
    column-gap: 10px;
	align-items: center;
	margin-bottom: 0;
	margin-left: 0;
	margin-right: 0;
	position: relative;
	z-index: 1;
	box-sizing: border-box;
}

.modalEditorItensSolicitacao .headerLinhasEditorItens > [class*="col"],
.modalEditorItensSolicitacao .linhaEditorItens > [class*="col"] {
	padding-left: 30px;
	padding-right: 0;
	box-sizing: border-box;
	min-width: 0;
}

.modalEditorItensSolicitacao .linhaEditorItens:hover,
.modalEditorItensSolicitacao .linhaEditorItens:focus-within {
	background: #fafafa;
	z-index: 20;
}

.modalEditorItensSolicitacao .linhaEditorItens:last-child {
	border-bottom: none;
}

/* Colunas de largura fixa */
.modalEditorItensSolicitacao .colunaItem {
	font-weight: 600;
	color: var(--primary-color);
	font-size: 0.875rem;
	white-space: nowrap;
}

.modalEditorItensSolicitacao .colunaData {
	white-space: nowrap;
}

/* Garante que o ícone do calendário não sobreponha o texto */
.modalEditorItensSolicitacao .colunaData .pgInputArea .inputContent > .row:first-of-type > .col {
	padding-left: 4px;
	padding-right: 2px;
	min-width: 0;
	flex: 1 1 0;
}
.modalEditorItensSolicitacao .colunaData .pgInputArea .inputContent > .row:first-of-type > .col-auto {
	padding-left: 0;
	padding-right: 0;
	flex-shrink: 0;
}

.modalEditorItensSolicitacao .colunaTitulo {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 0.8rem;
	color: #444;
}

.modalEditorItensSolicitacao .colunaStatus {
	min-width: 0;
	overflow: hidden;
}

.modalEditorItensSolicitacao .badgeStatusItem {
	display: inline-block;
	max-width: 100%;
	padding: 2px 8px;
	border-radius: 20px;
	font-size: 0.7rem;
	font-weight: 600;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	letter-spacing: 0.02em;
	background: #555;
	color: #fff;
}
.modalEditorItensSolicitacao .badgeStatusItem--aguardandodirecionamento      { background: #e67e22; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--aguardandoorcamento            { background: #f39c12; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--aguardandoaprovacao            { background: #f39c12; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--levantamentorequisitos         { background: #8e44ad; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--orcamentoaprovado              { background: #27ae60; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--orcamentoemexecucao            { background: #2980b9; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--ematendimento                  { background: #2980b9; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--finalizado                     { background: #2c3e50; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--cancelado                      { background: #c0392b; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--aguardandoretorno              { background: #34495e; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--aguardandoretornodosolicitante { background: #34495e; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--aguardandoretornodeterceiros   { background: #7f8c8d; color: #fff; }
.modalEditorItensSolicitacao .badgeStatusItem--novo                           { background: #fff; color: #3498db; border: 1.5px dashed #3498db; font-style: italic; }

.modalEditorItensSolicitacao .colunaProduto {
	min-width: 0;
}

.modalEditorItensSolicitacao .colunaResponsavel {
	min-width: 0;
}

.modalEditorItensSolicitacao .colunaHorasNeg,
.modalEditorItensSolicitacao .colunaHorasPrev {
	white-space: nowrap;
	text-align: center;
	padding-right: 2px;
}

/* Badge de status (mesma estrutura usada nas outras telas) */
.modalEditorItensSolicitacao .statusBadge {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 10px;
	font-size: 0.75rem;
	font-weight: 600;
	background: #eee;
	color: #666;
	white-space: nowrap;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	vertical-align: middle;
	box-sizing: border-box;
}


/* Campos editáveis — pginput no padrão do pg.js */
.modalEditorItensSolicitacao .colunaProduto .pgInputArea,
.modalEditorItensSolicitacao .colunaResponsavel .pgInputArea {
	margin: 0;
}

.modalEditorItensSolicitacao .colunaProduto .pgInputArea.inputDropdown,
.modalEditorItensSolicitacao .colunaResponsavel .pgInputArea.inputDropdown {
	position: relative;
	z-index: 25;
}

.modalEditorItensSolicitacao .colunaData .pgInputArea,
.modalEditorItensSolicitacao .colunaHorasNeg .pgInputArea,
.modalEditorItensSolicitacao .colunaHorasPrev .pgInputArea {
	margin: 0;
}

.modalEditorItensSolicitacao .linhaEditorItens .pgInputArea {
	width: 100%;
}

.modalEditorItensSolicitacao .linhaEditorItens .pgInputArea .inputContent {
	width: 100%;
}

.modalEditorItensSolicitacao .linhaEditorItens .pgInputArea .inputContent > .row:first-of-type {
	margin-left: 0;
	margin-right: 0;
}

.modalEditorItensSolicitacao .linhaEditorItens .pgInputArea .inputContent > .row:first-of-type > .col,
.modalEditorItensSolicitacao .linhaEditorItens .pgInputArea .inputContent > .row:first-of-type > .col-auto {
	padding-left: 0;
	padding-right: 0;
}

.modalEditorItensSolicitacao .colunaHorasNeg .pgInputArea input,
.modalEditorItensSolicitacao .colunaHorasPrev .pgInputArea input {
	text-align: center;
	min-width: 0;
	width: 100%;
}

.modalEditorItensSolicitacao .colunaData .pgInputArea input {
	min-width: 0;
	width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Botão cancelar linha */
.modalEditorItensSolicitacao .colunaCancelar {
	display: flex;
	align-items: center;
	justify-content: center;
}

.modalEditorItensSolicitacao .btnCancelarLinhaEditor {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: none;
	border-radius: 6px;
	background: transparent;
	color: #bbb;
	font-size: 0.8rem;
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
	padding: 0;
}

.modalEditorItensSolicitacao .btnCancelarLinhaEditor:hover {
	background: transparent;
	color: #e74c3c;
}

/* Linha marcada para cancelar */
.modalEditorItensSolicitacao .linhaEditorItens.linhaMarcadaParaCancelar,
.modalEditorItensSolicitacao .linhaEditorItens.linhaCanceladaEditor {
	background: #fff8f8;
	opacity: 0.65;
}

.modalEditorItensSolicitacao .linhaEditorItens.linhaMarcadaParaCancelar .colunaTitulo,
.modalEditorItensSolicitacao .linhaEditorItens.linhaMarcadaParaCancelar .colunaItem,
.modalEditorItensSolicitacao .linhaEditorItens.linhaCanceladaEditor .colunaTitulo,
.modalEditorItensSolicitacao .linhaEditorItens.linhaCanceladaEditor .colunaItem {
	text-decoration: line-through;
	color: #aaa;
}

.modalEditorItensSolicitacao .linhaEditorItens.linhaMarcadaParaCancelar .btnCancelarLinhaEditor {
	background: transparent;
	color: #e74c3c;
}

.modalEditorItensSolicitacao .linhaEditorItens.linhaMarcadaParaCancelar .btnCancelarLinhaEditor:hover {
	background: transparent;
	color: #c0392b;
}

.modalEditorItensSolicitacao .linhaEditorItens.linhaCanceladaEditor .btnCancelarLinhaEditor,
.modalEditorItensSolicitacao .linhaEditorItens.linhaCanceladaEditor .btnCancelarLinhaEditor:hover {
	background: transparent;
	color: #aaa;
	cursor: not-allowed;
}

/* Separador de footer */
.modalEditorItensSolicitacao .diviserItens {
	border-bottom: 1px solid #ddd;
	margin-top: 12px;
	margin-bottom: 0;
	margin-left: 18px;
	margin-right: 18px;
}

.modalEditorItensSolicitacao .pgModalPutCodeHtml > .row:last-of-type {
	flex: 0 0 auto;
	align-items: stretch;
	margin: 0;
	padding: 10px 18px 14px 18px;
	background: #fff;
}

.modalEditorItensSolicitacao .pgModalPutCodeHtml > .row:last-of-type .btnModalItem {
	margin-top: 10px;
	height: 40px;
	line-height: 40px;
}

/* Alerta de diferença de horas */
.modalEditorItensSolicitacao .alertaDiferencaEditorItens {
	font-size: 0.82rem;
	padding-right: 15px;
}

/* Botão adicionar item — fora do scroll, mesma largura da tabela */
.modalEditorItensSolicitacao .btnAdicionarItemEditor {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	cursor: pointer;
	color: #3498db;
	font-size: 0.82rem;
	font-weight: 500;
	padding: 10px;
	border: 2px dashed #c8dff0;
	border-radius: 5px;
	margin: 6px 18px 0 18px;
	user-select: none;
	transition: background 0.15s, border-color 0.15s;
}

.modalEditorItensSolicitacao .btnAdicionarItemEditor:hover {
	background: #eaf4fd;
	border-color: #3498db;
	color: #1d6fa4;
}

/* Nova linha de item (ainda não salvo) */
.modalEditorItensSolicitacao .novaLinhaEditor {
	background: #f5fbff;
	border-left: 3px solid #3498db;
	row-gap: 4px;
	padding-top: 10px;
	padding-bottom: 10px;
}

.modalEditorItensSolicitacao .novaLinhaEditor .colunaDeleteNovo {
	display: flex;
	align-items: center;
	justify-content: center;
}

.modalEditorItensSolicitacao .novaLinhaEditor .btnRemoverNovaLinha {
	background: none;
	border: none;
	color: #c0392b;
	font-size: 13px;
	cursor: pointer;
	padding: 2px 5px;
	border-radius: 3px;
	line-height: 1;
}

.modalEditorItensSolicitacao .novaLinhaEditor .btnRemoverNovaLinha:hover {
	background: #fde8e8;
}

.modalEditorItensSolicitacao .novaLinhaEditor .colunaTitulo {
	overflow: visible;
	white-space: normal;
	color: inherit;
	font-size: inherit;
}

/* ── Modal Confirmar Alteração de Horas ── */
.modalConfirmarAlteracaoHoras .iconeConfirmarHoras {
	text-align: center;
	color: #e67e22;
	font-size: 48px;
	padding-top: 8px;
}

.modalConfirmarAlteracaoHoras .tituloConfirmarHoras {
	text-align: center;
	font-size: 1rem;
	font-weight: 600;
	color: #24324a;
	padding-top: 8px;
}

.modalConfirmarAlteracaoHoras .descricaoConfirmarHoras {
	padding: 0;
	font-weight: 500;
	color: #666;
	text-align: center;
	font-size: 0.88rem;
	margin-bottom: 4px;
}

.modalConfirmarAlteracaoHoras .tabelaConfirmarHoras {
	margin: 16px 0 6px 0;
	border: 1px solid #e8e8e8;
	border-radius: 6px;
	overflow: hidden;
}

.modalConfirmarAlteracaoHoras .cabecalhoConfirmarHoras,
.modalConfirmarAlteracaoHoras .linhaConfirmarHoras {
	display: grid;
	grid-template-columns: 110px 1fr 28px 1fr;
	align-items: center;
}

.modalConfirmarAlteracaoHoras .cabecalhoConfirmarHoras {
	background: #f5f5f5;
	border-bottom: 1px solid #e8e8e8;
	padding: 6px 14px;
}

.modalConfirmarAlteracaoHoras .linhaConfirmarHoras {
	padding: 10px 14px;
	border-bottom: 1px solid #f0f0f0;
}

.modalConfirmarAlteracaoHoras .linhaConfirmarHoras:last-child {
	border-bottom: none;
}

/* ── Modal Motivo do Cancelamento ── */
.modalMotivoCancelamentoEditor .description {
	padding: 0;
	font-weight: 500;
	color: #666;
	font-size: 0.95rem;
	text-align: center;
}

.modalMotivoCancelamentoEditor .inputMotivoCancelamentoModal {
	margin-top: 15px;
}

.modalConfirmarAlteracaoHoras .cabecalhoConfirmarHoras .celulaValor {
	font-size: 0.78rem;
	font-weight: 600;
	color: #aaa;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-align: center;
}

.modalConfirmarAlteracaoHoras .celulaRotulo {
	font-weight: 600;
	font-size: 0.88rem;
	color: #555;
}

.modalConfirmarAlteracaoHoras .celulaAnterior {
	text-align: center;
	font-size: 0.95rem;
	color: #888;
}

.modalConfirmarAlteracaoHoras .celulaSeta {
	text-align: center;
	color: #ccc;
	font-size: 0.9rem;
}

.modalConfirmarAlteracaoHoras .celulaNovoValor {
	text-align: center;
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--primary-color);
}

/* ── Tabela de horas no histórico ── */
.tabelaHorasHistorico {
	margin: 6px 0 2px;
	border: 1px solid #e8e8e8;
	border-radius: 6px;
	overflow: hidden;
	max-width: 340px;
}

.tabelaHorasHistorico .linhaHorasHistorico {
	display: grid;
	grid-template-columns: 90px 1fr 24px 1fr;
	align-items: center;
	padding: 7px 12px;
	border-bottom: 1px solid #f0f0f0;
}

.tabelaHorasHistorico .linhaHorasHistorico:last-child {
	border-bottom: none;
}

.tabelaHorasHistorico .cabecalhoHorasHistorico {
	background: #f5f5f5;
	border-bottom: 1px solid #e8e8e8;
	padding: 4px 12px;
}

.tabelaHorasHistorico .cabecalhoHorasHistorico .celulaValorH {
	font-size: 0.73rem;
	font-weight: 600;
	color: #aaa;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-align: center;
}

.tabelaHorasHistorico .celulaRotuloH {
	font-weight: 600;
	font-size: 0.83rem;
	color: #555;
}

.tabelaHorasHistorico .celulaAnteriorH {
	text-align: center;
	font-size: 0.88rem;
	color: #888;
}

.tabelaHorasHistorico .celulaSetaH {
	text-align: center;
	color: #ccc;
	font-size: 0.8rem;
}

.tabelaHorasHistorico .celulaNovoValorH {
	text-align: center;
	font-size: 0.88rem;
	font-weight: 700;
	color: var(--primary-color);
}

/* ── Modal Confirmar Itens Não Salvos ── */
.modalConfirmarItensNaoSalvos .iconeConfirmarItens {
	text-align: center;
	color: #e67e22;
	font-size: 44px;
	padding-top: 8px;
}

.modalConfirmarItensNaoSalvos .descricaoConfirmarItens {
	padding: 0;
	font-weight: 500;
	color: #666;
	text-align: center;
	font-size: 0.88rem;
	margin-top: 6px;
	margin-bottom: 4px;
	line-height: 1.55;
}

.modalConfirmarItensNaoSalvos .descricaoConfirmarItens strong {
	color: #24324a;
	font-weight: 600;
}

.modalConfirmarItensNaoSalvos .diviserItens {
	border-bottom: 1px solid #ddd;
	margin-top: 17.5px;
	margin-bottom: 2.5px;
}

.modalConfirmarItensNaoSalvos .btnModalCancel:first-of-type {
	margin-left: 20px;
	margin-right: 5px;
}

.modalConfirmarItensNaoSalvos .btnDescartarItens {
	margin-right: 20px;
	margin-left: 5px;
}

.modalConfirmarItensNaoSalvos .btnModalConfirm {
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 5px;
}
/* ============================================================
   Redesign Tabela Atividades — painel recolhível + tabela densa
   ============================================================ */

/* === Painel esquerdo recolhível === */
.modalDadosOrcamento .dataColumn {
	transition: width 220ms ease, min-width 220ms ease;
}

.modalDadosOrcamento .dataColumn.panelCollapsed {
	width: 0 !important;
	min-width: 0 !important;
	overflow: hidden;
	padding: 0 !important;
	margin: 0 !important;
}

.modalDadosOrcamento .btnTogglePanel {
	flex-shrink: 0;
	align-self: flex-start;
	margin-top: 15px;
	width: 14px;
	height: 36px;
	background: #fff;
	border: 1px solid #ddd;
	border-left: none;
	border-radius: 0 4px 4px 0;
	padding: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #bbb;
	font-size: 0.65rem;
	transition: color 150ms ease, background 150ms ease;
	box-shadow: 2px 1px 3px rgba(0,0,0,0.07);
}

.modalDadosOrcamento .btnTogglePanel:hover {
	background: #f0f5ff;
	color: var(--primary-color);
}

/* === Tabela: header sticky dentro do scroll === */
.modalDadosOrcamento .contentTabEscopo .tabelaListarItensOrcamento {
	max-height: 43vh;
	overflow-y: auto;
	/* scrollbar-gutter garante que o espaço da scrollbar é sempre reservado,
	   evitando desalinhamento entre o header sticky e as linhas de dados */
	scrollbar-gutter: stable;
}

.modalDadosOrcamento .contentTabEscopo .tabelaListarItensOrcamento .pgTableHeader {
	position: sticky;
	top: 0;
	z-index: 5;
	background: #f8f9fa;
	/* neutraliza o border: 1px solid #ddd herdado de default.css que reduz o
	   content-box em 2px e causa desalinhamento com as linhas de dados */
	border-left: none !important;
	border-right: none !important;
	border-bottom: 2px solid #e0e3e7 !important;
}

/* === Totalizadores: destaque visual === */
.modalDadosOrcamento .contentTabEscopo .totalizadores {
	background: #f8f9fa;
	border: 1px solid #e9ecef;
	border-radius: 4px;
	padding: 6px 0;
	margin-top: 6px;
}

/* === Densidade de linha compacta === */
.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableItensLine > .row > .col,
.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableItensLine > .row > .col-auto {
	padding-top: 5px;
	padding-bottom: 5px;
}

/* === Badge de status === */
.modalDadosOrcamento .tabelaListarItensOrcamento .statusBadge {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 20px;
	font-size: 0.7rem;
	font-weight: 600;
	white-space: nowrap;
	background: #ececec;
	color: #666;
	cursor: default;
	max-width: 128px;
	overflow: hidden;
	text-overflow: ellipsis;
	vertical-align: middle;
}

.modalDadosOrcamento .tabelaListarItensOrcamento [class*="statusaguardando"].statusBadge {
	background: #fff5e0;
	color: #9a6300;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .statusfinalizado.statusBadge {
	background: #e6f7ee;
	color: #1a7a40;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .statuscancelado.statusBadge {
	background: #f3f3f3;
	color: #999;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .statusemandamento.statusBadge {
	background: #e8f0fe;
	color: #1a56b0;
}
.loadingEditorItens{
	margin-top: 10px;
}

/* ============================================================
   Redesign Tabela Atividades — painel recolhível + tabela densa
   ============================================================ */

/* === Painel esquerdo recolhível === */
.modalDadosOrcamento .dataColumn {
	transition: width 220ms ease, min-width 220ms ease;
}

.modalDadosOrcamento .dataColumn.panelCollapsed {
	width: 0 !important;
	min-width: 0 !important;
	overflow: hidden;
	padding: 0 !important;
	margin: 0 !important;
}

.modalDadosOrcamento .btnTogglePanel {
	flex-shrink: 0;
	align-self: flex-start;
	margin-top: 15px;
	width: 14px;
	height: 36px;
	background: #fff;
	border: 1px solid #ddd;
	border-left: none;
	border-radius: 0 4px 4px 0;
	padding: 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #bbb;
	font-size: 0.65rem;
	transition: color 150ms ease, background 150ms ease;
	box-shadow: 2px 1px 3px rgba(0,0,0,0.07);
}

.modalDadosOrcamento .btnTogglePanel:hover {
	background: #f0f5ff;
	color: var(--primary-color);
}

/* === Tabela: header sticky dentro do scroll === */
.modalDadosOrcamento .contentTabEscopo .tabelaListarItensOrcamento {
	max-height: 43vh;
	overflow-y: auto;
	/* scrollbar-gutter garante que o espaço da scrollbar é sempre reservado,
	   evitando desalinhamento entre o header sticky e as linhas de dados */
	scrollbar-gutter: stable;
}

.modalDadosOrcamento .contentTabEscopo .tabelaListarItensOrcamento .pgTableHeader {
	position: sticky;
	top: 0;
	z-index: 5;
	background: #f8f9fa;
	/* neutraliza o border: 1px solid #ddd herdado de default.css que reduz o
	   content-box em 2px e causa desalinhamento com as linhas de dados */
	border-left: none !important;
	border-right: none !important;
	border-bottom: 2px solid #e0e3e7 !important;
}

/* === Totalizadores: destaque visual === */
.modalDadosOrcamento .contentTabEscopo .totalizadores {
	background: #f8f9fa;
	border: 1px solid #e9ecef;
	border-radius: 4px;
	padding: 6px 0;
	margin-top: 6px;
}

/* === Densidade de linha compacta === */
.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableItensLine > .row > .col,
.modalDadosOrcamento .tabelaListarItensOrcamento .pgTableItensLine > .row > .col-auto {
	padding-top: 5px;
	padding-bottom: 5px;
}

/* === Badge de status === */
.modalDadosOrcamento .tabelaListarItensOrcamento .statusBadge {
	display: inline-block;
	padding: 2px 8px;
	border-radius: 20px;
	font-size: 0.7rem;
	font-weight: 600;
	white-space: nowrap;
	background: #ececec;
	color: #666;
	cursor: default;
	max-width: 128px;
	overflow: hidden;
	text-overflow: ellipsis;
	vertical-align: middle;
}

.modalDadosOrcamento .tabelaListarItensOrcamento [class*="statusaguardando"].statusBadge {
	background: #fff5e0;
	color: #9a6300;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .statusfinalizado.statusBadge {
	background: #e6f7ee;
	color: #1a7a40;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .statuscancelado.statusBadge {
	background: #f3f3f3;
	color: #999;
}

.modalDadosOrcamento .tabelaListarItensOrcamento .statusemandamento.statusBadge {
	background: #e8f0fe;
	color: #1a56b0;
}
