:root {
	--tr-hover-background-color: silver;
}

*, html {
	font-family: sans-serif;
	font-size: 12px;
}

@media print {
	.no-print, .no-print *,
	.ui-layout-west,
	.header .acao,
	.header .acaoUsuario {
		display: none !important;
	}
		
	.ui-layout-center {
		left: 0 !important;
		width: 100% !important;
	}
}

/* Layout */
.ui-layout-north {
	height: 40px;
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 1000;
}

.ui-layout-west {
	width: 50px;
	height: 100%;
	overflow-x: hidden;
	position: fixed;
	top: 40px;
	left: 0;
	z-index: 1000;
	background: #3A3A3A;
}

.ui-layout-center {
	margin-left: 50px;
	margin-top: 40px;
}

/* Login */
body.login,
body.redefinirSenha {
	background: #756777 url("/jakarta.faces.resource/img/bg-login.jpg.jsf");
}

body.login .box,
body.redefinirSenha .box {
	padding: 30px 0;
	width: 400px;
	margin: 100px auto 0;
	background: linear-gradient(to bottom,  rgba(245,245,245,1) 0%,rgba(255,255,255,1) 19%,rgba(255,255,255,1) 77%,rgba(245,245,245,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#f5f5f5',GradientType=0 ); /* IE6-8 */
	color: #000;
	overflow: hidden;
	box-shadow: 0px 0px 0px 5px rgba(0,0,0,0.15);
}

body.login h2,
body.login h2 {
	margin: 0 0 30px 30px;
}

body.login .entrada,
body.redefinirSenha .entrada {
	margin: 0 30px;
}

body.login .entrada input,
body.redefinirSenha .entrada input {
	width: 100%;
	margin: 7px 0;
}

body.login .botao,
body.redefinirSenha .botao {
	margin: 7px 0 7px 0;
	text-align: right;
}

body.login p {
	margin: 30px 0 0 15px;
}

body.login a, body.login a:visited,
body.redefinirSenha a, body.redefinirSenha a:visited {
	color: #000000;
	text-decoration: none;
}

/* Paginas */
.header {
	background: #080808;
	color: #ffffff;
	height: 40px;
	padding: 0 50px;
	font-size: 110%;
}

.header a {
	color: #ffffff;
	text-decoration: none;
}

.header a:hover {
	color: silver;
	text-decoration: none;
}

.header .logo img {
	max-height: 38px;
}

.header .logo .nome {
	font-size: 260%;
	font-weight: bold;
	text-shadow: 3px 4px 4px gray;
}

.header .aviso {
	padding: 0 2rem;
}

.header .aviso .pi {
	font-size: 1.5rem;
}

#processando {
	width: 3rem;
	height: 3rem;
	position: fixed;
	right: 2rem;
	bottom: 2rem;
	z-index: 300000
}

#processando i {
	font-size: 3rem;
	color: #8B008B;
	font-weight: bold;
}

.acaoUsuario a {
	color: #000000;
}

.acaoUsuario a:hover {
	color: #2D89EF;
}

.acaoUsuario div {
	padding: 5px;
}

.acaoUsuario i {
	padding-right: 5px;
}

.navegacao {
	width: 50px;
}

.navegacao div {
	padding: 10px 0;
	text-align: center;
}	

.navegacao a,
.navegacao a:hover {
	color: #FFFFFF;
}

.navegacao div .pi {
	font-size: 18px;
	opacity: 0.92;
	line-height: 26px;
}

.navegacao a:hover div {
	background: #474747;
}

.titulo {
	font-size: 1.2rem;
	padding: 7px 15px;
	background: #EEEEEE;
	color: #AAAAAA;
}

.corpo {
	padding: 10px;
	font-size: 12px;
}

.ui-layout-center {
	overflow: auto;
}

/* Default */
body {
	color: #333;
	font-family: Sans-serif;
	font-weight: 400;
	margin: 0;
}

hr {
	height: 2px;
	border: none;
	/* IE9 SVG, needs conditional override of 'filter' to 'none' */
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIwLjI1Ii8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iI2Y5ZjlmOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmOWY5ZjkiIHN0b3Atb3BhY2l0eT0iMC4yNSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(left,  rgba(249,249,249,0.25) 0%, rgba(249,249,249,1) 50%, rgba(249,249,249,0.25) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(249,249,249,0.25)), color-stop(50%,rgba(249,249,249,1)), color-stop(100%,rgba(249,249,249,0.25))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left,  rgba(249,249,249,0.25) 0%,rgba(249,249,249,1) 50%,rgba(249,249,249,0.25) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left,  rgba(249,249,249,0.25) 0%,rgba(249,249,249,1) 50%,rgba(249,249,249,0.25) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(left,  rgba(249,249,249,0.25) 0%,rgba(249,249,249,1) 50%,rgba(249,249,249,0.25) 100%); /* IE10+ */
	background: linear-gradient(to right,  rgba(249,249,249,0.25) 0%,rgba(249,249,249,1) 50%,rgba(249,249,249,0.25) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#40f9f9f9', endColorstr='#40f9f9f9',GradientType=1 ); /* IE6-8 */
}

h1 {
	font-size: 32px;
	line-height: 32px;
	font-weight: 300;
}

h2 {
	font-size: 16px;
	line-height: 16px;
}

h3 {
	font-size: 15px;
	line-height: 15px;
}

h4 {
	font-size: 14px;
	line-height: 14px;
}

h5 {
	font-size: 13px;
	line-height: 13px;
}

h6 {
	font-size: 12px;
	line-height: 12px;
}

.fundoInativo {
	background-color: #EEEEEE;
}

.colEven {
	background-color: #ebedf0;
}

.colOdd {
}

.colTop {
	vertical-align: top;
}

.colBottom {
	vertical-align: bottom;
}

.colRight {
	text-align: right;
}

.colCenter {
	text-align: center;
}

.colInativo {
	width: 55px;
	text-align: center;
}

.colId {
	width: 6em;
}

.colRowToggler {
	width: 16px;
}

.colSelecao {
	width: 20px;
	text-align: center !important;
}

.colData {
	width: 65px;
	text-align: center;
}

.colHora {
	width: 30px;
	text-align: center;
}

.colDataHora {
	width: 120px;
	text-align: center;
}

.colVlr {
	width: 80px;
	text-align: right !important;
}

.colVlrUnitario {
	width: 70px;
	text-align: right !important;
}

.colPerc {
	width: 40px;
	text-align: right !important;
}

.colQtde {
	width: 50px;
	text-align: right !important;
}

.colDestaque {
	border-right: 2px solid var(--gray-500) !important;
	border-left: 2px solid var(--gray-500) !important;
}

.tableSorter {
	text-decoration: none;
}

.tableSorter .pi {
	font-size: 80%;
}

.grade td, .grade th {
	padding: 1px 3px;
}

.grade input {
	width: 100%;
}

/* Grafico */
.grKeyCol {
	color: white;
	font-weight: bold;
	padding-right: 5px;
}

.grSerieCol {
	border-left: 1px solid white;
	padding-left: 10px;
}

.grSerieData {
	color: white
}

/* Crud */
.crudAcao,
.colAcao {
	width: 40px;
	text-align: center;
	white-space: nowrap;
}

.crudAcao > *,
.colAcao > * {
	margin: 0 0.25rem;
}

.crudAcao > *:first-child,
.colAcao > *:first-child {
	margin-left: 0;
}

.crudAcao > *:last-child,
.colAcao > *:last-child {
	margin-right: 0;
}

.crudAcao .ui-commandlink,
.crudAcao .ui-commandlink:hover,
.crudAcao .ui-link,
.crudAcao .ui-link:hover,
.colAcao .ui-commandlink,
.colAcao .ui-commandlink:hover,
.colAcao .ui-link,
.colAcao .ui-link:hover {
	text-decoration: none;
}

.barraBotao {
	margin-top: 10px;
	margin-bottom: 10px;
}

.barraBotao button {
	margin: 0 3px;
}

.barraBotao button:first-of-type {
	margin-left: 0;
}

.barraBotao button:last-of-type {
	margin-right: 0;
}

.barraBotaoPP {
	text-align: right;
}

.grid > .col.barraBotao,
.grid > [class*="col"].barraBotao {
	margin: 0;
}

/* Tabelas */
table.semEspaco {
	border-collapse: collapse;
}

.ajusteColLargura table {
	table-layout: auto !important;
}

.ajusteLargura table {
	width: auto !important;
}

table.padrao {
	border-collapse: collapse;
}

table.padrao thead {
	background-color: #EBEDF0;
}

table.padrao td {
	border: 1px solid #d9d9d9;
}

table.padrao td,
table.padrao th {
	border: 1px solid #d9d9d9;
	padding: 4px 10px;
}

table.padrao tr.even,
.tr-even {
	background-color: #ffffff !important;
}

table.padrao tr.odd,
.tr-odd {
	background-color: #fbfcfc !important;
}

table.padrao tr.highlight {
	background-color: #eeeeee;
	color: black;
}

.saldoEstoque tr.produto {
	background-color: #186BA0;
	color: white;
}

/* Avisos */
.msgInfo {
	color: #7A9659;
}

.msgWarn {
	color: #C09853;
}

.msgError {
	color: red;
}

.msgFatal {
	color: red;
}

/* Cubo */
.cuboVisualizacao table th {
	white-space: nowrap;
	padding: 2px;
}

.cuboVisualizacao table td {
	white-space: nowrap;
	padding: 2px;
}

.cuboVisualizacao table td.cd {
	text-align: right;
}

.cuboVisualizacao table th.total, .cuboVisualizacao table td.total {
	font-style: italic;
}

.cuboVisualizacao table td.total {
	background-color: #EBEDF0;
}

.cuboVisualizacao table td, .cuboVisualizacao table tr {
	border: 1px solid #D9D9D9;
}

.cuboVisualizacao table th {
	color: #000000;
	background-color: #EBEDF0;
	font-weight: bold;
	border: 1px solid #D9D9D9;
}

.cuboVisualizacao table {
	border-collapse: collapse;
	border: 1px solid #D9D9D9;
}

/* Campos */
.entry {
	margin-bottom: 0.5em;
}

.entry .label .required, .ui-outputlabel-rfi {
	color: red;
}

.ui-outputlabel.ui-state-error {
	background: none !important;
	color: black !important;
}

.entry .input > * {
	vertical-align: top;
}

.entry.inline br {
	display: none;
}

.entry.inline label {
	vertical-align: middle;
}

.grid > .entry {
	margin-bottom: unset;
}

.grid > .entry .ui-inputfield,
.grid > .entry .ui-selectonemenu,
.grid > .entry .ui-autocomplete,
.grid > .entry .ui-selectcheckboxmenu {
	width: 100%;
}

.grid > .entry .p-datepicker {
	width: 100% !important;
}

.grid > .entry .ui-calendar .ui-inputfield {
	width: calc(100% - 2.357rem) !important;
}

.w-full {
	width: 100% !important;
}

.numeric {
	text-align: right;
}

.parametro .entry {
	margin-bottom: 0 !important;
}

.parametro .busca {
	padding-left: 10px;
	vertical-align: bottom;
}

input:disabled, select:disabled {
	background: #FCFCFC;
}

fieldset {
	border: 1px solid silver;
}

/* Cores */
.verde {
	color: green;
}

.vermelho {
	color: red;
}

/* Outros */
.box {
	border: 1px solid #d5d5d5;
}

.semBorda {
	border: none !important;
}

.fonteMaior {
	font-size: 125%;
}

/* Padroes */
body .ui-datatable thead th .ui-link,
body .ui-datatable thead th .ui-commandlink,
body .ui-datatable tfoot td .ui-link,
body .ui-datatable tfoot td .ui-commandlink,
body .ui-treetable thead th .ui-link,
body .ui-treetable thead th .ui-commandlink,
body .ui-treetable tfoot td .ui-link,
body .ui-treetable tfoot td .ui-commandlink {
	color: unset;
}

body .ui-datatable thead th .ui-link:hover,
body .ui-datatable thead th .ui-commandlink:hover,
body .ui-datatable tfoot td .ui-link:hover,
body .ui-datatable tfoot td .ui-commandlink:hover,
body .ui-treetable thead th .ui-link:hover,
body .ui-treetable thead th .ui-commandlink:hover,
body .ui-treetable tfoot td .ui-link:hover,
body .ui-treetable tfoot td .ui-commandlink:hover {
	text-decoration: none;
}

body .ui-inputfield,
body .ui-button,
body .ui-chkbox {
	line-height: normal;
}

.grid-checkbox > div {
	width: 18rem;
	display: inline-block !important;
	padding: 0.05rem !important;
}

.grid-checkbox > div label {
	width: 15rem;
	display: inline-block !important;
	white-space: nowrap;
	margin: 0 0.5rem !important;
	overflow: hidden;
}