/*!
 * Copyright (c) 2020 - Bas Milius <hello@bas.dev>
 * Copyright (c) 2020 - Studio Vierentwintig <info@studiovierentwintig.nl>
 *
 * This file is property of Studio Vierentwintig and may not
 * be used outside of our website.
 */
@charset "UTF-8";
/*!
 * 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-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    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-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  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.3333333333%;
  max-width: 33.3333333333%;
}

.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.6666666667%;
  max-width: 16.6666666667%;
}

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

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

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

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

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

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

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

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

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

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

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

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

.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.3333333333%;
}

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

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

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

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

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

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

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

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

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

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

@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.3333333333%;
    max-width: 33.3333333333%;
  }

  .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.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .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.3333333333%;
  }

  .offset-sm-2 {
    margin-left: 16.6666666667%;
  }

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

  .offset-sm-4 {
    margin-left: 33.3333333333%;
  }

  .offset-sm-5 {
    margin-left: 41.6666666667%;
  }

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

  .offset-sm-7 {
    margin-left: 58.3333333333%;
  }

  .offset-sm-8 {
    margin-left: 66.6666666667%;
  }

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

  .offset-sm-10 {
    margin-left: 83.3333333333%;
  }

  .offset-sm-11 {
    margin-left: 91.6666666667%;
  }
}
@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.3333333333%;
    max-width: 33.3333333333%;
  }

  .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.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .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.3333333333%;
  }

  .offset-md-2 {
    margin-left: 16.6666666667%;
  }

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

  .offset-md-4 {
    margin-left: 33.3333333333%;
  }

  .offset-md-5 {
    margin-left: 41.6666666667%;
  }

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

  .offset-md-7 {
    margin-left: 58.3333333333%;
  }

  .offset-md-8 {
    margin-left: 66.6666666667%;
  }

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

  .offset-md-10 {
    margin-left: 83.3333333333%;
  }

  .offset-md-11 {
    margin-left: 91.6666666667%;
  }
}
@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.3333333333%;
    max-width: 33.3333333333%;
  }

  .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.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .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.3333333333%;
  }

  .offset-lg-2 {
    margin-left: 16.6666666667%;
  }

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

  .offset-lg-4 {
    margin-left: 33.3333333333%;
  }

  .offset-lg-5 {
    margin-left: 41.6666666667%;
  }

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

  .offset-lg-7 {
    margin-left: 58.3333333333%;
  }

  .offset-lg-8 {
    margin-left: 66.6666666667%;
  }

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

  .offset-lg-10 {
    margin-left: 83.3333333333%;
  }

  .offset-lg-11 {
    margin-left: 91.6666666667%;
  }
}
@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.3333333333%;
    max-width: 33.3333333333%;
  }

  .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.6666666667%;
    max-width: 16.6666666667%;
  }

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

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

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

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

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

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

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

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

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

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

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

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

  .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.3333333333%;
  }

  .offset-xl-2 {
    margin-left: 16.6666666667%;
  }

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

  .offset-xl-4 {
    margin-left: 33.3333333333%;
  }

  .offset-xl-5 {
    margin-left: 41.6666666667%;
  }

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

  .offset-xl-7 {
    margin-left: 58.3333333333%;
  }

  .offset-xl-8 {
    margin-left: 66.6666666667%;
  }

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

  .offset-xl-10 {
    margin-left: 83.3333333333%;
  }

  .offset-xl-11 {
    margin-left: 91.6666666667%;
  }
}
.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.8571428571%;
}

.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, div.photo-item {
  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 high-contrast"], :root[data-theme=dark] {
  --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: 0.6;
}
blockquote footer::before {
  margin-right: 0.5rem;
  content: "—";
}

.text-soft {
  color: rgb(var(--mainForeground));
  opacity: 0.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: 0.5;
  outline: 0;
  transition: opacity 210ms var(--easeSwiftOut);
  vertical-align: middle;
}
.close::before, .close::after {
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  height: 0.1em;
  width: 0.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: 0.75;
}
.close:active, .close.is-active {
  opacity: 0.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: -0.15em 0.1em 0.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: 0.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: 0.8rem;
  opacity: 0.5;
}

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

.app-bar .divider-vertical {
  height: 24px;
  opacity: 0.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: -0.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: 0.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: 0.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: 0.5;
  transition: all 240ms var(--easeSwiftOut);
}
.bottom-nav .btn-action + .btn-action {
  margin: 0;
}
.bottom-nav .btn-action span {
  font-size: 0.8rem;
  transition: all 300ms var(--easeSwiftOut);
}
.bottom-nav .btn-action.is-active {
  opacity: 1;
}
.bottom-nav .btn-action.is-active span {
  font-size: 0.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: 0.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: 0.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: 0.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: 0.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: 0.5;
}
.form-control[disabled], [disabled].input-group, .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: 0.5;
  z-index: 1;
}
div.latte-grid-item.is-resizing {
  transition: none;
  opacity: 0.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: 0.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: 0.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: 0.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: 0.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: "›";
  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: 0.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: 0.8rem;
  font-weight: 500;
  line-height: 30px;
  opacity: 0.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: 0.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: 0.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: 0.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: 0.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);
  }
}
span.silhouette, p.silhouette::before, p.silhouette::after, h1.silhouette,
h2.silhouette,
h3.silhouette,
h4.silhouette,
h5.silhouette,
h6.silhouette, div.silhouette, .btn.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: 0.8em;
  margin: 0.4em 0;
  border-radius: 1em;
  content: "";
}
p.silhouette::before {
  width: 100%;
}
p.silhouette::after {
  margin-top: 0.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%, aqua 50%, blue 67%, fuchsia 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: 0.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: 0.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: 0.5em;
  color: rgba(var(--mainForeground), 0.5);
  font-size: 0.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: 0.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: 0.85rem;
}
.datepicker-calendar .datepicker-calendar-dates .btn:not(.btn-contained):not([disabled]) {
  opacity: 0.7;
}
.datepicker-calendar .datepicker-calendar-dates .btn[disabled] {
  opacity: 0.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: 0.5;
}
.timepicker-clock .timepicker-ampm .ampm:not(.is-selected):hover {
  opacity: 0.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: 0.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: 0.5;
}
.timepicker-clock .timepicker-segments .timepicker-segment:not(.is-selection):hover {
  opacity: 0.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: 0.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: 0.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: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !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: 0.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 {
  --colorPrimary: 49, 64, 53;
  --colorPrimaryLight: 82, 107, 89;
  --mainBackground: 254, 254, 254;
  --fontSansSerif: "Palanquin", sans-serif;
}

html {
  font-size: 15px;
}

h1 {
  color: rgba(var(--colorPrimaryLight), 1);
  font-weight: 600;
}

h2 {
  color: rgba(var(--colorPrimary), 1);
  font-size: 2rem;
  font-weight: 700;
}

h3 {
  color: rgba(var(--colorPrimaryLight), 1);
  font-size: 1.4rem;
  font-weight: 500;
}
p + h3 {
  margin-top: 2rem;
}

p {
  line-height: 2em;
}

.app-bar.app-bar-main {
  --tabsAccent: var(--colorPrimaryLight);
  --tabsHeight: var(--appBarHeight);
  position: sticky;
  top: -121px;
}
.app-bar.app-bar-main .nav-link {
  font-weight: 600;
}

.footer p {
  font-size: 0.9rem;
}

.album {
  position: relative;
  display: block;
  padding-top: 100%;
  border-radius: var(--radius);
  opacity: 0;
  overflow: hidden;
  transition: opacity 540ms var(--easeSwiftOut);
  z-index: 0;
}
.album.is-ready {
  opacity: 1;
}
.album div.album-caption {
  position: absolute;
  display: flex;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 18px 30px;
  align-items: flex-start;
  flex-flow: column;
  justify-content: flex-start;
  border-radius: inherit;
  color: white;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
  transform: translate3d(0, calc(100% - 66px), 0);
  transition: transform 540ms var(--easeSwiftOut), background 420ms var(--easeSwiftOut) 120ms;
  z-index: 1;
}
.album div.album-caption strong, .album div.album-caption span {
  transition: all 540ms var(--easeSwiftOut);
}
.album div.album-caption span {
  opacity: 0;
  transform: translate3d(0, 48px, 0);
  transition-delay: 100ms;
}
.album div.album-preview {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
}
.album div.album-preview img {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  transition: opacity 660ms var(--easeSwiftOut), transform 1s var(--easeDecelerationCurve);
}
.album div.album-preview img.is-current {
  opacity: 1;
  z-index: 1;
}
.album:hover div.album-caption {
  background: rgba(var(--colorPrimaryLight), 0.9);
  text-shadow: none;
  transform: none;
}
.col-lg-6 > .album:hover div.album-caption {
  transform: translate3d(0, 65%, 0);
}

.album:hover div.album-caption span {
  margin-top: 12px;
  opacity: 1;
  transform: none;
}
.album:hover div.album-preview img {
  transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
}

section.album-text-block {
  position: relative;
  display: flex;
  padding: 60px;
  align-items: center;
  flex-flow: column;
  justify-content: center;
  background: rgba(var(--colorPrimary), 1);
  border-radius: var(--radius);
  color: rgba(var(--colorPrimaryForeground), 1);
}
@media (max-width: 991.98px) {
  section.album-text-block {
    padding: 60px 30px;
  }
}

section.album-page {
  position: relative;
  margin: 2rem 0;
}
section.album-page.album-page-content {
  display: block;
}
section.album-page.album-page-photos {
  display: flex;
  margin: 0 -0.25rem;
  align-items: stretch;
  flex-flow: row wrap;
  justify-content: flex-start;
}
@media (min-width: 1200px) and (min-width: 1600px) {
  section.album-page.album-page-photos {
    margin: 0 -150px;
  }
}
section.album-page.album-page-photos .photo-item {
  width: 20%;
}
@media (max-width: 991.98px) {
  section.album-page.album-page-photos .photo-item {
    width: 33.3333%;
  }
}
@media (max-width: 575.98px) {
  section.album-page.album-page-photos .photo-item {
    width: 50%;
  }
}

div.photo-item {
  position: relative;
  display: block;
}
div.photo-item a.photo-link {
  position: relative;
  display: block;
  padding-top: 100%;
  border-radius: var(--radius);
  overflow: hidden;
}
div.photo-item a.photo-link img {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform 1s var(--easeDecelerationCurve);
}
div.photo-item a.photo-link:hover img {
  transform: scale3d(1.1, 1.1, 1.1) rotate(3deg);
}

.possibility {
  align-items: center;
  justify-content: center;
}
.possibility-photos {
  position: relative;
  display: grid;
  grid-gap: 12px;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
}
.possibility-photos-photo {
  position: relative;
  padding-bottom: 100%;
}
.possibility-photos img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border-radius: var(--radius);
  object-fit: cover;
  object-position: center;
}

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