.avatar[data-v-2297361d] {
  position: relative;
  flex: 0 0 auto;
  cursor: pointer;
}
div.online-status[data-v-2297361d] {
  position: absolute;
  display: block;
  top: -.05em;
  right: -.05em;
  height: .35em;
  width: .35em;
  border: 0.05em solid RGB(var(--panelBackground));
  border-radius: 1em;
}

.app-bar #latte-global-search {
  height: 45px;
  max-width: 330px;
  min-height: 45px;
  background: rgba(var(--appBarForeground), 0.05);
  transition: max-width 210ms var(--easeSwiftOut);
}
.app-bar #latte-global-search:focus-within {
    max-width: 480px;
}
.app-bar #latte-global-search .form-control,
  .app-bar #latte-global-search .input-group-addon {
    height: inherit;
}

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
*,
*::before,
*::after {
  box-sizing: border-box; }

ul[class],
ol[class] {
  padding: 0; }

body,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0; }

html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
  min-height: 100vh;
  line-height: 1.5;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed; }

a:not([class]) {
  text-decoration-skip-ink: auto; }

img {
  max-width: 100%;
  display: block; }

article > * + * {
  margin-top: 1em; }

input,
button,
textarea,
select {
  font: inherit; }
  input[disabled], input.is-disabled,
  button[disabled],
  button.is-disabled,
  textarea[disabled],
  textarea.is-disabled,
  select[disabled],
  select.is-disabled {
    cursor: not-allowed; }

@media (prefers-reduced-motion: reduce) {
  *, ::before, ::after {
    animation-play-state: paused !important;
    scroll-behavior: auto !important;
    transition: none !important; } }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px; } }

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px; } }

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px; } }

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px; } }

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px; }

.no-gutters {
  margin-right: 0;
  margin-left: 0; }
  .no-gutters > .col,
  .no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0; }

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px; }

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%; }

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%; }

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%; }

.row-cols-3 > * {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%; }

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%; }

.row-cols-6 > * {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%; }

.col-1 {
  flex: 0 0 8.33333%;
  max-width: 8.33333%; }

.col-2 {
  flex: 0 0 16.66667%;
  max-width: 16.66667%; }

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

.col-4 {
  flex: 0 0 33.33333%;
  max-width: 33.33333%; }

.col-5 {
  flex: 0 0 41.66667%;
  max-width: 41.66667%; }

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

.col-7 {
  flex: 0 0 58.33333%;
  max-width: 58.33333%; }

.col-8 {
  flex: 0 0 66.66667%;
  max-width: 66.66667%; }

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

.col-10 {
  flex: 0 0 83.33333%;
  max-width: 83.33333%; }

.col-11 {
  flex: 0 0 91.66667%;
  max-width: 91.66667%; }

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

.order-first {
  order: -1; }

.order-last {
  order: 13; }

.order-0 {
  order: 0; }

.order-1 {
  order: 1; }

.order-2 {
  order: 2; }

.order-3 {
  order: 3; }

.order-4 {
  order: 4; }

.order-5 {
  order: 5; }

.order-6 {
  order: 6; }

.order-7 {
  order: 7; }

.order-8 {
  order: 8; }

.order-9 {
  order: 9; }

.order-10 {
  order: 10; }

.order-11 {
  order: 11; }

.order-12 {
  order: 12; }

.offset-1 {
  margin-left: 8.33333%; }

.offset-2 {
  margin-left: 16.66667%; }

.offset-3 {
  margin-left: 25%; }

.offset-4 {
  margin-left: 33.33333%; }

.offset-5 {
  margin-left: 41.66667%; }

.offset-6 {
  margin-left: 50%; }

.offset-7 {
  margin-left: 58.33333%; }

.offset-8 {
  margin-left: 66.66667%; }

.offset-9 {
  margin-left: 75%; }

.offset-10 {
  margin-left: 83.33333%; }

.offset-11 {
  margin-left: 91.66667%; }

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-sm-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-sm-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-sm-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-sm-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-sm-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-sm-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-sm-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-sm-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-sm-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-sm-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-sm-first {
    order: -1; }
  .order-sm-last {
    order: 13; }
  .order-sm-0 {
    order: 0; }
  .order-sm-1 {
    order: 1; }
  .order-sm-2 {
    order: 2; }
  .order-sm-3 {
    order: 3; }
  .order-sm-4 {
    order: 4; }
  .order-sm-5 {
    order: 5; }
  .order-sm-6 {
    order: 6; }
  .order-sm-7 {
    order: 7; }
  .order-sm-8 {
    order: 8; }
  .order-sm-9 {
    order: 9; }
  .order-sm-10 {
    order: 10; }
  .order-sm-11 {
    order: 11; }
  .order-sm-12 {
    order: 12; }
  .offset-sm-0 {
    margin-left: 0; }
  .offset-sm-1 {
    margin-left: 8.33333%; }
  .offset-sm-2 {
    margin-left: 16.66667%; }
  .offset-sm-3 {
    margin-left: 25%; }
  .offset-sm-4 {
    margin-left: 33.33333%; }
  .offset-sm-5 {
    margin-left: 41.66667%; }
  .offset-sm-6 {
    margin-left: 50%; }
  .offset-sm-7 {
    margin-left: 58.33333%; }
  .offset-sm-8 {
    margin-left: 66.66667%; }
  .offset-sm-9 {
    margin-left: 75%; }
  .offset-sm-10 {
    margin-left: 83.33333%; }
  .offset-sm-11 {
    margin-left: 91.66667%; } }

@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-md-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-md-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-md-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-md-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-md-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-md-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-md-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-md-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-md-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-md-first {
    order: -1; }
  .order-md-last {
    order: 13; }
  .order-md-0 {
    order: 0; }
  .order-md-1 {
    order: 1; }
  .order-md-2 {
    order: 2; }
  .order-md-3 {
    order: 3; }
  .order-md-4 {
    order: 4; }
  .order-md-5 {
    order: 5; }
  .order-md-6 {
    order: 6; }
  .order-md-7 {
    order: 7; }
  .order-md-8 {
    order: 8; }
  .order-md-9 {
    order: 9; }
  .order-md-10 {
    order: 10; }
  .order-md-11 {
    order: 11; }
  .order-md-12 {
    order: 12; }
  .offset-md-0 {
    margin-left: 0; }
  .offset-md-1 {
    margin-left: 8.33333%; }
  .offset-md-2 {
    margin-left: 16.66667%; }
  .offset-md-3 {
    margin-left: 25%; }
  .offset-md-4 {
    margin-left: 33.33333%; }
  .offset-md-5 {
    margin-left: 41.66667%; }
  .offset-md-6 {
    margin-left: 50%; }
  .offset-md-7 {
    margin-left: 58.33333%; }
  .offset-md-8 {
    margin-left: 66.66667%; }
  .offset-md-9 {
    margin-left: 75%; }
  .offset-md-10 {
    margin-left: 83.33333%; }
  .offset-md-11 {
    margin-left: 91.66667%; } }

@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-lg-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-lg-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-lg-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-lg-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-lg-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-lg-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-lg-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-lg-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-lg-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-lg-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-lg-first {
    order: -1; }
  .order-lg-last {
    order: 13; }
  .order-lg-0 {
    order: 0; }
  .order-lg-1 {
    order: 1; }
  .order-lg-2 {
    order: 2; }
  .order-lg-3 {
    order: 3; }
  .order-lg-4 {
    order: 4; }
  .order-lg-5 {
    order: 5; }
  .order-lg-6 {
    order: 6; }
  .order-lg-7 {
    order: 7; }
  .order-lg-8 {
    order: 8; }
  .order-lg-9 {
    order: 9; }
  .order-lg-10 {
    order: 10; }
  .order-lg-11 {
    order: 11; }
  .order-lg-12 {
    order: 12; }
  .offset-lg-0 {
    margin-left: 0; }
  .offset-lg-1 {
    margin-left: 8.33333%; }
  .offset-lg-2 {
    margin-left: 16.66667%; }
  .offset-lg-3 {
    margin-left: 25%; }
  .offset-lg-4 {
    margin-left: 33.33333%; }
  .offset-lg-5 {
    margin-left: 41.66667%; }
  .offset-lg-6 {
    margin-left: 50%; }
  .offset-lg-7 {
    margin-left: 58.33333%; }
  .offset-lg-8 {
    margin-left: 66.66667%; }
  .offset-lg-9 {
    margin-left: 75%; }
  .offset-lg-10 {
    margin-left: 83.33333%; }
  .offset-lg-11 {
    margin-left: 91.66667%; } }

@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%; }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%; }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%; }
  .row-cols-xl-3 > * {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%; }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%; }
  .row-cols-xl-6 > * {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%; }
  .col-xl-1 {
    flex: 0 0 8.33333%;
    max-width: 8.33333%; }
  .col-xl-2 {
    flex: 0 0 16.66667%;
    max-width: 16.66667%; }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%; }
  .col-xl-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%; }
  .col-xl-5 {
    flex: 0 0 41.66667%;
    max-width: 41.66667%; }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%; }
  .col-xl-7 {
    flex: 0 0 58.33333%;
    max-width: 58.33333%; }
  .col-xl-8 {
    flex: 0 0 66.66667%;
    max-width: 66.66667%; }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%; }
  .col-xl-10 {
    flex: 0 0 83.33333%;
    max-width: 83.33333%; }
  .col-xl-11 {
    flex: 0 0 91.66667%;
    max-width: 91.66667%; }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%; }
  .order-xl-first {
    order: -1; }
  .order-xl-last {
    order: 13; }
  .order-xl-0 {
    order: 0; }
  .order-xl-1 {
    order: 1; }
  .order-xl-2 {
    order: 2; }
  .order-xl-3 {
    order: 3; }
  .order-xl-4 {
    order: 4; }
  .order-xl-5 {
    order: 5; }
  .order-xl-6 {
    order: 6; }
  .order-xl-7 {
    order: 7; }
  .order-xl-8 {
    order: 8; }
  .order-xl-9 {
    order: 9; }
  .order-xl-10 {
    order: 10; }
  .order-xl-11 {
    order: 11; }
  .order-xl-12 {
    order: 12; }
  .offset-xl-0 {
    margin-left: 0; }
  .offset-xl-1 {
    margin-left: 8.33333%; }
  .offset-xl-2 {
    margin-left: 16.66667%; }
  .offset-xl-3 {
    margin-left: 25%; }
  .offset-xl-4 {
    margin-left: 33.33333%; }
  .offset-xl-5 {
    margin-left: 41.66667%; }
  .offset-xl-6 {
    margin-left: 50%; }
  .offset-xl-7 {
    margin-left: 58.33333%; }
  .offset-xl-8 {
    margin-left: 66.66667%; }
  .offset-xl-9 {
    margin-left: 75%; }
  .offset-xl-10 {
    margin-left: 83.33333%; }
  .offset-xl-11 {
    margin-left: 91.66667%; } }

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

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

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

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

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

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

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

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

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

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important; }
  .d-sm-inline {
    display: inline !important; }
  .d-sm-inline-block {
    display: inline-block !important; }
  .d-sm-block {
    display: block !important; }
  .d-sm-table {
    display: table !important; }
  .d-sm-table-row {
    display: table-row !important; }
  .d-sm-table-cell {
    display: table-cell !important; }
  .d-sm-flex {
    display: flex !important; }
  .d-sm-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 768px) {
  .d-md-none {
    display: none !important; }
  .d-md-inline {
    display: inline !important; }
  .d-md-inline-block {
    display: inline-block !important; }
  .d-md-block {
    display: block !important; }
  .d-md-table {
    display: table !important; }
  .d-md-table-row {
    display: table-row !important; }
  .d-md-table-cell {
    display: table-cell !important; }
  .d-md-flex {
    display: flex !important; }
  .d-md-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important; }
  .d-lg-inline {
    display: inline !important; }
  .d-lg-inline-block {
    display: inline-block !important; }
  .d-lg-block {
    display: block !important; }
  .d-lg-table {
    display: table !important; }
  .d-lg-table-row {
    display: table-row !important; }
  .d-lg-table-cell {
    display: table-cell !important; }
  .d-lg-flex {
    display: flex !important; }
  .d-lg-inline-flex {
    display: inline-flex !important; } }

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important; }
  .d-xl-inline {
    display: inline !important; }
  .d-xl-inline-block {
    display: inline-block !important; }
  .d-xl-block {
    display: block !important; }
  .d-xl-table {
    display: table !important; }
  .d-xl-table-row {
    display: table-row !important; }
  .d-xl-table-cell {
    display: table-cell !important; }
  .d-xl-flex {
    display: flex !important; }
  .d-xl-inline-flex {
    display: inline-flex !important; } }

@media print {
  .d-print-none {
    display: none !important; }
  .d-print-inline {
    display: inline !important; }
  .d-print-inline-block {
    display: inline-block !important; }
  .d-print-block {
    display: block !important; }
  .d-print-table {
    display: table !important; }
  .d-print-table-row {
    display: table-row !important; }
  .d-print-table-cell {
    display: table-cell !important; }
  .d-print-flex {
    display: flex !important; }
  .d-print-inline-flex {
    display: inline-flex !important; } }

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden; }
  .embed-responsive::before {
    display: block;
    content: ""; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-21by9::before {
  padding-top: 42.85714%; }

.embed-responsive-16by9::before {
  padding-top: 56.25%; }

.embed-responsive-4by3::before {
  padding-top: 75%; }

.embed-responsive-1by1::before {
  padding-top: 100%; }

.flex-row {
  flex-direction: row !important; }

.flex-column {
  flex-direction: column !important; }

.flex-row-reverse {
  flex-direction: row-reverse !important; }

.flex-column-reverse {
  flex-direction: column-reverse !important; }

.flex-wrap {
  flex-wrap: wrap !important; }

.flex-nowrap {
  flex-wrap: nowrap !important; }

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important; }

.flex-fill {
  flex: 1 1 auto !important; }

.flex-grow-0 {
  flex-grow: 0 !important; }

.flex-grow-1 {
  flex-grow: 1 !important; }

.flex-shrink-0 {
  flex-shrink: 0 !important; }

.flex-shrink-1 {
  flex-shrink: 1 !important; }

.justify-content-start {
  justify-content: flex-start !important; }

.justify-content-end {
  justify-content: flex-end !important; }

.justify-content-center {
  justify-content: center !important; }

.justify-content-between {
  justify-content: space-between !important; }

.justify-content-around {
  justify-content: space-around !important; }

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

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

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

.align-items-baseline {
  align-items: baseline !important; }

.align-items-stretch {
  align-items: stretch !important; }

.align-content-start {
  align-content: flex-start !important; }

.align-content-end {
  align-content: flex-end !important; }

.align-content-center {
  align-content: center !important; }

.align-content-between {
  align-content: space-between !important; }

.align-content-around {
  align-content: space-around !important; }

.align-content-stretch {
  align-content: stretch !important; }

.align-self-auto {
  align-self: auto !important; }

.align-self-start {
  align-self: flex-start !important; }

.align-self-end {
  align-self: flex-end !important; }

.align-self-center {
  align-self: center !important; }

.align-self-baseline {
  align-self: baseline !important; }

.align-self-stretch {
  align-self: stretch !important; }

@media (min-width: 576px) {
  .flex-sm-row {
    flex-direction: row !important; }
  .flex-sm-column {
    flex-direction: column !important; }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-sm-wrap {
    flex-wrap: wrap !important; }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important; }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-sm-fill {
    flex: 1 1 auto !important; }
  .flex-sm-grow-0 {
    flex-grow: 0 !important; }
  .flex-sm-grow-1 {
    flex-grow: 1 !important; }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-sm-start {
    justify-content: flex-start !important; }
  .justify-content-sm-end {
    justify-content: flex-end !important; }
  .justify-content-sm-center {
    justify-content: center !important; }
  .justify-content-sm-between {
    justify-content: space-between !important; }
  .justify-content-sm-around {
    justify-content: space-around !important; }
  .align-items-sm-start {
    align-items: flex-start !important; }
  .align-items-sm-end {
    align-items: flex-end !important; }
  .align-items-sm-center {
    align-items: center !important; }
  .align-items-sm-baseline {
    align-items: baseline !important; }
  .align-items-sm-stretch {
    align-items: stretch !important; }
  .align-content-sm-start {
    align-content: flex-start !important; }
  .align-content-sm-end {
    align-content: flex-end !important; }
  .align-content-sm-center {
    align-content: center !important; }
  .align-content-sm-between {
    align-content: space-between !important; }
  .align-content-sm-around {
    align-content: space-around !important; }
  .align-content-sm-stretch {
    align-content: stretch !important; }
  .align-self-sm-auto {
    align-self: auto !important; }
  .align-self-sm-start {
    align-self: flex-start !important; }
  .align-self-sm-end {
    align-self: flex-end !important; }
  .align-self-sm-center {
    align-self: center !important; }
  .align-self-sm-baseline {
    align-self: baseline !important; }
  .align-self-sm-stretch {
    align-self: stretch !important; } }

@media (min-width: 768px) {
  .flex-md-row {
    flex-direction: row !important; }
  .flex-md-column {
    flex-direction: column !important; }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-md-wrap {
    flex-wrap: wrap !important; }
  .flex-md-nowrap {
    flex-wrap: nowrap !important; }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-md-fill {
    flex: 1 1 auto !important; }
  .flex-md-grow-0 {
    flex-grow: 0 !important; }
  .flex-md-grow-1 {
    flex-grow: 1 !important; }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-md-start {
    justify-content: flex-start !important; }
  .justify-content-md-end {
    justify-content: flex-end !important; }
  .justify-content-md-center {
    justify-content: center !important; }
  .justify-content-md-between {
    justify-content: space-between !important; }
  .justify-content-md-around {
    justify-content: space-around !important; }
  .align-items-md-start {
    align-items: flex-start !important; }
  .align-items-md-end {
    align-items: flex-end !important; }
  .align-items-md-center {
    align-items: center !important; }
  .align-items-md-baseline {
    align-items: baseline !important; }
  .align-items-md-stretch {
    align-items: stretch !important; }
  .align-content-md-start {
    align-content: flex-start !important; }
  .align-content-md-end {
    align-content: flex-end !important; }
  .align-content-md-center {
    align-content: center !important; }
  .align-content-md-between {
    align-content: space-between !important; }
  .align-content-md-around {
    align-content: space-around !important; }
  .align-content-md-stretch {
    align-content: stretch !important; }
  .align-self-md-auto {
    align-self: auto !important; }
  .align-self-md-start {
    align-self: flex-start !important; }
  .align-self-md-end {
    align-self: flex-end !important; }
  .align-self-md-center {
    align-self: center !important; }
  .align-self-md-baseline {
    align-self: baseline !important; }
  .align-self-md-stretch {
    align-self: stretch !important; } }

@media (min-width: 992px) {
  .flex-lg-row {
    flex-direction: row !important; }
  .flex-lg-column {
    flex-direction: column !important; }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-lg-wrap {
    flex-wrap: wrap !important; }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important; }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-lg-fill {
    flex: 1 1 auto !important; }
  .flex-lg-grow-0 {
    flex-grow: 0 !important; }
  .flex-lg-grow-1 {
    flex-grow: 1 !important; }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-lg-start {
    justify-content: flex-start !important; }
  .justify-content-lg-end {
    justify-content: flex-end !important; }
  .justify-content-lg-center {
    justify-content: center !important; }
  .justify-content-lg-between {
    justify-content: space-between !important; }
  .justify-content-lg-around {
    justify-content: space-around !important; }
  .align-items-lg-start {
    align-items: flex-start !important; }
  .align-items-lg-end {
    align-items: flex-end !important; }
  .align-items-lg-center {
    align-items: center !important; }
  .align-items-lg-baseline {
    align-items: baseline !important; }
  .align-items-lg-stretch {
    align-items: stretch !important; }
  .align-content-lg-start {
    align-content: flex-start !important; }
  .align-content-lg-end {
    align-content: flex-end !important; }
  .align-content-lg-center {
    align-content: center !important; }
  .align-content-lg-between {
    align-content: space-between !important; }
  .align-content-lg-around {
    align-content: space-around !important; }
  .align-content-lg-stretch {
    align-content: stretch !important; }
  .align-self-lg-auto {
    align-self: auto !important; }
  .align-self-lg-start {
    align-self: flex-start !important; }
  .align-self-lg-end {
    align-self: flex-end !important; }
  .align-self-lg-center {
    align-self: center !important; }
  .align-self-lg-baseline {
    align-self: baseline !important; }
  .align-self-lg-stretch {
    align-self: stretch !important; } }

@media (min-width: 1200px) {
  .flex-xl-row {
    flex-direction: row !important; }
  .flex-xl-column {
    flex-direction: column !important; }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important; }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important; }
  .flex-xl-wrap {
    flex-wrap: wrap !important; }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important; }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important; }
  .flex-xl-fill {
    flex: 1 1 auto !important; }
  .flex-xl-grow-0 {
    flex-grow: 0 !important; }
  .flex-xl-grow-1 {
    flex-grow: 1 !important; }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important; }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important; }
  .justify-content-xl-start {
    justify-content: flex-start !important; }
  .justify-content-xl-end {
    justify-content: flex-end !important; }
  .justify-content-xl-center {
    justify-content: center !important; }
  .justify-content-xl-between {
    justify-content: space-between !important; }
  .justify-content-xl-around {
    justify-content: space-around !important; }
  .align-items-xl-start {
    align-items: flex-start !important; }
  .align-items-xl-end {
    align-items: flex-end !important; }
  .align-items-xl-center {
    align-items: center !important; }
  .align-items-xl-baseline {
    align-items: baseline !important; }
  .align-items-xl-stretch {
    align-items: stretch !important; }
  .align-content-xl-start {
    align-content: flex-start !important; }
  .align-content-xl-end {
    align-content: flex-end !important; }
  .align-content-xl-center {
    align-content: center !important; }
  .align-content-xl-between {
    align-content: space-between !important; }
  .align-content-xl-around {
    align-content: space-around !important; }
  .align-content-xl-stretch {
    align-content: stretch !important; }
  .align-self-xl-auto {
    align-self: auto !important; }
  .align-self-xl-start {
    align-self: flex-start !important; }
  .align-self-xl-end {
    align-self: flex-end !important; }
  .align-self-xl-center {
    align-self: center !important; }
  .align-self-xl-baseline {
    align-self: baseline !important; }
  .align-self-xl-stretch {
    align-self: stretch !important; } }

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

.position-relative {
  position: relative !important; }

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

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

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

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030; }

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030; }

@supports (position: sticky) {
  .sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020; } }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal; }

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

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

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

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

.w-auto {
  width: auto !important; }

.h-25 {
  height: 25% !important; }

.h-50 {
  height: 50% !important; }

.h-75 {
  height: 75% !important; }

.h-100 {
  height: 100% !important; }

.h-auto {
  height: auto !important; }

.mw-100 {
  max-width: 100% !important; }

.mh-100 {
  max-height: 100% !important; }

.min-vw-100 {
  min-width: 100vw !important; }

.min-vh-100 {
  min-height: 100vh !important; }

.vw-100 {
  width: 100vw !important; }

.vh-100 {
  height: 100vh !important; }

.m-0 {
  margin: 0 !important; }

.mt-0,
.my-0 {
  margin-top: 0 !important; }

.mr-0,
.mx-0 {
  margin-right: 0 !important; }

.mb-0,
.my-0 {
  margin-bottom: 0 !important; }

.ml-0,
.mx-0 {
  margin-left: 0 !important; }

.m-1 {
  margin: 0.25rem !important; }

.mt-1,
.my-1 {
  margin-top: 0.25rem !important; }

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important; }

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important; }

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important; }

.m-2 {
  margin: 0.5rem !important; }

.mt-2,
.my-2 {
  margin-top: 0.5rem !important; }

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important; }

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important; }

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important; }

.m-3 {
  margin: 1rem !important; }

.mt-3,
.my-3 {
  margin-top: 1rem !important; }

.mr-3,
.mx-3 {
  margin-right: 1rem !important; }

.mb-3,
.my-3 {
  margin-bottom: 1rem !important; }

.ml-3,
.mx-3 {
  margin-left: 1rem !important; }

.m-4 {
  margin: 1.5rem !important; }

.mt-4,
.my-4 {
  margin-top: 1.5rem !important; }

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important; }

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important; }

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important; }

.m-5 {
  margin: 3rem !important; }

.mt-5,
.my-5 {
  margin-top: 3rem !important; }

.mr-5,
.mx-5 {
  margin-right: 3rem !important; }

.mb-5,
.my-5 {
  margin-bottom: 3rem !important; }

.ml-5,
.mx-5 {
  margin-left: 3rem !important; }

.p-0 {
  padding: 0 !important; }

.pt-0,
.py-0 {
  padding-top: 0 !important; }

.pr-0,
.px-0 {
  padding-right: 0 !important; }

.pb-0,
.py-0 {
  padding-bottom: 0 !important; }

.pl-0,
.px-0 {
  padding-left: 0 !important; }

.p-1 {
  padding: 0.25rem !important; }

.pt-1,
.py-1 {
  padding-top: 0.25rem !important; }

.pr-1,
.px-1 {
  padding-right: 0.25rem !important; }

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important; }

.pl-1,
.px-1 {
  padding-left: 0.25rem !important; }

.p-2 {
  padding: 0.5rem !important; }

.pt-2,
.py-2 {
  padding-top: 0.5rem !important; }

.pr-2,
.px-2 {
  padding-right: 0.5rem !important; }

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important; }

.pl-2,
.px-2 {
  padding-left: 0.5rem !important; }

.p-3 {
  padding: 1rem !important; }

.pt-3,
.py-3 {
  padding-top: 1rem !important; }

.pr-3,
.px-3 {
  padding-right: 1rem !important; }

.pb-3,
.py-3 {
  padding-bottom: 1rem !important; }

.pl-3,
.px-3 {
  padding-left: 1rem !important; }

.p-4 {
  padding: 1.5rem !important; }

.pt-4,
.py-4 {
  padding-top: 1.5rem !important; }

.pr-4,
.px-4 {
  padding-right: 1.5rem !important; }

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important; }

.pl-4,
.px-4 {
  padding-left: 1.5rem !important; }

.p-5 {
  padding: 3rem !important; }

.pt-5,
.py-5 {
  padding-top: 3rem !important; }

.pr-5,
.px-5 {
  padding-right: 3rem !important; }

.pb-5,
.py-5 {
  padding-bottom: 3rem !important; }

.pl-5,
.px-5 {
  padding-left: 3rem !important; }

.m-n1 {
  margin: -0.25rem !important; }

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important; }

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important; }

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important; }

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important; }

.m-n2 {
  margin: -0.5rem !important; }

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important; }

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important; }

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important; }

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important; }

.m-n3 {
  margin: -1rem !important; }

.mt-n3,
.my-n3 {
  margin-top: -1rem !important; }

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important; }

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important; }

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important; }

.m-n4 {
  margin: -1.5rem !important; }

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important; }

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important; }

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important; }

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important; }

.m-n5 {
  margin: -3rem !important; }

.mt-n5,
.my-n5 {
  margin-top: -3rem !important; }

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important; }

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important; }

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important; }

.m-auto {
  margin: auto !important; }

.mt-auto,
.my-auto {
  margin-top: auto !important; }

.mr-auto,
.mx-auto {
  margin-right: auto !important; }

.mb-auto,
.my-auto {
  margin-bottom: auto !important; }

.ml-auto,
.mx-auto {
  margin-left: auto !important; }

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important; }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important; }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important; }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important; }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important; }
  .m-sm-1 {
    margin: 0.25rem !important; }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important; }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important; }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important; }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important; }
  .m-sm-2 {
    margin: 0.5rem !important; }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important; }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important; }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important; }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important; }
  .m-sm-3 {
    margin: 1rem !important; }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important; }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important; }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important; }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important; }
  .m-sm-4 {
    margin: 1.5rem !important; }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important; }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important; }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important; }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important; }
  .m-sm-5 {
    margin: 3rem !important; }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important; }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important; }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important; }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important; }
  .p-sm-0 {
    padding: 0 !important; }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important; }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important; }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important; }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important; }
  .p-sm-1 {
    padding: 0.25rem !important; }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important; }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important; }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important; }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important; }
  .p-sm-2 {
    padding: 0.5rem !important; }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important; }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important; }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important; }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important; }
  .p-sm-3 {
    padding: 1rem !important; }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important; }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important; }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important; }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important; }
  .p-sm-4 {
    padding: 1.5rem !important; }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important; }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important; }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important; }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important; }
  .p-sm-5 {
    padding: 3rem !important; }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important; }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important; }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important; }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important; }
  .m-sm-n1 {
    margin: -0.25rem !important; }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important; }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important; }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important; }
  .m-sm-n2 {
    margin: -0.5rem !important; }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important; }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important; }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important; }
  .m-sm-n3 {
    margin: -1rem !important; }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important; }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important; }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important; }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important; }
  .m-sm-n4 {
    margin: -1.5rem !important; }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important; }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important; }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important; }
  .m-sm-n5 {
    margin: -3rem !important; }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important; }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important; }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important; }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important; }
  .m-sm-auto {
    margin: auto !important; }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important; }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important; }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important; }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important; } }

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important; }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important; }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important; }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important; }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important; }
  .m-md-1 {
    margin: 0.25rem !important; }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important; }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important; }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important; }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important; }
  .m-md-2 {
    margin: 0.5rem !important; }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important; }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important; }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important; }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important; }
  .m-md-3 {
    margin: 1rem !important; }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important; }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important; }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important; }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important; }
  .m-md-4 {
    margin: 1.5rem !important; }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important; }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important; }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important; }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important; }
  .m-md-5 {
    margin: 3rem !important; }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important; }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important; }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important; }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important; }
  .p-md-0 {
    padding: 0 !important; }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important; }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important; }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important; }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important; }
  .p-md-1 {
    padding: 0.25rem !important; }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important; }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important; }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important; }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important; }
  .p-md-2 {
    padding: 0.5rem !important; }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important; }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important; }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important; }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important; }
  .p-md-3 {
    padding: 1rem !important; }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important; }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important; }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important; }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important; }
  .p-md-4 {
    padding: 1.5rem !important; }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important; }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important; }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important; }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important; }
  .p-md-5 {
    padding: 3rem !important; }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important; }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important; }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important; }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important; }
  .m-md-n1 {
    margin: -0.25rem !important; }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important; }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important; }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important; }
  .m-md-n2 {
    margin: -0.5rem !important; }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important; }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important; }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important; }
  .m-md-n3 {
    margin: -1rem !important; }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important; }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important; }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important; }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important; }
  .m-md-n4 {
    margin: -1.5rem !important; }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important; }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important; }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important; }
  .m-md-n5 {
    margin: -3rem !important; }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important; }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important; }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important; }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important; }
  .m-md-auto {
    margin: auto !important; }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important; }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important; }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important; }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important; } }

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important; }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important; }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important; }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important; }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important; }
  .m-lg-1 {
    margin: 0.25rem !important; }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important; }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important; }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important; }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important; }
  .m-lg-2 {
    margin: 0.5rem !important; }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important; }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important; }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important; }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important; }
  .m-lg-3 {
    margin: 1rem !important; }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important; }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important; }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important; }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important; }
  .m-lg-4 {
    margin: 1.5rem !important; }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important; }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important; }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important; }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important; }
  .m-lg-5 {
    margin: 3rem !important; }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important; }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important; }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important; }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important; }
  .p-lg-0 {
    padding: 0 !important; }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important; }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important; }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important; }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important; }
  .p-lg-1 {
    padding: 0.25rem !important; }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important; }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important; }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important; }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important; }
  .p-lg-2 {
    padding: 0.5rem !important; }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important; }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important; }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important; }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important; }
  .p-lg-3 {
    padding: 1rem !important; }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important; }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important; }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important; }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important; }
  .p-lg-4 {
    padding: 1.5rem !important; }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important; }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important; }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important; }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important; }
  .p-lg-5 {
    padding: 3rem !important; }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important; }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important; }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important; }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important; }
  .m-lg-n1 {
    margin: -0.25rem !important; }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important; }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important; }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important; }
  .m-lg-n2 {
    margin: -0.5rem !important; }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important; }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important; }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important; }
  .m-lg-n3 {
    margin: -1rem !important; }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important; }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important; }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important; }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important; }
  .m-lg-n4 {
    margin: -1.5rem !important; }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important; }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important; }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important; }
  .m-lg-n5 {
    margin: -3rem !important; }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important; }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important; }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important; }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important; }
  .m-lg-auto {
    margin: auto !important; }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important; }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important; }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important; }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important; } }

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important; }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important; }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important; }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important; }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important; }
  .m-xl-1 {
    margin: 0.25rem !important; }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important; }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important; }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important; }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important; }
  .m-xl-2 {
    margin: 0.5rem !important; }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important; }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important; }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important; }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important; }
  .m-xl-3 {
    margin: 1rem !important; }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important; }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important; }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important; }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important; }
  .m-xl-4 {
    margin: 1.5rem !important; }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important; }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important; }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important; }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important; }
  .m-xl-5 {
    margin: 3rem !important; }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important; }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important; }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important; }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important; }
  .p-xl-0 {
    padding: 0 !important; }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important; }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important; }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important; }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important; }
  .p-xl-1 {
    padding: 0.25rem !important; }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important; }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important; }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important; }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important; }
  .p-xl-2 {
    padding: 0.5rem !important; }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important; }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important; }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important; }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important; }
  .p-xl-3 {
    padding: 1rem !important; }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important; }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important; }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important; }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important; }
  .p-xl-4 {
    padding: 1.5rem !important; }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important; }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important; }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important; }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important; }
  .p-xl-5 {
    padding: 3rem !important; }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important; }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important; }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important; }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important; }
  .m-xl-n1 {
    margin: -0.25rem !important; }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important; }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important; }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important; }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important; }
  .m-xl-n2 {
    margin: -0.5rem !important; }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important; }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important; }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important; }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important; }
  .m-xl-n3 {
    margin: -1rem !important; }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important; }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important; }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important; }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important; }
  .m-xl-n4 {
    margin: -1.5rem !important; }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important; }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important; }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important; }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important; }
  .m-xl-n5 {
    margin: -3rem !important; }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important; }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important; }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important; }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important; }
  .m-xl-auto {
    margin: auto !important; }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important; }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important; }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important; }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important; } }

.visible {
  visibility: visible !important; }

.invisible {
  visibility: hidden !important; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --easeAccelerationCurve: cubic-bezier(0.4, 0.0, 1, 1);
  --easeDecelerationCurve: cubic-bezier(0.0, 0.0, 0.2, 1);
  --easeSharpCurve: cubic-bezier(0.4, 0.0, 0.6, 1);
  --easeStandardCurve: cubic-bezier(0.4, 0.0, 0.2, 1);
  --easeSwiftOut: cubic-bezier(.55, 0, .1, 1);
  --fontSansSerif: "proxima-nova", sans-serif;
  --fontMonospace: monospace;
  --brandingLogo: url(./logo.svg);
  --radius: 6px;
  --iconSize: 24px;
  --light: 255, 255, 255;
  --dark: 25, 26, 28;
  --elevationColor: 127, 127, 127;
  --outlineColor: 238, 241, 245;
  --outlineColorSecondary: 190, 201, 217;
  --colorLight: var(--light);
  --colorLightForeground: var(--dark);
  --colorDark: var(--dark);
  --colorDarkForeground: var(--light);
  --colorPrimary: var(--indigo60);
  --colorPrimaryForeground: var(--light);
  --colorError: var(--red50);
  --colorErrorForeground: var(--light);
  --colorInfo: var(--blue50);
  --colorInfoForeground: var(--light);
  --colorSuccess: var(--green50);
  --colorSuccessForeground: var(--light);
  --colorWarning: var(--orange50);
  --colorWarningForeground: var(--light);
  --mainBackground: 246, 247, 250;
  --mainForeground: 25, 26, 28; }

:root[data-theme="dark"], :root[data-theme="dark high-contrast"] {
  --mainBackground: 25, 26, 28;
  --mainForeground: 200, 200, 200;
  --colorPrimaryForeground: var(--dark);
  --colorErrorForeground: var(--dark);
  --colorInfoForeground: var(--dark);
  --colorSuccessForeground: var(--dark);
  --colorWarningForeground: var(--dark);
  --elevationColor: 0, 0, 0;
  --outlineColor: 49, 50, 56;
  --outlineColorSecondary: 73, 74, 83;
  --appBarBackground: 32, 33, 36;
  --appBarForeground: 255, 255, 255;
  --overlayBackground: 0, 0, 0;
  --panelBackground: 32, 33, 36;
  --popupBackground: 32, 33, 36;
  --tooltipBackground: rgba(0, 0, 0, .9);
  --tooltipForeground: rgb(255, 255, 255);
  --navSectionForeground: rgba(255, 255, 255, .2);
  --btnBackground: var(--light);
  --btnForeground: var(--dark); }

:root {
  --elevation0: none;
  --elevation1: 0px 2px 1px -1px rgba(var(--elevationColor), 0.05), 0px 1px 1px 0px rgba(var(--elevationColor), 0.035), 0px 1px 3px 0px rgba(var(--elevationColor), 0.06);
  --elevation2: 0px 3px 1px -2px rgba(var(--elevationColor), 0.05), 0px 2px 2px 0px rgba(var(--elevationColor), 0.035), 0px 1px 5px 0px rgba(var(--elevationColor), 0.06);
  --elevation3: 0px 3px 3px -2px rgba(var(--elevationColor), 0.05), 0px 3px 4px 0px rgba(var(--elevationColor), 0.035), 0px 1px 8px 0px rgba(var(--elevationColor), 0.06);
  --elevation4: 0px 2px 4px -1px rgba(var(--elevationColor), 0.05), 0px 4px 5px 0px rgba(var(--elevationColor), 0.035), 0px 1px 10px 0px rgba(var(--elevationColor), 0.06);
  --elevation5: 0px 3px 5px -1px rgba(var(--elevationColor), 0.05), 0px 5px 8px 0px rgba(var(--elevationColor), 0.035), 0px 1px 14px 0px rgba(var(--elevationColor), 0.06);
  --elevation6: 0px 3px 5px -1px rgba(var(--elevationColor), 0.05), 0px 6px 10px 0px rgba(var(--elevationColor), 0.035), 0px 1px 18px 0px rgba(var(--elevationColor), 0.06);
  --elevation7: 0px 4px 5px -2px rgba(var(--elevationColor), 0.05), 0px 7px 10px 1px rgba(var(--elevationColor), 0.035), 0px 2px 16px 1px rgba(var(--elevationColor), 0.06);
  --elevation8: 0px 5px 5px -3px rgba(var(--elevationColor), 0.05), 0px 8px 10px 1px rgba(var(--elevationColor), 0.035), 0px 3px 14px 2px rgba(var(--elevationColor), 0.06);
  --elevation9: 0px 5px 6px -3px rgba(var(--elevationColor), 0.05), 0px 9px 12px 1px rgba(var(--elevationColor), 0.035), 0px 3px 16px 2px rgba(var(--elevationColor), 0.06);
  --elevation10: 0px 6px 6px -3px rgba(var(--elevationColor), 0.05), 0px 10px 14px 1px rgba(var(--elevationColor), 0.035), 0px 4px 18px 3px rgba(var(--elevationColor), 0.06);
  --elevation11: 0px 6px 7px -4px rgba(var(--elevationColor), 0.05), 0px 11px 15px 1px rgba(var(--elevationColor), 0.035), 0px 4px 20px 3px rgba(var(--elevationColor), 0.06);
  --elevation12: 0px 7px 8px -4px rgba(var(--elevationColor), 0.05), 0px 12px 17px 2px rgba(var(--elevationColor), 0.035), 0px 5px 22px 4px rgba(var(--elevationColor), 0.06);
  --elevation13: 0px 7px 8px -4px rgba(var(--elevationColor), 0.05), 0px 13px 19px 2px rgba(var(--elevationColor), 0.035), 0px 5px 24px 4px rgba(var(--elevationColor), 0.06);
  --elevation14: 0px 7px 9px -4px rgba(var(--elevationColor), 0.05), 0px 14px 21px 2px rgba(var(--elevationColor), 0.035), 0px 5px 26px 4px rgba(var(--elevationColor), 0.06);
  --elevation15: 0px 8px 9px -5px rgba(var(--elevationColor), 0.05), 0px 15px 22px 2px rgba(var(--elevationColor), 0.035), 0px 6px 28px 5px rgba(var(--elevationColor), 0.06);
  --elevation16: 0px 8px 10px -5px rgba(var(--elevationColor), 0.05), 0px 16px 24px 2px rgba(var(--elevationColor), 0.035), 0px 6px 30px 5px rgba(var(--elevationColor), 0.06);
  --elevation17: 0px 8px 11px -5px rgba(var(--elevationColor), 0.05), 0px 17px 26px 2px rgba(var(--elevationColor), 0.035), 0px 6px 32px 5px rgba(var(--elevationColor), 0.06);
  --elevation18: 0px 9px 11px -5px rgba(var(--elevationColor), 0.05), 0px 18px 28px 2px rgba(var(--elevationColor), 0.035), 0px 7px 34px 6px rgba(var(--elevationColor), 0.06);
  --elevation19: 0px 9px 12px -6px rgba(var(--elevationColor), 0.05), 0px 19px 29px 2px rgba(var(--elevationColor), 0.035), 0px 7px 36px 6px rgba(var(--elevationColor), 0.06);
  --elevation20: 0px 10px 13px -6px rgba(var(--elevationColor), 0.05), 0px 20px 31px 3px rgba(var(--elevationColor), 0.035), 0px 8px 38px 7px rgba(var(--elevationColor), 0.06);
  --elevation21: 0px 10px 13px -6px rgba(var(--elevationColor), 0.05), 0px 21px 33px 3px rgba(var(--elevationColor), 0.035), 0px 8px 40px 7px rgba(var(--elevationColor), 0.06);
  --elevation22: 0px 10px 14px -6px rgba(var(--elevationColor), 0.05), 0px 22px 35px 3px rgba(var(--elevationColor), 0.035), 0px 8px 42px 7px rgba(var(--elevationColor), 0.06);
  --elevation23: 0px 11px 14px -7px rgba(var(--elevationColor), 0.05), 0px 23px 36px 3px rgba(var(--elevationColor), 0.035), 0px 9px 44px 8px rgba(var(--elevationColor), 0.06);
  --elevation24: 0px 11px 15px -7px rgba(var(--elevationColor), 0.05), 0px 24px 38px 3px rgba(var(--elevationColor), 0.035), 0px 9px 46px 8px rgba(var(--elevationColor), 0.06); }

:root[data-theme="high-contrast"] {
  --outlineColor: 222, 228, 236; }

:root[data-theme="dark high-contrast"] {
  --outlineColor: 73, 74, 83; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --blue5: 228, 238, 255;
  --blue10: 204, 223, 255;
  --blue20: 178, 208, 255;
  --blue30: 131, 179, 255;
  --blue40: 86, 149, 255;
  --blue50: 43, 120, 255;
  --blue60: 0, 92, 255;
  --blue70: 0, 74, 207;
  --blue80: 0, 56, 152;
  --blue90: 4, 38, 101;
  --blue100: 7, 23, 56;
  --indigo5: 236, 237, 248;
  --indigo10: 217, 221, 242;
  --indigo20: 199, 203, 235;
  --indigo30: 163, 171, 223;
  --indigo40: 131, 139, 210;
  --indigo50: 100, 110, 198;
  --indigo60: 71, 82, 186;
  --indigo70: 57, 65, 146;
  --indigo80: 43, 50, 108;
  --indigo90: 31, 35, 73;
  --indigo100: 19, 22, 41;
  --gray0: 247, 247, 249;
  --gray5: 236, 236, 238;
  --gray10: 218, 218, 220;
  --gray20: 200, 200, 205;
  --gray30: 165, 164, 174;
  --gray40: 132, 131, 144;
  --gray50: 101, 100, 115;
  --gray60: 72, 72, 88;
  --gray70: 57, 58, 70;
  --gray80: 44, 44, 53;
  --gray90: 31, 31, 37;
  --gray100: 19, 19, 22;
  --green5: 230, 245, 233;
  --green10: 207, 235, 211;
  --green20: 185, 226, 190;
  --green30: 142, 206, 151;
  --green40: 100, 188, 112;
  --green50: 58, 169, 77;
  --green60: 0, 150, 43;
  --green70: 6, 118, 36;
  --green80: 10, 87, 28;
  --green90: 11, 60, 21;
  --green100: 10, 35, 14;
  --orange5: 255, 240, 223;
  --orange10: 255, 226, 194;
  --orange20: 255, 211, 165;
  --orange30: 255, 183, 110;
  --orange40: 255, 155, 57;
  --orange50: 255, 127, 0;
  --orange60: 255, 100, 0;
  --orange70: 210, 80, 0;
  --orange80: 154, 60, 0;
  --orange90: 103, 42, 0;
  --orange100: 57, 25, 0;
  --pink5: 255, 231, 239;
  --pink10: 255, 208, 224;
  --pink20: 255, 185, 210;
  --pink30: 255, 142, 182;
  --pink40: 255, 99, 155;
  --pink50: 255, 55, 128;
  --pink60: 253, 0, 103;
  --pink70: 198, 0, 81;
  --pink80: 145, 0, 61;
  --pink90: 97, 9, 43;
  --pink100: 54, 9, 26;
  --red5: 255, 231, 231;
  --red10: 255, 209, 208;
  --red20: 255, 187, 186;
  --red30: 255, 145, 143;
  --red40: 255, 103, 103;
  --red50: 255, 62, 65;
  --red60: 255, 0, 29;
  --red70: 206, 9, 25;
  --red80: 151, 11, 21;
  --red90: 100, 12, 16;
  --red100: 56, 11, 12;
  --teal5: 223, 244, 243;
  --teal10: 192, 232, 232;
  --teal20: 163, 222, 220;
  --teal30: 104, 200, 197;
  --teal40: 45, 179, 175;
  --teal50: 0, 158, 154;
  --teal60: 0, 137, 134;
  --teal70: 0, 108, 106;
  --teal80: 0, 80, 79;
  --teal90: 0, 55, 54;
  --teal100: 0, 32, 32;
  --yellow5: 255, 247, 227;
  --yellow10: 255, 238, 201;
  --yellow20: 255, 229, 174;
  --yellow30: 255, 212, 125;
  --yellow40: 255, 196, 75;
  --yellow50: 255, 179, 19;
  --yellow60: 255, 162, 0;
  --yellow70: 209, 128, 0;
  --yellow80: 154, 94, 0;
  --yellow90: 102, 64, 0;
  --yellow100: 57, 37, 0; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
body {
  background: rgb(var(--mainBackground));
  color: rgb(var(--mainForeground));
  font-family: var(--fontSansSerif);
  font-size: 1rem; }

[hidden],
[v-cloak] {
  display: none !important; }

.is-popup-opened {
  margin-right: var(--scrollbarWidth, 0);
  overflow: hidden;
  pointer-events: none; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
h1 {
  margin: 0 0 1rem 0;
  color: currentColor;
  font-size: 2rem;
  line-height: 1.5em; }

h2 {
  margin: 0 0 1rem 0;
  color: currentColor;
  font-size: 1.8rem;
  line-height: 1.5em; }

h3 {
  margin: 0 0 1rem 0;
  color: currentColor;
  font-size: 1.6rem;
  line-height: 1.5em; }

h4 {
  margin: 0 0 1rem 0;
  color: currentColor;
  font-size: 1.4rem;
  line-height: 1.5em; }

h5 {
  margin: 0 0 1rem 0;
  color: currentColor;
  font-size: 1.2rem;
  line-height: 1.5em; }

h6 {
  margin: 0 0 1rem 0;
  color: currentColor;
  font-size: 1rem;
  line-height: 1.5em; }

p {
  margin-bottom: 1rem; }
  p.lead {
    font-size: 1.1em;
    font-weight: 300; }
  p:last-child {
    margin-bottom: 0; }

a {
  color: currentColor;
  text-decoration: underline; }
  a:hover {
    text-decoration: none; }

abbr {
  cursor: help; }

blockquote {
  position: relative;
  margin: 1rem 0;
  padding: 1rem 1rem 1rem calc(1rem + 6px); }
  blockquote::before {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 6px;
    background: rgba(var(--colorPrimary), 0.1);
    border-radius: 3px;
    content: ""; }
  blockquote > blockquote:first-child {
    margin-top: -1rem; }
  blockquote > blockquote:last-child {
    margin-bottom: -1rem; }
  blockquote footer {
    opacity: .6; }
    blockquote footer::before {
      margin-right: .5rem;
      content: "\2014"; }

.text-soft {
  color: rgb(var(--mainForeground));
  opacity: .5; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --contentGutter: 24px; }

.content {
  position: relative;
  display: block;
  padding: var(--contentGutter); }
  .content > .notice {
    margin-bottom: var(--contentGutter); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --closeColor: var(--mainForeground); }

.close {
  position: relative;
  display: inline-block;
  height: 1em;
  width: 1em;
  background: rgba(var(--closeColor), 0.3);
  border: 0;
  border-radius: 1em;
  cursor: pointer;
  font-size: 24px;
  opacity: .5;
  outline: 0;
  transition: opacity 210ms var(--easeSwiftOut);
  vertical-align: middle; }
  .close::before, .close::after {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    height: .1em;
    width: .6em;
    content: "";
    background: rgb(var(--closeColor)); }
  .close::before {
    transform: translate3d(-50%, -50%, 0) rotate(45deg); }
  .close::after {
    transform: translate3d(-50%, -50%, 0) rotate(-45deg); }
  .close:focus, .close.is-focus, .close:hover, .close.is-hover {
    opacity: .75; }
  .close:active, .close.is-active {
    opacity: .85; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --iconBackground: rgb(var(--colorPrimary));
  --iconForeground: rgb(var(--colorPrimaryForeground)); }

img.emoji {
  height: 1.3em;
  width: 1.3em;
  display: inline-block;
  margin: -.15em .1em .15em;
  line-height: normal;
  vertical-align: middle;
  -webkit-user-drag: none; }

.mdi {
  height: 1em;
  width: 1em;
  font-size: var(--iconSize);
  line-height: 1em;
  vertical-align: middle; }
  .mdi::before {
    height: 1em;
    width: 1em;
    line-height: 1em; }

.mdi.branding::before {
  content: "";
  background: var(--brandingLogo) no-repeat center center/contain; }

.mdi.icon-rounded {
  height: 2em;
  padding: .5em;
  width: 2em; }
  .mdi.icon-rounded.icon-rounded-bg {
    background: var(--iconBackground);
    border-radius: 1em;
    color: var(--iconForeground); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --appBarAlpha: 1;
  --appBarBackground: var(--colorLight);
  --appBarForeground: var(--colorLightForeground);
  --appBarElevation: var(--elevation2), inset 0 0 0 1px rgba(var(--light), 0.05);
  --appBarHeight: 60px; }

.app-bar {
  position: relative;
  display: flex;
  flex-flow: column;
  background: rgba(var(--appBarBackground), var(--appBarAlpha));
  box-shadow: var(--appBarElevation);
  color: rgb(var(--appBarForeground)); }
  .app-bar-flat {
    box-shadow: unset; }
  .app-bar-main {
    position: sticky;
    top: 0;
    z-index: 1002; }
  .app-bar-transparent {
    --appBarAlpha: 0;
    box-shadow: unset; }

.app-bar-column {
  position: relative;
  display: flex;
  flex-flow: column; }

.app-bar-row {
  position: relative;
  display: flex;
  min-height: var(--appBarHeight);
  padding: 0 15px;
  align-items: center;
  --btnBackground: var(--appBarForeground);
  --btnForeground: var(--appBarBackground);
  --badgeColor: var(--appBarForeground);
  --outlineColor: var(--appBarForeground);
  --rippleColor: var(--appBarForeground);
  --spinnerColor: var(--appBarForeground);
  --tabsAccent: var(--appBarForeground);
  --tabsForeground: var(--appBarForeground); }
  .app-bar-row.app-bar-auto {
    min-height: unset; }

.app-bar-title,
.app-bar-sub-title {
  margin: 0 15px;
  font-weight: 500;
  line-height: 1em; }

.app-bar-title {
  font-size: 1.2rem; }

.app-bar-sub-title {
  font-size: .8rem;
  opacity: .5; }

.app-bar-title + .app-bar-sub-title,
.app-bar-sub-title + .app-bar-title {
  margin-top: .3rem; }

.app-bar .divider-vertical {
  height: 24px;
  opacity: .1; }
  .app-bar .divider-vertical:first-child {
    display: none; }

.app-bar-row > .input-group {
  height: 42px;
  flex: 1 1 0;
  background: rgba(var(--appBarForeground), 0.1);
  border: 0;
  color: rgb(var(--appBarForeground));
  transition: 210ms var(--easeSwiftOut);
  transition-property: background; }
  .app-bar-row > .input-group .input-group-addon,
  .app-bar-row > .input-group .form-control,
  .app-bar-row > .input-group .input-group {
    background: transparent;
    color: inherit; }
  .app-bar-row > .input-group .input-group-addon + .form-control, .app-bar-row > .input-group .input-group-addon + .input-group {
    margin-left: -15px; }
  .app-bar-row > .input-group .form-control + .input-group-addon, .app-bar-row > .input-group .input-group + .input-group-addon {
    margin-left: -15px; }
  .app-bar-row > .input-group:focus, .app-bar-row > .input-group:focus-within {
    background: rgba(var(--appBarForeground), 0.15);
    box-shadow: none; }
  .app-bar-row > .input-group ::placeholder {
    color: rgba(var(--appBarForeground), 0.75); }

.app-bar .btn-action {
  min-width: 90px; }

.panel > .app-bar {
  --appBarElevation: none; }
  .panel > .app-bar:not(:last-child):not(:only-child) {
    border-bottom: 1px solid rgb(var(--outlineColor)); }
  .panel > .app-bar:last-child:not(:only-child) {
    border-top: 1px solid rgb(var(--outlineColor)); }
  .panel > .app-bar .app-bar-title:first-child {
    margin-left: 0; }
  .panel > .app-bar .app-bar-row {
    padding: 0 30px; }
    .panel > .app-bar .app-bar-row .btn-text:first-child {
      margin-left: -15px; }
    .panel > .app-bar .app-bar-row .btn-text:last-child {
      margin-right: -15px; }
    .panel > .app-bar .app-bar-row .btn-icon:first-child {
      margin-left: -6px; }
    .panel > .app-bar .app-bar-row .btn-icon:last-child {
      margin-right: -6px; }

.app-bar-primary {
  --appBarBackground: var(--colorPrimary);
  --appBarForeground: var(--colorPrimaryForeground); }

.app-bar-error {
  --appBarBackground: var(--colorError);
  --appBarForeground: var(--colorErrorForeground); }

.app-bar-info {
  --appBarBackground: var(--colorInfo);
  --appBarForeground: var(--colorInfoForeground); }

.app-bar-success {
  --appBarBackground: var(--colorSuccess);
  --appBarForeground: var(--colorSuccessForeground); }

.app-bar-warning {
  --appBarBackground: var(--colorWarning);
  --appBarForeground: var(--colorWarningForeground); }

.app-bar-light {
  --appBarBackground: var(--colorLight);
  --appBarForeground: var(--colorLightForeground); }

.app-bar-dark {
  --appBarBackground: var(--colorDark);
  --appBarForeground: var(--colorDarkForeground); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.avatar {
  display: inline-block;
  height: 1em;
  width: 1em;
  flex-shrink: 0;
  background-color: rgb(var(--panelBackground));
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 1em;
  object-fit: cover;
  object-position: center center; }

.avatar-strip {
  position: relative;
  display: inline-flex;
  flex-flow: row-reverse; }
  .avatar-strip .avatar {
    position: relative;
    display: block;
    height: 1em;
    margin-right: -.3em;
    width: 1em;
    box-shadow: 0 0 0 0.1em var(--avatarStripBackground, rgb(var(--panelBackground)));
    transition: all 180ms var(--easeSwiftOut); }
    .avatar-strip .avatar:first-child {
      margin-right: 0; }
  .avatar-strip.with-hover:hover .avatar:not(:first-child) {
    margin-right: .1em; }

.avatar-24px {
  font-size: 24px !important; }

.avatar-30px {
  font-size: 30px !important; }

.avatar-36px {
  font-size: 36px !important; }

.avatar-48px {
  font-size: 48px !important; }

.avatar-96px {
  font-size: 96px !important; }

.avatar-144px {
  font-size: 144px !important; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --badgeColor: var(--colorPrimary); }

.badge {
  --spinnerColor: var(--badgeColor);
  display: inline-flex;
  height: 30px;
  padding: 6px 12px;
  align-items: center;
  flex: 0 0 auto;
  justify-content: center;
  background: rgba(var(--badgeColor), 0.1);
  border-radius: 2em;
  color: rgb(var(--badgeColor));
  font-size: 1rem;
  line-height: 1.1em;
  text-align: center;
  text-decoration: none;
  transition: all 210ms var(--easeSwiftOut);
  vertical-align: middle; }
  .badge > .close {
    --closeColor: var(--badgeColor);
    margin: 0 6px;
    font-size: 20px; }
    .badge > .close:first-child {
      margin-left: -6px; }
    .badge > .close:last-child {
      margin-right: -6px; }
  .badge > .mdi {
    margin: -3px 6px; }
    .badge > .mdi:first-child {
      margin-left: -9px; }
    .badge > .mdi:last-child {
      margin-right: -9px; }
  .badge > .spinner {
    margin: -1px 6px;
    font-size: 20px; }
    .badge > .spinner:first-child {
      margin-left: -6px; }
    .badge > .spinner:last-child {
      margin-right: -6px; }
  .badge.is-fluid {
    display: flex;
    width: 100%;
    flex: 1 1 auto; }
  .badge.is-small {
    height: 24px;
    padding: 3px 9px;
    font-size: .8rem; }
    .badge.is-small > .close {
      font-size: 18px; }
    .badge.is-small > .mdi {
      --iconSize: 18px; }
      .badge.is-small > .mdi:first-child {
        margin-left: -6px; }
      .badge.is-small > .mdi:last-child {
        margin-right: -6px; }
    .badge.is-small > .spinner {
      font-size: 18px; }
  .badge.is-large {
    height: 36px;
    padding: 9px 15px; }
  .badge.is-huge {
    height: 42px;
    padding: 12px 21px; }

a.badge:hover {
  background: rgba(var(--badgeColor), 0.2);
  cursor: pointer; }

.badge-group {
  display: flex;
  margin: -3px;
  align-items: center;
  flex-flow: row wrap; }
  .badge-group .badge {
    margin: 3px; }

.badge-primary {
  --badgeColor: var(--colorPrimary); }

.badge-error {
  --badgeColor: var(--colorError); }

.badge-info {
  --badgeColor: var(--colorInfo); }

.badge-success {
  --badgeColor: var(--colorSuccess); }

.badge-warning {
  --badgeColor: var(--colorWarning); }

.badge-light {
  --badgeColor: var(--colorLight); }

.badge-dark {
  --badgeColor: var(--colorDark); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --bottomNavAlpha: 1;
  --bottomNavBackground: var(--colorLight);
  --bottomNavForeground: var(--colorLightForeground);
  --bottomNavElevation: var(--elevation8); }

.bottom-nav {
  position: relative;
  display: flex;
  height: 60px;
  flex: 1 1 auto;
  background: rgba(var(--bottomNavBackground), var(--bottomNavAlpha));
  box-shadow: var(--bottomNavElevation);
  color: rgb(var(--bottomNavForeground));
  overflow: hidden; }
  .bottom-nav-flat {
    box-shadow: none; }
  .bottom-nav .btn-action {
    --radius: 0;
    --rippleColor: var(--bottomNavForeground);
    --rippleCenter: true;
    --rippleClip: false;
    height: inherit;
    flex: 1 1 0;
    background: transparent;
    color: rgba(var(--bottomNavForeground), 1);
    opacity: .5;
    transition: all 240ms var(--easeSwiftOut); }
    .bottom-nav .btn-action + .btn-action {
      margin: 0; }
    .bottom-nav .btn-action span {
      font-size: .8rem;
      transition: all 300ms var(--easeSwiftOut); }
    .bottom-nav .btn-action.is-active {
      opacity: 1; }
      .bottom-nav .btn-action.is-active span {
        font-size: .9rem; }
  .bottom-nav-shifting .btn-action:not(.is-active) span {
    height: 0;
    margin-top: 0;
    opacity: 0; }
  .bottom-nav-shifting .btn-action.is-active {
    flex-grow: 1.5; }
    .bottom-nav-shifting .btn-action.is-active span {
      height: 1em;
      opacity: 1; }
  .bottom-nav-side {
    height: unset;
    width: 80px;
    flex: 0 0 auto;
    flex-flow: column;
    justify-content: center; }
    .bottom-nav-side::after {
      position: absolute;
      display: block;
      top: 0;
      right: 0;
      width: 2px;
      height: var(--bottomNavIndHeight);
      content: "";
      background: rgb(var(--bottomNavForeground));
      transform: translate3d(0, var(--bottomNavIndPos), 0);
      transition: all 330ms var(--easeSwiftOut); }
    .bottom-nav-side .btn-action {
      height: 72px;
      flex: 0 0 auto; }
      .bottom-nav-side .btn-action span {
        font-size: .8rem; }

.bottom-nav-primary {
  --bottomNavBackground: var(--colorPrimary);
  --bottomNavForeground: var(--colorPrimaryForeground); }

.bottom-nav-error {
  --bottomNavBackground: var(--colorError);
  --bottomNavForeground: var(--colorErrorForeground); }

.bottom-nav-info {
  --bottomNavBackground: var(--colorInfo);
  --bottomNavForeground: var(--colorInfoForeground); }

.bottom-nav-success {
  --bottomNavBackground: var(--colorSuccess);
  --bottomNavForeground: var(--colorSuccessForeground); }

.bottom-nav-warning {
  --bottomNavBackground: var(--colorWarning);
  --bottomNavForeground: var(--colorWarningForeground); }

.bottom-nav-light {
  --bottomNavBackground: var(--colorLight);
  --bottomNavForeground: var(--colorLightForeground); }

.bottom-nav-dark {
  --bottomNavBackground: var(--colorDark);
  --bottomNavForeground: var(--colorDarkForeground); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --btnBackground: var(--dark);
  --btnForeground: var(--light);
  --btnPadding: 6px 12px; }

.btn {
  --iconSize: 24px;
  display: inline-flex;
  padding: var(--btnPadding);
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: var(--radius);
  cursor: pointer;
  line-height: 24px;
  outline: 0;
  text-align: center;
  text-decoration: none;
  transition: 210ms var(--easeSwiftOut);
  vertical-align: middle; }
  .btn > *:not(div) + * {
    margin-left: 9px; }
  .btn .avatar {
    margin: -3px;
    font-size: 30px; }
  .btn .spinner {
    font-size: 24px; }
  .btn-action {
    flex-flow: column;
    font-size: .9rem; }
    .btn-action > *:not(div) + * {
      margin-top: 4px;
      margin-left: 0; }
  .btn-contained {
    --rippleColor: var(--btnForeground);
    --spinnerColor: var(--btnForeground);
    background: rgb(var(--btnBackground));
    color: rgb(var(--btnForeground)); }
    .btn-contained:focus, .btn-contained.is-focus, .btn-contained:hover, .btn-contained.is-hover {
      filter: brightness(125%); }
    .btn-contained:active, .btn-contained.is-active {
      filter: brightness(135%); }
    .btn-contained.btn-light:focus, .btn-contained.btn-light.is-focus, .btn-contained.btn-light:hover, .btn-contained.btn-light.is-hover {
      filter: brightness(95%); }
    .btn-contained.btn-light:active, .btn-contained.btn-light.is-active {
      filter: brightness(85%); }
  .btn-outline {
    --rippleColor: var(--btnBackground);
    --spinnerColor: var(--btnBackground);
    background: transparent;
    box-shadow: inset 0 0 0 1px rgba(var(--btnBackground), 0.5);
    color: rgb(var(--btnBackground)); }
    .btn-outline:focus, .btn-outline.is-focus, .btn-outline:hover, .btn-outline.is-hover {
      background: rgba(var(--btnBackground), 0.075); }
    .btn-outline:active, .btn-outline.is-active {
      background: rgba(var(--btnBackground), 0.15); }
  .btn-text {
    --rippleColor: var(--btnBackground);
    --spinnerColor: var(--btnBackground);
    background: transparent;
    color: rgb(var(--btnBackground)); }
    .btn-text:focus, .btn-text.is-focus, .btn-text:hover, .btn-text.is-hover {
      background: rgba(var(--btnBackground), 0.075); }
    .btn-text:active, .btn-text.is-active {
      background: rgba(var(--btnBackground), 0.15); }
  .btn-text.btn-icon {
    --rippleCenter: true;
    --rippleClip: false;
    --rippleDuration: 240ms; }
    .btn-text.btn-icon.is-ripple {
      background: transparent; }
  .btn.is-fluid {
    display: flex;
    width: 100%;
    flex: 1 1 auto; }
  .btn.is-small {
    --btnPadding: 3px 6px;
    --iconSize: 18px; }
  .btn.is-large {
    --btnPadding: 12px 18px; }
  .btn.is-huge {
    --btnPadding: 18px 30px; }
  .btn-icon {
    --btnPadding: 6px; }
    .btn-icon.is-small {
      --btnPadding: 3px; }
    .btn-icon.is-large {
      --btnPadding: 12px; }
    .btn-icon.is-huge {
      --btnPadding: 18px; }
  .btn[disabled], .btn.is-disabled {
    filter: grayscale(100%);
    opacity: .5; }

.panel > .btn.is-fluid {
  border-radius: 0; }
  .panel > .btn.is-fluid:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit; }
  .panel > .btn.is-fluid:last-child {
    border-bottom-left-radius: inherit;
    border-bottom-right-radius: inherit; }

.btn-primary {
  --btnBackground: var(--colorPrimary);
  --btnForeground: var(--colorPrimaryForeground); }

.btn-error {
  --btnBackground: var(--colorError);
  --btnForeground: var(--colorErrorForeground); }

.btn-info {
  --btnBackground: var(--colorInfo);
  --btnForeground: var(--colorInfoForeground); }

.btn-success {
  --btnBackground: var(--colorSuccess);
  --btnForeground: var(--colorSuccessForeground); }

.btn-warning {
  --btnBackground: var(--colorWarning);
  --btnForeground: var(--colorWarningForeground); }

.btn-light {
  --btnBackground: var(--colorLight);
  --btnForeground: var(--colorLightForeground); }

.btn-dark {
  --btnBackground: var(--colorDark);
  --btnForeground: var(--colorDarkForeground); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.btn-group {
  display: inline-flex;
  align-items: stretch;
  vertical-align: middle; }
  .btn-group .btn {
    border-radius: 0; }
    .btn-group .btn:first-child {
      border-top-left-radius: var(--radius);
      border-bottom-left-radius: var(--radius); }
    .btn-group .btn:last-child {
      border-top-right-radius: var(--radius);
      border-bottom-right-radius: var(--radius); }
    .btn-group .btn.btn-text {
      border-radius: var(--radius); }
  .btn-group .btn-contained {
    box-shadow: -1px 0 rgba(var(--btnForeground), 0.1); }

.panel > .btn-group {
  border-radius: inherit;
  overflow: hidden; }
  .panel > .btn-group:first-child {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
  .panel > .btn-group:last-child {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
  .panel > .btn-group .btn {
    border-radius: 0; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --checkboxBackground: var(--colorPrimary);
  --checkboxForeground: var(--colorPrimaryForeground); }

.checkbox {
  position: relative;
  display: inline-block;
  appearance: none;
  margin: 0;
  height: 24px;
  width: 24px;
  flex: 0 0 auto;
  border: 1px solid rgba(var(--formOutline), var(--formAlpha));
  border-radius: var(--radius);
  cursor: pointer;
  outline: 0;
  transition: 180ms var(--easeSwiftOut);
  transition-property: background, border-color;
  vertical-align: middle; }
  .checkbox::before, .checkbox::after {
    position: absolute;
    height: 3px;
    content: "";
    border-radius: inherit;
    transition: inherit;
    transition-property: background; }
  .checkbox::before {
    top: 11px;
    left: 4px;
    width: 8px;
    transform: rotate(45deg); }
  .checkbox::after {
    top: 9px;
    left: 7px;
    width: 12px;
    transform: rotate(-50deg); }
  .checkbox:indeterminate::before {
    opacity: 0; }
  .checkbox:indeterminate::after {
    top: 8px;
    left: 4px;
    height: 4px;
    transform: rotate(0deg); }
  .checkbox:hover::before, .checkbox:hover::after {
    background: rgb(var(--formOutline)); }
  .checkbox:focus {
    border-color: rgb(var(--formOutline)); }
  .checkbox:checked, .checkbox:indeterminate {
    background: rgb(var(--checkboxBackground));
    border-color: rgb(var(--checkboxBackground)); }
    .checkbox:checked::before, .checkbox:checked::after, .checkbox:indeterminate::before, .checkbox:indeterminate::after {
      background: rgb(var(--checkboxForeground)); }
  .checkbox[disabled], .checkbox.is-disabled {
    --checkboxForeground: var(--formOutline);
    background: rgba(var(--formOutline), 0.15);
    border-color: rgba(var(--formOutline), 0.3); }
    .checkbox[disabled]:not(:checked):not(:indeterminate)::before, .checkbox[disabled]:not(:checked):not(:indeterminate)::after, .checkbox.is-disabled:not(:checked):not(:indeterminate)::before, .checkbox.is-disabled:not(:checked):not(:indeterminate)::after {
      background: transparent; }

.checkbox-primary {
  --checkboxBackground: var(--colorPrimary);
  --checkboxForeground: var(--colorPrimaryForeground); }

.checkbox-error {
  --checkboxBackground: var(--colorError);
  --checkboxForeground: var(--colorErrorForeground); }

.checkbox-info {
  --checkboxBackground: var(--colorInfo);
  --checkboxForeground: var(--colorInfoForeground); }

.checkbox-success {
  --checkboxBackground: var(--colorSuccess);
  --checkboxForeground: var(--colorSuccessForeground); }

.checkbox-warning {
  --checkboxBackground: var(--colorWarning);
  --checkboxForeground: var(--colorWarningForeground); }

.checkbox-light {
  --checkboxBackground: var(--colorLight);
  --checkboxForeground: var(--colorLightForeground); }

.checkbox-dark {
  --checkboxBackground: var(--colorDark);
  --checkboxForeground: var(--colorDarkForeground); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.divider {
  flex: 0 0 auto;
  background: rgb(var(--outlineColor)); }
  .divider-horizontal {
    margin: 9px 0;
    height: 1px; }
  .divider-vertical {
    margin: 0 9px;
    width: 1px; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
footer.footer {
  position: relative;
  display: block;
  border-top: 1px solid rgb(var(--outlineColor)); }
  footer.footer .divider {
    margin: 0; }
  footer.footer .nav.nav-links .nav-link {
    padding: 6px 0;
    color: rgba(var(--mainForeground), 0.6);
    font-size: .95rem; }
    footer.footer .nav.nav-links .nav-link:hover {
      color: rgb(var(--colorPrimary)); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --formAlpha: .3;
  --formOutline: var(--outlineColorSecondary);
  --formOutlineForeground: var(--mainForeground); }

.form-control, .input-group {
  position: relative;
  display: flex;
  min-height: 48px;
  padding: 9px 15px;
  width: 100%;
  align-items: center;
  background: transparent;
  border: 1px solid rgba(var(--formOutline), var(--formAlpha));
  border-radius: var(--radius);
  color: rgb(var(--mainForeground));
  outline: 0;
  transition: 210ms var(--easeSwiftOut);
  transition-property: border-color; }
  .form-control:focus, .input-group:focus, .form-control:focus-within, .input-group:focus-within {
    border-color: rgb(var(--formOutline)); }
  .form-control::placeholder, .input-group::placeholder {
    color: currentColor;
    opacity: .5; }
  .form-control[disabled], .input-group[disabled], .form-control.is-disabled, .is-disabled.input-group {
    background-color: rgba(var(--formOutline), 0.15); }

select.form-control, select.input-group {
  appearance: none;
  background-color: transparent;
  background-image: url(./select-arrow.svg);
  background-position: center right 9px;
  background-repeat: no-repeat;
  background-size: 24px 24px; }
  select.form-control option, select.input-group option {
    background: rgb(var(--panelBackground)); }

.form-group {
  position: relative;
  display: flex; }
  .form-group + .form-group {
    margin-top: 1rem; }

label.col-form-label {
  position: relative;
  display: block;
  padding: 8px 16px 8px 15px;
  font-weight: 600;
  line-height: 26px; }

.custom-range {
  --rangeThumbSize: 24px;
  --rangeTrackHeight: 6px;
  appearance: none;
  height: var(--rangeThumbSize);
  padding: 0;
  width: 100%;
  background: transparent;
  transform: translate3d(0, 3px, 0); }
  .custom-range:focus {
    outline: 0; }
  .custom-range::-moz-focus-outer {
    border: 0; }
  .custom-range::-webkit-slider-thumb {
    appearance: none;
    height: var(--rangeThumbSize);
    width: var(--rangeThumbSize);
    margin-top: calc((var(--rangeTrackHeight) - var(--rangeThumbSize)) / 2);
    background: rgb(var(--colorPrimary));
    border: 3px solid rgb(var(--panelBackground));
    border-radius: var(--rangeThumbSize);
    cursor: pointer;
    transition: transform 120ms var(--easeSwiftOut); }
    .custom-range::-webkit-slider-thumb:active {
      transform: scale3d(1.1, 1.1, 1.1); }
  .custom-range::-webkit-slider-runnable-track {
    height: var(--rangeTrackHeight);
    width: 100%;
    background: rgba(var(--formOutline), var(--formAlpha));
    border-radius: var(--radius);
    color: transparent; }
  .custom-range::-moz-range-thumb {
    appearance: none;
    height: calc(var(--rangeThumbSize) - 6px);
    width: calc(var(--rangeThumbSize) - 6px);
    background: rgb(var(--colorPrimary));
    border: 3px solid rgb(var(--panelBackground));
    border-radius: var(--rangeThumbSize);
    cursor: pointer;
    transition: transform 120ms var(--easeSwiftOut); }
    .custom-range::-moz-range-thumb:active {
      transform: scale3d(1.1, 1.1, 1.1); }
  .custom-range::-moz-range-track {
    height: var(--rangeTrackHeight);
    width: 100%;
    background: rgba(var(--formOutline), var(--formAlpha));
    border-radius: var(--radius);
    border-color: transparent;
    color: transparent; }
  .custom-range::-ms-thumb {
    appearance: none;
    height: var(--rangeThumbSize);
    width: var(--rangeThumbSize);
    margin-top: 0;
    background: rgb(var(--colorPrimary));
    border: 3px solid rgb(var(--panelBackground));
    border-radius: var(--rangeThumbSize);
    cursor: pointer;
    transition: transform 120ms var(--easeSwiftOut); }
    .custom-range::-ms-thumb:active {
      transform: scale3d(1.1, 1.1, 1.1); }
  .custom-range::-ms-track {
    height: var(--rangeTrackHeight);
    width: 100%;
    background: rgba(var(--formOutline), var(--formAlpha));
    border-radius: var(--radius);
    border-width: calc(var(--rangeThumbSize) / 2);
    color: transparent; }
  .custom-range[disabled], .custom-range.is-disabled {
    filter: grayscale(100%); }

.form-text {
  position: relative;
  display: block;
  margin: 9px 15px; }

.form-control-primary {
  --formAlpha: .7;
  --formOutline: var(--colorPrimary);
  --formOutlineForeground: var(--colorPrimaryForeground); }

.form-control-error {
  --formAlpha: .7;
  --formOutline: var(--colorError);
  --formOutlineForeground: var(--colorErrorForeground); }

.form-control-info {
  --formAlpha: .7;
  --formOutline: var(--colorInfo);
  --formOutlineForeground: var(--colorInfoForeground); }

.form-control-success {
  --formAlpha: .7;
  --formOutline: var(--colorSuccess);
  --formOutlineForeground: var(--colorSuccessForeground); }

.form-control-warning {
  --formAlpha: .7;
  --formOutline: var(--colorWarning);
  --formOutlineForeground: var(--colorWarningForeground); }

.form-control-light {
  --formAlpha: .7;
  --formOutline: var(--colorLight);
  --formOutlineForeground: var(--colorLightForeground); }

.form-control-dark {
  --formAlpha: .7;
  --formOutline: var(--colorDark);
  --formOutlineForeground: var(--colorDarkForeground); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
div.latte-grid {
  position: relative;
  transition: transform 210ms var(--easeDecelerationCurve); }

div.latte-grid-item {
  position: relative;
  display: block;
  transition: all 210ms var(--easeDecelerationCurve); }
  div.latte-grid-item.latte-grid-placeholder::before {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    content: "";
    background: rgba(var(--colorPrimary), 0.03);
    outline: 2px dashed rgba(var(--colorPrimary), 0.2);
    outline-offset: 2px; }
  div.latte-grid-item.is-dragging {
    transition: none;
    opacity: .5;
    z-index: 1; }
  div.latte-grid-item.is-resizing {
    transition: none;
    opacity: .5;
    z-index: 1; }
  div.latte-grid-item div.grid-item-resize-handle {
    position: absolute;
    display: block;
    right: -6px;
    bottom: -6px;
    height: 12px;
    width: 12px;
    cursor: se-resize; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.input-group-addon {
  position: relative;
  display: flex;
  padding: 11px 15px;
  align-items: flex-start;
  align-self: stretch;
  justify-content: center;
  background: rgba(var(--formOutline), var(--formAlpha));
  color: rgb(var(--formOutlineForeground));
  transition: inherit;
  transition-property: background;
  --checkboxBackground: var(--formOutlineForeground);
  --checkboxForeground: var(--formOutline);
  --radioBackground: var(--formOutlineForeground);
  --radioForeground: var(--formOutline);
  --toggleBackground: var(--formOutlineForeground);
  --toggleForeground: var(--formOutline); }
  .input-group-addon .checkbox,
  .input-group-addon .radio-button,
  .input-group-addon .toggle-button {
    --formOutline: var(--formOutlineForeground); }

.input-group {
  --r: calc(var(--radius) - 3px);
  flex-flow: row wrap;
  margin: 0;
  padding: 0; }
  .input-group-addon:first-child {
    padding-left: 13px;
    border-radius: var(--r) 0 0 var(--r); }
  .input-group-addon:last-child {
    padding-right: 13px;
    border-radius: 0 var(--r) var(--r) 0; }
  .input-group .badge {
    margin: 6px 3px;
    flex-shrink: 0; }
  .input-group .form-control, .input-group .input-group {
    min-height: 46px;
    min-width: 5em;
    width: 0;
    flex-grow: 1;
    border: 0; }
  .input-group > .btn {
    margin: 0 4px; }
  .input-group .popup {
    --popupOrigin: 0, 24px;
    position: absolute;
    top: calc(100% + 6px);
    width: 100%;
    z-index: 5; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.list {
  display: flex;
  flex-flow: column; }

.list-item {
  position: relative;
  display: flex;
  margin: 0;
  min-height: 48px;
  padding: 12px 30px; }
  .list-item-caption {
    display: flex;
    align-self: center;
    flex: 1 1 auto;
    flex-flow: column; }
  .list-item-prefix, .list-item-suffix {
    align-self: center;
    flex: 0 0 auto; }
  .list-item-prefix {
    margin-right: 30px; }
  .list-item-suffix {
    margin-left: 30px; }

a.list-item {
  --rippleColor: var(--colorPrimary);
  cursor: pointer;
  text-decoration: none;
  transition: all 150ms var(--easeStandardCurve); }
  a.list-item:hover {
    background: rgba(var(--colorPrimary), 0.075); }

.list-divided .list-item + .list-item {
  border-top: 1px solid rgb(var(--outlineColor)); }

.panel > .list {
  padding: 15px 0; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.message-bubble {
  --r: calc(var(--radius) * 1.5);
  display: flex;
  max-width: 540px;
  flex: 1 1 auto;
  flex-flow: column; }
  .message-bubble .avatar {
    font-size: 42px;
    z-index: 1; }
  .message-bubble p:last-of-type {
    margin-bottom: 0; }
  .message-bubble small {
    margin-top: .5em;
    margin-left: auto;
    color: rgba(var(--messageForeground), 0.5);
    line-height: 1em; }
  .message-bubble.incoming {
    margin-right: auto;
    justify-self: flex-start; }
    .message-bubble.incoming .avatar {
      margin-right: 15px; }
  .message-bubble.outgoing {
    margin-left: auto;
    align-items: flex-end;
    justify-self: flex-end; }
    .message-bubble.outgoing .avatar {
      margin-left: 15px;
      order: 1; }

.message-bubble-container {
  position: relative;
  display: flex;
  align-items: flex-end;
  z-index: 0; }

.message-bubble + .message-bubble {
  margin-top: .5rem; }

.message-bubble-content {
  position: relative;
  display: flex;
  padding: 18px 24px;
  flex-flow: column;
  background: rgb(var(--messageBackground));
  border-radius: var(--r);
  color: rgb(var(--messageForeground));
  --arrowSize: calc(var(--r) * 2); }
  .message-bubble-content::before, .message-bubble-content::after {
    position: absolute;
    display: block;
    bottom: 0;
    content: "";
    border-radius: 0 0 var(--r) var(--r); }
  .message-bubble-content::before {
    height: var(--arrowSize);
    width: var(--arrowSize);
    background: inherit; }
  .message-bubble-content::after {
    height: calc(var(--arrowSize) + 3px);
    width: var(--arrowSize);
    background: rgb(var(--panelBackground)); }

.incoming .message-bubble-content {
  --messageBackground: var(--mainBackground);
  --messageForeground: var(--mainForeground); }
  .incoming .message-bubble-content::before {
    right: calc(100% - (var(--arrowSize) / 2)); }
  .incoming .message-bubble-content::after {
    right: 100%; }

.outgoing .message-bubble-content {
  --messageBackground: var(--colorPrimary);
  --messageForeground: var(--colorPrimaryForeground); }
  .outgoing .message-bubble-content::before {
    left: calc(100% - (var(--arrowSize) / 3)); }
  .outgoing .message-bubble-content::after {
    left: 100%; }

.message-bubble-info {
  display: block;
  min-height: 30px;
  padding: 6px 24px;
  color: rgba(var(--mainForeground), 0.5);
  font-size: .9rem;
  font-weight: 500; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.nav {
  position: relative;
  display: flex;
  margin: 0;
  padding: 0;
  align-items: stretch;
  flex-flow: column;
  list-style-type: none; }
  .nav li.nav-item {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
    flex: 0 0 auto; }
  .nav .divider-horizontal {
    margin: 9px 30px; }
  .nav .section {
    position: relative;
    display: block;
    margin: 15px 30px 9px;
    color: rgba(var(--mainForeground), 0.4); }

.nav-link {
  position: relative;
  display: flex;
  min-height: 45px;
  margin: 0;
  padding: 12px 30px;
  align-items: center;
  flex: 0 0 auto;
  color: rgba(var(--mainForeground), 0.8);
  cursor: pointer;
  outline: 0;
  text-decoration: none; }
  .nav-link:hover {
    text-decoration: none; }
  .nav-link .mdi {
    display: block; }
  .nav-link .avatar {
    margin: 0 -3px;
    font-size: 30px; }
  .nav-link > *:not(div) + * {
    margin-left: 18px; }

button.nav-link {
  width: 100%;
  background: transparent;
  border: 0;
  text-align: left; }

.nav.nav-links {
  margin: 0 -9px; }
  .nav.nav-links .divider-horizontal {
    margin: 9px 0; }
  .nav.nav-links .section {
    margin: 0;
    padding: 9px 0;
    color: inherit;
    font-weight: 500; }
  .nav.nav-links .nav-link {
    height: unset;
    margin: 0 9px;
    padding: 9px 0;
    background: transparent; }
    .nav.nav-links .nav-link:hover {
      background: transparent;
      color: rgb(var(--colorPrimary)); }

.nav.nav-list {
  padding: 9px; }
  .nav.nav-list .nav-link {
    padding: 9px 21px;
    border-radius: var(--radius);
    transition: 210ms var(--easeStandardCurve);
    transition-property: background, color;
    --badgeColor: var(--colorPrimary);
    --checkboxBackground: var(--colorPrimary);
    --checkboxForeground: var(--colorPrimaryForeground);
    --radioBackground: var(--colorPrimary);
    --radioForeground: var(--colorPrimaryForeground);
    --rippleColor: var(--colorPrimary);
    --toggleBackground: var(--colorPrimary);
    --toggleForeground: var(--colorPrimaryForeground); }
    .nav.nav-list .nav-link + .nav-link {
      margin-top: 1px; }
    .nav.nav-list .nav-link .mdi {
      opacity: .8; }
    .nav.nav-list .nav-link:focus, .nav.nav-list .nav-link.is-focus, .nav.nav-list .nav-link:hover, .nav.nav-list .nav-link.is-hover {
      background: rgba(var(--outlineColorSecondary), 0.2); }
    .nav.nav-list .nav-link:active, .nav.nav-list .nav-link.is-active {
      background: rgba(var(--outlineColorSecondary), 0.3);
      color: rgb(var(--mainForeground)); }
  .nav.nav-list .section {
    margin: 15px 21px 9px; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.nav.nav-breadcrumb {
  flex-flow: row wrap; }
  .nav.nav-breadcrumb .nav-link {
    min-height: 24px;
    padding: 0; }
    .nav.nav-breadcrumb .nav-link:hover {
      color: rgb(var(--colorPrimary)); }
    .nav.nav-breadcrumb .nav-link.is-active {
      color: rgb(var(--mainForeground));
      font-weight: 700; }
  .nav.nav-breadcrumb .nav-link + .nav-link {
    margin-left: 24px; }
    .nav.nav-breadcrumb .nav-link + .nav-link::before {
      display: inline-block;
      margin: -6px 0 -6px -24px;
      width: 24px;
      content: "\0203A";
      color: rgb(var(--colorPrimary));
      font-size: 24px;
      font-weight: 700;
      line-height: 1em;
      pointer-events: none;
      text-align: center;
      vertical-align: middle; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.notice {
  position: relative;
  display: flex;
  margin: -1px;
  padding: 15px 24px;
  align-items: flex-start;
  background: rgba(var(--noticeBackground), 0.1);
  border: 1px solid rgba(var(--noticeBackground), 0.1);
  border-radius: var(--radius);
  color: rgb(var(--noticeBackground)); }
  .notice-body {
    display: flex;
    align-items: flex-start; }
  .notice-outline {
    background: transparent;
    border: 2px dashed rgba(var(--noticeBackground), 0.5); }
  .notice.is-fluid {
    margin: -1px 0 0;
    padding: 30px;
    border-top-width: 0;
    border-left-width: 0;
    border-right-width: 0;
    border-radius: 0; }
  .notice .btn {
    --btnBackground: var(--noticeBackground);
    --btnForeground: var(--noticeForeground); }
  .notice > .mdi,
  .notice-body > .mdi {
    margin: 0;
    align-self: flex-start; }
    .notice > .mdi:not(:last-child),
    .notice-body > .mdi:not(:last-child) {
      margin-right: 24px; }
  .notice .btn.notice-dismiss {
    margin: -7px -9px -7px auto;
    transform: translateX(6px); }
  .notice-body .btn.notice-dismiss {
    margin-right: 0; }
  .notice p:last-of-type {
    margin-bottom: 0; }
  .notice .divider {
    margin: 15px 0;
    align-self: stretch;
    flex: 1 1 auto;
    opacity: .1;
    --outlineColor: var(--noticeBackground); }
  .notice + .notice {
    margin-top: 1rem; }

.notice-primary {
  --noticeBackground: var(--colorPrimary);
  --noticeForeground: var(--colorPrimaryForeground); }

.notice-error {
  --noticeBackground: var(--colorError);
  --noticeForeground: var(--colorErrorForeground); }

.notice-info {
  --noticeBackground: var(--colorInfo);
  --noticeForeground: var(--colorInfoForeground); }

.notice-success {
  --noticeBackground: var(--colorSuccess);
  --noticeForeground: var(--colorSuccessForeground); }

.notice-warning {
  --noticeBackground: var(--colorWarning);
  --noticeForeground: var(--colorWarningForeground); }

.notice-light {
  --noticeBackground: var(--colorLight);
  --noticeForeground: var(--colorLightForeground); }

.notice-dark {
  --noticeBackground: var(--colorDark);
  --noticeForeground: var(--colorDarkForeground); }

.panel > .notice {
  margin: -1px 0;
  padding: 18px 30px;
  border-left: 0;
  border-right: 0;
  border-radius: 0; }
  .panel > .notice:first-child {
    border-top: 0;
    border-radius: var(--radius) var(--radius) 0 0; }
  .panel > .notice:last-child {
    border-bottom: 0;
    border-radius: 0 0 var(--radius) var(--radius); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
div.notification {
  position: relative;
  display: flex;
  width: 360px;
  align-items: center;
  background: rgb(var(--panelBackground));
  border-radius: var(--radius);
  box-shadow: var(--panelElevationHover);
  transition: 420ms var(--easeSwiftOut);
  transition-property: top, opacity, transform; }
  @media (max-width: 991.98px) {
    div.notification {
      width: calc(100vw - 48px); } }
  div.notification.is-app-notification {
    position: fixed;
    top: 0;
    right: 24px; }
  div.notification.is-opening {
    opacity: 0;
    transform: translate3d(0, 48px, 0); }
  div.notification.is-closing {
    opacity: 0; }

span.notification-title {
  position: relative;
  display: block;
  color: rgb(var(--mainForeground));
  font-size: 1.1em;
  font-weight: 700; }

span.notification-text {
  position: relative;
  display: block; }
  span.notification-title + span.notification-text {
    margin-top: 3px; }

div.notification-content {
  position: relative;
  display: flex;
  flex-flow: column; }

div.notification-actions {
  position: relative;
  display: flex;
  padding: 24px 9px;
  align-items: center;
  flex-flow: row wrap; }
  div.notification-actions:not(:first-child) {
    margin-top: -12px;
    padding-top: 0; }

div.notification-body {
  position: relative;
  display: flex;
  padding: 24px;
  flex-flow: column; }

div.notification-icon {
  position: relative;
  display: block;
  height: 60px;
  margin: 24px;
  width: 60px;
  align-self: flex-start;
  background: var(--notificationBackground, black);
  border-radius: 30px;
  color: var(--notificationForeground, white); }
  div.notification-icon .mdi {
    display: block;
    margin: 18px; }
  div.notification-icon:first-child {
    margin-right: 0; }
  div.notification-icon:last-child {
    margin-left: 0; }

div.notification > .avatar {
  margin: 24px;
  align-self: flex-start;
  flex: 0 0 auto;
  font-size: 60px; }
  div.notification > .avatar:first-child {
    margin-right: 0; }
  div.notification > .avatar:last-child {
    margin-left: 0; }

.notification-primary {
  --notificationBackground: rgb(var(--colorPrimary));
  --notificationForeground: rgb(var(--colorPrimaryForeground)); }

.notification-error {
  --notificationBackground: rgb(var(--colorError));
  --notificationForeground: rgb(var(--colorErrorForeground)); }

.notification-info {
  --notificationBackground: rgb(var(--colorInfo));
  --notificationForeground: rgb(var(--colorInfoForeground)); }

.notification-success {
  --notificationBackground: rgb(var(--colorSuccess));
  --notificationForeground: rgb(var(--colorSuccessForeground)); }

.notification-warning {
  --notificationBackground: rgb(var(--colorWarning));
  --notificationForeground: rgb(var(--colorWarningForeground)); }

.notification-light {
  --notificationBackground: rgb(var(--colorLight));
  --notificationForeground: rgb(var(--colorLightForeground)); }

.notification-dark {
  --notificationBackground: rgb(var(--colorDark));
  --notificationForeground: rgb(var(--colorDarkForeground)); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --overlayBackground: var(--colorDark);
  --overlayOpacity: .65; }

@keyframes overlay-close {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes overlay-close-panel {
  from {
    opacity: 1;
    transform: none; }
  to {
    opacity: 0;
    transform: scale(0.95); } }

@keyframes overlay-open {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes overlay-open-panel {
  from {
    opacity: 0;
    transform: scale(0.95); }
  to {
    opacity: 1;
    transform: none; } }

.overlay {
  position: fixed;
  display: flex;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 48px;
  background: rgba(var(--overlayBackground), var(--overlayOpacity));
  opacity: 1;
  overflow: auto;
  pointer-events: all;
  -webkit-overflow-scrolling: touch; }
  .overlay > * {
    margin: auto; }
  .overlay-enter-active {
    animation: overlay-open 210ms var(--easeSwiftOut); }
    .overlay-enter-active > * {
      opacity: 0;
      animation: overlay-open-panel 210ms var(--easeSwiftOut) 105ms; }
  .overlay-leave-active {
    animation: overlay-close 210ms var(--easeSwiftOut) 105ms; }
    .overlay-leave-active > * {
      animation: overlay-close-panel 210ms var(--easeSwiftOut); }
  @media (max-width: 991.98px) {
    .overlay {
      padding: 12px; }
      .overlay.is-responsive {
        padding: 0; }
        .overlay.is-responsive .panel {
          min-height: 100% !important;
          width: 100% !important;
          border-radius: 0;
          z-index: 0; }
          .overlay.is-responsive .panel .panel-header:first-child {
            position: sticky;
            top: 0;
            background: rgb(var(--panelBackground));
            z-index: 2; }
          .overlay.is-responsive .panel .panel-footer:last-child {
            position: sticky;
            bottom: 0;
            background: rgb(var(--panelBackground));
            z-index: 2; } }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.pagination {
  position: relative;
  display: flex;
  padding: 0;
  align-items: center;
  flex-flow: row; }
  .pagination-item {
    --iconSize: 18px;
    display: block;
    padding: 0 6px;
    height: 30px;
    min-width: 30px;
    flex: 0 0 auto;
    background: transparent;
    border: 0;
    border-radius: var(--radius);
    color: currentColor;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 500;
    line-height: 30px;
    opacity: .75;
    outline: 0;
    text-align: center;
    text-decoration: none; }
    .pagination-item:hover {
      background: rgba(var(--colorPrimary), 0.15);
      color: rgb(var(--colorPrimary));
      opacity: 1; }
    .pagination-item.is-active {
      background: rgb(var(--colorPrimary));
      color: rgb(var(--colorPrimaryForeground));
      cursor: default;
      opacity: 1;
      pointer-events: none; }
  .pagination span.pagination-item:not(.is-current) {
    cursor: default;
    opacity: .5;
    pointer-events: none; }
  @media (max-width: 991.98px) {
    .pagination.pagination-bar {
      flex-flow: column; }
      .pagination.pagination-bar > div.d-flex:nth-child(1) {
        margin: 0 !important;
        justify-content: center; }
      .pagination.pagination-bar > div.d-flex:nth-child(2) {
        margin: .5rem 0 0 0 !important;
        justify-content: center; } }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --panelBackground: 255, 255, 255;
  --panelElevation: var(--elevation3), 0 0 0 1px rgb(var(--outlineColor));
  --panelElevationHover: var(--elevation9), 0 0 0 1px rgb(var(--outlineColor));
  --panelGutter: 30px; }

.panel {
  position: relative;
  display: flex;
  align-items: stretch;
  flex-flow: column;
  background: rgb(var(--panelBackground));
  border-radius: var(--radius);
  box-shadow: var(--panelElevation); }
  .panel-blank {
    background: transparent;
    border-radius: 0;
    box-shadow: none; }
  .panel-outline {
    --panelElevation: 0 0 0 1px rgb(var(--outlineColor)); }
  .panel + .panel {
    margin-top: var(--panelGutter); }

a.panel {
  color: unset;
  cursor: pointer;
  text-decoration: none;
  transition: box-shadow 240ms var(--easeSwiftOut); }
  a.panel:hover {
    --panelElevation: var(--panelElevationHover); }

.m-panel-gutter,
.my-panel-gutter,
.mt-panel-gutter {
  margin-top: var(--panelGutter); }

.m-panel-gutter,
.my-panel-gutter,
.mb-panel-gutter {
  margin-bottom: var(--panelGutter); }

.m-panel-gutter,
.mx-panel-gutter,
.ml-panel-gutter {
  margin-left: var(--panelGutter); }

.m-panel-gutter,
.mx-panel-gutter,
.mr-panel-gutter {
  margin-right: var(--panelGutter); }

.panel-body {
  padding: var(--panelGutter);
  flex: 1 1 auto; }

.panel-column {
  display: flex;
  align-items: stretch;
  flex-flow: column;
  flex-grow: 1; }

.panel-footer {
  display: flex;
  min-height: 60px;
  padding: 0 var(--panelGutter);
  align-items: center; }
  .panel-footer .divider {
    height: 24px; }

.panel-header {
  display: flex;
  min-height: 75px;
  padding: 0 var(--panelGutter);
  align-items: center;
  flex: 0 0 auto; }
  .panel-header-sticky {
    position: sticky;
    top: 0;
    background: rgb(var(--panelBackground));
    z-index: 1; }
  .panel-header .divider {
    height: 24px; }

.panel-header + .panel-header,
.panel-header + .panel-body,
.panel-header + .panel-footer,
.panel-body + .panel-header,
.panel-body + .panel-body,
.panel-body + .panel-footer,
.panel-footer + .panel-header,
.panel-footer + .panel-body,
.panel-footer + .panel-footer {
  border-top: 1px solid rgb(var(--outlineColor)); }

.panel-media {
  position: relative;
  display: flex;
  flex: 0 0 auto;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: inherit;
  overflow: hidden; }
  .panel-media:not(:first-child) {
    border-top-left-radius: 0;
    border-top-right-radius: 0; }
  .panel-media:not(:last-child) {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0; }
  .panel-media.panel-media-gutter {
    margin: calc(var(--panelGutter) / 2);
    width: calc(100% - var(--panelGutter));
    border-radius: inherit; }

.panel-title {
  margin: 0;
  color: rgb(var(--mainForeground));
  font-size: 1em;
  font-weight: 700; }

.panel-sub-title {
  margin: 0;
  color: rgba(var(--mainForeground), 0.5);
  font-size: .9em;
  font-weight: 700; }

.panel-footer .btn.btn-text:first-child,
.panel-header .btn.btn-text:first-child {
  margin-left: -15px; }

.panel-footer .btn.btn-text:last-child,
.panel-header .btn.btn-text:last-child {
  margin-right: -15px; }

.panel-footer .btn.btn-icon:first-child,
.panel-header .btn.btn-icon:first-child {
  margin-left: -12px; }

.panel-footer .btn.btn-icon:last-child,
.panel-header .btn.btn-icon:last-child {
  margin-right: -12px; }

.panel-media-gutter + .panel-body {
  padding-top: calc(var(--panelGutter) / 2); }

.panel-media-gutter + .panel-header {
  margin-top: calc(var(--panelGutter) / -2); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --popupBackground: 255, 255, 255;
  --popupElevation: var(--elevation16), 0 0 0 1px rgb(var(--outlineColor));
  --popupOrigin: 0, 0; }

@keyframes popup-close {
  from {
    opacity: 1;
    transform: none; }
  to {
    opacity: 0;
    transform: translate3d(var(--popupOrigin), 0); } }

@keyframes popup-open {
  from {
    opacity: 0;
    transform: translate3d(var(--popupOrigin), 0); }
  to {
    opacity: 1;
    transform: none; } }

.popup {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  background: rgb(var(--popupBackground));
  border-radius: var(--radius);
  box-shadow: var(--popupElevation);
  pointer-events: all;
  z-index: 3000; }
  .popup-enter-active {
    opacity: 0;
    animation: popup-open 210ms var(--easeSwiftOut) 48ms; }
  .popup-leave-active {
    animation: popup-close 210ms var(--easeSwiftOut); }
  .popup.arrow::after, .popup.arrow::before {
    position: absolute;
    display: block;
    content: "";
    border: solid transparent;
    z-index: -1; }
  .popup.arrow::after {
    border-width: 8px; }
  .popup.arrow::before {
    border-width: 9px; }
  .popup.arrow.horizontal::after {
    margin: 1px 0;
    border-left-color: rgb(var(--panelBackground));
    border-right-color: rgb(var(--panelBackground)); }
  .popup.arrow.horizontal::before {
    border-left-color: rgb(var(--outlineColor));
    border-right-color: rgb(var(--outlineColor)); }
  .popup.arrow.horizontal.left {
    margin: 0 -1px 0 0; }
  .popup.arrow.horizontal.left.above::after, .popup.arrow.horizontal.left.above::before {
    bottom: 18px;
    border-left: 0; }
  .popup.arrow.horizontal.left.above::after {
    left: -8px; }
  .popup.arrow.horizontal.left.above::before {
    left: -9px; }
  .popup.arrow.horizontal.right.above::after, .popup.arrow.horizontal.right.above::before {
    bottom: 18px;
    border-right: 0; }
  .popup.arrow.horizontal.right.above::after {
    right: -8px; }
  .popup.arrow.horizontal.right.above::before {
    right: -9px; }
  .popup.arrow.horizontal.left.under::after, .popup.arrow.horizontal.left.under::before {
    top: 18px;
    border-left: 0; }
  .popup.arrow.horizontal.left.under::after {
    left: -8px; }
  .popup.arrow.horizontal.left.under::before {
    left: -9px; }
  .popup.arrow.horizontal.right.under::after, .popup.arrow.horizontal.right.under::before {
    top: 18px;
    border-right: 0; }
  .popup.arrow.horizontal.right.under::after {
    right: -8px; }
  .popup.arrow.horizontal.right.under::before {
    right: -9px; }
  .popup.arrow.vertical::after {
    margin: 0 1px;
    border-top-color: rgb(var(--panelBackground));
    border-bottom-color: rgb(var(--panelBackground)); }
  .popup.arrow.vertical::before {
    border-top-color: rgb(var(--outlineColor));
    border-bottom-color: rgb(var(--outlineColor)); }
  .popup.arrow.vertical.above {
    margin: -1px 0 0 0; }
  .popup.arrow.vertical.left.above::after, .popup.arrow.vertical.left.above::before {
    left: 18px;
    border-bottom: 0; }
  .popup.arrow.vertical.left.above::after {
    bottom: -8px; }
  .popup.arrow.vertical.left.above::before {
    bottom: -9px; }
  .popup.arrow.vertical.right.above::after, .popup.arrow.vertical.right.above::before {
    right: 18px;
    border-bottom: 0; }
  .popup.arrow.vertical.right.above::after {
    bottom: -8px; }
  .popup.arrow.vertical.right.above::before {
    bottom: -9px; }
  .popup.arrow.vertical.left.under::after, .popup.arrow.vertical.left.under::before {
    left: 18px;
    border-top: 0; }
  .popup.arrow.vertical.left.under::after {
    top: -8px; }
  .popup.arrow.vertical.left.under::before {
    top: -9px; }
  .popup.arrow.vertical.right.under::after, .popup.arrow.vertical.right.under::before {
    right: 18px;
    border-top: 0; }
  .popup.arrow.vertical.right.under::after {
    top: -8px; }
  .popup.arrow.vertical.right.under::before {
    top: -9px; }

.popup-body {
  position: relative;
  display: block;
  max-height: 50vh;
  border-radius: inherit;
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --progressColor: var(--colorPrimary); }

@keyframes wave-animation {
  from {
    left: -12.5%; }
  to {
    left: 112.5%; } }

@keyframes wave-ring-animation {
  from {
    transform: rotate3d(0, 0, 1, 0deg); }
  to {
    transform: rotate3d(0, 0, 1, 360deg); } }

.progress {
  position: relative;
  display: inline-block;
  overflow: hidden;
  vertical-align: middle; }
  .progress-bar {
    height: 6px;
    width: 100%;
    background: rgba(var(--progressColor), 0.25);
    border-radius: var(--radius); }
    .progress-bar .progress-value {
      position: absolute;
      display: block;
      top: 0;
      left: 0;
      height: inherit;
      background: rgb(var(--progressColor));
      border-radius: var(--radius); }
    .progress-bar.is-indeterminate .progress-value {
      margin-left: -12.5%;
      width: 25%;
      animation: wave-animation 1200ms infinite linear; }
  .progress-ring {
    border-radius: 999px;
    transform: rotate3d(0, 0, 1, -90deg); }
    .progress-ring .progress-track {
      stroke: rgba(var(--progressColor), 0.25); }
    .progress-ring .progress-value {
      transform-origin: center center;
      stroke: rgb(var(--progressColor)); }
    .progress-ring.is-indeterminate .progress-value {
      animation: wave-ring-animation 540ms infinite linear;
      stroke: url(#wave); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --radioColor: var(--colorPrimary); }

input[type=radio].radio-button {
  position: relative;
  display: inline-block;
  appearance: none;
  margin: 0;
  height: 24px;
  width: 24px;
  flex: 0 0 auto;
  border: 1px solid rgba(var(--formOutline), var(--formAlpha));
  border-radius: 12px;
  cursor: pointer;
  outline: 0;
  transition: 180ms var(--easeSwiftOut);
  transition-property: background, border-color;
  vertical-align: middle; }
  input[type=radio].radio-button::before {
    position: absolute;
    display: block;
    height: 14px;
    margin: 4px;
    width: 14px;
    content: "";
    background: transparent;
    border-radius: 7px;
    transition: inherit;
    transition-property: background; }
  input[type=radio].radio-button:hover::before {
    background: rgb(var(--formOutline)); }
  input[type=radio].radio-button:focus {
    border-color: rgb(var(--formOutline)); }
  input[type=radio].radio-button:checked {
    border-color: rgb(var(--radioColor)); }
    input[type=radio].radio-button:checked::before {
      background: rgb(var(--radioColor)); }
  input[type=radio].radio-button[disabled], input[type=radio].radio-button.is-disabled {
    --radioColor: var(--formOutline);
    background: rgba(var(--formOutline), 0.15);
    border-color: rgba(var(--formOutline), 0.3); }
    input[type=radio].radio-button[disabled]:not(:checked)::before, input[type=radio].radio-button.is-disabled:not(:checked)::before {
      background: transparent; }

.radio-button-primary {
  --radioColor: var(--colorPrimary); }

.radio-button-error {
  --radioColor: var(--colorError); }

.radio-button-info {
  --radioColor: var(--colorInfo); }

.radio-button-success {
  --radioColor: var(--colorSuccess); }

.radio-button-warning {
  --radioColor: var(--colorWarning); }

.radio-button-light {
  --radioColor: var(--colorLight); }

.radio-button-dark {
  --radioColor: var(--colorDark); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --snackbarElevation: var(--elevation8), inset 0 0 0 1px rgba(var(--light), 0.05);
  --snackbarTranslate: 0, 0;
  --snackbarTranslateTo: 0, 0; }

@keyframes snackbar-close {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(var(--snackbarTranslate), 0); } }

@keyframes snackbar-open {
  from {
    opacity: 0;
    transform: translate3d(var(--snackbarTranslate), 0); }
  to {
    opacity: 1; } }

.snackbar {
  position: fixed;
  display: flex;
  margin: var(--contentGutter);
  max-width: 540px;
  padding: 15px 24px;
  align-items: center;
  justify-content: flex-start;
  background: rgb(var(--dark));
  border-radius: var(--radius);
  box-shadow: var(--snackbarElevation);
  color: rgb(var(--light));
  transform: translate3d(var(--snackbarTranslateTo), 0); }
  .snackbar-enter-active {
    animation: snackbar-open 210ms var(--easeSwiftOut); }
  .snackbar-leave-active {
    animation: snackbar-close 210ms var(--easeSwiftOut); }
  @media (max-width: 991.98px) {
    .snackbar {
      max-width: calc(100vw - (var(--contentGutter) * 2));
      width: 100%; } }
  .snackbar-body:not(:last-child) {
    margin-right: 15px; }
  .snackbar .btn {
    margin-left: auto;
    margin-right: -15px; }

.snackbar-bottom {
  left: 50%;
  bottom: 0;
  --snackbarTranslate: calc(-50% - var(--contentGutter)), 100%;
  --snackbarTranslateTo: calc(-50% - var(--contentGutter)), 0; }

.snackbar-bottom-left {
  left: 0;
  bottom: 0;
  --snackbarTranslate: -100%, 0; }

.snackbar-bottom-right {
  right: 0;
  bottom: 0;
  --snackbarTranslate: 100%, 0; }

.snackbar-top {
  top: 0;
  left: 50%;
  --snackbarTranslate: calc(-50% - var(--contentGutter)), -100%;
  --snackbarTranslateTo: calc(-50% - var(--contentGutter)), 0; }

.snackbar-top-left {
  top: 0;
  left: 0;
  --snackbarTranslate: -100%, 0; }

.snackbar-top-right {
  top: 0;
  right: 0;
  --snackbarTranslate: 100%, 0; }

@media (max-width: 991.98px) {
  .snackbar-bottom,
  .snackbar-bottom-left,
  .snackbar-bottom-right {
    left: 0;
    right: 0;
    bottom: 0;
    transform: none;
    --snackbarTranslate: 0, 100%;
    --snackbarTranslateTo: 0, 0; }
  .snackbar-top,
  .snackbar-top-left,
  .snackbar-top-right {
    top: 0;
    left: 0;
    right: 0;
    transform: none;
    --snackbarTranslate: 0, -100%;
    --snackbarTranslateTo: 0, 0; } }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --spinnerColor: var(--colorPrimary); }

@keyframes spinner-animation {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

.spinner {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--iconSize);
  vertical-align: middle; }

span.spinner::before {
  height: 1em;
  width: 1em;
  content: "";
  animation: spinner-animation 600ms infinite linear;
  border: 0.1em solid rgba(var(--spinnerColor), 0.25);
  border-top-color: rgb(var(--spinnerColor));
  border-radius: .5em; }

.spinner-primary {
  --spinnerColor: var(--colorPrimary); }

.spinner-error {
  --spinnerColor: var(--colorError); }

.spinner-info {
  --spinnerColor: var(--colorInfo); }

.spinner-success {
  --spinnerColor: var(--colorSuccess); }

.spinner-warning {
  --spinnerColor: var(--colorWarning); }

.spinner-light {
  --spinnerColor: var(--colorLight); }

.spinner-dark {
  --spinnerColor: var(--colorDark); }

.input-group > .spinner,
.form-group > .spinner,
.panel > .spinner,
.table-overflow > .spinner {
  position: absolute;
  display: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(var(--panelBackground), 0.9);
  border-radius: inherit;
  font-size: 2rem;
  z-index: 2; }

.input-group.is-loading > .spinner,
.form-group.is-loading > .spinner,
.panel.is-loading > .spinner,
.table-overflow.is-loading > .spinner {
  display: flex; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --tablePadding: 12px 24px; }

.table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  z-index: 0; }
  .table-border td,
  .table-border th {
    border: 1px solid rgb(var(--outlineColor)); }
  .table-compact {
    --tablePadding: 6px 15px; }
  .table tr {
    position: relative; }
    @supports not (-moz-appearance: none) {
      .table tr {
        height: 1px; } }
  .table td,
  .table th {
    height: inherit;
    margin: 0;
    padding: 0; }
  .table tr:not(:first-child) td,
  .table tr:not(:first-child) th,
  .table thead + tbody tr td,
  .table tbody + tfoot tr td {
    border-top: 1px solid rgb(var(--outlineColor)); }
  .table tbody tr:hover td,
  .table tbody tr:hover th {
    background: rgba(var(--outlineColor), 0.5); }
  .table thead .form-control, .table thead .input-group {
    height: unset;
    padding: var(--tablePadding);
    background: rgba(var(--outlineColor), 0.5);
    border: 0;
    border-radius: 0; }
  .table .column-content {
    display: flex;
    height: 100%;
    margin: 0;
    padding: var(--tablePadding);
    flex-flow: column;
    justify-content: center;
    vertical-align: middle;
    transition: background 90ms var(--easeSwiftOut); }
  .table tbody input.column-content {
    height: 100%;
    padding: var(--tablePadding);
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none; }
    .table tbody input.column-content:hover, .table tbody input.column-content:focus {
      background: rgba(var(--outlineColor), 0.5);
      box-shadow: none; }
  .table tbody select.column-content {
    height: 100%;
    padding: var(--tablePadding);
    background-color: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: hidden;
    text-overflow: ellipsis; }
    .table tbody select.column-content:hover, .table tbody select.column-content:focus {
      background-color: rgba(var(--outlineColor), 0.5);
      box-shadow: none; }
  .table a.column-content {
    color: rgb(var(--mainForeground));
    cursor: pointer;
    text-decoration: none; }
    .table a.column-content:hover {
      background: rgba(var(--outlineColor), 0.5); }
  .table tr.table-sticky th,
  .table tr.table-sticky td {
    position: sticky;
    top: var(--tableStickyOffset, 0);
    background: rgb(var(--panelBackground));
    box-shadow: 0 1px rgb(var(--outlineColor));
    z-index: 1; }

.table-overflow {
  position: relative;
  display: block;
  max-width: 100%;
  overflow-x: auto; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --tabsAccent: var(--colorPrimary);
  --tabsForeground: var(--mainForeground);
  --tabsHeight: 45px; }

.nav.nav-tabs {
  margin: 0 -12px;
  min-height: var(--tabsHeight);
  align-items: stretch;
  flex-flow: row nowrap; }
  .nav.nav-tabs .nav-link {
    height: auto;
    margin: 0;
    padding: 9px 12px;
    justify-content: center;
    border-radius: var(--radius);
    color: rgba(var(--tabsForeground), 0.7);
    line-height: 24px;
    transition: 150ms var(--easeSwiftOut);
    transition-property: background, color; }
    .nav.nav-tabs .nav-link::after {
      position: absolute;
      display: block;
      left: 12px;
      right: 12px;
      bottom: 0;
      height: 2px;
      content: "";
      transition: inherit;
      transition-property: left, right, background; }
    .nav.nav-tabs .nav-link .mdi, .nav.nav-tabs .nav-link span {
      flex: 0 0 auto; }
    .nav.nav-tabs .nav-link > *:not(div) + * {
      margin-left: 9px; }
    .nav.nav-tabs .nav-link:focus, .nav.nav-tabs .nav-link.is-focus, .nav.nav-tabs .nav-link:hover, .nav.nav-tabs .nav-link.is-hover {
      background: rgba(var(--outlineColorSecondary), 0.2);
      color: rgb(var(--tabsForeground)); }
    .nav.nav-tabs .nav-link:hover::after, .nav.nav-tabs .nav-link.is-hover::after {
      left: 0;
      right: 0; }
    .nav.nav-tabs .nav-link.is-active {
      color: rgb(var(--tabsForeground)); }
      .nav.nav-tabs .nav-link.is-active::after {
        background: rgb(var(--tabsAccent)); }
  .nav.nav-tabs.is-fluid .nav-link {
    flex: 1 1 0; }

.panel > .nav.nav-tabs {
  --tabsHeight: 54px;
  padding: 0 var(--panelGutter);
  box-shadow: inset 0 -1px rgb(var(--outlineColor)); }
  .panel > .nav.nav-tabs .nav-link {
    z-index: 1; }

.panel-header + .nav.nav-tabs {
  margin-top: -21px; }

.panel-header > .nav.nav-tabs {
  --tabsHeight: 75px;
  margin-bottom: -1px;
  z-index: 1; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --toggleBackground: var(--colorPrimary);
  --toggleForeground: var(--colorPrimaryForeground); }

.toggle-button {
  position: relative;
  display: inline-block;
  appearance: none;
  margin: 0;
  height: 24px;
  width: 36px;
  flex: 0 0 auto;
  border: 1px solid rgba(var(--formOutline), var(--formAlpha));
  border-radius: 12px;
  cursor: pointer;
  outline: 0;
  transition: 180ms var(--easeSwiftOut);
  transition-property: background, border-color;
  vertical-align: middle; }
  .toggle-button::before {
    display: block;
    height: 14px;
    margin: 4px;
    width: 14px;
    content: "";
    background: rgb(var(--formOutline));
    border-radius: inherit;
    transition: inherit;
    transition-property: background, transform; }
  .toggle-button:focus {
    border-color: rgb(var(--formOutline)); }
  .toggle-button:checked {
    background: rgb(var(--toggleBackground));
    border-color: rgb(var(--toggleBackground)); }
    .toggle-button:checked::before {
      background: rgb(var(--toggleForeground));
      transform: translate3d(12px, 0, 0); }
  .toggle-button[disabled], .toggle-button.is-disabled {
    --toggleForeground: var(--formOutline);
    background: rgba(var(--formOutline), 0.15);
    border-color: rgba(var(--formOutline), 0.3); }

.toggle-button-primary {
  --toggleBackground: var(--colorPrimary);
  --toggleForeground: var(--colorPrimaryForeground); }

.toggle-button-error {
  --toggleBackground: var(--colorError);
  --toggleForeground: var(--colorErrorForeground); }

.toggle-button-info {
  --toggleBackground: var(--colorInfo);
  --toggleForeground: var(--colorInfoForeground); }

.toggle-button-success {
  --toggleBackground: var(--colorSuccess);
  --toggleForeground: var(--colorSuccessForeground); }

.toggle-button-warning {
  --toggleBackground: var(--colorWarning);
  --toggleForeground: var(--colorWarningForeground); }

.toggle-button-light {
  --toggleBackground: var(--colorLight);
  --toggleForeground: var(--colorLightForeground); }

.toggle-button-dark {
  --toggleBackground: var(--colorDark);
  --toggleForeground: var(--colorDarkForeground); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --tooltipBackground: rgba(var(--colorDark), .95);
  --tooltipForeground: rgb(var(--colorDarkForeground)); }

div.tooltip {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  max-width: 360px;
  padding: 12px 18px;
  background: var(--tooltipBackground);
  border-radius: var(--radius);
  color: var(--tooltipForeground);
  pointer-events: none;
  transition: opacity 210ms var(--easeSwiftOut);
  z-index: 2147483647; }
  div.tooltip::before {
    position: absolute;
    display: block;
    content: "";
    color: var(--tooltipBackground);
    border: 6px solid transparent;
    transition: inherit;
    z-index: -1; }
  div.tooltip::before {
    top: var(--top, 0);
    left: var(--left, 0); }
  div.tooltip-top {
    --top: 100%;
    --left: calc(50% - 6px); }
  div.tooltip-left {
    --top: calc(50% - 6px);
    --left: 100%; }
  div.tooltip-right {
    --top: calc(50% - 6px);
    --left: -12px; }
  div.tooltip-bottom {
    --top: -12px;
    --left: calc(50% - 6px); }
  div.tooltip-top::before {
    border-top-color: currentColor; }
  div.tooltip-left::before {
    border-left-color: currentColor; }
  div.tooltip-right::before {
    border-right-color: currentColor; }
  div.tooltip-bottom::before {
    border-bottom-color: currentColor; }
  div.tooltip.is-hidden {
    opacity: 0; }

.tooltip.tooltip-primary {
  --tooltipBackground: rgb(var(--colorPrimary));
  --tooltipForeground: rgb(var(--colorPrimaryForeground)); }

.tooltip.tooltip-error {
  --tooltipBackground: rgb(var(--colorError));
  --tooltipForeground: rgb(var(--colorErrorForeground)); }

.tooltip.tooltip-info {
  --tooltipBackground: rgb(var(--colorInfo));
  --tooltipForeground: rgb(var(--colorInfoForeground)); }

.tooltip.tooltip-success {
  --tooltipBackground: rgb(var(--colorSuccess));
  --tooltipForeground: rgb(var(--colorSuccessForeground)); }

.tooltip.tooltip-warning {
  --tooltipBackground: rgb(var(--colorWarning));
  --tooltipForeground: rgb(var(--colorWarningForeground)); }

.tooltip.tooltip-light {
  --tooltipBackground: rgb(var(--colorLight));
  --tooltipForeground: rgb(var(--colorLightForeground)); }

.tooltip.tooltip-dark {
  --tooltipBackground: rgb(var(--colorDark));
  --tooltipForeground: rgb(var(--colorDarkForeground)); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --scaffoldingDrawerWidth: 270px; }

.scaffolding {
  position: relative;
  display: grid; }
  .scaffolding .sheet-content.sheet-left {
    height: 100%;
    width: var(--scaffoldingDrawerWidth);
    background: rgb(var(--panelBackground));
    box-shadow: var(--elevation1);
    overflow: auto; }
  @media (max-width: 991.98px) {
    .scaffolding {
      grid-auto-rows: auto;
      grid-template-columns: 100vw;
      grid-template-rows: auto 1fr; } }
  @media (min-width: 992px) {
    .scaffolding {
      grid-auto-rows: auto;
      grid-template-columns: auto calc(100% - var(--scaffoldingDrawerWidth));
      grid-template-rows: auto 1fr; }
      .scaffolding > .app-bar {
        grid-column: 2; }
      .scaffolding > .sheet-overlay {
        position: sticky;
        top: 0;
        height: 100vh;
        grid-column: 1;
        grid-row: 1 / span 2;
        pointer-events: none;
        touch-action: none; }
        .scaffolding > .sheet-overlay .sheet-content.sheet-left {
          position: sticky;
          display: flex;
          top: 0;
          flex-flow: column;
          opacity: 1 !important;
          transform: none !important; }
      .scaffolding.is-collapsed {
        grid-template-columns: 1fr; }
        .scaffolding.is-collapsed > .app-bar,
        .scaffolding.is-collapsed > .content {
          grid-column: 1; }
        .scaffolding.is-collapsed > .sheet-overlay {
          display: none; }
      .scaffolding.sheet-below-app-bar > .app-bar {
        grid-column: 1 / span 2;
        grid-row: 1; }
      .scaffolding.sheet-below-app-bar > .content {
        grid-column: 2;
        grid-row: 2; }
      .scaffolding.sheet-below-app-bar > .sheet-overlay {
        top: var(--appBarHeight);
        height: calc(100vh - var(--appBarHeight));
        grid-column: 1;
        grid-row: 2; }
      .scaffolding.sheet-below-app-bar.is-collapsed {
        grid-template-columns: 1fr; }
        .scaffolding.sheet-below-app-bar.is-collapsed > .app-bar,
        .scaffolding.sheet-below-app-bar.is-collapsed > .content {
          grid-column: 1; } }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --silhouetteColor: var(--outlineColor); }

@keyframes silhouette {
  from {
    background: rgba(var(--silhouetteColor), 1); }
  to {
    background: rgba(var(--silhouetteColor), 0.5); } }

.btn.silhouette, div.silhouette, h1.silhouette,
h2.silhouette,
h3.silhouette,
h4.silhouette,
h5.silhouette,
h6.silhouette, p.silhouette::before, p.silhouette::after, span.silhouette {
  display: block;
  pointer-events: none;
  animation: silhouette 1s infinite alternate ease-in-out; }

.btn.silhouette:not(.btn-icon) {
  width: 90px; }

h1.silhouette,
h2.silhouette,
h3.silhouette,
h4.silhouette,
h5.silhouette,
h6.silhouette {
  height: 1em;
  border-radius: 1em; }

p.silhouette::before, p.silhouette::after {
  height: .8em;
  margin: .4em 0;
  border-radius: 1em;
  content: ""; }

p.silhouette::before {
  width: 100%; }

p.silhouette::after {
  margin-top: .6em;
  width: 70%; }

span.silhouette {
  height: 1em;
  flex-grow: 1;
  border-radius: 1em; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.colorpicker {
  --gutter: 3px;
  --position: 50%;
  --thumbSize: 18px;
  position: relative;
  display: flex;
  width: 360px;
  flex-flow: column;
  user-drag: none;
  user-select: none; }
  .colorpicker .slider {
    position: relative;
    display: block;
    user-select: none; }
    .colorpicker .slider .slider-thumb {
      position: absolute;
      height: var(--thumbSize);
      width: var(--thumbSize);
      background: rgb(var(--panelBackground));
      border: var(--gutter) solid rgb(var(--panelBackground));
      border-radius: 99px;
      box-shadow: var(--elevation3), 0 0 0 1px rgb(var(--outlineColor));
      transform: translate3d(-50%, -50%, 0); }
    .colorpicker .slider .slider-track {
      position: absolute;
      background: rgb(var(--outlineColor));
      overflow: hidden; }
    .colorpicker .slider-horizontal {
      height: var(--thumbSize);
      width: 100%;
      margin: 0 var(--gutter); }
      .colorpicker .slider-horizontal .slider-thumb {
        top: 50%;
        left: var(--position); }
      .colorpicker .slider-horizontal .slider-track {
        top: var(--gutter);
        left: 0;
        right: 0;
        bottom: var(--gutter); }
    .colorpicker .slider-vertical {
      height: 200px;
      width: var(--thumbSize);
      margin: var(--gutter) 0; }
      .colorpicker .slider-vertical .slider-thumb {
        top: var(--position);
        left: 50%; }
      .colorpicker .slider-vertical .slider-track {
        top: 0;
        left: var(--gutter);
        right: var(--gutter);
        bottom: 0; }
  .colorpicker .slider.alpha .slider-track {
    border-radius: var(--radius); }
    .colorpicker .slider.alpha .slider-track::after {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      content: "";
      background: linear-gradient(to top, transparent, rgb(var(--mainForeground))); }
  .colorpicker .slider.hue .slider-thumb {
    background: var(--hue-hex); }
  .colorpicker .slider.hue .slider-track {
    background: linear-gradient(to bottom, red 0, yellow 17%, lime 33%, cyan 50%, blue 67%, magenta 83%, red);
    border-radius: var(--radius); }
  .colorpicker .xy-pos {
    position: relative; }
    .colorpicker .xy-pos .xy-pos-thumb {
      position: absolute;
      height: var(--thumbSize);
      width: var(--thumbSize);
      background: rgb(var(--panelBackground));
      border: calc(var(--gutter) / 2) solid rgb(var(--panelBackground));
      border-radius: 99px;
      box-shadow: var(--elevation3), 0 0 0 1px rgb(var(--outlineColor));
      transform: translate3d(-50%, -50%, 0); }
  .colorpicker-preview-color {
    position: relative;
    height: 1em;
    width: 1em;
    flex: 0 0 auto;
    border-radius: 1em;
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
    font-size: 24px;
    overflow: hidden;
    z-index: 0; }
    .colorpicker-preview-color::before, .colorpicker-preview-color::after {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      content: "";
      background: inherit; }
  .colorpicker .colorpicker-controls {
    position: relative;
    display: flex;
    padding: 15px; }
    .colorpicker .colorpicker-controls .slider {
      margin-left: 9px; }
  .colorpicker .colorpicker-preview {
    position: relative;
    display: flex;
    padding: 0 15px 15px;
    align-items: flex-start;
    justify-content: flex-start; }
    .colorpicker .colorpicker-preview-color {
      font-size: 34px; }
    .colorpicker .colorpicker-preview .preview-value {
      position: relative;
      display: flex;
      margin-left: .5em;
      align-items: center;
      flex-flow: column;
      justify-content: center; }
      .colorpicker .colorpicker-preview .preview-value.alpha {
        width: 42px; }
      .colorpicker .colorpicker-preview .preview-value.hex {
        margin-left: auto;
        width: 72px; }
      .colorpicker .colorpicker-preview .preview-value.rgb {
        width: 39px; }
      .colorpicker .colorpicker-preview .preview-value .form-control, .colorpicker .colorpicker-preview .preview-value .input-group {
        min-height: 0;
        padding: 6px 0;
        border: 1px solid rgb(var(--outlineColor));
        font-size: .75rem;
        text-align: center;
        text-transform: uppercase;
        -moz-appearance: textfield; }
        .colorpicker .colorpicker-preview .preview-value .form-control::-webkit-outer-spin-button, .colorpicker .colorpicker-preview .preview-value .input-group::-webkit-outer-spin-button, .colorpicker .colorpicker-preview .preview-value .form-control::-webkit-inner-spin-button, .colorpicker .colorpicker-preview .preview-value .input-group::-webkit-inner-spin-button {
          -webkit-appearance: none; }
      .colorpicker .colorpicker-preview .preview-value span {
        margin-top: .5em;
        color: rgba(var(--mainForeground), 0.5);
        font-size: .7rem;
        font-weight: 500;
        text-transform: uppercase; }
  .colorpicker .colorpicker-saturation {
    margin: 3px;
    flex-grow: 1;
    background: var(--hue-hex);
    border-radius: var(--radius); }
    .colorpicker .colorpicker-saturation .xy-pos-thumb {
      background: var(--hex); }
    .colorpicker .colorpicker-saturation .saturation-overlay {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      border-radius: inherit; }
      .colorpicker .colorpicker-saturation .saturation-overlay.white {
        background: linear-gradient(to right, white, rgba(255, 255, 255, 0)); }
      .colorpicker .colorpicker-saturation .saturation-overlay.black {
        background: linear-gradient(to top, black, transparent); }
  .colorpicker .slider.alpha .slider-track, .colorpicker-preview-color::before {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMElEQVQ4T2N89uzZfwY8QFJSEp80A+OoAcMiDP7//483HTx//hx/Ohg1gIFx6IcBALl+VXknOCvFAAAAAElFTkSuQmCC);
    background-position: center;
    background-repeat: repeat; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.overlay.datetimemount > .panel {
  overflow: hidden; }

.overlay.datetimemount .datepicker-calendar,
.overlay.datetimemount .timepicker-clock {
  max-height: 65vh;
  overflow: auto; }

.popup.datetime-local .datepicker-calendar,
.popup.datetime-local .timepicker-clock {
  max-height: 379px;
  overflow: auto; }

.datepicker-calendar {
  max-width: calc(100vw - 24px);
  width: 321px;
  z-index: 0; }
  .datepicker-calendar .datepicker-calendar-header {
    position: sticky;
    top: 0;
    background: rgb(var(--panelBackground));
    z-index: 1; }
    .datepicker-calendar .datepicker-calendar-header.months, .datepicker-calendar .datepicker-calendar-header.years {
      box-shadow: var(--elevation1); }
    .datepicker-calendar .datepicker-calendar-header .btn-group .btn {
      text-transform: capitalize; }
  .datepicker-calendar .datepicker-calendar-dates {
    display: grid;
    grid-template-columns: repeat(7, 1fr); }
    .datepicker-calendar .datepicker-calendar-dates .day {
      display: block;
      margin-bottom: 6px;
      font-size: .8rem;
      font-weight: 500;
      line-height: 30px;
      text-align: center;
      text-transform: capitalize; }
    .datepicker-calendar .datepicker-calendar-dates .btn {
      --btnPadding: 0;
      height: 39px;
      margin: 0;
      width: 100%;
      font-size: .85rem; }
      .datepicker-calendar .datepicker-calendar-dates .btn:not(.btn-contained):not([disabled]) {
        opacity: .7; }
      .datepicker-calendar .datepicker-calendar-dates .btn[disabled] {
        opacity: .3; }

.timepicker-clock {
  width: 283px; }
  .timepicker-clock .timepicker-ampm {
    position: relative;
    display: flex;
    margin-left: auto;
    align-items: center;
    flex-flow: column; }
    .timepicker-clock .timepicker-ampm .ampm {
      cursor: pointer;
      font-weight: 700;
      line-height: 1em;
      transition: opacity 90ms var(--easeSwiftOut); }
      .timepicker-clock .timepicker-ampm .ampm + .ampm {
        margin-top: 3px; }
      .timepicker-clock .timepicker-ampm .ampm:not(.is-selected) {
        opacity: .5; }
        .timepicker-clock .timepicker-ampm .ampm:not(.is-selected):hover {
          opacity: .6; }
  .timepicker-clock .timepicker-segments {
    position: relative;
    display: flex;
    align-items: center;
    font-size: 2rem; }
    .timepicker-clock .timepicker-segments .colon,
    .timepicker-clock .timepicker-segments .timepicker-segment {
      line-height: 1em;
      vertical-align: middle; }
    .timepicker-clock .timepicker-segments .colon {
      margin: 0 3px;
      opacity: .5; }
    .timepicker-clock .timepicker-segments .timepicker-segment {
      margin: 0;
      padding: 0;
      background: transparent;
      border: 0;
      color: rgb(var(--mainForeground));
      cursor: pointer;
      font-weight: 500;
      outline: 0;
      transition: opacity 90ms var(--easeSwiftOut); }
      .timepicker-clock .timepicker-segments .timepicker-segment:not(.is-selection) {
        opacity: .5; }
        .timepicker-clock .timepicker-segments .timepicker-segment:not(.is-selection):hover {
          opacity: .6; }
  .timepicker-clock .timepicker-clock-mount {
    position: relative;
    height: var(--clockSize);
    width: var(--clockSize);
    background: rgb(var(--outlineColor));
    border-radius: 999px;
    user-select: none; }
    .timepicker-clock .timepicker-clock-mount > * {
      transition: opacity 150ms var(--easeSwiftOut); }
  .timepicker-clock .timepicker-clock-pointer {
    position: absolute;
    top: 50%;
    left: calc(50% - 1px);
    width: 2px;
    background: rgb(var(--colorPrimary));
    transform: rotate(0deg);
    transform-origin: top center; }
    .timepicker-clock .timepicker-clock-pointer::before, .timepicker-clock .timepicker-clock-pointer::after {
      position: absolute;
      content: "";
      background: inherit;
      border-radius: 99px; }
    .timepicker-clock .timepicker-clock-pointer::before {
      top: -4px;
      left: -3px;
      right: -3px;
      height: 8px;
      width: 8px; }
    .timepicker-clock .timepicker-clock-pointer::after {
      left: -15px;
      right: -15px;
      bottom: -15px;
      height: 32px;
      width: 32px; }
    .timepicker-clock .timepicker-clock-pointer.is-alternative::after {
      left: -4px;
      right: -4px;
      bottom: -4px;
      height: 10px;
      width: 10px;
      background: rgb(var(--outlineColor));
      border: 2px solid rgb(var(--colorPrimary)); }
  .timepicker-clock .timepicker-clock {
    padding: 18px; }
  .timepicker-clock .timepicker-clock-item {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 36px;
    margin: -18px 0 0 -18px;
    width: 36px;
    background: unset;
    border: 0;
    color: rgba(var(--mainForeground), 0.5);
    font-size: .85rem;
    font-weight: 500;
    text-align: center; }
    .timepicker-clock .timepicker-clock-item.is-selected {
      color: rgb(var(--colorPrimaryForeground)); }
  .timepicker-clock.is-switching-views .timepicker-clock-mount > * {
    opacity: 0; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.emoji-picker {
  height: 330px;
  width: calc(304px + var(--scrollbarWidth, 0));
  overflow: auto; }
  .emoji-picker .skin-tone {
    position: relative;
    display: block;
    height: 18px;
    margin: 3px;
    width: 18px;
    border-radius: 12px; }
    .emoji-picker .skin-tone.tone-0 {
      background: #ffcf11; }
    .emoji-picker .skin-tone.tone-1 {
      background: #fae3c3; }
    .emoji-picker .skin-tone.tone-2 {
      background: #e2cfa1; }
    .emoji-picker .skin-tone.tone-3 {
      background: #dba373; }
    .emoji-picker .skin-tone.tone-4 {
      background: #a88054; }
    .emoji-picker .skin-tone.tone-5 {
      background: #5f4e43; }
  .emoji-picker .skin-tones {
    position: sticky;
    bottom: 0; }
  .emoji-picker .app-bar-flat {
    position: sticky;
    top: 0;
    z-index: 1; }
  .emoji-picker .nav-tabs {
    --tabsAccent: var(--colorPrimary); }
    .emoji-picker .nav-tabs img {
      height: 18px;
      margin: 3px; }
  .emoji-picker .btn.btn-text.btn-emoji {
    margin: 0;
    background: transparent; }
    .emoji-picker .btn.btn-text.btn-emoji i {
      top: unset;
      margin: 0; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.expandable-body {
  overflow: hidden; }

.expandable-leave-to {
  height: 0 !important; }

.expandable-enter-active, .expandable-leave-active {
  transition: height 210ms var(--easeSwiftOut); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --rippleAlpha: .1;
  --rippleCenter: false;
  --rippleClip: true;
  --rippleColor: var(--colorDark);
  --rippleDuration: 300ms;
  --rippleScale: 6;
  --rippleSize: 36px; }

*.is-ripple {
  position: relative;
  user-select: none; }

.ripple-container {
  position: absolute;
  display: block;
  contain: paint;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: inherit;
  overflow: hidden;
  pointer-events: none; }
  .ripple-container.is-ripple-out {
    contain: unset;
    overflow: visible; }
  .ripple-container .ripple {
    position: absolute;
    height: var(--rippleSize);
    width: var(--rippleSize);
    background: rgba(var(--rippleColor), var(--rippleAlpha));
    border-radius: var(--rippleSize);
    opacity: 1;
    transform: translate(var(--rippleX), var(--rippleY)) scale3d(var(--rippleScale), var(--rippleScale), var(--rippleScale));
    transform-origin: center center;
    transition: opacity calc(var(--rippleDuration) / 2) linear, transform var(--rippleDuration) var(--easeDecelerationCurve); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.sheet-overlay {
  position: fixed;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: all;
  z-index: 1003; }
  .sheet-overlay:not(.is-open) {
    pointer-events: none; }

.sheet-content {
  position: fixed;
  display: block;
  pointer-events: all; }
  .sheet-content.sheet-top {
    top: 0;
    left: 0;
    right: 0; }
  .sheet-content.sheet-left {
    top: 0;
    left: 0;
    bottom: 0; }
  .sheet-content.sheet-right {
    top: 0;
    right: 0;
    bottom: 0; }
  .sheet-content.sheet-bottom {
    left: 0;
    right: 0;
    bottom: 0; }
  .sheet-content:not(.is-open) {
    opacity: 0; }

.sheet-content:not(.is-dragging),
.sheet-overlay:not(.is-dragging) {
  transition: 300ms var(--easeSwiftOut);
  transition-property: background, opacity, transform; }

.is-popup-opened .sheet-overlay:not(.is-open),
.is-popup-opened .sheet-overlay:not(.is-open) div.sheet-content {
  pointer-events: none !important;
  touch-action: none !important; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --swiperItemPadding: 0;
  --swiperItemWidth: 100%;
  --swiperViewPadding: 0; }

.swiper {
  position: relative;
  display: block;
  overflow: hidden; }
  .swiper .swiper-body {
    position: relative;
    display: flex;
    padding: var(--swiperViewPadding);
    flex-flow: row nowrap;
    transition: all 420ms var(--easeDecelerationCurve); }
    .swiper .swiper-body > * {
      margin: var(--swiperItemPadding);
      flex: 0 0 var(--swiperItemWidth); }
  .swiper.is-dragging .swiper-body {
    transition: none; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.uploader input[type=file] {
  display: none; }

:root {
  --dropTargetGutter: 6px; }

.drop-target {
  position: absolute;
  display: flex;
  top: var(--dropTargetGutter);
  left: var(--dropTargetGutter);
  right: var(--dropTargetGutter);
  bottom: var(--dropTargetGutter);
  align-items: center;
  justify-content: center;
  background: rgba(var(--colorPrimary), 0.6);
  border: 2px dashed rgb(var(--colorPrimary));
  border-radius: inherit;
  box-shadow: 0 0 0 var(--dropTargetGutter) rgba(var(--colorPrimary), 0.6);
  color: rgb(var(--colorPrimaryForeground));
  pointer-events: none;
  transition: all 300ms var(--easeSwiftOut); }
  .drop-target:not(.is-dragging) {
    --dropTargetGutter: 0;
    opacity: 0; }
  .drop-target.is-dragging-over {
    --dropTargetGutter: 9px; }
  .drop-target .drop-target-info {
    position: sticky;
    display: block;
    top: 0;
    bottom: 0;
    padding: 1em;
    font-size: .9rem;
    font-weight: 500;
    line-height: 1.6em;
    text-align: center; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.window {
  position: relative;
  display: block;
  height: var(--windowHeight, 0);
  width: var(--windowWidth, 0);
  overflow: hidden;
  transition: 210ms var(--easeSwiftOut);
  transition-property: height, width; }
  .window-view {
    position: absolute;
    top: 0;
    left: 0; }
    .window-view.is-hidden {
      display: none; }
    .window-view.window-horizontal.is-staged.is-forward, .window-view.window-horizontal.is-hiding.is-backward {
      transform: translate3d(var(--windowWidth, 0), 0, 0); }
    .window-view.window-horizontal.is-staged.is-backward, .window-view.window-horizontal.is-hiding.is-forward {
      transform: translate3d(calc(0px - var(--windowWidth, 0)), 0, 0); }
    .window-view.window-vertical.is-staged.is-forward, .window-view.window-vertical.is-hiding.is-backward {
      transform: translate3d(0, var(--widowHeight, 0), 0); }
    .window-view.window-vertical.is-staged.is-backward, .window-view.window-vertical.is-hiding.is-forward {
      transform: translate3d(0, calc(0px - var(--widowHeight, 0)), 0); }
    .window-view.is-hiding, .window-view.is-visible:not(.is-staged) {
      transition: inherit;
      transition-property: transform; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
body.full-center main#app {
  position: relative;
  display: flex;
  min-height: 100vh; }
  body.full-center main#app > div.panel:only-child,
  body.full-center main#app > .center-me {
    margin: auto; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.scaffolding.master-detail > .sheet-overlay .sheet-content.sheet-left {
  box-shadow: 1px 0 rgb(var(--outlineColor)); }

.scaffolding.master-detail > .content {
  padding: 0; }
  .scaffolding.master-detail > .content > .row {
    height: 100%; }
  .scaffolding.master-detail > .content #detail,
  .scaffolding.master-detail > .content #master {
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch; }
    .scaffolding.master-detail > .content #detail.panel,
    .scaffolding.master-detail > .content #master.panel {
      border-radius: 0;
      box-shadow: none; }
  @media (max-width: 991.98px) {
    .scaffolding.master-detail > .content #master {
      border-top: 1px solid rgb(var(--outlineColor)); } }
  @media (min-width: 992px) {
    .scaffolding.master-detail > .content #master {
      border-right: 1px solid rgb(var(--outlineColor)); } }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.overflow-auto {
  overflow: auto; }

.overflow-hidden {
  overflow: hidden; }

.overflow-visible {
  overflow: visible; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.radius-circle {
  border-radius: 999px !important; }

.radius-default {
  border-radius: var(--radius) !important; }

.radius-double {
  border-radius: calc(var(--radius) * 2) !important; }

.radius-none {
  border-radius: 0 !important; }

.radius-squircle {
  border-radius: 0 !important;
  mask: url(./squircle.svg); }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.bg-primary {
  background-color: rgb(var(--colorPrimary)) !important; }

.bg-error {
  background-color: rgb(var(--colorError)) !important; }

.bg-info {
  background-color: rgb(var(--colorInfo)) !important; }

.bg-success {
  background-color: rgb(var(--colorSuccess)) !important; }

.bg-warning {
  background-color: rgb(var(--colorWarning)) !important; }

.bg-light {
  background-color: rgb(var(--colorLight)) !important; }

.bg-dark {
  background-color: rgb(var(--colorDark)) !important; }

.bg-black {
  background-color: black !important; }

.bg-white {
  background-color: white !important; }

.bg-main {
  background-color: rgb(var(--mainBackground)) !important; }

.bg-panel {
  background-color: rgb(var(--panelBackground)) !important; }

.bg-transparent {
  background-color: transparent !important; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.border {
  border: 1px solid rgb(var(--outlineColor)) !important; }

.border-top {
  border-top: 1px solid rgb(var(--outlineColor)) !important; }

.border-right {
  border-right: 1px solid rgb(var(--outlineColor)) !important; }

.border-bottom {
  border-bottom: 1px solid rgb(var(--outlineColor)) !important; }

.border-left {
  border-left: 1px solid rgb(var(--outlineColor)) !important; }

.border-0 {
  border: 0 !important; }

.border-top-0 {
  border-top: 0 !important; }

.border-right-0 {
  border-right: 0 !important; }

.border-bottom-0 {
  border-bottom: 0 !important; }

.border-left-0 {
  border-left: 0 !important; }

.border-primary {
  border-color: rgb(var(--colorPrimary)) !important; }

.border-error {
  border-color: rgb(var(--colorError)) !important; }

.border-info {
  border-color: rgb(var(--colorInfo)) !important; }

.border-success {
  border-color: rgb(var(--colorSuccess)) !important; }

.border-warning {
  border-color: rgb(var(--colorWarning)) !important; }

.border-light {
  border-color: rgb(var(--colorLight)) !important; }

.border-dark {
  border-color: rgb(var(--colorDark)) !important; }

.border-white {
  border-color: #fff !important; }

/*!
 * Copyright (c) 2018-2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte UI package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.text-monospace {
  font-family: cascadia-code !important; }

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

.text-wrap {
  white-space: normal !important; }

.text-nowrap {
  white-space: nowrap !important; }

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

.text-left {
  text-align: left !important; }

.text-right {
  text-align: right !important; }

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

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important; }
  .text-sm-right {
    text-align: right !important; }
  .text-sm-center {
    text-align: center !important; } }

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important; }
  .text-md-right {
    text-align: right !important; }
  .text-md-center {
    text-align: center !important; } }

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important; }
  .text-lg-right {
    text-align: right !important; }
  .text-lg-center {
    text-align: center !important; } }

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important; }
  .text-xl-right {
    text-align: right !important; }
  .text-xl-center {
    text-align: center !important; } }

.text-lowercase {
  text-transform: lowercase !important; }

.text-uppercase {
  text-transform: uppercase !important; }

.text-capitalize {
  text-transform: capitalize !important; }

.font-weight-light {
  font-weight: 300 !important; }

.font-weight-lighter {
  font-weight: lighter !important; }

.font-weight-normal {
  font-weight: 400 !important; }

.font-weight-bold {
  font-weight: 700 !important; }

.font-weight-bolder {
  font-weight: bolder !important; }

.font-italic {
  font-style: italic !important; }

.text-white {
  color: #fff !important; }

.text-primary {
  color: rgb(var(--colorPrimary)) !important; }

.text-error {
  color: rgb(var(--colorError)) !important; }

.text-info {
  color: rgb(var(--colorInfo)) !important; }

.text-success {
  color: rgb(var(--colorSuccess)) !important; }

.text-warning {
  color: rgb(var(--colorWarning)) !important; }

.text-light {
  color: rgb(var(--colorLight)) !important; }

.text-dark {
  color: rgb(var(--colorDark)) !important; }

.text-body {
  color: var(--mainForeground) !important; }

.text-muted {
  opacity: .5 !important; }

.text-light-50 {
  color: rgba(var(--colorLight), 0.5) !important; }

.text-dark-50 {
  color: rgba(var(--colorDark), 0.5) !important; }

.text-decoration-none {
  text-decoration: none !important; }

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important; }

.text-reset {
  color: inherit !important; }

:root {
  --fontSansSerif: proxima-nova;
  --fontMonospace: cascadia-code;
  --formoutline: var(--formOutline); }

.btn {
  font-weight: 500; }

.nav .nav-link.has-ripple:focus, .nav .nav-link.has-ripple.is-focus {
  background: transparent !important; }

.nav .section {
  color: rgba(var(--mainForeground), 0.5);
  font-size: 13px;
  font-weight: 500; }

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
:root {
  --scaffoldingDrawerWidth: 300px; }

.scaffolding {
  min-height: 100vh; }
  .scaffolding > .app-bar.app-bar-main {
    margin-left: calc(0px - var(--scaffoldingDrawerWidth) + 72px);
    z-index: 1004; }
  .scaffolding > .sheet-overlay .sheet-content {
    display: flex; }
  .scaffolding > .sheet-overlay .bottom-nav {
    width: 72px; }
  .scaffolding > .sheet-overlay .bottom-nav .btn-action {
    --radius: unset;
    height: 72px;
    z-index: 0; }
    .scaffolding > .sheet-overlay .bottom-nav .btn-action.is-active {
      color: rgba(var(--colorPrimaryForeground), 1); }
    .scaffolding > .sheet-overlay .bottom-nav .btn-action::before {
      position: absolute;
      display: block;
      top: 9px;
      left: 9px;
      right: 9px;
      bottom: 9px;
      content: "";
      background: transparent;
      border-radius: var(--radius);
      transition: background 210ms var(--easeSwiftOut);
      z-index: -1; }
    .scaffolding > .sheet-overlay .bottom-nav .btn-action.is-active::before {
      background: rgba(var(--colorPrimary), 1); }
    .scaffolding > .sheet-overlay .bottom-nav .btn-action:not(.has-ripple):focus::before {
      background: rgba(var(--bottomNavForeground), 0.2); }
    .scaffolding > .sheet-overlay .bottom-nav .btn-action.is-branding {
      --iconSize: 36px;
      margin: -6px 0;
      opacity: 1; }
  .scaffolding.is-small {
    --scaffoldingDrawerWidth: 72px; }
  @media (max-width: 991.98px) {
    .scaffolding > .app-bar.app-bar-main {
      margin-left: 0;
      z-index: 1002; } }

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.mdi-color {
  position: relative;
  display: block;
  border-radius: 99px;
  box-shadow: inset 0 0 0 1px rgba(var(--colorDark), 0.1);
  font-size: 24px; }

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
body.login #login-panel {
  max-width: 100%;
  width: 420px;
  background: rgba(var(--colorPrimary), 1);
  overflow: hidden; }
  body.login #login-panel #login-header {
    text-align: center; }
    body.login #login-panel #login-header i.mdi {
      font-size: 60px; }

body.login .form-group input {
  height: 54px; }

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
div#dashboard {
  position: relative;
  display: block;
  height: calc(100vh - var(--appBarHeight));
  width: calc(100vw - var(--drawerWidthPrimary));
  margin: -24px; }

div#dashboard-empty {
  position: absolute;
  display: flex;
  top: 24px;
  left: 24px;
  right: 24px;
  bottom: 24px;
  align-items: center;
  justify-content: center; }
  div#dashboard-empty div#dashboard-empty-content {
    position: relative;
    display: flex;
    max-width: 420px;
    align-items: center;
    flex-flow: column;
    justify-content: center;
    text-align: center; }

span#dashboard-spinner {
  position: absolute;
  display: flex;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(var(--panelBackground), 0.9);
  z-index: 10; }

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.file-manager {
  overflow: hidden;
  z-index: 0; }
  .file-manager .app-bar {
    top: 75px;
    box-shadow: var(--elevation1);
    z-index: 2; }
    .file-manager .app-bar::before {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      content: "";
      background: rgba(var(--panelBackground), 1);
      z-index: -2; }
    .file-manager .app-bar::after {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      content: "";
      background: rgba(var(--outlineColor), 0.0125);
      z-index: -1; }
  .file-manager .fs-list-view {
    --tablePadding: 9px 24px;
    margin-top: -2px; }
    .file-manager .fs-list-view thead tr {
      height: 0; }

.overlay .panel.file-manager {
  height: calc(100vh - 96px);
  width: calc(100vw - 96px); }

.fs-preview {
  --color: var(--colorPrimary);
  display: flex;
  height: 1em;
  width: 1em;
  align-items: center;
  justify-content: center;
  background-color: rgba(var(--color), 1);
  border-radius: var(--radius);
  color: rgba(var(--colorPrimaryForeground), 1); }
  .fs-preview.mdi::before {
    margin: 0;
    font-size: .6667em;
    line-height: 1em; }
  .fs-preview.fs-image {
    background-color: transparent; }
  .fs-preview.fs-folder {
    --color: var(--yellow50); }

.fs-entry {
  user-select: none; }

.fs-pane {
  width: 330px;
  overflow: auto; }
  .fs-pane audio,
  .fs-pane video {
    outline: 0; }

.fs-detail-caption.list-item-prefix {
  margin-right: 1rem;
  width: 84px;
  font-size: .85rem;
  opacity: .75; }

.fs-sticky {
  position: sticky;
  top: 0;
  z-index: 1; }
  .fs-sticky.panel-header {
    background: rgba(var(--panelBackground), 1); }

.nav-link.fs-folder.is-dragging-over {
  outline: 2px dashed rgba(var(--colorPrimary), 1);
  outline-offset: -2px;
  transition: none; }

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.theme-options-list {
  position: relative;
  display: flex;
  margin: 0 -12px;
  align-items: center;
  flex-flow: row wrap; }

.themes-list .panel {
  margin: 1rem;
  max-width: calc(50% - 2rem);
  width: calc(50% - 2rem);
  flex: 1 1 auto;
  transition: box-shadow 300ms var(--easeSwiftOut); }
  .themes-list .panel .panel-header input[type=radio] {
    display: none; }
    .themes-list .panel .panel-header input[type=radio]:not(:checked) + i.mdi {
      display: none; }
  .themes-list .panel:hover {
    --panelElevation: 0px 5px 6px -3px rgba(var(--elevationColor), 0.05), 0px 9px 12px 1px rgba(var(--elevationColor), 0.035), 0px 3px 16px 2px rgba(var(--elevationColor), 0.06); }

.accents-list {
  flex-flow: row wrap;
  justify-content: center; }
  .accents-list .accent-color {
    position: relative;
    display: flex;
    height: 48px;
    width: 48px;
    margin: 12px;
    padding: 0;
    align-items: center;
    justify-content: center;
    background: RGB(var(--background));
    border-radius: 24px;
    color: RGB(var(--foreground)); }
    .accents-list .accent-color i.mdi {
      position: relative;
      display: block;
      height: 24px;
      width: 24px;
      font-size: 24px;
      line-height: 24px; }
    .accents-list .accent-color input[type=radio] {
      display: none; }
      .accents-list .accent-color input[type=radio]:not(:checked) + i.mdi {
        display: none; }

/*!
 * Copyright (c) 2017 - 2020 - Bas Milius <bas@mili.us>
 *
 * This file is part of the Latte Framework package.
 *
 * For the full copyright and license information, please view the
 * LICENSE file that was distributed with this source code.
 */
.wi-base {
  overflow: auto; }
  .wi-base [contenteditable] {
    outline: 0; }
  .wi-base > .panel-header {
    position: sticky;
    top: 0;
    background: rgba(var(--panelBackground), 0.75);
    z-index: 1; }
    .wi-base > .panel-header input.panel-title {
      position: relative;
      margin: 0 1rem 0 -12px;
      padding: 9px 12px;
      width: 100%;
      background: transparent;
      border-radius: var(--radius);
      border: 0;
      outline: 0;
      transition: background 90ms var(--easeSwiftOut); }
      .wi-base > .panel-header input.panel-title:hover, .wi-base > .panel-header input.panel-title:focus {
        background: rgba(var(--dark), 0.1); }

.wi-grid {
  position: relative;
  display: grid;
  padding: 12px 30px;
  grid-auto-rows: 1fr;
  grid-gap: 9px;
  grid-template-columns: repeat(6, 1fr); }

.wi-grid-item {
  position: relative; }

button.wi-grid-item {
  --rippleCenter: true;
  --rippleClip: false;
  margin: 0;
  padding: 0;
  background: unset;
  border: 0; }

.wi-base.wi-note {
  color: #191a1c; }
  .wi-base.wi-note .btn-icon.btn-text {
    --btnBackground: 25, 26, 28; }
  .wi-base.wi-note input[type=text] {
    color: #191a1c; }

.avatar {
  position: relative; }

.list-item.is-hover {
  background: rgba(var(--colorPrimary), 0.075); }

input.checkbox,
input.radio-button,
input.toggle-button, select.form-control, select.input-group {
  -webkit-appearance: none; }


/*# sourceMappingURL=latte.css.map*/