html { font-size: 14px; position: relative; min-height: 100%; }

@media (min-width: 768px) {
  html { font-size: 16px; }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus { box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb; }

body { margin-bottom: 60px; }

a.bTop { position: fixed; right: 10px; bottom: 10px; z-index: 1000; font-size: 25px; color: #d11f25; opacity: .75; display: none; }
a.bTop > .fa { background-color: #fff; border-radius: 65px; }

/*	INITIALS	*/
.circle { display: inline-block; background-color: #e9ecef; margin: 0px; border-radius: 50%; }
.circle-inner { color: white; display: table-cell; vertical-align: middle; text-align: center; text-decoration: none; height: 40px; width: 40px; font-size: 17px; }

/* CARD COLLAPSE */
.card.collapsable .toggle-icon { transition: transform 0.2s ease-in-out; }
.card.collapsable .btn[aria-expanded="true"] .toggle-icon { transform: rotate(180deg); }

/*	FORMS	*/
.form-label { font-weight: 500; }
.required:after { content: " *"; color: red; }

/*	SELECT2		*/
.select2-container { width: 100% !important; }
.select2-selection { height: 38px !important; border-radius: 4px 0 0 4px; }
.select2-selection__choice { line-height: 2em; }
.select2-selection--multiple { height: auto !important; line-height: 14px !important; overflow: hidden !important; }
.select2-selection .select2-selection--multiple { height: auto !important; line-height: 14px !important; overflow: hidden !important; }
.select2-container .select2-selection--single { height: auto; }
.select2-container .select2-selection--single .select2-selection__rendered { line-height: 36px !important; }
.select2-container .select2-selection--single .select2-selection__prrow { height: 36px !important; }

/*	TOAST	*/
.bg-solid-white { background-color: rgba(255,255,255,1); }
.bg-solid-success { background-color: #198754; border: solid 5px #0f5132; color: white; }
.bg-solid-warning { background-color: #ffc107; border: solid 5px #997404; color: black; }
.bg-solid-danger { background-color: #dc3545; border: solid 5px #842029; color: white; }

/*	CANVAS	*/
.offcanvas-footer { position: fixed; bottom: 10px; width: 100%; z-index: 100; background-color: white; }

/*	BUTTONS		*/
.btn:focus { box-shadow: none !important; }
.btn-load > i:first-child { width: 0; overflow: hidden; transition: .125s linear; font-size: 13px; }
.btn-load > i + i { overflow: hidden; transition: .125s linear; }
.btn-load.load:disabled { background-color: #FFC107; border-color: #FFC107; color: #212529; }
#msubmit.load:disabled { background-color: #FFC107; border-color: #FFC107; color: #212529; }
.btn-load.load:disabled > i:first-child { width: auto; margin-right: .25rem; }
.btn-load.load:disabled > i + i { width: 0; margin-right: 0 !important; }
.dt-buttons { text-align: center; }
.btn-flex { display: inline-flex; align-items: center; justify-content: center; vertical-align: middle; flex-wrap: wrap; }
.btn-flex > * { margin-right: 0.5ch; }

/*	FORM ERROR */
.form-group.error > * { color: #dc3545; }
.form-group.error > span { font-style: italic; font-size: .85rem; margin-top: 1px; }

@media (min-width: 576px) and (max-width: 600px) {
	#userIcon { display: none; }
}

@keyframes wiggle {
	0% { transform: rotate(0deg); }
	60% { transform: rotate(0deg); }
	80% { transform: rotate(-17.5deg); }
	100% { transform: rotate(17.5deg); }
}

@keyframes growWiggle {
	0% { transform: scale(1) rotate(0deg); }
	20% { transform: scale(1) rotate(0deg); }
	40% { transform: scale(1.5) rotate(17.5deg); }
	60% { transform: scale(1.5) rotate(-17.5deg); }
	80% { transform: scale(1.5) rotate(17.5deg); }
	100% { transform: scale(1.5) rotate(-17.5deg); }
}

@keyframes lagSpin {
	0% { transform: rotate(0deg); }
	35% { transform: rotate(80deg); }
	65% { transform: rotate(300deg); }
	100% { transform: rotate(360deg); }
}