/*
 * Trovão Template
 * Shell, navigation and interactive components used by the application.
 * This file replaces the Remark site layer; Bootstrap remains the temporary
 * compatibility base for the existing page markup.
 */

:root
{
	--trovao-navbar-height: 66px;
	--trovao-menu-width: 260px;
	--trovao-menu-fold-width: 90px;
	--trovao-font-family: Muli, "Helvetica Neue", Arial, sans-serif;
	--trovao-menu-bg: #0C756F;
	--trovao-menu-bg-dark: #095F5A;
	--trovao-menu-hover: #0A6964;
	--trovao-menu-active: #FDCF6F;
	--trovao-menu-active-hover: #F5C45E;
	--trovao-menu-sub-active: #F8E6AA;
	--trovao-menu-sub-text: rgba(255, 255, 255, 0.76);
	--trovao-menu-sub-guide: rgba(255, 255, 255, 0.20);
	--trovao-nav-border: #E6E3DA;
	--trovao-nav-hover: #F5F2E9;
	--trovao-nav-text: #3F4A47;
	--trovao-nav-icon: #202B28;
	--trovao-ink: #000201;
	--trovao-page-bg: #F1F4F5;
	--trovao-surface-bg: #FFFFFF;
	--trovao-surface-border: #E7E3D9;
	--trovao-shadow: 0 8px 24px rgba(0, 32, 30, 0.12);
	--trovao-transition: 180ms ease;
}

/* Document and page shell */

html,
body
{
	min-height: 100%;
	background-color: var(--trovao-page-bg);
}

html.disable-scrolling,
html.disable-scrolling body
{
	overflow: hidden;
}

body
{
	padding-top: var(--trovao-navbar-height);
	font-family: var(--trovao-font-family);
}

body.layout-full
{
	padding-top: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.tooltip,
.popover
{
	font-family: var(--trovao-font-family);
}

.page
{
	position: relative;
	min-height: calc(100vh - var(--trovao-navbar-height));
	background-color: var(--trovao-page-bg);
	transition: margin-left var(--trovao-transition), transform var(--trovao-transition);
}

body.layout-full .page
{
	min-height: 100vh;
}

.page-content
{
	padding: 1.0715rem;
}

.site-menubar-fold .page,
.site-menubar-fold .site-footer
{
	margin-left: var(--trovao-menu-fold-width);
}

.site-menubar-unfold .page,
.site-menubar-unfold .site-footer
{
	margin-left: var(--trovao-menu-width);
}

/* Navbar */

.site-navbar
{
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 1500;
	display: grid;
	grid-template-columns: var(--trovao-menu-width) minmax(0, 1fr);
	width: 100%;
	min-height: var(--trovao-navbar-height);
	height: var(--trovao-navbar-height);
	padding: 0;
	background-color: #FFFFFF;
	border: 0;
	border-bottom: 1px solid var(--trovao-nav-border);
	box-shadow: 0 1px 5px rgba(0, 2, 1, 0.06);
}

.site-navbar .navbar-header
{
	display: flex;
	flex: 0 0 var(--trovao-menu-width);
	align-items: center;
	width: var(--trovao-menu-width);
	min-width: var(--trovao-menu-width);
	max-width: var(--trovao-menu-width);
	height: var(--trovao-navbar-height);
	padding: 0;
	color: #FFFFFF;
	background-color: var(--trovao-menu-bg);
	border-right: 1px solid var(--trovao-nav-border);
}

.site-navbar .navbar-brand
{
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: center;
	min-width: 0;
	height: var(--trovao-navbar-height);
	margin: 0 auto;
	padding: 0 12px;
	color: #FFFFFF;
	cursor: pointer;
}

.site-navbar .navbar-brand-logo
{
	width: 36px;
	height: 36px;
	object-fit: contain;
}

.site-navbar .navbar-brand-text
{
	margin-left: 10px;
	font-size: 18px;
	font-weight: 600;
}

.site-navbar .navbar-container
{
	display: flex;
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	max-width: none;
	height: var(--trovao-navbar-height);
	padding: 0 15px;
	background-color: #FFFFFF !important;
}

.site-navbar .navbar-collapse-toolbar
{
	display: flex !important;
	flex: 1 1 auto;
	align-items: stretch;
	justify-content: flex-start;
	min-width: 0;
	width: 100%;
	height: var(--trovao-navbar-height);
	padding: 0;
}

.site-navbar .navbar-collapse-toolbar::before,
.site-navbar .navbar-collapse-toolbar::after
{
	display: none;
	content: none;
}

.site-navbar .navbar-toolbar
{
	display: flex;
	flex-flow: row nowrap;
	align-items: stretch;
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-navbar .navbar-toolbar > .nav-item
{
	position: relative;
	display: flex;
	align-items: stretch;
}

.site-navbar .navbar-toolbar > .nav-item > .nav-link
{
	display: flex;
	align-items: center;
	min-height: var(--trovao-navbar-height);
	padding: 0 18px;
	color: var(--trovao-nav-text) !important;
	text-decoration: none;
	transition: background-color var(--trovao-transition), color var(--trovao-transition);
}

.site-navbar .navbar-toolbar > .nav-item:not(.bg-danger) > .nav-link:hover,
.site-navbar .navbar-toolbar > .nav-item:not(.bg-danger) > .nav-link:focus,
.site-navbar .navbar-toolbar > .nav-item.show:not(.bg-danger) > .nav-link
{
	color: var(--trovao-menu-bg-dark) !important;
	background-color: var(--trovao-nav-hover) !important;
}

.site-navbar .navbar-toolbar > .nav-item:not(.bg-danger) > .nav-link .icon,
.site-navbar .navbar-toolbar > .nav-item:not(.bg-danger) > .nav-link .fas,
.site-navbar .navbar-toolbar > .nav-item:not(.bg-danger) > .nav-link .far,
.site-navbar .navbar-toolbar > .nav-item:not(.bg-danger) > .nav-link .fa-solid
{
	color: var(--trovao-nav-icon) !important;
}

.site-navbar .navbar-right > .nav-item:not(.bg-danger)
{
	border-left: 1px solid var(--trovao-nav-border) !important;
}

.site-navbar .navbar-toggler
{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	padding: 0;
	color: inherit;
	background: transparent;
	border: 0;
	cursor: pointer;
}

@media (min-width: 768px)
{
	.site-navbar .navbar-header > .navbar-toggler
	{
		display: none;
	}

	.site-navbar .navbar-toolbar-right
	{
		margin-right: -15px;
		margin-left: auto;
	}
}

.site-navbar .navbar-header .navbar-toggler,
.site-navbar .navbar-header .navbar-brand,
.site-navbar .navbar-header .navbar-brand-text
{
	color: #FFFFFF !important;
}

.hamburger
{
	position: relative;
	display: inline-block;
	width: 20px;
	height: 14px;
	font-size: 0;
}

.hamburger::before,
.hamburger::after,
.hamburger .hamburger-bar
{
	position: absolute;
	left: 0;
	width: 20px;
	height: 2px;
	content: "";
	background-color: currentColor;
	border-radius: 2px;
	transition: transform var(--trovao-transition), width var(--trovao-transition);
}

.hamburger::before { top: 0; }
.hamburger .hamburger-bar { top: 6px; }
.hamburger::after { top: 12px; }

.site-menubar-unfold .hamburger-arrow-left::before
{
	width: 11px;
	transform: translate(0, 2px) rotate(-35deg);
}

.site-menubar-unfold .hamburger-arrow-left::after
{
	width: 11px;
	transform: translate(0, -2px) rotate(35deg);
}

/* Menubar */

.site-menubar
{
	position: fixed;
	top: var(--trovao-navbar-height);
	bottom: 0;
	left: 0;
	padding-top: 10px;
	z-index: 1400;
	width: var(--trovao-menu-width);
	font-family: Muli, "Helvetica Neue", Arial, sans-serif;
	color: #FFFFFF;
	background-color: var(--trovao-menu-bg);
	box-shadow: none;
	transition: width var(--trovao-transition), transform var(--trovao-transition), top var(--trovao-transition);
}

.site-menubar-body
{
	height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	scrollbar-width: thin;
	scrollbar-color: rgba(255, 255, 255, 0.32) transparent;
}

.site-menubar .scrollable-container,
.site-menubar .scrollable-content
{
	height: auto;
	min-height: 100%;
}

.site-menubar ul
{
	margin: 0;
	padding: 0;
	list-style: none;
}

.site-menubar a,
.site-menubar a:hover,
.site-menubar a:focus
{
	text-decoration: none;
	outline: 0;
}

.site-menu
{
	padding: 0 0 20px;
	font-size: 14px;
}

.site-menu-item
{
	position: relative;
	white-space: nowrap;
}

.site-menu-item > a
{
	position: relative;
	display: flex;
	align-items: center;
	min-height: 38px;
	color: #FFFFFF;
	cursor: pointer;
	user-select: none;
}

.site-menu-icon
{
	display: block;
	flex: 0 0 24px;
	width: 24px;
	font-size: 20px;
	text-align: center;
}

.site-menu-title
{
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.site-menu-arrow
{
	position: absolute;
	top: 50%;
	right: 18px;
	width: 8px;
	height: 8px;
	margin-top: -5px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform var(--trovao-transition);
}

.site-menu-item.open > a > .site-menu-arrow
{
	transform: rotate(225deg) translate(-2px, -2px);
}

.site-menubar-unfold .site-menu > .site-menu-item > a
{
	width: calc(100% - 24px);
	min-height: 42px;
	margin: 4px 12px;
	padding: 3px 30px;
	border-radius: 10px;
	line-height: 22px;
	transition: background-color var(--trovao-transition), color var(--trovao-transition);
}

.site-menubar-unfold .site-menu-icon
{
	margin-right: 14px;
}

.site-menu > .site-menu-item:hover > a,
.site-menu > .site-menu-item.hover > a,
.site-menu .site-menu-sub > .site-menu-item:hover > a,
.site-menu .site-menu-sub > .site-menu-item.hover > a
{
	color: #FFFFFF !important;
	background-color: var(--trovao-menu-hover) !important;
}

.site-menu > .site-menu-item.open
{
	background-color: var(--trovao-menu-bg-dark);
}

.site-menu > .site-menu-item.open > a
{
	color: #FFFFFF;
	background-color: var(--trovao-menu-bg-dark);
}

.site-menu > .site-menu-item.active
{
	background-color: var(--trovao-menu-bg-dark);
}

.site-menu > .site-menu-item.active > a,
.site-menu > .site-menu-item > a.animsition-link.active
{
	color: var(--trovao-ink) !important;
	background-color: var(--trovao-menu-active) !important;
}

.site-menu > .site-menu-item.active > a .site-menu-title,
.site-menu > .site-menu-item.active > a .site-menu-icon,
.site-menu > .site-menu-item.active > a .site-menu-arrow,
.site-menu > .site-menu-item > a.animsition-link.active .site-menu-title,
.site-menu > .site-menu-item > a.animsition-link.active .site-menu-icon
{
	color: var(--trovao-ink) !important;
}

.site-menu > .site-menu-item.active:hover > a,
.site-menu > .site-menu-item > a.animsition-link.active:hover
{
	background-color: var(--trovao-menu-active-hover) !important;
}

.site-menubar-unfold .site-menu > .site-menu-item.open,
.site-menubar-unfold .site-menu > .site-menu-item.active
{
	background-color: transparent;
}

.site-menubar-unfold .site-menu-sub
{
	position: relative;
	display: none;
	padding: 4px 0 6px;
	line-height: 22px;
}

.site-menubar-unfold .site-menu-item.open > .site-menu-sub
{
	display: block;
}

.site-menubar-unfold .site-menu-sub::before
{
	position: absolute;
	top: 6px;
	bottom: 8px;
	left: 22px;
	width: 1px;
	content: "";
	background-color: var(--trovao-menu-sub-guide);
}

.site-menubar-unfold .site-menu-sub > .site-menu-item > a
{
	width: calc(100% - 42px);
	min-height: 34px;
	margin: 2px 12px 2px 30px;
	padding: 0 20px 0 15px;
	color: var(--trovao-menu-sub-text);
	border-radius: 8px;
	line-height: 34px;
}

.site-menu-sub > .site-menu-item > a.active,
.site-menu-item.has-sub.active .site-menu-sub a.active,
.site-menu-item.has-sub.open .site-menu-sub a.active
{
	color: var(--trovao-ink) !important;
	background-color: var(--trovao-menu-sub-active) !important;
}

.site-menu-sub > .site-menu-item > a.active:hover
{
	background-color: var(--trovao-menu-active) !important;
}

.site-menu .site-menu-item.split
{
	min-height: 16px;
	line-height: 16px;
}

.site-menubar-footer
{
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.site-menubar-footer > a
{
	color: #FFFFFF;
	background-color: var(--trovao-menu-bg-dark);
}

.site-menubar-footer > a:hover,
.site-menubar-footer > a:focus
{
	background-color: var(--trovao-menu-hover);
}

/* Folded menubar */

.site-menubar-fold .site-menubar
{
	width: var(--trovao-menu-fold-width);
}

.site-menubar-fold .site-navbar
{
	grid-template-columns: var(--trovao-menu-fold-width) minmax(0, 1fr);
}

.site-menubar-fold .site-navbar .navbar-header
{
	flex-basis: var(--trovao-menu-fold-width);
	width: var(--trovao-menu-fold-width);
	min-width: var(--trovao-menu-fold-width);
	max-width: var(--trovao-menu-fold-width);
}

.site-menubar-fold .site-navbar .navbar-container
{
	max-width: none;
}

.site-menubar-fold .site-navbar .navbar-brand
{
	justify-content: center;
	padding: 0;
}

.site-menubar-fold .site-navbar .navbar-brand-text
{
	display: none;
}

.site-menubar-fold .site-menu
{
	overflow: visible;
}

.site-menubar-fold .site-menubar-body,
.site-menubar-fold .site-menubar .scrollable-container,
.site-menubar-fold .site-menubar .scrollable-content
{
	overflow: visible !important;
}

.site-menubar-fold .site-menu > .site-menu-item > a
{
	width: var(--trovao-menu-fold-width);
	height: 60px;
	margin: 0;
	padding: 0;
	border-radius: 0;
	line-height: 60px;
}

.site-menubar-fold .site-menu > .site-menu-item.active > a,
.site-menubar-fold .site-menu > .site-menu-item > a.animsition-link.active
{
	color: #FFFFFF !important;
	background-color: transparent !important;
}

.site-menubar-fold .site-menu > .site-menu-item.active > a .site-menu-icon,
.site-menubar-fold .site-menu > .site-menu-item.active > a .site-menu-title,
.site-menubar-fold .site-menu > .site-menu-item.active > a .site-menu-arrow
{
	color: #FFFFFF !important;
}

.site-menubar-fold .site-menu > .site-menu-item > a .site-menu-icon
{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	margin: 0;
	font-size: 24px;
	line-height: 60px;
	text-align: center;
}

.site-menubar-fold .site-menu > .site-menu-item > a .site-menu-title
{
	position: absolute;
	top: 0;
	left: var(--trovao-menu-fold-width);
	z-index: 2;
	display: block;
	width: 240px;
	max-width: 240px;
	height: 60px;
	padding: 0 30px;
	font-size: 14px;
	line-height: 60px;
	text-align: left;
	color: #FFFFFF;
	background-color: var(--trovao-menu-bg-dark) !important;
	border-radius: 0;
	visibility: hidden;
	opacity: 0;
}

.site-menubar-fold .site-menu > .site-menu-item > a .site-menu-arrow
{
	display: none;
}

.site-menubar-fold .site-menu > .site-menu-item:hover > a .site-menu-title,
.site-menubar-fold .site-menu > .site-menu-item.hover > a .site-menu-title
{
	visibility: visible;
	opacity: 1;
}

.site-menubar-fold .site-menu > .site-menu-item > .site-menu-sub
{
	position: absolute;
	top: 60px;
	left: var(--trovao-menu-fold-width);
	z-index: 1;
	display: block;
	width: 240px;
	max-height: calc(100vh - var(--trovao-navbar-height) - 60px);
	padding: 5px 0;
	overflow-y: auto;
	background-color: var(--trovao-menu-bg-dark);
	border-radius: 0;
	box-shadow: none;
	visibility: hidden;
	opacity: 0;
	transition: visibility var(--trovao-transition), opacity var(--trovao-transition);
}

.site-menubar-fold .site-menu > .site-menu-item:hover > .site-menu-sub,
.site-menubar-fold .site-menu > .site-menu-item.hover > .site-menu-sub
{
	visibility: visible;
	opacity: 1;
}

.site-menubar-fold .site-menu-sub > .site-menu-item > a
{
	padding: 0 30px;
	color: var(--trovao-menu-sub-text);
	line-height: 34px;
}

/* Dropdowns */

.dropdown-menu
{
	z-index: 1600;
	margin-top: 1px;
	border-color: var(--trovao-surface-border);
	box-shadow: var(--trovao-shadow);
}

.dropup > .dropdown-menu
{
	margin-top: 0;
	margin-bottom: 1px;
}

.dropdown-menu.show
{
	display: block;
}

a.dropdown-item
{
	color: #5D666F;
}

.dropdown-item.disabled
{
	color: #CCC !important;
	cursor: not-allowed !important;
	pointer-events: none;
}

.dropdown-item.bg-danger:hover
{
	color: #FFF;
}

div.dropdown-item.no-hover:hover
{
	color: #76838F;
	text-decoration: none;
	background-color: transparent;
}

.file-attachment > .list-group-item.btn
{
	color: #555;
	white-space: nowrap;
	text-overflow: ellipsis;
	border-right: 2px solid #CCD5DC;
	overflow: hidden;
	transition: border-color 150ms ease-in-out, box-shadow 150ms ease-in-out;
}

.file-attachment > .dropdown-toggle
{
	height: 43.5px;
}

.dropdown-menu-media
{
	width: min(380px, calc(100vw - 24px));
	margin: 0;
	overflow: hidden;
}

.dropdown-menu-header,
.dropdown-menu-footer
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 16px;
}

.dropdown-menu-header
{
	border-bottom: 1px solid var(--trovao-surface-border);
}

.dropdown-menu-footer
{
	border-top: 1px solid var(--trovao-surface-border);
}

.dropdown-menu-media > .list-group
{
	max-height: min(420px, calc(100vh - 120px));
	overflow-y: auto;
}

#site-navbar-collapse .dropdown-menu-left .scrollable-container
{
	height: 100% !important;
}

#site-navbar-collapse .media-item-dropdown-info
{
	margin: 0;
	padding: 20px;
	font-size: 14px;
	line-height: 20px;
	text-align: justify;
}

/* Panels and collapses */

.panel
{
	--trovao-panel-radius: 0.286rem;
	position: relative;
	margin-bottom: 0;
	background-color: var(--trovao-surface-bg);
	border: 0 solid transparent;
	border-radius: var(--trovao-panel-radius);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}

.panel-heading
{
	position: relative;
	padding: 0;
	background-color: var(--trovao-surface-bg);
	border-bottom: 1px solid transparent;
	border-top-left-radius: var(--trovao-panel-radius);
	border-top-right-radius: var(--trovao-panel-radius);
}

.panel-actions
{
	position: absolute;
	top: 50%;
	right: 30px;
	z-index: 1;
	margin: auto;
	transform: translateY(-50%);
}

.panel-title
{
	display: block;
	padding: 20px 30px;
	margin-top: 0;
	margin-bottom: 0;
	font-size: 18px;
	color: #37474F;
}

.panel-title > .icon
{
	margin-right: 10px;
}

.panel-title > .badge
{
	margin-left: 10px;
}

.panel-title .small,
.panel-title small
{
	color: #76838F;
}

.panel-body
{
	position: relative;
	padding: 30px;
	background-color: var(--trovao-surface-bg);
	border-bottom-right-radius: var(--trovao-panel-radius);
	border-bottom-left-radius: var(--trovao-panel-radius);
}

.panel-body::after
{
	display: block;
	clear: both;
	content: "";
}

.panel-body > :last-child
{
	margin-bottom: 0;
}

.panel-footer
{
	padding: 10px 30px;
	background-color: var(--trovao-surface-bg);
	border-top: 1px solid #E4EAEC;
	border-bottom-right-radius: var(--trovao-panel-radius);
	border-bottom-left-radius: var(--trovao-panel-radius);
}

.panel-group
{
	margin-bottom: 22px;
}

.panel-group .panel
{
	margin-bottom: 0;
	background-color: var(--trovao-surface-bg);
	border-radius: 0.286rem;
	box-shadow: none;
}

.panel-group .panel + .panel
{
	margin-top: 10px;
}

.panel-group .panel-title[data-toggle="collapse"]
{
	position: relative;
	padding: 15px 30px;
	font-size: 1rem;
	text-decoration: none;
}

.panel-group .panel-title[data-toggle="collapse"]::before,
.panel-group .panel-title[data-toggle="collapse"]::after
{
	position: absolute;
	top: 15px;
	right: 30px;
	width: 22px;
	height: 22px;
	font-family: inherit;
	font-size: 22px;
	font-weight: 400;
	line-height: 20px;
	color: #76838F;
	text-align: center;
	transition: all 300ms linear;
}

.panel-group .panel-title[data-toggle="collapse"]::before
{
	content: "+";
	opacity: 0.4;
}

.panel-group .panel-title[data-toggle="collapse"]::after
{
	content: "−";
	opacity: 0;
	transform: rotate(-180deg);
}

.panel-group .panel-title[data-toggle="collapse"][aria-expanded="true"]::before
{
	opacity: 0;
	transform: rotate(180deg);
}

.panel-group .panel-title[data-toggle="collapse"][aria-expanded="true"]::after
{
	opacity: 1;
	transform: rotate(0);
}

.panel-group .panel-title[data-toggle="collapse"]:hover,
.panel-group .panel-title[data-toggle="collapse"]:focus
{
	color: #76838F;
	text-decoration: none;
	outline: 0;
}

.panel-group .panel-heading
{
	border-bottom: 0;
}

.panel-group .panel-heading + .panel-collapse
{
	margin: 0;
}

.panel-group .panel-heading + .panel-collapse > .list-group
{
	border-top: 1px solid #E4EAEC;
}

.panel-group .panel-collapse
{
	background-color: var(--trovao-surface-bg);
}

.panel-group .panel-collapse .panel-body
{
	background-color: var(--trovao-surface-bg);
}

.panel-group .panel-footer
{
	border-top: 0;
}

.panel-group .panel-footer + .panel-collapse .panel-body
{
	border-bottom: 1px solid #E4EAEC;
}

@media (max-width: 479px)
{
	.panel-actions
	{
		right: 20px;
	}
}

.panel-group-continuous .panel
{
	border-radius: 0;
}

.panel-group-continuous .panel:first-child
{
	border-radius: 0.286rem 0.286rem 0 0;
}

.panel-group-continuous .panel:last-child
{
	border-radius: 0 0 0.286rem 0.286rem;
}

.panel-group-continuous .panel + .panel
{
	margin-top: 0;
	border-top: 1px solid #E4EAEC;
}

.panel-group-simple .panel
{
	background: transparent;
}

.panel-group-simple .panel-title[data-toggle="collapse"]
{
	padding-bottom: 10px;
	padding-left: 0;
}

.panel-group-simple .panel-title[data-toggle="collapse"]::before,
.panel-group-simple .panel-title[data-toggle="collapse"]::after
{
	right: 5px;
}

.panel-group-simple .panel-collapse,
.panel-group-simple .panel-collapse .panel-body
{
	background: transparent;
}

.panel-group-simple .panel + .panel
{
	margin-top: 0;
}

/* Collapse and tabs */

.collapse:not(.show)
{
	display: none;
}

.collapsing
{
	position: relative;
	height: 0;
	overflow: hidden;
	transition: height 250ms ease;
}

.tab-content > .tab-pane
{
	display: none;
}

.tab-content > .active
{
	display: block;
}

[data-toggle="tab"]:focus-visible,
[data-toggle="dropdown"]:focus-visible,
[data-toggle="collapse"]:focus-visible,
[data-toggle="menubar"]:focus-visible
{
	outline: 2px solid var(--trovao-menu-active);
	outline-offset: 2px;
}

/* Tooltips */

.trovao-tooltip
{
	position: fixed;
	z-index: 2000;
	display: block;
	max-width: min(320px, calc(100vw - 20px));
	margin: 0;
	pointer-events: none;
	opacity: 0;
	transition: opacity 120ms ease;
}

.trovao-tooltip.show
{
	opacity: 1;
}

.trovao-tooltip .tooltip-inner
{
	max-width: 320px;
	padding: 7px 10px;
	font-size: 12px;
	line-height: 1.45;
	color: #FFFFFF;
	text-align: left;
	background-color: #1F2927;
	border-radius: 5px;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.18);
}

.trovao-tooltip .arrow
{
	position: absolute;
	width: 0;
	height: 0;
	border: 5px solid transparent;
}

.trovao-tooltip .arrow::before,
.trovao-tooltip .arrow::after
{
	display: none;
	content: none;
}

.trovao-tooltip.bs-tooltip-top .arrow
{
	top: 100%;
	left: 50%;
	margin-left: -5px;
	border-top-color: #1F2927;
}

.trovao-tooltip.bs-tooltip-bottom .arrow
{
	bottom: 100%;
	left: 50%;
	margin-left: -5px;
	border-bottom-color: #1F2927;
}

.trovao-tooltip.bs-tooltip-left .arrow
{
	top: 50%;
	left: 100%;
	margin-top: -5px;
	border-left-color: #1F2927;
}

.trovao-tooltip.bs-tooltip-right .arrow
{
	top: 50%;
	right: 100%;
	margin-top: -5px;
	border-right-color: #1F2927;
}

/* Content surfaces retained from the current Trovão theme */

.page-content .card.card-shadow,
.page-content .panel.panel-bordered,
.page-content > .panel,
.page-content > .panel-group.card-shadow
{
	--trovao-panel-radius: 6px;
	background-color: var(--trovao-surface-bg);
	border: 1px solid var(--trovao-surface-border);
	border-radius: var(--trovao-panel-radius);
}

.page-content > .panel-group.card-shadow > .panel
{
	--trovao-panel-radius: 6px;
	border-radius: inherit;
}

.page-content .card.card-shadow > hr,
.page-content .panel.panel-bordered > .panel-heading,
.page-content > .panel-group.card-shadow .panel-collapse
{
	border-color: var(--trovao-surface-border) !important;
}

.trovao-menubar-backdrop
{
	position: fixed;
	top: var(--trovao-navbar-height);
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1390;
	display: none;
	background-color: rgba(0, 20, 19, 0.42);
	backdrop-filter: blur(1px);
}

/* Responsive states */

@media (max-width: 1199px) and (min-width: 768px)
{
	.site-navbar .navbar-toolbar > .nav-item > .nav-link
	{
		padding-right: 13px;
		padding-left: 13px;
	}
}

@media (max-width: 767px)
{
	body
	{
		padding-top: var(--trovao-navbar-height);
	}

	.page-content
	{
		padding: 10px;
	}

	.site-navbar
	{
		display: block;
		height: auto;
	}

	.site-navbar .navbar-header
	{
		width: 100%;
		min-width: 100%;
		max-width: 100%;
		flex-basis: 100%;
		justify-content: space-between;
		border-right: 0;
	}

	.site-navbar .navbar-container
	{
		display: block;
		width: 100%;
		max-width: none;
		height: auto;
	}

	.site-navbar .navbar-header > .navbar-toggler
	{
		display: inline-flex;
		flex: 0 0 44px;
	}

	.site-navbar .navbar-collapse-toolbar
	{
		display: none !important;
		width: 100%;
		height: auto;
		min-height: var(--trovao-navbar-height);
		background-color: #FFFFFF;
		box-shadow: 0 3px 8px rgba(0, 0, 0, 0.08);
	}

	.site-navbar .navbar-collapse-toolbar.show,
	.site-navbar .navbar-collapse-toolbar.collapsing
	{
		display: flex !important;
		flex-wrap: wrap;
	}

	.site-navbar .navbar-toolbar
	{
		flex: 1 1 auto;
	}

	.site-navbar .navbar-toolbar.navbar-right
	{
		justify-content: flex-end;
	}

	.site-navbar .navbar-toolbar > .nav-item > .nav-link
	{
		min-height: var(--trovao-navbar-height);
		padding: 0 12px;
	}

	.site-navbar .navbar-toolbar > .nav-item > .nav-link .small,
	.site-navbar .navbar-toolbar > .nav-item > .nav-link div:not(.badge)
	{
		max-width: 150px;
	}

	body.site-navbar-collapse-show
	{
		padding-top: calc(var(--trovao-navbar-height) * 2);
	}

	.site-navbar-collapse-show .site-menubar,
	.site-navbar-collapse-show .trovao-menubar-backdrop
	{
		top: calc(var(--trovao-navbar-height) * 2);
	}

	.site-menubar
	{
		width: var(--trovao-menu-width);
		transform: translateX(-100%);
	}

	.site-menubar-hide .site-menubar
	{
		transform: translateX(-100%);
	}

	.site-menubar-open .site-menubar
	{
		transform: translateX(0);
	}

	.site-menubar-open .trovao-menubar-backdrop
	{
		display: block;
	}

	.site-menubar-fold .page,
	.site-menubar-unfold .page,
	.site-menubar-fold .site-footer,
	.site-menubar-unfold .site-footer
	{
		margin-left: 0;
	}

	body.site-menubar-open
	{
		overflow: hidden;
	}

	.site-menubar-open .page
	{
		pointer-events: none;
	}

	.site-menubar-unfold .site-menu > .site-menu-item > a
	{
		padding-right: 22px;
		padding-left: 22px;
	}

	.dropdown-menu-media
	{
		position: fixed;
		top: calc(var(--trovao-navbar-height) + 6px);
		right: 12px;
		left: 12px;
		width: auto;
	}
}

@media (prefers-reduced-motion: reduce)
{
	.page,
	.site-menubar,
	.site-menu-arrow,
	.collapsing,
	.trovao-tooltip
	{
		transition-duration: 1ms !important;
	}
}

/* ========================================================================== */
/* Application styles (formerly style.css)                                  */
/* ========================================================================== */

body
{
	-webkit-font-smoothing: auto;
	-moz-osx-font-smoothing: auto;
	-webkit-text-stroke: 0.45px rgba(0, 0, 0, 0.1);
	color: #555;
	font-size: 1.1rem;
}

.vertical-align-middle
{
	vertical-align: middle;
}

@media only screen and (max-width: 480px)
{
	.row label
	{
		font-weight: 700;
	}
}


/* ************************************************************** */
/* ************************************************************** */
.modal-sidebar.pdfview
{
	width: 50%;
	min-width: 50%;
	max-width: 50%;
}
.modal-sidebar.pdfview .modal-body
{
	background-color: #1d1d1d;
	padding: 0px !important;
}
@media (max-width: 750px)
{
	.modal-sidebar.pdfview
	{
		width: 100%;
		min-width: 100%;
		max-width: 100%;
	}
}
@media (min-width: 1500px)
{
	.modal-sidebar.pdfview
	{
		width: 50%;
		min-width: 50%;
		max-width: 50%;
	}
}
@media (min-width: 2000px)
{
	.modal-sidebar.pdfview
	{
		width: 40%;
		min-width: 40%;
		max-width: 40%;
	}
}
/* ************************************************************** */
/* ************************************************************** */















/* ///////////////////////////////////////// */
.tabs-line-top .nav-item.open .nav-link, .tabs-line-top .nav-item.open .nav-link:focus, .tabs-line-top .nav-item.open .nav-link:hover, .tabs-line-top .nav-item.show .nav-link, .tabs-line-top .nav-item.show .nav-link:focus, .tabs-line-top .nav-item.show .nav-link:hover, .tabs-line-top .nav-link.active, .tabs-line-top .nav-link.active:focus, .tabs-line-top .nav-link.active:hover {
	color: #ffffff;
	background-color: #3e8ef6;
	border-top: none;
	border-right: none;
	border-bottom: none;
	border-left: none;
}
.nav-tabs .nav-link {
	border: 1px solid transparent;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
}
.panel .nav-tabs-horizontal .nav-tabs .nav-item .nav-link {
	line-height: 26px;
	border-top: 2px solid transparent;
}
.tabs-line-top .nav-item .nav-link:hover, .tabs-line-top .nav-link:hover {
	border-top: 2px solid #ccd5db !important;
	border-bottom-color: transparent;
}
/* ///////////////////////////////////////// */

/* ///////////////////////////////////////// */



.fullScreenNotify i
{
	margin-bottom: 20px;
}
.fullScreenNotify
{
	position: fixed;
	top: 0px;
	right: 0px;
	left: 0px;
	bottom: 0px;
	height: 100%;
	width: 100%;
	z-index: 1000000100;
}
#fullScreenNotify-message
{
	width: 100%;
	height: auto;
	position: absolute;
	top: calc(50% + -76px);
	text-align: center;
	color: #fafafa;
	font-size: 3vh;
	font-weight: bold;
	padding: 0px 15px 0px 15px;
}
/* ///////////////////////////////////// */
.form-control-label,
.col-form-label,
.form-control-label.bold
{
	font-weight: 700 !important;
	font-size: 1rem;
	color: #444;
	padding-bottom: calc(.129rem + 1px);
}

/* //// OTHERS //// */
i.fas[disabled="true"],
i.fas.disabled
{
	opacity: 0.5;
	cursor: not-allowed;
}


/* Application-specific styles continue below; the shell lives in trovao-template.css. */
/******************************************************/
/******************************************************/
.side-panel
{
	display: none;
	position: fixed;
	left: 0px;
	background-color: #fff;
	min-width: 340px;
	max-width: 100%;
	height: calc(100% - 66px);
	padding: 10px 20px 10px;
	box-shadow: 0px 0px 30px -10px rgba(0,0,0,0.3);
	z-index: 1300;
	overflow: auto;
}
.side-panel .sidehead
{
	display: flex;
	justify-content: space-between;
}
.side-panel .sidehead .closebtn
{
	opacity: 0.8;
}
.side-panel .sidehead .closebtn:hover
{
	opacity: 1;
	cursor: pointer;
}
.side-panel .sidehead .closebtn i
{
	padding: 6px 8px;
	color: #565656;
}




.side-panel.open
{
	display: block;
}


.site-menubar-fold .side-panel.open
{
	left: 90px;

	/* for chrome and safari*/
	-webkit-animation-duration: 0.75s;
	-webkit-animation-name: slidein_nine;

	/*for firefox*/
	-moz-animation-duration: 0.75s;
	-moz-animation-name: slidein_nine;

		/* for opera*/
	-o-animation-duration: 0.75s;
	-o-animation-name: slidein_nine;

		/* Standard syntax*/
	animation-duration: 0.75s;
	animation-name: slidein_nine;
}
.site-menubar-unfold .side-panel.open
{
	left: 260px;

	/* for chrome and safari*/
	-webkit-animation-duration: 0.75s;
	-webkit-animation-name: slidein_twosix;

	/*for firefox*/
	-moz-animation-duration: 0.75s;
	-moz-animation-name: slidein_twosix;

		/* for opera*/
	-o-animation-duration: 0.75s;
	-o-animation-name: slidein_twosix;

		/* Standard syntax*/
	animation-duration: 0.75s;
	animation-name: slidein_twosix;
}
@media (max-width: 640px)
{
	.site-menubar-hide.site-menubar-unfold .side-panel.open
	{
		left: 0px !important;
		width: 100% !important;
	}
	.site-menubar-unfold .side-panel.open
	{
		left: 260px !important;
		width: 100% !important;
	}
}



@-webkit-keyframes slidein_nine {
	from {
		left: 0px;
	}

	to {
		left: 90px;
	}
}
@-moz-keyframes slidein_nine {
	from {
		left: 0px;
	}

	to {
		left: 90px;
	}
}
@-o-keyframes slidein_nine {
	from {
		left: 0px;
	}

	to {
		left: 90px;
	}
}
@keyframes slidein_nine {
	from {
		left: 0px;
	}

	to {
		left: 90px;
	}
}
@-webkit-keyframes slidein_twosix {
	from {
		left: 0px;
	}

	to {
		left: 260px;
	}
}
@-moz-keyframes slidein_twosix {
	from {
		left: 0px;
	}

	to {
		left: 260px;
	}
}
@-o-keyframes slidein_twosix {
	from {
		left: 0px;
	}

	to {
		left: 260px;
	}
}
@keyframes slidein_twosix {
	from {
		left: 0px;
	}

	to {
		left: 260px;
	}
}
/******************************************************/
/******************************************************/
/******************************************************/
#full-screen-loader
{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000000103;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-color: rgba(255, 255, 255, 0.85);
}

#full-screen-message
{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	padding: 0 1.0715rem;
	text-align: center;
	transform: translate(-50%, -50%);
}
/******************************************************/


.page-login-v3:before
{
	background-image: linear-gradient(to bottom,#05b1e0 0,#0481f4 100%) !important;
}

.tooltip
{
	z-index: 1000000104 !important;
}
body.modal-open .tooltip
{
	z-index: 1000000105 !important;
}
.webui-popover
{
	z-index: 1000000105 !important;
}
body.modal-open .webui-popover
{
	z-index: 1000000106 !important;
}
.tooltip.bs-tooltip-bottom:not(.trovao-tooltip)
{
	left: 0px !important;
}
.tooltip .tooltip-inner
{
	background-color: rgba(0,0,0,1) !important;
}
	.modal-confirm-simple .modal-header
	{
		background-color: #fff;
		border-bottom: unset;
		padding: 15px 20px 5px;
	}
	.modal-confirm-simple .modal-header .modal-title
	{
		color: #000;
		font-size: 1.3rem;
		font-weight: 400;
	}
	.modal-confirm-simple .modal-body
	{
		padding-top: 15px;
		padding-bottom: 30px;
	}

.modal-header .modal-title
{
	font-weight: 700;
	text-shadow: unset;
}
.modal-header button.close
{
	opacity: 0.75;
}
.modal-body
{
	padding-top: 20px;
	background-color: #ffffff;
}


input.autoadd
{
	display: inline-block;
	width: calc(100% - 115px) !important;
	max-width: calc(100% - 115px) !important;
}

button
{
	font-weight: 400 !important;
}
button.autoadd,div.divautoadd
{
	display: inline-block;
	max-width: 110px;
}
button.autoadd i,
button i
{
	margin-right: 5px;
}
.modal-fill-in.autoadd
{
	background-color: rgba(255,255,255,0.80) !important;
}
.modal-content .modal-footer
{
	background: #fafafa;
}
.modal-fill-in.no-height .modal-content
{
	overflow: auto !important;
}
.modal-fill-in.no-height
{
	height: auto !important;
}
.modal-fill-in.show.no-opacity
{
	background-color: rgba(255,255,255,1) !important;
}
.modal-fill-in .modal-dialog.modal-xl .modal-content
{
	width: 90% !important;
	max-width: 90% !important;
	min-width: 90% !important;
	height: inherit;
}
.modal-fill-in.autoadd .modal-content
{
	border: 1px solid #ddd;
}

@media (min-width: 992px)
{
	.modal-md
	{
		max-width: 750px;
	}
}
.modal-dialog .modal-content .modal-title
{
	width: 100%;
}
.modal-dialog .modal-content .modal-title img.brand-logo
{
	width: 20px;
	margin-right: 10px;
	vertical-align: middle;
	background: #fff;
	border-radius: 100%;
}


.panel-subtitle
{
	font-size: 13px;
}
.panel-subtitle:before
{
	display: inline-block;
	padding: 0px .5rem;
	color: #ccd5db;
	content: "*";
}

.notie-container
{
	z-index: 1000000100 !important;
}
.notie-background-error
{
	background-color: #E62020;
}
.modal-backdrop
{
	z-index: 999999990 !important;
}
.modal
{
	z-index: 999999991 !important;
}


.modal.modal1
{
	z-index: 1000000035 !important
}
.modal.modal1 + .modal-backdrop
{
	z-index: 1000000010 !important;
}
.modal.modal2
{
	z-index: 1000000025 !important;
}
.modal.modal2 + .modal-backdrop
{
	z-index: 1000000020 !important;
}
.modal.modal3
{
	z-index: 1000000035 !important;
}
.modal.modal3 + .modal-backdrop
{
	z-index: 1000000030 !important;
}
.modal.modal4
{
	z-index: 1000000045 !important;
}
.modal.modal4 + .modal-backdrop
{
	z-index: 1000000040 !important;
}
.modal.modal5
{
	z-index: 1000000055 !important;
}
.modal.modal5 + .modal-backdrop
{
	z-index: 1000000050 !important;
}



.hidden
{
	display: none !important;
	visibility: hidden !important;
}

.page-title .page-description
{
	display: inline-block;
	font-size: 14px;
	font-weight: 100;
}
/*
.breadcrumb
{
	background-color: #dbdfe6 !important;
	border-radius: 3px;
	font-size: 12px;
	padding: .55rem 1rem;
}
.breadcrumb-item+.breadcrumb-item
{
	padding-left: 0px;
}
.breadcrumb-item+.breadcrumb-item::before
{
	color: #b4b7b9;
}
*/

input[required],
select[required],
textarea[required]
{
	border-left: 2px solid #ff4c52;
}

	div.has-success label.error
	{
		display: none !important;
	}
	.has-error label.error
	{
		width: 100%;
		margin-top: .286rem;
		font-size: 80%;
		color: #ff4c52 !important;
		float: left;
		text-align: left;
		font-weight: 400;
	}
	.has-error input,
	.has-error textarea,
	.has-error select
	{
		border: 1px solid #ff4c52;
	}

	#toast-container>div
	{
		-moz-box-shadow: 0 0 12px rgba(0,0,0,0.3);
		-webkit-box-shadow: 0 0 12px rgba(0,0,0,0.3);
		box-shadow: 0 0 12px rgba(0,0,0,0.3);
		opacity: 0.9;
		padding: 20px 20px 20px 50px;
	}

	#toast-container.toast-bottom-full-width>div,
	#toast-container.toast-top-full-width>div
	{
		width: 100% !important;
	}

.loader-content
{
	position: fixed;
	margin: 50vh auto 0;
	text-align: center;
	text-transform: uppercase;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	top: 0px;
	left: 0px;
	z-index: 1000000100;
	width: 100%;
	height: 100%;
	background: #09f;
}
.loader-content .loader-index
{
	margin: 50vh auto 0;
}

/* MELHORIAS NO INTERFACE */

/*
-webkit-transform: translate(0, 0);
	-ms-transform: translate(0, 0);
	-o-transform: translate(0, 0);
	transform: translate(0, 0);

	-webkit-transition: -webkit-transform .3s ease-in-out,width .3s ease-in-out;
		-moz-transition: -moz-transform .3s ease-in-out,width .3s ease-in-out;
		-o-transition: -o-transform .3s ease-in-out,width .3s ease-in-out;
		transition: transform .3s ease-in-out,width .3s ease-in-out;
*/


.cursor-pointer
{
	cursor: pointer;
}
/***************************************/
.badge-md
{
	font-size: 14px;
	margin-bottom: 0px;
}
/***************************************/
.modal-footer
{
	padding: 16px 28px !important;
	border-top: 1px solid #e4eaec !important;
}
.modal-footer button i
{
	margin-right: 5px;
}
/***************************************/
table th[z-hidden="true"],
table col[z-hidden="true"]
{
	visibility: collapse;
}


table a.dropdown-item
{
	text-decoration: none;
}
table a.dropdown-item i
{
	font-size: 14px !important;
}
table a.dropdown-item.bg-danger:hover
{
	color: #fff;
}
table td button i
{
	font-size: 14px;
}
table .panel-group a.panel-title {
	text-decoration: none;
}

a.link-btn
{
	-webkit-text-stroke: 0.45px rgb(81 136 231) !important;
}
/***************************************/
th i.sorter
{
	float: right;
	position: relative;
	margin-top: 3px;
	cursor: pointer;
	opacity: 0.75;
	font-size: 16px;
}
th i.sorter:hover
{
	opacity: 1;
}
table tr i
{
	font-size: 28px;
	cursor: pointer;
	opacity: 0.8;
}
table tr i:first-child
{
	margin-right: 10px;
}
table tr i[action=update]
{
	color: #333;
}
table tr i:hover
{
	opacity: 1;
}
table tr button i
{
	opacity: inherit;
}

/* ============================ */
table.table i[action="delete"],
table.table i[action="href"],
table.table i[action="update"]
{
	font-size: 1.3rem;
	padding: 0.6rem 0.75rem 0.6rem;
	opacity: 1;
	color: #fff !important;
	border-radius: 2px;
}
table.table tr i[action="delete"]:first-child,
table.table tr i[action="href"]:first-child,
table.table tr i[action="update"]:first-child {
	margin-right: 2px;
}
table.table  i[action="delete"]:hover,
table.table  i[action="update"]:hover,
table.table  i[action="href"]:hover
{
	opacity: 0.8;
}
table.table i[action="delete"]
{
	background: #dc3544;
}
table.table i[action="update"],
table.table i[action="href"]
{
	background: #526069;
}
/* ============================ */
table tr i:first-child {
	margin-right: 10px;
}


table tr td,
table td,
.table tr td,
.table td
{
	vertical-align: middle !important;
}

.table tfoot th, .table thead th
{
	font-weight: 700 !important;
}
table td span.highlight
{
	background-color: #FFE54F;
	color: #000;
	padding: 4px 10px;
}

/********************************************/
embed img
{
	display: block;
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
/********************************************/
/* Compatibilidade dos controlos checkbox usados nos formulários Remark. */
.checkbox-custom
{
	position: relative;
	display: block;
	min-height: 20px;
	padding-left: 20px;
	margin: 0;
}
.checkbox-custom input[type=checkbox],
.checkbox-custom input[type=radio]
{
	position: absolute;
	z-index: 1;
	width: 20px;
	height: 20px;
	margin: 0 0 0 -20px;
	cursor: pointer;
	opacity: 0;
}
.checkbox-custom label
{
	position: relative;
	display: inline-block;
	min-height: 20px;
	padding-left: 10px;
	margin: 0;
	font-weight: 400;
	line-height: 20px;
	cursor: pointer;
}
.checkbox-custom label::before,
.checkbox-custom label::after
{
	position: absolute;
	left: 0;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-left: -20px;
	content: '';
}
.checkbox-custom label::before
{
	background-color: #fff;
	border: 1px solid #a9afb4;
	border-radius: .215rem;
	transition: all .2s ease-in-out;
}
.checkbox-custom label::after
{
	top: 3px;
	left: 7px;
	width: 6px;
	height: 11px;
	margin-left: -20px;
	border: solid transparent;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}
.checkbox-custom input[type=checkbox]:focus + label::before,
.checkbox-custom input[type=radio]:focus + label::before
{
	box-shadow: 0 0 0 .15rem rgba(11, 105, 227, .2);
}
.checkbox-custom input[type=checkbox]:checked + label::before,
.checkbox-custom input[type=radio]:checked + label::before
{
	background-color: #0b69e3;
	border-color: #0b69e3;
}
.checkbox-custom input[type=checkbox]:checked + label::after,
.checkbox-custom input[type=radio]:checked + label::after
{
	border-color: #fff;
}
.checkbox-custom input[type=checkbox]:disabled + label,
.checkbox-custom input[type=radio]:disabled + label
{
	cursor: not-allowed;
	opacity: .6;
}
.checkbox-custom.checkbox-primary input[type=checkbox]:checked + label::before,
.checkbox-custom.checkbox-primary input[type=radio]:checked + label::before
{
	background-color: #007bff;
	border-color: #007bff;
}
.checkbox-custom.checkbox-success input[type=checkbox]:checked + label::before,
.checkbox-custom.checkbox-success input[type=radio]:checked + label::before
{
	background-color: #28a745;
	border-color: #28a745;
}
.checkbox-custom.checkbox-info input[type=checkbox]:checked + label::before,
.checkbox-custom.checkbox-info input[type=radio]:checked + label::before
{
	background-color: #17a2b8;
	border-color: #17a2b8;
}
.checkbox-custom.checkbox-warning input[type=checkbox]:checked + label::before,
.checkbox-custom.checkbox-warning input[type=radio]:checked + label::before
{
	background-color: #ffc107;
	border-color: #ffc107;
}
.checkbox-custom.checkbox-danger input[type=checkbox]:checked + label::before,
.checkbox-custom.checkbox-danger input[type=radio]:checked + label::before
{
	background-color: #dc3545;
	border-color: #dc3545;
}
.checkbox-custom.checkbox-primary.show-border label::before
{
	border: 2px solid #007bff;
}
.checkbox-custom.checkbox-success.show-border label::before
{
	border: 2px solid #28a745;
}
.checkbox-custom.checkbox-info.show-border label::before
{
	border: 2px solid #17a2b8;
}
.checkbox-custom.checkbox-warning.show-border label::before
{
	border: 2px solid #ffc107;
}
.checkbox-custom.checkbox-danger.show-border label::before
{
	border: 2px solid #dc3545;
}
.checkbox-warning input[type=checkbox]:checked+input[type=hidden]+label::before,
.checkbox-warning input[type=checkbox]:checked+label::before,
.checkbox-warning input[type=radio]:checked+input[type=hidden]+label::before,
.checkbox-warning input[type=radio]:checked+label::before {
	background-color: #ffc107;
	border-color: #ffc107;
}

.checkbox-primary.border-only input[type=checkbox]:checked+input[type=hidden]+label::before,
.checkbox-primary.border-only input[type=checkbox]:checked+label::before,
.checkbox-primary.border-only input[type=radio]:checked+input[type=hidden]+label::before,
.checkbox-primary.border-only input[type=radio]:checked+label::before
{
	background-color: transparent;
	border-width: 2px;
}
.checkbox-primary.border-only input[type=checkbox]:checked+input[type=hidden]+label::after,
.checkbox-primary.border-only input[type=checkbox]:checked+label::after,
.checkbox-primary.border-only input[type=radio]:checked+input[type=hidden]+label::after,
.checkbox-primary.border-only input[type=radio]:checked+label::after
{
	color: #3e8ef7;
}

.checkbox-custom .error::before
{
	display: none;
}

/* loader CSS FIX */
.loader-circle.loader-primary
{
	border-top: .125em solid rgba(11,105,227, 0.5);
	border-right: .125em solid rgba(11,105,227, 0.5);
	border-bottom: .125em solid rgba(11,105,227, 0.5);
	border-left: .125em solid #0B69E3;
}
.loader-circle.loader-danger
{
	border-top: .125em solid rgba(230, 32, 32, 0.5);
	border-right: .125em solid rgba(230, 32, 32, 0.5);
	border-bottom: .125em solid rgba(230, 32, 32, 0.5);
	border-left: .125em solid #E62020;
}
.loader-circle.loader-success
{
	border-top: .125em solid rgba(0, 140, 77, 0.5);
	border-right: .125em solid rgba(0, 140, 77, 0.5);
	border-bottom: .125em solid rgba(0, 140, 77, 0.5);
	border-left: .125em solid #008C4D;
}
/********************************************/
/* badge CSS FIX */
.badge-lg
{
	font-size: 16px !important;
}
.badge-md
{
	font-size: 14px !important;
	margin-bottom: 0px !important;
}
.badge-sm
{
	padding: .1em .5em .1em !important;
	font-size: 10px !important;
}

.badge {
	display: inline-block;
	padding: .25em .6em;
	font-size: 75%;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: .215rem;
}

.badge:empty {
	display: none;
}

.btn .badge {
	position: relative;
	top: -1px;
}

.badge-pill {
	padding-right: .6em;
	padding-left: .6em;
	border-radius: 10rem;
}

.badge-primary {
	color: #fff;
	background-color: #007bff;
}

.badge-primary[href]:focus,.badge-primary[href]:hover {
	color: #fff;
	text-decoration: none;
	background-color: #0062cc;
}

.badge-secondary {
	color: #fff;
	background-color: #6c757d;
}

.badge-secondary[href]:focus,.badge-secondary[href]:hover {
	color: #fff;
	text-decoration: none;
	background-color: #545b62;
}

.badge-success {
	color: #fff;
	background-color: #28a745;
}

.badge-success[href]:focus,.badge-success[href]:hover {
	color: #fff;
	text-decoration: none;
	background-color: #1e7e34;
}

.badge-info {
	color: #fff;
	background-color: #17a2b8;
}

.badge-info[href]:focus,.badge-info[href]:hover {
	color: #fff;
	text-decoration: none;
	background-color: #117a8b;
}

.badge-warning {
	color: #3e4854;
	background-color: #ffc107;
}

.badge-warning[href]:focus,.badge-warning[href]:hover {
	color: #3e4854;
	text-decoration: none;
	background-color: #d39e00;
}

.badge-danger {
	color: #fff;
	background-color: #dc3545;
}

.badge-danger[href]:focus,.badge-danger[href]:hover {
	color: #fff;
	text-decoration: none;
	background-color: #bd2130;
}

.badge-light {
	color: #3e4854;
	background-color: #f8f9fa;
}

.badge-light[href]:focus,.badge-light[href]:hover {
	color: #3e4854;
	text-decoration: none;
	background-color: #dae0e5;
}

.badge-dark {
	color: #fff;
	background-color: #343a40;
}

.badge-dark[href]:focus,.badge-dark[href]:hover {
	color: #fff;
	text-decoration: none;
	background-color: #1d2124;
}

/* badge em azul bonito */
.badge-code
{
	border-radius: .215rem;
	padding: .15rem .3rem;
	background-color: rgba(217, 233, 255, .1);
	border: 1px solid #99c5ff;
	font-size: 90%;
	color: #4176b9;
	word-break: break-word;
}
/* -----------------------------------
**  Preloader
-------------------------------------*/
#fs-loader {
    position: fixed;
    inset: 0;
    background: rgba(255,255,255,0.88);
    /* backdrop-filter removido */
    display: none;
    place-items: center;
    z-index: 2147483647; /* valor razoável em vez do máximo */
    /* força compositing numa layer própria */
    will-change: opacity;
}
#fs-loader.active {
    display: grid;
}
.fs-loader-spinner {
    width: 44px;
    height: 44px;
    border: 4px solid #e6e6e6;
    border-top-color: #3498db;
    border-radius: 50%;
    animation: fs-loader-spin .7s linear infinite;
    margin: auto;
    /* garante que a animação corre na GPU */
    will-change: transform;
}
#fs-loader-message {
    margin-top: 14px;
    font-size: 14px;
    color: #444;
    text-align: center;
}
@keyframes fs-loader-spin {
    to { transform: rotate(360deg); }
}
/*  Preloader Ends */







.eWizardAccordion .panel-title.bg-primary,
.eWizardAccordion .panel-title.bg-primary h4
{
	color: #fff !important;
}



.wizard-buttons
{
	height: 36px;
	min-height: 36px;
}

.badge-option
{
	font-size: 15px;
	padding-bottom: 5px;
}


/* ********************************************************************* */
/* **************************** GRID.JS CSS **************************** */
.gridjs-table td .text-wrapper-td
{
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.gridjs-table tr:hover td
{
	background-color: #f2f4f5;
}
.gridjs-table tr .dropdown-item
{
	font-weight: 500;
}
.gridjs-table tr .dropdown-item:hover
{
	cursor: pointer;
}
.gridjs-table tr .dropdown-item:hover i
{
	opacity: 1;
}
.gridjs-table tr .dropdown-item i {
	font-size: inherit;
	cursor: pointer;
	opacity: 0.8;
}
.gridjs-table tr .btn-default.focus,
.gridjs-table tr .btn-default.hover,
.gridjs-table tr .btn-default:focus,
.gridjs-table tr .btn-default:hover {
	color: #5d666f;
	background-color: #f3f7f9 !important;
	border-color: #ccd5db;
	box-shadow: none;
}


.gridjs-table th.fixed-width,
.gridjs-table td.fixed-width {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.gridjs-table th.flex-width,
.gridjs-table td.flex-width {
	width: auto !important;
}
.gridjs-td-a
{
	color: #565656;
}.gridjs-td-a:hover
{
	color: #3f8ef8;
}
/* ********************************************************************* */
.form-control
{
	border-color: #d8d8d8;
}
/* ********************************************************************* */
.drop-zone,
.drop-zone-anexos {
	border: 2px dashed #999;
	border-radius: 4px;
	padding: 30px;
	width: 100%;
	text-align: center;
	color: #666;
	font-size: 16px;
	transition: background 0.3s;
	cursor: pointer;
}
.drop-zone.dragover,
.drop-zone-anexos.dragover {
	background-color: #f0f6ff;
	border-color: #3c87ec;
	color: #005cd7;
}
.drop-zone-anexos.dragover {
	border: 2px dashed #3d8bf1;
	color: #3d8bf1;
	background-color: #e1edff;
}
/* ********************************************************************* */
