html {
  position: relative;
  min-height: 100%;
}

body {
  font-family: "Montserrat", sans-serif;
  font-size: 1rem;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  --alt-1: #0194FE;
  --alt-1-rgb: 1,148,254;
  --alt-2: #2ADFF3;
  --alt-2-rgb: 42,223,243;
  --alt-3: #0194fe;
  --alt-3-rgb: 90,200,251;
  --alt-4: #52EDC6;
  --alt-4-rgb: 82,237,198;
  min-height: 100vh;
}

header {
  --bs-header-backdrop: rgb(255,255,255,.72);
}

.card {
  --bs-card-bg: var(--bs-body-bg);
}

.card.bg-primary-1  .blockquote-footer, .card.bg-primary-1  .blockquote {
  color: var(--bs-body-color);
}

.form-control::-webkit-file-upload-button, .form-control::file-selector-button, .form-control-plaintext::-webkit-file-upload-button, .form-control-plaintext::file-selector-button {
  display: none;
}

.form-select.form-control-plaintext {
  border: solid transparent;
}
/*
label.file-input {
  width: 100%;
  height: 3.5rem;
  border-radius:.25rem;
  cursor: pointer;
  display: flex;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--bs-gray-400);
  transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

label.file-input::before {
  font: var(--fa-font-solid);
  content: "\f574";
  margin-right:.5rem;
}


input[type=file]:focus + label.file-input {
  border: 1px solid var(--bs-form-control-focus-border-color);
  box-shadow: 0 0 0 0.2rem rgb(var(--alt-1-rgb),.25);
}*/

.form-control, .form-select {
  --bs-form-control-border: var(--bs-gray-400);
  --bs-form-control-disabled: var(--bs-gray-200);
  border: 1px solid var(--bs-form-control-border);
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
}

.form-control:disabled, .form-select:disabled {
  background-color: var(--bs-form-control-disabled);
}

.form-control:focus, .form-select:focus {
  --bs-form-control-focus-color: var(--bs-body-color);
  --bs-form-control-focus-background-color: var(--bs-body-bg);
  --bs-form-control-focus-border-color: var(--alt-1);
  color: var(--bs-form-control-focus-color);
  background-color: var(--bs-form-control-focus-background-color);
  border-color: var(--bs-form-control-focus-border-color);
  box-shadow: 0 0 0 0.2rem rgba(var(--alt-1-rgb),.25);
}

.form-check-input {
  background-color: var(--bs-body-bg);
}

.form-check-input:focus {
  border-color: #7addeb;
  box-shadow: 0 0 0 0.25rem rgb(var(--alt-1-rgb),.25);
}

.form-check-input:checked {
  background-color: var(--alt-1);
  border-color: var(--alt-1);
}

.form-text {
  --bs-form-text-color: var(--bs-gray-600);
  color: var(--bs-form-text-color);
}

.form-control-plaintext {
  color: var(--bs-body-color);
}

.footer {
  background-color: var(--bs-transparent);
}

.backdrop-filter {
  -webkit-backdrop-filter: saturate(180%) blur(8px);
  backdrop-filter: saturate(180%) blur(8px);
  background-color: var(--bs-header-backdrop);
}

.offcanvas-backdrop {
  background-color: var(--bs-header-backdrop);
  backdrop-filter: saturate(100%) blur(5px);
}

.offcanvas-backdrop.show {
  opacity: 1;
}

.offcanvas-body::-webkit-scrollbar {
  width: .5rem;
  margin-left: 10rem;
}

/* Track */
.offcanvas-body::-webkit-scrollbar-track {
  background-color: var(--bs-gray-400);
  border-radius: .5rem;
  margin-bottom: 1rem;
  margin-top: 1rem;
  margin-left: 10rem;
}

/* Handle */
.offcanvas-body::-webkit-scrollbar-thumb {
  background-color: var(--bs-gray-500);
  border-radius: .5rem;
  margin-left: 10rem;
}

/* Handle on hover */
.offcanvas-body::-webkit-scrollbar-thumb:hover {
  background-color: var(--bs-gray-600);
  margin-left: 10rem;
}

.nav-link i.fa-solid, .nav-link i.fa-brands, .nav-link i.fa-regular {
  min-width: 1.25rem;
}

@media(max-width:576px) {
  .offcanvas {
    --bs-offcanvas-width: 576px;
  }

}

hr {
  --bs-hr-color: inherit;
  color: var(--bs-hr-color);
}

.w-90 {
  width: 90%!important;
}


.text-primary-1 {
  background: linear-gradient(135deg, var(--alt-1) 0, var(--alt-2) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.bg-primary-1 {
  background: linear-gradient(90deg, var(--alt-1) 0, var(--alt-4) 100%);
  transition: 0.1s
}

.bg-primary-2 {
  background: linear-gradient(135deg, var(--alt-2) 0, var(--alt-4) 100%);
  transition: 0.1s
}

.btn-alt-1 {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0194fe;
  --bs-btn-border-color: #0194fe;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0084d8;
  --bs-btn-hover-border-color: #007ecb;
  --bs-btn-focus-shadow-rgb: 49,132,253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #007ecb;
  --bs-btn-active-border-color: #0079bf;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0194fe;
  --bs-btn-disabled-border-color: #0194fe;
}

.blockquote-footer::before {
  content: '';
}


::-moz-selection {
  color: #000;
  background: var(--alt-3);
}

::selection {
  color: #000;
  background: var(--alt-3);
}

.table-sm tr, .table-sm th, .table-sm td {
  font-size: 0.8rem;
}

a {
  --bs-link-color: var(--alt-1);
  --bs-link-hover-color: #0088cb;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

.dropdown-item {
  transition: 0.33s;
}

.dropdown-item.active, .dropdown-item:active, .dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {
  background: var(--alt-1);
}

.navbar, .navbar-nav {
  --bs-navbar-active-color: rgba(255,255,255,0.9);
}

.nav {
  --bs-nav-link-color: var(--bs-gray-700);
  --bs-nav-link-hover-color: var(--bs-black);
}

.nav-pills {
  --bs-nav-pills-link-active-bg: var(--alt-1);
}

.nav-pills .nav-link {
  padding-left: 1rem;
  padding-right: 1rem;
}

.nav-pills .nav-link:focus:not(.active), .nav-pills .nav-link:hover:not(.active){
  background-color: var(--bs-gray-100);
  transition: .3s;
}

.list-group {
  --bs-list-group-color: var(--bs-gray-900);
  --bs-list-group-bg: var(--bs-transparent);
  --bs-list-group-border-color: rgba(0,0,0,.125);
  --bs-list-group-action-color: var(--bs-gray-700);
  --bs-list-group-action-hover-color: var(--bs-gray-700);
  --bs-list-group-action-hover-bg: var(--bs-gray-100);
  --bs-list-group-action-active-color: var(--bs-gray-900);
  --bs-list-group-action-active-bg: var(--bs-gray-200);
  --bs-list-group-disabled-color: var(--bs-gray-600);
  --bs-list-group-disabled-bg: #fff;
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: var(--alt-1);
  --bs-list-group-active-border-color: var(--alt-1);
}

/* > sm size */

@media (min-width: 576px) {
  .card-columns {
    column-count: 2;
  }
}

.header-item {
  min-width: 14rem;
}

@media (max-width: 768px) {
  .header-item {
    min-width: 4rem;
  }
}

.dropdown-toggle::after {
  vertical-align:.12em;
}

.page-item.active .page-link {
  background-color: var(--alt-3);
  border-color: var(--alt-3);
  color: #fff
}

.page-link {
  color: var(--alt-1);
}

.page-link:hover {
  color: var(--alt-3);
}

.page-link:focus {
  color: var(--alt-3);
  box-shadow: 0 0 0 0.2rem rgba(90,200,251,.25);
}

.swal2-styled-popup {
  background-color:var(--bs-white)!important;
}

.swal2-styled-text {
  color:var(--bs-dark)!important;
}

.swal2-styled-footer {
  border-color: #111!important;
}

.swal2-styled-backdrop {
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
}


input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

.btn-outline-theme {
  color: var(--alt-3);
  border-color: var(--alt-3);
}

.btn-outline-theme:hover {
  color: var(--bs-white);
  background-color: var(--alt-3);
}

.btn-outline-theme:focus {
  box-shadow: 0 0 0 0.2rem rgba(90,200,251,.25);
}

.form-floating>label {
  z-index: 999;
}

.text-xs {
  font-size:.675rem;
}

.form-select-bg-none {
  background-image: none!important;
}

.popover-ios-add-to-home {
  max-width: 92vw;
  z-index: 999;
}

.bg-alt-4 {
  background-color: var(--alt-4);
  color: var(--bs-gray-900);
}

.bg-alt-red {
  background-color: #ea868f;
  color: var(--bs-gray-900);
}

.text-alt-3 {
  color: var(--alt-3);
}

.text-alt-4 {
  color: var(--alt-4);
}

.bg-indigo-500 {
  color: #fff;
  background-color: #6610f2;
}

.bg-purple-500 {
  color: #fff;
  background-color: #6f42c1;
}

.bg-pink-500 {
  color: #fff;
  background-color: #d63384;
}

.bg-cyan-500 {
  color: #000;
  background-color: #0dcaf0;
}

iframe#launcher-frame {
  z-index: 999!important;
}

.btn-outline-alt-4 {
  color:var(--alt-4);
  border-color:var(--alt-4);
}

.btn-outline-alt-4:hover {
  color: #000;
  background-color:var(--alt-4);
  border-color:var(--alt-4);
}

.btn-check:focus+.btn-outline-alt-4, .btn-outline-alt-4:focus {
  box-shadow: 0 0 0 0.25rem rgb(82 237 198 / 50%)
}

.btn-close {
  --bs-btn-close-background-url: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
  background: transparent var(--bs-btn-close-background-url) center/1em auto no-repeat;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  color: var(--bs-body-color);
}

button > .spinner-border, .spinner-grow {
  color: var(--bs-body-bg);
}