@charset "utf-8";
*{ padding: 0; margin: 0; border: 0; outline: 0; }
body{ font-family: sans-serif; }

/* ################################ */
/* ### FORMULÁRIO DEFAULT - INI ### */
/* ################################ */
datalist{ display: none; } /* FALLBACK OLD BROWSERS */

/* FIX FIREFOX BUTTON EXTRA PADDING */
button::-moz-focus-inner, input[type=button]::-moz-focus-inner, input[type=submit]::-moz-focus-inner, input[type=reset]::-moz-focus-inner{
	border: 0;
	padding: 0;
}
/* FIX WIDTH BEHAVIOR OF INPUT, TEXTAREA */
input, textarea, input[type="search"], ._form-input, ._form-box-msg{ box-sizing: border-box; }
._form{ }
._form input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly]{
	background-color: #F5F5F5;
	border-color: #dddddd;
	cursor: not-allowed;
}
/* ._form input:not([type="submit"]):not([type="button"]), => RETIRADO POR :not SOBRESCREVER COM PRIORIDADE TODOS INPUTS (EX. checkbox) */
._form input, ._form select, ._form textarea, ._form-input, ._form-box-msg{
	font-family: inherit;
	background-repeat: no-repeat;
	background-color: #ffffff;
	padding: 2px;
	border: 1px solid #b9bdc1;
	/* border-radius: 3px; */
	margin-top: 2px; margin-bottom: 2px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15) inset;
	vertical-align: middle;
}
._form select{ padding: 1px 2px; } /* FIX > SELECT [O HEIGHT É MAIOR QUE OUTROS ELEMENTOS] */
/* ._form-input{ margin-left: -3px; } FIX DIFERENÇA COM MARGEM */
._form input[type="checkbox"], ._form input[type="radio"]{ /* CHECKBOX E RADIO */
	border: none; /* FIX > ALGUNS NAVEGADORES NÃO PERMITEM BORDA, DISTORCENDO LAYOUTS */
	vertical-align: baseline; /* FIX > RADIO & CHECKBOX NÃO ALINHAM EM MIDDLE CORRETAMENTE */
}

._form .cke_chrome{ /* CKEDITOR */
	box-sizing: border-box;
	display: inline-block;
	vertical-align: middle;
	margin-top: 2px; margin-bottom: 2px;
}
._form .cke_source{ /* CKEDITOR */
	padding: 0px;
	margin: 0px;
	border-radius: 0px;
	border: none;
	all: initial; /* EXPERIMENTAL RESET! DOESN'T WORK YET */

	background-color: #ffffff;
	font-family: 'Courier New', 'Monospace';
	font-size: small;
}
._form-box-msg{ /* CAIXA AVISOS */
	color: #9b4d3c;
	background-color: #fffcdf;
	padding: 5px;
}
._form-box-msg p{ }/* CAIXA AVISOS -> MENSAGENS */
._form label{
	display: inline-block;
	margin-right: 5px;
	text-align: right;
	padding: 3px 0;
	vertical-align: middle;
}
._form input + label, ._form input + input, ._form select + label, ._form label + label{
	display: inline;
	/* margin-left: 5px; */
}
._form input[type="checkbox"] + label, ._form input[type="radio"] + label{ /* RETIRA MARGEM PARA CHECKBOX E RADIO */
	margin-left: 0px;
}
._form textarea, ._form select{ /* TEXTAREA COMPORTA DIFERENTE DOS DEMAIS ELEMENTOS */
	vertical-align: middle;
	overflow: auto; /* FIX IE */
}
._form input[type=submit], ._form input[type=button], ._form input[type=reset], ._form button, ._form ._button, ._form .fileinput-button{
	font-family: inherit;
	border: 1px solid #b9bdc1;
	/* border-radius: 3px; */
	border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
	text-shadow: 0px -1px 0 rgba(0, 0, 0, 0.25);
	cursor: pointer;
	vertical-align: middle;
}
._form input[type=submit]:active, ._form input[type=button]:active, ._form input[type=reset]:active, ._form button:active, ._form ._button:active, ._form .fileinput-button:active, ._form .btn-highlight:active{
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.25);
}
._form .fileinput-button, ._form ._button{
	text-decoration: none;
	position: relative;
	overflow: hidden;
	display: inline-block;
}
._form .fileinput-button input[type="file"]{
	opacity: 0; filter: alpha(opacity=0); /* IE FALLBACK */
	position: absolute; top: 0; left: 0;
	margin: 0; padding: 0;
	cursor: pointer;

	/* PARA FUNCIONAR CURSOR -> POINTER */
	width: auto;
	transform: translate(-400px, 10px) scale(4);

	/*
	border: solid transparent;
	border-width: 0 0 100px 200px;
	direction: ltr;
	*/
}

/* CHECKBOX OPTIONS */
._form .check_options, ._form .check_options_list{ box-sizing: border-box; }
._form .filter_checks input[type="checkbox"]{ width: auto; }
._form .filter_checks input[type="search"]{ width: auto; margin-top: 0; margin-bottom: 0; }
._form .check_options{ position: relative; overflow: hidden; }
/* ._form .check_options:before{ content: "."; visibility: hidden; } /* ENABLE PADDING */
._form .check_options .check_options_padding{ visibility: hidden; } /* ENABLE PADDING */
._form .check_options > div.check_options_list{
	margin: 0; padding: 0;
	position: absolute; top: -1px; left: -1px;
	width: 100%;
	box-sizing: initial;
}
._form .check_options:hover{ overflow: visible; z-index: 1; }
._form .check_options:hover > div.check_options_list{ overflow: auto; max-height: 250px; }
._form .check_options .check_options_list label input{ width: auto; }
._form .check_options .check_options_list label{ display: block; width: 100%; text-align: left; padding: 3px 0; }
._form .check_options .filter_checks + .check_options_list{ top: 39px; }

._field_error{ /* ESTILO PARA CAMPOS INVÁLIDOS */
	outline: 1px solid #EE5F5B !important;
	box-shadow: 0 1px 3px rgba(238, 95, 91, 0.2) inset !important;
}

._content-loading{ /* ACONSELHADO USAR UM POSITION RELATIVE NO ELEMENTO (DIV) QUE SERÁ UTILIZADO */
	position: absolute;
	top: 0px; left: 0px;
	width: 100%; height: 100%;
	z-index: 200;
	opacity: 0.5; filter: alpha(opacity=50); /* IE FALLBACK */
	background: url("../img/ajax-loader.gif") center center no-repeat #ffffff;
}
/* TEXTAREA LIMIT CHAR */
._form ._textarea_length{
	border: 1px solid #b9bdc1;
	/* border-radius: 3px; */
	font-size: 12px;
	padding: 2px 5px;
}

/* ################################ */
/* ### FORMULÁRIO DEFAULT - END ### */
/* ################################ */

/* ############### */
/* ### GENERAL ### */
/* ############### */
._error{
	display: block;
	border: 2px solid red;
	color: green;
}
._debug{
	display: block;
	border: 2px solid blue;
	color: green;
	clear: both;
}

/* ##################### */
/* ### LISTA IMAGENS ### */
/* ##################### */
/* THUMBS -> BACKGROUND DIMENSIONADOS ALINHADO MEIO  */
._list-img-bg ._img, ._img-bg{
	position: relative;
	background-position: 50% 50%; background-repeat: no-repeat; background-size: cover;
	width: 100px; height: 100px;
	display: inline-block; /* MAY CAUSE 3px MARGIN-BOTTON IF USED INSIDE <a>, FORCE USING display: block OR float: left; */
}
._list-img-bg ._img{ float: left; margin-right: 10px; margin-bottom: 10px; }
._list-img-bg ._legend{ /* LEGEND */
	/* bottom: -22px; */
	top: 105px; /* AJUSTE MELHOR PARA MULTIPLAS LINHAS - HEIGHT DA IMAGEM + MARGEM ADICIONAL PARA LEGENDA */
	display: block;
	position: absolute;
	text-align: center;
	width: 100%;
	word-wrap: break-word;
}
._list-img-bg ._img:hover, ._img-bg:hover{
	/* border: 1px solid #b4b4b4; */
}
._list-img-bg ._img img, ._img-bg img{
	width: 100%; height: 100%;
	display: none;
	/* opacity: 0; */
}

/* ########################## */
/* ### CLASSES AUXILIARES ### */
/* ########################## */
._clear, ._clear_all{ clear: both; }
._clear_after:after, ._clear_all:after{ content: "."; display: block; height: 0; clear: both; visibility: hidden; }
._margin-center{ margin-left: auto; margin-right: auto; }
._text-center{ text-align: center; }
._text-whitespace{ white-space: pre-line; }
._to-left{ float: left; }
._to-right{ float: right; }
._hover_opac, ._hover_opac_a a, ._hover_opacinv, ._hover_opacinv_a a{ cursor: pointer; text-decoration: none; transition: all 0.1s linear 0s; }
._hover_opac > *, ._hover_opac_a a > *, ._hover_opacinv > *, ._hover_opacinv_a a > *{ transform: rotate(0); } /* FIX WEIRD BEHAVIOR WITH PERCENTAGE DIMENSION */
._hover_opac:hover, ._hover_opac_a a:hover, ._hover_opacinv, ._hover_opacinv_a a{ opacity: 0.8; filter: alpha(opacity=80); /* IE FALLBACK */ }
._hover_opacinv:hover, ._hover_opacinv_a a:hover{ opacity: 1; filter: alpha(opacity=100); /* IE FALLBACK */ }
._hover_over, ._hover_over_a a{ position: relative; }
._hover_over::before, ._hover_over_a a::before{
	content: "";
	background-repeat: no-repeat; background-position: center center; background-color: rgba(0,0,0,0.6);
	position: absolute; top: 0; left: 0; z-index: 2;
	width: 100%; height: 100%;
	opacity: 0;
	transition: all 0.2s linear 0s;
}
._hover_over:hover::before, ._hover_over_a a:hover::before{ opacity: 1; }
/* ALTERNATIVE EFFECT
._hover_over::before, ._hover_over_a a::before{ width: 0; height: 0; left: 50%; top: 50%; }
._hover_over:hover::before, ._hover_over_a a:hover::before{ width: 100%; height: 100%; left: 0; top: 0; }
*/

/* ########################## */
/* ### PAGINATION DEFAULT ### */
/* ########################## */
._pagination{ text-align: center; }
._pagination a{
	color: #333333;
	text-decoration: none;
	margin-left: 5px;
	margin-right: 5px;
	padding: 5px 10px;
	background-color: #ececec;
	display: inline-block;
}
._pagination a[rel="this_page"]{ color: #ffffff; background-color: #1a638a; }
._pagination ._count_page{ margin-top: 10px; font-size: 10px; display: none;}

/* ################################## */
/* ### AJUSTES FRAMEWORKS, JQUERY ### */
/* ################################## */
.ui-datepicker .ui-datepicker-title select{ color: black; } /* FIX > DATEPICKER WITH NORMALIZE.CSS */
.ui-widget-content{ margin-bottom: 15px; } /* DIALOG -> RESIZE FICAR MAIS VISIVEL NO IE */
.ui-autocomplete-loading{ background: url("../img/ajax-loader.gif") right center no-repeat #ffffff; } /* LOADING EM AUTOCOMPLETE */
.feedback-btn{ z-index: 200; } /* FEEDBACK LIRABRY > BUTTON */

/* ################ */
/* ### TOOLTIPS ### */
/* ################ */
body .ui-tooltip{ border: 1px solid #a8a9ab; }
.ui-tooltip{
	color: #1a5c92;
	background: #eff2f7;
	padding: 0;
	white-space: pre-line;
}
.ui-tooltip-content{ position: relative; padding: 10px; }
.ui-tooltip-content::after{
	position: absolute;
	width: 15px; height: 16px;
	background: none repeat scroll 0 0 #eff2f7;
	transform: rotate(45deg);
	content: "";
}
.right .ui-tooltip-content::after{
	border-bottom: 1px solid #b0b1b2; border-left: 1px solid #b0b1b2;
	top: 47%; left: -9px;
}
.left .ui-tooltip-content::after{
	border-top: 1px solid #b0b1b2; border-right: 1px solid #b0b1b2;
	top: 47%; right: -9px;
}
.top .ui-tooltip-content::after{
	border-right: 1px solid #b0b1b2; border-bottom: 1px solid #b0b1b2;
	left: 45%; bottom: -9px;
}
.bottom .ui-tooltip-content::after{
	border-left: 1px solid #b0b1b2; border-top: 1px solid #b0b1b2;
	left: 45%; top: -9px;
}

/* ANIMATIONS */
/* USE EX.: animation: spin 2s infinite linear; */
@keyframes spin{
	0%{transform: rotate(0deg);}
	100%{transform: rotate(360deg);}
}