@charset "UTF-8";
/* Material Design CSS extraction, using design guidelines from MD2 and MD3 https://m3.material.io/ */
@import url("https://fonts.googleapis.com/css2?family=Roboto+Flex:wght@400;500&display=swap");
* {
  font-family: "Roboto Flex", sans-serif;
}

/* Display Large */
.display-lg {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 64px;
  font-size: 57px;
  font-weight: 400;
  letter-spacing: 0;
  /* margin-top: 12px; */
}

/* Display Medium */
.display-md {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 52px;
  font-size: 45px;
  font-weight: 400;
  letter-spacing: 0;
  /* margin-top: 12px; */
}

/* Display Small */
.display-sm {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 44px;
  font-size: 36px;
  font-weight: 400;
  letter-spacing: 0;
  /* margin-top: 10px; */
}

/* Header Large */
.header-lg {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 40px;
  font-size: 32px;
  font-weight: 400;
  letter-spacing: 0;
}

/* Header Medium */
.header-md, .circle-badge .icon {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 36px;
  font-size: 28px;
  font-weight: 400;
  letter-spacing: 0;
}

/* Header Small */
.header-sm, .modal-dialog .modal-header .modal-title {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 32px;
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0;
}

/* Title Large */
.title-lg, .topbar, .top-bar-brand, .nav-rail-brand, .card-empty span, .searchbar [class*=button-].icon {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 28px;
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 0;
}

/* Title Medium */
.title-md {
  font-family: "Roboto Flex Medium", sans-serif;
  line-height: 24px;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0.15px;
}

/* Title Small */
.title-sm {
  font-family: "Roboto Flex Medium", sans-serif;
  line-height: 20px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.1px;
}

/* Label Large */
.label-lg, [class*=button-], .topbar.short ul li .desc, .top-bar-toggler, .top-bar ul.dropdown .dropdown-item .item .desc, .top-bar.short ul li .desc, .top-bar-icons .button, .nav-rail-toggler, .nav-rail ul .nav-item .nav-label, .Chip {
  font-family: "Roboto Flex Medium", sans-serif;
  line-height: 20px;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.1px;
}

/* Label Medium */
.label-md, .statusbadge {
  font-family: "Roboto Flex Medium", sans-serif;
  line-height: 16px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.5px;
}

/* Label Small */
.label-sm {
  font-family: "Roboto Flex Medium", sans-serif;
  line-height: 16px;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.5px;
}

/* Body Large */
.body-lg, .card-description-dropdown .text, th, .textfield-outlined input,
.textfield-outlined select,
.textfield-outlined textarea, .textfield-outlined label, .textfield-filled input,
.textfield-filled textarea, .textfield-filled label {
  font-family: "Roboto Flex Medium", sans-serif;
  line-height: 24px;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.5px;
}

/* Body Medium */
.body-md, p, .searchbar .searchfield, .snackbar > div {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 20px;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.25px;
}

/* Body Small */
.body-sm, [class*=textfield-] .placeholder, [class*=textfield-] .counter, .textfield-filled.open input ~ label,
.textfield-filled.open textarea ~ label, .textfield-filled input:focus ~ label,
.textfield-filled textarea:focus ~ label, .textfield-filled .placeholder {
  font-family: "Roboto Flex Regular", sans-serif;
  line-height: 16px;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.4px;
}

/* Colors */
/* Corners */
/* Opacidades (State Layer) */
/* Transiciones - Tiempos*/
/* Transiciones - Formas */
[class*=button-]::after, .button-fab::after, .clickable::before, .top-bar-toggler::after, .top-bar-nav ul .nav-item .nav-icon::after, .top-bar-icons .button::after, .nav-rail-toggler::after, .nav-rail ul .nav-item::after, .nav-rail ul .nav-item .nav-icon::after, [class*=card-].clickable::before, .card-elevated::before, .Chip::after, .modal.modal-backdrop::before, .modal-dialog::before, .textfield-outlined.open input ~ label::before,
.textfield-outlined.open select ~ label::before,
.textfield-outlined.open textarea ~ label::before, .textfield-outlined input:focus ~ label::before,
.textfield-outlined select:focus ~ label::before,
.textfield-outlined textarea:focus ~ label::before, .accordion-title::after, .listitem::before, #loading-wrapper::before, .plh-glow .plh::after, .plh-wave .plh::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: " ";
  pointer-events: none;
  overflow: hidden;
  transition: opacity 0.35s cubic-bezier(0, 0, 0, 1);
}

.top-bar-nav ul .nav-item .nav-icon, .nav-rail ul .nav-item .nav-icon, .icon {
  font-family: "Material Symbols Rounded" !important;
  display: inline-block;
  vertical-align: bottom;
  font-variation-settings: "FILL" 0, "wght" 500, "opsz" 24;
  line-height: inherit;
}
.top-bar-nav ul .nav-item .color.nav-icon, .nav-rail ul .nav-item .color.nav-icon, .color.icon {
  color: var(--md-sys-color-primary);
}
.top-bar-nav ul .nav-item .big.nav-icon, .nav-rail ul .nav-item .big.nav-icon, .big.icon {
  font-variation-settings: "FILL" 0, "wght" 500, "opsz" 48 !important;
}
[data-theme=dark] .top-bar-nav ul .nav-item .big.nav-icon, .top-bar-nav ul .nav-item [data-theme=dark] .big.nav-icon, [data-theme=dark] .nav-rail ul .nav-item .big.nav-icon, .nav-rail ul .nav-item [data-theme=dark] .big.nav-icon, [data-theme=dark] .big.icon {
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 48 !important;
}
.top-bar-nav ul .nav-item .filled.nav-icon, .nav-rail ul .nav-item .filled.nav-icon, .filled.icon {
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
[data-theme=dark] .top-bar-nav ul .nav-item .filled.nav-icon, .top-bar-nav ul .nav-item [data-theme=dark] .filled.nav-icon, [data-theme=dark] .nav-rail ul .nav-item .filled.nav-icon, .nav-rail ul .nav-item [data-theme=dark] .filled.nav-icon, [data-theme=dark] .filled.icon {
  font-variation-settings: "FILL" 1, "wght" 300, "opsz" 24 !important;
}
[data-theme=dark] .top-bar-nav ul .nav-item .nav-icon, .top-bar-nav ul .nav-item [data-theme=dark] .nav-icon, [data-theme=dark] .nav-rail ul .nav-item .nav-icon, .nav-rail ul .nav-item [data-theme=dark] .nav-icon, [data-theme=dark] .icon {
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
}

* {
  box-sizing: border-box;
}

html {
  height: 100%;
}

body {
  padding: 0;
  margin: 0;
  min-height: 100%;
}
body.noscroll {
  overflow: hidden;
}

.content {
  flex: 1;
}

/***************************************************************************
 * Wording Classes generator
 **************************************************************************/
/***************************************************************************
 * Class generator by Number
 **************************************************************************/
/***************************************************************************
 * Containers
 **************************************************************************/
.container-xs {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 576px) {
  .container-xs {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-xs {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-xs {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xs {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xs {
    max-width: 1320px;
  }
}

.container-sm {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 768px) {
  .container-sm {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-sm {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-sm {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-sm {
    max-width: 1320px;
  }
}

.container-md {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 992px) {
  .container-md {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-md {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-md {
    max-width: 1320px;
  }
}

.container-lg {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1200px) {
  .container-lg {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-lg {
    max-width: 1320px;
  }
}

.container-xl {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1400px) {
  .container-xl {
    max-width: 1320px;
  }
}

.container-xxl {
  width: 100%;
  max-width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.container-fluid {
  width: 100%;
}

/***************************************************************************
 * Position Classes
 **************************************************************************/
.pos-relative {
  position: relative !important;
}

.pos-fixed {
  position: fixed !important;
}

.pos-absolute {
  position: absolute !important;
}

.pos-static {
  position: static !important;
}

.pos-sticky {
  position: sticky !important;
}

@media (min-width: 0) {
  .pos-xs-relative {
    position: relative !important;
  }
  .pos-xs-fixed {
    position: fixed !important;
  }
  .pos-xs-absolute {
    position: absolute !important;
  }
  .pos-xs-static {
    position: static !important;
  }
  .pos-xs-sticky {
    position: sticky !important;
  }
}
@media (min-width: 576px) {
  .pos-sm-relative {
    position: relative !important;
  }
  .pos-sm-fixed {
    position: fixed !important;
  }
  .pos-sm-absolute {
    position: absolute !important;
  }
  .pos-sm-static {
    position: static !important;
  }
  .pos-sm-sticky {
    position: sticky !important;
  }
}
@media (min-width: 768px) {
  .pos-md-relative {
    position: relative !important;
  }
  .pos-md-fixed {
    position: fixed !important;
  }
  .pos-md-absolute {
    position: absolute !important;
  }
  .pos-md-static {
    position: static !important;
  }
  .pos-md-sticky {
    position: sticky !important;
  }
}
@media (min-width: 992px) {
  .pos-lg-relative {
    position: relative !important;
  }
  .pos-lg-fixed {
    position: fixed !important;
  }
  .pos-lg-absolute {
    position: absolute !important;
  }
  .pos-lg-static {
    position: static !important;
  }
  .pos-lg-sticky {
    position: sticky !important;
  }
}
@media (min-width: 1200px) {
  .pos-xl-relative {
    position: relative !important;
  }
  .pos-xl-fixed {
    position: fixed !important;
  }
  .pos-xl-absolute {
    position: absolute !important;
  }
  .pos-xl-static {
    position: static !important;
  }
  .pos-xl-sticky {
    position: sticky !important;
  }
}
@media (min-width: 1400px) {
  .pos-xxl-relative {
    position: relative !important;
  }
  .pos-xxl-fixed {
    position: fixed !important;
  }
  .pos-xxl-absolute {
    position: absolute !important;
  }
  .pos-xxl-static {
    position: static !important;
  }
  .pos-xxl-sticky {
    position: sticky !important;
  }
}
/***************************************************************************
 * Display Classes
 **************************************************************************/
.d-block {
  display: block !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-flex {
  display: flex !important;
}

.d-none {
  display: none !important;
}

.d-table-cell {
  display: table-cell !important;
}

@media (min-width: 0) {
  .d-xs-block {
    display: block !important;
  }
  .d-xs-inline {
    display: inline !important;
  }
  .d-xs-inline-block {
    display: inline-block !important;
  }
  .d-xs-flex {
    display: flex !important;
  }
  .d-xs-none {
    display: none !important;
  }
  .d-xs-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 576px) {
  .d-sm-block {
    display: block !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-none {
    display: none !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 768px) {
  .d-md-block {
    display: block !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-none {
    display: none !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 992px) {
  .d-lg-block {
    display: block !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-none {
    display: none !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .d-xl-block {
    display: block !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-none {
    display: none !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
}
@media (min-width: 1400px) {
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-none {
    display: none !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
}
.flexh {
  display: flex;
  flex-direction: row !important;
  align-items: center;
}

.flexv {
  display: flex;
  flex-direction: column;
}

.flex-align-items-center {
  align-items: center !important;
}

.flex-gr-1 {
  flex: 1;
}

.pe-none {
  pointer-events: none !important;
}

/***************************************************************************
 * Rows
 **************************************************************************/
.row {
  margin: 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  row-gap: 8px;
}

.row::after {
  content: "";
  clear: both;
  display: table;
}

/***************************************************************************
 * Columns
 **************************************************************************/
.col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1, .col-auto, .col {
  float: left;
  min-height: 1px;
  display: flex;
  flex-direction: column;
  padding: 6px;
  max-width: 100%;
}

.col {
  flex: 1;
}

.col-auto {
  max-width: -moz-fit-content;
  max-width: fit-content;
}

.col-1 {
  flex-basis: 8.3333333333%;
  max-width: 8.3333333333%;
}

.col-2 {
  flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-3 {
  flex-basis: 25%;
  max-width: 25%;
}

.col-4 {
  flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
}

.col-5 {
  flex-basis: 41.6666666667%;
  max-width: 41.6666666667%;
}

.col-6 {
  flex-basis: 50%;
  max-width: 50%;
}

.col-7 {
  flex-basis: 58.3333333333%;
  max-width: 58.3333333333%;
}

.col-8 {
  flex-basis: 66.6666666667%;
  max-width: 66.6666666667%;
}

.col-9 {
  flex-basis: 75%;
  max-width: 75%;
}

.col-10 {
  flex-basis: 83.3333333333%;
  max-width: 83.3333333333%;
}

.col-11 {
  flex-basis: 91.6666666667%;
  max-width: 91.6666666667%;
}

.col-12 {
  flex-basis: 100%;
  max-width: 100%;
}

@media (min-width: 0) {
  .col-xs {
    flex: 1;
  }
  .col-xs-auto {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .col-xs-1 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-xs-2 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-xs-3 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-xs-4 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media (min-width: 576px) {
  .col-sm {
    flex: 1;
  }
  .col-sm-auto {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .col-sm-1 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-sm-2 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-sm-3 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-sm-4 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1;
  }
  .col-md-auto {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .col-md-1 {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-md-2 {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-md-5 {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-md-6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-md-8 {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-md-9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-md-11 {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-md-12 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1;
  }
  .col-lg-auto {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .col-lg-1 {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-lg-2 {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-lg-5 {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-lg-6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-lg-8 {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-lg-9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-lg-11 {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-lg-12 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1;
  }
  .col-xl-auto {
    max-width: -moz-fit-content;
    max-width: fit-content;
  }
  .col-xl-1 {
    flex-basis: 8.3333333333%;
    max-width: 8.3333333333%;
  }
  .col-xl-2 {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xl-3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .col-xl-5 {
    flex-basis: 41.6666666667%;
    max-width: 41.6666666667%;
  }
  .col-xl-6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex-basis: 58.3333333333%;
    max-width: 58.3333333333%;
  }
  .col-xl-8 {
    flex-basis: 66.6666666667%;
    max-width: 66.6666666667%;
  }
  .col-xl-9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex-basis: 83.3333333333%;
    max-width: 83.3333333333%;
  }
  .col-xl-11 {
    flex-basis: 91.6666666667%;
    max-width: 91.6666666667%;
  }
  .col-xl-12 {
    flex-basis: 100%;
    max-width: 100%;
  }
}
/***************************************************************************
 * Column Gap Classes
 **************************************************************************/
.column-gap-0 {
  -moz-column-gap: 0;
       column-gap: 0;
}

.column-gap-1 {
  -moz-column-gap: 4px;
       column-gap: 4px;
}

.column-gap-2 {
  -moz-column-gap: 8px;
       column-gap: 8px;
}

.column-gap-3 {
  -moz-column-gap: 12px;
       column-gap: 12px;
}

.column-gap-4 {
  -moz-column-gap: 16px;
       column-gap: 16px;
}

@media (min-width: 0) {
  .column-gap-xs-0 {
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .column-gap-xs-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
  }
  .column-gap-xs-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .column-gap-xs-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .column-gap-xs-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
}
@media (min-width: 576px) {
  .column-gap-sm-0 {
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .column-gap-sm-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
  }
  .column-gap-sm-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .column-gap-sm-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .column-gap-sm-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
}
@media (min-width: 768px) {
  .column-gap-md-0 {
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .column-gap-md-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
  }
  .column-gap-md-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .column-gap-md-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .column-gap-md-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
}
@media (min-width: 992px) {
  .column-gap-lg-0 {
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .column-gap-lg-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
  }
  .column-gap-lg-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .column-gap-lg-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .column-gap-lg-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
}
@media (min-width: 1200px) {
  .column-gap-xl-0 {
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .column-gap-xl-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
  }
  .column-gap-xl-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .column-gap-xl-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .column-gap-xl-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
}
@media (min-width: 1400px) {
  .column-gap-xxl-0 {
    -moz-column-gap: 0;
         column-gap: 0;
  }
  .column-gap-xxl-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
  }
  .column-gap-xxl-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
  }
  .column-gap-xxl-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
  }
  .column-gap-xxl-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
  }
}
/***************************************************************************
 * Column Gap Classes
 **************************************************************************/
.row-gap-0 {
  row-gap: 0;
}

.row-gap-1 {
  row-gap: 4px;
}

.row-gap-2 {
  row-gap: 8px;
}

.row-gap-3 {
  row-gap: 12px;
}

.row-gap-4 {
  row-gap: 16px;
}

@media (min-width: 0) {
  .row-gap-xs-0 {
    row-gap: 0;
  }
  .row-gap-xs-1 {
    row-gap: 4px;
  }
  .row-gap-xs-2 {
    row-gap: 8px;
  }
  .row-gap-xs-3 {
    row-gap: 12px;
  }
  .row-gap-xs-4 {
    row-gap: 16px;
  }
}
@media (min-width: 576px) {
  .row-gap-sm-0 {
    row-gap: 0;
  }
  .row-gap-sm-1 {
    row-gap: 4px;
  }
  .row-gap-sm-2 {
    row-gap: 8px;
  }
  .row-gap-sm-3 {
    row-gap: 12px;
  }
  .row-gap-sm-4 {
    row-gap: 16px;
  }
}
@media (min-width: 768px) {
  .row-gap-md-0 {
    row-gap: 0;
  }
  .row-gap-md-1 {
    row-gap: 4px;
  }
  .row-gap-md-2 {
    row-gap: 8px;
  }
  .row-gap-md-3 {
    row-gap: 12px;
  }
  .row-gap-md-4 {
    row-gap: 16px;
  }
}
@media (min-width: 992px) {
  .row-gap-lg-0 {
    row-gap: 0;
  }
  .row-gap-lg-1 {
    row-gap: 4px;
  }
  .row-gap-lg-2 {
    row-gap: 8px;
  }
  .row-gap-lg-3 {
    row-gap: 12px;
  }
  .row-gap-lg-4 {
    row-gap: 16px;
  }
}
@media (min-width: 1200px) {
  .row-gap-xl-0 {
    row-gap: 0;
  }
  .row-gap-xl-1 {
    row-gap: 4px;
  }
  .row-gap-xl-2 {
    row-gap: 8px;
  }
  .row-gap-xl-3 {
    row-gap: 12px;
  }
  .row-gap-xl-4 {
    row-gap: 16px;
  }
}
@media (min-width: 1400px) {
  .row-gap-xxl-0 {
    row-gap: 0;
  }
  .row-gap-xxl-1 {
    row-gap: 4px;
  }
  .row-gap-xxl-2 {
    row-gap: 8px;
  }
  .row-gap-xxl-3 {
    row-gap: 12px;
  }
  .row-gap-xxl-4 {
    row-gap: 16px;
  }
}
/***************************************************************************
* All Gap Classes
**************************************************************************/
.gap-0 {
  -moz-column-gap: 0;
       column-gap: 0;
  row-gap: 0;
}

.gap-1 {
  -moz-column-gap: 4px;
       column-gap: 4px;
  row-gap: 4px;
}

.gap-2 {
  -moz-column-gap: 8px;
       column-gap: 8px;
  row-gap: 8px;
}

.gap-3 {
  -moz-column-gap: 12px;
       column-gap: 12px;
  row-gap: 12px;
}

.gap-4 {
  -moz-column-gap: 16px;
       column-gap: 16px;
  row-gap: 16px;
}

@media (min-width: 0) {
  .gap-xs-0 {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 0;
  }
  .gap-xs-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
    row-gap: 4px;
  }
  .gap-xs-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
    row-gap: 8px;
  }
  .gap-xs-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
    row-gap: 12px;
  }
  .gap-xs-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
@media (min-width: 576px) {
  .gap-sm-0 {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 0;
  }
  .gap-sm-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
    row-gap: 4px;
  }
  .gap-sm-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
    row-gap: 8px;
  }
  .gap-sm-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
    row-gap: 12px;
  }
  .gap-sm-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
@media (min-width: 768px) {
  .gap-md-0 {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 0;
  }
  .gap-md-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
    row-gap: 4px;
  }
  .gap-md-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
    row-gap: 8px;
  }
  .gap-md-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
    row-gap: 12px;
  }
  .gap-md-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
@media (min-width: 992px) {
  .gap-lg-0 {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 0;
  }
  .gap-lg-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
    row-gap: 4px;
  }
  .gap-lg-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
    row-gap: 8px;
  }
  .gap-lg-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
    row-gap: 12px;
  }
  .gap-lg-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
@media (min-width: 1200px) {
  .gap-xl-0 {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 0;
  }
  .gap-xl-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
    row-gap: 4px;
  }
  .gap-xl-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
    row-gap: 8px;
  }
  .gap-xl-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
    row-gap: 12px;
  }
  .gap-xl-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
@media (min-width: 1400px) {
  .gap-xxl-0 {
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 0;
  }
  .gap-xxl-1 {
    -moz-column-gap: 4px;
         column-gap: 4px;
    row-gap: 4px;
  }
  .gap-xxl-2 {
    -moz-column-gap: 8px;
         column-gap: 8px;
    row-gap: 8px;
  }
  .gap-xxl-3 {
    -moz-column-gap: 12px;
         column-gap: 12px;
    row-gap: 12px;
  }
  .gap-xxl-4 {
    -moz-column-gap: 16px;
         column-gap: 16px;
    row-gap: 16px;
  }
}
/***************************************************************************
* Padding Classes
**************************************************************************/
.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 4px !important;
}

.p-2 {
  padding: 8px !important;
}

.p-3 {
  padding: 12px !important;
}

.p-4 {
  padding: 16px !important;
}

@media (min-width: 0) {
  .p-xs-0 {
    padding: 0 !important;
  }
  .p-xs-1 {
    padding: 4px !important;
  }
  .p-xs-2 {
    padding: 8px !important;
  }
  .p-xs-3 {
    padding: 12px !important;
  }
  .p-xs-4 {
    padding: 16px !important;
  }
}
@media (min-width: 576px) {
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 4px !important;
  }
  .p-sm-2 {
    padding: 8px !important;
  }
  .p-sm-3 {
    padding: 12px !important;
  }
  .p-sm-4 {
    padding: 16px !important;
  }
}
@media (min-width: 768px) {
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 4px !important;
  }
  .p-md-2 {
    padding: 8px !important;
  }
  .p-md-3 {
    padding: 12px !important;
  }
  .p-md-4 {
    padding: 16px !important;
  }
}
@media (min-width: 992px) {
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 4px !important;
  }
  .p-lg-2 {
    padding: 8px !important;
  }
  .p-lg-3 {
    padding: 12px !important;
  }
  .p-lg-4 {
    padding: 16px !important;
  }
}
@media (min-width: 1200px) {
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 4px !important;
  }
  .p-xl-2 {
    padding: 8px !important;
  }
  .p-xl-3 {
    padding: 12px !important;
  }
  .p-xl-4 {
    padding: 16px !important;
  }
}
@media (min-width: 1400px) {
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 4px !important;
  }
  .p-xxl-2 {
    padding: 8px !important;
  }
  .p-xxl-3 {
    padding: 12px !important;
  }
  .p-xxl-4 {
    padding: 16px !important;
  }
}
.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 4px !important;
}

.pt-2 {
  padding-top: 8px !important;
}

.pt-3 {
  padding-top: 12px !important;
}

.pt-4 {
  padding-top: 16px !important;
}

@media (min-width: 0) {
  .pt-xs-0 {
    padding-top: 0 !important;
  }
  .pt-xs-1 {
    padding-top: 4px !important;
  }
  .pt-xs-2 {
    padding-top: 8px !important;
  }
  .pt-xs-3 {
    padding-top: 12px !important;
  }
  .pt-xs-4 {
    padding-top: 16px !important;
  }
}
@media (min-width: 576px) {
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 4px !important;
  }
  .pt-sm-2 {
    padding-top: 8px !important;
  }
  .pt-sm-3 {
    padding-top: 12px !important;
  }
  .pt-sm-4 {
    padding-top: 16px !important;
  }
}
@media (min-width: 768px) {
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 4px !important;
  }
  .pt-md-2 {
    padding-top: 8px !important;
  }
  .pt-md-3 {
    padding-top: 12px !important;
  }
  .pt-md-4 {
    padding-top: 16px !important;
  }
}
@media (min-width: 992px) {
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 4px !important;
  }
  .pt-lg-2 {
    padding-top: 8px !important;
  }
  .pt-lg-3 {
    padding-top: 12px !important;
  }
  .pt-lg-4 {
    padding-top: 16px !important;
  }
}
@media (min-width: 1200px) {
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 4px !important;
  }
  .pt-xl-2 {
    padding-top: 8px !important;
  }
  .pt-xl-3 {
    padding-top: 12px !important;
  }
  .pt-xl-4 {
    padding-top: 16px !important;
  }
}
@media (min-width: 1400px) {
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 4px !important;
  }
  .pt-xxl-2 {
    padding-top: 8px !important;
  }
  .pt-xxl-3 {
    padding-top: 12px !important;
  }
  .pt-xxl-4 {
    padding-top: 16px !important;
  }
}
.pb-0 {
  padding-bottom: 0 !important;
}

.pb-1 {
  padding-bottom: 4px !important;
}

.pb-2 {
  padding-bottom: 8px !important;
}

.pb-3 {
  padding-bottom: 12px !important;
}

.pb-4 {
  padding-bottom: 16px !important;
}

@media (min-width: 0) {
  .pb-xs-0 {
    padding-bottom: 0 !important;
  }
  .pb-xs-1 {
    padding-bottom: 4px !important;
  }
  .pb-xs-2 {
    padding-bottom: 8px !important;
  }
  .pb-xs-3 {
    padding-bottom: 12px !important;
  }
  .pb-xs-4 {
    padding-bottom: 16px !important;
  }
}
@media (min-width: 576px) {
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 4px !important;
  }
  .pb-sm-2 {
    padding-bottom: 8px !important;
  }
  .pb-sm-3 {
    padding-bottom: 12px !important;
  }
  .pb-sm-4 {
    padding-bottom: 16px !important;
  }
}
@media (min-width: 768px) {
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 4px !important;
  }
  .pb-md-2 {
    padding-bottom: 8px !important;
  }
  .pb-md-3 {
    padding-bottom: 12px !important;
  }
  .pb-md-4 {
    padding-bottom: 16px !important;
  }
}
@media (min-width: 992px) {
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 4px !important;
  }
  .pb-lg-2 {
    padding-bottom: 8px !important;
  }
  .pb-lg-3 {
    padding-bottom: 12px !important;
  }
  .pb-lg-4 {
    padding-bottom: 16px !important;
  }
}
@media (min-width: 1200px) {
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 4px !important;
  }
  .pb-xl-2 {
    padding-bottom: 8px !important;
  }
  .pb-xl-3 {
    padding-bottom: 12px !important;
  }
  .pb-xl-4 {
    padding-bottom: 16px !important;
  }
}
@media (min-width: 1400px) {
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 4px !important;
  }
  .pb-xxl-2 {
    padding-bottom: 8px !important;
  }
  .pb-xxl-3 {
    padding-bottom: 12px !important;
  }
  .pb-xxl-4 {
    padding-bottom: 16px !important;
  }
}
.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 4px !important;
}

.pe-2 {
  padding-right: 8px !important;
}

.pe-3 {
  padding-right: 12px !important;
}

.pe-4 {
  padding-right: 16px !important;
}

@media (min-width: 0) {
  .pe-xs-0 {
    padding-right: 0 !important;
  }
  .pe-xs-1 {
    padding-right: 4px !important;
  }
  .pe-xs-2 {
    padding-right: 8px !important;
  }
  .pe-xs-3 {
    padding-right: 12px !important;
  }
  .pe-xs-4 {
    padding-right: 16px !important;
  }
}
@media (min-width: 576px) {
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 4px !important;
  }
  .pe-sm-2 {
    padding-right: 8px !important;
  }
  .pe-sm-3 {
    padding-right: 12px !important;
  }
  .pe-sm-4 {
    padding-right: 16px !important;
  }
}
@media (min-width: 768px) {
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 4px !important;
  }
  .pe-md-2 {
    padding-right: 8px !important;
  }
  .pe-md-3 {
    padding-right: 12px !important;
  }
  .pe-md-4 {
    padding-right: 16px !important;
  }
}
@media (min-width: 992px) {
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 4px !important;
  }
  .pe-lg-2 {
    padding-right: 8px !important;
  }
  .pe-lg-3 {
    padding-right: 12px !important;
  }
  .pe-lg-4 {
    padding-right: 16px !important;
  }
}
@media (min-width: 1200px) {
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 4px !important;
  }
  .pe-xl-2 {
    padding-right: 8px !important;
  }
  .pe-xl-3 {
    padding-right: 12px !important;
  }
  .pe-xl-4 {
    padding-right: 16px !important;
  }
}
@media (min-width: 1400px) {
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 4px !important;
  }
  .pe-xxl-2 {
    padding-right: 8px !important;
  }
  .pe-xxl-3 {
    padding-right: 12px !important;
  }
  .pe-xxl-4 {
    padding-right: 16px !important;
  }
}
.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 4px !important;
}

.ps-2 {
  padding-left: 8px !important;
}

.ps-3 {
  padding-left: 12px !important;
}

.ps-4 {
  padding-left: 16px !important;
}

@media (min-width: 0) {
  .ps-xs-0 {
    padding-left: 0 !important;
  }
  .ps-xs-1 {
    padding-left: 4px !important;
  }
  .ps-xs-2 {
    padding-left: 8px !important;
  }
  .ps-xs-3 {
    padding-left: 12px !important;
  }
  .ps-xs-4 {
    padding-left: 16px !important;
  }
}
@media (min-width: 576px) {
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 4px !important;
  }
  .ps-sm-2 {
    padding-left: 8px !important;
  }
  .ps-sm-3 {
    padding-left: 12px !important;
  }
  .ps-sm-4 {
    padding-left: 16px !important;
  }
}
@media (min-width: 768px) {
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 4px !important;
  }
  .ps-md-2 {
    padding-left: 8px !important;
  }
  .ps-md-3 {
    padding-left: 12px !important;
  }
  .ps-md-4 {
    padding-left: 16px !important;
  }
}
@media (min-width: 992px) {
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 4px !important;
  }
  .ps-lg-2 {
    padding-left: 8px !important;
  }
  .ps-lg-3 {
    padding-left: 12px !important;
  }
  .ps-lg-4 {
    padding-left: 16px !important;
  }
}
@media (min-width: 1200px) {
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 4px !important;
  }
  .ps-xl-2 {
    padding-left: 8px !important;
  }
  .ps-xl-3 {
    padding-left: 12px !important;
  }
  .ps-xl-4 {
    padding-left: 16px !important;
  }
}
@media (min-width: 1400px) {
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 4px !important;
  }
  .ps-xxl-2 {
    padding-left: 8px !important;
  }
  .ps-xxl-3 {
    padding-left: 12px !important;
  }
  .ps-xxl-4 {
    padding-left: 16px !important;
  }
}
.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

.py-2 {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.py-3 {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.py-4 {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

@media (min-width: 0) {
  .py-xs-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xs-1 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  .py-xs-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .py-xs-3 {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .py-xs-4 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
}
@media (min-width: 576px) {
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  .py-sm-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .py-sm-3 {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .py-sm-4 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
}
@media (min-width: 768px) {
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  .py-md-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .py-md-3 {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .py-md-4 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
}
@media (min-width: 992px) {
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  .py-lg-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .py-lg-3 {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .py-lg-4 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
}
@media (min-width: 1200px) {
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  .py-xl-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .py-xl-3 {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .py-xl-4 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
}
@media (min-width: 1400px) {
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }
  .py-xxl-2 {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }
  .py-xxl-3 {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }
  .py-xxl-4 {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }
}
.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-1 {
  padding-right: 4px !important;
  padding-left: 4px !important;
}

.px-2 {
  padding-right: 8px !important;
  padding-left: 8px !important;
}

.px-3 {
  padding-right: 12px !important;
  padding-left: 12px !important;
}

.px-4 {
  padding-right: 16px !important;
  padding-left: 16px !important;
}

@media (min-width: 0) {
  .px-xs-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xs-1 {
    padding-right: 4px !important;
    padding-left: 4px !important;
  }
  .px-xs-2 {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }
  .px-xs-3 {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  .px-xs-4 {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}
@media (min-width: 576px) {
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 4px !important;
    padding-left: 4px !important;
  }
  .px-sm-2 {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }
  .px-sm-3 {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  .px-sm-4 {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}
@media (min-width: 768px) {
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 4px !important;
    padding-left: 4px !important;
  }
  .px-md-2 {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }
  .px-md-3 {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  .px-md-4 {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}
@media (min-width: 992px) {
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 4px !important;
    padding-left: 4px !important;
  }
  .px-lg-2 {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }
  .px-lg-3 {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  .px-lg-4 {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}
@media (min-width: 1200px) {
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 4px !important;
    padding-left: 4px !important;
  }
  .px-xl-2 {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }
  .px-xl-3 {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  .px-xl-4 {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}
@media (min-width: 1400px) {
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 4px !important;
    padding-left: 4px !important;
  }
  .px-xxl-2 {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }
  .px-xxl-3 {
    padding-right: 12px !important;
    padding-left: 12px !important;
  }
  .px-xxl-4 {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }
}
/***************************************************************************
* Margin Classes
**************************************************************************/
.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 4px !important;
}

.m-2 {
  margin: 8px !important;
}

.m-3 {
  margin: 12px !important;
}

.m-4 {
  margin: 16px !important;
}

@media (min-width: 0) {
  .m-xs-0 {
    margin: 0 !important;
  }
  .m-xs-1 {
    margin: 4px !important;
  }
  .m-xs-2 {
    margin: 8px !important;
  }
  .m-xs-3 {
    margin: 12px !important;
  }
  .m-xs-4 {
    margin: 16px !important;
  }
}
@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .m-sm-1 {
    margin: 4px !important;
  }
  .m-sm-2 {
    margin: 8px !important;
  }
  .m-sm-3 {
    margin: 12px !important;
  }
  .m-sm-4 {
    margin: 16px !important;
  }
}
@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .m-md-1 {
    margin: 4px !important;
  }
  .m-md-2 {
    margin: 8px !important;
  }
  .m-md-3 {
    margin: 12px !important;
  }
  .m-md-4 {
    margin: 16px !important;
  }
}
@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .m-lg-1 {
    margin: 4px !important;
  }
  .m-lg-2 {
    margin: 8px !important;
  }
  .m-lg-3 {
    margin: 12px !important;
  }
  .m-lg-4 {
    margin: 16px !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .m-xl-1 {
    margin: 4px !important;
  }
  .m-xl-2 {
    margin: 8px !important;
  }
  .m-xl-3 {
    margin: 12px !important;
  }
  .m-xl-4 {
    margin: 16px !important;
  }
}
@media (min-width: 1400px) {
  .m-xxl-0 {
    margin: 0 !important;
  }
  .m-xxl-1 {
    margin: 4px !important;
  }
  .m-xxl-2 {
    margin: 8px !important;
  }
  .m-xxl-3 {
    margin: 12px !important;
  }
  .m-xxl-4 {
    margin: 16px !important;
  }
}
.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: 4px !important;
}

.mt-2 {
  margin-top: 8px !important;
}

.mt-3 {
  margin-top: 12px !important;
}

.mt-4 {
  margin-top: 16px !important;
}

@media (min-width: 0) {
  .mt-xs-0 {
    margin-top: 0 !important;
  }
  .mt-xs-1 {
    margin-top: 4px !important;
  }
  .mt-xs-2 {
    margin-top: 8px !important;
  }
  .mt-xs-3 {
    margin-top: 12px !important;
  }
  .mt-xs-4 {
    margin-top: 16px !important;
  }
}
@media (min-width: 576px) {
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 4px !important;
  }
  .mt-sm-2 {
    margin-top: 8px !important;
  }
  .mt-sm-3 {
    margin-top: 12px !important;
  }
  .mt-sm-4 {
    margin-top: 16px !important;
  }
}
@media (min-width: 768px) {
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 4px !important;
  }
  .mt-md-2 {
    margin-top: 8px !important;
  }
  .mt-md-3 {
    margin-top: 12px !important;
  }
  .mt-md-4 {
    margin-top: 16px !important;
  }
}
@media (min-width: 992px) {
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 4px !important;
  }
  .mt-lg-2 {
    margin-top: 8px !important;
  }
  .mt-lg-3 {
    margin-top: 12px !important;
  }
  .mt-lg-4 {
    margin-top: 16px !important;
  }
}
@media (min-width: 1200px) {
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 4px !important;
  }
  .mt-xl-2 {
    margin-top: 8px !important;
  }
  .mt-xl-3 {
    margin-top: 12px !important;
  }
  .mt-xl-4 {
    margin-top: 16px !important;
  }
}
@media (min-width: 1400px) {
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 4px !important;
  }
  .mt-xxl-2 {
    margin-top: 8px !important;
  }
  .mt-xxl-3 {
    margin-top: 12px !important;
  }
  .mt-xxl-4 {
    margin-top: 16px !important;
  }
}
.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 4px !important;
}

.mb-2 {
  margin-bottom: 8px !important;
}

.mb-3 {
  margin-bottom: 12px !important;
}

.mb-4 {
  margin-bottom: 16px !important;
}

@media (min-width: 0) {
  .mb-xs-0 {
    margin-bottom: 0 !important;
  }
  .mb-xs-1 {
    margin-bottom: 4px !important;
  }
  .mb-xs-2 {
    margin-bottom: 8px !important;
  }
  .mb-xs-3 {
    margin-bottom: 12px !important;
  }
  .mb-xs-4 {
    margin-bottom: 16px !important;
  }
}
@media (min-width: 576px) {
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 4px !important;
  }
  .mb-sm-2 {
    margin-bottom: 8px !important;
  }
  .mb-sm-3 {
    margin-bottom: 12px !important;
  }
  .mb-sm-4 {
    margin-bottom: 16px !important;
  }
}
@media (min-width: 768px) {
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 4px !important;
  }
  .mb-md-2 {
    margin-bottom: 8px !important;
  }
  .mb-md-3 {
    margin-bottom: 12px !important;
  }
  .mb-md-4 {
    margin-bottom: 16px !important;
  }
}
@media (min-width: 992px) {
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 4px !important;
  }
  .mb-lg-2 {
    margin-bottom: 8px !important;
  }
  .mb-lg-3 {
    margin-bottom: 12px !important;
  }
  .mb-lg-4 {
    margin-bottom: 16px !important;
  }
}
@media (min-width: 1200px) {
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 4px !important;
  }
  .mb-xl-2 {
    margin-bottom: 8px !important;
  }
  .mb-xl-3 {
    margin-bottom: 12px !important;
  }
  .mb-xl-4 {
    margin-bottom: 16px !important;
  }
}
@media (min-width: 1400px) {
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 4px !important;
  }
  .mb-xxl-2 {
    margin-bottom: 8px !important;
  }
  .mb-xxl-3 {
    margin-bottom: 12px !important;
  }
  .mb-xxl-4 {
    margin-bottom: 16px !important;
  }
}
.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 4px !important;
}

.me-2 {
  margin-right: 8px !important;
}

.me-3 {
  margin-right: 12px !important;
}

.me-4 {
  margin-right: 16px !important;
}

@media (min-width: 0) {
  .me-xs-0 {
    margin-right: 0 !important;
  }
  .me-xs-1 {
    margin-right: 4px !important;
  }
  .me-xs-2 {
    margin-right: 8px !important;
  }
  .me-xs-3 {
    margin-right: 12px !important;
  }
  .me-xs-4 {
    margin-right: 16px !important;
  }
}
@media (min-width: 576px) {
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 4px !important;
  }
  .me-sm-2 {
    margin-right: 8px !important;
  }
  .me-sm-3 {
    margin-right: 12px !important;
  }
  .me-sm-4 {
    margin-right: 16px !important;
  }
}
@media (min-width: 768px) {
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 4px !important;
  }
  .me-md-2 {
    margin-right: 8px !important;
  }
  .me-md-3 {
    margin-right: 12px !important;
  }
  .me-md-4 {
    margin-right: 16px !important;
  }
}
@media (min-width: 992px) {
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 4px !important;
  }
  .me-lg-2 {
    margin-right: 8px !important;
  }
  .me-lg-3 {
    margin-right: 12px !important;
  }
  .me-lg-4 {
    margin-right: 16px !important;
  }
}
@media (min-width: 1200px) {
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 4px !important;
  }
  .me-xl-2 {
    margin-right: 8px !important;
  }
  .me-xl-3 {
    margin-right: 12px !important;
  }
  .me-xl-4 {
    margin-right: 16px !important;
  }
}
@media (min-width: 1400px) {
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 4px !important;
  }
  .me-xxl-2 {
    margin-right: 8px !important;
  }
  .me-xxl-3 {
    margin-right: 12px !important;
  }
  .me-xxl-4 {
    margin-right: 16px !important;
  }
}
.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 4px !important;
}

.ms-2 {
  margin-left: 8px !important;
}

.ms-3 {
  margin-left: 12px !important;
}

.ms-4 {
  margin-left: 16px !important;
}

@media (min-width: 0) {
  .ms-xs-0 {
    margin-left: 0 !important;
  }
  .ms-xs-1 {
    margin-left: 4px !important;
  }
  .ms-xs-2 {
    margin-left: 8px !important;
  }
  .ms-xs-3 {
    margin-left: 12px !important;
  }
  .ms-xs-4 {
    margin-left: 16px !important;
  }
}
@media (min-width: 576px) {
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 4px !important;
  }
  .ms-sm-2 {
    margin-left: 8px !important;
  }
  .ms-sm-3 {
    margin-left: 12px !important;
  }
  .ms-sm-4 {
    margin-left: 16px !important;
  }
}
@media (min-width: 768px) {
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 4px !important;
  }
  .ms-md-2 {
    margin-left: 8px !important;
  }
  .ms-md-3 {
    margin-left: 12px !important;
  }
  .ms-md-4 {
    margin-left: 16px !important;
  }
}
@media (min-width: 992px) {
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 4px !important;
  }
  .ms-lg-2 {
    margin-left: 8px !important;
  }
  .ms-lg-3 {
    margin-left: 12px !important;
  }
  .ms-lg-4 {
    margin-left: 16px !important;
  }
}
@media (min-width: 1200px) {
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 4px !important;
  }
  .ms-xl-2 {
    margin-left: 8px !important;
  }
  .ms-xl-3 {
    margin-left: 12px !important;
  }
  .ms-xl-4 {
    margin-left: 16px !important;
  }
}
@media (min-width: 1400px) {
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 4px !important;
  }
  .ms-xxl-2 {
    margin-left: 8px !important;
  }
  .ms-xxl-3 {
    margin-left: 12px !important;
  }
  .ms-xxl-4 {
    margin-left: 16px !important;
  }
}
.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

.my-2 {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.my-3 {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
}

.my-4 {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

@media (min-width: 0) {
  .my-xs-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xs-1 {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
  .my-xs-2 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
  .my-xs-3 {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  .my-xs-4 {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
  }
}
@media (min-width: 576px) {
  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-sm-1 {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
  .my-sm-2 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
  .my-sm-3 {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  .my-sm-4 {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
  }
}
@media (min-width: 768px) {
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
  .my-md-2 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
  .my-md-3 {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  .my-md-4 {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
  }
}
@media (min-width: 992px) {
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
  .my-lg-2 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
  .my-lg-3 {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  .my-lg-4 {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
  }
}
@media (min-width: 1200px) {
  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xl-1 {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
  .my-xl-2 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
  .my-xl-3 {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  .my-xl-4 {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
  }
}
@media (min-width: 1400px) {
  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xxl-1 {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
  }
  .my-xxl-2 {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
  .my-xxl-3 {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
  }
  .my-xxl-4 {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
  }
}
.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: 4px !important;
  margin-left: 4px !important;
}

.mx-2 {
  margin-right: 8px !important;
  margin-left: 8px !important;
}

.mx-3 {
  margin-right: 12px !important;
  margin-left: 12px !important;
}

.mx-4 {
  margin-right: 16px !important;
  margin-left: 16px !important;
}

@media (min-width: 0) {
  .mx-xs-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xs-1 {
    margin-right: 4px !important;
    margin-left: 4px !important;
  }
  .mx-xs-2 {
    margin-right: 8px !important;
    margin-left: 8px !important;
  }
  .mx-xs-3 {
    margin-right: 12px !important;
    margin-left: 12px !important;
  }
  .mx-xs-4 {
    margin-right: 16px !important;
    margin-left: 16px !important;
  }
}
@media (min-width: 576px) {
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 4px !important;
    margin-left: 4px !important;
  }
  .mx-sm-2 {
    margin-right: 8px !important;
    margin-left: 8px !important;
  }
  .mx-sm-3 {
    margin-right: 12px !important;
    margin-left: 12px !important;
  }
  .mx-sm-4 {
    margin-right: 16px !important;
    margin-left: 16px !important;
  }
}
@media (min-width: 768px) {
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 4px !important;
    margin-left: 4px !important;
  }
  .mx-md-2 {
    margin-right: 8px !important;
    margin-left: 8px !important;
  }
  .mx-md-3 {
    margin-right: 12px !important;
    margin-left: 12px !important;
  }
  .mx-md-4 {
    margin-right: 16px !important;
    margin-left: 16px !important;
  }
}
@media (min-width: 992px) {
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 4px !important;
    margin-left: 4px !important;
  }
  .mx-lg-2 {
    margin-right: 8px !important;
    margin-left: 8px !important;
  }
  .mx-lg-3 {
    margin-right: 12px !important;
    margin-left: 12px !important;
  }
  .mx-lg-4 {
    margin-right: 16px !important;
    margin-left: 16px !important;
  }
}
@media (min-width: 1200px) {
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 4px !important;
    margin-left: 4px !important;
  }
  .mx-xl-2 {
    margin-right: 8px !important;
    margin-left: 8px !important;
  }
  .mx-xl-3 {
    margin-right: 12px !important;
    margin-left: 12px !important;
  }
  .mx-xl-4 {
    margin-right: 16px !important;
    margin-left: 16px !important;
  }
}
@media (min-width: 1400px) {
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 4px !important;
    margin-left: 4px !important;
  }
  .mx-xxl-2 {
    margin-right: 8px !important;
    margin-left: 8px !important;
  }
  .mx-xxl-3 {
    margin-right: 12px !important;
    margin-left: 12px !important;
  }
  .mx-xxl-4 {
    margin-right: 16px !important;
    margin-left: 16px !important;
  }
}
/***************************************************************************
* Border Radius Classes
**************************************************************************/
.br-0 {
  border-radius: 0 !important;
}

.br-1 {
  border-radius: 4px !important;
}

.br-2 {
  border-radius: 8px !important;
}

.br-3 {
  border-radius: 12px !important;
}

.br-4 {
  border-radius: 16px !important;
}

@media (min-width: 0) {
  .br-xs-0 {
    border-radius: 0 !important;
  }
  .br-xs-1 {
    border-radius: 4px !important;
  }
  .br-xs-2 {
    border-radius: 8px !important;
  }
  .br-xs-3 {
    border-radius: 12px !important;
  }
  .br-xs-4 {
    border-radius: 16px !important;
  }
}
@media (min-width: 576px) {
  .br-sm-0 {
    border-radius: 0 !important;
  }
  .br-sm-1 {
    border-radius: 4px !important;
  }
  .br-sm-2 {
    border-radius: 8px !important;
  }
  .br-sm-3 {
    border-radius: 12px !important;
  }
  .br-sm-4 {
    border-radius: 16px !important;
  }
}
@media (min-width: 768px) {
  .br-md-0 {
    border-radius: 0 !important;
  }
  .br-md-1 {
    border-radius: 4px !important;
  }
  .br-md-2 {
    border-radius: 8px !important;
  }
  .br-md-3 {
    border-radius: 12px !important;
  }
  .br-md-4 {
    border-radius: 16px !important;
  }
}
@media (min-width: 992px) {
  .br-lg-0 {
    border-radius: 0 !important;
  }
  .br-lg-1 {
    border-radius: 4px !important;
  }
  .br-lg-2 {
    border-radius: 8px !important;
  }
  .br-lg-3 {
    border-radius: 12px !important;
  }
  .br-lg-4 {
    border-radius: 16px !important;
  }
}
@media (min-width: 1200px) {
  .br-xl-0 {
    border-radius: 0 !important;
  }
  .br-xl-1 {
    border-radius: 4px !important;
  }
  .br-xl-2 {
    border-radius: 8px !important;
  }
  .br-xl-3 {
    border-radius: 12px !important;
  }
  .br-xl-4 {
    border-radius: 16px !important;
  }
}
@media (min-width: 1400px) {
  .br-xxl-0 {
    border-radius: 0 !important;
  }
  .br-xxl-1 {
    border-radius: 4px !important;
  }
  .br-xxl-2 {
    border-radius: 8px !important;
  }
  .br-xxl-3 {
    border-radius: 12px !important;
  }
  .br-xxl-4 {
    border-radius: 16px !important;
  }
}
/***************************************************************************
 * Percentage Layouts
 **************************************************************************/
.w-0 {
  width: 0;
}

.w-25 {
  width: 25%;
}

.w-50 {
  width: 50%;
}

.w-75 {
  width: 75%;
}

.w-100 {
  width: 100%;
}

@media (min-width: 0) {
  .w-xs-0 {
    width: 0;
  }
  .w-xs-25 {
    width: 25%;
  }
  .w-xs-50 {
    width: 50%;
  }
  .w-xs-75 {
    width: 75%;
  }
  .w-xs-100 {
    width: 100%;
  }
}
@media (min-width: 576px) {
  .w-sm-0 {
    width: 0;
  }
  .w-sm-25 {
    width: 25%;
  }
  .w-sm-50 {
    width: 50%;
  }
  .w-sm-75 {
    width: 75%;
  }
  .w-sm-100 {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .w-md-0 {
    width: 0;
  }
  .w-md-25 {
    width: 25%;
  }
  .w-md-50 {
    width: 50%;
  }
  .w-md-75 {
    width: 75%;
  }
  .w-md-100 {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .w-lg-0 {
    width: 0;
  }
  .w-lg-25 {
    width: 25%;
  }
  .w-lg-50 {
    width: 50%;
  }
  .w-lg-75 {
    width: 75%;
  }
  .w-lg-100 {
    width: 100%;
  }
}
@media (min-width: 1200px) {
  .w-xl-0 {
    width: 0;
  }
  .w-xl-25 {
    width: 25%;
  }
  .w-xl-50 {
    width: 50%;
  }
  .w-xl-75 {
    width: 75%;
  }
  .w-xl-100 {
    width: 100%;
  }
}
@media (min-width: 1400px) {
  .w-xxl-0 {
    width: 0;
  }
  .w-xxl-25 {
    width: 25%;
  }
  .w-xxl-50 {
    width: 50%;
  }
  .w-xxl-75 {
    width: 75%;
  }
  .w-xxl-100 {
    width: 100%;
  }
}
.h-0 {
  height: 0;
}

.h-25 {
  height: 25%;
}

.h-50 {
  height: 50%;
}

.h-75 {
  height: 75%;
}

.h-100 {
  height: 100%;
}

@media (min-width: 0) {
  .h-xs-0 {
    height: 0;
  }
  .h-xs-25 {
    height: 25%;
  }
  .h-xs-50 {
    height: 50%;
  }
  .h-xs-75 {
    height: 75%;
  }
  .h-xs-100 {
    height: 100%;
  }
}
@media (min-width: 576px) {
  .h-sm-0 {
    height: 0;
  }
  .h-sm-25 {
    height: 25%;
  }
  .h-sm-50 {
    height: 50%;
  }
  .h-sm-75 {
    height: 75%;
  }
  .h-sm-100 {
    height: 100%;
  }
}
@media (min-width: 768px) {
  .h-md-0 {
    height: 0;
  }
  .h-md-25 {
    height: 25%;
  }
  .h-md-50 {
    height: 50%;
  }
  .h-md-75 {
    height: 75%;
  }
  .h-md-100 {
    height: 100%;
  }
}
@media (min-width: 992px) {
  .h-lg-0 {
    height: 0;
  }
  .h-lg-25 {
    height: 25%;
  }
  .h-lg-50 {
    height: 50%;
  }
  .h-lg-75 {
    height: 75%;
  }
  .h-lg-100 {
    height: 100%;
  }
}
@media (min-width: 1200px) {
  .h-xl-0 {
    height: 0;
  }
  .h-xl-25 {
    height: 25%;
  }
  .h-xl-50 {
    height: 50%;
  }
  .h-xl-75 {
    height: 75%;
  }
  .h-xl-100 {
    height: 100%;
  }
}
@media (min-width: 1400px) {
  .h-xxl-0 {
    height: 0;
  }
  .h-xxl-25 {
    height: 25%;
  }
  .h-xxl-50 {
    height: 50%;
  }
  .h-xxl-75 {
    height: 75%;
  }
  .h-xxl-100 {
    height: 100%;
  }
}
/***************************************************************************
  * Position Classes
  **************************************************************************/
.top-0 {
  top: 0;
}

.top-25 {
  top: 25%;
}

.top-50 {
  top: 50%;
}

.top-75 {
  top: 75%;
}

.top-100 {
  top: 100%;
}

@media (min-width: 0) {
  .top-xs-0 {
    top: 0;
  }
  .top-xs-25 {
    top: 25%;
  }
  .top-xs-50 {
    top: 50%;
  }
  .top-xs-75 {
    top: 75%;
  }
  .top-xs-100 {
    top: 100%;
  }
}
@media (min-width: 576px) {
  .top-sm-0 {
    top: 0;
  }
  .top-sm-25 {
    top: 25%;
  }
  .top-sm-50 {
    top: 50%;
  }
  .top-sm-75 {
    top: 75%;
  }
  .top-sm-100 {
    top: 100%;
  }
}
@media (min-width: 768px) {
  .top-md-0 {
    top: 0;
  }
  .top-md-25 {
    top: 25%;
  }
  .top-md-50 {
    top: 50%;
  }
  .top-md-75 {
    top: 75%;
  }
  .top-md-100 {
    top: 100%;
  }
}
@media (min-width: 992px) {
  .top-lg-0 {
    top: 0;
  }
  .top-lg-25 {
    top: 25%;
  }
  .top-lg-50 {
    top: 50%;
  }
  .top-lg-75 {
    top: 75%;
  }
  .top-lg-100 {
    top: 100%;
  }
}
@media (min-width: 1200px) {
  .top-xl-0 {
    top: 0;
  }
  .top-xl-25 {
    top: 25%;
  }
  .top-xl-50 {
    top: 50%;
  }
  .top-xl-75 {
    top: 75%;
  }
  .top-xl-100 {
    top: 100%;
  }
}
@media (min-width: 1400px) {
  .top-xxl-0 {
    top: 0;
  }
  .top-xxl-25 {
    top: 25%;
  }
  .top-xxl-50 {
    top: 50%;
  }
  .top-xxl-75 {
    top: 75%;
  }
  .top-xxl-100 {
    top: 100%;
  }
}
.left-0 {
  left: 0;
}

.left-25 {
  left: 25%;
}

.left-50 {
  left: 50%;
}

.left-75 {
  left: 75%;
}

.left-100 {
  left: 100%;
}

@media (min-width: 0) {
  .left-xs-0 {
    left: 0;
  }
  .left-xs-25 {
    left: 25%;
  }
  .left-xs-50 {
    left: 50%;
  }
  .left-xs-75 {
    left: 75%;
  }
  .left-xs-100 {
    left: 100%;
  }
}
@media (min-width: 576px) {
  .left-sm-0 {
    left: 0;
  }
  .left-sm-25 {
    left: 25%;
  }
  .left-sm-50 {
    left: 50%;
  }
  .left-sm-75 {
    left: 75%;
  }
  .left-sm-100 {
    left: 100%;
  }
}
@media (min-width: 768px) {
  .left-md-0 {
    left: 0;
  }
  .left-md-25 {
    left: 25%;
  }
  .left-md-50 {
    left: 50%;
  }
  .left-md-75 {
    left: 75%;
  }
  .left-md-100 {
    left: 100%;
  }
}
@media (min-width: 992px) {
  .left-lg-0 {
    left: 0;
  }
  .left-lg-25 {
    left: 25%;
  }
  .left-lg-50 {
    left: 50%;
  }
  .left-lg-75 {
    left: 75%;
  }
  .left-lg-100 {
    left: 100%;
  }
}
@media (min-width: 1200px) {
  .left-xl-0 {
    left: 0;
  }
  .left-xl-25 {
    left: 25%;
  }
  .left-xl-50 {
    left: 50%;
  }
  .left-xl-75 {
    left: 75%;
  }
  .left-xl-100 {
    left: 100%;
  }
}
@media (min-width: 1400px) {
  .left-xxl-0 {
    left: 0;
  }
  .left-xxl-25 {
    left: 25%;
  }
  .left-xxl-50 {
    left: 50%;
  }
  .left-xxl-75 {
    left: 75%;
  }
  .left-xxl-100 {
    left: 100%;
  }
}
.right-0 {
  right: 0;
}

.right-25 {
  right: 25%;
}

.right-50 {
  right: 50%;
}

.right-75 {
  right: 75%;
}

.right-100 {
  right: 100%;
}

@media (min-width: 0) {
  .right-xs-0 {
    right: 0;
  }
  .right-xs-25 {
    right: 25%;
  }
  .right-xs-50 {
    right: 50%;
  }
  .right-xs-75 {
    right: 75%;
  }
  .right-xs-100 {
    right: 100%;
  }
}
@media (min-width: 576px) {
  .right-sm-0 {
    right: 0;
  }
  .right-sm-25 {
    right: 25%;
  }
  .right-sm-50 {
    right: 50%;
  }
  .right-sm-75 {
    right: 75%;
  }
  .right-sm-100 {
    right: 100%;
  }
}
@media (min-width: 768px) {
  .right-md-0 {
    right: 0;
  }
  .right-md-25 {
    right: 25%;
  }
  .right-md-50 {
    right: 50%;
  }
  .right-md-75 {
    right: 75%;
  }
  .right-md-100 {
    right: 100%;
  }
}
@media (min-width: 992px) {
  .right-lg-0 {
    right: 0;
  }
  .right-lg-25 {
    right: 25%;
  }
  .right-lg-50 {
    right: 50%;
  }
  .right-lg-75 {
    right: 75%;
  }
  .right-lg-100 {
    right: 100%;
  }
}
@media (min-width: 1200px) {
  .right-xl-0 {
    right: 0;
  }
  .right-xl-25 {
    right: 25%;
  }
  .right-xl-50 {
    right: 50%;
  }
  .right-xl-75 {
    right: 75%;
  }
  .right-xl-100 {
    right: 100%;
  }
}
@media (min-width: 1400px) {
  .right-xxl-0 {
    right: 0;
  }
  .right-xxl-25 {
    right: 25%;
  }
  .right-xxl-50 {
    right: 50%;
  }
  .right-xxl-75 {
    right: 75%;
  }
  .right-xxl-100 {
    right: 100%;
  }
}
.bottom-0 {
  bottom: 0;
}

.bottom-25 {
  bottom: 25%;
}

.bottom-50 {
  bottom: 50%;
}

.bottom-75 {
  bottom: 75%;
}

.bottom-100 {
  bottom: 100%;
}

@media (min-width: 0) {
  .bottom-xs-0 {
    bottom: 0;
  }
  .bottom-xs-25 {
    bottom: 25%;
  }
  .bottom-xs-50 {
    bottom: 50%;
  }
  .bottom-xs-75 {
    bottom: 75%;
  }
  .bottom-xs-100 {
    bottom: 100%;
  }
}
@media (min-width: 576px) {
  .bottom-sm-0 {
    bottom: 0;
  }
  .bottom-sm-25 {
    bottom: 25%;
  }
  .bottom-sm-50 {
    bottom: 50%;
  }
  .bottom-sm-75 {
    bottom: 75%;
  }
  .bottom-sm-100 {
    bottom: 100%;
  }
}
@media (min-width: 768px) {
  .bottom-md-0 {
    bottom: 0;
  }
  .bottom-md-25 {
    bottom: 25%;
  }
  .bottom-md-50 {
    bottom: 50%;
  }
  .bottom-md-75 {
    bottom: 75%;
  }
  .bottom-md-100 {
    bottom: 100%;
  }
}
@media (min-width: 992px) {
  .bottom-lg-0 {
    bottom: 0;
  }
  .bottom-lg-25 {
    bottom: 25%;
  }
  .bottom-lg-50 {
    bottom: 50%;
  }
  .bottom-lg-75 {
    bottom: 75%;
  }
  .bottom-lg-100 {
    bottom: 100%;
  }
}
@media (min-width: 1200px) {
  .bottom-xl-0 {
    bottom: 0;
  }
  .bottom-xl-25 {
    bottom: 25%;
  }
  .bottom-xl-50 {
    bottom: 50%;
  }
  .bottom-xl-75 {
    bottom: 75%;
  }
  .bottom-xl-100 {
    bottom: 100%;
  }
}
@media (min-width: 1400px) {
  .bottom-xxl-0 {
    bottom: 0;
  }
  .bottom-xxl-25 {
    bottom: 25%;
  }
  .bottom-xxl-50 {
    bottom: 50%;
  }
  .bottom-xxl-75 {
    bottom: 75%;
  }
  .bottom-xxl-100 {
    bottom: 100%;
  }
}
/***************************************************************************
 * Custom layouts
 **************************************************************************/
.m-auto {
  margin: auto;
}

@media (min-width: 0) {
  .m-xs-auto {
    margin: auto !important;
  }
}
@media (min-width: 576px) {
  .m-sm-auto {
    margin: auto !important;
  }
}
@media (min-width: 768px) {
  .m-md-auto {
    margin: auto !important;
  }
}
@media (min-width: 992px) {
  .m-lg-auto {
    margin: auto !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-auto {
    margin: auto !important;
  }
}
@media (min-width: 1400px) {
  .m-xxl-auto {
    margin: auto !important;
  }
}
.m-initial {
  margin: initial;
}

@media (min-width: 0) {
  .m-xs-initial {
    margin: initial !important;
  }
}
@media (min-width: 576px) {
  .m-sm-initial {
    margin: initial !important;
  }
}
@media (min-width: 768px) {
  .m-md-initial {
    margin: initial !important;
  }
}
@media (min-width: 992px) {
  .m-lg-initial {
    margin: initial !important;
  }
}
@media (min-width: 1200px) {
  .m-xl-initial {
    margin: initial !important;
  }
}
@media (min-width: 1400px) {
  .m-xxl-initial {
    margin: initial !important;
  }
}
.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1020;
}

@media (min-width: 0) {
  .sticky-xs-top {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 576px) {
  .sticky-sm-top {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 768px) {
  .sticky-md-top {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 992px) {
  .sticky-lg-top {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-top {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: sticky !important;
    top: 0 !important;
    z-index: 1020 !important;
  }
}
.sticky-bottom {
  position: sticky;
  bottom: 0;
  z-index: 1020;
}

@media (min-width: 0) {
  .sticky-xs-bottom {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 576px) {
  .sticky-sm-bottom {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 768px) {
  .sticky-md-bottom {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 992px) {
  .sticky-lg-bottom {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-bottom {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 1020 !important;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-bottom {
    position: sticky !important;
    bottom: 0 !important;
    z-index: 1020 !important;
  }
}
.fixed-top {
  position: fixed;
  right: 0;
  top: 0;
  left: 0;
  z-index: 1030;
}

@media (min-width: 0) {
  .fixed-xs-top {
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 576px) {
  .fixed-sm-top {
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 768px) {
  .fixed-md-top {
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 992px) {
  .fixed-lg-top {
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 1200px) {
  .fixed-xl-top {
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 1400px) {
  .fixed-xxl-top {
    position: fixed !important;
    right: 0 !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@media (min-width: 0) {
  .fixed-xs-bottom {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 576px) {
  .fixed-sm-bottom {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 768px) {
  .fixed-md-bottom {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 992px) {
  .fixed-lg-bottom {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 1200px) {
  .fixed-xl-bottom {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
@media (min-width: 1400px) {
  .fixed-xxl-bottom {
    position: fixed !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 1030 !important;
  }
}
.flex-v {
  display: flex;
  flex-direction: column;
}

@media (min-width: 0) {
  .flex-xs-v {
    display: flex !important;
    flex-direction: column !important;
  }
}
@media (min-width: 576px) {
  .flex-sm-v {
    display: flex !important;
    flex-direction: column !important;
  }
}
@media (min-width: 768px) {
  .flex-md-v {
    display: flex !important;
    flex-direction: column !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-v {
    display: flex !important;
    flex-direction: column !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-v {
    display: flex !important;
    flex-direction: column !important;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-v {
    display: flex !important;
    flex-direction: column !important;
  }
}
.flex-h {
  display: flex;
  flex-direction: row;
}

@media (min-width: 0) {
  .flex-xs-h {
    display: flex !important;
    flex-direction: row !important;
  }
}
@media (min-width: 576px) {
  .flex-sm-h {
    display: flex !important;
    flex-direction: row !important;
  }
}
@media (min-width: 768px) {
  .flex-md-h {
    display: flex !important;
    flex-direction: row !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-h {
    display: flex !important;
    flex-direction: row !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-h {
    display: flex !important;
    flex-direction: row !important;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-h {
    display: flex !important;
    flex-direction: row !important;
  }
}
.flex-v-rev {
  display: flex;
  flex-direction: column-reverse;
}

@media (min-width: 0) {
  .flex-xs-v-rev {
    display: flex !important;
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 576px) {
  .flex-sm-v-rev {
    display: flex !important;
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 768px) {
  .flex-md-v-rev {
    display: flex !important;
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-v-rev {
    display: flex !important;
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-v-rev {
    display: flex !important;
    flex-direction: column-reverse !important;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-v-rev {
    display: flex !important;
    flex-direction: column-reverse !important;
  }
}
.flex-h-rev {
  display: flex;
  flex-direction: row-reverse;
}

@media (min-width: 0) {
  .flex-xs-h-rev {
    display: flex !important;
    flex-direction: row-reverse !important;
  }
}
@media (min-width: 576px) {
  .flex-sm-h-rev {
    display: flex !important;
    flex-direction: row-reverse !important;
  }
}
@media (min-width: 768px) {
  .flex-md-h-rev {
    display: flex !important;
    flex-direction: row-reverse !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-h-rev {
    display: flex !important;
    flex-direction: row-reverse !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-h-rev {
    display: flex !important;
    flex-direction: row-reverse !important;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-h-rev {
    display: flex !important;
    flex-direction: row-reverse !important;
  }
}
.flex-wrap {
  flex-wrap: wrap;
}

@media (min-width: 0) {
  .flex-xs-wrap {
    flex-wrap: wrap !important;
  }
}
@media (min-width: 576px) {
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
}
@media (min-width: 768px) {
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
}
.flex-nowrap {
  flex-wrap: nowrap;
}

@media (min-width: 0) {
  .flex-xs-nowrap {
    flex-wrap: nowrap !important;
  }
}
@media (min-width: 576px) {
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
}
@media (min-width: 768px) {
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
}
@media (min-width: 992px) {
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
}
@media (min-width: 1200px) {
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
}
@media (min-width: 1400px) {
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
}
.flex-justify-start {
  justify-content: flex-start;
}

@media (min-width: 0) {
  .flex-justify-xs-start {
    justify-content: flex-start !important;
  }
}
@media (min-width: 576px) {
  .flex-justify-sm-start {
    justify-content: flex-start !important;
  }
}
@media (min-width: 768px) {
  .flex-justify-md-start {
    justify-content: flex-start !important;
  }
}
@media (min-width: 992px) {
  .flex-justify-lg-start {
    justify-content: flex-start !important;
  }
}
@media (min-width: 1200px) {
  .flex-justify-xl-start {
    justify-content: flex-start !important;
  }
}
@media (min-width: 1400px) {
  .flex-justify-xxl-start {
    justify-content: flex-start !important;
  }
}
.flex-justify-center {
  justify-content: center;
}

@media (min-width: 0) {
  .flex-justify-xs-center {
    justify-content: center !important;
  }
}
@media (min-width: 576px) {
  .flex-justify-sm-center {
    justify-content: center !important;
  }
}
@media (min-width: 768px) {
  .flex-justify-md-center {
    justify-content: center !important;
  }
}
@media (min-width: 992px) {
  .flex-justify-lg-center {
    justify-content: center !important;
  }
}
@media (min-width: 1200px) {
  .flex-justify-xl-center {
    justify-content: center !important;
  }
}
@media (min-width: 1400px) {
  .flex-justify-xxl-center {
    justify-content: center !important;
  }
}
.flex-justify-end {
  justify-content: flex-end;
}

@media (min-width: 0) {
  .flex-justify-xs-end {
    justify-content: flex-end !important;
  }
}
@media (min-width: 576px) {
  .flex-justify-sm-end {
    justify-content: flex-end !important;
  }
}
@media (min-width: 768px) {
  .flex-justify-md-end {
    justify-content: flex-end !important;
  }
}
@media (min-width: 992px) {
  .flex-justify-lg-end {
    justify-content: flex-end !important;
  }
}
@media (min-width: 1200px) {
  .flex-justify-xl-end {
    justify-content: flex-end !important;
  }
}
@media (min-width: 1400px) {
  .flex-justify-xxl-end {
    justify-content: flex-end !important;
  }
}
.flex-align-start {
  align-items: flex-start;
}

@media (min-width: 0) {
  .flex-align-xs-start {
    align-items: flex-start !important;
  }
}
@media (min-width: 576px) {
  .flex-align-sm-start {
    align-items: flex-start !important;
  }
}
@media (min-width: 768px) {
  .flex-align-md-start {
    align-items: flex-start !important;
  }
}
@media (min-width: 992px) {
  .flex-align-lg-start {
    align-items: flex-start !important;
  }
}
@media (min-width: 1200px) {
  .flex-align-xl-start {
    align-items: flex-start !important;
  }
}
@media (min-width: 1400px) {
  .flex-align-xxl-start {
    align-items: flex-start !important;
  }
}
.flex-align-center {
  align-items: center;
}

@media (min-width: 0) {
  .flex-align-xs-center {
    align-items: center !important;
  }
}
@media (min-width: 576px) {
  .flex-align-sm-center {
    align-items: center !important;
  }
}
@media (min-width: 768px) {
  .flex-align-md-center {
    align-items: center !important;
  }
}
@media (min-width: 992px) {
  .flex-align-lg-center {
    align-items: center !important;
  }
}
@media (min-width: 1200px) {
  .flex-align-xl-center {
    align-items: center !important;
  }
}
@media (min-width: 1400px) {
  .flex-align-xxl-center {
    align-items: center !important;
  }
}
.flex-align-end {
  align-items: flex-end;
}

@media (min-width: 0) {
  .flex-align-xs-end {
    align-items: flex-end !important;
  }
}
@media (min-width: 576px) {
  .flex-align-sm-end {
    align-items: flex-end !important;
  }
}
@media (min-width: 768px) {
  .flex-align-md-end {
    align-items: flex-end !important;
  }
}
@media (min-width: 992px) {
  .flex-align-lg-end {
    align-items: flex-end !important;
  }
}
@media (min-width: 1200px) {
  .flex-align-xl-end {
    align-items: flex-end !important;
  }
}
@media (min-width: 1400px) {
  .flex-align-xxl-end {
    align-items: flex-end !important;
  }
}
.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

@media (min-width: 0) {
  .order-xs-1 {
    order: 1;
  }
}

@media (min-width: 0) {
  .order-xs-2 {
    order: 2;
  }
}

@media (min-width: 0) {
  .order-xs-3 {
    order: 3;
  }
}

@media (min-width: 0) {
  .order-xs-4 {
    order: 4;
  }
}

@media (min-width: 0) {
  .order-xs-5 {
    order: 5;
  }
}

@media (min-width: 576px) {
  .order-sm-1 {
    order: 1;
  }
}

@media (min-width: 576px) {
  .order-sm-2 {
    order: 2;
  }
}

@media (min-width: 576px) {
  .order-sm-3 {
    order: 3;
  }
}

@media (min-width: 576px) {
  .order-sm-4 {
    order: 4;
  }
}

@media (min-width: 576px) {
  .order-sm-5 {
    order: 5;
  }
}

@media (min-width: 768px) {
  .order-md-1 {
    order: 1;
  }
}

@media (min-width: 768px) {
  .order-md-2 {
    order: 2;
  }
}

@media (min-width: 768px) {
  .order-md-3 {
    order: 3;
  }
}

@media (min-width: 768px) {
  .order-md-4 {
    order: 4;
  }
}

@media (min-width: 768px) {
  .order-md-5 {
    order: 5;
  }
}

@media (min-width: 992px) {
  .order-lg-1 {
    order: 1;
  }
}

@media (min-width: 992px) {
  .order-lg-2 {
    order: 2;
  }
}

@media (min-width: 992px) {
  .order-lg-3 {
    order: 3;
  }
}

@media (min-width: 992px) {
  .order-lg-4 {
    order: 4;
  }
}

@media (min-width: 992px) {
  .order-lg-5 {
    order: 5;
  }
}

@media (min-width: 1200px) {
  .order-xl-1 {
    order: 1;
  }
}

@media (min-width: 1200px) {
  .order-xl-2 {
    order: 2;
  }
}

@media (min-width: 1200px) {
  .order-xl-3 {
    order: 3;
  }
}

@media (min-width: 1200px) {
  .order-xl-4 {
    order: 4;
  }
}

@media (min-width: 1200px) {
  .order-xl-5 {
    order: 5;
  }
}

@media (min-width: 1400px) {
  .order-xxl-1 {
    order: 1;
  }
}

@media (min-width: 1400px) {
  .order-xxl-2 {
    order: 2;
  }
}

@media (min-width: 1400px) {
  .order-xxl-3 {
    order: 3;
  }
}

@media (min-width: 1400px) {
  .order-xxl-4 {
    order: 4;
  }
}

@media (min-width: 1400px) {
  .order-xxl-5 {
    order: 5;
  }
}

.order-first {
  order: -1;
}

@media (min-width: 0) {
  .order-xs-first {
    order: -1 !important;
  }
}
@media (min-width: 576px) {
  .order-sm-first {
    order: -1 !important;
  }
}
@media (min-width: 768px) {
  .order-md-first {
    order: -1 !important;
  }
}
@media (min-width: 992px) {
  .order-lg-first {
    order: -1 !important;
  }
}
@media (min-width: 1200px) {
  .order-xl-first {
    order: -1 !important;
  }
}
@media (min-width: 1400px) {
  .order-xxl-first {
    order: -1 !important;
  }
}
.order-last {
  order: 6;
}

@media (min-width: 0) {
  .order-xs-last {
    order: 6 !important;
  }
}
@media (min-width: 576px) {
  .order-sm-last {
    order: 6 !important;
  }
}
@media (min-width: 768px) {
  .order-md-last {
    order: 6 !important;
  }
}
@media (min-width: 992px) {
  .order-lg-last {
    order: 6 !important;
  }
}
@media (min-width: 1200px) {
  .order-xl-last {
    order: 6 !important;
  }
}
@media (min-width: 1400px) {
  .order-xxl-last {
    order: 6 !important;
  }
}
.overlay {
  position: absolute;
}

.border {
  border: 1px solid var(--md-sys-color-outline);
}

.img-fluid {
  overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
}

.img-ratio {
  position: relative;
  width: 100%;
  padding-top: attr(data-mdpg-aspectratio percentage);
  overflow: hidden;
}
.img-ratio img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.wrap {
  white-space: pre-wrap !important;
  text-overflow: ellipsis !important;
}

/* Panel Based
 - Any amount of panels
*/
.panel-container {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.panel-container .panel {
  position: absolute;
  width: inherit;
  height: -moz-fit-content;
  height: fit-content;
  padding: 4px;
  transition: transform 0.8s cubic-bezier(0.2, 0, 0, 1), opacity 0.6s cubic-bezier(0.2, 0, 0, 1);
  opacity: 0;
}
.panel-container .panel.before {
  transform: translateX(-100%);
}
.panel-container .panel.after {
  transform: translateX(100%);
}
.panel-container .panel.show {
  opacity: 1;
  transform: translateX(0);
}

form {
  margin: 0;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  content: "";
}

.center {
  margin: 0 auto;
  text-align: center;
}

.centerverthor {
  margin: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.g-recaptcha {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 8px 0 16px;
}

.anim-spin:hover {
  transform: rotate(10deg);
}

.anim-scale:hover {
  transform: scale(0.9);
}

.spinner {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  border: 12.8px solid var(--md-sys-color-secondary);
  animation: spinner-bulqg1 0.8s infinite linear alternate, spinner-oaa3wk 1.6s infinite linear;
}

.minispinner {
  padding: 5px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 4px solid var(--md-sys-color-on-secondary);
  animation: spinner-bulqg1 0.8s infinite linear alternate, spinner-oaa3wk 1.6s infinite linear;
}

@keyframes spinner-bulqg1 {
  0% {
    -webkit-clip-path: polygon(50% 50%, 0 0, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
            clip-path: polygon(50% 50%, 0 0, 50% 0%, 50% 0%, 50% 0%, 50% 0%, 50% 0%);
  }
  12.5% {
    -webkit-clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
            clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 0%, 100% 0%, 100% 0%);
  }
  25% {
    -webkit-clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 100% 100%, 100% 100%);
            clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 100% 100%, 100% 100%);
  }
  50% {
    -webkit-clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
            clip-path: polygon(50% 50%, 0 0, 50% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }
  62.5% {
    -webkit-clip-path: polygon(50% 50%, 100% 0, 100% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
            clip-path: polygon(50% 50%, 100% 0, 100% 0%, 100% 0%, 100% 100%, 50% 100%, 0% 100%);
  }
  75% {
    -webkit-clip-path: polygon(50% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 50% 100%, 0% 100%);
            clip-path: polygon(50% 50%, 100% 100%, 100% 100%, 100% 100%, 100% 100%, 50% 100%, 0% 100%);
  }
  100% {
    -webkit-clip-path: polygon(50% 50%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 0% 100%);
            clip-path: polygon(50% 50%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 50% 100%, 0% 100%);
  }
}
@keyframes spinner-oaa3wk {
  0% {
    transform: scaleY(1) rotate(0deg);
  }
  49.99% {
    transform: scaleY(1) rotate(135deg);
  }
  50% {
    transform: scaleY(-1) rotate(0deg);
  }
  100% {
    transform: scaleY(-1) rotate(-135deg);
  }
}
#map-canvas {
  height: 500px;
}

/* 000Webhost */
a[href="https://www.000webhost.com/?utm_source=000webhostapp&amp;utm_campaign=000_logo&amp;utm_medium=website&amp;utm_content=footer_img"],
img[src="https://cdn.000webhost.com/000webhost/logo/footer-powered-by-000webhost-white2.png"] {
  display: none !important;
}

.bg-primary {
  background-color: var(--md-sys-color-primary) !important;
  color: var(--md-sys-color-on-primary) !important;
}
.bg-primary-container {
  background-color: var(--md-sys-color-primary-container) !important;
  color: var(--md-sys-color-on-primary-container) !important;
}
.bg-secondary {
  background-color: var(--md-sys-color-secondary) !important;
  color: var(--md-sys-color-on-secondary) !important;
}
.bg-tertiary {
  background-color: var(--md-sys-color-tertiary) !important;
  color: var(--md-sys-color-on-tertiary) !important;
}
.bg-green {
  background-color: var(--md-custom-color-green) !important;
  color: var(--md-custom-color-on-green) !important;
}
.bg-yellow {
  background-color: var(--md-custom-color-yellow) !important;
  color: var(--md-custom-color-on-yellow) !important;
}
.bg-yellow-container {
  background-color: var(--md-custom-color-yellow-container) !important;
  color: var(--md-custom-color-on-yellow-container) !important;
}
.bg-error {
  background-color: var(--md-sys-color-error) !important;
  color: var(--md-sys-color-on-error) !important;
}
.bg-background {
  background-color: var(--md-sys-color-background) !important;
  color: var(--md-sys-color-on-background) !important;
}
.bg-on-primary {
  background-color: var(--md-sys-color-on-primary) !important;
  color: var(--md-sys-color-primary) !important;
}
.bg-on-primary-container {
  background-color: var(--md-sys-color-on-primary-container) !important;
  color: var(--md-sys-color-primary-container) !important;
}
.bg-on-secondary {
  background-color: var(--md-sys-color-on-secondary) !important;
  color: var(--md-sys-color-secondary) !important;
}
.bg-on-tertiary {
  background-color: var(--md-sys-color-on-tertiary) !important;
  color: var(--md-sys-color-tertiary) !important;
}
.bg-on-green {
  background-color: var(--md-custom-color-on-green) !important;
  color: var(--md-custom-color-green) !important;
}
.bg-on-yellow {
  background-color: var(--md-custom-color-on-yellow) !important;
  color: var(--md-custom-color-yellow) !important;
}
.bg-on-yellow-container {
  background-color: var(--md-custom-color-on-yellow-container) !important;
  color: var(--md-custom-color-yellow-container) !important;
}
.bg-on-error {
  background-color: var(--md-sys-color-on-error) !important;
  color: var(--md-sys-color-error) !important;
}
.bg-on-background {
  background-color: var(--md-sys-color-on-background) !important;
  color: var(--md-sys-color-background) !important;
}
.bg-inverse {
  background-color: var(--md-sys-color-inverse-surface) !important;
  color: var(--md-sys-color-inverse-on-surface) !important;
}
.bg-appbar {
  background-color: var(--md-sys-color-primary) !important;
  color: var(--md-sys-color-on-primary) !important;
}
[data-theme=dark] .bg-appbar {
  background-color: var(--md-sys-color-primary-container) !important;
  color: var(--md-sys-color-on-primary-container) !important;
}

.text-primary {
  color: var(--md-sys-color-primary) !important;
}
.text-primary-container {
  color: var(--md-sys-color-primary-container) !important;
}
.text-secondary {
  color: var(--md-sys-color-secondary) !important;
}
.text-secondary-container {
  color: var(--md-sys-color-secondary-container) !important;
}
.text-tertiary {
  color: var(--md-sys-color-tertiary) !important;
}
.text-tertiary-container {
  color: var(--md-sys-color-tertiary-container) !important;
}
.text-on-primary {
  color: var(--md-sys-color-on-primary) !important;
}
.text-on-primary-container {
  color: var(--md-sys-color-on-primary-container) !important;
}
.text-on-secondary {
  color: var(--md-sys-color-on-secondary) !important;
}
.text-on-secondary-container {
  color: var(--md-sys-color-on-secondary-container) !important;
}
.text-on-tertiary {
  color: var(--md-sys-color-on-tertiary) !important;
}
.text-on-tertiary-container {
  color: var(--md-sys-color-on-tertiary-container) !important;
}
.text-inverted {
  color: var(--md-sys-color-background) !important;
}
.text-green {
  color: var(--md-custom-color-green) !important;
}
.text-yellow {
  color: var(--md-custom-color-yellow) !important;
}
.text-yellow-container {
  color: var(--md-custom-color-yellow-container) !important;
}
.text-error {
  color: var(--md-sys-color-error) !important;
}
.text-on-image {
  color: var(--md-sys-color-background) !important;
}
[data-theme=dark] .text-on-image {
  color: var(--md-sys-color-on-background) !important;
}

.fill-primary {
  filter: var(--md-sys-filter-on-primary-container);
  transition: none;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.noclick {
  pointer-events: none;
}

.top-bar-icons .button, .nav-rail-toggler, .top-bar-toggler, .pagination .page-item, [class*=button-icon-] {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

p {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: initial;
  word-wrap: break-word;
}

.text-center {
  text-align: center;
}

.text-start {
  text-align: start;
}

.text-end {
  text-align: end;
}

.text-justify {
  text-align: justify;
}

.text-normal, .pagination .page-item {
  font-family: "Roboto Flex", sans-serif !important;
  font-size: inherit !important;
}

.text-bold {
  font-weight: 700;
}

.anim-none {
  animation: none !important;
}

.anim-grow {
  animation: md-grow 0.4s cubic-bezier(0, 0, 0, 1);
}

@keyframes md-grow {
  0% {
    transform: scale(0, 0);
    opacity: 0;
  }
  100% {
    transform: scale(1, 1);
    opacity: 1;
  }
}
@keyframes md-midgrow {
  0% {
    transform: scale(0.6, 0.6);
    opacity: 0;
  }
  100% {
    transform: scale(1, 1);
    opacity: 1;
  }
}
.anim-appear {
  animation: md-appear 0.4s cubic-bezier(0, 0, 0, 1);
}

@keyframes md-appear {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes md-appear-backwards {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.anim-cardappear {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1);
}

@keyframes md-cardappear {
  0% {
    transform: translateY(10%);
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.anim-forward {
  animation: md-forward 0.9s cubic-bezier(0.05, 0.7, 0.1, 1);
}

@keyframes md-forward {
  0% {
    transform: translateX(-10%);
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes rippleEffect {
  0% {
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(var(--scale));
  }
}
@keyframes anim-plh-glow {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.1;
  }
}
@keyframes anim-plh-wave {
  0% {
    left: -100%;
  }
  100% {
    left: 100%;
  }
}
@keyframes snackbarShow {
  0% {
    opacity: 0;
    bottom: 0;
    min-height: 0;
    grid-template-rows: 0fr;
  }
  50% {
    opacity: 1;
  }
  100% {
    bottom: 0;
    grid-template-rows: 1fr;
    min-height: 48px;
  }
}
@keyframes snackbarcontentShow {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes md-spinner {
  0% {
    background-color: var(--md-sys-color-surface);
  }
  100% {
    background-color: var(--md-sys-color-on-surface);
  }
}
.top-bar-icons .button, .nav-rail-toggler, .top-bar-toggler, [class*=button-] {
  display: flex;
  min-width: 48px;
  height: 40px;
  border-radius: 20px;
  border: 0;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0, 0, 0, 1);
  overflow: hidden;
  position: relative;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
  justify-content: center;
  padding: 0 24px 0 16px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.top-bar-icons .button:focus, .nav-rail-toggler:focus, .top-bar-toggler:focus, [class*=button-]:focus {
  transition: all 0.3s cubic-bezier(0, 0, 0, 1);
  outline: none;
}
.top-bar-icons .disabled.button, .disabled.nav-rail-toggler, .disabled.top-bar-toggler, .disabled[class*=button-] {
  opacity: 0.38;
  pointer-events: none;
}
.top-bar-icons .disabled.button::after, .disabled.nav-rail-toggler::after, .disabled.top-bar-toggler::after, .disabled[class*=button-]::after {
  opacity: 0.12;
}
.top-bar-icons .button::after, .nav-rail-toggler::after, .top-bar-toggler::after, [class*=button-]::after {
  border-radius: 20px;
  transition: opacity 0.3s cubic-bezier(0, 0, 0, 1);
  opacity: 0;
}
.top-bar-icons .button:hover::after, .nav-rail-toggler:hover::after, .top-bar-toggler:hover::after, [class*=button-]:hover::after {
  opacity: 0.08;
}
.top-bar-icons .button:focus::after, .nav-rail-toggler:focus::after, .top-bar-toggler:focus::after, [class*=button-]:focus::after {
  opacity: 0.12;
}
.top-bar-icons .button:active::after, .nav-rail-toggler:active::after, .top-bar-toggler:active::after, [class*=button-]:active::after {
  opacity: 0.12;
}
.top-bar-icons .button > .icon, .nav-rail-toggler > .icon, .top-bar-toggler > .icon, [class*=button-] > .icon {
  font-variation-settings: "FILL" 1, "wght" 300, "opsz" 24;
  font-size: 18px;
  margin-right: 8px;
}

.button-elevated {
  border: 0;
  background-color: var(--md-sys-color-surface);
  color: var(--md-sys-color-primary) !important;
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.button-elevated:hover {
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.button-elevated:focus, .button-elevated:active {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.button-elevated::after {
  background-color: var(--md-sys-color-primary);
}
.button-elevated:not(:has(.icon)) {
  padding-left: 24px;
}
.button-filled {
  border: 0;
  background-color: var(--md-sys-color-primary);
  color: var(--md-sys-color-on-primary) !important;
}
.button-filled:hover {
  color: var(--md-sys-color-on-primary);
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.button-filled:active, .button-filled:focus {
  box-shadow: none;
}
.button-filled::after {
  background-color: var(--md-sys-color-on-primary);
}
.button-filled:not(:has(.icon)) {
  padding-left: 24px;
}
.button-tonal {
  border: 0;
  background-color: var(--md-sys-color-secondary-container);
  color: var(--md-sys-color-on-secondary-container);
}
.button-tonal:hover {
  color: var(--md-sys-color-on-secondary-container);
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.button-tonal:active, .button-tonal:focus {
  color: var(--md-sys-color-on-secondary-container);
  box-shadow: none;
}
.button-tonal::after {
  background-color: var(--md-sys-color-on-secondary-container);
}
.button-tonal:not(:has(.icon)) {
  padding-left: 24px;
}
.button-outlined {
  border: 0;
  color: var(--md-sys-color-primary) !important;
  outline: 1px solid var(--md-sys-color-outline);
}
.button-outlined.disabled {
  background-color: transparent;
  color: var(--md-sys-color-on-surface);
}
.button-outlined:focus {
  outline: 1px solid var(--md-sys-color-primary);
}
.button-outlined::after {
  background-color: var(--md-sys-color-primary);
}
.button-outlined.error {
  color: var(--md-sys-color-error) !important;
  outline: 1px solid var(--md-sys-color-error);
}
.button-outlined.error::after {
  background-color: var(--md-sys-color-error);
}
.button-outlined:not(:has(.icon)) {
  padding-left: 24px;
}
.button-text {
  border: 0;
  background-color: transparent;
  padding: 0 12px;
  color: var(--md-sys-color-primary);
}
.button-text:hover {
  color: var(--md-sys-color-primary);
}
.button-text.disabled {
  color: var(--md-sys-color-on-surface);
}
.button-text::after {
  background-color: var(--md-sys-color-primary);
}
.button-text:not(:has(.icon)) {
  padding-left: 12px;
}
.button-fab {
  display: flex;
  position: fixed;
  z-index: 10;
  width: 96px;
  height: 96px;
  background-color: var(--md-sys-color-tertiary-container);
  color: var(--md-sys-color-on-tertiary-container);
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
  bottom: 16px;
  right: 16px;
  font-size: 36px;
  font-family: "Material Symbols Rounded";
  border-radius: 28px;
  animation-name: md-grow 0.4s cubic-bezier(0.05, 0.7, 0.1, 1);
  padding: 0;
}
.button-fab.active {
  display: flex;
}
.button-fab:hover {
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.14), 0 4px 5px 0 rgba(0, 0, 0, 0.12), 0 1px 8px 0 rgba(0, 0, 0, 0.2);
}
.button-fab:focus {
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
}
.button-fab:active {
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
}
.button-fab::after {
  background-color: var(--md-sys-color-on-tertiary-container);
  opacity: 0;
  border-radius: 28px;
}
.button-fab:hover::after {
  opacity: 0.08;
}
.button-fab:focus::after {
  opacity: 0.12;
}
.button-fab:active::after {
  opacity: 0.12;
}
@media only screen and (max-width: 768px) {
  .button-fab {
    display: flex;
  }
}
@media only screen and (max-width: 576px) {
  .button-fab {
    display: flex;
    width: 56px;
    height: 56px;
    font-size: 24px;
    border-radius: 16px;
  }
  .button-fab::after {
    border-radius: 16px;
  }
}
.button-trail {
  position: absolute;
  right: 0;
  height: inherit;
  font-size: 24px;
  line-height: 48px !important;
  color: var(--md-sys-color-on-surface);
  opacity: 0.5;
  border-radius: 50%;
}
.button-trail:hover {
  color: var(--md-sys-color-on-surface);
  opacity: 1;
}

.ripple {
  width: 2px;
  height: 2px;
  position: absolute;
  border-radius: 50%;
  background-color: var(--md-sys-color-inverse-surface);
  animation: rippleEffect 0.5s cubic-bezier(0, 0, 0, 1);
  opacity: 0.12;
  z-index: 1;
  pointer-events: none;
  transition: all 0.45s cubic-bezier(0.2, 0, 0, 1);
}

.top-bar-icons .button, .nav-rail-toggler, .top-bar-toggler, .pagination .page-item, [class*=button-icon-] {
  position: relative;
  min-width: 40px;
  width: 40px;
  height: 40px;
  overflow: hidden;
  border-radius: 20px;
  font-family: "Material Symbols Rounded";
  font-size: 24px;
  line-height: 40px;
  padding: 0;
  font-variation-settings: "FILL" 0, "wght" 500, "opsz" 24;
  cursor: pointer;
  text-align: center;
  color: var(--md-sys-color-on-surface-variant);
}
[data-theme=dark] .top-bar-icons .button, .top-bar-icons [data-theme=dark] .button, [data-theme=dark] .nav-rail-toggler, [data-theme=dark] .top-bar-toggler, [data-theme=dark] .pagination .page-item, .pagination [data-theme=dark] .page-item, [data-theme=dark] [class*=button-icon-] {
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
}

.button-icon-filled, .pagination .page-item.active {
  color: var(--md-sys-color-primary);
  background-color: var(--md-sys-color-surface-variant);
}
.button-icon-filled::after, .pagination .page-item.active::after {
  background-color: var(--md-sys-color-on-surface-variant);
}
.button-icon-filled.selected, .pagination .selected.page-item.active {
  color: var(--md-sys-color-on-primary);
  outline: none;
  background-color: var(--md-sys-color-primary);
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.button-icon-filled.selected::after, .pagination .selected.page-item.active::after {
  background-color: var(--md-sys-color-inverse-on-surface);
}
.button-icon-elevated {
  color: var(--md-sys-color-primary);
  background-color: var(--md-sys-color-surface-variant);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
}
.button-icon-elevated::after {
  background-color: var(--md-sys-color-on-surface-variant);
}
.button-icon-elevated.selected {
  color: var(--md-sys-color-on-primary);
  outline: none;
  background-color: var(--md-sys-color-primary);
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.button-icon-elevated.selected::after {
  background-color: var(--md-sys-color-inverse-on-surface);
}
.button-icon-outlined {
  outline: 1px solid var(--md-sys-color-outline);
}
.button-icon-outlined::after {
  background-color: var(--md-sys-color-on-surface-variant);
}
.button-icon-outlined.selected {
  color: var(--md-sys-color-inverse-on-surface);
  outline: none;
  background-color: var(--md-sys-color-inverse-surface);
}
.button-icon-outlined.selected::after {
  background-color: var(--md-sys-color-inverse-on-surface);
}
.button-icon-text::after, .top-bar-icons .button::after, .nav-rail-toggler::after, .top-bar-toggler::after, .pagination .page-item::after {
  background-color: var(--md-sys-color-on-surface-variant);
}
.button-icon-text.selected, .top-bar-icons .selected.button, .selected.nav-rail-toggler, .selected.top-bar-toggler, .pagination .selected.page-item {
  color: var(--md-sys-color-primary);
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
[data-theme=dark] .button-icon-text.selected, [data-theme=dark] .top-bar-icons .selected.button, .top-bar-icons [data-theme=dark] .selected.button, [data-theme=dark] .selected.nav-rail-toggler, [data-theme=dark] .selected.top-bar-toggler, [data-theme=dark] .pagination .selected.page-item, .pagination [data-theme=dark] .selected.page-item {
  font-variation-settings: "FILL" 1, "wght" 300, "opsz" 24;
}

.buttonarea {
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pagination {
  padding: 8px;
  display: flex;
  justify-content: center;
  gap: 8px;
  list-style: none;
}
.pagination .page-item .page-link {
  color: unset;
}

.clickable {
  cursor: pointer;
  position: relative;
  z-index: 8;
  padding: 4px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.clickable::before {
  border-radius: 8px;
  opacity: 0;
  background-color: var(--md-sys-color-primary);
  transition: opacity 0.25s cubic-bezier(0, 0, 0, 1);
}
.clickable:hover::before {
  opacity: 0.08;
}
.clickable:focus::before {
  opacity: 0.12;
}
.clickable:active::before {
  opacity: 0.12;
}

.progress {
  height: 4px;
  background-color: var(--md-sys-color-surface-container-highest);
}
.progress-bar {
  height: 4px;
  background-color: var(--md-sys-color-primary);
}

.topbar {
  background-color: var(--md-sys-color-surface);
  color: var(--md-sys-color-on-surface);
  line-height: 64px;
  height: 64px;
  position: sticky;
  top: 0px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  z-index: 16;
  transition: box-shadow 0.3s cubic-bezier(0.2, 0, 0, 1), background-color 0.3s cubic-bezier(0.2, 0, 0, 1);
}
.topbar.scrolled {
  background-color: var(--md-sys-color-surface-container);
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.topbar .menu {
  display: none;
}
.topbar .logo {
  position: absolute;
  height: 100%;
  padding: 8px;
  width: 100%;
  z-index: 1;
  background-color: transparent;
  display: flex;
  justify-content: center;
}
.topbar span {
  float: left;
  padding: 0 16px;
  overflow: hidden;
}
.topbar ul {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  margin-block: 0;
  padding: 0;
}
.topbar ul li {
  overflow: hidden;
  position: relative;
}
.topbar ul li .desc {
  display: none;
}
.topbar.short .menu {
  display: flex;
  justify-content: center;
}
.topbar.short ul {
  background-color: var(--md-sys-color-surface);
  border-radius: 12px;
  position: absolute;
  min-width: 112px;
  max-width: 280px;
  flex-direction: column;
  top: 64px;
  right: 2px;
  visibility: hidden;
  opacity: 0;
  padding: 8px 0;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
}
.topbar.short .menu:active ~ ul, .topbar.short .menu:focus ~ ul {
  visibility: visible;
  opacity: 1;
  pointer-events: initial;
}
.topbar.short ul::before {
  content: " ";
  background-color: var(--md-sys-color-primary);
  opacity: 0.1;
  border-radius: 12px;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.topbar.short ul li {
  display: flex;
  width: 100% !important;
}
.topbar.short ul li .item {
  display: flex;
  align-items: center;
  overflow: visible;
  width: 100% !important;
  position: relative;
  height: 48px;
  margin: 0;
  padding: 0 12px;
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  cursor: pointer;
  text-align: left;
  font-size: 24px;
  vertical-align: middle;
  z-index: 5;
  color: var(--md-sys-color-on-surface-variant);
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
}
.topbar.short ul li .item::before {
  width: 100%;
  border-radius: 0;
  height: 100%;
  left: 0;
  overflow: hidden;
  top: 0;
}
.topbar.short ul li .desc {
  display: block;
  padding: 0 0 0 12px;
}
.topbar .button {
  z-index: 2;
  width: 64px;
  text-align: center;
  margin: 0;
}
.topbar .button a:hover {
  color: var(--md-sys-color-on-surface-variant);
}
.topbar .button a:hover::before {
  opacity: 0.08;
}
.topbar .button a:focus::before {
  opacity: 0.12;
}
.topbar .button a:active::before {
  opacity: 0.12;
}
.topbar .button a::before {
  content: "";
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  opacity: 0;
  width: 40px;
  height: 40px;
  top: 4px;
  left: 4px;
  border-radius: 50%;
  position: absolute;
  background-color: var(--md-sys-color-on-surface-variant);
}
.topbar .button.selected a {
  color: var(--md-sys-color-primary);
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.topbar .button.selected a:hover {
  color: var(--md-sys-color-primary);
}
.topbar .button.selected a::before {
  background-color: var(--md-sys-color-primary);
}
.topbar .button .item {
  position: relative;
  width: 48px;
  height: 48px;
  padding: 8px;
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  cursor: pointer;
  text-align: center;
  line-height: 32px;
  font-size: 24px;
  vertical-align: middle;
  margin: 8px;
  z-index: 2;
  color: var(--md-sys-color-on-surface-variant);
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
}
.twopanel .topbar {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
}

.top-bar-icons .button, .nav-rail-toggler, .top-bar-toggler {
  margin: 4px;
}

.nav-rail-toggler, .top-bar-toggler {
  margin: 12px;
  content: "menu";
  display: none;
  color: inherit;
}

.nav-rail-brand, .top-bar-brand {
  height: 100%;
  display: flex;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
}

.top-bar {
  background-color: var(--md-sys-color-surface);
  color: var(--md-sys-color-on-surface);
  line-height: 64px;
  height: 64px;
  position: sticky;
  top: 0px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  -moz-column-gap: 24px;
       column-gap: 24px;
  z-index: 16;
  transition: box-shadow 0.3s cubic-bezier(0.2, 0, 0, 1), background-color 0.3s cubic-bezier(0.2, 0, 0, 1);
}
.top-bar [class*=container-] {
  height: 100%;
}
.top-bar-brand {
  margin-left: 16px;
}
@media only screen and (max-width: 768px) {
  .top-bar-brand {
    margin-left: 0;
  }
}
.top-bar-brand img {
  height: 100%;
  width: auto;
  display: block;
  padding: 8px 0;
}
.top-bar-gutter {
  flex: 1;
}
@media only screen and (max-width: 768px) {
  .top-bar-toggler {
    display: flex;
  }
}
.top-bar.scrolled {
  background-color: var(--md-sys-color-surface-container);
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.top-bar .menu {
  display: flex;
  justify-content: center;
}
.top-bar .menu:active ~ ul.dropdown, .top-bar .menu:focus ~ ul.dropdown {
  visibility: visible;
  opacity: 1;
  pointer-events: initial;
}
.top-bar ul {
  list-style: none;
  margin: 0;
  margin-block: 0;
}
.top-bar ul.dropdown {
  background-color: var(--md-sys-color-surface);
  border-radius: 12px;
  position: absolute;
  min-width: 112px;
  max-width: 280px;
  flex-direction: column;
  top: 64px;
  right: 2px;
  visibility: hidden;
  opacity: 0;
  padding: 8px 0;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
}
.top-bar ul.dropdown::before {
  content: " ";
  background-color: var(--md-sys-color-primary);
  opacity: 0.1;
  border-radius: 12px;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.top-bar ul.dropdown .dropdown-item {
  display: flex;
  width: 100% !important;
}
.top-bar ul.dropdown .dropdown-item .item {
  display: flex;
  align-items: center;
  overflow: visible;
  width: 100% !important;
  position: relative;
  height: 48px;
  margin: 0;
  padding: 0 12px;
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  cursor: pointer;
  text-align: left;
  font-size: 24px;
  vertical-align: middle;
  z-index: 5;
  color: var(--md-sys-color-on-surface-variant);
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
}
.top-bar ul.dropdown .dropdown-item .item:hover {
  color: var(--md-sys-color-on-surface-variant);
}
.top-bar ul.dropdown .dropdown-item .item:hover::before {
  opacity: 0.08;
}
.top-bar ul.dropdown .dropdown-item .item:focus::before {
  opacity: 0.12;
}
.top-bar ul.dropdown .dropdown-item .item:active::before {
  opacity: 0.12;
}
.top-bar ul.dropdown .dropdown-item .item::before {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  background-color: var(--md-sys-color-on-surface-variant);
  overflow: hidden;
  opacity: 0;
  border-radius: 0;
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
}
.top-bar ul.dropdown .dropdown-item .item .desc {
  display: block;
  padding: 0 0 0 12px;
}
.top-bar-nav {
  position: fixed;
  top: 0;
  left: 0;
  display: flex;
  background-color: var(--md-sys-color-surface-container);
  height: 100%;
  min-width: 64px;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  row-gap: 8px;
  z-index: 17;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.top-bar-nav ul {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  row-gap: 8px;
  overflow-y: auto;
  padding: 16px 0;
}
.top-bar-nav ul .nav-item {
  min-height: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 8px 12px 8px 12px;
  row-gap: 4px;
  cursor: pointer;
  z-index: 10;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
.top-bar-nav ul .nav-item:hover > .icon {
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.top-bar-nav ul .nav-item:hover > .icon::after {
  opacity: 0.08;
}
.top-bar-nav ul .nav-item:focus-visible {
  outline: none;
}
.top-bar-nav ul .nav-item:focus > .icon::after {
  opacity: 0.12;
}
.top-bar-nav ul .nav-item:active > .icon::after {
  opacity: 0.12;
}
.top-bar-nav ul .nav-item .nav-label {
  font-family: "Roboto Flex Medium", sans-serif;
  line-height: 16px;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.5px;
  color: var(--md-sys-color-on-surface-variant);
}
.top-bar-nav ul .nav-item .nav-icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 64px;
  height: 32px;
  color: var(--md-sys-color-on-surface-variant);
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  border-radius: 16px;
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
  transition: font-variation-settings 0.15s cubic-bezier(0, 0, 0, 1);
}
.top-bar-nav ul .nav-item .nav-icon::after {
  border-radius: inherit;
  background-color: var(--md-sys-color-on-surface-variant);
  opacity: 0;
  transition: opacity 0.15s cubic-bezier(0.2, 0, 0, 1);
}
.top-bar-nav ul .nav-item.active > .icon {
  background-color: var(--md-sys-color-secondary-container);
  color: var(--md-sys-color-on-secondary-container);
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.top-bar-nav ul .nav-item.active > .icon::after {
  background-color: var(--md-sys-color-on-surface);
}
.top-bar-nav ul .nav-item.active > .label {
  color: var(--md-sys-color-on-surface);
}
.top-bar .logo {
  position: absolute;
  height: 100%;
  padding: 8px;
  width: 100%;
  z-index: 1;
  background-color: transparent;
  display: flex;
  justify-content: center;
}
.top-bar span {
  float: left;
  padding: 0 16px;
  overflow: hidden;
}
.top-bar.short .menu {
  display: flex;
  justify-content: center;
}
.top-bar.short ul {
  background-color: var(--md-sys-color-surface);
  border-radius: 12px;
  position: absolute;
  min-width: 112px;
  max-width: 280px;
  flex-direction: column;
  top: 64px;
  right: 2px;
  visibility: hidden;
  opacity: 0;
  padding: 8px 0;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
}
.top-bar.short .menu:active ~ ul, .top-bar.short .menu:focus ~ ul {
  visibility: visible;
  opacity: 1;
  pointer-events: initial;
}
.top-bar.short ul::before {
  content: " ";
  background-color: var(--md-sys-color-primary);
  opacity: 0.1;
  border-radius: 12px;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.top-bar.short ul li {
  display: flex;
  width: 100% !important;
}
.top-bar.short ul li .item {
  display: flex;
  align-items: center;
  overflow: visible;
  width: 100% !important;
  position: relative;
  height: 48px;
  margin: 0;
  padding: 0 12px;
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  cursor: pointer;
  text-align: left;
  font-size: 24px;
  vertical-align: middle;
  z-index: 5;
  color: var(--md-sys-color-on-surface-variant);
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
}
.top-bar.short ul li .item::before {
  width: 100%;
  border-radius: 0;
  height: 100%;
  left: 0;
  overflow: hidden;
  top: 0;
}
.top-bar.short ul li .desc {
  display: block;
  padding: 0 0 0 12px;
}
.top-bar-icons {
  display: flex;
  padding: 8px;
  align-items: center;
  height: 100%;
}
.top-bar .button {
  z-index: 2;
  width: 40px;
  height: 40px;
  text-align: center;
  margin: 4px;
  color: inherit;
}
.top-bar .button a:hover {
  color: var(--md-sys-color-on-surface-variant);
}
.top-bar .button a:hover::before {
  opacity: 0.08;
}
.top-bar .button a:focus::before {
  opacity: 0.12;
}
.top-bar .button a:active::before {
  opacity: 0.12;
}
.top-bar .button a::before {
  content: "";
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  opacity: 0;
  width: 40px;
  height: 40px;
  top: 4px;
  left: 4px;
  border-radius: 50%;
  position: absolute;
  background-color: var(--md-sys-color-on-surface-variant);
}
.top-bar .button.selected a {
  color: var(--md-sys-color-primary);
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.top-bar .button.selected a:hover {
  color: var(--md-sys-color-primary);
}
.top-bar .button.selected a::before {
  background-color: var(--md-sys-color-primary);
}
.top-bar .button .item {
  position: relative;
  width: 48px;
  height: 48px;
  padding: 8px;
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
  cursor: pointer;
  text-align: center;
  line-height: 32px;
  font-size: 24px;
  vertical-align: middle;
  margin: 8px;
  z-index: 2;
  color: inherit;
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
}
.twopanel .top-bar {
  position: fixed;
  width: 100%;
  top: 0;
  left: 0;
}

/**
.navbar {
    display: flex;
    position: fixed;
    background-color: v.$colorSurfaceContainer;
    float: left;
    height: 100%;
    min-width: 64px;
    width: 88px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    row-gap: 8px;
    z-index: 17;
    @include v.elevation(2);

    @media only screen and (max-width: 576px) {
        width: 100%;
        bottom: 0;
        padding: 0 8px;
        height: 80px;
        min-height: 48px;
        align-items: flex-end;
        flex-direction: row;
        justify-content: space-evenly;
        align-content: stretch;
        column-gap: 8px;
    }

    .item {
        min-height: 48px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 8px 12px 8px 12px;
        row-gap: 4px;
        cursor: pointer;
        z-index: 10;
        user-select: none;

        &:hover {
            > .icon {
                font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;

                &::after {
                    opacity: v.$stateHover;
                }
            }
        }

        &:focus-visible {
            outline: none;
        }

        &:focus > .icon::after {
            opacity: v.$stateFocus;
        }

        &:active > .icon::after {
            opacity: v.$statePressed;
        }

        @media only screen and (max-width: 576px) {
            margin-bottom: 0;
            width: 100%;
            padding: 12px 0 16px 0;
            flex-grow: 10;
        }

        > .icon {
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            width: 64px;
            height: 32px;
            color: v.$colorOnSurfaceVariant;
            font-weight: normal;
            font-style: normal;
            font-size: 24px;
            border-radius: 16px;
            font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
            transition: font-variation-settings v.$durationShort3 v.$easingStandardDecelerate;

            &::after {
                @extend %before-show;
                border-radius: inherit;
                background-color: v.$colorOnSurfaceVariant;
                opacity: 0;
                transition: opacity v.$durationShort3 v.$easingStandard;
            }
        }

        > .label {
            font-family: "Roboto Flex Medium", sans-serif;
            line-height: 16px;
            font-size: 12px;
            font-weight: 500;
            letter-spacing: 0.5px;
            color: v.$colorOnSurfaceVariant;
        }

        &.enabled {
            > .icon {
                background-color: v.$colorSecondaryContainer;
                color: v.$colorOnSecondaryContainer;
                font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;

                &::after {
                    background-color: v.$colorOnSurface;
                }
            }

            > .label {
                color: v.$colorOnSurface;
            }
        }
    }

    .subnav {
        display: flex;
        width: 100%;

        > .subnav-content {
            display: grid;
            position: fixed;
            bottom: 0;
            left: 0;
            padding-left: 88px;
            height: 100%;
            grid-template-columns: 0fr;
            transition: grid-template-columns v.$durationMedium3 v.$easingEmphasizedDecelerate;

            @media only screen and (max-width: 576px) {
                transition: all v.$durationMedium3 v.$easingEmphasizedDecelerate;
                padding-left: 0;
                padding-bottom: 0px;
                height: 80px;
                width: 100%;
                grid-template-columns: unset;
                grid-template-rows: 0fr;
            }

            > div {
                display: flex;
                border-radius: 0 12px 12px 0;
                flex-direction: column;
                row-gap: 8px;
                justify-content: center;
                overflow: hidden;
                border-left: 1px solid v.$colorSurfaceVariant;

                @media only screen and (max-width: 576px) {
                    border-radius: 12px 12px 0 0;
                    flex-direction: row;
                    justify-content: space-evenly;
                    align-items: flex-end;
                    bottom: 0;
                    border-bottom: 1px solid v.$colorSurfaceVariant;
                }
            }
        }

        &:focus > .subnav-content,
        &:focus-within > .subnav-content,
        &:hover > .subnav-content {
            grid-template-columns: 1fr;
            border-radius: 0 12px 12px 0;
            @include v.elevation(2);
            background-color: v.$colorSurfaceContainer;
            height: 100%;
            padding-left: 88px;

            @media only screen and (max-width: 576px) {
                grid-template-columns: unset;
                grid-template-rows: 1fr;
                border-radius: 12px 12px 0 0;
                padding-left: 0;
                padding-bottom: 80px;
                width: 100%;
                height: 160px;
                bottom: 0;
                border-left: 0;
            }
        }
    }
}
**/
.nav-rail {
  top: 0;
  left: 0;
  display: flex;
  background-color: var(--md-sys-color-surface);
  min-width: 360px;
  max-width: 360px;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  row-gap: 8px;
  z-index: 17;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
@media only screen and (max-width: 1200px) {
  .nav-rail {
    min-width: 105px;
    max-width: 105px;
  }
  .nav-rail-scrim {
    position: fixed;
    top: 0;
    left: 0;
    height: 100vh;
    width: 100vw;
    background-color: var(--md-ref-palette-neutral-variant20);
    opacity: 0.4;
    pointer-events: all;
  }
}
.nav-rail-content {
  min-width: 360px;
  max-width: 360px;
  position: fixed;
  top: 0;
  display: flex;
  flex-direction: column;
  height: 100%;
}
@media only screen and (max-width: 1200px) {
  .nav-rail-content {
    background-color: var(--md-sys-color-surface);
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
  }
}
@media only screen and (max-width: 768px) {
  .nav-rail-content {
    min-width: 0;
    max-width: 100vw;
    width: 360px;
  }
}
.nav-rail-top {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  height: 64px;
}
.nav-rail-toggler {
  display: none;
}
@media only screen and (max-width: 768px) {
  .nav-rail-toggler {
    display: flex;
  }
}
.nav-rail-brand {
  display: none;
}
.nav-rail-brand img {
  height: 100%;
  padding: 8px 0;
}
@media only screen and (max-width: 1200px) {
  .nav-rail-brand {
    display: flex;
  }
}
.collapse .nav-rail-brand {
  display: none;
}
@media only screen and (max-width: 768px) {
  .nav-rail {
    min-width: 0;
    max-width: 0;
  }
  .nav-rail .nav-rail-content {
    opacity: 1;
  }
}
@media only screen and (max-width: 1200px) {
  .nav-rail.collapse {
    min-width: 105px;
    max-width: 105px;
    background-color: transparent;
  }
  .nav-rail.collapse .nav-rail-scrim {
    opacity: 0;
    pointer-events: none;
  }
  .nav-rail.collapse .nav-rail-content {
    min-width: 105px;
    max-width: 105px;
  }
  .nav-rail.collapse .nav-rail-top {
    justify-content: center;
  }
  .nav-rail.collapse ul {
    justify-content: center;
    row-gap: 12px;
    padding: 12px 0;
  }
  .nav-rail.collapse ul .nav-item {
    flex-direction: column;
    padding: 0 12px;
    row-gap: 4px;
  }
  .nav-rail.collapse ul .nav-item:hover::after {
    opacity: 0;
  }
  .nav-rail.collapse ul .nav-item:hover .nav-icon::after {
    opacity: 0.08;
  }
  .nav-rail.collapse ul .nav-item:focus::after, .nav-rail.collapse ul .nav-item:active::after {
    opacity: 0;
  }
  .nav-rail.collapse ul .nav-item:focus > .icon::after {
    opacity: 0.12;
  }
  .nav-rail.collapse ul .nav-item:active > .icon::after {
    opacity: 0.12;
  }
  .nav-rail.collapse ul .nav-item .nav-label {
    font-family: "Roboto Flex Medium", sans-serif;
    line-height: 16px;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.5px;
  }
  .nav-rail.collapse ul .nav-item .nav-icon {
    width: 56px;
  }
  .nav-rail.collapse ul .nav-item .nav-icon::after {
    border-radius: inherit;
    background-color: var(--md-sys-color-on-surface-variant);
    opacity: 0;
    transition: opacity 0.15s cubic-bezier(0.2, 0, 0, 1);
  }
  .nav-rail.collapse ul .nav-item.active {
    background-color: transparent;
  }
  .nav-rail.collapse ul .nav-item.active > .icon {
    background-color: var(--md-sys-color-secondary-container);
  }
  .nav-rail.collapse ul .nav-item.active > .label {
    color: var(--md-sys-color-on-surface);
  }
}
@media only screen and (max-width: 768px) {
  .nav-rail.collapse {
    min-width: 0;
    max-width: 0;
  }
  .nav-rail.collapse .nav-rail-content {
    min-width: 0;
    max-width: 0;
    opacity: 0;
  }
}
.nav-rail ul {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  overflow-y: auto;
  padding: 0 12px;
  list-style-type: none;
}
.nav-rail ul:not(.nav-rail-bottom) {
  flex: 1;
}
.nav-rail ul .nav-item {
  border-radius: 28px;
  height: 56px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 0 24px 0 16px;
  -moz-column-gap: 12px;
       column-gap: 12px;
  cursor: pointer;
  z-index: 10;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  position: relative;
}
.nav-rail ul .nav-item::after {
  border-radius: inherit;
  background-color: var(--md-sys-color-on-surface-variant);
  opacity: 0;
  transition: opacity 0.15s cubic-bezier(0.2, 0, 0, 1);
}
.nav-rail ul .nav-item:hover > .icon {
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.nav-rail ul .nav-item:hover::after {
  opacity: 0.08;
}
.nav-rail ul .nav-item:focus-visible {
  outline: none;
}
.nav-rail ul .nav-item:focus::after {
  opacity: 0.12;
}
.nav-rail ul .nav-item:active::after {
  opacity: 0.12;
}
.nav-rail ul .nav-item .nav-label {
  color: var(--md-sys-color-on-surface-variant);
  flex: 1;
}
.nav-rail ul .nav-item .nav-icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 32px;
  color: var(--md-sys-color-on-surface-variant);
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  border-radius: 16px;
  font-variation-settings: "FILL" 0, "wght" 400, "opsz" 24;
  transition: font-variation-settings 0.15s cubic-bezier(0, 0, 0, 1);
}
.nav-rail ul .nav-item.active {
  background-color: var(--md-sys-color-secondary-container);
}
.nav-rail ul .nav-item.active > .icon {
  color: var(--md-sys-color-on-secondary-container);
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}
.nav-rail ul .nav-item.active::after {
  background-color: var(--md-sys-color-on-surface);
}
.nav-rail ul .nav-item.active > .label {
  color: var(--md-sys-color-on-secondary-container);
}
.nav-rail ~ [class*=container-] {
  width: calc(100vh - 100px);
}

[class*=card-] {
  border-radius: 12px;
  margin: 0;
  display: flex;
  flex-direction: column;
  position: relative;
}
[class*=col-]:nth-child(1) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.05s both;
}
[class*=col-]:nth-child(2) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.1s both;
}
[class*=col-]:nth-child(3) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.15s both;
}
[class*=col-]:nth-child(4) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.2s both;
}
[class*=col-]:nth-child(5) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.25s both;
}
[class*=col-]:nth-child(6) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.3s both;
}
[class*=col-]:nth-child(7) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.35s both;
}
[class*=col-]:nth-child(8) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.4s both;
}
[class*=col-]:nth-child(9) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.45s both;
}
[class*=col-]:nth-child(10) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.5s both;
}
[class*=col-]:nth-child(11) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.55s both;
}
[class*=col-]:nth-child(12) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.6s both;
}
[class*=col-]:nth-child(13) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.65s both;
}
[class*=col-]:nth-child(14) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.7s both;
}
[class*=col-]:nth-child(15) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.75s both;
}
[class*=col-]:nth-child(16) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.8s both;
}
[class*=col-]:nth-child(17) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.85s both;
}
[class*=col-]:nth-child(18) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.9s both;
}
[class*=col-]:nth-child(19) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.95s both;
}
[class*=col-]:nth-child(20) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1s both;
}
[class*=col-]:nth-child(21) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.05s both;
}
[class*=col-]:nth-child(22) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.1s both;
}
[class*=col-]:nth-child(23) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.15s both;
}
[class*=col-]:nth-child(24) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.2s both;
}
[class*=col-]:nth-child(25) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.25s both;
}
[class*=col-]:nth-child(26) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.3s both;
}
[class*=col-]:nth-child(27) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.35s both;
}
[class*=col-]:nth-child(28) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.4s both;
}
[class*=col-]:nth-child(29) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.45s both;
}
[class*=col-]:nth-child(30) > [class*=card-] {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.5s both;
}
[class*=card-]:nth-child(1) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.05s both;
}
[class*=card-]:nth-child(2) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.1s both;
}
[class*=card-]:nth-child(3) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.15s both;
}
[class*=card-]:nth-child(4) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.2s both;
}
[class*=card-]:nth-child(5) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.25s both;
}
[class*=card-]:nth-child(6) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.3s both;
}
[class*=card-]:nth-child(7) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.35s both;
}
[class*=card-]:nth-child(8) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.4s both;
}
[class*=card-]:nth-child(9) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.45s both;
}
[class*=card-]:nth-child(10) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.5s both;
}
[class*=card-]:nth-child(11) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.55s both;
}
[class*=card-]:nth-child(12) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.6s both;
}
[class*=card-]:nth-child(13) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.65s both;
}
[class*=card-]:nth-child(14) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.7s both;
}
[class*=card-]:nth-child(15) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.75s both;
}
[class*=card-]:nth-child(16) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.8s both;
}
[class*=card-]:nth-child(17) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.85s both;
}
[class*=card-]:nth-child(18) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.9s both;
}
[class*=card-]:nth-child(19) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 0.95s both;
}
[class*=card-]:nth-child(20) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1s both;
}
[class*=card-]:nth-child(21) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.05s both;
}
[class*=card-]:nth-child(22) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.1s both;
}
[class*=card-]:nth-child(23) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.15s both;
}
[class*=card-]:nth-child(24) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.2s both;
}
[class*=card-]:nth-child(25) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.25s both;
}
[class*=card-]:nth-child(26) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.3s both;
}
[class*=card-]:nth-child(27) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.35s both;
}
[class*=card-]:nth-child(28) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.4s both;
}
[class*=card-]:nth-child(29) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.45s both;
}
[class*=card-]:nth-child(30) {
  animation: md-cardappear 0.4s cubic-bezier(0, 0, 0, 1) 1.5s both;
}
[class*=card-].fullheight {
  height: 100%;
}
[class*=card-].clickable::before {
  border-radius: 12px;
  background-color: var(--md-sys-color-primary);
  transition: opacity 0.25s cubic-bezier(0, 0, 0, 1);
}
[class*=card-].clickable:hover::before {
  opacity: 0.08;
}
[class*=card-].clickable:focus::before {
  opacity: 0.12;
}
[class*=card-].clickable:active::before {
  opacity: 0.12;
}

.card-elevated {
  background-color: var(--md-sys-color-surface-container-low);
  color: var(--md-sys-color-on-surface);
  transition: none;
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.card-elevated::before {
  z-index: 2;
  border-radius: 12px;
  opacity: 0.05;
  background-color: var(--md-sys-color-primary);
  transition: none;
}
.card-filled {
  background-color: var(--md-sys-color-surface-container-highest);
}
.card-filledvar {
  background-color: var(--md-sys-color-surface);
}
.card-outlined {
  background-color: var(--md-sys-color-surface);
  border: 1px solid var(--md-sys-color-outline);
}
.card-empty {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 16px 8px 24px 8px;
  color: var(--md-sys-color-on-surface);
  row-gap: 4px;
}
.card-empty .icon {
  font-size: 72px;
  opacity: 0.3;
  font-variation-settings: "FILL" 0, "wght" 700, "opsz" 48;
}
.card-empty span {
  opacity: 0.5;
  text-align: center;
}
.cardimg {
  background-color: var(--md-sys-color-primary-container);
  border-radius: 12px 12px 0 0;
}
.cardimg img {
  border-radius: inherit;
}
.cardcontent {
  padding: 16px;
  display: flex;
  flex-direction: column;
  z-index: 1;
}
.card:hover .card-description-dropdown {
  bottom: 0;
  height: 100%;
}
.card-description-dropdown {
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  background-color: var(--md-sys-color-primary-container);
  color: var(--md-sys-color-on-primary-container);
  overflow: hidden;
  width: 100%;
  height: 0;
  transition: 0.5s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
}
.card-description-dropdown .text {
  text-align: center;
  margin: 0;
}

.chipcontainer {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 8px 1px 0 1px;
  overflow-x: auto;
}

.Chip {
  display: flex;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border-radius: 8px;
  overflow: hidden;
  height: 32px;
  padding: 0 16px 0 8px;
  cursor: pointer;
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
  transition: all 0.2s cubic-bezier(0, 0, 0, 1);
}
.Chip.outlined {
  outline: 1px solid var(--md-sys-color-outline);
}
.Chip.outlined:hover, .Chip.outlined:focus {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.Chip.outlined:active {
  box-shadow: none;
}
.Chip.outlined.selected {
  outline: none;
}
.Chip.elevated {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
  background-color: var(--md-sys-color-surface-container-low);
}
.Chip.elevated:hover, .Chip.elevated:focus {
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.Chip.elevated:active {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.Chip.elevated:focus {
  outline: none;
}
.Chip.elevated.selected {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.Chip.elevated.selected:hover, .Chip.elevated.selected:focus {
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 5px 0 rgba(0, 0, 0, 0.2);
}
.Chip.elevated.selected:active {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.14), 0 2px 2px 0 rgba(0, 0, 0, 0.12), 0 1px 3px 0 rgba(0, 0, 0, 0.2);
}
.Chip.elevated.selected.disabled {
  box-shadow: none;
}
.Chip.elevated.disabled {
  box-shadow: none;
  color: rgba(var(--md-sys-color-on-surface), 0.38);
}
.Chip.elevated.disabled::before {
  color: var(--md-sys-color-on-surface);
}
.Chip.disabled {
  opacity: 0.12;
}
.Chip::before {
  font-family: "Material Symbols Rounded";
  color: var(--md-sys-color-on-surface-variant);
  font-size: 18px;
  line-height: 32px;
  content: attr(data-icon);
  max-width: 32px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-items: center;
}
.Chip::after {
  background-color: var(--md-sys-color-on-surface-variant);
  opacity: 0;
}
.Chip:hover::after {
  opacity: 0.08;
}
.Chip:focus::after {
  opacity: 0.12;
}
.Chip:active::after {
  opacity: 0.12;
}
.Chip.Chip-assist::before {
  color: var(--md-sys-color-primary);
}
.Chip.Chip-filter {
  color: var(--md-sys-color-on-surface-variant);
}
.Chip.Chip-filter::before {
  content: "done";
  max-width: 0;
  transition: max-width 0.3s cubic-bezier(0.3, 0, 1, 1);
}
.Chip.Chip-filter:hover::before, .Chip.Chip-filter:focus::before {
  color: var(--md-sys-color-on-surface-variant);
}
.Chip.Chip-filter.selected {
  background-color: var(--md-sys-color-secondary-container);
  color: var(--md-sys-color-on-secondary-container);
}
.Chip.Chip-filter.selected::before {
  max-width: 32px;
  color: var(--md-sys-color-on-secondary-container);
}
.Chip.Chip-filter.selected::after {
  color: var(--md-sys-color-on-secondary-container);
}
.Chip.Chip-filter.selected:hover {
  color: var(--md-sys-color-on-secondary-container);
}
.Chip.Chip-filter.selected:hover::before {
  color: var(--md-sys-color-on-secondary-container);
}
.Chip.Chip-filter.selected:hover::after {
  opacity: 0.08;
}
.Chip.Chip-badge {
  pointer-events: none;
  background-color: var(--md-sys-color-surface-container-low);
}
.Chip.Chip-badge.green {
  background-color: var(--md-custom-color-green-container);
  color: var(--md-custom-color-on-green-container);
}
.Chip.Chip-badge.green::before {
  color: var(--md-custom-color-on-green-container);
}
.Chip.Chip-badge.yellow {
  background-color: var(--md-custom-color-yellow-container);
  color: var(--md-custom-color-on-yellow-container);
}
.Chip.Chip-badge.yellow::before {
  color: var(--md-custom-color-on-yellow-container);
}
.Chip.Chip-badge.red {
  background-color: var(--md-sys-color-error-container);
  color: var(--md-sys-color-on-error-container);
}
.Chip.Chip-badge.red::before {
  color: var(--md-sys-color-on-error-container);
}
.Chip.Chip-badge.disabled {
  opacity: 0.12;
}

/* TABLA ====================================================== */
table {
  width: 100%;
  border-radius: 8px;
  overflow: hidden;
  border-spacing: 1px;
  text-align: start;
  border-collapse: collapse;
}

thead {
  min-height: 56px;
  border-bottom: 1px solid var(--md-sys-color-outline);
}
.table-sm thead {
  min-height: 36px;
}

tr {
  min-height: 52px;
  border-bottom: 1px solid var(--md-sys-color-outline);
  overflow: hidden;
}
.table-sm tr {
  min-height: 36px;
}

tr:first-child {
  border-top: none;
}

tr:last-child {
  border-bottom: none;
}

td {
  padding: 6px 16px;
  color: var(--md-sys-color-on-surface);
  margin: 0;
  overflow: hidden;
}
td.tcenter {
  text-align: center;
}

th {
  padding: 6px 16px;
  height: 56px;
  color: var(--md-sys-color-on-surface);
  text-align: start;
  overflow: hidden;
  font-weight: 600;
}
.table-sm th {
  height: 36px;
}

.table-striped tbody tr:nth-child(odd) {
  background-color: rgba(0, 0, 0, 0.08);
}
[data-theme=dark] .table-striped tbody tr:nth-child(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.table-hover tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.15);
}
[data-theme=dark] .table-hover tbody tr:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
.table-select tbody tr {
  cursor: pointer;
}
.table-select tbody tr:active {
  background-color: rgba(0, 0, 0, 0.18);
}
[data-theme=dark] .table-select tbody tr:active {
  background-color: rgba(255, 255, 255, 0.12);
}
.table-cell-nowrap {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 30;
  display: none;
  opacity: 0;
  animation: md-appear 0.35s cubic-bezier(0.05, 0.7, 0.1, 1);
}
.modal.modal-backdrop {
  -webkit-backdrop-filter: blur(2px);
          backdrop-filter: blur(2px);
}
.modal.modal-backdrop::before {
  background-color: var(--md-sys-color-background);
  opacity: 0.3;
}
.modal.show {
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 1;
}
.modal-dialog {
  display: none;
  position: relative;
  background-color: var(--md-sys-color-surface);
  border-radius: 28px;
  min-width: 280px;
  max-width: 560px;
  height: -moz-fit-content;
  height: fit-content;
  max-height: 100%;
  margin: 24px;
  overflow: hidden;
  overflow-wrap: break-word;
  align-content: flex-start;
  flex-direction: column;
  justify-content: flex-start;
  align-items: stretch;
  opacity: 0;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
  animation: md-midgrow 0.3s cubic-bezier(0.05, 0.7, 0.1, 1);
  pointer-events: all;
}
.modal-dialog::before {
  z-index: 7;
  opacity: 0.11;
  background-color: var(--md-sys-color-primary);
}
.modal-dialog.show {
  display: flex;
  opacity: 1;
}
.modal-dialog.modal-sm {
  max-width: 300px !important;
}
.modal-dialog.modal-lg {
  max-width: 800px !important;
}
.modal-dialog.modal-xl {
  max-width: 1140px !important;
}
.modal-dialog .modal-header {
  padding: 24px 24px 0 24px;
  position: sticky;
  bottom: 0;
  background-color: var(--md-sys-color-surface);
}
.scroll .modal-dialog .modal-header {
  border-bottom: 1px solid var(--md-sys-color-outline);
}
.modal-dialog .modal-header .modal-title {
  display: block;
}
.modal-dialog .modal-header .icon {
  color: var(--md-sys-color-secondary);
  font-size: 24px;
  text-align: center;
  display: block;
}
.modal-dialog .modal-header .icon ~ .modal-title {
  text-align: center;
  margin-top: 16px;
  justify-content: center;
}
.modal-dialog .modal-title {
  color: var(--md-sys-color-on-surface);
}
.modal-dialog .modal-body {
  color: var(--md-sys-color-on-surface-variant);
  overflow-y: auto;
  padding: 16px 24px;
  max-height: 70vh;
}
.modal-dialog .modal-footer {
  display: flex;
  justify-content: flex-end;
  -moz-column-gap: 8px;
       column-gap: 8px;
  padding: 24px;
  position: sticky;
  bottom: 0;
  background-color: var(--md-sys-color-surface);
  z-index: 1;
}
.scroll .modal-dialog .modal-footer {
  border-top: 1px solid var(--md-sys-color-outline);
}

.carousel {
  display: flex;
  flex-direction: row;
  justify-content: center;
  overflow: hidden;
  width: 100%;
  align-items: center;
  height: 300px;
}
.carouselimg {
  border-radius: 28px;
  overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
  flex: 0 0 0%;
  position: relative;
  height: 100%;
  transition: all var(--md-sys-motion-duration-extra-long4) var(--md-sys-motion-easing-emphasized-decelerate);
  cursor: pointer;
}
.carouselimg.small {
  flex-grow: 1;
}
.carouselimg.medium {
  flex-grow: 2;
  margin: 0 8px;
}
.carouselimg.large {
  flex-grow: 8;
}
.carouselimg.large:hover img {
  transform: scale(1.2);
}
.carouselimg.large .itemtext {
  opacity: 1;
}
.carouselimg img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.carouselimg .itemtext {
  background: black;
  background: linear-gradient(0deg, black 35%, transparent 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 36px 24px 24px 24px;
  opacity: 0;
}
.carouselimg .itemtext span {
  width: 100%;
  -webkit-line-clamp: 2;
  text-overflow: ellipsis;
}

.slideshow .slide {
  display: none;
}
.slideshow .slide.active {
  display: block;
}

* {
  transition: all 0.4s cubic-bezier(0.2, 0, 0, 1), color 0.05s cubic-bezier(0.2, 0, 0, 1);
}

body {
  background-color: var(--md-sys-color-background);
  min-width: 100%;
}

html {
  color: var(--md-sys-color-on-surface);
  scroll-behavior: smooth;
}

/* Texto */
span {
  transition: none !important;
  color: inherit;
  font-family: inherit;
}

::-moz-selection {
  color: var(--md-sys-color-on-tertiary-container);
  background: var(--md-sys-color-tertiary-container);
}

::selection {
  color: var(--md-sys-color-on-tertiary-container);
  background: var(--md-sys-color-tertiary-container);
}

::-webkit-scrollbar {
  width: 8px;
  /* Track */
  /* Handle */
}
::-webkit-scrollbar-track {
  background-color: var(--md-sys-color-surface-container);
}
::-webkit-scrollbar-thumb {
  background-color: var(--md-sys-color-surface-container-highest);
  border-radius: 4px;
  -webkit-transition: background-color 0.25s cubic-bezier(0, 0, 0, 1);
  transition: background-color 0.25s cubic-bezier(0, 0, 0, 1);
  opacity: 0.2;
}
::-webkit-scrollbar-thumb:hover {
  background-color: var(--md-sys-color-primary-container);
}

/* Hipervinculos */
a {
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  text-decoration: none;
  color: var(--md-sys-color-primary);
  transition: color 0.4s cubic-bezier(0, 0, 0, 1);
}
a:hover {
  color: var(--md-sys-color-tertiary);
}
a:focus {
  outline: none;
}

span .icon::after {
  content: " ";
  padding-right: 3px;
}

.hidden {
  display: none !important;
}
.hidden-anim {
  opacity: 0;
  visibility: hidden;
  transform: scale(0, 0);
}

.transparent {
  opacity: 0 !important;
  pointer-events: none !important;
  animation-name: md-appear 0.35s cubic-bezier(0.05, 0.7, 0.1, 1) reverse;
}

.disabled {
  pointer-events: none !important;
  opacity: 0.6 !important;
}

.footer,
#footer {
  margin-top: 16px;
  margin-bottom: 16px;
}

.statusbadge {
  padding: 8px 16px;
  min-height: 32px;
  display: flex;
  align-items: center;
  border-radius: 16px;
  text-align: center;
}

/* TEXTFIELD BUSCADOR =========================== */
.searcharea {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  margin: 8px 0;
  position: relative;
}

.searchbar {
  display: flex;
  position: relative;
  background-color: var(--md-sys-color-surface-variant);
  flex-direction: row;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
  border-radius: 24px;
  width: 100%;
  height: 48px;
  min-height: 48px;
  overflow: hidden;
}
.searchbar .searchfield {
  outline: none;
  border: 0;
  color: var(--md-sys-color-on-surface);
  font-size: var(--md-sys-typescale-body-medium-font-size);
  background-color: transparent;
  height: 100%;
  padding: 0 0 0 24px;
  overflow: hidden;
}
.searchbar .searchfield::-moz-placeholder {
  color: var(--md-sys-color-on-surface-variant);
  opacity: 0.5;
}
.searchbar .searchfield::placeholder {
  color: var(--md-sys-color-on-surface-variant);
  opacity: 0.5;
}
.searchbar [class*=button-].icon {
  display: flex;
  align-items: center;
  border: none;
  position: relative;
  vertical-align: middle;
  height: 100%;
  background-color: var(--md-sys-color-surface-variant);
  color: var(--md-sys-color-on-surface-variant);
  padding: 0 16px;
  overflow: hidden;
  border-radius: 0;
  text-align: center;
  justify-content: center;
}
.searchbar [class*=button-].icon::after {
  background-color: var(--md-sys-color-on-primary-container);
  padding: 0;
  border-radius: 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  position: absolute;
}
.searchbar [class*=button-].icon:hover {
  color: var(--md-sys-color-primary);
}

.searchsuggestions {
  display: grid;
  position: absolute;
  width: 100%;
  background-color: var(--md-sys-color-surface-variant);
  padding: 0;
  grid-template-rows: 0fr;
  grid-template-columns: 1fr;
  pointer-events: none;
  z-index: 3;
  overflow-y: auto;
  padding-top: 48px;
  border-radius: 24px;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
  transition: grid-template-rows 0.3s cubic-bezier(0.2, 0, 0, 1), box-shadow 0.3s cubic-bezier(0.2, 0, 0, 1);
}
.searchsuggestions ~ .searchbar {
  border-radius: 24px;
  z-index: 3;
  box-shadow: none;
}
.searchsuggestions.list {
  padding: 0;
}

#searchsuggestions {
  overflow: hidden;
}
#searchsuggestions::-webkit-scrollbar {
  display: none;
}
#searchsuggestions > .listitem:first-child {
  border-top: 1px solid var(--md-sys-color-outline);
}

.searchsuggestions.show {
  pointer-events: all;
  grid-template-rows: 1fr;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.14), 0 4px 5px 0 rgba(0, 0, 0, 0.12), 0 1px 8px 0 rgba(0, 0, 0, 0.2);
}
.searchsuggestions.show:empty {
  border-top: 0;
}

/* BARRA DE HERRAMIENTAS =========================== */
.toolbar {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 16px 0 8px 0;
  justify-content: space-between;
}
.toolbar .button {
  position: relative;
  width: 40px;
  height: 40px;
  line-height: 40px;
  font-size: 24px;
  font-family: "Material Symbols Rounded";
  font-variation-settings: "FILL" 1, "wght" 300, "opsz" 24;
  cursor: pointer;
  float: left;
  text-align: center;
  border-radius: 24px;
  overflow: hidden;
  color: var(--md-sys-color-on-surface-variant);
  margin: 4px;
}
.toolbar .button::before {
  position: absolute;
  content: " ";
  width: 40px;
  height: 40px;
  top: 0;
  left: 0;
  background-color: var(--md-sys-color-surface-variant);
  opacity: 0;
  border-radius: 20px;
}
.toolbar .button:hover::before {
  opacity: 0.08;
}
.toolbar #back {
  left: 0;
}

/* SEPARATOR ====================================== */
.separator {
  background-color: var(--md-sys-color-outline);
  width: 100%;
  height: 1px;
  margin: 16px 0;
  opacity: 0.5;
}
.separator.vertical {
  width: 1px;
  height: 100%;
  margin: 0 16px;
}
.separator.mini {
  margin: 0;
}

.rating {
  display: flex;
  flex-direction: row-reverse;
  width: -moz-fit-content;
  width: fit-content;
}
.rating input {
  width: 0;
  height: 0;
}
.rating input:checked ~ label .icon, .rating input:checked ~ label ~ input:checked ~ label .icon, .rating input:hover ~ label .icon, .rating input:hover ~ label ~ input:checked ~ label .icon {
  font-variation-settings: "FILL" 1, "wght" 500, "opsz" 24;
}
.rating .icon {
  color: inherit;
  transition: font-variation-settings 0.2s cubic-bezier(0.2, 0, 0, 1) !important;
}

/* TEXTFIELD & TEXTAREA =========================== */
input,
textarea {
  width: 100%;
}

input:disabled {
  pointer-events: none !important;
}

[class*=textfield-] {
  position: relative;
  display: flex;
  flex-direction: column;
}
[class*=textfield-].number input {
  text-align: right;
}
[class*=textfield-] .support {
  display: flex;
  flex-direction: row;
}
[class*=textfield-] .placeholder {
  color: var(--md-sys-color-on-surface-variant);
  padding: 4px 16px 0 16px;
  min-height: 20px;
  flex: 10;
  justify-content: space-between;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: justify;
  display: flex;
}
[class*=textfield-] .counter {
  color: var(--md-sys-color-on-surface-variant);
  text-align: right;
  width: -moz-fit-content;
  width: fit-content;
}
[class*=textfield-] input:disabled {
  opacity: 0.38;
}
[class*=textfield-] textarea {
  resize: none;
}

/* Outlined */
.textfield-outlined {
  margin: 6px 0 6px 0;
  background-color: inherit;
}
.textfield-outlined input,
.textfield-outlined select,
.textfield-outlined textarea {
  min-height: 52px;
  padding: 10px 16px 10px 16px;
  display: block;
  z-index: 1;
  border: 1px solid var(--md-sys-color-outline);
  border-radius: 4px;
  color: var(--md-sys-color-on-surface);
  caret-color: var(--md-sys-color-primary);
  background-color: inherit;
  transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
}
.textfield-outlined input:disabled,
.textfield-outlined select:disabled,
.textfield-outlined textarea:disabled {
  border: 1px solid var(--md-sys-color-on-surface);
}
.textfield-outlined input:disabled:hover,
.textfield-outlined select:disabled:hover,
.textfield-outlined textarea:disabled:hover {
  border: 1px solid var(--md-sys-color-on-surface);
  opacity: 0.38;
}
.textfield-outlined input:-moz-read-write:hover, .textfield-outlined select:-moz-read-write:hover, .textfield-outlined textarea:-moz-read-write:hover {
  border: 1px solid var(--md-sys-color-on-surface);
}
.textfield-outlined input:read-write:hover,
.textfield-outlined select:read-write:hover,
.textfield-outlined textarea:read-write:hover {
  border: 1px solid var(--md-sys-color-on-surface);
}
.textfield-outlined input:-moz-read-only, .textfield-outlined select:-moz-read-only, .textfield-outlined textarea:-moz-read-only {
  border: 1px solid var(--md-sys-color-surface-variant);
}
.textfield-outlined input:read-only,
.textfield-outlined select:read-only,
.textfield-outlined textarea:read-only {
  border: 1px solid var(--md-sys-color-surface-variant);
}

input:-moz-read-only {
  cursor: default;
}

input:read-only {
  cursor: default;
}

.textfield-outlined input:-moz-read-only:focus, .textfield-outlined select:-moz-read-only:focus, .textfield-outlined textarea:-moz-read-only:focus {
  border: 1px solid var(--md-sys-color-surface-variant);
  outline: none;
}

.textfield-outlined input:read-only:focus,
.textfield-outlined select:read-only:focus,
.textfield-outlined textarea:read-only:focus {
  border: 1px solid var(--md-sys-color-surface-variant);
  outline: none;
}
.textfield-outlined input:-moz-read-write:focus, .textfield-outlined select:-moz-read-write:focus, .textfield-outlined textarea:-moz-read-write:focus {
  outline: 1px solid var(--md-sys-color-primary);
  border: 1px solid var(--md-sys-color-primary);
}
.textfield-outlined input:read-write:focus,
.textfield-outlined select:read-write:focus,
.textfield-outlined textarea:read-write:focus {
  outline: 1px solid var(--md-sys-color-primary);
  border: 1px solid var(--md-sys-color-primary);
}
.textfield-outlined.withicon input,
.textfield-outlined.withicon select,
.textfield-outlined.withicon textarea {
  padding-left: 52px;
}
.textfield-outlined .icon {
  font-size: 24px;
  line-height: 24px;
  z-index: 2;
  width: 24px;
  height: 24px;
  color: var(--md-sys-color-on-surface-variant);
  font-variation-settings: "FILL" 1, "wght" 500, "opsz" 24;
  position: absolute;
  pointer-events: none;
  left: 0px;
  top: 0px;
  margin: 14px 16px 14px 12px;
  text-align: center;
  overflow: hidden;
}
.textfield-outlined .trailicon {
  font-size: 24px;
  line-height: 24px;
  width: 24px;
  z-index: 2;
  height: 24px;
  color: var(--md-sys-color-on-surface-variant);
  font-family: "Material Symbols Rounded";
  font-variation-settings: "FILL" 0, "wght" 500, "opsz" 24;
  position: absolute;
  pointer-events: none;
  right: 0px;
  top: 0px;
  margin: 16px 12px 16px 16px;
  text-align: center;
}
.textfield-outlined .icon ~ input {
  padding-left: 52px;
}
.textfield-outlined .trailicon ~ input {
  padding-right: 52px;
}
.textfield-outlined label {
  margin: 14px;
  height: 24px;
  color: var(--md-sys-color-on-surface-variant);
  position: absolute;
  pointer-events: none;
  overflow: clip;
  text-overflow: ellipsis;
  left: 0px;
  top: 0px;
  transition: all 0.3s cubic-bezier(0.2, 0, 0, 1);
  z-index: 1;
  transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  width: inherit;
}
.textfield-outlined .icon ~ label {
  top: 0;
  left: 36px;
}
.textfield-outlined.withicon label {
  margin-left: 52px;
}
.textfield-outlined.open input ~ label {
  color: var(--md-sys-color-on-surface-variant);
}
.textfield-outlined input:-moz-read-write:focus ~ label, .textfield-outlined select:-moz-read-write:focus ~ label, .textfield-outlined textarea:-moz-read-write:focus ~ label {
  color: var(--md-sys-color-primary);
}
.textfield-outlined input:read-write:focus ~ label,
.textfield-outlined select:read-write:focus ~ label,
.textfield-outlined textarea:read-write:focus ~ label {
  color: var(--md-sys-color-primary);
}
.textfield-outlined.open input ~ label,
.textfield-outlined.open select ~ label,
.textfield-outlined.open textarea ~ label {
  top: -22px;
  height: 16px;
  left: -4px;
  line-height: var(--md-sys-typescale-body-small-line-height);
  font-size: var(--md-sys-typescale-body-small-font-size);
  padding: 0 4px;
  background-color: var(--md-sys-color-surface);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.textfield-outlined input:-moz-read-write:focus ~ label, .textfield-outlined select:-moz-read-write:focus ~ label, .textfield-outlined textarea:-moz-read-write:focus ~ label {
  top: -22px;
  height: 16px;
  left: -4px;
  line-height: var(--md-sys-typescale-body-small-line-height);
  font-size: var(--md-sys-typescale-body-small-font-size);
  padding: 0 4px;
  background-color: var(--md-sys-color-surface);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.textfield-outlined input:read-write:focus ~ label,
.textfield-outlined select:read-write:focus ~ label,
.textfield-outlined textarea:read-write:focus ~ label {
  top: -22px;
  height: 16px;
  left: -4px;
  line-height: var(--md-sys-typescale-body-small-line-height);
  font-size: var(--md-sys-typescale-body-small-font-size);
  padding: 0 4px;
  background-color: var(--md-sys-color-surface);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.textfield-outlined.withicon.open input ~ label,
.textfield-outlined.withicon.open select ~ label,
.textfield-outlined.withicon.open textarea ~ label {
  top: -24px;
  left: -42px;
}
.textfield-outlined.withicon input:focus ~ label,
.textfield-outlined.withicon select:focus ~ label,
.textfield-outlined.withicon textarea:focus ~ label {
  top: -24px;
  left: -42px;
}
.textfield-outlined.open input ~ label::before,
.textfield-outlined.open select ~ label::before,
.textfield-outlined.open textarea ~ label::before {
  opacity: 0;
  background-color: var(--md-sys-color-primary);
}
.textfield-outlined input:focus ~ label::before,
.textfield-outlined select:focus ~ label::before,
.textfield-outlined textarea:focus ~ label::before {
  opacity: 0;
  background-color: var(--md-sys-color-primary);
}

/* activo */
/* Filled */
.textfield-filled input,
.textfield-filled textarea {
  min-height: 56px;
  padding: 22px 16px 8px 16px;
  display: block;
  border: none;
  border-bottom: 1px solid var(--md-sys-color-on-surface-variant);
  background-color: var(--md-sys-color-surface-variant);
  border-radius: 4px 4px 0 0;
  color: var(--md-sys-color-on-surface);
  caret-color: var(--md-sys-color-primary);
  position: relative;
}
.textfield-filled .input {
  position: relative;
}
.textfield-filled .input::after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  content: "";
  border-radius: 4px 4px 0 0;
  background-color: var(--md-sys-color-on-surface);
  opacity: 0;
  transition: opacity 0.25s cubic-bezier(0.2, 0, 0, 1);
  pointer-events: none;
}
.textfield-filled .input:hover::after {
  opacity: 0.08;
}
.textfield-filled textarea:focus,
.textfield-filled input:focus {
  outline: none;
}
.textfield-filled .leading ~ input,
.textfield-filled .leading ~ textarea {
  padding-left: 52px;
}
.textfield-filled .trailing ~ input,
.textfield-filled .trailing ~ textarea {
  padding-right: 52px;
}
.textfield-filled .leading,
.textfield-filled .trailing {
  position: absolute;
  display: flex;
  font-size: 20px;
  height: 56px;
  color: var(--md-sys-color-on-surface-variant);
  font-variation-settings: "FILL" 1, "wght" 600, "opsz" 24;
  align-items: center;
  top: 0;
  padding: 0 12px;
  z-index: 1;
  width: 48px;
  justify-content: center;
}
.textfield-filled .leading {
  pointer-events: none;
  left: 0;
}
.textfield-filled .trailing {
  right: 0;
}

/* Leading and Trailing icons */
[data-theme=dark] .textfield-filled .trailing.icon {
  font-variation-settings: "FILL" 1, "wght" 400, "opsz" 24;
}

.textfield-filled .btn {
  cursor: pointer;
}
.textfield-filled .btn:focus-visible, .textfield-filled .btn:focus {
  outline: none;
}
.textfield-filled .btn::before {
  position: absolute;
  content: "";
  top: 50%;
  left: 50%;
  background-color: var(--md-sys-color-on-surface);
  transition: all 0.3s cubic-bezier(0.2, 0, 0, 1);
  border-radius: 50%;
  width: 0;
  height: 0;
  opacity: 0;
}
.textfield-filled .btn:hover::before, .textfield-filled .btn:focus::before, .textfield-filled .btn:active::before {
  top: calc(50% - 18px);
  left: calc(50% - 18px);
  width: 36px;
  height: 36px;
}
.textfield-filled .btn:hover::before {
  opacity: 0.08;
}
.textfield-filled .btn:focus::before {
  opacity: 0.12;
}
.textfield-filled .btn:active::before {
  opacity: 0.12;
}
.textfield-filled label {
  margin: 16px;
  color: var(--md-sys-color-on-surface-variant);
  position: absolute;
  pointer-events: none;
  left: 0;
  top: 0;
  transition: all 0.35s cubic-bezier(0.2, 0, 0, 1);
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  width: inherit;
}
.textfield-filled .leading ~ label {
  margin-left: 52px;
}
.textfield-filled.open input ~ label,
.textfield-filled.open textarea ~ label {
  top: -10px;
  color: var(--md-sys-color-primary);
}
.textfield-filled input:focus ~ label,
.textfield-filled textarea:focus ~ label {
  top: -10px;
  color: var(--md-sys-color-primary);
}
.textfield-filled .placeholder {
  color: var(--md-sys-color-on-surface-variant);
  padding: 4px 16px 0 16px;
}

/* activo */
/* barra inferior */
.bar {
  position: relative;
  display: block;
  width: 100%;
}
.bar:before, .bar:after {
  content: "";
  height: 2px;
  width: 0;
  bottom: 0px;
  position: absolute;
  background: var(--md-sys-color-primary);
  transition: all 0.3s cubic-bezier(0.2, 0, 0, 1);
}
.bar:before {
  left: 50%;
}
.bar:after {
  right: 50%;
}

/* activo */
input:focus ~ .bar:before, input:focus ~ .bar:after {
  width: 50%;
}

textarea:focus ~ .bar:before, textarea:focus ~ .bar:after {
  width: 50%;
}

/* Error */
[class*=textfield-].error input,
[class*=textfield-].error textarea {
  caret-color: var(--md-sys-color-error);
}

.textfield-filled.error input,
.textfield-filled.error textarea {
  border-bottom: 1px solid var(--md-sys-color-error);
}

.textfield-outlined.error input {
  border: 1px solid var(--md-sys-color-error);
}
.textfield-outlined.error input:focus {
  outline: 1px solid var(--md-sys-color-error);
  border: 1px solid var(--md-sys-color-error);
}
.textfield-outlined.error textarea:focus {
  outline: 1px solid var(--md-sys-color-error);
  border: 1px solid var(--md-sys-color-error);
}
.textfield-outlined.error input:hover {
  outline-color: var(--md-sys-color-on-error-container);
  border: 1px solid var(--md-sys-color-on-error-container);
}
.textfield-outlined.error textarea:hover {
  outline-color: var(--md-sys-color-on-error-container);
  border: 1px solid var(--md-sys-color-on-error-container);
}
.textfield-outlined.error textarea:hover ~ label {
  color: var(--md-sys-color-on-error-container);
}
.textfield-outlined.error.open textarea:hover ~ label {
  color: var(--md-sys-color-on-error-container);
}
.textfield-outlined.error input:hover ~ label,
.textfield-outlined.error input:hover ~ .trailicon.error {
  color: var(--md-sys-color-on-error-container);
}
.textfield-outlined.error.open input:hover ~ label {
  color: var(--md-sys-color-on-error-container);
}
.textfield-outlined .trailicon.error {
  color: var(--md-sys-color-error);
  font-variation-settings: "FILL" 1, "wght" 500, "opsz" 24;
}

[class*=textfield-].error label,
[class*=textfield-].error textarea:focus ~ label, [class*=textfield-].error.open textarea ~ label,
[class*=textfield-].error input:focus ~ label, [class*=textfield-].error.open input ~ label,
[class*=textfield-].error .placeholder {
  color: var(--md-sys-color-error);
}

/* activo */
/* barra inferior */
.textfield-filled.error .bar:before, .textfield-filled.error .bar:after {
  background: var(--md-sys-color-error);
}

/* Selects */
select {
  position: relative;
}
select option {
  background-color: var(--md-sys-color-surface-variant);
  color: var(--md-sys-color-on-surface-variant);
}
select.outlined {
  background-color: var(--md-sys-color-background);
  color: var(--md-sys-color-on-surface-variant);
  outline: none;
  border: 1px solid var(--md-sys-color-outline);
  border-radius: 6px;
  width: 100%;
  white-space: pre-wrap;
  text-overflow: ellipsis;
}
select.outlined:active {
  outline: none;
}
select.outlined:focus option, select.outlined:active option {
  background-color: var(--md-sys-color-background);
}
select.outlined option {
  background-color: var(--md-sys-color-background);
  color: var(--md-sys-color-on-surface-variant);
  padding: 16px 16px;
  white-space: pre-wrap;
  width: 100%;
  text-overflow: ellipsis;
  cursor: pointer;
}
select.outlined option:hover {
  background-color: var(--md-sys-color-surface-variant);
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}
input[type=number], input[type=date] {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
}

/* Firefox */
[data-theme=dark] input,
[data-theme=dark] select {
  color-scheme: dark;
}

/* ACORDEON =================================================== */
.cardaccordion {
  border-top: 1px solid var(--md-sys-color-outline);
  overflow: hidden;
}
.cardaccordion.open > .accordion-title::after {
  border-radius: 0;
}
.cardaccordion > .accordion-title::after {
  border-radius: 0 0 12px 12px;
}

.accordion {
  overflow: hidden;
}
.accordion.open > .accordion-title::before {
  transform: rotate(180deg);
}
.accordion.open > .accordion-content {
  grid-template-rows: 1fr;
}
.accordion-title {
  padding: 16px 46px 16px 24px;
  margin: 0;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.accordion-title::before {
  display: flex;
  height: 100%;
  position: absolute;
  padding: 0 16px;
  margin: 0;
  font-size: 1.5em;
  content: "expand_more";
  right: 0;
  bottom: 0;
  font-family: "Material Symbols Rounded";
  color: inherit;
  align-items: center;
  transition: transform 0.3s cubic-bezier(0.2, 0, 0, 1);
}
.accordion-title::after {
  opacity: 0;
}
.accordion-title:hover::after {
  opacity: 0.08;
}
.accordion-title:focus::after {
  opacity: 0.12;
}
.accordion-title:active::after {
  opacity: 0.12;
}
.accordion-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.45s cubic-bezier(0.2, 0, 0, 1);
}
.accordion-content > div {
  overflow: hidden;
  transition: padding 0.45s cubic-bezier(0.2, 0, 0, 1);
}
.accordion div:not(.open) > .accordion-content > div {
  padding-top: 0;
  padding-bottom: 0;
}

/* LISTA ====================================================== */
.list {
  padding: 8px 0;
  overflow-y: auto;
  overflow-x: hidden;
}
.list.noclick .listitem {
  cursor: default;
}
.list.noclick .listitem:not(.listitem:last-child) {
  border-bottom: 1px solid var(--md-sys-color-outline);
}
.list.border .listitem {
  border-bottom: 1px solid var(--md-sys-color-surface-variant);
}
.list.border .listitem:last-child {
  border-bottom: none;
}

.listitem {
  width: 100%;
  padding: 8px 24px 8px 16px;
  z-index: 1;
  cursor: pointer;
  display: flex;
  flex-direction: row;
  -moz-column-gap: 16px;
       column-gap: 16px;
  align-items: center;
  overflow: hidden;
  position: relative;
  flex-wrap: nowrap;
  min-height: 48px;
}
.listitem::before {
  background-color: var(--md-sys-color-on-surface);
  opacity: 0;
  transition: all 0.15s cubic-bezier(0, 0, 0, 1);
}
.listitem .icon {
  font-size: 24px;
  flex: 0 0 24px;
}
.listitem .icon.error {
  color: var(--md-sys-color-error);
}
.listitem div {
  overflow: hidden;
  text-overflow: ellipsis;
}
.listitem span {
  color: var(--md-sys-color-on-surface);
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.listitem:hover::before {
  opacity: 0.08;
}
.listitem:focus::before {
  opacity: 0.12;
}
.listitem:active::before {
  opacity: 0.12;
}

.searchresults {
  height: 100%;
}

/* DESCRIPTION GROUP ============================================ */
.block-description {
  display: flex;
  align-items: center;
  -moz-column-gap: 8px;
       column-gap: 8px;
  padding: 8px 0;
}
.block-description div {
  flex: 1;
}

/* Pantalla de Cargando ======================================================= */
#loading-wrapper {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  flex-direction: column;
  row-gap: 30px;
  opacity: 1;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  padding: 0 24px;
  animation: md-appear 0.35s cubic-bezier(0.05, 0.7, 0.1, 1);
  justify-content: center;
  align-items: center;
}
#loading-wrapper::before {
  background-color: var(--md-sys-color-background);
  opacity: 0.3;
}

/* CHECKBOX ==================================================== */
.listitem .checkbox {
  z-index: 1;
}

.checkbox {
  position: relative;
  width: 0;
  height: 0;
  margin: 16px;
}
.checkbox::before {
  position: absolute;
  font-family: "Material Symbols Rounded";
  font-variation-settings: "FILL" 1, "wght" 400, "GRAD" -25, "opsz" 24;
  font-size: 24px;
  line-height: 18px;
  text-align: center;
  content: "check_box_outline_blank";
  top: -9px;
  left: -12px;
  width: 18px;
  height: 18px;
  pointer-events: all;
  z-index: 2;
  color: var(--md-sys-color-on-surface);
}
.checkbox:checked::before {
  content: "check_box";
  color: var(--md-sys-color-primary);
}
.checkbox::after {
  position: absolute;
  content: "";
  top: -20px;
  left: -20px;
  background-color: var(--md-sys-color-on-surface);
  width: 40px;
  height: 40px;
  pointer-events: all;
  border-radius: 50%;
  opacity: 0;
}
.checkbox:hover::after {
  opacity: 0.08;
}
.checkbox:checked::after {
  background-color: var(--md-sys-color-primary);
}
.checkbox:focus {
  outline: none;
}
.checkbox:focus::after {
  opacity: 0.12;
}
.checkbox:active::after {
  opacity: 0.12;
}

/* SWITCH ====================================================== */
.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 32px;
  width: 52px;
  background-color: var(--md-sys-color-surface-variant);
  border: 2px solid var(--md-sys-color-outline);
  transition: 0.4s;
  border-radius: 34px;
}
.slider:after {
  position: absolute;
  content: "";
  height: 40px;
  width: 40px;
  left: -6px;
  top: -6px;
  background-color: var(--md-sys-color-primary);
  transition: 0.45s cubic-bezier(0, 0, 0, 1);
  border-radius: 50%;
  opacity: 0;
}
.slider:before {
  position: absolute;
  content: "";
  height: 16px;
  width: 16px;
  left: 6px;
  top: 6px;
  background-color: var(--md-sys-color-outline);
  transition: 0.45s cubic-bezier(0, 0, 0, 1);
  border-radius: 50%;
}
.slider:hover::before {
  background-color: var(--md-sys-color-on-surface-variant);
  outline: 4px;
}
.slider:hover::after {
  opacity: 0.08;
}
.slider:active::before {
  left: 0;
  top: 0;
  height: 28px;
  width: 28px;
}
.slider:active::after {
  opacity: 0.12;
}

input:checked + .slider {
  background-color: var(--md-sys-color-primary);
  border: 2px solid var(--md-sys-color-primary);
}
input:checked + .slider:before {
  transform: translate(16px, -4px);
  background-color: var(--md-sys-color-on-primary);
  height: 24px;
  width: 24px;
  content: "done";
  text-align: center;
  line-height: 24px;
  font-family: "Material Symbols Rounded";
}
input:checked + .slider:after {
  transform: translate(20px);
}
input:checked + .slider:hover::before {
  background-color: var(--md-sys-color-primary-container);
}
input:checked + .slider:active::before {
  left: 4px;
  top: 4px;
  height: 28px;
  width: 28px;
  line-height: 28px;
}

/* PLACEHOLDER =================================================== */
.plh-glow,
.plh-wave {
  flex-grow: 1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
  margin-bottom: 4px;
}

.plh-glow .plh::after {
  background-color: var(--md-sys-color-on-tertiary-container);
  animation: anim-plh-glow 0.7s cubic-bezier(0, 0, 0, 1) infinite alternate;
}

.plh-wave .plh::after {
  opacity: 0.2;
  background-image: linear-gradient(0deg, var(--md-sys-color-tertiary-container), var(--md-sys-color-on-tertiary-container), var(--md-sys-color-tertiary-container));
  animation: anim-plh-wave 1.5s cubic-bezier(0.2, 0, 0, 1) infinite linear;
}

.plh {
  background-color: var(--md-sys-color-tertiary-container);
  content: "";
  font-size: inherit;
  height: inherit;
  display: flex;
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}
.plh::before {
  content: "-";
  color: transparent;
  width: 0;
  font-size: inherit;
}

/* TOOLTIPS ====================================================== */
.tooltip {
  position: relative;
  top: 50%;
  left: 0;
}
.tooltip:before {
  content: attr(tooltip);
  position: absolute;
  bottom: -100%;
  left: 50%;
  padding: 4px 8px;
  min-height: 12px;
  transform: translateX(-50%) scale(0.8);
  opacity: 0;
  transition: all 0.25s cubic-bezier(0, 0, 0, 1);
  transform-origin: top;
  background: var(--md-sys-color-on-surface-variant);
  color: var(--md-sys-color-surface-variant);
  border-radius: 4px;
  font-size: 10px;
  line-height: 12px;
  text-align: center;
}
.tooltip:hover:before {
  transition: all 0.25s cubic-bezier(0, 0, 0, 1);
  transition-delay: 1.5s;
  transform: translateX(-50%) scale(1);
  opacity: 1;
}

.disabled .tooltip:before {
  display: none;
}

/* SNACKBAR =============================================== */
.notification {
  position: fixed;
  width: 100%;
  margin: auto;
  display: flex;
  flex-direction: column;
  z-index: 50;
  row-gap: 8px;
  bottom: 24px;
  flex-direction: column;
  align-items: center;
}

.snackbar {
  animation: snackbarShow 0.25s cubic-bezier(0.2, 0, 0, 1);
  grid-template-rows: 1fr;
  display: grid;
  z-index: 50;
  background-color: var(--md-sys-color-inverse-surface);
  border-radius: 4px;
  min-height: 48px;
  padding: 0 8px 0 16px;
  min-width: 344px;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
}
.snackbar.fade {
  animation: md-appear-backwards 0.25s cubic-bezier(0.2, 0, 0, 1);
  opacity: 0;
}
.snackbar > div {
  overflow: hidden;
  color: var(--md-sys-color-inverse-on-surface);
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  align-items: center;
  animation: snackbarcontentShow 0.3s cubic-bezier(0.2, 0, 0, 1);
}
.snackbar span {
  flex: 10;
  color: var(--md-sys-color-inverse-on-surface);
}
.snackbar .button-text {
  color: var(--md-sys-color-inverse-primary);
}

/* CHECKBOX =================================================== */
.radio {
  display: flex;
  align-items: center;
  position: relative;
  margin: 4px 0;
  font-size: 16px;
  line-height: 24px;
  width: 100%;
}

input[type=radio] {
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  height: 20px;
  opacity: 0;
  z-index: 0;
}

.radiolabel {
  display: block;
  padding: 0 0 0 32px;
  cursor: pointer;
  color: var(--md-sys-color-on-surface);
  width: 100%;
}
.radiolabel:-moz-read-only {
  cursor: default;
}
.radiolabel:read-only, .radiolabel:disabled {
  cursor: default;
}
.radiolabel:before {
  content: "";
  position: absolute;
  top: 4px;
  left: 4px;
  width: 16px;
  height: 16px;
  background-color: transparent;
  outline: 2px solid var(--md-sys-color-on-surface-variant);
  border-radius: 16px;
  z-index: 1;
  transition: outline-color 0.3s cubic-bezier(0.2, 0, 0, 1);
}
.radiolabel:after {
  content: "";
  position: absolute;
  top: 8px;
  left: 8px;
  width: 8px;
  height: 8px;
  background-color: var(--md-sys-color-primary);
  border-radius: 50%;
  z-index: 2;
  transform: scale(0, 0);
  transition: transform 0.3s cubic-bezier(0.2, 0, 0, 1);
}

input[type=radio]:checked + .radiolabel:before {
  outline-color: var(--md-sys-color-primary);
}
input[type=radio]:checked + .radiolabel:after {
  transform: scale(1, 1);
}

.expandable-card.expanded {
  flex: 0 0 100%;
}

/* DISEÑO RESPONSIVO ============================================= */
/* Pantallas Medianas (md) */
@media only screen and (max-width: 1000px) {
  .searcharea.morph {
    position: fixed;
    display: flex;
    z-index: 11;
    top: 64px;
    flex-direction: column;
    background-color: var(--md-sys-color-surface-variant);
    border-radius: 0;
    margin: 0 0 16px 0;
    min-height: 64px;
    width: calc(100% - 88px);
    left: 0;
    margin-left: 88px;
    max-width: unset;
  }
  .searcharea.morph:has(> .searchsuggestions.show) {
    border-radius: 0 0 24px 24px;
    overflow: hidden;
  }
  .searcharea.morph .searchbar {
    height: 64px;
    border-radius: 0;
  }
  .searcharea.morph .searchbar + span {
    margin-top: 64px;
  }
  .searcharea.morph .searchbar .searchfield {
    outline: none;
    border: 0;
    color: var(--md-sys-color-on-surface);
    padding: 0 56px 0 64px;
    height: 100%;
  }
  .searcharea.morph .searchbar .button-trail {
    right: 8px;
    top: 8px;
    height: 48px;
    font-size: 24px;
  }
  .searcharea.morph .searchbar [class*=button-] {
    border-radius: 0;
    padding: 0 16px;
  }
  .searcharea.morph .searchbar button[type=submit] {
    position: absolute;
  }
  .searcharea.morph + [class*=card-] {
    margin-top: 64px;
  }
  .searcharea.morph .searchsuggestions {
    margin-top: 64px;
  }
}
/* Teléfonos móviles (sm) */
@media only screen and (max-width: 700px) {
  .dialog.fullscreen [class*=button-]::after, .dialog.fullscreen #dialog-cancel::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: " ";
    pointer-events: none;
  }
  .content {
    margin-left: 0px;
    overflow: overlay;
    min-height: calc(100% - 64px - 80px);
  }
  .topbar .logo {
    justify-content: left;
  }
  .footer {
    margin-bottom: 60px;
  }
  #footer {
    margin-bottom: 60px;
  }
  #footer:after {
    margin-bottom: 60px;
  }
  .notification {
    bottom: 96px;
  }
  .searcharea.morph {
    width: 100%;
    left: 0;
    margin-left: 0;
  }
  .searchbar {
    padding: 0;
  }
  .dialog.fullscreen {
    border-radius: 0;
    min-width: unset;
    max-width: unset;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    box-shadow: none;
  }
  .dialog.fullscreen .icon {
    display: none;
  }
  .dialog.fullscreen .dialog-header {
    height: 56px;
    width: 65%;
    line-height: 56px;
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0 0 0 56px;
  }
  .dialog.fullscreen .dialog-header::before {
    content: "";
    position: absolute;
    height: 56px;
    width: 100%;
    top: 0;
    left: 0;
    display: block;
    border-bottom: 1px solid var(--md-sys-color-outline);
  }
  .dialog.fullscreen .dialogcontent {
    padding: 24px;
  }
  .dialog.fullscreen .buttonarea {
    position: absolute;
    top: -24px;
    left: 0;
    height: 56px;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    padding: 0;
  }
  .dialog.fullscreen [class*=button-] {
    height: 100%;
    border-radius: 0;
    align-items: center;
    padding: 0 24px;
    background-color: transparent;
    color: var(--md-sys-color-primary) !important;
  }
  .dialog.fullscreen #dialog-cancel {
    display: flex;
    height: 100%;
    border-radius: 0;
    align-items: center;
    color: transparent !important;
    width: 56px;
  }
  .dialog.fullscreen #dialog-cancel::before {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "Material Symbols Rounded";
    font-size: 1.5em;
    color: var(--md-sys-color-on-surface);
    content: "clear";
  }
  .dialog.fullscreen [class*=button-]::after {
    border-radius: 0;
    align-items: center;
  }
  .dialog.fullscreen [class*=button-]:hover {
    box-shadow: none;
  }
  .dialog.fullscreen [class*=button-]:hover::after {
    background-color: var(--md-sys-color-primary);
  }
}
/* LOADING ANIMATION ==================================================================== */
.skeleton {
  animation: md-spinner 0.3s cubic-bezier(0.2, 0, 0, 1) infinite alternate;
}

.circle-badge {
  position: absolute;
  height: 52px;
  width: 52px;
  padding: 8px;
  background-color: var(--md-sys-color-primary);
  border-radius: 50%;
  top: 0;
  right: 0;
  z-index: 2;
  box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.14), 0 3px 4px 0 rgba(0, 0, 0, 0.12), 0 1px 7px 0 rgba(0, 0, 0, 0.2);
}
.circle-badge .icon {
  color: var(--md-sys-color-on-primary);
  text-align: center;
  width: 36px;
}/*# sourceMappingURL=materialpg.css.map */