:root {
	--corPrincipal: #152DA9;
	--corAuxiliar: #0052CC;
	/* Auxiliar para degradê */
	--corSecundaria: #6C84E4;
	/* Labels, forms, outros icones */
	--corTerciaria: #051060;
	/* Titulos */
	--corQuaternaria: #D8E0FD;
	/* Linhas */
	/*--corIcones: invert(12%) sepia(80%) saturate(4375%) hue-rotate(234deg) brightness(89%) contrast(100%);*/
	--corIcones: invert(13%) sepia(82%) saturate(5128%) hue-rotate(236deg) brightness(73%) contrast(97%);
	
	--corInput: #EFF0F7;
	--corInputReadOnly: #EFF0F6;
}

@import url('https://fonts.googleapis.com/css?family=Open+Sans');

/* REMOVENDO ESTILOS PADRÃO */

.ui-tabs.ui-tabs-top .ui-tabs-nav.ui-widget-header {
  border-bottom: none;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
	border: none;
}

.ui-state-default, 
.ui-widget-content .ui-state-default{
	background: none;	
	box-shadow: none;
}

.ui-fileupload-buttonbar.ui-widget-header {
	background: none !important;	
	border: none !important;
}

.ui-fileupload-quasar{
	align-items: inherit !important;
	display: inline-flex;
	background: none !important;	
}

/* --------------- GERAl -------------------------- */

body {
	font-family: 'Open Sans',"Helvetica Neue",sans-serif !important;
	font-size: 13px;
	background-color: #EFF0F6;
}

a {
	outline: none !important;
}

.fa {
	color: var(--corPrincipal);
}
.pi {
	color: var(--corPrincipal);
}

input[type='text'],
input[type='password'],
textarea {
	/* Input */

	width: auto;
	height: 44px;
	
	/* Grayscale/Input */
	background: var(--corInput);
	border-radius: 8px;
	border: none !important;
	
	padding: 20px;
	
	/* Inside auto layout */
	flex: none;
	order: 1;
	align-self: stretch;
	flex-grow: 0;
}

textarea {
	height: auto !important;
}

.textarea-readonly {
    background-color: #f5f5f5 !important;
    color: #555;
    border: 1px solid #dcdcdc;
    cursor: not-allowed;
}

input[type='text']:read-only, textarea:read-only, textarea:-moz-read-only {
	background: var(--corInput) !important;
	border: none !important;
	cursor: default !important;
	pointer-events: none;
}

input[type='text']:read-only, textarea:read-only, textarea:-moz-read-only, .ui-state-disabled {
	opacity: 0.5 !important;
}

/* Wrapper que isola o textarea do scroll do modal */
.qWrapperTextarea {
    max-height: 250px;       /* pode ajustar */
    overflow-y: auto;
    position: relative;
}

/* Textarea sempre scrollável, inclusive readonly */
.qTextareaScroll {
    overflow-y: auto !important;
    display: block !important;
    white-space: pre-wrap !important;
    width:100%; 
    min-width: 200px; 
    min-height: 140px;
}

/* Corrige comportamento do PF + readonly */
.qTextareaScroll[readonly],
.qTextareaScroll[disabled] {
    overflow-y: auto !important;
    background-color: #f8f9fa;
    pointer-events: auto !important; /* evita que o navegador “congele” o scroll */
}




/* --------------- PRIMEFACES     ----------------- */


.ui-widget-content {
	background: none;
	border: none;
}


/* Menu NAvbar */

.ui-menu.ui-widget li > .ui-menuitem-link.ui-state-hover {
	color: white !important;
	background-color: var(--corPrincipal);	
	background-image: none;
}

.ui-menu.ui-widget li > .ui-menuitem-link.ui-state-hover .fa {
	color: white !important;
}
.ui-menu.ui-widget li > .ui-menuitem-link.ui-state-hover .pi {
	color: white !important;
}

body .form-check-input:checked {
	background-color: var(--corPrincipal) !important;
	border-color: var(--corPrincipal) !important;
}

body .ui-radiobutton-box {
	border: 0px !important;
	background-image: none !important;
	background-color: #D9DBE9 !important;
	box-shadow: none;
}

body .ui-radiobutton-box.ui-state-active {
	background-image: none !important;
	background-color: var(--corPrincipal) !important;
	box-shadow: none;
}

body .ui-selectonemenu {
	background: var(--corInput) !important;
	border: 0px !important;
	height: 48px !important;
	line-height: 40px !important;
	border-radius: 8px !important;
}

body .ui-selectmanymenu {
	height: auto !important;
	padding-left: 0px !important;
}

body .ui-selectonemenu-label {
	padding-left: 24px !important;
	background: none !important;
	box-shadow: none !important;
}

.ui-selectonemenu-panel .ui-selectonemenu-table th, .ui-selectonemenu-panel .ui-selectonemenu-table td {
	border: none;
}

.ui-chkbox-box {
	background: #D9DBE9;
}

.ui-state-active .ui-chkbox-icon {
	background: var(--corPrincipal) !important;
}

body .ui-treetable td {
	font-size: 12px !important;
}

body .ui-treetable, 
body .ui-datatable {
	background-color: white;
}

body .ui-treetable th, 
body .ui-treetable tbody td,
body .ui-datatable th, 
body .ui-datatable tbody td {
	border: none;
	/*border: 1px solid rgba(255, 255, 255, 0.5);*/
	padding-top: 20px;
	padding-bottom: 20px;
}

body .ui-treetable tr {
	border: 1px solid #aaaaaa;
}

.ui-treetable-indent {
  width: 7px !important;
}

body .ui-datatable tr {
	border: 1px solid #D8E0FD;
}

.ui-datepicker {
	background: white;
}

.ui-datepicker-trigger{
	background: var(--corInput) !important;
	border: 0px solid var(--corPrincipal) !important;
	height: 48px !important;
	margin-left: -46px;
}

.ui-datepicker-trigger:hover{
	background: var(--corSecundaria) !important;
	color: white !important;
}

.ui-datepicker .ui_tpicker_time {
  color: #000 !important;
  font-weight: bold;
}

/* Ajuste de cor para o "handle" do slider */
.ui-slider-handle {
  background-color: #1976d2 !important;  /* azul visível */
  border: 1px solid #1565c0 !important;  /* borda mais escura para contraste */
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
}


.ui-icon-calendar{
	color: white !important;
}

.ui-icon-minusthick{
	color: white !important;
}

body .ui-button,
body .ui-widget .ui-button {
	/* Button */

	justify-content: center;
	align-items: center;
	padding: 9px 22px;
	gap: 12px;

	height: 40px;

	color: #ffffff;
	background: linear-gradient(95.08deg, var(--corAuxiliar) 2.49%, var(--corPrincipal) 97.19%);

	/* Gradients/46 */
	border-radius: 8px;
	border: none;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	text-shadow: none;

	/* Inside auto layout */
	flex: none;
	order: 4;
	align-self: stretch;
	flex-grow: 0;
	font-weight: 600;
}

body .ui-button.ui-button-success,body .ui-splitbutton.ui-button-success>.ui-button,body .ui-menubutton.ui-button-success>.ui-button {
    background: #689f38;
    color: #fff;
    border: 1px solid #689f38
}

body .ui-button.ui-button-success.ui-state-hover,body .ui-splitbutton.ui-button-success>.ui-button.ui-state-hover,body .ui-menubutton.ui-button-success>.ui-button.ui-state-hover {
    background: #5e8f32;
    color: #fff;
    border-color: #5e8f32
}

body .ui-button.ui-button-success.ui-state-focus,body .ui-splitbutton.ui-button-success>.ui-button.ui-state-focus,body .ui-menubutton.ui-button-success>.ui-button.ui-state-focus {
    box-shadow: 0 0 0 .2rem #c2e0a8
}

body .ui-button.ui-button-success.ui-state-active,body .ui-splitbutton.ui-button-success>.ui-button.ui-state-active,body .ui-menubutton.ui-button-success>.ui-button.ui-state-active {
    background: #537f2d;
    color: #fff
}

body .ui-button.ui-button-success.ui-button-outlined,body .ui-splitbutton.ui-button-success>.ui-button.ui-button-outlined,body .ui-menubutton.ui-button-success>.ui-button.ui-button-outlined {
    background-color: rgba(0,0,0,0);
    color: #689f38;
    border: 1px solid
}

body .ui-button.ui-button-success.ui-button-outlined.ui-state-hover,body .ui-splitbutton.ui-button-success>.ui-button.ui-button-outlined.ui-state-hover,body .ui-menubutton.ui-button-success>.ui-button.ui-button-outlined.ui-state-hover {
    background: rgba(104,159,56,.04);
    color: #689f38;
    border: 1px solid
}

body .ui-button.ui-button-success.ui-button-outlined.ui-state-active,body .ui-splitbutton.ui-button-success>.ui-button.ui-button-outlined.ui-state-active,body .ui-menubutton.ui-button-success>.ui-button.ui-button-outlined.ui-state-active {
    background: rgba(104,159,56,.16);
    color: #689f38;
    border: 1px solid
}

body .ui-button.ui-button-success.ui-button-flat,body .ui-splitbutton.ui-button-success>.ui-button.ui-button-flat,body .ui-menubutton.ui-button-success>.ui-button.ui-button-flat {
    background-color: rgba(0,0,0,0);
    color: #689f38;
    border-color: rgba(0,0,0,0)
}

body .ui-button.ui-button-success.ui-button-flat.ui-state-hover,body .ui-splitbutton.ui-button-success>.ui-button.ui-button-flat.ui-state-hover,body .ui-menubutton.ui-button-success>.ui-button.ui-button-flat.ui-state-hover {
    background: rgba(104,159,56,.04);
    border-color: rgba(0,0,0,0);
    color: #689f38
}

body .ui-button.ui-button-success.ui-button-flat.ui-state-active,body .ui-splitbutton.ui-button-success>.ui-button.ui-button-flat.ui-state-active,body .ui-menubutton.ui-button-success>.ui-button.ui-button-flat.ui-state-active {
    background: rgba(104,159,56,.16);
    border-color: rgba(0,0,0,0);
    color: #689f38
}


body .ui-button.ui-button-danger,body .ui-splitbutton.ui-button-danger>.ui-button,body .ui-menubutton.ui-button-danger>.ui-button {
    background: #d32f2f;
    color: #fff;
    border: 1px solid #d32f2f
}

body .ui-button.ui-button-danger.ui-state-hover,body .ui-splitbutton.ui-button-danger>.ui-button.ui-state-hover,body .ui-menubutton.ui-button-danger>.ui-button.ui-state-hover {
    background: #c02929;
    color: #fff;
    border-color: #c02929
}

body .ui-button.ui-button-danger.ui-state-focus,body .ui-splitbutton.ui-button-danger>.ui-button.ui-state-focus,body .ui-menubutton.ui-button-danger>.ui-button.ui-state-focus {
    box-shadow: 0 0 0 .2rem #edacac
}

body .ui-button.ui-button-danger.ui-state-active,body .ui-splitbutton.ui-button-danger>.ui-button.ui-state-active,body .ui-menubutton.ui-button-danger>.ui-button.ui-state-active {
    background: #aa2424;
    color: #fff;
    border-color: #aa2424
}

body .ui-button.ui-button-danger.ui-button-outlined,body .ui-splitbutton.ui-button-danger>.ui-button.ui-button-outlined,body .ui-menubutton.ui-button-danger>.ui-button.ui-button-outlined {
    background-color: rgba(0,0,0,0);
    color: #d32f2f;
    border: 1px solid
}

body .ui-button.ui-button-danger.ui-button-outlined.ui-state-hover,body .ui-splitbutton.ui-button-danger>.ui-button.ui-button-outlined.ui-state-hover,body .ui-menubutton.ui-button-danger>.ui-button.ui-button-outlined.ui-state-hover {
    background: rgba(211,47,47,.04);
    color: #d32f2f;
    border: 1px solid
}

body .ui-button.ui-button-danger.ui-button-outlined.ui-state-active,body .ui-splitbutton.ui-button-danger>.ui-button.ui-button-outlined.ui-state-active,body .ui-menubutton.ui-button-danger>.ui-button.ui-button-outlined.ui-state-active {
    background: rgba(211,47,47,.16);
    color: #d32f2f;
    border: 1px solid
}

body .ui-button.ui-button-danger.ui-button-flat,body .ui-splitbutton.ui-button-danger>.ui-button.ui-button-flat,body .ui-menubutton.ui-button-danger>.ui-button.ui-button-flat {
    background-color: rgba(0,0,0,0);
    color: #d32f2f;
    border-color: rgba(0,0,0,0)
}

body .ui-button.ui-button-danger.ui-button-flat.ui-state-hover,body .ui-splitbutton.ui-button-danger>.ui-button.ui-button-flat.ui-state-hover,body .ui-menubutton.ui-button-danger>.ui-button.ui-button-flat.ui-state-hover {
    background: rgba(211,47,47,.04);
    border-color: rgba(0,0,0,0);
    color: #d32f2f
}

body .ui-button.ui-button-danger.ui-button-flat.ui-state-active,body .ui-splitbutton.ui-button-danger>.ui-button.ui-button-flat.ui-state-active,body .ui-menubutton.ui-button-danger>.ui-button.ui-button-flat.ui-state-active {
    background: rgba(211,47,47,.16);
    border-color: rgba(0,0,0,0);
    color: #d32f2f
}


body .ui-button.ui-button-warning,body .ui-splitbutton.ui-button-warning>.ui-button,body .ui-menubutton.ui-button-warning>.ui-button {
    background: #fbc02d;
    color: #212529;
    border: 1px solid #fbc02d
}

body .ui-button.ui-button-warning.ui-state-hover,body .ui-splitbutton.ui-button-warning>.ui-button.ui-state-hover,body .ui-menubutton.ui-button-warning>.ui-button.ui-state-hover {
    background: #fab710;
    color: #212529;
    border-color: #fab710
}

body .ui-button.ui-button-warning.ui-state-focus,body .ui-splitbutton.ui-button-warning>.ui-button.ui-state-focus,body .ui-menubutton.ui-button-warning>.ui-button.ui-state-focus {
    box-shadow: 0 0 0 .2rem #fde6ab
}

body .ui-button.ui-button-warning.ui-state-active,body .ui-splitbutton.ui-button-warning>.ui-button.ui-state-active,body .ui-menubutton.ui-button-warning>.ui-button.ui-state-active {
    background: #e8a704;
    color: #212529;
    border-color: #e8a704
}

body .ui-button.ui-button-warning.ui-button-outlined,body .ui-splitbutton.ui-button-warning>.ui-button.ui-button-outlined,body .ui-menubutton.ui-button-warning>.ui-button.ui-button-outlined {
    background-color: rgba(0,0,0,0);
    color: #fbc02d;
    border: 1px solid
}

body .ui-button.ui-button-warning.ui-button-outlined.ui-state-hover,body .ui-splitbutton.ui-button-warning>.ui-button.ui-button-outlined.ui-state-hover,body .ui-menubutton.ui-button-warning>.ui-button.ui-button-outlined.ui-state-hover {
    background: rgba(251,192,45,.04);
    color: #fbc02d;
    border: 1px solid
}

body .ui-button.ui-button-warning.ui-button-outlined.ui-state-active,body .ui-splitbutton.ui-button-warning>.ui-button.ui-button-outlined.ui-state-active,body .ui-menubutton.ui-button-warning>.ui-button.ui-button-outlined.ui-state-active {
    background: rgba(251,192,45,.16);
    color: #fbc02d;
    border: 1px solid
}

body .ui-button.ui-button-warning.ui-button-flat,body .ui-splitbutton.ui-button-warning>.ui-button.ui-button-flat,body .ui-menubutton.ui-button-warning>.ui-button.ui-button-flat {
    background-color: rgba(0,0,0,0);
    color: #fbc02d;
    border-color: rgba(0,0,0,0)
}

body .ui-button.ui-button-warning.ui-button-flat.ui-state-hover,body .ui-splitbutton.ui-button-warning>.ui-button.ui-button-flat.ui-state-hover,body .ui-menubutton.ui-button-warning>.ui-button.ui-button-flat.ui-state-hover {
    background: rgba(251,192,45,.04);
    border-color: rgba(0,0,0,0);
    color: #fbc02d
}

body .ui-button.ui-button-warning.ui-button-flat.ui-state-active,body .ui-splitbutton.ui-button-warning>.ui-button.ui-button-flat.ui-state-active,body .ui-menubutton.ui-button-warning>.ui-button.ui-button-flat.ui-state-active {
    background: rgba(251,192,45,.16);
    border-color: rgba(0,0,0,0);
    color: #fbc02d
}

body .ui-button.ui-button-secondary,body .ui-splitbutton.ui-button-secondary>.ui-button,body .ui-menubutton.ui-button-secondary>.ui-button {
    background: #607d8b;
    color: #fff;
    border: 1px solid #607d8b
}

body .ui-button.ui-button-secondary.ui-state-hover,body .ui-button.ui-button-secondary:not(:disabled):hover,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-state-hover,body .ui-splitbutton.ui-button-secondary>.ui-button:not(:disabled):hover,body .ui-menubutton.ui-button-secondary>.ui-button.ui-state-hover,body .ui-menubutton.ui-button-secondary>.ui-button:not(:disabled):hover {
    background: #56717d;
    border-color: #56717d;
    color: #fff
}

body .ui-button.ui-button-secondary.ui-state-focus,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-state-focus,body .ui-menubutton.ui-button-secondary>.ui-button.ui-state-focus {
    box-shadow: 0 0 0 .2rem #beccd2
}

body .ui-button.ui-button-secondary.ui-state-active,body .ui-button.ui-button-secondary:active,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-state-active,body .ui-splitbutton.ui-button-secondary>.ui-button:active,body .ui-menubutton.ui-button-secondary>.ui-button.ui-state-active,body .ui-menubutton.ui-button-secondary>.ui-button:active {
    background: #4d646f;
    border-color: #4d646f;
    color: #fff
}

body .ui-button.ui-button-secondary.ui-button-outlined,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-button-outlined,body .ui-menubutton.ui-button-secondary>.ui-button.ui-button-outlined {
    background-color: rgba(0,0,0,0);
    color: #607d8b;
    border: 1px solid
}

body .ui-button.ui-button-secondary.ui-button-outlined:enabled:hover,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-button-outlined:enabled:hover,body .ui-menubutton.ui-button-secondary>.ui-button.ui-button-outlined:enabled:hover {
    background: rgba(96,125,139,.04);
    color: #607d8b;
    border: 1px solid
}

body .ui-button.ui-button-secondary.ui-button-outlined:enabled:active,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-button-outlined:enabled:active,body .ui-menubutton.ui-button-secondary>.ui-button.ui-button-outlined:enabled:active {
    background: rgba(96,125,139,.16);
    color: #607d8b;
    border: 1px solid
}

body .ui-button.ui-button-secondary.ui-button-flat,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-button-flat,body .ui-menubutton.ui-button-secondary>.ui-button.ui-button-flat {
    background-color: rgba(0,0,0,0);
    color: #607d8b;
    border-color: rgba(0,0,0,0)
}

body .ui-button.ui-button-secondary.ui-button-flat:enabled:hover,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-button-flat:enabled:hover,body .ui-menubutton.ui-button-secondary>.ui-button.ui-button-flat:enabled:hover {
    background: rgba(96,125,139,.04);
    border-color: rgba(0,0,0,0);
    color: #607d8b
}

body .ui-button.ui-button-secondary.ui-button-flat:enabled:active,body .ui-splitbutton.ui-button-secondary>.ui-button.ui-button-flat:enabled:active,body .ui-menubutton.ui-button-secondary>.ui-button.ui-button-flat:enabled:active {
    background: rgba(96,125,139,.16);
    border-color: rgba(0,0,0,0);
    color: #607d8b
}


body .ui-button:hover {
	background: linear-gradient(95.08deg, #000000 2.49%, var(--corPrincipal) 97.19%);
	color: white;
}

body .ui-button .fa,
body .ui-button:hover .fa{
	color: white;
}

body .ui-button .pi,
body .ui-button:hover .pi{
	color: white;
}

body .ui-button-text {
	/* Button */

	height: 22px;
	
	/* Desktop/Link X-Small */
	font-style: normal;
	font-weight: 600;
	font-size: 13px;
	line-height: 22px;
	
	/* identical to box height, or 169% */
	display: flex;
	align-items: center;
	text-align: center;
	letter-spacing: 0.25px;
	
	text-shadow: none;

	
	/* Inside auto layout */
	flex: none;
	order: 0;
	flex-grow: 0;
}

.ui-widget .ui-autocomplete .ui-autocomplete-dropdown, 
.ui-autocomplete .ui-autocomplete-dropdown {
	background: var(--corSecundaria);	
	height: 52px !important;
	border-radius: 0px 8px 8px 0px;
}

body .ui-radiobutton-box.ui-state-active {
  background-color: var(--corPrincipal) !important;
}

.ui-datatable-footer {
  height: auto;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
  text-shadow: none;
}

.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
	color: black !important;
	background: var(--corInput) !important;
}

.ui-accordion-header::before {
    content: "❯";
    margin-right: 20px;
    display: inline-block;
    transition: all .35s;
}

.ui-accordion .ui-state-active::before{
	-webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.ui-accordion-header:hover{
	background-color: var(--corInput);
}

.ui-accordion-header {
	height: 60px;
	border: none !important;
	font-style: normal !important;
	font-weight: 400 !important;
	font-size: 24px !important;
	line-height: 32px !important;
	color: #6E7191 !important;
}

.ui-accordion {
	border: 1px solid #C1D5DF !important;
	border-radius: 10px;
	margin-bottom: 5px;
	margin-top: 5px;
	overflow: visible !important;
	padding: 0px !important;
	position: relative;
	background-color: white;
}

.ui-accordion-content {
	border: none;
}

/* TABS */

body .ui-tabs .ui-tabs-nav .ui-tabs-header a {
	color: var(--corPrincipal);
	margin-right: 35px;
	padding-right: 22px;
	padding-left: 22px;
	font-weight: 600;
}

body .ui-tabs .ui-tabs-nav .ui-tabs-header a:hover {
	background: linear-gradient(95.08deg, var(--corAuxiliar) 2.49%, var(--corPrincipal) 97.19%) !important;
	color: white !important;
	border-radius: 8px;
}

body .ui-tabs .ui-tabs-panels {
	background-color: transparent !important;
	color: #333;
	margin: 0;
	position: static;
	border: 0px solid #c8c8c8;
	padding: 0px;
}

body .ui-tabs-nav {
	background: none !important;
	margin-bottom: 10px !important;
	padding-bottom: 10px !important;
}

body .ui-tabs-header {
	color: var(--corPrincipal) !important;
	background: none !important;
	border: 0px !important;
}

body .ui-tabs-selected a {
	/* Button */

	/* Auto layout */
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 9px 22px;
	gap: 12px;

	height: 40px;

	color: #ffffff;
	background: linear-gradient(95.08deg, var(--corAuxiliar) 2.49%, var(--corPrincipal) 97.19%) !important;

	/* Gradients/46 */
	border-radius: 8px;
	border: 0px solid var(--corPrincipal);

	/* Inside auto layout */
	flex: none;
	order: 4;
	align-self: stretch;
	flex-grow: 0;
	font-weight: 600;
}

body .ui-tabs-selected a:hover {
	background: linear-gradient(95.08deg, #000000 2.49%, var(--corPrincipal) 97.19%) !important;
}



body .ui-tabs .ui-tabs-panels .ui-tabs-panel {
	padding: 0px;
	line-height: 1.5;
}


body .ui-tabs .ui-tabs-nav .ui-tabs-header.ui-state-active a {
  color: #fff;
}

.ui-selectonemenu-panel{
  background-color: white !important;
}


.ui-autocomplete-dropdown {
	height: 48px !important;
}

.ui-autocomplete-panel{
  background-color: white !important;
}

.ui-panel-titlebar {
	background-color: var(--corPrincipal) !important;
	color: white !important;
}

.ui-dialog-titlebar {
	background-color: var(--corPrincipal) !important;
	color: white !important;
}

.ui-dialog-footer {
	margin-left: 12% !important;
	margin-right: 12% !important;
	text-align: center;
}


.botaoComImagem {
	width: 328px;
	color: var(--corPrincipal) !important;
	background: linear-gradient(95.08deg, white 2.49%, white 97.19%) !important;
	border-radius: 8px;
	border: 2px solid var(--corPrincipal) !important;
}

.botaoComImagem:hover {
	color: #ffffff !important;
	border: 0px !important;
	background: linear-gradient(95.08deg, #000000 2.49%, var(--corPrincipal) 97.19%) !important;
}

.botaoComImagem:hover img {
	filter: invert(90%) sepia(93%) saturate(28%) hue-rotate(194deg) brightness(307%) contrast(100%);
}

/* --------------- TEMPLATE ------------------------- */

#formPrincipal {
	margin-left: 100px;
	margin-top: 70px;
}

#conteudo_principal {
	margin-top: 50px;
}

#conteudo_principal h1 {
  font-style: normal;
  font-weight: 700;
  font-size: 32px;
  line-height: 48px;
  color: var(--corTerciaria);
  margin-top: 70px;
}

.panelComSobra {
	margin: auto;
		/* Grayscale / Off-white */
	background: white !important;

	/* Drop Shadow Large */
	box-shadow: 0px 0px 72px rgba(0, 0, 0, 0.04) !important;
	border-radius: 8px !important;
	margin-top: 24px !important;
	padding: 24px !important;
}



/* --------------- HEADER / TOPBAR------------------------- */

#topbarContainer{
	height: 91px;
	width: 105%;
	position: fixed;
	background-color: var(--corPrincipal) !important;
	color: #ffffff;
	z-index: 101;
	overflow-y:scroll !important;
}


#leftTopbar {
	margin-left: 112px;
	text-align: left;
	display:flex;align-items:center;
}

#centerTopbar {
	display:flex;justify-content:center;align-items:center;
}

#rightTopbar {
	margin-right: 112px;
	display:flex;justify-content:flex-end;align-items:center;
}


#layout-header {
	height: 91px;
	width: 100%;
	display: block;
	position: fixed;
	z-index: 101;
	box-sizing: content-box;
	/*     border-bottom:solid 1px #0b4170; border-top:solid 1px #0b4170; */
	background-color: var(--corPrincipal) !important;
	-webkit-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.4);
	-moz-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.4);
	box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.4);
	color: #ffffff;
}

#cmdlkBrasao {
	text-align: left !important;
	align-items: right;
	vertical-align: bottom;
	margin-left: 10px;
}

#linhaVerticalLogOutHeader {
	width: 1px;
	height: 24px;
	background: var(--corSecundaria);
	margin-left: 24px;
	margin-right: 24px;
}


.navButton {
	background: none !important;
	padding: 0px !important;
}

.navButton .fa {
	color: white !important;
}
.navButton .pi {
	color: white !important;
}

.navButton:hover {
	background: none !important;
}

/* --------------- FOOTER / RODAPÉ -------------------*/

#layout-footer {
	left: 0;
	bottom: 0;
	margin-bottom: 20px;
	width: 100%;
	color: #ffffff;
	text-align: center;
}

#linhaFooterInterno {
	width: 90%;
	height: 1px;
	background: #D9DBE9;
	margin-left: 5%;
	margin-bottom: 20px;
}

#imagemFooterInterno {
	height: 20px !important;
	display: block;
	top: 0;
}

/* --------------- MENU PRINCIPAL ----------------- */

.panelBarSubMenuComSobra {
	width: 200px;
	height: 150px;
	background: #FCFCFC;
	box-shadow: 0px 7px 20px rgba(200, 203, 223, 0.3);
	border-radius: 8px;
	text-align: left;
	padding: 24px;
	margin-bottom: 24px;

	/* Texto/label */
	color: #6E7191 !important;
}



#formPrincipal h3 {
	font-style: normal;
	font-weight: 400;
	font-size: 24px;
	line-height: 32px;

	color: #6E7191;
	margin-top: 50px;
}

#conteudo_principal h2 {
	font-style: normal;
	font-weight: 700;
	font-size: 32px;
	line-height: 48px;
	color: var(--corTerciaria);
}

/* Removendo linhas logo após títulos h2 */

h2 + hr{
	display:none;
}

/* Visual das linhas HRs do sistema */

#formPrincipal hr {
	height: 2px !important;
	background: linear-gradient(95.08deg, var(--corPrincipal) 2.49%, var(--corAuxiliar) 97.19%);
	border: none !important;	
}

/* ----------------------------- HOME PAGE ----------------------------- */

.panelBarSubMenuComSobra img {
	filter: var(--corIcones);
}

.panelBarSubMenuComSobra label {
	font-style: normal !important;
	font-weight: 500 !important;
	font-size: 18px !important;
	line-height: 120% !important;
	margin: 0px !important;
}

.panelBarSubMenuComSobra:hover{
	background: linear-gradient(95.08deg, var(--corAuxiliar) 2.49%, var(--corPrincipal) 97.19%);
	color: white !important;
}

.panelBarSubMenuComSobra:hover img {
	filter: invert(100%) sepia(91%) saturate(38%) hue-rotate(254deg) brightness(110%) contrast(110%);
}

.panelBarSubMenuComSobra:hover .fa {
	color: #ffffff;
}
.panelBarSubMenuComSobra:hover .pi {
	color: #ffffff;
}

.panelBarSubMenuComSobra img {
	width: auto;
	height: 40px;
	margin-bottom: 16px;
	/*filter: invert(1);*/
}

/* ---------------------- PÁGINA DE LOGIN --------------------- */

.centerCard {
	margin: auto;
}

.mediumSize {
	width: 360px;
}

.qCard{
	/* Auto layout */
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 40px 56px;
	gap: 10px;
	background: #FFFFFF;
	box-shadow: 0px 0px 72px rgba(0, 0, 0, 0.04);
	border-radius: 10px;
}

body .ui-tabs-panel{
	padding: 40px 56px !important;
	background: #FFFFFF !important;
	box-shadow: 0px 0px 72px rgba(0, 0, 0, 0.04);
	border-radius: 10px;
}

.qTitle {
	font-style: normal;
	font-weight: 600;
	font-size: 18px !important;
	line-height: 32px;
	color: #262338 !important;
	margin-top: 10px !important;
}

.qSubTitle {
	font-style: normal;
	font-weight: 400;
	font-size: 15px;
	line-height: 24px;
	color: #A0A3BD;
}

.qSubSubTitle {
	font-style: normal;
	font-weight: 300;
	font-size: 12px;
	line-height: 20px;
	color: #A0A3BD;
}

body .ui-widget .ui-inputfield,
body .ui-inputfield,
.qInput {
	min-height: 44px;
	background: var(--corInput);
	border-radius: 8px;
	border: 2px solid var(--corInput) !important;
	color: #6E7191 !important;
	padding-left: 24px;
}

body .qInput:focus {
	border: 2px solid var(--corSecundaria) !important;
	border-radius: 8px !important;
	color: #6E7191 !important;
	box-shadow: none !important;
}


.qInputLabel {
	color: var(--corSecundaria);
	text-align: left;
	font-weight: 600;
	margin-top: 22px;
	margin-left: 24px;
	display: block;
}

body .ui-column-filter {
	padding-left: 5px;
}

.qButton {
	padding: 9px 22px;
	gap: 12px;
	height: 40px;
	background: linear-gradient(95.08deg, var(--corAuxiliar) 2.49%, var(--corPrincipal) 97.19%);
	border-radius: 8px;
}

.qKeyboard {
	background: white;
	height: auto;
}

.forgotPasswordLink {
	/* Desktop/Link X-Small */
	font-style: normal;
	font-weight: 600;
	font-size: 13px;
	line-height: 22px;

	/* identical to box height, or 169% */
	align-items: center;
	text-align: right !important;
	letter-spacing: 0.25px;

	/* Primary/Darkmode */
	color: var(--corSecundaria) !important;
}


/* ----------------------------- FORMULÁRIOS ------------------------------- */


.selectForm {
	background: var(--corInput) !important;
	border: 0px !important;
	height: 48px !important;
	border-radius: 8px !important;

}

.selectForm label,
.selectForm div {
	background-color: #fff !important;

}

.selectForm:focus {
	border: 2px solid var(--corSecundaria) !important;
	border-radius: 8px !important;
	color: #6E7191 !important;
}

#formPrincipal\:formCadastro td,
#formPrincipal\:formCadastroPanel td{
	padding-top: 10px !important;
}

#formPrincipal\:selectEmpresas {
	margin-left: 15px;
	margin-right: 15px;
	background-color: white !important;
}

#formPrincipal\:selectEmpresas label {
	border: none !important;
}

.ui-button-icon-only {
	height: 10px !important;
	width: 10px !important;
	padding: 15px !important;
}

.ui-spinner-button {
	background: var(--corSecundaria) !important;
	color: white !important;
	height: 20px !important;
	width: 5px !important;
	text-align: center !important;
}

input.ui-spinner-input {
  text-align: left;
}

/* Cores das etapas */
.aguardando {
	background-color: #d8d8d8 !important;
}

.emexecucao {
	background-color: #fff5dd !important;
}

.emaprovacao {
	background-color: #ffe699 !important;
}

.dispensada_processo {
	background-color: #ffffff !important;
}

.dispensada {
	background-color: #ffffff !important;
}

.atrasada {
	background-color: #ff6262 !important;
}

.compendenciadeanalise {
	background-color: #ff6262 !important;
}
	         
.gerado {
	background-color: #99ff99;
}
	
.naoanalisado {
	background-color: #ffffff;
}
    
.finalizada {
	background-color: #689f38 !important;
}

.finalizadacomatraso{
	background-color: #ff6347 !important;
}

.rascunho {
	background-color: #FF8C00 !important;
}

.vencido {
	background-color: #FF8C00 !important;
}

.ajustefluxo {
	background-color: #ffc8c8 !important;
}

.emrevisao {
	background-color: #ffe699 !important;
}

.suspensa {
	background-color: #ffe699 !important;
}

.pendente {
	background-color: #ffe699 !important;
}

.pendenterequerente{
	background-color: #fff5d6;
}

.pendenteprefeitura {
	background-color: #ff9800;
}

.rejeitada {
	background-color: #ff355e !important;
}

.cancelada {
	background-color: #ffc8c8 !important;
}

.em_reanalise {
	background-color: #ff9800;
}

.aguardandopagamento {
	background-color: #fff5dd  !important;
}

.documento_em_reanalise {
	background-color: #ff9800;
}


.linha-planejado {
    background-color: #f4faf6 !important;
    border-left: 6px solid #57a26e !important;
}

.linha-em-planejamento {
    background-color: #fffbf0 !important;
    border-left: 6px solid #d1a84c !important;
}



.req_aguardando {
	background-color: #E0E0E0; /* Cinza claro */
	color: #000;
}

.req_aguardandopagamento {
	background-color: #64B5F6; /* Azul médio */
	color: #000;
}

.req_atrasada {
	background-color: #D32F2F; /* Vermelho escuro */
	color: #fff;
}

.req_cancelada {
	background-color: #EF9A9A; /* Cinza avermelhado */
	color: #000;
}

.req_emexecucao {
	background-color: #fff5dd !important;
	color: #000;
}

.req_finalizada {
	background-color: #388E3C; /* Verde escuro */
	color: #fff;
}

.req_pendente {
	background-color: #FBC02D; /* Amarelo escuro */
	color: #000;
}

.req_rascunho {
	background-color: #FB8C00; /* Laranja queimado */
	color: #000;
}

/* Estilos opcionais para deixar com aparência de "badge" */
.req_status-badge {
	padding: 4px 10px;
	border-radius: 4px;
	font-size: 0.85rem;
	font-weight: bold;
	display: inline-block;
}

.inativo {
	background-color: red;
}

.ativo {
	background-color: green;
}
		
.doc-dica {
	color: #FFC300   !important;
}

/* Cores */
.linha_unidade {
	background-color: #ffe699 !important;
}
.linha_unidade_orgao{
	background-color: #fff5dd !important;
}
.linha_orgao {
	background-color: #ffffff !important;
}
/* FIM CORES ETAPAS */

.coluna {
	white-space: nowrap;
}

/* Alteração de Design dos checkboxes */

.ui-chkbox-icon {
	border: 1px solid var(--corPrincipal);
}

.ui-selectcheckboxmenu-panel,  .ui-selectcheckboxmenu-header {
	background: white;
}

.ui-selectcheckboxmenu-item:hover {
	cursor: pointer;
	background: var(--corQuaternaria);
}

.ui-selectcheckboxmenu-list-item label:hover {
	cursor: pointer;
}

.ui-selectonemenu-panel{
	max-width: 80% !important;
}


/* 08/05/2023 - Cor ícone fechar pop up */
.ui-icon-minusthick {
	background-image: url('/arbor/javax.faces.resource/images/ui-icons_ffffff_256x240.png.xhtml') !important;
}
.ui-icon-plusthick{
	background-image: url('/arbor/javax.faces.resource/images/ui-icons_ffffff_256x240.png.xhtml') !important;
}

.ui-icon-closethick {
	background-image: url('/arbor/javax.faces.resource/images/ui-icons_ffffff_256x240.png.xhtml') !important;
}

.ui-orderlist .ui-button .ui-icon {
  background-image: url('/arbor/javax.faces.resource/images/ui-icons_ffffff_256x240.png.xhtml') !important;
}

.ui-growl-icon-close{
	background-image: url('/arbor/javax.faces.resource/images/ui-icons_333333_256x240.png.xhtml?ln=primefaces-bootstrap&v=12.0.0&e=12.0.4') !important;
}

.ui-picklist.ui-picklist-responsive .ui-picklist-buttons button {
  width: 100%;
  background-color: #607d8b;
}

.ui-breadcrumb{
	border: 0px  !important;
	background-color: transparent !important;
	margin: 1px !important;
}

.ui-breadcrumb a, .ui-breadcrumb a:visited{
	color: var(--corTerciaria) !important;	
}
.ui-breadcrumb .ui-breadcrumb-items li:not(.ui-breadcrumb-chevron):before {
 content:"";
 font-family:"primeicons" !important;
 font-style:normal;
 font-weight:normal;
 font-variant:normal;
 text-transform:none;
 /*! display:inline-block; *//*! -webkit-font-smoothing:antialiased; *//*! -moz-osx-font-smoothing:grayscale; *//*! text-indent:0 !important; *//*! background-image:none !important; */margin:0 .5rem 0 .5rem;
 color:#495057;
}

.custom-marker-chronoline {
	display: flex;
	width: 2rem;
	height: 2rem;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	border-radius: 50%;
	z-index: 1;
}

.custom-marker-chronoline i.pi {
  color: #FFFFFF; 
}

.custom-marker-chronoline-cor_verde {
	background-color: #99ff99 !important;
	color: #99ff99 !important;
}

.custom-marker-chronoline-cor_vermelho {
	background-color: #ff6262 !important;
	color: #ff6262 !important;
}

.custom-marker-chronoline-cor_laranja {
	background-color: #ffe699 !important;
	color: #ffe699 !important;
}

.custom-marker-chronoline-cor_amarelo {
	background-color: #fff5dd !important;
	color: #fff5dd !important;
}

.custom-marker-chronoline-cor_cinza {
	background-color: #d8d8d8 !important;
	color: #d8d8d8 !important;
}

.ui-card {
 background:#fff;
 color:#495057;
/*  box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);
 */ 
 border-radius:4px
}

.ui-card .ui-card-body {
  padding: 1rem;
}

.ui-card .ui-card-title {
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: .5rem;
}

.ui-card .ui-card-subtitle {
  font-weight: 400;
  margin-bottom: .5rem;
  color: #6c757d;
}
.ui-card .ui-card-footer {
 padding:1rem 0 0 0
}

.ui-chronoline-event-content, .ui-chronoline-event-opposite {
	line-height: 1;
}
.ui-chronoline-event-separator {
    flex: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
}
.ui-chronoline-left .ui-chronoline-event-opposite {
    text-align: right;
}

.ui-chronoline-left .ui-chronoline-event-content {
    text-align: left;
}

.ui-chronoline-right .ui-chronoline-event {
    flex-direction: row-reverse;
}

.ui-chronoline-right .ui-chronoline-event-opposite {
    text-align: left;
}

.ui-chronoline-right .ui-chronoline-event-content {
    text-align: right;
}

.ui-chronoline-vertical.ui-chronoline-alternate .ui-chronoline-event:nth-child(even) {
    flex-direction: row-reverse;
}

.ui-chronoline-vertical.ui-chronoline-alternate .ui-chronoline-event:nth-child(odd) .ui-chronoline-event-opposite {
    text-align: right;
}

.ui-chronoline-vertical.ui-chronoline-alternate .ui-chronoline-event:nth-child(odd) .ui-chronoline-event-content {
    text-align: left;
}

.ui-chronoline-vertical.ui-chronoline-alternate .ui-chronoline-event:nth-child(even) .ui-chronoline-event-opposite {
    text-align: left;
}

.ui-chronoline-vertical.ui-chronoline-alternate .ui-chronoline-event:nth-child(even) .ui-chronoline-event-content {
    text-align: right;
}

.ui-chronoline-event {
    display: flex;
    position: relative;
    min-height: 70px;
}

.ui-chronoline-event:last-child {
    min-height: 0;
}

.ui-chronoline-event-opposite {
    flex: 1;
    padding: 0 1rem;
}

.ui-chronoline-event-content {
    flex: 1;
    padding: 0 1rem;
}

.ui-chronoline-event-separator {
    flex: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
}

.ui-chronoline-event-marker {
    display: flex;
    align-self: baseline;
}

.ui-chronoline-event-connector {
    flex-grow: 1;
}

.ui-chronoline-horizontal {
    flex-direction: row;
}

.ui-chronoline-horizontal .ui-chronoline-event {
    flex-direction: column;
    flex: 1;
}

.ui-chronoline-horizontal .ui-chronoline-event:last-child {
    flex: 0;
}

.ui-chronoline-horizontal .ui-chronoline-event-separator {
    flex-direction: row;
}

.ui-chronoline-horizontal .ui-chronoline-event-connector  {
    width: 100%;
}
.ui-chronoline .ui-chronoline-event-connector {
 background-color:#dee2e6
}
.ui-chronoline.ui-chronoline-vertical .ui-chronoline-event-connector {
 width:2px;
}

.ui-chronoline-bottom .ui-chronoline-event {
    flex-direction: column-reverse;
}

.ui-chronoline-horizontal.ui-chronoline-alternate .ui-chronoline-event:nth-child(even) {
    flex-direction: column-reverse;
}
.shadow-chronoline {
	box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.02), 0px 0px 2px rgba(0, 0, 0, 0.05), 0px 1px 4px rgba(0, 0, 0, 0.08) !important;
}


body .ui-password .ui-password-icon {
  cursor:pointer
}
body .ui-password.ui-password-masked .ui-password-icon {
  font-family:"primeicons" !important;
  font-style:normal;
  font-weight:normal;
  display:inline-block;
  background:none
}
body .ui-password.ui-password-masked .ui-password-icon:before {
  content:""
}
body .ui-password.ui-password-unmasked .ui-password-icon {
  font-family:"primeicons" !important;
  font-style:normal;
  font-weight:normal;
  display:inline-block;
  background:none
}
body .ui-password.ui-password-unmasked .ui-password-icon:before {
  content:""
}
body .ui-password-panel {
  background:#fff;
  color:#495057;
  padding:1rem;
  border:0 none;
  margin:0;
  width:auto;
  min-width:150px;
  box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12);
  border-radius:4px
}


body .ui-overlaypanel {
    background: #fff;
    color: #495057;
    padding: 0;
    border: 0 none;
    box-shadow: 0px 11px 15px -7px rgba(0,0,0,.2),0px 24px 38px 3px rgba(0,0,0,.14),0px 9px 46px 8px rgba(0,0,0,.12);
    border-radius: 4px
}

body .ui-overlaypanel .ui-overlaypanel-content {
    padding: 1rem
}

body .ui-overlaypanel .ui-overlaypanel-close {
    position: absolute;
    width: 2rem;
    height: 2rem;
    right: -1rem;
    top: -1rem;
    background: #2196f3;
    color: #fff;
    transition: background-color .2s,color .2s,border-color .2s,box-shadow .2s,opacity .2s;
    border-radius: 50%;
    text-align: center;
    line-height: 2rem;
    padding: 0
}

body .ui-overlaypanel .ui-overlaypanel-close:hover {
    background: #0d89ec;
    color: #fff
}

body .ui-overlaypanel .ui-overlaypanel-close .ui-icon {
    font-family: "primeicons" !important;
    font-style: normal;
    font-weight: normal;
    display: inline-block;
    background: none;
    display: inline-block;
    line-height: inherit
}

body .ui-chronoline .ui-chronoline-event-marker {
    border: 2px solid #2196f3;
    border-radius: 50%;
    width: 1rem;
    height: 1rem;
    background-color: #fff
}

body .ui-chronoline .ui-chronoline-event-connector {
    background-color: #dee2e6
}

body .ui-chronoline.ui-chronoline-vertical .ui-chronoline-event-opposite,body .ui-chronoline.ui-chronoline-vertical .ui-chronoline-event-content {
    padding: 0 1rem
}

body .ui-chronoline.ui-chronoline-vertical .ui-chronoline-event-connector {
    width: 2px
}

body .ui-chronoline.ui-chronoline-horizontal .ui-chronoline-event-opposite,body .ui-chronoline.ui-chronoline-horizontal .ui-chronoline-event-content {
    padding: 1rem 0
}

body .ui-chronoline.ui-chronoline-horizontal .ui-chronoline-event-connector {
    height: 2px
}

body .ui-selectbooleanbutton,body .ui-selectonebutton>.ui-button,body .ui-selectmanybutton>.ui-button {
    background: #fff;
    color: #495057;
    border: 1px solid #ced4da;
    outline: 0 none;
    transition: background-color .2s,color .2s,border-color .2s,box-shadow .2s,opacity .2s
}

body .ui-selectbooleanbutton .ui-icon,body .ui-selectonebutton>.ui-button .ui-icon,body .ui-selectmanybutton>.ui-button .ui-icon {
    color: #6c757d
}

body .ui-selectbooleanbutton.ui-state-hover,body .ui-selectonebutton>.ui-button.ui-state-hover,body .ui-selectmanybutton>.ui-button.ui-state-hover {
    background: #e9ecef;
    border-color: #ced4da;
    color: #495057
}

body .ui-selectbooleanbutton.ui-state-hover .ui-icon,body .ui-selectonebutton>.ui-button.ui-state-hover .ui-icon,body .ui-selectmanybutton>.ui-button.ui-state-hover .ui-icon {
    color: #6c757d
}

body .ui-selectbooleanbutton.ui-state-active,body .ui-selectonebutton>.ui-button.ui-state-active,body .ui-selectmanybutton>.ui-button.ui-state-active {
    background: #689f38;
    border-color: #689f38;
    color: #fff
}

body .ui-selectbooleanbutton.ui-state-active .ui-icon,body .ui-selectonebutton>.ui-button.ui-state-active .ui-icon,body .ui-selectmanybutton>.ui-button.ui-state-active .ui-icon {
    color: #fff
}

body .ui-selectbooleanbutton.ui-state-active:not(.ui-state-disabled):hover,body .ui-selectonebutton>.ui-button.ui-state-active:not(.ui-state-disabled):hover,body .ui-selectmanybutton>.ui-button.ui-state-active:not(.ui-state-disabled):hover {
    background: #689f38;
    border-color: #689f38;
    color: #fff
}

body .ui-selectbooleanbutton.ui-state-active:not(.ui-state-disabled):hover .ui-icon,body .ui-selectonebutton>.ui-button.ui-state-active:not(.ui-state-disabled):hover .ui-icon,body .ui-selectmanybutton>.ui-button.ui-state-active:not(.ui-state-disabled):hover .ui-icon {
    color: #fff
}

body .ui-sidebar {
  background:#fff;
  color:#495057;
  padding:1rem;
  border:0 none;
  box-shadow:none
}
body .ui-sidebar .ui-sidebar-close {
  padding:0;
  width:2rem;
  height:2rem;
  background: var(--corPrincipal);
  color:#6c757d;
  transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s,opacity .2s;
  border-radius:50%;
  border:0 none;
  text-align:center;
  line-height:2rem;
  padding:0;
  user-select:none
}
body .ui-sidebar .ui-sidebar-close:hover {
  background:#e9ecef;
  color:#495057;
  border-color:rgba(0,0,0,0)
}
body .ui-sidebar .ui-sidebar-close:focus {
  outline:0 none;
  outline-offset:0;
  box-shadow:0 0 0 .2rem #a6d5fa
}
body .ui-sidebar .ui-sidebar-close .ui-icon {
  font-family:"primeicons" !important;
  font-style:normal;
  font-weight:normal;
  display:inline-block;
  background:none
}
body .ui-sidebar .ui-sidebar-close .ui-icon:before {
  content:""
}
body .ui-sidebar.ui-sidebar-active {
  box-shadow:0px 11px 15px -7px rgba(0,0,0,.2),0px 24px 38px 3px rgba(0,0,0,.14),0px 9px 46px 8px rgba(0,0,0,.12)
}


.ui-sidebar {
    position: fixed;
    padding: .5em 1em;
    -webkit-transition: transform .3s;
    transition: transform .3s;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
	box-sizing: border-box;
}

.ui-sidebar-left {
    top: 0;
    left: 0;
    width: 20em;
    height: 100%;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
}

.ui-sidebar-right {
    top: 0;
    right: 0;
    width: 20em;
    height: 100%;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
}

.ui-sidebar-top {
    top: 0;
    left: 0;
    width: 100%;
    height: 10em;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
}

.ui-sidebar-bottom {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10em;
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
}

.ui-sidebar-full {
    width: 100%;
    height: 100%;
    left: 0;
    -webkit-transition: transform 0s;
    transition: transform 0s;
}

.ui-sidebar-left.ui-sidebar-active,
.ui-sidebar-right.ui-sidebar-active {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.ui-sidebar-left.ui-sidebar-sm,
.ui-sidebar-right.ui-sidebar-sm {
    width: 20em;
}

.ui-sidebar-left.ui-sidebar-md,
.ui-sidebar-right.ui-sidebar-md {
    width: 40em;
}

.ui-sidebar-left.ui-sidebar-lg,
.ui-sidebar-right.ui-sidebar-lg {
    width: 60em;
}

.ui-sidebar-top.ui-sidebar-active,
.ui-sidebar-bottom.ui-sidebar-active {
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.ui-sidebar-top.ui-sidebar-sm,
.ui-sidebar-bottom.ui-sidebar-sm {
    height: 10em;
}

.ui-sidebar-top.ui-sidebar-md,
.ui-sidebar-bottom.ui-sidebar-md {
    height: 20em;
}

.ui-sidebar-top.ui-sidebar-lg,
.ui-sidebar-bottom.ui-sidebar-lg {
    height: 30em;
}

.ui-sidebar-close {
    float: right;
    padding: 1px;
}

.ui-sidebar-close:hover,
.ui-sidebar-close:focus {
    padding: 0px;
}

@media screen and (max-width: 64em) {
    .ui-sidebar-left.ui-sidebar-lg,
    .ui-sidebar-left.ui-sidebar-md, 
    .ui-sidebar-right.ui-sidebar-lg,
    .ui-sidebar-right.ui-sidebar-md {
        width: 20em;
    }
}

body .ui-widget-overlay {
  -webkit-animation-name:modal-in;
  animation-name:modal-in;
  animation-duration:.4s;
  animation-timing-function:cubic-bezier(0.05, 0.74, 0.2, 0.99);
  animation-fill-mode:forwards
}

body .ui-widget-overlay {
  background:rgba(0,0,0,.4);
}


.ui-badge {
    font-size: 0.9rem;
    padding: 0.4em 0.7em;
}

.ui-badge-success {
    background-color: #28a745; /* verde */
}

.ui-badge-danger {
    background-color: #dc3545; /* vermelho */
}

.ui-badge-info {
    background-color: #17a2b8; /* azul claro */
}

.ui-badge-warning {
    background-color: #ffc107; /* amarelo */
}

.badge-danger-situacao {
    background-color: #dc3545;
    color: #ffffff;
    font-size: 1.25em;
    margin-left: 6px;
    padding: 2px 6px;
    border-radius: 8px;
}

.badge-warning-situacao {
    background-color: #facc15;
    color: #78350f;
    font-size: 1.25em;
    margin-left: 6px;
    padding: 2px 6px;
    border-radius: 8px;
}

.badge-warning-unidade {
    background-color: #ff9800;
    color: #78350f;
    font-size: 1.25em;
    margin-left: 6px;
    padding: 2px 6px;
    border-radius: 8px;
}

.bloco-questionario-pergunta {
    border: 1px solid #e0e0e0;
    border-radius: 6px;
    padding: 1rem;
    margin-bottom: 1.5rem;
    background-color: #f9f9f9;
}

.card-processo {
    margin: 1rem;
    padding: 1rem;
    border-radius: 8px;
    background-color: #fff;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    transition: box-shadow 0.3s;
}
.card-processo:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}
.grid-interna-processo {
    row-gap: 0.3rem;
}
.titulo-processo {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 0.5rem;
}

.assinatura-box {
  padding: 0.75rem;
  margin-bottom: 0.5rem;
  border-radius: 6px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.assinatura-box.assinada {
  background-color: #e0f7e9; /* verde claro */
  border-left: 5px solid #2e7d32;
}

.assinatura-box.pendente {
  background-color: #fff8e1; /* amarelo claro */
  border-left: 5px solid #fbc02d;
}

.assinatura-nome,
.assinatura-status {
  display: block;
  font-size: 0.95rem;
  margin-bottom: 0.25rem;
}

.assinatura-info {
  display: flex;
  flex-direction: column;
}

.card-cancelamento .ui-card-title {
    font-size: 1.2rem;
    color: #2c3e50;
    font-weight: 600;
    border-bottom: 1px solid #eee;
    padding-bottom: 0.5rem;
    margin-bottom: 1rem;
}

.status-tag {
    padding: 0.2rem 0.6rem;
    border-radius: 0.4rem;
    font-size: 0.9rem;
    color: white;
    display: inline-block;
}

.status-tag.aprovado {
    background-color: #28a745;
}

.status-tag.pendenterequerente {
    background-color: #fdd835;
}
.status-tag.pendenteprefeitura {
    background-color: #ff9800;
}

.status-tag.cancelado {
    background-color: #dc3545 !important;
}
/* Centraliza verticalmente o conteúdo dentro do dialog */
.ui-dialog.dialog-centralizado .ui-dialog-content {
    display: flex;
    justify-content: center;
    align-items: center;
}
.botao-pequeno {
    width: auto;
    padding: 0.4rem 1rem;
    font-size: 0.875rem;
}    
.objgenerico-grid .coluna-esq,
.objgenerico-grid .coluna-dir {
    padding: 0 1rem;
    vertical-align: top;
}

.upload-dialog-modern .ui-dialog-content {
    background: #f7f9fa !important;
    border-radius: 14px !important;
    min-height: 180px;
}
.upload-btn-modern {
    min-width: 240px !important;
    min-height: 2.7em !important;
    font-size: 1.11em !important;
    font-weight: 600 !important;
    border-radius: 9px !important;
    box-shadow: 0 2px 9px 0 rgba(33,40,63,0.06);
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 9px;
    transition: background 0.15s;
}
.upload-btn-modern:hover,
.upload-btn-modern:focus {
    background: #155fa0 !important;
}
.upload-btn-modern .pi-paperclip {
    color: #1976d2 !important;
    font-size: 1.16em;
}
/* Deixa a barra de progresso do arquivo abaixo do nome */
.ui-fileupload-files .ui-fileupload-row > td .ui-progressbar {
    display: block !important;
    margin-top: 8px !important;
    width: 100% !important;
}

.ui-fileupload-files .ui-fileupload-row > td {
    vertical-align: top !important;
}

.ui-fileupload-files .ui-fileupload-row > td .ui-fileupload-filename,
.ui-fileupload-files .ui-fileupload-row > td .ui-fileupload-size {
    display: block !important;
    margin-bottom: 4px;
}

/* Alinha verticalmente os rádios */
.ui-selectoneradio td {
  vertical-align: top !important;
  padding-bottom: 0.5rem;
}

/* Faz o texto longo quebrar corretamente e se manter alinhado */
.ui-selectoneradio label {
  display: inline-block;
  max-width: 100%;
  word-break: break-word;
  white-space: normal;
  line-height: 1.4;
  margin-left: 0.3rem;
}

/* Responsivo em telas pequenas */
@media (max-width: 600px) {
  .ui-selectoneradio table {
    width: 100%;
  }

  .ui-selectoneradio td {
    display: flex;
    align-items: flex-start;
  }

  .ui-selectoneradio td > div,
  .ui-selectoneradio td > label {
    flex: 1;
  }
}

/* Cartão e toolbar */
.arbor-card {
  border: 1px solid #eef0f4;
  border-radius: 12px;
  box-shadow: 0 6px 24px rgba(16,24,40,.06);
  padding: 0;
}
.arbor-toolbar {
  padding: 12px 14px;
  border-bottom: 1px solid #eef0f4;
  background: #fafbff;
}
.arbor-toolbar .p-inputtext {
  width: 100%;
  max-width: 360px;
  border-radius: 10px;
}

/* Árvore */
.arbor-tree.p-tree {
  padding: 8px 6px 12px 6px;
  --arbor-pad-y: 8px;
  --arbor-pad-x: 8px;
}
.arbor-tree .p-treenode-content {
  gap: 8px;
  padding: var(--arbor-pad-y) var(--arbor-pad-x);
  border-radius: 8px;
  transition: background-color .15s ease, box-shadow .15s ease;
}
.arbor-tree .p-treenode-content:hover {
  background: #f5f8ff;
}
.arbor-tree .p-treenode-content.p-highlight {
  background: #e9f0ff;
  box-shadow: inset 0 0 0 1px #c6d6ff;
}

/* Toggler e ícones alinhados */
.arbor-tree .p-tree-toggler {
  margin-right: 6px;
  width: 1.75rem; height: 1.75rem;
  border-radius: 6px;
}
.arbor-tree .p-treenode-icon {
  font-size: 1rem;
  color: #4f46e5;
}

/* Layout do conteúdo do nó */
.arbor-node {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.arbor-node-title {
  font-weight: 600;
  color: #0f172a;
  line-height: 1.25;
}
.arbor-node-sub {
  color: #64748b;
  line-height: 1.2;
}

/* Badge opcional (contador) */
.arbor-badge {
  margin-left: auto;
  align-self: center;
  font-size: .75rem;
  padding: .15rem .5rem;
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
}

/* Indentação mais limpa */
.arbor-tree .p-treenode-children {
  margin-left: 1.25rem;
  border-left: 1px dashed #e5e7eb;
  padding-left: .75rem;
}

/* Remover caret “vazio” em folhas (estética) */
.arbor-tree .p-treenode-leaf > .p-treenode-content .p-tree-toggler {
  visibility: hidden;
}

/* Campo de filtro interno do PrimeFaces (se usar filter="true") */
.arbor-tree .p-tree-filter-container .p-inputtext {
  width: 100%;
  border-radius: 10px;
}

/* Responsivo: reduz padding em telas pequenas */
@media (max-width: 480px) {
  .arbor-tree .p-treenode-content { padding: 6px 8px; }
  .arbor-toolbar { padding: 8px 10px; }
}

/* mantém ícone, toggler e texto na MESMA linha e centralizados */
.arbor-tree .p-treenode-content {
  display: flex;
  align-items: center;
}

/* espaço natural entre ícone e texto da tag */
.arbor-tree .p-treenode-icon { 
  margin-right: .5rem;
}
.arbor-inline-tag {
  display: inline-flex;
  align-items: center;
  font-weight: 600;
}
.arbor-tree-wrap {
  max-height: 360px;     /* ajuste ao seu layout */
  overflow: auto;        /* árvore rola e não cresce a página */
  padding-right: 2px;    /* evita scrollbar sobrepor conteúdo */
}
/* PrimeFaces legacy (ui-*) */
.ui-tree .ui-treenode-content { display:flex; align-items:center; }
.ui-tree .ui-treenode-icon    { margin-right: .5rem; }
.ui-tree .ui-treenode-label   { display:inline-flex; align-items:center; gap:.25rem; width:auto; }

/* PrimeFaces moderno (p-*) – caso mude de tema/skin no futuro */
.p-tree .p-treenode-content { display:flex; align-items:center; }
.p-tree .p-treenode-icon    { margin-right: .5rem; }
.p-tree .p-treenode-label   { display:inline-flex; align-items:center; gap:.25rem; width:auto; }

/* estética extra */
.arbor-inline-tag { font-weight:600; }
/* esconder toggler nas folhas (opcional) */
.ui-tree .ui-treenode-leaf > .ui-treenode-content .ui-tree-toggler,
.p-tree  .p-treenode-leaf  > .p-treenode-content  .p-tree-toggler { visibility:hidden; }


.button-destaque-finalizar {
    background-color: #1b5e20 !important; /* verde mais escuro */
    border-color: #1b5e20 !important;
    font-weight: bold;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.button-destaque-finalizar:hover {
    background-color: #2e7d32 !important;
    border-color: #2e7d32 !important;
}

.separador-botoes {
    width: 2px;
    height: 2rem;
    background-color: #ccc;
    margin: 0 0.5rem;
}

/* Faz o CKEditor maximizado aparecer acima da modal */
.cke_maximized {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 2147483647 !important; /* acima de tudo */
    background: #fff !important;
}

/* Área interna do editor */
.cke_maximized .cke_contents {
    height: calc(100vh - 80px) !important;
}

/* Garante que toolbars também apareçam no topo */
.cke_toolbox,
.cke_top,
.cke_inner {
    z-index: 2147483647 !important;
}

.interacao-card {
    padding: 10px;
    border-radius: 6px;
    margin-bottom: 10px;
    background-color: #f7f7f7;
}

.interacao-header {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
}

.interacao-tipo {
    margin-top: 5px;
    color: #555;
    font-size: 14px;
}

.interacao-mensagem {
    text-align: left;
    margin-left: 0;
    align-self: flex-start; /* se estiver dentro de flex */	
    margin-top: 8px;
    font-size: 15px;
}

.interacao-anexos {
    margin-top: 8px;
}

.interacao-card.criacao { border-left: 4px solid #1976d2; }
.interacao-card.resposta { border-left: 4px solid #388e3c; }
.interacao-card.ajuste { border-left: 4px solid #d32f2f; }
.interacao-card.validacao { border-left-color: #7b1fa2; }
.interacao-card.decisao {border-left: 4px solid #2e7d32; /* verde escuro */}
.interacao-card.encaminhamento {    border-left: 4px solid #0277bd; /* azul */}
.interacao-card.cancelamento {    border-left: 4px solid #c62828; /* vermelho */}


/* se tiver uma regra global que coloca overflow:visible, essa aqui vence */
.dialog-detalhe-pendencia .ui-dialog-content {
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* painel base */
.interacao-panel {
    margin-bottom: 8px;
    border-left: 4px solid #1976d2;
}

/* cabeçalho compacto */
.interacao-header-compacta {
    display: flex;
    gap: 12px;
    font-size: 13px;
    font-weight: 600;
    align-items: center;
}

.interacao-usuario {
    color: #263238;
}

.interacao-tipo {
    color: #1976d2;
    font-size: 12px;
}

.interacao-data {
    font-size: 11px;
    color: #666;
    margin-left: auto;
}

/* resumo */
.interacao-resumo {
    font-size: 13px;
    color: #555;
    margin-top: 4px;
    max-height: 2.8em;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* expandido */
.interacao-expandida {
    padding-top: 8px;
}

.interacao-mensagem {
    white-space: pre-wrap;
    font-size: 14px;
    margin-bottom: 8px;
}

/* cores por tipo */
.interacao-panel.criacao { border-left-color: #1976d2; }
.interacao-panel.resposta { border-left-color: #388e3c; }
.interacao-panel.ajuste { border-left-color: #f57c00; }
.interacao-panel.validacao { border-left-color: #7b1fa2; }

/* CARD BASE (FUNDO NEUTRO) */
/* CARD BASE */
.interacao-card {
    background: #f9fafb;
    border-radius: 6px;
    padding: 12px;
    margin-bottom: 10px;
    border-left: 4px solid #1976d2;
}

/* GRID */
.interacao-grid {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 16px;
}

/* META */
.interacao-meta {
    font-size: 13px;
    color: #37474f;
}

.interacao-usuario {
    font-weight: 600;
}

.interacao-tipo {
    font-size: 12px;
    color: #1976d2;
    margin: 4px 0;
}

.interacao-data {
    font-size: 11px;
    color: #607d8b;
}

/* CONTEÚDO */
.interacao-resumo-linha {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.interacao-resumo {
    font-size: 14px;
    color: #455a64;
    max-height: 2.8em;
    overflow: hidden;
    text-overflow: ellipsis;
}

.link-detalhes {
    font-size: 12px;
    white-space: nowrap;
    color: #1976d2;
}

/* DETALHE */
.interacao-detalhe {
    margin-top: 8px;
}

.interacao-mensagem {
    white-space: pre-wrap;
    margin-bottom: 8px;
}

/* CORES POR TIPO */
.interacao-card.criacao { border-left-color: #1976d2; }
.interacao-card.resposta { border-left-color: #388e3c; }
.interacao-card.ajuste { border-left-color: #f57c00; }
.interacao-card.validacao { border-left-color: #7b1fa2; }


@media (max-width: 900px) {
    .interacao-grid {
        grid-template-columns: 1fr;
    }
}

.lista-anexos-card {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.anexo-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    color: #1976d2;
    background: #f9fafb;
}

.anexo-card:hover {
    background: #eef4ff;
}

.anexo-card-icon {
    color: #78909c;
}

.anexo-card-nome {
    flex-grow: 1;
}

.anexo-card-tipo {
    margin-left: 0.25rem;
    color: #777;
    font-size: 0.85em;
}

/* Container geral */
.despachos-container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Linha de inclusão */
.despachos-add-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.despachos-select {
    min-width: 22rem;
}

.despacho-card-compacto {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;

    padding: 0.35rem 0.75rem;

    background: transparent;
    border-bottom: 1px solid rgba(0,0,0,0.08);
}

.despacho-card-compacto:last-child {
    border-bottom: none;
}


/* Texto com largura controlada */
.despacho-texto-compacto {
    font-size: 0.9rem;
    font-weight: 500;

    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Ações na mesma linha */
.despacho-acoes-compacto {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Botões menores e alinhados */
.despacho-acoes-compacto .ui-button {
    height: 1.9rem;
    width: 1.9rem;
    padding: 0;
}




.legenda-pendencias {
    display: flex;
    gap: 20px;
    align-items: center;
    font-size: 0.85rem;
    color: #555;
    padding: 6px 4px;
}

.legenda-item {
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.legenda-icon {
    font-size: 1rem;
}

/* Cores padronizadas */
.legenda-icon.assinatura {
    color: #2196F3;
}

.legenda-icon.aprovacao {
    color: #4CAF50;
}

.legenda-icon.pendencia {
    color: #FF9800;
}

/* Botão de upload - documentos da pendência */
.ui-fileupload-simple.upload-documento-simples > .ui-button.ui-widget.ui-state-default {
    background: #56717d !important;
    border-color: #56717d !important;
    background-image: none !important;
    color: #fff !important;
}

.ui-fileupload-simple.upload-documento-simples > .ui-button.ui-widget.ui-state-default:hover {
    background: #56717d !important;
    border-color: #56717d !important;
    background-image: none !important;
    color: #fff !important;
}

.ui-panel {
    background: var(--primary-color);
}

.toolbar-divider {
  width: 1px;
  height: 24px;
  background: rgba(0,0,0,.15);
  margin: 0 8px;
  display: inline-block;
  vertical-align: middle;
}

    