/***********/
/* Classes */
/***********/

:root {
	--color-page: #f5f7fb;
	--color-surface: #ffffff;
	--color-surface-muted: #eef3f8;
	--color-text: #1f2937;
	--color-muted: #64748b;
	--color-border: #d9e2ec;
	--color-primary: #0f5f8f;
	--color-primary-dark: #0b466b;
	--color-primary-soft: #e6f2f8;
	--color-success: #21805d;
	--color-danger: #b42318;
	--color-warning: #b7791f;
	--shadow-sm: 0 1px 2px rgba(15, 23, 42, .08);
	--shadow-md: 0 12px 30px rgba(15, 23, 42, .10);
	--radius-sm: 4px;
	--radius-md: 8px;
}

* {
	box-sizing: border-box;
}

html {
	background: var(--color-page);
}

body {
	background: var(--color-page);
	color: var(--color-text);
	font-size: 1em;
	font-family: "latoregular", "Trebuchet MS", Arial, Helvetica, sans-serif;
	line-height: 1.5;
	margin: 0;
	padding: 0;
}

body.ambiente-local {
	background: #f0fbf3;
}

body.ambiente-teste {
	background: #fff8e7;
}

a:link, a:visited {
	color: var(--color-primary);
	text-decoration: none;
}

a:link:hover, a:visited:hover {
	color: var(--color-primary-dark);
	text-decoration: underline;
}

#main .menu-icon {
	background-image: url("/pesquisa-relatorio/jakarta.faces.resource/menu_icon.png.xhtml?ln=img") !important;
}

#cabecalho {
	background: var(--color-surface);
	border-bottom: 1px solid var(--color-border);
	box-shadow: var(--shadow-sm);
	box-sizing: border-box;
	color: var(--color-text);
	font-size: .95em;
	padding: .9em 1.25em;
	position: relative;
	width: 100%;
}

#cabecalho form {
	margin: 0;
}

#cabecalho .label, #cabecalho .projeto, #cabecalho .sair {
	color: var(--color-primary-dark);
	font-weight: bold;
}

#cabecalho .projeto, #cabecalho .usuario, #cabecalho .usuario .uu,
#cabecalho .usuario .nome, #cabecalho .sair {
	display: inline-block;
	vertical-align: middle;
}

#cabecalho .projeto img {
	margin-right: .35em;
	vertical-align: -2px;
}

#cabecalho .usuario {
	color: var(--color-muted);
}

#cabecalho .sair a {
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	display: inline-block;
	padding: .35em .75em;
	transition: background .18s ease, border-color .18s ease, color .18s ease;
}

#cabecalho .sair a:hover {
	background: var(--color-primary-soft);
	border-color: #b8d7e8;
	text-decoration: none;
}

#main .top {
	color: var(--color-primary-dark);
	font-size: 1.9em;
	font-weight: 700;
	margin: .65em 1em .45em;
	padding: .45em .25em;
	position: relative;
	text-align: center;
}

#rodape {
	background: var(--color-surface);
	border-top: 1px solid var(--color-border);
	box-shadow: 0 -1px 2px rgba(15, 23, 42, .04);
	color: var(--color-muted);
	font-size: .82em;
	margin-top: 3em;
	padding: 2em 1em;
	text-align: center;
}

#rodape .projeto {
	color: var(--color-text);
	font-weight: bold;
}

#cabecalho a:link, #cabecalho a:visited,
#rodape a:link, #rodape a:visited {
	color: var(--color-primary);
	text-decoration: none;
}

#cabecalho a:link:hover, #cabecalho a:visited:hover,
#rodape a:link:hover, #rodape a:visited:hover {
	color: var(--color-primary-dark);
	text-decoration: underline;
}

#main #frmMenu {
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-sm);
	color: var(--color-text);
	overflow: visible;
}

#main #frmMenu a {
	color: var(--color-text);
}

#main #frmMenu .ui-menu,
#main #frmMenu .ui-menubar {
	background: transparent;
	border: 0;
}

#main #frmMenu .ui-menuitem-link {
	border-radius: var(--radius-sm);
	transition: background .18s ease, color .18s ease;
}

#main #frmMenu .ui-menuitem-link:hover,
#main #frmMenu .ui-menuitem-link.ui-state-hover {
	background: var(--color-primary-soft);
	color: var(--color-primary-dark);
}

#main .ui-widget-header {
	background: var(--color-surface-muted);
	border-color: var(--color-border);
	color: var(--color-text);
}

#main .section {
	background: var(--color-surface);
	border: 1px solid var(--color-border);
	box-sizing: border-box;
	margin-bottom: 1em;
	padding: 1.25em;
	position: relative;
}

#main .ui-button,
#main button.ui-button {
	border-radius: var(--radius-sm);
	box-shadow: none;
	font-weight: bold;
	transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

#main .ui-button:hover,
#main button.ui-button:hover {
	box-shadow: var(--shadow-sm);
	transform: translateY(-1px);
}

#main .button-back, #main .button-delete, #main .button-no {
	background: var(--color-danger);
	border: 1px solid var(--color-danger);
	color: #fff;
}

#main .button-update {
	background: var(--color-warning);
	border: 1px solid var(--color-warning);
	color: #fff;
}

#main .button-search {
	background: var(--color-primary);
	border: 1px solid var(--color-primary);
	color: #fff;
}

#main .button-searchClear {
	background: var(--color-primary-soft);
	border: 1px solid #b8d7e8;
	color: var(--color-primary);
	transition: background .18s ease, color .18s ease, border-color .18s ease;
}

#main .button-searchClear:hover {
	background: var(--color-primary);
	border-color: var(--color-primary);
	color: #ffffff;
}

#main .button-bolsa-reitoria,
#main .button-insert, #main .button-save, #main .button-yes {
	background: var(--color-success);
	border: 1px solid var(--color-success);
	color: #fff;
}

#main fieldset {
	border: 1px solid var(--color-border);
	border-radius: var(--radius-md);
	margin-bottom: 1em;
	margin-top: 1em;
	padding: 1em;
}

#main legend {
	color: var(--color-primary-dark);
	font-weight: bold;
	padding: 0 .4em;
}

#main .form .actions {
	margin: 1em;
	margin-bottom: 2em;
	text-align: center;
}

#main .form .actions button {
	font-size: 1.08em;
	margin: .45em;
}

#main .form .field {
	box-sizing: border-box;
	padding: .6em;
	text-align: left;
}

#main .form .field .subtitle {
	color: var(--color-primary);
	display: block;
	font-size: 1.15em;
	font-weight: bold;
	margin-top: 2em;
}

#main .form .field .label {
	color: var(--color-text);
	display: block;
	font-weight: bold;
	margin-bottom: .45em;
	text-align: left;
}

#main .form .field .label * {
	margin-right: .5em;
}

#main .form .field .value {
	text-align: left;
}

#main .form .field span.value {
	word-wrap: break-word;
}

#main .form .field input[type=text].value, #main .form .field .value input[type=text],
#main .form .field textarea.value,
#main .form .field .ui-selectonemenu.value,
#main .form .field .ui-selectcheckboxmenu.value {
	background: #fff;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-sm);
	box-shadow: none;
	box-sizing: border-box;
	display: block;
	font-weight: normal;
	margin: 0;
	width: 100%;
}

#main .form .field .value input[type=text], #main .form .field input[type=text].value {
	padding-bottom: .55em;
	padding-top: .55em;
}

#main .form .field textarea.value {
	line-height: 1.45;
	padding: .65em;
}

#main .form .field .ui-selectcheckboxmenu-multiple-container {
	border: none;
	box-shadow: none;
	padding-bottom: .3em;
	padding-top: .3em;
}

body .ui-selectcheckboxmenu-filter-container input {
	box-shadow: none !important;
	padding: .45em !important;
}

body .ui-selectcheckboxmenu-header .ui-chkbox-box {
	margin-top: .4em;
}

#main .form .field .ui-selectonemenu.value, #main .form .field .ui-selectcheckboxmenu.value {
	background: #fff;
	min-width: 100% !important;
	max-width: 100% !important;
}

#main .form .field .value .ui-selectonemenu-label {
	border: none;
	box-shadow: none;
	box-sizing: border-box;
	font-weight: normal;
	padding-top: .45em;
	padding-bottom: .65em;
}

#main .form .field .value.ui-state-focus, #main .form .field .value .ui-state-focus,
#main input.ui-state-focus, #main textarea.ui-state-focus {
	border-color: var(--color-primary);
	box-shadow: 0 0 0 3px rgba(15, 95, 143, .14);
}

#main .form .field .value button {
	margin-right: .5em;
}

#main .form .field .value .ui-fileupload-buttonbar {
	padding: 0;
	text-align: left;
}

body .ui-selectonemenu-panel .ui-selectonemenu-list-item {
	white-space: normal;
}

#main .ui-fileupload-buttonbar, #main .ui-fileupload-content {
	background: none;
	border: 0;
}

#main .ui-datatable {
	border-radius: var(--radius-md);
	font-size: .86em;
	overflow: hidden;
}

#main .ui-datatable table {
	table-layout: auto;
}

#main .ui-datatable th {
	background: var(--color-surface-muted);
	color: var(--color-text);
	font-weight: bold;
}

#main .ui-datatable tbody tr {
	transition: background .18s ease;
}

#main .ui-datatable tbody tr:hover {
	background: #f8fbfd;
}

#main .ui-datatable .ui-button {
	margin: .25em;
}

#main .export-panel {
	text-align: right;
}

#main .avisosAnexo {
	background: #fff5f5;
	border-left: 4px solid var(--color-danger);
	border-radius: var(--radius-sm);
	color: #8a1c13;
	font-family: sans-serif;
	font-size: 1.05em;
	font-weight: bold;
	padding: 1em;
}

#main .texto-com-advertencia {
	color: var(--color-danger);
	font-weight: bold;
}

#main .paragrafo-advertencia {
	background: #fff5f5;
	border-left: 4px solid var(--color-danger);
	border-radius: var(--radius-sm);
	color: var(--color-danger);
	display: block;
	font-size: 1.1em;
	font-weight: bold;
	margin: 1em 0;
	padding: .8em 1em;
}

#main .ui-wizard {
	box-sizing: border-box;
	padding: 1em 0;
	position: relative;
}

#main .ui-wizard.editar .ui-wizard-step-titles {
	margin-bottom: 1em;
	margin-top: 3em;
}

#main .ui-wizard.visualizar .ui-wizard-step-titles {
	display: none;
}

#main .ui-wizard-navbar {
	position: absolute;
	top: 0;
	width: 100%;
}

#main .ui-wizard-navbar button {
	background: var(--color-primary);
	border: 1px solid var(--color-primary);
	color: #fff;
	font-size: 1.08em;
	margin: .5em 0;
}

#main .ui-wizard .ui-panel {
	margin-top: 1em;
}

#main .ui-dialog {
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-md);
	overflow: hidden;
}

#main .ui-dialog-titlebar {
	background: var(--color-surface);
	border-bottom: 1px solid var(--color-border);
	padding: .7em 2.5em .7em 1em;
}

#main .ui-dialog-title {
	color: var(--color-primary-dark);
	display: block;
	font-size: 1.35em !important;
	font-weight: 700;
	position: relative;
	text-align: center;
	width: 95%;
}

#main .ui-dialog-titlebar-close {
	position: absolute;
	right: .6em;
	top: .55em;
}

#main .ui-dialog-buttonpane {
	text-align: center;
}

body #main .ui-datatable.ui-datatable-reflow tr th .ui-chkbox-box {
	display: block;
	margin: .2em auto;
}

body #main .ui-datatable.ui-datatable-reflow tr td.ui-selection-column {
	text-align: center;
}

body #main .ui-datatable.ui-datatable-reflow tbody tr td .ui-button {
	margin: 1px;
}

body #main .ui-datatable.ui-datatable-reflow tbody tr span.ui-column-title {
	color: var(--color-primary-dark);
	font-weight: bold;
}

body #main .label-subTitle {
	color: var(--color-primary-dark);
	font-size: 1.15em;
	font-weight: bold;
}

body #main .label-sim,
body #main .label-sucesso {
	color: var(--color-success);
	font-weight: bold;
}

body #main .label-nao,
body #main .label-erro {
	color: var(--color-danger);
	font-weight: bold;
}

body #main .label-grandeArea {
	color: var(--color-primary);
	font-weight: bold;
}

.aluno-sem-agencia,
.aluno-sem-conta {
	background-color: #ffe4e1;
}
