* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	font-family: Arial, Verdana, sans-serif;
	font-stretch: normal;
	scrollbar-width: thin; /* "thin" ou "auto" */
	scrollbar-color: var(--cor-campo) var(--cor-fundo);
}

html {
	height: 100%;
}

body {
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	min-width: 400px;
	overflow: auto;
}

body.print {
	display: block;
	font-family: Arial, Helvetica, sans-serif;
		font-size: 10px;
		line-height: 1.35;
		height: auto;
		width: auto;
    margin-left: auto;
    margin-right: auto;
}
	@page {
		size: A4 landscape;
		margin: 12mm 12mm 15mm 12mm;
	}
body.print.retrato {
	width: 210mm;
    min-height: 297mm;
}
body.print.paisagem {
    width: 297mm;
    min-height: 210mm;
}
body.print table{
	border: none;

	}
body.print tr, td{
	break-inside: avoid;
	page-break-inside: avoid;
}

body.login {
	justify-content: center;
}

body.desfocado {
	filter: grayscale(100%) blur(2px);
}

section section {
	padding: 0px;
}

section {
	min-height: 100px;
	user-select: none;
}

#frmVisual {
	margin-left: auto;
	margin-right: auto;
}

a {
	color: var(--cor-conteudo-link);
	text-decoration: none;
}


table.bloco {
	border: none;
}

fieldset {
	border: none;
}

.parDisplay fieldset fieldset {
	border: 1px solid var(--cor-campoBorda);
	border-radius: 10px;
	padding: 10px;
}

#titulo_sis {
	flex: 1;
	text-align: center;
}

.localize {
	background-color: var(--cor-fundo-componente);
	border-radius: 6px;
	display: flex;
	margin: auto;
	align-items: center;
	padding: 6px 10px;
	width: 100%;
	transition: all 0.4s ease;
	border-color: var(--cor-campoBorda);
	border-style: solid;
	border-width: 1px;
	font-size: var(--tamanho-fonte-g);
	margin-top: 3px;;
}

.localize:hover {
	border-color: var(--cor-campo);
	background-color: var(--cor-fundo);
}

.localize i {
	color: var(--cor-fonte);
	margin-right: 10px;
	font-size: var(--tamanho-fonte-g);
}

.localize .chave.empty::before {
	content: attr(data-placeholder);
	color: #bbb;
	position: absolute;
	pointer-events: none;
}

.localize .chave {
	display: block;
	width: 100%;
	text-align: left;
	color: var(--cor-fonte);
	cursor: text;
}

.localize.insucesso .chave, .localize.insucesso i {
	color: var(--cor-erro);
}

.localize.sucesso .chave, .localize.sucesso i {
	color: var(--cor-sucesso);
}

#titulo_sis {
	/* Painel top-down */ .topdown-panel { position:absolute;
	top: calc(100% + 2px);
	left: 140px;
	right: 40px;
	background: var(--cor-fundo);
	border: 1px solid var(--cor-conteudo-borda);
	border-radius: 12px;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
	box-shadow: 0 2px 10px var(--cor-conteudo-sombra);
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transform: translateY(-10px);
	pointer-events: none;
	transition: max-height .3s ease, opacity .2s ease, transform .25s ease;
}

.topdown-panel.open {
	max-height: 100vh;
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
}

.panel-content {
	padding: 16px;
	min-height: 300px;
}

}
.p1 {
	padding: 10px;
	margin-top: 1rem;
}

.datahora {
	font-size: var(--tamanho-fonte-pp);
	color: var(--fundo-cinza-azul);
	padding: 2px;
}

.erro {
	color: var(--cor-erro);
}

.contornoTela .loader {
	transition: 0.5s;
}

#tela {
	position: relative;
}

.contornoTela .loader.hidden {
	opacity: 1;
	display: block;
	transition: 0.9s;
}

.barraTop {
	display: flex;
	margin-left: 0rem;
	padding-right: 0.5rem;
	padding-left: 5px;
	padding-bottom: 0.5rem;
	justify-content: space-between;
	color: var(--cor-fonte);
	border-top-right-radius: 10px;
	border-top-left-radius: 10px;
	align-items: center;
}

.barraTop a {
	color: inherit;
	user-select: none;
}

.barraTop a.corLink {
	color: var(--cor-conteudo-link);
}

.barraTop .nome {
	display: flex;
	align-items: center;
}
body.print .barraTop .nome {
	display: flex;
	align-items: center;
	font-size: 21px;
	font-weight: bold;
}

.barraTop i {
	margin-right: 5px;
}

.barraTop .codigoId {
	font-size: var(--tamanho-fonte-pp);
	border-radius: 5px;
	margin-left: 8px;
	padding: 0px;
	padding-left: 4px;
	padding-right: 4px;
	font-weight: normal;
	vertical-align: middle;
	margin-bottom: 8px;
	margin-top: 8px;
	user-select: text;
}

.barraTop .nome a {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 4px;
}

.barraTop .nome a .vinculos {
	margin-left: 4px;
}

.barraTop .nome a .vinculos:hover {
	color: var(--cor-btn-fundo-acoes);
	font-weight: bold;
}

.barraTop .nome a .vinculos.fa-layer-minus {
	color: var(--cor-btn-fundo-novo);
	font-weight: bold;
}

.barraTop div {
	font-size: var(--tamanho-fonte-gg);
	font-weight: bold;
}

div.destaque {
	padding: 3px 10px;
	border-radius: 8px;
}

div.destaque.claro {
	color: var(--cor-btn);
	background-color: var(--cor-btn-fundo-editar);
	padding: 3px 10px;
}

div.destaque.vivo {
	color: var(--cor-btn);
	background-color: var(--cor-btn-fundo-listar);
	padding: 3px 10px;
}

div.destaque.escuro {
	color: var(--cor-btn);
	background-color: var(--cor-btn-fundo-excluir);
	padding: 3px 10px;
}

.main-content h3 {
	padding: 0.5rem;
	padding-left: 1rem;
	border-bottom: 1px solid var(--cor-conteudo-borda);
}

.switch-container {
	display: flex;
	align-items: center;
	gap: 5px;
	font-family: sans-serif;
	justify-content: flex-end;
}

.switch {
	position: relative;
	display: inline-block;
	width: 35px;
	height: 18.2px;
}

.switch input {
	opacity: 0;
	width: 0;
	height: 0;
}

.slider {
	position: absolute;
	cursor: pointer;
	background-color: var(--cor-btn-fundo-exibir);
	border-radius: 34px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transition: .4s;
}

.slider::before {
	position: absolute;
	content: "";
	height: 14px;
	width: 14px;
	left: 2.1px;
	bottom: 2.1px;
	background-color: var(--cor-fundo);
	border-radius: 50%;
	transition: 0.4s;
}

.campos .slider::before {
	height: 13px;
	width: 13px;
	bottom: 1px;
}

input:checked+.slider {
	background-color: var(--cor-btn-fundo-salvar);
}

.ativavel {
	slider: before{     		
	width: 12px;
	left: 2.1px;
	bottom: 1.1px;
}

.switch {
	width: 25px;
	height: 15.2px;
}

.slider {
	border-radius: 24px;
}

input:checked+.slider {
	background-color: var(--cor-btn-fundo-ativavel);
}

input:checked+.slider::before {
	transform: translateX(8.8px);
}

}
input:checked+.slider::before {
	transform: translateX(16.8px);
}

.switch-container .status {
	font-weight: bold;
	font-size: var(--tamanho-fonte-p);
}

.main-content h3.titulo {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: baseline;
}

.main-content h3.titulo .codigo {
	margin-left: 10px;
	font-weight: normal;
	font-size: var(--tamanho-fonte-pp);
	padding: 5px;
	padding-bottom: 3px;
	border-radius: 5px;
}

.main-content #listagem {
	
}

.main-content #componentes {
	
}

.card {
	background-color: var(--cor-fundo);
	padding: 1.5rem;
	border-radius: 8px;
	box-shadow: 0 2px 4px var(--cor-lateral);
	margin-bottom: 1rem;
}

.conjunto {
	background-color: var(--cor-bloco);
	padding: 0;
	transition: all 0.5s ease;
	margin: 0.5rem;
	/**filter: brightness(110%);**/
	flex: 1 1 calc(calc(var(--tamanho-campo-m)* 2));
}
.dp_cartao .conjunto{
	margin: 0px;
}
.conjunto.duplo {
	flex: 1 1 calc(calc(var(--tamanho-campo-m)* 4));
}

.conjunto.dinamico {
	flex: none;
}

.conjunto:hover {
	filter: brightness(100%);
	box-shadow: 0 6px 10px rgba(0, 0, 0, 0.1);
	transform: translateY(-2px);
}

.conjunto[data-fade=out] span.cursor {
	padding-left: 5px;
	font-weight: normal;
}

.conjunto[data-fade=out] span.cursor:before {
	content: "\f06e";
	color: var(--cor-destaque);
}

.conjunto[data-fade=out] {
	height: min-content;
	flex: none;
}

.conjunto.sendo-arrastado {
	opacity: 0.6;
	outline: 2px dashed #999;
}

/* Classes auxiliares */
.sombras {
	border-radius: 8px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Conteúdo interno */
.conjunto .campos {
	padding: 1.5rem;
	padding-top: 0.5rem;
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
}

.ttcont {
	margin-top: 10px;
}

.conjunto .campofull {
	display: block;
}
.dp_cartao .sombras{
	box-shadow: none;
}
.dp_cartao .conjunto h3{
	display: none;
}
.dp_cartao .conjunto .campos{
	padding: 0px;
}
.conjunto h3 {
	font-size: var(--tamanho-fonte-m);
	color: var(--cor-fonte);
	background-color: var(--cor-bloco);
	padding: 0.8rem;
	padding-left: 0.8rem;
	margin: 0px;
	border-top-right-radius: 10px;
	border-top-left-radius: 10px;
	font-weight: normal;
	user-select: none;
	border-top: 1px solid var(--cor-conteudo-borda);
}

.conjunto h3:has(>i):before {
	display: none;
}

h4 {
	font-size: var(--tamanho-fonte-m);
	padding: 5px;
	padding-left: 8px;
	font-weight: normal;
}

h4 i {
	margin: 3px;
}

.conjunto h3.semIcone:before {
	display: none;
}

.conjunto .cp-grupo {
	margin: 0.4rem 0;
	font-size: var(--tamanho-fonte-p);
	user-select: text;
}

.conjunto .cp-grupo.oculto {
	display: none;
}

.ocultoVisivel {
	visibility: hidden;
}

.oculto, .ocultos {
	display: none;
}

.acao .blocoDuplo {
	display: grid;
	grid-template-columns: minmax(200px, auto) 1fr;
	align-items: start;
	gap: 2rem; /* espaço entre colunas */
	width: 100%;
}

.tabela-scroll {
	max-height: 420px;
	overflow: auto;
}

.relatorio-integracao table {
	width: 100%;
	border-collapse: collapse;
}

.relatorio-integracao th, .relatorio-integracao td {
	border: 1px solid #ddd;
	padding: 6px;
}

.editor {
	min-width: 400px;
}

a.cpesc.selecionado {
	background-color: #7ec8af;
}

/* Footer */
.footer {
	display: flex;
	background-color: var(--cor-lateral);
	color: var(--cor-layout-link);
	padding: 2px;
	text-align: center;
	font-size: var(--tamanho-fonte-pp);
	margin-left: 0px;
	height: 22px;
	justify-content: space-between;
	align-content: center;
	flex-direction: row;
	align-items: center;
	flex-wrap: nowrap;
}

.footer span {
	margin-left: 5px;
	margin-right: 5px;
	color: var(--cor-fundo);
	opacity: 0.6;
}

.assinatura, .assinatura a {
	
}

.rdp span, .rdp a {
	color: var(--cor-layout-link-hover);
}

.cp-grupo input, .cp-grupo div[name] {
	font-size: var(--tamanho-fonte-m);
	border: 1px solid var(--cor-campoBorda);
	box-shadow: inset 0 0px 1px var(--cor-campoBorda);
}

.cp-grupo input.comodiv, .cp-grupo select.comodiv, .cp-grupo textarea.comodiv
	{
	border: none;
	background: transparent;
	font-size: var(--tamanho-fonte-m);
	font-family: inherit;
	color: var(--cor-fonte);
	outline: none;
	padding: 0;
	box-shadow: none;
	appearance: none; /* Remove o estilo nativo */
	-webkit-appearance: none;
	-moz-appearance: none;
}

input.caixaSelecao {
	width: 1rem;
	height: 1rem;
	cursor: pointer;
	accent-color: #007bff;
}

input.caixaSelecao:focus {
	outline: 2px solid #80bdff;
	outline-offset: 2px;
}

input.caixaSelecao:checked {
	box-shadow: 0 0 0 2px #007bff;
}

.nowraper {
	white-space: nowrap;
}

.alt100 {
	height: 100%;
}

.larg100, .larg100[name] {
	width: 100%;
}

.alt500, .alt500[name] {
	height: 500px;
}

.overFlowY {
	overflow-y: auto
}
.autoScroll {
	overflow: auto;
	    height: 100%;
    width: 100%;
}
.overFlowX {
}

.aredondado {
	border-radius: 10px;
}

.borda {
	border: 1px solid var(--cor-conteudo-borda);
}

.bordat {
	border-top: 1px solid var(--cor-conteudo-borda);
}

.bordab {
	border-bottom: 1px solid var(--cor-conteudo-borda);
}

.bordab4 {
	border-bottom: 4px solid var(--cor-conteudo-borda);
}

.dir30 {
	display: inline-block;
	width: 30px;
	text-align: right;
}

.pad5,input.pad5 {
	padding: 5px;
}

.padb10 {
	padding-bottom: 10px;
}

.padt10 {
	padding-top: 10px;
}

.padl10 {
	padding-left: 10px;
}

.padl15 {
	padding-left: 10px;
}

.marginl5 {
	margin-left: 5px;
}

.margin5 {
	margin: 5px;
}

.margin10 {
	margin: 10px;
}
.gridAuto{
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 8px;
	
}
.gridAuto .btn{
	flex: 1 1 150px;
    min-width: 150px;
}
.duas-linhas {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.flexSem {
	display: flex;
	flex-wrap: nowrap;
}

.flexDois, .campos.flexDois {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}

.centerGap {
	gap: 3px;
	align-items: center;
}

.fundoCinza {
	background-color: var(--cor-fundo-componente);
}

.corAcao {
	background-color: var(--cor-btn-fundo-permissao);
}

.flexivel {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.cp-grupo .label {
	font-size: var(--tamanho-fonte-p);
	font-weight: bold;
}

fieldset .contorno {
	flex-wrap: wrap;
	justify-content: space-between;
}

.acao .label {
	color: var(--cor-fonte);
	font-weight: bold;
	margin-bottom: 5px;
	margin-left: 0px;
}

.cp-grupo .label.cursor, .cp-grupo .cursor[acao], .corLink, .label.corLink
	{
	color: var(--cor-conteudo-link);
}

.button-container {
	text-align: right;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	padding: 2px;
	user-select: none;
}

.msgOperacao {
	position: fixed;
	top: 60px;
	right: 15px;
	padding-right: 2rem
}

sucesso, alerta, erro {
	display: flex;
	padding: 8px 12px;
	border-radius: 5px;
	font-size: var(--tamanho-fonte-g);
	font-weight: bold;
	text-align: center;
	width: fit-content;
	margin: 5px auto;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
	transition: opacity 2s ease;
	opacity: 0.8;
}

.fontPP {
	font-size: var(--tamanho-fonte-pp);
}

.fontP {
	font-size: var(--tamanho-fonte-p);
}

.fontG {
	font-size: var(--tamanho-fonte-g);
}

.abs {
	position: absolute;
	z-index: 100;
}

.rel {
	position: relative;
}
/* Mensagem de Sucesso (Verde) */
sucesso, .msg-sucesso {
	background-color: var(--cor-fundo);
	color: var(--cor-sucesso);
	border: 1px solid var(--cor-sucesso);
}

/* Mensagem de Alerta (Amarelo) */
alerta, .msg-alerta {
	background-color: var(--cor-alerta-fundo);
	color: var(--cor-alerta);
	border: 1px solid var(--cor-alerta);
}

INPUT[disabled=disabled], INPUT[readonly=readonly], SELECT[disabled=disabled],
	SELECT[readonly=readonly], textarea[disabled=disabled], textarea[readonly=readonly],
	.disabled {
	background-color: var(--cor-campo);
	filter: grayscale(0.5);
	transition: none;
	border: none;
	box-shadow: none;
}
/* Mensagem de Erro (Vermelho) */
erro, .msg-erro {
	background-color: var(--cor-erro-fundo);
	color: var(--cor-erro);
	border: 1px solid var(--cor-erro);
}

.msg-container {
	position: absolute;
	top: 60px; /* distância do topo */
	right: 40px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 10px;
	max-width: 600px;
	margin: 0 auto;
}

.msg {
	padding: 12px 16px;
	border-radius: 6px;
	font-size: 0.95rem;
	line-height: 1.4;
	word-wrap: break-word;
	animation: fadeIn 0.3s ease;
}

.msg-sucesso {
	border-left: 4px solid var(--cor-sucesso);
}

.msg-erro {
	border-left: 4px solid var(--cor-erro);
}

.msg-alerta {
	border-left: 4px solid var(--cor-alerta);
}

keyframes fadeIn {from { opacity:0;
	transform: translateY(4px);
}

to {
	opacity: 1;
	transform: translateY(0);
}

}
.selecao .controle {
	margin-bottom: 3px;
}

.selecao>div {
	box-shadow: none;
	background-color: inherit;
	border-bottom: none;
}

.selecao  div.search-container {
	display: flex;
	justify-content: space-between;
	white-space: nowrap;
	align-items: center;
}

.selecao  div.search-container .limteqtd {
	display: flex;
	align-items: center;
}

.selecao  div.search-container .limteqtd input {
	margin-left: 3px;
	text-align: left;
}

.acao>div, .blocoFlex {
	display: flex;
	flex-wrap: wrap;
	border-radius: 10px;
	justify-content: flex-start;
}

.acao>div>*, .blocoFlex>* {
	will-change: transform;
	transition: transform 0.25s ease, opacity 0.25s ease;
}

.login .acao>div {
	justify-content: center;
}

.contornoTela  div.pnlAcoes {
	padding: 5px;
	padding-left: 15px;
	padding-right: 15px;
	display: flex;
	justify-content: space-between;
	/* Um botão vai pra esquerda, outro pra direita */
	align-items: center;
	flex-direction: row-reverse;
}

.selecao .cp-grupo {
	background-color: var(--cor-fundo);
	border-color: var(--cor-campoBorda);
}

div h4 i, div h3 i, .paginar td i {
	margin-right: 5px;
	font-size: 16px;
}

.loader {
	position: absolute;
	top: 30%;
	left: calc(50% - 75px);
	transform: translate(-50%, -50%); /* Centraliza no meio */
	z-index: 99999;
	border: 8px solid var(--cor-componente-loader);
	border-top: 8px solid var(--cor-lateral);
	border-radius: 50%;
	width: 150px;
	height: 150px;
	animation: spin 1s linear infinite;
}

.loader.parcial {
	position: inherit;
	width: 100%;
	aspect-ratio: 1;
	height: auto;
	border-width: 6px;
	user-select: none;
	max-width: 150px;
	top: 0px;
}

.loader.parcial.abs {
	position: absolute;
}

.hidden {
	opacity: 0;
}

.fade-in {
	transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}

[role=dialog] {
	width: 900px;
	height: 400px;
}

.logsCampos {
	overflow: auto;
	user-select: text;
}

.logsCampos .item {
	flex: 1 1 calc(calc(var(--tamanho-campo-m)* 2));
}

.logsCampos .add {
	color: var(--cor-sucesso);
}

.logsCampos .nome {
	display: inline-block;
	margin: 3px;
	font-weight: bold;
}

.logsCampos .rem {
	color: var(--cor-erro);
}

.logsCampos .rem:after {
	font-family: 'Font Awesome 5 Pro';
	font-weight: normal;
	content: "\f347";
	margin-left: 3px;
	margin-right: 3px;
	color: var(--cor-layout-link-disabled);
}

.logsCampos .valor {
	font-size: var(--tamanho-fonte-pp);
	white-space: nowrap;
}

.collapsed { .main-content { margin-left:50px;
	
}

.logo-container {
	display: none;
	transition: transform 0.5s;
}

.assinatura {
	display: none;
}

}
h2#titulo_sis {
	position: fixed;
	left: 50%;
	transform: translateX(-50%);
}

.radio-group {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	padding: 5px;
}

.radio-group span {
	display: flex;
	align-items: center;
	gap: 6px;
}

.radio-group input[type="radio"] {
	height: 18px;
	width: 18px;
	cursor: pointer;
	box-shadow: none;
}

.cp-grupo[tipo=opcaoselecionavel] .label {
	font-weight: bold;
}

.radio-group input[type="radio"]:checked+label::before {
	border-color: var(--cor-fonte);
	background: radial-gradient(circle at center, #007bff 50%, transparent 51%);
}

.radio-group > span {
	display: flex;
	align-items: center;
	min-width: 130px;
}

.radio-group span input[type=radio] {
	margin-right: 3px;
	width: 16px;
	height: 16px;
	padding: 1px;
	border-radius: 5px;
	border-color: var(--cor-conteudo-borda);
	cursor: pointer;
}

.radio-group span input[type=radio]:checked {
	background-color: var(--cor-btn-fundo-ativavel);
	border-color: var(--cor-conteudo-borda);
}

ul.jqtree-tree a {
	padding: 0px;
}

ul.jqtree-tree { .status .icone { display:flex;
	align-items: center;
	background-color: #a67f0a;
	padding: 0px;
	padding-bottom: 2px;
	gap: 0px; /* espaço entre os elementos */
}

.nodo i {
	flex: 0 0 auto; /* sempre fixo na esquerda */
	margin-left: 8px;
	margin-right: 6px;
}

.sub {
	padding-top: 5px;
}

.status.icone .texto {
	flex: 1; /* ocupa todo o espaço central */
	text-align: center;
}

.status.icone font {
	flex: 0 0 auto; /* sempre fixo na direita */
	margin-left: auto; /* empurra pra direita */
	background-color: var(--cor-campo);
	color: var(--cor-conteudo-disable);
	padding: 4px;
	padding-top: 5px;
	display: inline-block;
	font-size: var(--tamanho-fonte-pp);
}

.status.icone span {
	width: 100%;
	display: inline-block;
	background-color: var(--cor-campo);
	color: var(--cor-fonte);
	border-bottom-left-radius: 8px;
	padding: 3px;
	padding-left: 5px;
}

}
.timepicker-wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

button.timepicker-btn {
	border: none;
	background: transparent;
	cursor: pointer;
	font-size: 18px;
	margin-left: 6px;
}

.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year
	{
	width: 35%;
}

.ui-datepicker-month {
	background: var(--cor-campo);
	font-size: var(--tamanho-fonte-m);
	border-radius: 4px;
	padding: 2px 4px;
	color: var(--cor-fonte);
}

.ui-datepicker-year {
	border-radius: 4px;
	padding: 2px 4px;
	font-size: var(--tamanho-fonte-m);
	color: var(--cor-fonte);
}

.avatar--video {
	--avatar-size: 15rem;
}

.avatar--cadastro, .qrcode--cadastro {
	--avatar-size: calc(var(--tamanho-campo-g));
}

.avatar--perfil {
	--avatar-size: calc(var(--tamanho-campo-p));
}

.avatar--lista {
	--avatar-size: 54px;
}


.avatar--cadastro, .avatar--perfil, .avatar--lista {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	width: var(--avatar-size);
	gap: 0.5em;
}

.avatar--lista   .avatar {
	padding: 0px;
	border-radius: 5px;
}

.avatar--lista   .avatar i {
	font-size: 32px;
}
.campos [seletor=Digitalizacao] .avatar--lista{
	--avatar-size: 108px;
}
div.avatar {
	height: var(--avatar-size);
	aspect-ratio: 3/4;
	overflow: hidden;
	background-color: var(--cor-fundo);
	padding: 5px;
	margin: auto;
	max-height: 350px;
	max-width: 350px;
}

div.qrcode {
	width: var(--avatar-size);
	height: var(--avatar-size);
	aspect-ratio: 1/1;
	overflow: hidden;
	background-color: var(--cor-fundo);
	padding: 5px;
}

.avatar {
	border-radius: 8px;
}

div.qrcode {
	cursor: pointer;
	background-color: #fff;
}

#dropzone {
	border: 1.5px dashed var(--cor-borda);
	padding: 12px;
	text-align: center;
	transition: background 0.3s;
}

#dropZone:has(video) {
	border: none;
	padding: 0;
	background: #000;
}

#dropZone:has(canvas) {
	background-color: transparent;
}

.avatar video {
	width: auto;
	height: 320px;
	border-radius: 10px;
	background: #000;
}

.avatar.dragover {
	border: 2px dashed var(--cor-campoBorda);
	background: var(--cor-campo);
}

.avatar_img, .qrcode_img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
	border: 1px solid var(--cor-campoBorda);
	padding: 2px;
}

.imagem_digi {
	display: block;
	width: auto;
	height: auto;
	max-width: 300px;
	max-height: 300px;
	margin: 5px auto;
	border: 2px solid var(--cor-campoBorda);
	padding: 3px;
	border-radius: 9px;
	object-fit: contain;
	transition: all 0.3s ease-in-out;
}
img.imagem_digi,img.zoom {
	cursor: zoom-in;
}
.imagem_digi.ampliada {
	top: 50%;
	left: 50%;
	z-index: 1000;
	width: 700px;
	max-width: 90vw;
	height: auto;
	max-height: 90vh;
	margin: 0;
	border: 5px solid var(--cor-campoBorda);
	padding: 10px;
	border-radius: 9px;
	cursor: zoom-out;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.8);
}

.imagem_digi_painel {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

.imagem_digi_painel img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: calc(100vh - 220px);
	object-fit: contain;
	border: 2px solid var(--cor-campoBorda);
	padding: 3px;
}

pre.digi_pre.arquivo {
	max-width: 980px;
	overflow: auto;
}

pre.digi_pre {
	width: 500px;
	overflow: auto;
	font-size: var(--tamanho-fonte-ppp);
	max-height: 200px;
}
.iconeBloco{
	font-size: 54px;	
}
.digi_html {
	max-height: 170px;
	overflow: auto;
}

.acoesFoto, .acoesQRCode {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	justify-content: center;
	width: var(--avatar-size, 48px);
}

.acoesQRCode button {
	width: 100%;
}

div.acoesFoto label {
	box-sizing: content-box;
	text-align: center;
	width: 100%;
}

.button-container-avatar {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

button#btnFoto {
	width: 100%;
}

.button-container-avatar .btn {
	flex: 1 1 calc(25% - 0.5rem);
	gap: 0.5em;
}

.button-container-avatar .btn[data-ativo=false] {
	background-color: var(--cor-btn-fundo-exibir);
}

div.acoesFoto input[type="file"], div.button-container-avatar.ocultar,
	input.dz-input {
	display: none;
}

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

.digitalizacao.ui-dialog-content {
	box-sizing: border-box;
	width: auto !important;
	overflow-x: hidden;
}

.digitalizacao {
	width: 100%;
	box-sizing: border-box;
	padding: 0.75em;
	border-radius: 8px;
}

.digitalizacao > div:first-child {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5em;
	padding-bottom: 0.75em;
	margin-bottom: 0.75em;
	border-bottom: 1px solid var(--cor-borda);
}

.digitalizacao > div:first-child .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4em;
	min-height: 34px;
}

#listaArquivos {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	margin-top: 0;
	list-style: none;
	gap: 0.75em;
	padding: 0;
}

#listaArquivos li {
	padding: 10px;
	border-radius: 5px;
	display: flex;
	flex: 1 1 220px;
	justify-content: space-between;
	align-items: stretch;
	transition: background 0.2s;
	gap: 0.5em;
	flex-direction: column;
	box-sizing: border-box;
	max-width: 100%;
	background: var(--cor-fundo-componente);
	border: 1px solid var(--cor-borda);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
}

#listaArquivos input.nomeArquivoDigitalizacao {
	width: 100%;
	box-sizing: border-box;
}

li div.acoesDigitalizacao {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	gap: 0.5em;
	box-sizing: border-box;
}

#listaArquivos .acoesDigitalizacao .ac_field,
#listaArquivos .acoesDigitalizacao .iAutoBusca,
#listaArquivos .acoesDigitalizacao select,
#listaArquivos .acoesDigitalizacao input[type="text"] {
	flex: 1 1 180px;
	min-width: 0;
	width: 100%;
	box-sizing: border-box;
}

#listaArquivos li:hover {
	background: #e3e3e3;
}

#listaArquivos .nome-arquivo {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 70%;
	margin-right: 0.5em;
}

.remover-arquivo {
	background: #ff4d4f;
	border: none;
	color: #fff;
	padding: 6px 10px;
	border-radius: 4px;
	cursor: pointer;
	font-size: 12px;
	min-height: 34px;
	white-space: nowrap;
}

.remover-arquivo:hover {
	background: #d9363e;
}

#msgDigitalizacao {
	margin-top: 0.75em;
	padding: 0.65em 0.8em;
	border-radius: 6px;
}

div#idLogImportacaoErro {
	padding-left: 10%;
}

.campos.classeLogs {
	display: -webkit-box;
	max-height: 450px;
	overflow-y: auto;
}

#logProcessamento info {
	font-size: var(--tamanho-fonte-pp);
	display: block;
	margin-top: 5px;
	padding: 3px;
	max-width: var(--tamanho-campo-gg);
}

#logProcessamento info:hover {
	background-color: var(--cor-campo);
	border-radius: 5px;
}

#logProcessamento info resultado {
	display: block;
}

#logProcessamento info:before {
	font-family: 'Font Awesome 5 Pro';
	font-weight: 400;
	content: "\f129";
	margin-right: 3px;
}

#logProcessamento .erro span {
	color: var(--cor-erro);
}

#logProcessamento .erro:before {
	content: "\f00d";
}

#logProcessamento  span {
	font-weight: bold;
}

#logProcessamento .alerta {
	color: var(--cor-alerta);
}

#logProcessamento .alerta:before {
	content: "\21";
}

#logProcessamento .sucesso span {
	color: var(--cor-sucesso);
}

#logProcessamento .sucesso:before {
	content: "\f00c";
}

.disponiveis .parPos .mn, .parDisplay .parPos .mn {
	white-space: nowrap;
	user-select: text;
}

pre.json {
	text-align: left;
	color: var(--cor-conteudo-disable);
	overflow: auto;
}

.ui-contextmenu {
	z-index: 9999;
}

.dot {
	width: 16px;
	height: 16px;
	border-radius: 999px;
	box-shadow: 0px 1px 4px 0px var(--cor-conteudo-sombra);
	flex: 0 0 auto;
}

.lnSituacao {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border-radius: 12px;
	white-space: nowrap;
}

.online {
	background-color: var(--cor-btn-fundo-salvar);
}

.offline {
	background-color: var(--cor-btn-fundo-excluir);
}

.autoQuebra {
	word-break: break-all;
	overflow-wrap: anywhere;
	white-space: normal;
}

.table {
	display: table;
	width: 100%;
	border-collapse: collapse;
}

.row {
	display: table-row;
}

.cell {
	display: table-cell;
	border: 1px solid var(--cor-conteudo-borda);
	padding: 8px;
}

[name] .medio, .conjunto [name] .medio, [tipo=hora] input {
	width: calc(var(--tamanho-campo-m));
}

[name] .medio_ {
	width: calc(var(--tamanho-campo-m_));
}

[name] .grande_ {
	width: calc(var(--tamanho-campo-g_));
}

[name] .grande {
	width: calc(var(--tamanho-campo-gg));
}

[name] .pequeno_ {
	width: calc(var(--tamanho-campo-p_));
}

[name] .pequeno,.conjunto [name] .pequeno,  [tipo=hora] input {
	width: calc(var(--tamanho-campo-p));
}

[name] .minusculo {
	width: calc(var(--tamanho-campo-pp));
}

[name] .minusculo_ {
	width: calc(var(--tamanho-campo-pp_));
}

[name] .minimo_ {
	width: calc(var(--tamanho-campo-ppp_));
}

[name] .minimo {
	width: calc(var(--tamanho-campo-ppp));
}

.cp-grupo[tipo="caixaselecao"] {
	width: calc(var(--tamanho-campo-m)+ 18px);
	display: inline-flex;
	align-content: flex-start;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-direction: row;
	align-items: center;
	cursor: default;
	transition: all 0.3s ease;
	border-radius: 2px;
}

.cp-grupo[tipo="caixaselecao"]:hover {
	box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.45);
}

.cp-grupo span.caixaSelecaoExibir {
	width: calc(var(--tamanho-campo-m)+ 18px);
	display: inline-flex;
	align-content: flex-start;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.componente-container input, .componente-container textarea {
	width: calc(var(--tamanho-campo-gg));
}

.componente-container .cp-grupo input.ac_field {
	width: calc(var(--tamanho-campo-gg)- 8px);
	min-width: calc(var(--tamanho-campo-gg)- 8px);
}

.componente-container textarea, .conjunto textarea {
	width: calc(var(--tamanho-campo-gg)+ 10px);
	height: var(--tamanho-texto-altura)
}

.auto textarea {
	width: var(--tamanho-campo-gg);
}

.campos input[name="senha"].auto_ok, .campos input[name="confirmar"].auto_ok
	{
	background-color: var(--fundo-obrigatorio-suceso);
}

.campos input[name="senha"].auto_erro, .campos input[name="confirmar"].auto_erro
	{
	background-color: var(--fundo-obrigatorio);
}

.campos input[name="senha"].auto_obrigatorio, .campos input[name="confirmar"].auto_obrigatorio
	{
	background-color: var(--fundo-obrigatorio);
}
section[modo=print] .conjunto {
	margin: 0px;
		break-inside: avoid;
	page-break-inside: avoid;
	padding: 3px;
}
section[modo=print] .conjunto {
}
section[modo=print] .conjunto .campos{
	padding: 0px;
	display: block;
}
section[modo=print]  .conjunto h3{
	border-top: none;
	margin-bottom: 0px;
	padding: 3px;
}
section[modo=print]  .sombras{
	box-shadow: none;
	border: 1px solid var(--cor-lateral);
	margin: 5px;
}
section[modo=print]  .sombras .sombras{
	border:none;
}
section[modo=print] .campos  .client-table{
	border: 1px solid var(--cor-lateral);
	box-shadow: none;
}
section[modo=print] .exibir >div> #listagem{
page-break-before: always;
    break-before: page;	
}

.contatosUsuarioRelatorio {
	max-width: 100%;
	overflow-x: auto;
	height: 750px;
}

.contatosUsuarioRelatorio .tableRelatorio {
	width: 100%;
	table-layout: fixed;
}

.contatosUsuarioRelatorio .tableRelatorio th,
.contatosUsuarioRelatorio .tableRelatorio td {
	overflow-wrap: anywhere;
}
.contatosUsuarioRelatorio .tableRelatorio th:nth-child(1) {
    width: 18%; /* Data */
}

.contatosUsuarioRelatorio .tableRelatorio th:nth-child(2) {
    width: 46%; /* Cliente */
}

.contatosUsuarioRelatorio .tableRelatorio th:nth-child(3) {
    width: 12%; /* Qualificação */
}

.contatosUsuarioRelatorio .tableRelatorio th:nth-child(4) {
    width: 24%; /* Status */
}
