`s.
+
+.nav {
+ display: flex;
+ flex-wrap: wrap;
+ padding-left: 0;
+ margin-bottom: 0;
+ list-style: none;
+}
+
+.nav-link {
+ display: block;
+ padding: $nav-link-padding-y $nav-link-padding-x;
+
+ @include hover-focus {
+ text-decoration: none;
+ }
+
+ // Disabled state lightens text
+ &.disabled {
+ color: $nav-link-disabled-color;
+ }
+}
+
+//
+// Tabs
+//
+
+.nav-tabs {
+ border-bottom: $nav-tabs-border-width solid $nav-tabs-border-color;
+
+ .nav-item {
+ margin-bottom: -$nav-tabs-border-width;
+ }
+
+ .nav-link {
+ border: $nav-tabs-border-width solid transparent;
+ @include border-top-radius($nav-tabs-border-radius);
+
+ @include hover-focus {
+ border-color: $nav-tabs-link-hover-border-color;
+ }
+
+ &.disabled {
+ color: $nav-link-disabled-color;
+ background-color: transparent;
+ border-color: transparent;
+ }
+ }
+
+ .nav-link.active,
+ .nav-item.show .nav-link {
+ color: $nav-tabs-link-active-color;
+ background-color: $nav-tabs-link-active-bg;
+ border-color: $nav-tabs-link-active-border-color;
+ }
+
+ .dropdown-menu {
+ // Make dropdown border overlap tab border
+ margin-top: -$nav-tabs-border-width;
+ // Remove the top rounded corners here since there is a hard edge above the menu
+ @include border-top-radius(0);
+ }
+}
+
+
+//
+// Pills
+//
+
+.nav-pills {
+ .nav-link {
+ @include border-radius($nav-pills-border-radius);
+ }
+
+ .nav-link.active,
+ .show > .nav-link {
+ color: $nav-pills-link-active-color;
+ background-color: $nav-pills-link-active-bg;
+ }
+}
+
+
+//
+// Justified variants
+//
+
+.nav-fill {
+ .nav-item {
+ flex: 1 1 auto;
+ text-align: center;
+ }
+}
+
+.nav-justified {
+ .nav-item {
+ flex-basis: 0;
+ flex-grow: 1;
+ text-align: center;
+ }
+}
+
+
+// Tabbable tabs
+//
+// Hide tabbable panes to start, show them when `.active`
+
+.tab-content {
+ > .tab-pane {
+ display: none;
+ }
+ > .active {
+ display: block;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_navbar.scss b/vendor/assets/stylesheets/bootstrap/_navbar.scss
new file mode 100644
index 0000000..0502527
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_navbar.scss
@@ -0,0 +1,299 @@
+// Contents
+//
+// Navbar
+// Navbar brand
+// Navbar nav
+// Navbar text
+// Navbar divider
+// Responsive navbar
+// Navbar position
+// Navbar themes
+
+
+// Navbar
+//
+// Provide a static navbar from which we expand to create full-width, fixed, and
+// other navbar variations.
+
+.navbar {
+ position: relative;
+ display: flex;
+ flex-wrap: wrap; // allow us to do the line break for collapsing content
+ align-items: center;
+ justify-content: space-between; // space out brand from logo
+ padding: $navbar-padding-y $navbar-padding-x;
+
+ // Because flex properties aren't inherited, we need to redeclare these first
+ // few properities so that content nested within behave properly.
+ > .container,
+ > .container-fluid {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ justify-content: space-between;
+ }
+}
+
+
+// Navbar brand
+//
+// Used for brand, project, or site names.
+
+.navbar-brand {
+ display: inline-block;
+ padding-top: $navbar-brand-padding-y;
+ padding-bottom: $navbar-brand-padding-y;
+ margin-right: $navbar-padding-x;
+ font-size: $navbar-brand-font-size;
+ line-height: inherit;
+ white-space: nowrap;
+
+ @include hover-focus {
+ text-decoration: none;
+ }
+}
+
+
+// Navbar nav
+//
+// Custom navbar navigation (doesn't require `.nav`, but does make use of `.nav-link`).
+
+.navbar-nav {
+ display: flex;
+ flex-direction: column; // cannot use `inherit` to get the `.navbar`s value
+ padding-left: 0;
+ margin-bottom: 0;
+ list-style: none;
+
+ .nav-link {
+ padding-right: 0;
+ padding-left: 0;
+ }
+
+ .dropdown-menu {
+ position: static;
+ float: none;
+ }
+}
+
+
+// Navbar text
+//
+//
+
+.navbar-text {
+ display: inline-block;
+ padding-top: $nav-link-padding-y;
+ padding-bottom: $nav-link-padding-y;
+}
+
+
+// Responsive navbar
+//
+// Custom styles for responsive collapsing and toggling of navbar contents.
+// Powered by the collapse Bootstrap JavaScript plugin.
+
+// When collapsed, prevent the toggleable navbar contents from appearing in
+// the default flexbox row orienation. Requires the use of `flex-wrap: wrap`
+// on the `.navbar` parent.
+.navbar-collapse {
+ flex-basis: 100%;
+ flex-grow: 1;
+ // For always expanded or extra full navbars, ensure content aligns itself
+ // properly vertically. Can be easily overridden with flex utilities.
+ align-items: center;
+}
+
+// Button for toggling the navbar when in its collapsed state
+.navbar-toggler {
+ padding: $navbar-toggler-padding-y $navbar-toggler-padding-x;
+ font-size: $navbar-toggler-font-size;
+ line-height: 1;
+ background-color: transparent; // remove default button style
+ border: $border-width solid transparent; // remove default button style
+ @include border-radius($navbar-toggler-border-radius);
+
+ @include hover-focus {
+ text-decoration: none;
+ }
+
+ // Opinionated: add "hand" cursor to non-disabled .navbar-toggler elements
+ &:not(:disabled):not(.disabled) {
+ cursor: pointer;
+ }
+}
+
+// Keep as a separate element so folks can easily override it with another icon
+// or image file as needed.
+.navbar-toggler-icon {
+ display: inline-block;
+ width: 1.5em;
+ height: 1.5em;
+ vertical-align: middle;
+ content: "";
+ background: no-repeat center center;
+ background-size: 100% 100%;
+}
+
+// Generate series of `.navbar-expand-*` responsive classes for configuring
+// where your navbar collapses.
+.navbar-expand {
+ @each $breakpoint in map-keys($grid-breakpoints) {
+ $next: breakpoint-next($breakpoint, $grid-breakpoints);
+ $infix: breakpoint-infix($next, $grid-breakpoints);
+
+ {$infix} {
+ @include media-breakpoint-down($breakpoint) {
+ > .container,
+ > .container-fluid {
+ padding-right: 0;
+ padding-left: 0;
+ }
+ }
+
+ @include media-breakpoint-up($next) {
+ flex-flow: row nowrap;
+ justify-content: flex-start;
+
+ .navbar-nav {
+ flex-direction: row;
+
+ .dropdown-menu {
+ position: absolute;
+ }
+
+ .nav-link {
+ padding-right: $navbar-nav-link-padding-x;
+ padding-left: $navbar-nav-link-padding-x;
+ }
+ }
+
+ // For nesting containers, have to redeclare for alignment purposes
+ > .container,
+ > .container-fluid {
+ flex-wrap: nowrap;
+ }
+
+ .navbar-collapse {
+ display: flex !important; // stylelint-disable-line declaration-no-important
+
+ // Changes flex-bases to auto because of an IE10 bug
+ flex-basis: auto;
+ }
+
+ .navbar-toggler {
+ display: none;
+ }
+ }
+ }
+ }
+}
+
+
+// Navbar themes
+//
+// Styles for switching between navbars with light or dark background.
+
+// Dark links against a light background
+.navbar-light {
+ .navbar-brand {
+ color: $navbar-light-active-color;
+
+ @include hover-focus {
+ color: $navbar-light-active-color;
+ }
+ }
+
+ .navbar-nav {
+ .nav-link {
+ color: $navbar-light-color;
+
+ @include hover-focus {
+ color: $navbar-light-hover-color;
+ }
+
+ &.disabled {
+ color: $navbar-light-disabled-color;
+ }
+ }
+
+ .show > .nav-link,
+ .active > .nav-link,
+ .nav-link.show,
+ .nav-link.active {
+ color: $navbar-light-active-color;
+ }
+ }
+
+ .navbar-toggler {
+ color: $navbar-light-color;
+ border-color: $navbar-light-toggler-border-color;
+ }
+
+ .navbar-toggler-icon {
+ background-image: $navbar-light-toggler-icon-bg;
+ }
+
+ .navbar-text {
+ color: $navbar-light-color;
+ a {
+ color: $navbar-light-active-color;
+
+ @include hover-focus {
+ color: $navbar-light-active-color;
+ }
+ }
+ }
+}
+
+// White links against a dark background
+.navbar-dark {
+ .navbar-brand {
+ color: $navbar-dark-active-color;
+
+ @include hover-focus {
+ color: $navbar-dark-active-color;
+ }
+ }
+
+ .navbar-nav {
+ .nav-link {
+ color: $navbar-dark-color;
+
+ @include hover-focus {
+ color: $navbar-dark-hover-color;
+ }
+
+ &.disabled {
+ color: $navbar-dark-disabled-color;
+ }
+ }
+
+ .show > .nav-link,
+ .active > .nav-link,
+ .nav-link.show,
+ .nav-link.active {
+ color: $navbar-dark-active-color;
+ }
+ }
+
+ .navbar-toggler {
+ color: $navbar-dark-color;
+ border-color: $navbar-dark-toggler-border-color;
+ }
+
+ .navbar-toggler-icon {
+ background-image: $navbar-dark-toggler-icon-bg;
+ }
+
+ .navbar-text {
+ color: $navbar-dark-color;
+ a {
+ color: $navbar-dark-active-color;
+
+ @include hover-focus {
+ color: $navbar-dark-active-color;
+ }
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_pagination.scss b/vendor/assets/stylesheets/bootstrap/_pagination.scss
new file mode 100644
index 0000000..9349f3f
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_pagination.scss
@@ -0,0 +1,78 @@
+.pagination {
+ display: flex;
+ @include list-unstyled();
+ @include border-radius();
+}
+
+.page-link {
+ position: relative;
+ display: block;
+ padding: $pagination-padding-y $pagination-padding-x;
+ margin-left: -$pagination-border-width;
+ line-height: $pagination-line-height;
+ color: $pagination-color;
+ background-color: $pagination-bg;
+ border: $pagination-border-width solid $pagination-border-color;
+
+ &:hover {
+ z-index: 2;
+ color: $pagination-hover-color;
+ text-decoration: none;
+ background-color: $pagination-hover-bg;
+ border-color: $pagination-hover-border-color;
+ }
+
+ &:focus {
+ z-index: 2;
+ outline: $pagination-focus-outline;
+ box-shadow: $pagination-focus-box-shadow;
+ }
+
+ // Opinionated: add "hand" cursor to non-disabled .page-link elements
+ &:not(:disabled):not(.disabled) {
+ cursor: pointer;
+ }
+}
+
+.page-item {
+ &:first-child {
+ .page-link {
+ margin-left: 0;
+ @include border-left-radius($border-radius);
+ }
+ }
+ &:last-child {
+ .page-link {
+ @include border-right-radius($border-radius);
+ }
+ }
+
+ &.active .page-link {
+ z-index: 1;
+ color: $pagination-active-color;
+ background-color: $pagination-active-bg;
+ border-color: $pagination-active-border-color;
+ }
+
+ &.disabled .page-link {
+ color: $pagination-disabled-color;
+ pointer-events: none;
+ // Opinionated: remove the "hand" cursor set previously for .page-link
+ cursor: auto;
+ background-color: $pagination-disabled-bg;
+ border-color: $pagination-disabled-border-color;
+ }
+}
+
+
+//
+// Sizing
+//
+
+.pagination-lg {
+ @include pagination-size($pagination-padding-y-lg, $pagination-padding-x-lg, $font-size-lg, $line-height-lg, $border-radius-lg);
+}
+
+.pagination-sm {
+ @include pagination-size($pagination-padding-y-sm, $pagination-padding-x-sm, $font-size-sm, $line-height-sm, $border-radius-sm);
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_popover.scss b/vendor/assets/stylesheets/bootstrap/_popover.scss
new file mode 100644
index 0000000..3ef5f62
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_popover.scss
@@ -0,0 +1,183 @@
+.popover {
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: $zindex-popover;
+ display: block;
+ max-width: $popover-max-width;
+ // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
+ // So reset our font and text properties to avoid inheriting weird values.
+ @include reset-text();
+ font-size: $popover-font-size;
+ // Allow breaking very long words so they don't overflow the popover's bounds
+ word-wrap: break-word;
+ background-color: $popover-bg;
+ background-clip: padding-box;
+ border: $popover-border-width solid $popover-border-color;
+ @include border-radius($popover-border-radius);
+ @include box-shadow($popover-box-shadow);
+
+ .arrow {
+ position: absolute;
+ display: block;
+ width: $popover-arrow-width;
+ height: $popover-arrow-height;
+ margin: 0 $border-radius-lg;
+
+ &::before,
+ &::after {
+ position: absolute;
+ display: block;
+ content: "";
+ border-color: transparent;
+ border-style: solid;
+ }
+ }
+}
+
+.bs-popover-top {
+ margin-bottom: $popover-arrow-height;
+
+ .arrow {
+ bottom: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
+ }
+
+ .arrow::before,
+ .arrow::after {
+ border-width: $popover-arrow-height ($popover-arrow-width / 2) 0;
+ }
+
+ .arrow::before {
+ bottom: 0;
+ border-top-color: $popover-arrow-outer-color;
+ }
+
+ .arrow::after {
+ bottom: $popover-border-width;
+ border-top-color: $popover-arrow-color;
+ }
+}
+
+.bs-popover-right {
+ margin-left: $popover-arrow-height;
+
+ .arrow {
+ left: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
+ width: $popover-arrow-height;
+ height: $popover-arrow-width;
+ margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
+ }
+
+ .arrow::before,
+ .arrow::after {
+ border-width: ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2) 0;
+ }
+
+ .arrow::before {
+ left: 0;
+ border-right-color: $popover-arrow-outer-color;
+ }
+
+ .arrow::after {
+ left: $popover-border-width;
+ border-right-color: $popover-arrow-color;
+ }
+}
+
+.bs-popover-bottom {
+ margin-top: $popover-arrow-height;
+
+ .arrow {
+ top: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
+ }
+
+ .arrow::before,
+ .arrow::after {
+ border-width: 0 ($popover-arrow-width / 2) $popover-arrow-height ($popover-arrow-width / 2);
+ }
+
+ .arrow::before {
+ top: 0;
+ border-bottom-color: $popover-arrow-outer-color;
+ }
+
+ .arrow::after {
+ top: $popover-border-width;
+ border-bottom-color: $popover-arrow-color;
+ }
+
+ // This will remove the popover-header's border just below the arrow
+ .popover-header::before {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ display: block;
+ width: $popover-arrow-width;
+ margin-left: ($popover-arrow-width / -2);
+ content: "";
+ border-bottom: $popover-border-width solid $popover-header-bg;
+ }
+}
+
+.bs-popover-left {
+ margin-right: $popover-arrow-height;
+
+ .arrow {
+ right: calc((#{$popover-arrow-height} + #{$popover-border-width}) * -1);
+ width: $popover-arrow-height;
+ height: $popover-arrow-width;
+ margin: $border-radius-lg 0; // make sure the arrow does not touch the popover's rounded corners
+ }
+
+ .arrow::before,
+ .arrow::after {
+ border-width: ($popover-arrow-width / 2) 0 ($popover-arrow-width / 2) $popover-arrow-height;
+ }
+
+ .arrow::before {
+ right: 0;
+ border-left-color: $popover-arrow-outer-color;
+ }
+
+ .arrow::after {
+ right: $popover-border-width;
+ border-left-color: $popover-arrow-color;
+ }
+}
+
+.bs-popover-auto {
+ &[x-placement^="top"] {
+ @extend .bs-popover-top;
+ }
+ &[x-placement^="right"] {
+ @extend .bs-popover-right;
+ }
+ &[x-placement^="bottom"] {
+ @extend .bs-popover-bottom;
+ }
+ &[x-placement^="left"] {
+ @extend .bs-popover-left;
+ }
+}
+
+
+// Offset the popover to account for the popover arrow
+.popover-header {
+ padding: $popover-header-padding-y $popover-header-padding-x;
+ margin-bottom: 0; // Reset the default from Reboot
+ font-size: $font-size-base;
+ color: $popover-header-color;
+ background-color: $popover-header-bg;
+ border-bottom: $popover-border-width solid darken($popover-header-bg, 5%);
+ $offset-border-width: calc(#{$border-radius-lg} - #{$popover-border-width});
+ @include border-top-radius($offset-border-width);
+
+ &:empty {
+ display: none;
+ }
+}
+
+.popover-body {
+ padding: $popover-body-padding-y $popover-body-padding-x;
+ color: $popover-body-color;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_print.scss b/vendor/assets/stylesheets/bootstrap/_print.scss
new file mode 100644
index 0000000..410216d
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_print.scss
@@ -0,0 +1,124 @@
+// stylelint-disable declaration-no-important, selector-no-qualifying-type
+
+// Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css
+
+// ==========================================================================
+// Print styles.
+// Inlined to avoid the additional HTTP request:
+// https://www.phpied.com/delay-loading-your-print-css/
+// ==========================================================================
+
+@if $enable-print-styles {
+ @media print {
+ *,
+ *::before,
+ *::after {
+ // Bootstrap specific; comment out `color` and `background`
+ //color: $black !important; // Black prints faster
+ text-shadow: none !important;
+ //background: transparent !important;
+ box-shadow: none !important;
+ }
+
+ a {
+ &:not(.btn) {
+ text-decoration: underline;
+ }
+ }
+
+ // Bootstrap specific; comment the following selector out
+ //a[href]::after {
+ // content: " (" attr(href) ")";
+ //}
+
+ abbr[title]::after {
+ content: " (" attr(title) ")";
+ }
+
+ // Bootstrap specific; comment the following selector out
+ //
+ // Don't show links that are fragment identifiers,
+ // or use the `javascript:` pseudo protocol
+ //
+
+ //a[href^="#"]::after,
+ //a[href^="javascript:"]::after {
+ // content: "";
+ //}
+
+ pre {
+ white-space: pre-wrap !important;
+ }
+ pre,
+ blockquote {
+ border: $border-width solid $gray-500; // Bootstrap custom code; using `$border-width` instead of 1px
+ page-break-inside: avoid;
+ }
+
+ //
+ // Printing Tables:
+ // http://css-discuss.incutio.com/wiki/Printing_Tables
+ //
+
+ thead {
+ display: table-header-group;
+ }
+
+ tr,
+ img {
+ page-break-inside: avoid;
+ }
+
+ p,
+ h2,
+ h3 {
+ orphans: 3;
+ widows: 3;
+ }
+
+ h2,
+ h3 {
+ page-break-after: avoid;
+ }
+
+ // Bootstrap specific changes start
+
+ // Specify a size and min-width to make printing closer across browsers.
+ // We don't set margin here because it breaks `size` in Chrome. We also
+ // don't use `!important` on `size` as it breaks in Chrome.
+ @page {
+ size: $print-page-size;
+ }
+ body {
+ min-width: $print-body-min-width !important;
+ }
+ .container {
+ min-width: $print-body-min-width !important;
+ }
+
+ // Bootstrap components
+ .navbar {
+ display: none;
+ }
+ .badge {
+ border: $border-width solid $black;
+ }
+
+ .table {
+ border-collapse: collapse !important;
+
+ td,
+ th {
+ background-color: $white !important;
+ }
+ }
+ .table-bordered {
+ th,
+ td {
+ border: 1px solid $gray-300 !important;
+ }
+ }
+
+ // Bootstrap specific changes end
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_progress.scss b/vendor/assets/stylesheets/bootstrap/_progress.scss
new file mode 100644
index 0000000..0ac3e0c
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_progress.scss
@@ -0,0 +1,34 @@
+@keyframes progress-bar-stripes {
+ from { background-position: $progress-height 0; }
+ to { background-position: 0 0; }
+}
+
+.progress {
+ display: flex;
+ height: $progress-height;
+ overflow: hidden; // force rounded corners by cropping it
+ font-size: $progress-font-size;
+ background-color: $progress-bg;
+ @include border-radius($progress-border-radius);
+ @include box-shadow($progress-box-shadow);
+}
+
+.progress-bar {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ color: $progress-bar-color;
+ text-align: center;
+ white-space: nowrap;
+ background-color: $progress-bar-bg;
+ @include transition($progress-bar-transition);
+}
+
+.progress-bar-striped {
+ @include gradient-striped();
+ background-size: $progress-height $progress-height;
+}
+
+.progress-bar-animated {
+ animation: progress-bar-stripes $progress-bar-animation-timing;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_reboot.scss b/vendor/assets/stylesheets/bootstrap/_reboot.scss
new file mode 100644
index 0000000..dd23f16
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_reboot.scss
@@ -0,0 +1,482 @@
+// stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix
+
+// Reboot
+//
+// Normalization of HTML elements, manually forked from Normalize.css to remove
+// styles targeting irrelevant browsers while applying new styles.
+//
+// Normalize is licensed MIT. https://github.com/necolas/normalize.css
+
+
+// Document
+//
+// 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.
+// 2. Change the default font family in all browsers.
+// 3. Correct the line height in all browsers.
+// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.
+// 5. Setting @viewport causes scrollbars to overlap content in IE11 and Edge, so
+// we force a non-overlapping, non-auto-hiding scrollbar to counteract.
+// 6. Change the default tap highlight to be completely transparent in iOS.
+
+*,
+*::before,
+*::after {
+ box-sizing: border-box; // 1
+}
+
+html {
+ font-family: sans-serif; // 2
+ line-height: 1.15; // 3
+ -webkit-text-size-adjust: 100%; // 4
+ -ms-text-size-adjust: 100%; // 4
+ -ms-overflow-style: scrollbar; // 5
+ -webkit-tap-highlight-color: rgba($black, 0); // 6
+}
+
+// IE10+ doesn't honor `` in some cases.
+@at-root {
+ @-ms-viewport {
+ width: device-width;
+ }
+}
+
+// stylelint-disable selector-list-comma-newline-after
+// Shim for "new" HTML5 structural elements to display correctly (IE10, older browsers)
+article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
+ display: block;
+}
+// stylelint-enable selector-list-comma-newline-after
+
+// Body
+//
+// 1. Remove the margin in all browsers.
+// 2. As a best practice, apply a default `background-color`.
+// 3. Set an explicit initial text-align value so that we can later use the
+// the `inherit` value on things like `` elements.
+
+body {
+ margin: 0; // 1
+ font-family: $font-family-base;
+ font-size: $font-size-base;
+ font-weight: $font-weight-base;
+ line-height: $line-height-base;
+ color: $body-color;
+ text-align: left; // 3
+ background-color: $body-bg; // 2
+}
+
+// Suppress the focus outline on elements that cannot be accessed via keyboard.
+// This prevents an unwanted focus outline from appearing around elements that
+// might still respond to pointer events.
+//
+// Credit: https://github.com/suitcss/base
+[tabindex="-1"]:focus {
+ outline: 0 !important;
+}
+
+
+// Content grouping
+//
+// 1. Add the correct box sizing in Firefox.
+// 2. Show the overflow in Edge and IE.
+
+hr {
+ box-sizing: content-box; // 1
+ height: 0; // 1
+ overflow: visible; // 2
+}
+
+
+//
+// Typography
+//
+
+// Remove top margins from headings
+//
+// By default, ``-`` all receive top and bottom margins. We nuke the top
+// margin for easier control within type scales as it avoids margin collapsing.
+// stylelint-disable selector-list-comma-newline-after
+h1, h2, h3, h4, h5, h6 {
+ margin-top: 0;
+ margin-bottom: $headings-margin-bottom;
+}
+// stylelint-enable selector-list-comma-newline-after
+
+// Reset margins on paragraphs
+//
+// Similarly, the top margin on ``s get reset. However, we also reset the
+// bottom margin to use `rem` units instead of `em`.
+p {
+ margin-top: 0;
+ margin-bottom: $paragraph-margin-bottom;
+}
+
+// Abbreviations
+//
+// 1. Remove the bottom border in Firefox 39-.
+// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
+// 3. Add explicit cursor to indicate changed behavior.
+// 4. Duplicate behavior to the data-* attribute for our tooltip plugin
+
+abbr[title],
+abbr[data-original-title] { // 4
+ text-decoration: underline; // 2
+ text-decoration: underline dotted; // 2
+ cursor: help; // 3
+ border-bottom: 0; // 1
+}
+
+address {
+ margin-bottom: 1rem;
+ font-style: normal;
+ line-height: inherit;
+}
+
+ol,
+ul,
+dl {
+ margin-top: 0;
+ margin-bottom: 1rem;
+}
+
+ol ol,
+ul ul,
+ol ul,
+ul ol {
+ margin-bottom: 0;
+}
+
+dt {
+ font-weight: $dt-font-weight;
+}
+
+dd {
+ margin-bottom: .5rem;
+ margin-left: 0; // Undo browser default
+}
+
+blockquote {
+ margin: 0 0 1rem;
+}
+
+dfn {
+ font-style: italic; // Add the correct font style in Android 4.3-
+}
+
+// stylelint-disable font-weight-notation
+b,
+strong {
+ font-weight: bolder; // Add the correct font weight in Chrome, Edge, and Safari
+}
+// stylelint-enable font-weight-notation
+
+small {
+ font-size: 80%; // Add the correct font size in all browsers
+}
+
+//
+// Prevent `sub` and `sup` elements from affecting the line height in
+// all browsers.
+//
+
+sub,
+sup {
+ position: relative;
+ font-size: 75%;
+ line-height: 0;
+ vertical-align: baseline;
+}
+
+sub { bottom: -.25em; }
+sup { top: -.5em; }
+
+
+//
+// Links
+//
+
+a {
+ color: $link-color;
+ text-decoration: $link-decoration;
+ background-color: transparent; // Remove the gray background on active links in IE 10.
+ -webkit-text-decoration-skip: objects; // Remove gaps in links underline in iOS 8+ and Safari 8+.
+
+ @include hover {
+ color: $link-hover-color;
+ text-decoration: $link-hover-decoration;
+ }
+}
+
+// And undo these styles for placeholder links/named anchors (without href)
+// which have not been made explicitly keyboard-focusable (without tabindex).
+// It would be more straightforward to just use a[href] in previous block, but that
+// causes specificity issues in many other styles that are too complex to fix.
+// See https://github.com/twbs/bootstrap/issues/19402
+
+a:not([href]):not([tabindex]) {
+ color: inherit;
+ text-decoration: none;
+
+ @include hover-focus {
+ color: inherit;
+ text-decoration: none;
+ }
+
+ &:focus {
+ outline: 0;
+ }
+}
+
+
+//
+// Code
+//
+
+// stylelint-disable font-family-no-duplicate-names
+pre,
+code,
+kbd,
+samp {
+ font-family: monospace, monospace; // Correct the inheritance and scaling of font size in all browsers.
+ font-size: 1em; // Correct the odd `em` font sizing in all browsers.
+}
+// stylelint-enable font-family-no-duplicate-names
+
+pre {
+ // Remove browser default top margin
+ margin-top: 0;
+ // Reset browser default of `1em` to use `rem`s
+ margin-bottom: 1rem;
+ // Don't allow content to break outside
+ overflow: auto;
+ // We have @viewport set which causes scrollbars to overlap content in IE11 and Edge, so
+ // we force a non-overlapping, non-auto-hiding scrollbar to counteract.
+ -ms-overflow-style: scrollbar;
+}
+
+
+//
+// Figures
+//
+
+figure {
+ // Apply a consistent margin strategy (matches our type styles).
+ margin: 0 0 1rem;
+}
+
+
+//
+// Images and content
+//
+
+img {
+ vertical-align: middle;
+ border-style: none; // Remove the border on images inside links in IE 10-.
+}
+
+svg:not(:root) {
+ overflow: hidden; // Hide the overflow in IE
+}
+
+
+//
+// Tables
+//
+
+table {
+ border-collapse: collapse; // Prevent double borders
+}
+
+caption {
+ padding-top: $table-cell-padding;
+ padding-bottom: $table-cell-padding;
+ color: $table-caption-color;
+ text-align: left;
+ caption-side: bottom;
+}
+
+th {
+ // Matches default ` | ` alignment by inheriting from the ``, or the
+ // closest parent with a set `text-align`.
+ text-align: inherit;
+}
+
+
+//
+// Forms
+//
+
+label {
+ // Allow labels to use `margin` for spacing.
+ display: inline-block;
+ margin-bottom: $label-margin-bottom;
+}
+
+// Remove the default `border-radius` that macOS Chrome adds.
+//
+// Details at https://github.com/twbs/bootstrap/issues/24093
+button {
+ border-radius: 0;
+}
+
+// Work around a Firefox/IE bug where the transparent `button` background
+// results in a loss of the default `button` focus styles.
+//
+// Credit: https://github.com/suitcss/base/
+button:focus {
+ outline: 1px dotted;
+ outline: 5px auto -webkit-focus-ring-color;
+}
+
+input,
+button,
+select,
+optgroup,
+textarea {
+ margin: 0; // Remove the margin in Firefox and Safari
+ font-family: inherit;
+ font-size: inherit;
+ line-height: inherit;
+}
+
+button,
+input {
+ overflow: visible; // Show the overflow in Edge
+}
+
+button,
+select {
+ text-transform: none; // Remove the inheritance of text transform in Firefox
+}
+
+// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
+// controls in Android 4.
+// 2. Correct the inability to style clickable types in iOS and Safari.
+button,
+html [type="button"], // 1
+[type="reset"],
+[type="submit"] {
+ -webkit-appearance: button; // 2
+}
+
+// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
+button::-moz-focus-inner,
+[type="button"]::-moz-focus-inner,
+[type="reset"]::-moz-focus-inner,
+[type="submit"]::-moz-focus-inner {
+ padding: 0;
+ border-style: none;
+}
+
+input[type="radio"],
+input[type="checkbox"] {
+ box-sizing: border-box; // 1. Add the correct box sizing in IE 10-
+ padding: 0; // 2. Remove the padding in IE 10-
+}
+
+
+input[type="date"],
+input[type="time"],
+input[type="datetime-local"],
+input[type="month"] {
+ // Remove the default appearance of temporal inputs to avoid a Mobile Safari
+ // bug where setting a custom line-height prevents text from being vertically
+ // centered within the input.
+ // See https://bugs.webkit.org/show_bug.cgi?id=139848
+ // and https://github.com/twbs/bootstrap/issues/11266
+ -webkit-appearance: listbox;
+}
+
+textarea {
+ overflow: auto; // Remove the default vertical scrollbar in IE.
+ // Textareas should really only resize vertically so they don't break their (horizontal) containers.
+ resize: vertical;
+}
+
+fieldset {
+ // Browsers set a default `min-width: min-content;` on fieldsets,
+ // unlike e.g. ` `s, which have `min-width: 0;` by default.
+ // So we reset that to ensure fieldsets behave more like a standard block element.
+ // See https://github.com/twbs/bootstrap/issues/12359
+ // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
+ min-width: 0;
+ // Reset the default outline behavior of fieldsets so they don't affect page layout.
+ padding: 0;
+ margin: 0;
+ border: 0;
+}
+
+// 1. Correct the text wrapping in Edge and IE.
+// 2. Correct the color inheritance from `fieldset` elements in IE.
+legend {
+ display: block;
+ width: 100%;
+ max-width: 100%; // 1
+ padding: 0;
+ margin-bottom: .5rem;
+ font-size: 1.5rem;
+ line-height: inherit;
+ color: inherit; // 2
+ white-space: normal; // 1
+}
+
+progress {
+ vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.
+}
+
+// Correct the cursor style of increment and decrement buttons in Chrome.
+[type="number"]::-webkit-inner-spin-button,
+[type="number"]::-webkit-outer-spin-button {
+ height: auto;
+}
+
+[type="search"] {
+ // This overrides the extra rounded corners on search inputs in iOS so that our
+ // `.form-control` class can properly style them. Note that this cannot simply
+ // be added to `.form-control` as it's not specific enough. For details, see
+ // https://github.com/twbs/bootstrap/issues/11586.
+ outline-offset: -2px; // 2. Correct the outline style in Safari.
+ -webkit-appearance: none;
+}
+
+//
+// Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
+//
+
+[type="search"]::-webkit-search-cancel-button,
+[type="search"]::-webkit-search-decoration {
+ -webkit-appearance: none;
+}
+
+//
+// 1. Correct the inability to style clickable types in iOS and Safari.
+// 2. Change font properties to `inherit` in Safari.
+//
+
+::-webkit-file-upload-button {
+ font: inherit; // 2
+ -webkit-appearance: button; // 1
+}
+
+//
+// Correct element displays
+//
+
+output {
+ display: inline-block;
+}
+
+summary {
+ display: list-item; // Add the correct display in all browsers
+ cursor: pointer;
+}
+
+template {
+ display: none; // Add the correct display in IE
+}
+
+// Always hide an element with the `hidden` HTML attribute (from PureCSS).
+// Needed for proper display in IE 10-.
+[hidden] {
+ display: none !important;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_root.scss b/vendor/assets/stylesheets/bootstrap/_root.scss
new file mode 100644
index 0000000..ad550df
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_root.scss
@@ -0,0 +1,19 @@
+:root {
+ // Custom variable values only support SassScript inside `#{}`.
+ @each $color, $value in $colors {
+ --#{$color}: #{$value};
+ }
+
+ @each $color, $value in $theme-colors {
+ --#{$color}: #{$value};
+ }
+
+ @each $bp, $value in $grid-breakpoints {
+ --breakpoint-#{$bp}: #{$value};
+ }
+
+ // Use `inspect` for lists so that quoted items keep the quotes.
+ // See https://github.com/sass/sass/issues/2383#issuecomment-336349172
+ --font-family-sans-serif: #{inspect($font-family-sans-serif)};
+ --font-family-monospace: #{inspect($font-family-monospace)};
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_tables.scss b/vendor/assets/stylesheets/bootstrap/_tables.scss
new file mode 100644
index 0000000..b32732f
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_tables.scss
@@ -0,0 +1,188 @@
+//
+// Basic Bootstrap table
+//
+
+.table {
+ width: 100%;
+ max-width: 100%;
+ margin-bottom: $spacer;
+ background-color: $table-bg; // Reset for nesting within parents with `background-color`.
+
+ th,
+ td {
+ padding: $table-cell-padding;
+ vertical-align: top;
+ border-top: $table-border-width solid $table-border-color;
+ }
+
+ thead th {
+ vertical-align: bottom;
+ border-bottom: (2 * $table-border-width) solid $table-border-color;
+ }
+
+ tbody + tbody {
+ border-top: (2 * $table-border-width) solid $table-border-color;
+ }
+
+ .table {
+ background-color: $body-bg;
+ }
+}
+
+
+//
+// Condensed table w/ half padding
+//
+
+.table-sm {
+ th,
+ td {
+ padding: $table-cell-padding-sm;
+ }
+}
+
+
+// Border versions
+//
+// Add or remove borders all around the table and between all the columns.
+
+.table-bordered {
+ border: $table-border-width solid $table-border-color;
+
+ th,
+ td {
+ border: $table-border-width solid $table-border-color;
+ }
+
+ thead {
+ th,
+ td {
+ border-bottom-width: (2 * $table-border-width);
+ }
+ }
+}
+
+.table-borderless {
+ th,
+ td,
+ thead th,
+ tbody + tbody {
+ border: 0;
+ }
+}
+
+// Zebra-striping
+//
+// Default zebra-stripe styles (alternating gray and transparent backgrounds)
+
+.table-striped {
+ tbody tr:nth-of-type(#{$table-striped-order}) {
+ background-color: $table-accent-bg;
+ }
+}
+
+
+// Hover effect
+//
+// Placed here since it has to come after the potential zebra striping
+
+.table-hover {
+ tbody tr {
+ @include hover {
+ background-color: $table-hover-bg;
+ }
+ }
+}
+
+
+// Table backgrounds
+//
+// Exact selectors below required to override `.table-striped` and prevent
+// inheritance to nested tables.
+
+@each $color, $value in $theme-colors {
+ @include table-row-variant($color, theme-color-level($color, -9));
+}
+
+@include table-row-variant(active, $table-active-bg);
+
+
+// Dark styles
+//
+// Same table markup, but inverted color scheme: dark background and light text.
+
+// stylelint-disable-next-line no-duplicate-selectors
+.table {
+ .thead-dark {
+ th {
+ color: $table-dark-color;
+ background-color: $table-dark-bg;
+ border-color: $table-dark-border-color;
+ }
+ }
+
+ .thead-light {
+ th {
+ color: $table-head-color;
+ background-color: $table-head-bg;
+ border-color: $table-border-color;
+ }
+ }
+}
+
+.table-dark {
+ color: $table-dark-color;
+ background-color: $table-dark-bg;
+
+ th,
+ td,
+ thead th {
+ border-color: $table-dark-border-color;
+ }
+
+ &.table-bordered {
+ border: 0;
+ }
+
+ &.table-striped {
+ tbody tr:nth-of-type(odd) {
+ background-color: $table-dark-accent-bg;
+ }
+ }
+
+ &.table-hover {
+ tbody tr {
+ @include hover {
+ background-color: $table-dark-hover-bg;
+ }
+ }
+ }
+}
+
+
+// Responsive tables
+//
+// Generate series of `.table-responsive-*` classes for configuring the screen
+// size of where your table will overflow.
+
+.table-responsive {
+ @each $breakpoint in map-keys($grid-breakpoints) {
+ $next: breakpoint-next($breakpoint, $grid-breakpoints);
+ $infix: breakpoint-infix($next, $grid-breakpoints);
+
+ {$infix} {
+ @include media-breakpoint-down($breakpoint) {
+ display: block;
+ width: 100%;
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch;
+ -ms-overflow-style: -ms-autohiding-scrollbar; // See https://github.com/twbs/bootstrap/pull/10057
+
+ // Prevent double border on horizontal scroll due to use of `display: block;`
+ > .table-bordered {
+ border: 0;
+ }
+ }
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_tooltip.scss b/vendor/assets/stylesheets/bootstrap/_tooltip.scss
new file mode 100644
index 0000000..1286ebf
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_tooltip.scss
@@ -0,0 +1,115 @@
+// Base class
+.tooltip {
+ position: absolute;
+ z-index: $zindex-tooltip;
+ display: block;
+ margin: $tooltip-margin;
+ // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.
+ // So reset our font and text properties to avoid inheriting weird values.
+ @include reset-text();
+ font-size: $tooltip-font-size;
+ // Allow breaking very long words so they don't overflow the tooltip's bounds
+ word-wrap: break-word;
+ opacity: 0;
+
+ &.show { opacity: $tooltip-opacity; }
+
+ .arrow {
+ position: absolute;
+ display: block;
+ width: $tooltip-arrow-width;
+ height: $tooltip-arrow-height;
+
+ &::before {
+ position: absolute;
+ content: "";
+ border-color: transparent;
+ border-style: solid;
+ }
+ }
+}
+
+.bs-tooltip-top {
+ padding: $tooltip-arrow-height 0;
+
+ .arrow {
+ bottom: 0;
+
+ &::before {
+ top: 0;
+ border-width: $tooltip-arrow-height ($tooltip-arrow-width / 2) 0;
+ border-top-color: $tooltip-arrow-color;
+ }
+ }
+}
+
+.bs-tooltip-right {
+ padding: 0 $tooltip-arrow-height;
+
+ .arrow {
+ left: 0;
+ width: $tooltip-arrow-height;
+ height: $tooltip-arrow-width;
+
+ &::before {
+ right: 0;
+ border-width: ($tooltip-arrow-width / 2) $tooltip-arrow-height ($tooltip-arrow-width / 2) 0;
+ border-right-color: $tooltip-arrow-color;
+ }
+ }
+}
+
+.bs-tooltip-bottom {
+ padding: $tooltip-arrow-height 0;
+
+ .arrow {
+ top: 0;
+
+ &::before {
+ bottom: 0;
+ border-width: 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height;
+ border-bottom-color: $tooltip-arrow-color;
+ }
+ }
+}
+
+.bs-tooltip-left {
+ padding: 0 $tooltip-arrow-height;
+
+ .arrow {
+ right: 0;
+ width: $tooltip-arrow-height;
+ height: $tooltip-arrow-width;
+
+ &::before {
+ left: 0;
+ border-width: ($tooltip-arrow-width / 2) 0 ($tooltip-arrow-width / 2) $tooltip-arrow-height;
+ border-left-color: $tooltip-arrow-color;
+ }
+ }
+}
+
+.bs-tooltip-auto {
+ &[x-placement^="top"] {
+ @extend .bs-tooltip-top;
+ }
+ &[x-placement^="right"] {
+ @extend .bs-tooltip-right;
+ }
+ &[x-placement^="bottom"] {
+ @extend .bs-tooltip-bottom;
+ }
+ &[x-placement^="left"] {
+ @extend .bs-tooltip-left;
+ }
+}
+
+// Wrapper for the tooltip content
+.tooltip-inner {
+ max-width: $tooltip-max-width;
+ padding: $tooltip-padding-y $tooltip-padding-x;
+ color: $tooltip-color;
+ text-align: center;
+ background-color: $tooltip-bg;
+ @include border-radius($tooltip-border-radius);
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_transitions.scss b/vendor/assets/stylesheets/bootstrap/_transitions.scss
new file mode 100644
index 0000000..c8d91e2
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_transitions.scss
@@ -0,0 +1,22 @@
+// stylelint-disable selector-no-qualifying-type
+
+.fade {
+ @include transition($transition-fade);
+
+ &:not(.show) {
+ opacity: 0;
+ }
+}
+
+.collapse {
+ &:not(.show) {
+ display: none;
+ }
+}
+
+.collapsing {
+ position: relative;
+ height: 0;
+ overflow: hidden;
+ @include transition($transition-collapse);
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_type.scss b/vendor/assets/stylesheets/bootstrap/_type.scss
new file mode 100644
index 0000000..57d610f
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_type.scss
@@ -0,0 +1,125 @@
+// stylelint-disable declaration-no-important, selector-list-comma-newline-after
+
+//
+// Headings
+//
+
+h1, h2, h3, h4, h5, h6,
+.h1, .h2, .h3, .h4, .h5, .h6 {
+ margin-bottom: $headings-margin-bottom;
+ font-family: $headings-font-family;
+ font-weight: $headings-font-weight;
+ line-height: $headings-line-height;
+ color: $headings-color;
+}
+
+h1, .h1 { font-size: $h1-font-size; }
+h2, .h2 { font-size: $h2-font-size; }
+h3, .h3 { font-size: $h3-font-size; }
+h4, .h4 { font-size: $h4-font-size; }
+h5, .h5 { font-size: $h5-font-size; }
+h6, .h6 { font-size: $h6-font-size; }
+
+.lead {
+ font-size: $lead-font-size;
+ font-weight: $lead-font-weight;
+}
+
+// Type display classes
+.display-1 {
+ font-size: $display1-size;
+ font-weight: $display1-weight;
+ line-height: $display-line-height;
+}
+.display-2 {
+ font-size: $display2-size;
+ font-weight: $display2-weight;
+ line-height: $display-line-height;
+}
+.display-3 {
+ font-size: $display3-size;
+ font-weight: $display3-weight;
+ line-height: $display-line-height;
+}
+.display-4 {
+ font-size: $display4-size;
+ font-weight: $display4-weight;
+ line-height: $display-line-height;
+}
+
+
+//
+// Horizontal rules
+//
+
+hr {
+ margin-top: $hr-margin-y;
+ margin-bottom: $hr-margin-y;
+ border: 0;
+ border-top: $hr-border-width solid $hr-border-color;
+}
+
+
+//
+// Emphasis
+//
+
+small,
+.small {
+ font-size: $small-font-size;
+ font-weight: $font-weight-normal;
+}
+
+mark,
+.mark {
+ padding: $mark-padding;
+ background-color: $mark-bg;
+}
+
+
+//
+// Lists
+//
+
+.list-unstyled {
+ @include list-unstyled;
+}
+
+// Inline turns list items into inline-block
+.list-inline {
+ @include list-unstyled;
+}
+.list-inline-item {
+ display: inline-block;
+
+ &:not(:last-child) {
+ margin-right: $list-inline-padding;
+ }
+}
+
+
+//
+// Misc
+//
+
+// Builds on `abbr`
+.initialism {
+ font-size: 90%;
+ text-transform: uppercase;
+}
+
+// Blockquotes
+.blockquote {
+ margin-bottom: $spacer;
+ font-size: $blockquote-font-size;
+}
+
+.blockquote-footer {
+ display: block;
+ font-size: 80%; // back to default font-size
+ color: $blockquote-small-color;
+
+ &::before {
+ content: "\2014 \00A0"; // em dash, nbsp
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/_utilities.scss b/vendor/assets/stylesheets/bootstrap/_utilities.scss
new file mode 100644
index 0000000..6c7a7cd
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_utilities.scss
@@ -0,0 +1,15 @@
+@import "utilities/align";
+@import "utilities/background";
+@import "utilities/borders";
+@import "utilities/clearfix";
+@import "utilities/display";
+@import "utilities/embed";
+@import "utilities/flex";
+@import "utilities/float";
+@import "utilities/position";
+@import "utilities/screenreaders";
+@import "utilities/shadows";
+@import "utilities/sizing";
+@import "utilities/spacing";
+@import "utilities/text";
+@import "utilities/visibility";
diff --git a/vendor/assets/stylesheets/bootstrap/_variables.scss b/vendor/assets/stylesheets/bootstrap/_variables.scss
new file mode 100644
index 0000000..1e17429
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/_variables.scss
@@ -0,0 +1,928 @@
+// Variables
+//
+// Variables should follow the `$component-state-property-size` formula for
+// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.
+
+
+//
+// Color system
+//
+
+// stylelint-disable
+$white: #fff !default;
+$gray-100: #f8f9fa !default;
+$gray-200: #e9ecef !default;
+$gray-300: #dee2e6 !default;
+$gray-400: #ced4da !default;
+$gray-500: #adb5bd !default;
+$gray-600: #6c757d !default;
+$gray-700: #495057 !default;
+$gray-800: #343a40 !default;
+$gray-900: #212529 !default;
+$black: #000 !default;
+
+$grays: () !default;
+$grays: map-merge((
+ "100": $gray-100,
+ "200": $gray-200,
+ "300": $gray-300,
+ "400": $gray-400,
+ "500": $gray-500,
+ "600": $gray-600,
+ "700": $gray-700,
+ "800": $gray-800,
+ "900": $gray-900
+), $grays);
+
+$blue: #007bff !default;
+$indigo: #6610f2 !default;
+$purple: #6f42c1 !default;
+$pink: #e83e8c !default;
+$red: #dc3545 !default;
+$orange: #fd7e14 !default;
+$yellow: #ffc107 !default;
+$green: #28a745 !default;
+$teal: #20c997 !default;
+$cyan: #17a2b8 !default;
+
+$colors: () !default;
+$colors: map-merge((
+ "blue": $blue,
+ "indigo": $indigo,
+ "purple": $purple,
+ "pink": $pink,
+ "red": $red,
+ "orange": $orange,
+ "yellow": $yellow,
+ "green": $green,
+ "teal": $teal,
+ "cyan": $cyan,
+ "white": $white,
+ "gray": $gray-600,
+ "gray-dark": $gray-800
+), $colors);
+
+$primary: $blue !default;
+$secondary: $gray-600 !default;
+$success: $green !default;
+$info: $cyan !default;
+$warning: $yellow !default;
+$danger: $red !default;
+$light: $gray-100 !default;
+$dark: $gray-800 !default;
+
+$theme-colors: () !default;
+$theme-colors: map-merge((
+ "primary": $primary,
+ "secondary": $secondary,
+ "success": $success,
+ "info": $info,
+ "warning": $warning,
+ "danger": $danger,
+ "light": $light,
+ "dark": $dark
+), $theme-colors);
+// stylelint-enable
+
+// Set a specific jump point for requesting color jumps
+$theme-color-interval: 8% !default;
+
+// The yiq lightness value that determines when the lightness of color changes from "dark" to "light". Acceptable values are between 0 and 255.
+$yiq-contrasted-threshold: 150 !default;
+
+// Customize the light and dark text colors for use in our YIQ color contrast function.
+$yiq-text-dark: $gray-900 !default;
+$yiq-text-light: $white !default;
+
+// Options
+//
+// Quickly modify global styling by enabling or disabling optional features.
+
+$enable-caret: true !default;
+$enable-rounded: true !default;
+$enable-shadows: false !default;
+$enable-gradients: false !default;
+$enable-transitions: true !default;
+$enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS
+$enable-grid-classes: true !default;
+$enable-print-styles: true !default;
+
+
+// Spacing
+//
+// Control the default styling of most Bootstrap elements by modifying these
+// variables. Mostly focused on spacing.
+// You can add more entries to the $spacers map, should you need more variation.
+
+// stylelint-disable
+$spacer: 1rem !default;
+$spacers: () !default;
+$spacers: map-merge((
+ 0: 0,
+ 1: ($spacer * .25),
+ 2: ($spacer * .5),
+ 3: $spacer,
+ 4: ($spacer * 1.5),
+ 5: ($spacer * 3)
+), $spacers);
+
+// This variable affects the `.h-*` and `.w-*` classes.
+$sizes: () !default;
+$sizes: map-merge((
+ 25: 25%,
+ 50: 50%,
+ 75: 75%,
+ 100: 100%,
+ auto: auto
+), $sizes);
+// stylelint-enable
+
+// Body
+//
+// Settings for the `` element.
+
+$body-bg: $white !default;
+$body-color: $gray-900 !default;
+
+// Links
+//
+// Style anchor elements.
+
+$link-color: theme-color("primary") !default;
+$link-decoration: none !default;
+$link-hover-color: darken($link-color, 15%) !default;
+$link-hover-decoration: underline !default;
+
+// Paragraphs
+//
+// Style p element.
+
+$paragraph-margin-bottom: 1rem !default;
+
+
+// Grid breakpoints
+//
+// Define the minimum dimensions at which your layout will change,
+// adapting to different screen sizes, for use in media queries.
+
+$grid-breakpoints: (
+ xs: 0,
+ sm: 576px,
+ md: 768px,
+ lg: 992px,
+ xl: 1200px
+) !default;
+
+@include _assert-ascending($grid-breakpoints, "$grid-breakpoints");
+@include _assert-starts-at-zero($grid-breakpoints);
+
+
+// Grid containers
+//
+// Define the maximum width of `.container` for different screen sizes.
+
+$container-max-widths: (
+ sm: 540px,
+ md: 720px,
+ lg: 960px,
+ xl: 1140px
+) !default;
+
+@include _assert-ascending($container-max-widths, "$container-max-widths");
+
+
+// Grid columns
+//
+// Set the number of columns and specify the width of the gutters.
+
+$grid-columns: 12 !default;
+$grid-gutter-width: 30px !default;
+
+// Components
+//
+// Define common padding and border radius sizes and more.
+
+$line-height-lg: 1.5 !default;
+$line-height-sm: 1.5 !default;
+
+$border-width: 1px !default;
+$border-color: $gray-300 !default;
+
+$border-radius: .25rem !default;
+$border-radius-lg: .3rem !default;
+$border-radius-sm: .2rem !default;
+
+$box-shadow-sm: 0 .125rem .25rem rgba($black, .075) !default;
+$box-shadow: 0 .5rem 1rem rgba($black, .15) !default;
+$box-shadow-lg: 0 1rem 3rem rgba($black, .175) !default;
+
+$component-active-color: $white !default;
+$component-active-bg: theme-color("primary") !default;
+
+$caret-width: .3em !default;
+
+$transition-base: all .2s ease-in-out !default;
+$transition-fade: opacity .15s linear !default;
+$transition-collapse: height .35s ease !default;
+
+
+// Fonts
+//
+// Font, line-height, and color for body text, headings, and more.
+
+// stylelint-disable value-keyword-case
+$font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !default;
+$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
+$font-family-base: $font-family-sans-serif !default;
+// stylelint-enable value-keyword-case
+
+$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`
+$font-size-lg: ($font-size-base * 1.25) !default;
+$font-size-sm: ($font-size-base * .875) !default;
+
+$font-weight-light: 300 !default;
+$font-weight-normal: 400 !default;
+$font-weight-bold: 700 !default;
+
+$font-weight-base: $font-weight-normal !default;
+$line-height-base: 1.5 !default;
+
+$h1-font-size: $font-size-base * 2.5 !default;
+$h2-font-size: $font-size-base * 2 !default;
+$h3-font-size: $font-size-base * 1.75 !default;
+$h4-font-size: $font-size-base * 1.5 !default;
+$h5-font-size: $font-size-base * 1.25 !default;
+$h6-font-size: $font-size-base !default;
+
+$headings-margin-bottom: ($spacer / 2) !default;
+$headings-font-family: inherit !default;
+$headings-font-weight: 500 !default;
+$headings-line-height: 1.2 !default;
+$headings-color: inherit !default;
+
+$display1-size: 6rem !default;
+$display2-size: 5.5rem !default;
+$display3-size: 4.5rem !default;
+$display4-size: 3.5rem !default;
+
+$display1-weight: 300 !default;
+$display2-weight: 300 !default;
+$display3-weight: 300 !default;
+$display4-weight: 300 !default;
+$display-line-height: $headings-line-height !default;
+
+$lead-font-size: ($font-size-base * 1.25) !default;
+$lead-font-weight: 300 !default;
+
+$small-font-size: 80% !default;
+
+$text-muted: $gray-600 !default;
+
+$blockquote-small-color: $gray-600 !default;
+$blockquote-font-size: ($font-size-base * 1.25) !default;
+
+$hr-border-color: rgba($black, .1) !default;
+$hr-border-width: $border-width !default;
+
+$mark-padding: .2em !default;
+
+$dt-font-weight: $font-weight-bold !default;
+
+$kbd-box-shadow: inset 0 -.1rem 0 rgba($black, .25) !default;
+$nested-kbd-font-weight: $font-weight-bold !default;
+
+$list-inline-padding: .5rem !default;
+
+$mark-bg: #fcf8e3 !default;
+
+$hr-margin-y: $spacer !default;
+
+
+// Tables
+//
+// Customizes the `.table` component with basic values, each used across all table variations.
+
+$table-cell-padding: .75rem !default;
+$table-cell-padding-sm: .3rem !default;
+
+$table-bg: transparent !default;
+$table-accent-bg: rgba($black, .05) !default;
+$table-hover-bg: rgba($black, .075) !default;
+$table-active-bg: $table-hover-bg !default;
+
+$table-border-width: $border-width !default;
+$table-border-color: $gray-300 !default;
+
+$table-head-bg: $gray-200 !default;
+$table-head-color: $gray-700 !default;
+
+$table-dark-bg: $gray-900 !default;
+$table-dark-accent-bg: rgba($white, .05) !default;
+$table-dark-hover-bg: rgba($white, .075) !default;
+$table-dark-border-color: lighten($gray-900, 7.5%) !default;
+$table-dark-color: $body-bg !default;
+
+$table-striped-order: odd !default;
+
+$table-caption-color: $text-muted !default;
+
+// Buttons + Forms
+//
+// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.
+
+$input-btn-padding-y: .375rem !default;
+$input-btn-padding-x: .75rem !default;
+$input-btn-line-height: $line-height-base !default;
+
+$input-btn-focus-width: .2rem !default;
+$input-btn-focus-color: rgba($component-active-bg, .25) !default;
+$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;
+
+$input-btn-padding-y-sm: .25rem !default;
+$input-btn-padding-x-sm: .5rem !default;
+$input-btn-line-height-sm: $line-height-sm !default;
+
+$input-btn-padding-y-lg: .5rem !default;
+$input-btn-padding-x-lg: 1rem !default;
+$input-btn-line-height-lg: $line-height-lg !default;
+
+$input-btn-border-width: $border-width !default;
+
+
+// Buttons
+//
+// For each of Bootstrap's buttons, define text, background, and border color.
+
+$btn-padding-y: $input-btn-padding-y !default;
+$btn-padding-x: $input-btn-padding-x !default;
+$btn-line-height: $input-btn-line-height !default;
+
+$btn-padding-y-sm: $input-btn-padding-y-sm !default;
+$btn-padding-x-sm: $input-btn-padding-x-sm !default;
+$btn-line-height-sm: $input-btn-line-height-sm !default;
+
+$btn-padding-y-lg: $input-btn-padding-y-lg !default;
+$btn-padding-x-lg: $input-btn-padding-x-lg !default;
+$btn-line-height-lg: $input-btn-line-height-lg !default;
+
+$btn-border-width: $input-btn-border-width !default;
+
+$btn-font-weight: $font-weight-normal !default;
+$btn-box-shadow: inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075) !default;
+$btn-focus-width: $input-btn-focus-width !default;
+$btn-focus-box-shadow: $input-btn-focus-box-shadow !default;
+$btn-disabled-opacity: .65 !default;
+$btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;
+
+$btn-link-disabled-color: $gray-600 !default;
+
+$btn-block-spacing-y: .5rem !default;
+
+// Allows for customizing button radius independently from global border radius
+$btn-border-radius: $border-radius !default;
+$btn-border-radius-lg: $border-radius-lg !default;
+$btn-border-radius-sm: $border-radius-sm !default;
+
+$btn-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
+
+
+// Forms
+
+$label-margin-bottom: .5rem !default;
+
+$input-padding-y: $input-btn-padding-y !default;
+$input-padding-x: $input-btn-padding-x !default;
+$input-line-height: $input-btn-line-height !default;
+
+$input-padding-y-sm: $input-btn-padding-y-sm !default;
+$input-padding-x-sm: $input-btn-padding-x-sm !default;
+$input-line-height-sm: $input-btn-line-height-sm !default;
+
+$input-padding-y-lg: $input-btn-padding-y-lg !default;
+$input-padding-x-lg: $input-btn-padding-x-lg !default;
+$input-line-height-lg: $input-btn-line-height-lg !default;
+
+$input-bg: $white !default;
+$input-disabled-bg: $gray-200 !default;
+
+$input-color: $gray-700 !default;
+$input-border-color: $gray-400 !default;
+$input-border-width: $input-btn-border-width !default;
+$input-box-shadow: inset 0 1px 1px rgba($black, .075) !default;
+
+$input-border-radius: $border-radius !default;
+$input-border-radius-lg: $border-radius-lg !default;
+$input-border-radius-sm: $border-radius-sm !default;
+
+$input-focus-bg: $input-bg !default;
+$input-focus-border-color: lighten($component-active-bg, 25%) !default;
+$input-focus-color: $input-color !default;
+$input-focus-width: $input-btn-focus-width !default;
+$input-focus-box-shadow: $input-btn-focus-box-shadow !default;
+
+$input-placeholder-color: $gray-600 !default;
+$input-plaintext-color: $body-color !default;
+
+$input-height-border: $input-border-width * 2 !default;
+
+$input-height-inner: ($font-size-base * $input-btn-line-height) + ($input-btn-padding-y * 2) !default;
+$input-height: calc(#{$input-height-inner} + #{$input-height-border}) !default;
+
+$input-height-inner-sm: ($font-size-sm * $input-btn-line-height-sm) + ($input-btn-padding-y-sm * 2) !default;
+$input-height-sm: calc(#{$input-height-inner-sm} + #{$input-height-border}) !default;
+
+$input-height-inner-lg: ($font-size-lg * $input-btn-line-height-lg) + ($input-btn-padding-y-lg * 2) !default;
+$input-height-lg: calc(#{$input-height-inner-lg} + #{$input-height-border}) !default;
+
+$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
+
+$form-text-margin-top: .25rem !default;
+
+$form-check-input-gutter: 1.25rem !default;
+$form-check-input-margin-y: .3rem !default;
+$form-check-input-margin-x: .25rem !default;
+
+$form-check-inline-margin-x: .75rem !default;
+$form-check-inline-input-margin-x: .3125rem !default;
+
+$form-group-margin-bottom: 1rem !default;
+
+$input-group-addon-color: $input-color !default;
+$input-group-addon-bg: $gray-200 !default;
+$input-group-addon-border-color: $input-border-color !default;
+
+$custom-control-gutter: 1.5rem !default;
+$custom-control-spacer-x: 1rem !default;
+
+$custom-control-indicator-size: 1rem !default;
+$custom-control-indicator-bg: $gray-300 !default;
+$custom-control-indicator-bg-size: 50% 50% !default;
+$custom-control-indicator-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;
+
+$custom-control-indicator-disabled-bg: $gray-200 !default;
+$custom-control-label-disabled-color: $gray-600 !default;
+
+$custom-control-indicator-checked-color: $component-active-color !default;
+$custom-control-indicator-checked-bg: $component-active-bg !default;
+$custom-control-indicator-checked-disabled-bg: rgba(theme-color("primary"), .5) !default;
+$custom-control-indicator-checked-box-shadow: none !default;
+
+$custom-control-indicator-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;
+
+$custom-control-indicator-active-color: $component-active-color !default;
+$custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;
+$custom-control-indicator-active-box-shadow: none !default;
+
+$custom-checkbox-indicator-border-radius: $border-radius !default;
+$custom-checkbox-indicator-icon-checked: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"), "#", "%23") !default;
+
+$custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;
+$custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;
+$custom-checkbox-indicator-icon-indeterminate: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3E%3C/svg%3E"), "#", "%23") !default;
+$custom-checkbox-indicator-indeterminate-box-shadow: none !default;
+
+$custom-radio-indicator-border-radius: 50% !default;
+$custom-radio-indicator-icon-checked: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3E%3C/svg%3E"), "#", "%23") !default;
+
+$custom-select-padding-y: .375rem !default;
+$custom-select-padding-x: .75rem !default;
+$custom-select-height: $input-height !default;
+$custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator
+$custom-select-line-height: $input-btn-line-height !default;
+$custom-select-color: $input-color !default;
+$custom-select-disabled-color: $gray-600 !default;
+$custom-select-bg: $input-bg !default;
+$custom-select-disabled-bg: $gray-200 !default;
+$custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions
+$custom-select-indicator-color: $gray-800 !default;
+$custom-select-indicator: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E"), "#", "%23") !default;
+$custom-select-border-width: $input-btn-border-width !default;
+$custom-select-border-color: $input-border-color !default;
+$custom-select-border-radius: $border-radius !default;
+
+$custom-select-focus-border-color: $input-focus-border-color !default;
+$custom-select-focus-box-shadow: inset 0 1px 2px rgba($black, .075), 0 0 5px rgba($custom-select-focus-border-color, .5) !default;
+
+$custom-select-font-size-sm: 75% !default;
+$custom-select-height-sm: $input-height-sm !default;
+
+$custom-select-font-size-lg: 125% !default;
+$custom-select-height-lg: $input-height-lg !default;
+
+$custom-range-track-width: 100% !default;
+$custom-range-track-height: .5rem !default;
+$custom-range-track-cursor: pointer !default;
+$custom-range-track-bg: $gray-300 !default;
+$custom-range-track-border-radius: 1rem !default;
+$custom-range-track-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;
+
+$custom-range-thumb-width: 1rem !default;
+$custom-range-thumb-height: $custom-range-thumb-width !default;
+$custom-range-thumb-bg: $component-active-bg !default;
+$custom-range-thumb-border: 0 !default;
+$custom-range-thumb-border-radius: 1rem !default;
+$custom-range-thumb-box-shadow: 0 .1rem .25rem rgba($black, .1) !default;
+$custom-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;
+$custom-range-thumb-active-bg: lighten($component-active-bg, 35%) !default;
+
+$custom-file-height: $input-height !default;
+$custom-file-focus-border-color: $input-focus-border-color !default;
+$custom-file-focus-box-shadow: $input-btn-focus-box-shadow !default;
+
+$custom-file-padding-y: $input-btn-padding-y !default;
+$custom-file-padding-x: $input-btn-padding-x !default;
+$custom-file-line-height: $input-btn-line-height !default;
+$custom-file-color: $input-color !default;
+$custom-file-bg: $input-bg !default;
+$custom-file-border-width: $input-btn-border-width !default;
+$custom-file-border-color: $input-border-color !default;
+$custom-file-border-radius: $input-border-radius !default;
+$custom-file-box-shadow: $input-box-shadow !default;
+$custom-file-button-color: $custom-file-color !default;
+$custom-file-button-bg: $input-group-addon-bg !default;
+$custom-file-text: (
+ en: "Browse"
+) !default;
+
+
+// Form validation
+$form-feedback-margin-top: $form-text-margin-top !default;
+$form-feedback-font-size: $small-font-size !default;
+$form-feedback-valid-color: theme-color("success") !default;
+$form-feedback-invalid-color: theme-color("danger") !default;
+
+
+// Dropdowns
+//
+// Dropdown menu container and contents.
+
+$dropdown-min-width: 10rem !default;
+$dropdown-padding-y: .5rem !default;
+$dropdown-spacer: .125rem !default;
+$dropdown-bg: $white !default;
+$dropdown-border-color: rgba($black, .15) !default;
+$dropdown-border-radius: $border-radius !default;
+$dropdown-border-width: $border-width !default;
+$dropdown-divider-bg: $gray-200 !default;
+$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
+
+$dropdown-link-color: $gray-900 !default;
+$dropdown-link-hover-color: darken($gray-900, 5%) !default;
+$dropdown-link-hover-bg: $gray-100 !default;
+
+$dropdown-link-active-color: $component-active-color !default;
+$dropdown-link-active-bg: $component-active-bg !default;
+
+$dropdown-link-disabled-color: $gray-600 !default;
+
+$dropdown-item-padding-y: .25rem !default;
+$dropdown-item-padding-x: 1.5rem !default;
+
+$dropdown-header-color: $gray-600 !default;
+
+
+// Z-index master list
+//
+// Warning: Avoid customizing these values. They're used for a bird's eye view
+// of components dependent on the z-axis and are designed to all work together.
+
+$zindex-dropdown: 1000 !default;
+$zindex-sticky: 1020 !default;
+$zindex-fixed: 1030 !default;
+$zindex-modal-backdrop: 1040 !default;
+$zindex-modal: 1050 !default;
+$zindex-popover: 1060 !default;
+$zindex-tooltip: 1070 !default;
+
+// Navs
+
+$nav-link-padding-y: .5rem !default;
+$nav-link-padding-x: 1rem !default;
+$nav-link-disabled-color: $gray-600 !default;
+
+$nav-tabs-border-color: $gray-300 !default;
+$nav-tabs-border-width: $border-width !default;
+$nav-tabs-border-radius: $border-radius !default;
+$nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color !default;
+$nav-tabs-link-active-color: $gray-700 !default;
+$nav-tabs-link-active-bg: $body-bg !default;
+$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg !default;
+
+$nav-pills-border-radius: $border-radius !default;
+$nav-pills-link-active-color: $component-active-color !default;
+$nav-pills-link-active-bg: $component-active-bg !default;
+
+$nav-divider-color: $gray-200 !default;
+$nav-divider-margin-y: ($spacer / 2) !default;
+
+// Navbar
+
+$navbar-padding-y: ($spacer / 2) !default;
+$navbar-padding-x: $spacer !default;
+
+$navbar-nav-link-padding-x: .5rem !default;
+
+$navbar-brand-font-size: $font-size-lg !default;
+// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link
+$nav-link-height: ($font-size-base * $line-height-base + $nav-link-padding-y * 2) !default;
+$navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;
+$navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) / 2 !default;
+
+$navbar-toggler-padding-y: .25rem !default;
+$navbar-toggler-padding-x: .75rem !default;
+$navbar-toggler-font-size: $font-size-lg !default;
+$navbar-toggler-border-radius: $btn-border-radius !default;
+
+$navbar-dark-color: rgba($white, .5) !default;
+$navbar-dark-hover-color: rgba($white, .75) !default;
+$navbar-dark-active-color: $white !default;
+$navbar-dark-disabled-color: rgba($white, .25) !default;
+$navbar-dark-toggler-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
+$navbar-dark-toggler-border-color: rgba($white, .1) !default;
+
+$navbar-light-color: rgba($black, .5) !default;
+$navbar-light-hover-color: rgba($black, .7) !default;
+$navbar-light-active-color: rgba($black, .9) !default;
+$navbar-light-disabled-color: rgba($black, .3) !default;
+$navbar-light-toggler-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
+$navbar-light-toggler-border-color: rgba($black, .1) !default;
+
+// Pagination
+
+$pagination-padding-y: .5rem !default;
+$pagination-padding-x: .75rem !default;
+$pagination-padding-y-sm: .25rem !default;
+$pagination-padding-x-sm: .5rem !default;
+$pagination-padding-y-lg: .75rem !default;
+$pagination-padding-x-lg: 1.5rem !default;
+$pagination-line-height: 1.25 !default;
+
+$pagination-color: $link-color !default;
+$pagination-bg: $white !default;
+$pagination-border-width: $border-width !default;
+$pagination-border-color: $gray-300 !default;
+
+$pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;
+$pagination-focus-outline: 0 !default;
+
+$pagination-hover-color: $link-hover-color !default;
+$pagination-hover-bg: $gray-200 !default;
+$pagination-hover-border-color: $gray-300 !default;
+
+$pagination-active-color: $component-active-color !default;
+$pagination-active-bg: $component-active-bg !default;
+$pagination-active-border-color: $pagination-active-bg !default;
+
+$pagination-disabled-color: $gray-600 !default;
+$pagination-disabled-bg: $white !default;
+$pagination-disabled-border-color: $gray-300 !default;
+
+
+// Jumbotron
+
+$jumbotron-padding: 2rem !default;
+$jumbotron-bg: $gray-200 !default;
+
+
+// Cards
+
+$card-spacer-y: .75rem !default;
+$card-spacer-x: 1.25rem !default;
+$card-border-width: $border-width !default;
+$card-border-radius: $border-radius !default;
+$card-border-color: rgba($black, .125) !default;
+$card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;
+$card-cap-bg: rgba($black, .03) !default;
+$card-bg: $white !default;
+
+$card-img-overlay-padding: 1.25rem !default;
+
+$card-group-margin: ($grid-gutter-width / 2) !default;
+$card-deck-margin: $card-group-margin !default;
+
+$card-columns-count: 3 !default;
+$card-columns-gap: 1.25rem !default;
+$card-columns-margin: $card-spacer-y !default;
+
+
+// Tooltips
+
+$tooltip-font-size: $font-size-sm !default;
+$tooltip-max-width: 200px !default;
+$tooltip-color: $white !default;
+$tooltip-bg: $black !default;
+$tooltip-border-radius: $border-radius !default;
+$tooltip-opacity: .9 !default;
+$tooltip-padding-y: .25rem !default;
+$tooltip-padding-x: .5rem !default;
+$tooltip-margin: 0 !default;
+
+$tooltip-arrow-width: .8rem !default;
+$tooltip-arrow-height: .4rem !default;
+$tooltip-arrow-color: $tooltip-bg !default;
+
+
+// Popovers
+
+$popover-font-size: $font-size-sm !default;
+$popover-bg: $white !default;
+$popover-max-width: 276px !default;
+$popover-border-width: $border-width !default;
+$popover-border-color: rgba($black, .2) !default;
+$popover-border-radius: $border-radius-lg !default;
+$popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;
+
+$popover-header-bg: darken($popover-bg, 3%) !default;
+$popover-header-color: $headings-color !default;
+$popover-header-padding-y: .5rem !default;
+$popover-header-padding-x: .75rem !default;
+
+$popover-body-color: $body-color !default;
+$popover-body-padding-y: $popover-header-padding-y !default;
+$popover-body-padding-x: $popover-header-padding-x !default;
+
+$popover-arrow-width: 1rem !default;
+$popover-arrow-height: .5rem !default;
+$popover-arrow-color: $popover-bg !default;
+
+$popover-arrow-outer-color: fade-in($popover-border-color, .05) !default;
+
+
+// Badges
+
+$badge-font-size: 75% !default;
+$badge-font-weight: $font-weight-bold !default;
+$badge-padding-y: .25em !default;
+$badge-padding-x: .4em !default;
+$badge-border-radius: $border-radius !default;
+
+$badge-pill-padding-x: .6em !default;
+// Use a higher than normal value to ensure completely rounded edges when
+// customizing padding or font-size on labels.
+$badge-pill-border-radius: 10rem !default;
+
+
+// Modals
+
+// Padding applied to the modal body
+$modal-inner-padding: 1rem !default;
+
+$modal-dialog-margin: .5rem !default;
+$modal-dialog-margin-y-sm-up: 1.75rem !default;
+
+$modal-title-line-height: $line-height-base !default;
+
+$modal-content-bg: $white !default;
+$modal-content-border-color: rgba($black, .2) !default;
+$modal-content-border-width: $border-width !default;
+$modal-content-border-radius: $border-radius-lg !default;
+$modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;
+$modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;
+
+$modal-backdrop-bg: $black !default;
+$modal-backdrop-opacity: .5 !default;
+$modal-header-border-color: $gray-200 !default;
+$modal-footer-border-color: $modal-header-border-color !default;
+$modal-header-border-width: $modal-content-border-width !default;
+$modal-footer-border-width: $modal-header-border-width !default;
+$modal-header-padding: 1rem !default;
+
+$modal-lg: 800px !default;
+$modal-md: 500px !default;
+$modal-sm: 300px !default;
+
+$modal-transition: transform .3s ease-out !default;
+
+
+// Alerts
+//
+// Define alert colors, border radius, and padding.
+
+$alert-padding-y: .75rem !default;
+$alert-padding-x: 1.25rem !default;
+$alert-margin-bottom: 1rem !default;
+$alert-border-radius: $border-radius !default;
+$alert-link-font-weight: $font-weight-bold !default;
+$alert-border-width: $border-width !default;
+
+$alert-bg-level: -10 !default;
+$alert-border-level: -9 !default;
+$alert-color-level: 6 !default;
+
+
+// Progress bars
+
+$progress-height: 1rem !default;
+$progress-font-size: ($font-size-base * .75) !default;
+$progress-bg: $gray-200 !default;
+$progress-border-radius: $border-radius !default;
+$progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;
+$progress-bar-color: $white !default;
+$progress-bar-bg: theme-color("primary") !default;
+$progress-bar-animation-timing: 1s linear infinite !default;
+$progress-bar-transition: width .6s ease !default;
+
+// List group
+
+$list-group-bg: $white !default;
+$list-group-border-color: rgba($black, .125) !default;
+$list-group-border-width: $border-width !default;
+$list-group-border-radius: $border-radius !default;
+
+$list-group-item-padding-y: .75rem !default;
+$list-group-item-padding-x: 1.25rem !default;
+
+$list-group-hover-bg: $gray-100 !default;
+$list-group-active-color: $component-active-color !default;
+$list-group-active-bg: $component-active-bg !default;
+$list-group-active-border-color: $list-group-active-bg !default;
+
+$list-group-disabled-color: $gray-600 !default;
+$list-group-disabled-bg: $list-group-bg !default;
+
+$list-group-action-color: $gray-700 !default;
+$list-group-action-hover-color: $list-group-action-color !default;
+
+$list-group-action-active-color: $body-color !default;
+$list-group-action-active-bg: $gray-200 !default;
+
+
+// Image thumbnails
+
+$thumbnail-padding: .25rem !default;
+$thumbnail-bg: $body-bg !default;
+$thumbnail-border-width: $border-width !default;
+$thumbnail-border-color: $gray-300 !default;
+$thumbnail-border-radius: $border-radius !default;
+$thumbnail-box-shadow: 0 1px 2px rgba($black, .075) !default;
+
+
+// Figures
+
+$figure-caption-font-size: 90% !default;
+$figure-caption-color: $gray-600 !default;
+
+
+// Breadcrumbs
+
+$breadcrumb-padding-y: .75rem !default;
+$breadcrumb-padding-x: 1rem !default;
+$breadcrumb-item-padding: .5rem !default;
+
+$breadcrumb-margin-bottom: 1rem !default;
+
+$breadcrumb-bg: $gray-200 !default;
+$breadcrumb-divider-color: $gray-600 !default;
+$breadcrumb-active-color: $gray-600 !default;
+$breadcrumb-divider: quote("/") !default;
+
+$breadcrumb-border-radius: $border-radius !default;
+
+
+// Carousel
+
+$carousel-control-color: $white !default;
+$carousel-control-width: 15% !default;
+$carousel-control-opacity: .5 !default;
+
+$carousel-indicator-width: 30px !default;
+$carousel-indicator-height: 3px !default;
+$carousel-indicator-spacer: 3px !default;
+$carousel-indicator-active-bg: $white !default;
+
+$carousel-caption-width: 70% !default;
+$carousel-caption-color: $white !default;
+
+$carousel-control-icon-width: 20px !default;
+
+$carousel-control-prev-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E"), "#", "%23") !default;
+$carousel-control-next-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E"), "#", "%23") !default;
+
+$carousel-transition: transform .6s ease !default; // Define transform transition first if using multiple transitons (e.g., `transform 2s ease, opacity .5s ease-out`)
+
+
+// Close
+
+$close-font-size: $font-size-base * 1.5 !default;
+$close-font-weight: $font-weight-bold !default;
+$close-color: $black !default;
+$close-text-shadow: 0 1px 0 $white !default;
+
+// Code
+
+$code-font-size: 87.5% !default;
+$code-color: $pink !default;
+
+$kbd-padding-y: .2rem !default;
+$kbd-padding-x: .4rem !default;
+$kbd-font-size: $code-font-size !default;
+$kbd-color: $white !default;
+$kbd-bg: $gray-900 !default;
+
+$pre-color: $gray-900 !default;
+$pre-scrollable-max-height: 340px !default;
+
+
+// Printing
+$print-page-size: a3 !default;
+$print-body-min-width: map-get($grid-breakpoints, "lg") !default;
diff --git a/vendor/assets/stylesheets/bootstrap/bootstrap-grid.scss b/vendor/assets/stylesheets/bootstrap/bootstrap-grid.scss
new file mode 100644
index 0000000..84bfe90
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/bootstrap-grid.scss
@@ -0,0 +1,32 @@
+/*!
+ * Bootstrap Grid v4.1.0 (https://getbootstrap.com/)
+ * Copyright 2011-2018 The Bootstrap Authors
+ * Copyright 2011-2018 Twitter, Inc.
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ */
+
+@at-root {
+ @-ms-viewport { width: device-width; } // stylelint-disable-line at-rule-no-vendor-prefix
+}
+
+html {
+ box-sizing: border-box;
+ -ms-overflow-style: scrollbar;
+}
+
+*,
+*::before,
+*::after {
+ box-sizing: inherit;
+}
+
+@import "functions";
+@import "variables";
+
+@import "mixins/breakpoints";
+@import "mixins/grid-framework";
+@import "mixins/grid";
+
+@import "grid";
+@import "utilities/display";
+@import "utilities/flex";
diff --git a/vendor/assets/stylesheets/bootstrap/bootstrap-reboot.scss b/vendor/assets/stylesheets/bootstrap/bootstrap-reboot.scss
new file mode 100644
index 0000000..a0feb62
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/bootstrap-reboot.scss
@@ -0,0 +1,12 @@
+/*!
+ * Bootstrap Reboot v4.1.0 (https://getbootstrap.com/)
+ * Copyright 2011-2018 The Bootstrap Authors
+ * Copyright 2011-2018 Twitter, Inc.
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
+ */
+
+@import "functions";
+@import "variables";
+@import "mixins";
+@import "reboot";
diff --git a/vendor/assets/stylesheets/bootstrap/bootstrap.scss b/vendor/assets/stylesheets/bootstrap/bootstrap.scss
new file mode 100644
index 0000000..e05ce1c
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/bootstrap.scss
@@ -0,0 +1,42 @@
+/*!
+ * Bootstrap v4.1.0 (https://getbootstrap.com/)
+ * Copyright 2011-2018 The Bootstrap Authors
+ * Copyright 2011-2018 Twitter, Inc.
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
+ */
+
+@import "functions";
+@import "variables";
+@import "mixins";
+@import "root";
+@import "reboot";
+@import "type";
+@import "images";
+@import "code";
+@import "grid";
+@import "tables";
+@import "forms";
+@import "buttons";
+@import "transitions";
+@import "dropdown";
+@import "button-group";
+@import "input-group";
+@import "custom-forms";
+@import "nav";
+@import "navbar";
+@import "card";
+@import "breadcrumb";
+@import "pagination";
+@import "badge";
+@import "jumbotron";
+@import "alert";
+@import "progress";
+@import "media";
+@import "list-group";
+@import "close";
+@import "modal";
+@import "tooltip";
+@import "popover";
+@import "carousel";
+@import "utilities";
+@import "print";
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_alert.scss b/vendor/assets/stylesheets/bootstrap/mixins/_alert.scss
new file mode 100644
index 0000000..db5a7eb
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_alert.scss
@@ -0,0 +1,13 @@
+@mixin alert-variant($background, $border, $color) {
+ color: $color;
+ @include gradient-bg($background);
+ border-color: $border;
+
+ hr {
+ border-top-color: darken($border, 5%);
+ }
+
+ .alert-link {
+ color: darken($color, 10%);
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_background-variant.scss b/vendor/assets/stylesheets/bootstrap/mixins/_background-variant.scss
new file mode 100644
index 0000000..494439d
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_background-variant.scss
@@ -0,0 +1,21 @@
+// stylelint-disable declaration-no-important
+
+// Contextual backgrounds
+
+@mixin bg-variant($parent, $color) {
+ #{$parent} {
+ background-color: $color !important;
+ }
+ a#{$parent},
+ button#{$parent} {
+ @include hover-focus {
+ background-color: darken($color, 10%) !important;
+ }
+ }
+}
+
+@mixin bg-gradient-variant($parent, $color) {
+ #{$parent} {
+ background: $color linear-gradient(180deg, mix($body-bg, $color, 15%), $color) repeat-x !important;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_badge.scss b/vendor/assets/stylesheets/bootstrap/mixins/_badge.scss
new file mode 100644
index 0000000..eeca0b4
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_badge.scss
@@ -0,0 +1,12 @@
+@mixin badge-variant($bg) {
+ color: color-yiq($bg);
+ background-color: $bg;
+
+ &[href] {
+ @include hover-focus {
+ color: color-yiq($bg);
+ text-decoration: none;
+ background-color: darken($bg, 10%);
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_border-radius.scss b/vendor/assets/stylesheets/bootstrap/mixins/_border-radius.scss
new file mode 100644
index 0000000..2024feb
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_border-radius.scss
@@ -0,0 +1,35 @@
+// Single side border-radius
+
+@mixin border-radius($radius: $border-radius) {
+ @if $enable-rounded {
+ border-radius: $radius;
+ }
+}
+
+@mixin border-top-radius($radius) {
+ @if $enable-rounded {
+ border-top-left-radius: $radius;
+ border-top-right-radius: $radius;
+ }
+}
+
+@mixin border-right-radius($radius) {
+ @if $enable-rounded {
+ border-top-right-radius: $radius;
+ border-bottom-right-radius: $radius;
+ }
+}
+
+@mixin border-bottom-radius($radius) {
+ @if $enable-rounded {
+ border-bottom-right-radius: $radius;
+ border-bottom-left-radius: $radius;
+ }
+}
+
+@mixin border-left-radius($radius) {
+ @if $enable-rounded {
+ border-top-left-radius: $radius;
+ border-bottom-left-radius: $radius;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_box-shadow.scss b/vendor/assets/stylesheets/bootstrap/mixins/_box-shadow.scss
new file mode 100644
index 0000000..b2410e5
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_box-shadow.scss
@@ -0,0 +1,5 @@
+@mixin box-shadow($shadow...) {
+ @if $enable-shadows {
+ box-shadow: $shadow;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_breakpoints.scss b/vendor/assets/stylesheets/bootstrap/mixins/_breakpoints.scss
new file mode 100644
index 0000000..d1ad684
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_breakpoints.scss
@@ -0,0 +1,123 @@
+// Breakpoint viewport sizes and media queries.
+//
+// Breakpoints are defined as a map of (name: minimum width), order from small to large:
+//
+// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)
+//
+// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.
+
+// Name of the next breakpoint, or null for the last breakpoint.
+//
+// >> breakpoint-next(sm)
+// md
+// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
+// md
+// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))
+// md
+@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {
+ $n: index($breakpoint-names, $name);
+ @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);
+}
+
+// Minimum breakpoint width. Null for the smallest (first) breakpoint.
+//
+// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
+// 576px
+@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {
+ $min: map-get($breakpoints, $name);
+ @return if($min != 0, $min, null);
+}
+
+// Maximum breakpoint width. Null for the largest (last) breakpoint.
+// The maximum value is calculated as the minimum of the next one less 0.02px
+// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.
+// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max
+// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.
+// See https://bugs.webkit.org/show_bug.cgi?id=178261
+//
+// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
+// 767.98px
+@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {
+ $next: breakpoint-next($name, $breakpoints);
+ @return if($next, breakpoint-min($next, $breakpoints) - .02px, null);
+}
+
+// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.
+// Useful for making responsive utilities.
+//
+// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
+// "" (Returns a blank string)
+// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
+// "-sm"
+@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {
+ @return if(breakpoint-min($name, $breakpoints) == null, "", "-#{$name}");
+}
+
+// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.
+// Makes the @content apply to the given breakpoint and wider.
+@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {
+ $min: breakpoint-min($name, $breakpoints);
+ @if $min {
+ @media (min-width: $min) {
+ @content;
+ }
+ } @else {
+ @content;
+ }
+}
+
+// Media of at most the maximum breakpoint width. No query for the largest breakpoint.
+// Makes the @content apply to the given breakpoint and narrower.
+@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {
+ $max: breakpoint-max($name, $breakpoints);
+ @if $max {
+ @media (max-width: $max) {
+ @content;
+ }
+ } @else {
+ @content;
+ }
+}
+
+// Media that spans multiple breakpoint widths.
+// Makes the @content apply between the min and max breakpoints
+@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {
+ $min: breakpoint-min($lower, $breakpoints);
+ $max: breakpoint-max($upper, $breakpoints);
+
+ @if $min != null and $max != null {
+ @media (min-width: $min) and (max-width: $max) {
+ @content;
+ }
+ } @else if $max == null {
+ @include media-breakpoint-up($lower, $breakpoints) {
+ @content;
+ }
+ } @else if $min == null {
+ @include media-breakpoint-down($upper, $breakpoints) {
+ @content;
+ }
+ }
+}
+
+// Media between the breakpoint's minimum and maximum widths.
+// No minimum for the smallest breakpoint, and no maximum for the largest one.
+// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.
+@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {
+ $min: breakpoint-min($name, $breakpoints);
+ $max: breakpoint-max($name, $breakpoints);
+
+ @if $min != null and $max != null {
+ @media (min-width: $min) and (max-width: $max) {
+ @content;
+ }
+ } @else if $max == null {
+ @include media-breakpoint-up($name, $breakpoints) {
+ @content;
+ }
+ } @else if $min == null {
+ @include media-breakpoint-down($name, $breakpoints) {
+ @content;
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_buttons.scss b/vendor/assets/stylesheets/bootstrap/mixins/_buttons.scss
new file mode 100644
index 0000000..06ad677
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_buttons.scss
@@ -0,0 +1,109 @@
+// Button variants
+//
+// Easily pump out default styles, as well as :hover, :focus, :active,
+// and disabled options for all buttons
+
+@mixin button-variant($background, $border, $hover-background: darken($background, 7.5%), $hover-border: darken($border, 10%), $active-background: darken($background, 10%), $active-border: darken($border, 12.5%)) {
+ color: color-yiq($background);
+ @include gradient-bg($background);
+ border-color: $border;
+ @include box-shadow($btn-box-shadow);
+
+ @include hover {
+ color: color-yiq($hover-background);
+ @include gradient-bg($hover-background);
+ border-color: $hover-border;
+ }
+
+ &:focus,
+ &.focus {
+ // Avoid using mixin so we can pass custom focus shadow properly
+ @if $enable-shadows {
+ box-shadow: $btn-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);
+ } @else {
+ box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
+ }
+ }
+
+ // Disabled comes first so active can properly restyle
+ &.disabled,
+ &:disabled {
+ color: color-yiq($background);
+ background-color: $background;
+ border-color: $border;
+ }
+
+ &:not(:disabled):not(.disabled):active,
+ &:not(:disabled):not(.disabled).active,
+ .show > &.dropdown-toggle {
+ color: color-yiq($active-background);
+ background-color: $active-background;
+ @if $enable-gradients {
+ background-image: none; // Remove the gradient for the pressed/active state
+ }
+ border-color: $active-border;
+
+ &:focus {
+ // Avoid using mixin so we can pass custom focus shadow properly
+ @if $enable-shadows {
+ box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($border, .5);
+ } @else {
+ box-shadow: 0 0 0 $btn-focus-width rgba($border, .5);
+ }
+ }
+ }
+}
+
+@mixin button-outline-variant($color, $color-hover: color-yiq($color), $active-background: $color, $active-border: $color) {
+ color: $color;
+ background-color: transparent;
+ background-image: none;
+ border-color: $color;
+
+ &:hover {
+ color: $color-hover;
+ background-color: $active-background;
+ border-color: $active-border;
+ }
+
+ &:focus,
+ &.focus {
+ box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
+ }
+
+ &.disabled,
+ &:disabled {
+ color: $color;
+ background-color: transparent;
+ }
+
+ &:not(:disabled):not(.disabled):active,
+ &:not(:disabled):not(.disabled).active,
+ .show > &.dropdown-toggle {
+ color: color-yiq($active-background);
+ background-color: $active-background;
+ border-color: $active-border;
+
+ &:focus {
+ // Avoid using mixin so we can pass custom focus shadow properly
+ @if $enable-shadows and $btn-active-box-shadow != none {
+ box-shadow: $btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($color, .5);
+ } @else {
+ box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
+ }
+ }
+ }
+}
+
+// Button sizes
+@mixin button-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {
+ padding: $padding-y $padding-x;
+ font-size: $font-size;
+ line-height: $line-height;
+ // Manually declare to provide an override to the browser default
+ @if $enable-rounded {
+ border-radius: $border-radius;
+ } @else {
+ border-radius: 0;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_caret.scss b/vendor/assets/stylesheets/bootstrap/mixins/_caret.scss
new file mode 100644
index 0000000..82aea42
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_caret.scss
@@ -0,0 +1,66 @@
+@mixin caret-down {
+ border-top: $caret-width solid;
+ border-right: $caret-width solid transparent;
+ border-bottom: 0;
+ border-left: $caret-width solid transparent;
+}
+
+@mixin caret-up {
+ border-top: 0;
+ border-right: $caret-width solid transparent;
+ border-bottom: $caret-width solid;
+ border-left: $caret-width solid transparent;
+}
+
+@mixin caret-right {
+ border-top: $caret-width solid transparent;
+ border-right: 0;
+ border-bottom: $caret-width solid transparent;
+ border-left: $caret-width solid;
+}
+
+@mixin caret-left {
+ border-top: $caret-width solid transparent;
+ border-right: $caret-width solid;
+ border-bottom: $caret-width solid transparent;
+}
+
+@mixin caret($direction: down) {
+ @if $enable-caret {
+ &::after {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ margin-left: $caret-width * .85;
+ vertical-align: $caret-width * .85;
+ content: "";
+ @if $direction == down {
+ @include caret-down;
+ } @else if $direction == up {
+ @include caret-up;
+ } @else if $direction == right {
+ @include caret-right;
+ }
+ }
+
+ @if $direction == left {
+ &::after {
+ display: none;
+ }
+
+ &::before {
+ display: inline-block;
+ width: 0;
+ height: 0;
+ margin-right: $caret-width * .85;
+ vertical-align: $caret-width * .85;
+ content: "";
+ @include caret-left;
+ }
+ }
+
+ &:empty::after {
+ margin-left: 0;
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_clearfix.scss b/vendor/assets/stylesheets/bootstrap/mixins/_clearfix.scss
new file mode 100644
index 0000000..11a977b
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_clearfix.scss
@@ -0,0 +1,7 @@
+@mixin clearfix() {
+ &::after {
+ display: block;
+ clear: both;
+ content: "";
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_float.scss b/vendor/assets/stylesheets/bootstrap/mixins/_float.scss
new file mode 100644
index 0000000..48fa8b6
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_float.scss
@@ -0,0 +1,11 @@
+// stylelint-disable declaration-no-important
+
+@mixin float-left {
+ float: left !important;
+}
+@mixin float-right {
+ float: right !important;
+}
+@mixin float-none {
+ float: none !important;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_forms.scss b/vendor/assets/stylesheets/bootstrap/mixins/_forms.scss
new file mode 100644
index 0000000..dec18ba
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_forms.scss
@@ -0,0 +1,137 @@
+// Form control focus state
+//
+// Generate a customized focus state and for any input with the specified color,
+// which defaults to the `$input-focus-border-color` variable.
+//
+// We highly encourage you to not customize the default value, but instead use
+// this to tweak colors on an as-needed basis. This aesthetic change is based on
+// WebKit's default styles, but applicable to a wider range of browsers. Its
+// usability and accessibility should be taken into account with any change.
+//
+// Example usage: change the default blue border and shadow to white for better
+// contrast against a dark gray background.
+@mixin form-control-focus() {
+ &:focus {
+ color: $input-focus-color;
+ background-color: $input-focus-bg;
+ border-color: $input-focus-border-color;
+ outline: 0;
+ // Avoid using mixin so we can pass custom focus shadow properly
+ @if $enable-shadows {
+ box-shadow: $input-box-shadow, $input-focus-box-shadow;
+ } @else {
+ box-shadow: $input-focus-box-shadow;
+ }
+ }
+}
+
+
+@mixin form-validation-state($state, $color) {
+ .#{$state}-feedback {
+ display: none;
+ width: 100%;
+ margin-top: $form-feedback-margin-top;
+ font-size: $form-feedback-font-size;
+ color: $color;
+ }
+
+ .#{$state}-tooltip {
+ position: absolute;
+ top: 100%;
+ z-index: 5;
+ display: none;
+ max-width: 100%; // Contain to parent when possible
+ padding: .5rem;
+ margin-top: .1rem;
+ font-size: .875rem;
+ line-height: 1;
+ color: $white;
+ background-color: rgba($color, .8);
+ border-radius: .2rem;
+ }
+
+ .form-control,
+ .custom-select {
+ .was-validated &:#{$state},
+ &.is-#{$state} {
+ border-color: $color;
+
+ &:focus {
+ border-color: $color;
+ box-shadow: 0 0 0 $input-focus-width rgba($color, .25);
+ }
+
+ ~ .#{$state}-feedback,
+ ~ .#{$state}-tooltip {
+ display: block;
+ }
+ }
+ }
+
+ .form-check-input {
+ .was-validated &:#{$state},
+ &.is-#{$state} {
+ ~ .form-check-label {
+ color: $color;
+ }
+
+ ~ .#{$state}-feedback,
+ ~ .#{$state}-tooltip {
+ display: block;
+ }
+ }
+ }
+
+ .custom-control-input {
+ .was-validated &:#{$state},
+ &.is-#{$state} {
+ ~ .custom-control-label {
+ color: $color;
+
+ &::before {
+ background-color: lighten($color, 25%);
+ }
+ }
+
+ ~ .#{$state}-feedback,
+ ~ .#{$state}-tooltip {
+ display: block;
+ }
+
+ &:checked {
+ ~ .custom-control-label::before {
+ @include gradient-bg(lighten($color, 10%));
+ }
+ }
+
+ &:focus {
+ ~ .custom-control-label::before {
+ box-shadow: 0 0 0 1px $body-bg, 0 0 0 $input-focus-width rgba($color, .25);
+ }
+ }
+ }
+ }
+
+ // custom file
+ .custom-file-input {
+ .was-validated &:#{$state},
+ &.is-#{$state} {
+ ~ .custom-file-label {
+ border-color: $color;
+
+ &::before { border-color: inherit; }
+ }
+
+ ~ .#{$state}-feedback,
+ ~ .#{$state}-tooltip {
+ display: block;
+ }
+
+ &:focus {
+ ~ .custom-file-label {
+ box-shadow: 0 0 0 $input-focus-width rgba($color, .25);
+ }
+ }
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_gradients.scss b/vendor/assets/stylesheets/bootstrap/mixins/_gradients.scss
new file mode 100644
index 0000000..88c4d64
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_gradients.scss
@@ -0,0 +1,45 @@
+// Gradients
+
+@mixin gradient-bg($color) {
+ @if $enable-gradients {
+ background: $color linear-gradient(180deg, mix($body-bg, $color, 15%), $color) repeat-x;
+ } @else {
+ background-color: $color;
+ }
+}
+
+// Horizontal gradient, from left to right
+//
+// Creates two color stops, start and end, by specifying a color and position for each color stop.
+@mixin gradient-x($start-color: $gray-700, $end-color: $gray-800, $start-percent: 0%, $end-percent: 100%) {
+ background-image: linear-gradient(to right, $start-color $start-percent, $end-color $end-percent);
+ background-repeat: repeat-x;
+}
+
+// Vertical gradient, from top to bottom
+//
+// Creates two color stops, start and end, by specifying a color and position for each color stop.
+@mixin gradient-y($start-color: $gray-700, $end-color: $gray-800, $start-percent: 0%, $end-percent: 100%) {
+ background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent);
+ background-repeat: repeat-x;
+}
+
+@mixin gradient-directional($start-color: $gray-700, $end-color: $gray-800, $deg: 45deg) {
+ background-image: linear-gradient($deg, $start-color, $end-color);
+ background-repeat: repeat-x;
+}
+@mixin gradient-x-three-colors($start-color: $blue, $mid-color: $purple, $color-stop: 50%, $end-color: $red) {
+ background-image: linear-gradient(to right, $start-color, $mid-color $color-stop, $end-color);
+ background-repeat: no-repeat;
+}
+@mixin gradient-y-three-colors($start-color: $blue, $mid-color: $purple, $color-stop: 50%, $end-color: $red) {
+ background-image: linear-gradient($start-color, $mid-color $color-stop, $end-color);
+ background-repeat: no-repeat;
+}
+@mixin gradient-radial($inner-color: $gray-700, $outer-color: $gray-800) {
+ background-image: radial-gradient(circle, $inner-color, $outer-color);
+ background-repeat: no-repeat;
+}
+@mixin gradient-striped($color: rgba($white, .15), $angle: 45deg) {
+ background-image: linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_grid-framework.scss b/vendor/assets/stylesheets/bootstrap/mixins/_grid-framework.scss
new file mode 100644
index 0000000..7b37f86
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_grid-framework.scss
@@ -0,0 +1,67 @@
+// Framework grid generation
+//
+// Used only by Bootstrap to generate the correct number of grid classes given
+// any value of `$grid-columns`.
+
+@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {
+ // Common properties for all breakpoints
+ %grid-column {
+ position: relative;
+ width: 100%;
+ min-height: 1px; // Prevent columns from collapsing when empty
+ padding-right: ($gutter / 2);
+ padding-left: ($gutter / 2);
+ }
+
+ @each $breakpoint in map-keys($breakpoints) {
+ $infix: breakpoint-infix($breakpoint, $breakpoints);
+
+ // Allow columns to stretch full width below their breakpoints
+ @for $i from 1 through $columns {
+ .col#{$infix}-#{$i} {
+ @extend %grid-column;
+ }
+ }
+ .col#{$infix},
+ .col#{$infix}-auto {
+ @extend %grid-column;
+ }
+
+ @include media-breakpoint-up($breakpoint, $breakpoints) {
+ // Provide basic `.col-{bp}` classes for equal-width flexbox columns
+ .col#{$infix} {
+ flex-basis: 0;
+ flex-grow: 1;
+ max-width: 100%;
+ }
+ .col#{$infix}-auto {
+ flex: 0 0 auto;
+ width: auto;
+ max-width: none; // Reset earlier grid tiers
+ }
+
+ @for $i from 1 through $columns {
+ .col#{$infix}-#{$i} {
+ @include make-col($i, $columns);
+ }
+ }
+
+ .order#{$infix}-first { order: -1; }
+
+ .order#{$infix}-last { order: $columns + 1; }
+
+ @for $i from 0 through $columns {
+ .order#{$infix}-#{$i} { order: $i; }
+ }
+
+ // `$columns - 1` because offsetting by the width of an entire row isn't possible
+ @for $i from 0 through ($columns - 1) {
+ @if not ($infix == "" and $i == 0) { // Avoid emitting useless .offset-0
+ .offset#{$infix}-#{$i} {
+ @include make-col-offset($i, $columns);
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_grid.scss b/vendor/assets/stylesheets/bootstrap/mixins/_grid.scss
new file mode 100644
index 0000000..b75ebcb
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_grid.scss
@@ -0,0 +1,52 @@
+/// Grid system
+//
+// Generate semantic grid columns with these mixins.
+
+@mixin make-container() {
+ width: 100%;
+ padding-right: ($grid-gutter-width / 2);
+ padding-left: ($grid-gutter-width / 2);
+ margin-right: auto;
+ margin-left: auto;
+}
+
+
+// For each breakpoint, define the maximum width of the container in a media query
+@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {
+ @each $breakpoint, $container-max-width in $max-widths {
+ @include media-breakpoint-up($breakpoint, $breakpoints) {
+ max-width: $container-max-width;
+ }
+ }
+}
+
+@mixin make-row() {
+ display: flex;
+ flex-wrap: wrap;
+ margin-right: ($grid-gutter-width / -2);
+ margin-left: ($grid-gutter-width / -2);
+}
+
+@mixin make-col-ready() {
+ position: relative;
+ // Prevent columns from becoming too narrow when at smaller grid tiers by
+ // always setting `width: 100%;`. This works because we use `flex` values
+ // later on to override this initial width.
+ width: 100%;
+ min-height: 1px; // Prevent collapsing
+ padding-right: ($grid-gutter-width / 2);
+ padding-left: ($grid-gutter-width / 2);
+}
+
+@mixin make-col($size, $columns: $grid-columns) {
+ flex: 0 0 percentage($size / $columns);
+ // Add a `max-width` to ensure content within each column does not blow out
+ // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari
+ // do not appear to require this.
+ max-width: percentage($size / $columns);
+}
+
+@mixin make-col-offset($size, $columns: $grid-columns) {
+ $num: $size / $columns;
+ margin-left: if($num == 0, 0, percentage($num));
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_hover.scss b/vendor/assets/stylesheets/bootstrap/mixins/_hover.scss
new file mode 100644
index 0000000..57823e3
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_hover.scss
@@ -0,0 +1,37 @@
+// Hover mixin and `$enable-hover-media-query` are deprecated.
+//
+// Origally added during our alphas and maintained during betas, this mixin was
+// designed to prevent `:hover` stickiness on iOS-an issue where hover styles
+// would persist after initial touch.
+//
+// For backward compatibility, we've kept these mixins and updated them to
+// always return their regular psuedo-classes instead of a shimmed media query.
+//
+// Issue: https://github.com/twbs/bootstrap/issues/25195
+
+@mixin hover {
+ &:hover { @content; }
+}
+
+@mixin hover-focus {
+ &:hover,
+ &:focus {
+ @content;
+ }
+}
+
+@mixin plain-hover-focus {
+ &,
+ &:hover,
+ &:focus {
+ @content;
+ }
+}
+
+@mixin hover-focus-active {
+ &:hover,
+ &:focus,
+ &:active {
+ @content;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_image.scss b/vendor/assets/stylesheets/bootstrap/mixins/_image.scss
new file mode 100644
index 0000000..0544f0d
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_image.scss
@@ -0,0 +1,36 @@
+// Image Mixins
+// - Responsive image
+// - Retina image
+
+
+// Responsive image
+//
+// Keep images from scaling beyond the width of their parents.
+
+@mixin img-fluid {
+ // Part 1: Set a maximum relative to the parent
+ max-width: 100%;
+ // Part 2: Override the height to auto, otherwise images will be stretched
+ // when setting a width and height attribute on the img element.
+ height: auto;
+}
+
+
+// Retina image
+//
+// Short retina mixin for setting background-image and -size.
+
+// stylelint-disable indentation, media-query-list-comma-newline-after
+@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
+ background-image: url($file-1x);
+
+ // Autoprefixer takes care of adding -webkit-min-device-pixel-ratio and -o-min-device-pixel-ratio,
+ // but doesn't convert dppx=>dpi.
+ // There's no such thing as unprefixed min-device-pixel-ratio since it's nonstandard.
+ // Compatibility info: https://caniuse.com/#feat=css-media-resolution
+ @media only screen and (min-resolution: 192dpi), // IE9-11 don't support dppx
+ only screen and (min-resolution: 2dppx) { // Standardized
+ background-image: url($file-2x);
+ background-size: $width-1x $height-1x;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_list-group.scss b/vendor/assets/stylesheets/bootstrap/mixins/_list-group.scss
new file mode 100644
index 0000000..cd47a4e
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_list-group.scss
@@ -0,0 +1,21 @@
+// List Groups
+
+@mixin list-group-item-variant($state, $background, $color) {
+ .list-group-item-#{$state} {
+ color: $color;
+ background-color: $background;
+
+ &.list-group-item-action {
+ @include hover-focus {
+ color: $color;
+ background-color: darken($background, 5%);
+ }
+
+ &.active {
+ color: $white;
+ background-color: $color;
+ border-color: $color;
+ }
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_lists.scss b/vendor/assets/stylesheets/bootstrap/mixins/_lists.scss
new file mode 100644
index 0000000..2518562
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_lists.scss
@@ -0,0 +1,7 @@
+// Lists
+
+// Unstyled keeps list items block level, just removes default browser padding and list-style
+@mixin list-unstyled {
+ padding-left: 0;
+ list-style: none;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_nav-divider.scss b/vendor/assets/stylesheets/bootstrap/mixins/_nav-divider.scss
new file mode 100644
index 0000000..4fb37b6
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_nav-divider.scss
@@ -0,0 +1,10 @@
+// Horizontal dividers
+//
+// Dividers (basically an hr) within dropdowns and nav lists
+
+@mixin nav-divider($color: $nav-divider-color, $margin-y: $nav-divider-margin-y) {
+ height: 0;
+ margin: $margin-y 0;
+ overflow: hidden;
+ border-top: 1px solid $color;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_pagination.scss b/vendor/assets/stylesheets/bootstrap/mixins/_pagination.scss
new file mode 100644
index 0000000..ff36eb6
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_pagination.scss
@@ -0,0 +1,22 @@
+// Pagination
+
+@mixin pagination-size($padding-y, $padding-x, $font-size, $line-height, $border-radius) {
+ .page-link {
+ padding: $padding-y $padding-x;
+ font-size: $font-size;
+ line-height: $line-height;
+ }
+
+ .page-item {
+ &:first-child {
+ .page-link {
+ @include border-left-radius($border-radius);
+ }
+ }
+ &:last-child {
+ .page-link {
+ @include border-right-radius($border-radius);
+ }
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_reset-text.scss b/vendor/assets/stylesheets/bootstrap/mixins/_reset-text.scss
new file mode 100644
index 0000000..71edb00
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_reset-text.scss
@@ -0,0 +1,17 @@
+@mixin reset-text {
+ font-family: $font-family-base;
+ // We deliberately do NOT reset font-size or word-wrap.
+ font-style: normal;
+ font-weight: $font-weight-normal;
+ line-height: $line-height-base;
+ text-align: left; // Fallback for where `start` is not supported
+ text-align: start; // stylelint-disable-line declaration-block-no-duplicate-properties
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-break: normal;
+ word-spacing: normal;
+ white-space: normal;
+ line-break: auto;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_resize.scss b/vendor/assets/stylesheets/bootstrap/mixins/_resize.scss
new file mode 100644
index 0000000..66f233a
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_resize.scss
@@ -0,0 +1,6 @@
+// Resize anything
+
+@mixin resizable($direction) {
+ overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible`
+ resize: $direction; // Options: horizontal, vertical, both
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_screen-reader.scss b/vendor/assets/stylesheets/bootstrap/mixins/_screen-reader.scss
new file mode 100644
index 0000000..812591b
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_screen-reader.scss
@@ -0,0 +1,33 @@
+// Only display content to screen readers
+//
+// See: https://a11yproject.com/posts/how-to-hide-content/
+// See: https://hugogiraudel.com/2016/10/13/css-hide-and-seek/
+
+@mixin sr-only {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ padding: 0;
+ overflow: hidden;
+ clip: rect(0, 0, 0, 0);
+ white-space: nowrap;
+ border: 0;
+}
+
+// Use in conjunction with .sr-only to only display content when it's focused.
+//
+// Useful for "Skip to main content" links; see https://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
+//
+// Credit: HTML5 Boilerplate
+
+@mixin sr-only-focusable {
+ &:active,
+ &:focus {
+ position: static;
+ width: auto;
+ height: auto;
+ overflow: visible;
+ clip: auto;
+ white-space: normal;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_size.scss b/vendor/assets/stylesheets/bootstrap/mixins/_size.scss
new file mode 100644
index 0000000..b9dd48e
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_size.scss
@@ -0,0 +1,6 @@
+// Sizing shortcuts
+
+@mixin size($width, $height: $width) {
+ width: $width;
+ height: $height;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_table-row.scss b/vendor/assets/stylesheets/bootstrap/mixins/_table-row.scss
new file mode 100644
index 0000000..84f1d30
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_table-row.scss
@@ -0,0 +1,30 @@
+// Tables
+
+@mixin table-row-variant($state, $background) {
+ // Exact selectors below required to override `.table-striped` and prevent
+ // inheritance to nested tables.
+ .table-#{$state} {
+ &,
+ > th,
+ > td {
+ background-color: $background;
+ }
+ }
+
+ // Hover states for `.table-hover`
+ // Note: this is not available for cells or rows within `thead` or `tfoot`.
+ .table-hover {
+ $hover-background: darken($background, 5%);
+
+ .table-#{$state} {
+ @include hover {
+ background-color: $hover-background;
+
+ > td,
+ > th {
+ background-color: $hover-background;
+ }
+ }
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss b/vendor/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss
new file mode 100644
index 0000000..58db3e0
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_text-emphasis.scss
@@ -0,0 +1,14 @@
+// stylelint-disable declaration-no-important
+
+// Typography
+
+@mixin text-emphasis-variant($parent, $color) {
+ #{$parent} {
+ color: $color !important;
+ }
+ a#{$parent} {
+ @include hover-focus {
+ color: darken($color, 10%) !important;
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_text-hide.scss b/vendor/assets/stylesheets/bootstrap/mixins/_text-hide.scss
new file mode 100644
index 0000000..4b8f218
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_text-hide.scss
@@ -0,0 +1,11 @@
+// CSS image replacement
+@mixin text-hide() {
+ // stylelint-disable-next-line font-family-no-missing-generic-family-keyword
+ font: 0/0 a;
+ color: transparent;
+ text-shadow: none;
+ background-color: transparent;
+ border: 0;
+
+ @warn "The `text-hide()` mixin has been deprecated as of v4.1.0. It will be removed entirely in v5.";
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_text-truncate.scss b/vendor/assets/stylesheets/bootstrap/mixins/_text-truncate.scss
new file mode 100644
index 0000000..3504bb1
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_text-truncate.scss
@@ -0,0 +1,8 @@
+// Text truncate
+// Requires inline-block or block for proper styling
+
+@mixin text-truncate() {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_transition.scss b/vendor/assets/stylesheets/bootstrap/mixins/_transition.scss
new file mode 100644
index 0000000..f853821
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_transition.scss
@@ -0,0 +1,13 @@
+@mixin transition($transition...) {
+ @if $enable-transitions {
+ @if length($transition) == 0 {
+ transition: $transition-base;
+ } @else {
+ transition: $transition;
+ }
+ }
+
+ @media screen and (prefers-reduced-motion: reduce) {
+ transition: none;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/mixins/_visibility.scss b/vendor/assets/stylesheets/bootstrap/mixins/_visibility.scss
new file mode 100644
index 0000000..fe523d0
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/mixins/_visibility.scss
@@ -0,0 +1,7 @@
+// stylelint-disable declaration-no-important
+
+// Visibility
+
+@mixin invisible($visibility) {
+ visibility: $visibility !important;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_align.scss b/vendor/assets/stylesheets/bootstrap/utilities/_align.scss
new file mode 100644
index 0000000..8b7df9f
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_align.scss
@@ -0,0 +1,8 @@
+// stylelint-disable declaration-no-important
+
+.align-baseline { vertical-align: baseline !important; } // Browser default
+.align-top { vertical-align: top !important; }
+.align-middle { vertical-align: middle !important; }
+.align-bottom { vertical-align: bottom !important; }
+.align-text-bottom { vertical-align: text-bottom !important; }
+.align-text-top { vertical-align: text-top !important; }
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_background.scss b/vendor/assets/stylesheets/bootstrap/utilities/_background.scss
new file mode 100644
index 0000000..1f18b2f
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_background.scss
@@ -0,0 +1,19 @@
+// stylelint-disable declaration-no-important
+
+@each $color, $value in $theme-colors {
+ @include bg-variant(".bg-#{$color}", $value);
+}
+
+@if $enable-gradients {
+ @each $color, $value in $theme-colors {
+ @include bg-gradient-variant(".bg-gradient-#{$color}", $value);
+ }
+}
+
+.bg-white {
+ background-color: $white !important;
+}
+
+.bg-transparent {
+ background-color: transparent !important;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_borders.scss b/vendor/assets/stylesheets/bootstrap/utilities/_borders.scss
new file mode 100644
index 0000000..b8832ef
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_borders.scss
@@ -0,0 +1,59 @@
+// stylelint-disable declaration-no-important
+
+//
+// Border
+//
+
+.border { border: $border-width solid $border-color !important; }
+.border-top { border-top: $border-width solid $border-color !important; }
+.border-right { border-right: $border-width solid $border-color !important; }
+.border-bottom { border-bottom: $border-width solid $border-color !important; }
+.border-left { border-left: $border-width solid $border-color !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; }
+
+@each $color, $value in $theme-colors {
+ .border-#{$color} {
+ border-color: $value !important;
+ }
+}
+
+.border-white {
+ border-color: $white !important;
+}
+
+//
+// Border-radius
+//
+
+.rounded {
+ border-radius: $border-radius !important;
+}
+.rounded-top {
+ border-top-left-radius: $border-radius !important;
+ border-top-right-radius: $border-radius !important;
+}
+.rounded-right {
+ border-top-right-radius: $border-radius !important;
+ border-bottom-right-radius: $border-radius !important;
+}
+.rounded-bottom {
+ border-bottom-right-radius: $border-radius !important;
+ border-bottom-left-radius: $border-radius !important;
+}
+.rounded-left {
+ border-top-left-radius: $border-radius !important;
+ border-bottom-left-radius: $border-radius !important;
+}
+
+.rounded-circle {
+ border-radius: 50% !important;
+}
+
+.rounded-0 {
+ border-radius: 0 !important;
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_clearfix.scss b/vendor/assets/stylesheets/bootstrap/utilities/_clearfix.scss
new file mode 100644
index 0000000..e92522a
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_clearfix.scss
@@ -0,0 +1,3 @@
+.clearfix {
+ @include clearfix();
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_display.scss b/vendor/assets/stylesheets/bootstrap/utilities/_display.scss
new file mode 100644
index 0000000..20aeeb5
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_display.scss
@@ -0,0 +1,38 @@
+// stylelint-disable declaration-no-important
+
+//
+// Utilities for common `display` values
+//
+
+@each $breakpoint in map-keys($grid-breakpoints) {
+ @include media-breakpoint-up($breakpoint) {
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
+
+ .d#{$infix}-none { display: none !important; }
+ .d#{$infix}-inline { display: inline !important; }
+ .d#{$infix}-inline-block { display: inline-block !important; }
+ .d#{$infix}-block { display: block !important; }
+ .d#{$infix}-table { display: table !important; }
+ .d#{$infix}-table-row { display: table-row !important; }
+ .d#{$infix}-table-cell { display: table-cell !important; }
+ .d#{$infix}-flex { display: flex !important; }
+ .d#{$infix}-inline-flex { display: inline-flex !important; }
+ }
+}
+
+
+//
+// Utilities for toggling `display` in print
+//
+
+@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; }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_embed.scss b/vendor/assets/stylesheets/bootstrap/utilities/_embed.scss
new file mode 100644
index 0000000..d3362b6
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_embed.scss
@@ -0,0 +1,52 @@
+// Credit: Nicolas Gallagher and SUIT CSS.
+
+.embed-responsive {
+ position: relative;
+ display: block;
+ width: 100%;
+ padding: 0;
+ overflow: hidden;
+
+ &::before {
+ display: block;
+ content: "";
+ }
+
+ .embed-responsive-item,
+ iframe,
+ embed,
+ object,
+ video {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ border: 0;
+ }
+}
+
+.embed-responsive-21by9 {
+ &::before {
+ padding-top: percentage(9 / 21);
+ }
+}
+
+.embed-responsive-16by9 {
+ &::before {
+ padding-top: percentage(9 / 16);
+ }
+}
+
+.embed-responsive-4by3 {
+ &::before {
+ padding-top: percentage(3 / 4);
+ }
+}
+
+.embed-responsive-1by1 {
+ &::before {
+ padding-top: percentage(1 / 1);
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_flex.scss b/vendor/assets/stylesheets/bootstrap/utilities/_flex.scss
new file mode 100644
index 0000000..3d4266e
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_flex.scss
@@ -0,0 +1,51 @@
+// stylelint-disable declaration-no-important
+
+// Flex variation
+//
+// Custom styles for additional flex alignment options.
+
+@each $breakpoint in map-keys($grid-breakpoints) {
+ @include media-breakpoint-up($breakpoint) {
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
+
+ .flex#{$infix}-row { flex-direction: row !important; }
+ .flex#{$infix}-column { flex-direction: column !important; }
+ .flex#{$infix}-row-reverse { flex-direction: row-reverse !important; }
+ .flex#{$infix}-column-reverse { flex-direction: column-reverse !important; }
+
+ .flex#{$infix}-wrap { flex-wrap: wrap !important; }
+ .flex#{$infix}-nowrap { flex-wrap: nowrap !important; }
+ .flex#{$infix}-wrap-reverse { flex-wrap: wrap-reverse !important; }
+ .flex#{$infix}-fill { flex: 1 1 auto !important; }
+ .flex#{$infix}-grow-0 { flex-grow: 0 !important; }
+ .flex#{$infix}-grow-1 { flex-grow: 1 !important; }
+ .flex#{$infix}-shrink-0 { flex-shrink: 0 !important; }
+ .flex#{$infix}-shrink-1 { flex-shrink: 1 !important; }
+
+ .justify-content#{$infix}-start { justify-content: flex-start !important; }
+ .justify-content#{$infix}-end { justify-content: flex-end !important; }
+ .justify-content#{$infix}-center { justify-content: center !important; }
+ .justify-content#{$infix}-between { justify-content: space-between !important; }
+ .justify-content#{$infix}-around { justify-content: space-around !important; }
+
+ .align-items#{$infix}-start { align-items: flex-start !important; }
+ .align-items#{$infix}-end { align-items: flex-end !important; }
+ .align-items#{$infix}-center { align-items: center !important; }
+ .align-items#{$infix}-baseline { align-items: baseline !important; }
+ .align-items#{$infix}-stretch { align-items: stretch !important; }
+
+ .align-content#{$infix}-start { align-content: flex-start !important; }
+ .align-content#{$infix}-end { align-content: flex-end !important; }
+ .align-content#{$infix}-center { align-content: center !important; }
+ .align-content#{$infix}-between { align-content: space-between !important; }
+ .align-content#{$infix}-around { align-content: space-around !important; }
+ .align-content#{$infix}-stretch { align-content: stretch !important; }
+
+ .align-self#{$infix}-auto { align-self: auto !important; }
+ .align-self#{$infix}-start { align-self: flex-start !important; }
+ .align-self#{$infix}-end { align-self: flex-end !important; }
+ .align-self#{$infix}-center { align-self: center !important; }
+ .align-self#{$infix}-baseline { align-self: baseline !important; }
+ .align-self#{$infix}-stretch { align-self: stretch !important; }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_float.scss b/vendor/assets/stylesheets/bootstrap/utilities/_float.scss
new file mode 100644
index 0000000..01655e9
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_float.scss
@@ -0,0 +1,9 @@
+@each $breakpoint in map-keys($grid-breakpoints) {
+ @include media-breakpoint-up($breakpoint) {
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
+
+ .float#{$infix}-left { @include float-left; }
+ .float#{$infix}-right { @include float-right; }
+ .float#{$infix}-none { @include float-none; }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_position.scss b/vendor/assets/stylesheets/bootstrap/utilities/_position.scss
new file mode 100644
index 0000000..9ecdeeb
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_position.scss
@@ -0,0 +1,37 @@
+// stylelint-disable declaration-no-important
+
+// Common values
+
+// Sass list not in variables since it's not intended for customization.
+// stylelint-disable-next-line scss/dollar-variable-default
+$positions: static, relative, absolute, fixed, sticky;
+
+@each $position in $positions {
+ .position-#{$position} { position: $position !important; }
+}
+
+// Shorthand
+
+.fixed-top {
+ position: fixed;
+ top: 0;
+ right: 0;
+ left: 0;
+ z-index: $zindex-fixed;
+}
+
+.fixed-bottom {
+ position: fixed;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: $zindex-fixed;
+}
+
+.sticky-top {
+ @supports (position: sticky) {
+ position: sticky;
+ top: 0;
+ z-index: $zindex-sticky;
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_screenreaders.scss b/vendor/assets/stylesheets/bootstrap/utilities/_screenreaders.scss
new file mode 100644
index 0000000..9f26fde
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_screenreaders.scss
@@ -0,0 +1,11 @@
+//
+// Screenreaders
+//
+
+.sr-only {
+ @include sr-only();
+}
+
+.sr-only-focusable {
+ @include sr-only-focusable();
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_shadows.scss b/vendor/assets/stylesheets/bootstrap/utilities/_shadows.scss
new file mode 100644
index 0000000..f5d03fc
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_shadows.scss
@@ -0,0 +1,6 @@
+// stylelint-disable declaration-no-important
+
+.shadow-sm { box-shadow: $box-shadow-sm !important; }
+.shadow { box-shadow: $box-shadow !important; }
+.shadow-lg { box-shadow: $box-shadow-lg !important; }
+.shadow-none { box-shadow: none !important; }
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_sizing.scss b/vendor/assets/stylesheets/bootstrap/utilities/_sizing.scss
new file mode 100644
index 0000000..e95a4db
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_sizing.scss
@@ -0,0 +1,12 @@
+// stylelint-disable declaration-no-important
+
+// Width and height
+
+@each $prop, $abbrev in (width: w, height: h) {
+ @each $size, $length in $sizes {
+ .#{$abbrev}-#{$size} { #{$prop}: $length !important; }
+ }
+}
+
+.mw-100 { max-width: 100% !important; }
+.mh-100 { max-height: 100% !important; }
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_spacing.scss b/vendor/assets/stylesheets/bootstrap/utilities/_spacing.scss
new file mode 100644
index 0000000..b2e2354
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_spacing.scss
@@ -0,0 +1,51 @@
+// stylelint-disable declaration-no-important
+
+// Margin and Padding
+
+@each $breakpoint in map-keys($grid-breakpoints) {
+ @include media-breakpoint-up($breakpoint) {
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
+
+ @each $prop, $abbrev in (margin: m, padding: p) {
+ @each $size, $length in $spacers {
+
+ .#{$abbrev}#{$infix}-#{$size} { #{$prop}: $length !important; }
+ .#{$abbrev}t#{$infix}-#{$size},
+ .#{$abbrev}y#{$infix}-#{$size} {
+ #{$prop}-top: $length !important;
+ }
+ .#{$abbrev}r#{$infix}-#{$size},
+ .#{$abbrev}x#{$infix}-#{$size} {
+ #{$prop}-right: $length !important;
+ }
+ .#{$abbrev}b#{$infix}-#{$size},
+ .#{$abbrev}y#{$infix}-#{$size} {
+ #{$prop}-bottom: $length !important;
+ }
+ .#{$abbrev}l#{$infix}-#{$size},
+ .#{$abbrev}x#{$infix}-#{$size} {
+ #{$prop}-left: $length !important;
+ }
+ }
+ }
+
+ // Some special margin utils
+ .m#{$infix}-auto { margin: auto !important; }
+ .mt#{$infix}-auto,
+ .my#{$infix}-auto {
+ margin-top: auto !important;
+ }
+ .mr#{$infix}-auto,
+ .mx#{$infix}-auto {
+ margin-right: auto !important;
+ }
+ .mb#{$infix}-auto,
+ .my#{$infix}-auto {
+ margin-bottom: auto !important;
+ }
+ .ml#{$infix}-auto,
+ .mx#{$infix}-auto {
+ margin-left: auto !important;
+ }
+ }
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_text.scss b/vendor/assets/stylesheets/bootstrap/utilities/_text.scss
new file mode 100644
index 0000000..4f6eba5
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_text.scss
@@ -0,0 +1,58 @@
+// stylelint-disable declaration-no-important
+
+//
+// Text
+//
+
+.text-monospace { font-family: $font-family-monospace; }
+
+// Alignment
+
+.text-justify { text-align: justify !important; }
+.text-nowrap { white-space: nowrap !important; }
+.text-truncate { @include text-truncate; }
+
+// Responsive alignment
+
+@each $breakpoint in map-keys($grid-breakpoints) {
+ @include media-breakpoint-up($breakpoint) {
+ $infix: breakpoint-infix($breakpoint, $grid-breakpoints);
+
+ .text#{$infix}-left { text-align: left !important; }
+ .text#{$infix}-right { text-align: right !important; }
+ .text#{$infix}-center { text-align: center !important; }
+ }
+}
+
+// Transformation
+
+.text-lowercase { text-transform: lowercase !important; }
+.text-uppercase { text-transform: uppercase !important; }
+.text-capitalize { text-transform: capitalize !important; }
+
+// Weight and italics
+
+.font-weight-light { font-weight: $font-weight-light !important; }
+.font-weight-normal { font-weight: $font-weight-normal !important; }
+.font-weight-bold { font-weight: $font-weight-bold !important; }
+.font-italic { font-style: italic !important; }
+
+// Contextual colors
+
+.text-white { color: $white !important; }
+
+@each $color, $value in $theme-colors {
+ @include text-emphasis-variant(".text-#{$color}", $value);
+}
+
+.text-body { color: $body-color !important; }
+.text-muted { color: $text-muted !important; }
+
+.text-black-50 { color: rgba($black, .5) !important; }
+.text-white-50 { color: rgba($white, .5) !important; }
+
+// Misc
+
+.text-hide {
+ @include text-hide();
+}
diff --git a/vendor/assets/stylesheets/bootstrap/utilities/_visibility.scss b/vendor/assets/stylesheets/bootstrap/utilities/_visibility.scss
new file mode 100644
index 0000000..823406d
--- /dev/null
+++ b/vendor/assets/stylesheets/bootstrap/utilities/_visibility.scss
@@ -0,0 +1,11 @@
+//
+// Visibility utilities
+//
+
+.visible {
+ @include invisible(visible);
+}
+
+.invisible {
+ @include invisible(hidden);
+}
diff --git a/vendor/assets/stylesheets/mdi/_animated.scss b/vendor/assets/stylesheets/mdi/_animated.scss
new file mode 100644
index 0000000..6d2bc68
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/_animated.scss
@@ -0,0 +1,27 @@
+// From Font Awesome
+.#{$mdi-css-prefix}-spin:before {
+ -webkit-animation: #{$mdi-css-prefix}-spin 2s infinite linear;
+ animation: #{$mdi-css-prefix}-spin 2s infinite linear;
+}
+
+@-webkit-keyframes #{$mdi-css-prefix}-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+
+@keyframes #{$mdi-css-prefix}-spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
\ No newline at end of file
diff --git a/vendor/assets/stylesheets/mdi/_core.scss b/vendor/assets/stylesheets/mdi/_core.scss
new file mode 100644
index 0000000..f6d3261
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/_core.scss
@@ -0,0 +1,10 @@
+.#{$mdi-css-prefix}:before,
+.#{$mdi-css-prefix}-set {
+ display: inline-block;
+ font: normal normal normal #{$mdi-font-size-base}/1 '#{$mdi-font-name}'; // shortening font declaration
+ font-size: inherit; // can't have font-size inherit on line above, so need to override
+ text-rendering: auto; // optimizelegibility throws things off #1094
+ line-height: inherit;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
\ No newline at end of file
diff --git a/vendor/assets/stylesheets/mdi/_extras.scss b/vendor/assets/stylesheets/mdi/_extras.scss
new file mode 100644
index 0000000..34028dd
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/_extras.scss
@@ -0,0 +1,65 @@
+$mdi-sizes: 18 24 36 48;
+@each $mdi-size in $mdi-sizes {
+ .#{$mdi-css-prefix}-#{$mdi-size}px {
+ &.#{$mdi-css-prefix}-set,
+ &.#{$mdi-css-prefix}:before {
+ font-size: $mdi-size * 1px;
+ }
+ }
+}
+
+.#{$mdi-css-prefix}-dark {
+ &:before {
+ color: rgba(0, 0, 0, 0.54);
+ }
+ &.mdi-inactive:before {
+ color: rgba(0, 0, 0, 0.26);
+ }
+}
+.#{$mdi-css-prefix}-light {
+ &:before {
+ color: rgba(255, 255, 255, 1);
+ }
+ &.mdi-inactive:before {
+ color: rgba(255, 255, 255, 0.3);
+ }
+}
+
+$mdi-degrees: 45 90 135 180 225 270 315;
+@each $mdi-degree in $mdi-degrees {
+ .#{$mdi-css-prefix}-rotate-#{$mdi-degree}{
+ &:before {
+ -webkit-transform: rotate(#{$mdi-degree}deg);
+ -ms-transform: rotate(#{$mdi-degree}deg);
+ transform: rotate(#{$mdi-degree}deg);
+ }
+ /*
+ // Not included in production
+ &.#{$mdi-css-prefix}-flip-h:before {
+ -webkit-transform: scaleX(-1) rotate(#{$mdi-degree}deg);
+ transform: scaleX(-1) rotate(#{$mdi-degree}deg);
+ filter: FlipH;
+ -ms-filter: "FlipH";
+ }
+ &.#{$mdi-css-prefix}-flip-v:before {
+ -webkit-transform: scaleY(-1) rotate(#{$mdi-degree}deg);
+ -ms-transform: rotate(#{$mdi-degree}deg);
+ transform: scaleY(-1) rotate(#{$mdi-degree}deg);
+ filter: FlipV;
+ -ms-filter: "FlipV";
+ }
+ */
+ }
+}
+.#{$mdi-css-prefix}-flip-h:before {
+ -webkit-transform: scaleX(-1);
+ transform: scaleX(-1);
+ filter: FlipH;
+ -ms-filter: "FlipH";
+}
+.#{$mdi-css-prefix}-flip-v:before {
+ -webkit-transform: scaleY(-1);
+ transform: scaleY(-1);
+ filter: FlipV;
+ -ms-filter: "FlipV";
+}
\ No newline at end of file
diff --git a/vendor/assets/stylesheets/mdi/_functions.scss b/vendor/assets/stylesheets/mdi/_functions.scss
new file mode 100644
index 0000000..6697910
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/_functions.scss
@@ -0,0 +1,20 @@
+@function char($character-code) {
+ @if function-exists("selector-append") {
+ @return unquote("\"\\#{$character-code}\"");
+ }
+
+ @if "\\#{'x'}" == "\\x" {
+ @return str-slice("\x", 1, 1) + $character-code;
+ }
+ @else {
+ @return #{"\"\\"}#{$character-code + "\""};
+ }
+}
+
+@function mdi($name) {
+ @if map-has-key($mdi-icons, $name) == false {
+ @warn "Icon #{$name} not found.";
+ @return "";
+ }
+ @return char(map-get($mdi-icons, $name));
+}
\ No newline at end of file
diff --git a/vendor/assets/stylesheets/mdi/_icons.scss b/vendor/assets/stylesheets/mdi/_icons.scss
new file mode 100644
index 0000000..49fc4f2
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/_icons.scss
@@ -0,0 +1,10 @@
+@each $key, $value in $mdi-icons {
+ .#{$mdi-css-prefix}-#{$key}:before {
+ content: char($value);
+ }
+}
+
+.#{$mdi-css-prefix}-blank:before {
+ content: "\F68C";
+ visibility: hidden;
+}
\ No newline at end of file
diff --git a/vendor/assets/stylesheets/mdi/_path.scss b/vendor/assets/stylesheets/mdi/_path.scss
new file mode 100644
index 0000000..cbf5786
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/_path.scss
@@ -0,0 +1,12 @@
+@font-face {
+ font-family: "Material Design Icons";
+ src: url(font-path('mdi/#{$mdi-filename}-webfont.eot?#{$mdi-version}'));
+ src: url(font-path('mdi/#{$mdi-filename}-webfont.eot?#iefix{$mdi-version}'));
+ src: url(font-path("mdi/#{$mdi-filename}-webfont.eot?#iefix{$mdi-version}")) format("embedded-opentype"),
+ url(font-path("mdi/#{$mdi-filename}-webfont.woff2?#{$mdi-version}")) format("woff2"),
+ url(font-path("mdi/#{$mdi-filename}-webfont.woff?#{$mdi-version}")) format("woff"),
+ url(font-path("mdi/#{$mdi-filename}-webfont.ttf?#{$mdi-version}")) format("truetype"),
+ url(font-path("mdi/#{$mdi-filename}-webfont.svg?#{$mdi-version}#materialdesigniconsregular")) format("svg");
+ font-weight: normal;
+ font-style: normal;
+}
diff --git a/vendor/assets/stylesheets/mdi/_variables.scss b/vendor/assets/stylesheets/mdi/_variables.scss
new file mode 100644
index 0000000..71659ae
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/_variables.scss
@@ -0,0 +1,2254 @@
+$mdi-filename: "materialdesignicons";
+$mdi-font-name: "Material Design Icons";
+$mdi-font-family: "materialdesignicons";
+$mdi-font-weight: "regular";
+$mdi-font-path: "../fonts" !default;
+$mdi-font-size-base: 24px !default;
+$mdi-css-prefix: mdi !default;
+$mdi-version: "2.2.43" !default;
+
+$mdi-icons: (
+ "access-point": F002,
+ "access-point-network": F003,
+ "account": F004,
+ "account-alert": F005,
+ "account-box": F006,
+ "account-box-outline": F007,
+ "account-card-details": F5D2,
+ "account-check": F008,
+ "account-circle": F009,
+ "account-convert": F00A,
+ "account-edit": F6BB,
+ "account-group": F848,
+ "account-heart": F898,
+ "account-key": F00B,
+ "account-location": F00C,
+ "account-minus": F00D,
+ "account-multiple": F00E,
+ "account-multiple-minus": F5D3,
+ "account-multiple-outline": F00F,
+ "account-multiple-plus": F010,
+ "account-multiple-plus-outline": F7FF,
+ "account-network": F011,
+ "account-off": F012,
+ "account-outline": F013,
+ "account-plus": F014,
+ "account-plus-outline": F800,
+ "account-remove": F015,
+ "account-search": F016,
+ "account-settings": F630,
+ "account-settings-variant": F631,
+ "account-star": F017,
+ "account-switch": F019,
+ "accusoft": F849,
+ "adjust": F01A,
+ "air-conditioner": F01B,
+ "airballoon": F01C,
+ "airplane": F01D,
+ "airplane-landing": F5D4,
+ "airplane-off": F01E,
+ "airplane-takeoff": F5D5,
+ "airplay": F01F,
+ "airport": F84A,
+ "alarm": F020,
+ "alarm-bell": F78D,
+ "alarm-check": F021,
+ "alarm-light": F78E,
+ "alarm-multiple": F022,
+ "alarm-off": F023,
+ "alarm-plus": F024,
+ "alarm-snooze": F68D,
+ "album": F025,
+ "alert": F026,
+ "alert-box": F027,
+ "alert-circle": F028,
+ "alert-circle-outline": F5D6,
+ "alert-decagram": F6BC,
+ "alert-octagon": F029,
+ "alert-octagram": F766,
+ "alert-outline": F02A,
+ "alien": F899,
+ "all-inclusive": F6BD,
+ "allo": F801,
+ "alpha": F02B,
+ "alphabetical": F02C,
+ "altimeter": F5D7,
+ "amazon": F02D,
+ "amazon-clouddrive": F02E,
+ "ambulance": F02F,
+ "amplifier": F030,
+ "anchor": F031,
+ "android": F032,
+ "android-debug-bridge": F033,
+ "android-head": F78F,
+ "android-studio": F034,
+ "angular": F6B1,
+ "angularjs": F6BE,
+ "animation": F5D8,
+ "anvil": F89A,
+ "apple": F035,
+ "apple-finder": F036,
+ "apple-ios": F037,
+ "apple-keyboard-caps": F632,
+ "apple-keyboard-command": F633,
+ "apple-keyboard-control": F634,
+ "apple-keyboard-option": F635,
+ "apple-keyboard-shift": F636,
+ "apple-mobileme": F038,
+ "apple-safari": F039,
+ "application": F614,
+ "approval": F790,
+ "apps": F03B,
+ "archive": F03C,
+ "arrange-bring-forward": F03D,
+ "arrange-bring-to-front": F03E,
+ "arrange-send-backward": F03F,
+ "arrange-send-to-back": F040,
+ "arrow-all": F041,
+ "arrow-bottom-left": F042,
+ "arrow-bottom-right": F043,
+ "arrow-collapse": F615,
+ "arrow-collapse-all": F044,
+ "arrow-collapse-down": F791,
+ "arrow-collapse-horizontal": F84B,
+ "arrow-collapse-left": F792,
+ "arrow-collapse-right": F793,
+ "arrow-collapse-up": F794,
+ "arrow-collapse-vertical": F84C,
+ "arrow-down": F045,
+ "arrow-down-bold": F72D,
+ "arrow-down-bold-box": F72E,
+ "arrow-down-bold-box-outline": F72F,
+ "arrow-down-bold-circle": F047,
+ "arrow-down-bold-circle-outline": F048,
+ "arrow-down-bold-hexagon-outline": F049,
+ "arrow-down-box": F6BF,
+ "arrow-down-drop-circle": F04A,
+ "arrow-down-drop-circle-outline": F04B,
+ "arrow-down-thick": F046,
+ "arrow-expand": F616,
+ "arrow-expand-all": F04C,
+ "arrow-expand-down": F795,
+ "arrow-expand-horizontal": F84D,
+ "arrow-expand-left": F796,
+ "arrow-expand-right": F797,
+ "arrow-expand-up": F798,
+ "arrow-expand-vertical": F84E,
+ "arrow-left": F04D,
+ "arrow-left-bold": F730,
+ "arrow-left-bold-box": F731,
+ "arrow-left-bold-box-outline": F732,
+ "arrow-left-bold-circle": F04F,
+ "arrow-left-bold-circle-outline": F050,
+ "arrow-left-bold-hexagon-outline": F051,
+ "arrow-left-box": F6C0,
+ "arrow-left-drop-circle": F052,
+ "arrow-left-drop-circle-outline": F053,
+ "arrow-left-thick": F04E,
+ "arrow-right": F054,
+ "arrow-right-bold": F733,
+ "arrow-right-bold-box": F734,
+ "arrow-right-bold-box-outline": F735,
+ "arrow-right-bold-circle": F056,
+ "arrow-right-bold-circle-outline": F057,
+ "arrow-right-bold-hexagon-outline": F058,
+ "arrow-right-box": F6C1,
+ "arrow-right-drop-circle": F059,
+ "arrow-right-drop-circle-outline": F05A,
+ "arrow-right-thick": F055,
+ "arrow-top-left": F05B,
+ "arrow-top-right": F05C,
+ "arrow-up": F05D,
+ "arrow-up-bold": F736,
+ "arrow-up-bold-box": F737,
+ "arrow-up-bold-box-outline": F738,
+ "arrow-up-bold-circle": F05F,
+ "arrow-up-bold-circle-outline": F060,
+ "arrow-up-bold-hexagon-outline": F061,
+ "arrow-up-box": F6C2,
+ "arrow-up-drop-circle": F062,
+ "arrow-up-drop-circle-outline": F063,
+ "arrow-up-thick": F05E,
+ "artist": F802,
+ "assistant": F064,
+ "asterisk": F6C3,
+ "at": F065,
+ "atlassian": F803,
+ "atom": F767,
+ "attachment": F066,
+ "audiobook": F067,
+ "augmented-reality": F84F,
+ "auto-fix": F068,
+ "auto-upload": F069,
+ "autorenew": F06A,
+ "av-timer": F06B,
+ "azure": F804,
+ "baby": F06C,
+ "baby-buggy": F68E,
+ "backburger": F06D,
+ "backspace": F06E,
+ "backup-restore": F06F,
+ "badminton": F850,
+ "bandcamp": F674,
+ "bank": F070,
+ "barcode": F071,
+ "barcode-scan": F072,
+ "barley": F073,
+ "barrel": F074,
+ "baseball": F851,
+ "baseball-bat": F852,
+ "basecamp": F075,
+ "basket": F076,
+ "basket-fill": F077,
+ "basket-unfill": F078,
+ "basketball": F805,
+ "battery": F079,
+ "battery-10": F07A,
+ "battery-20": F07B,
+ "battery-30": F07C,
+ "battery-40": F07D,
+ "battery-50": F07E,
+ "battery-60": F07F,
+ "battery-70": F080,
+ "battery-80": F081,
+ "battery-90": F082,
+ "battery-alert": F083,
+ "battery-charging": F084,
+ "battery-charging-10": F89B,
+ "battery-charging-100": F085,
+ "battery-charging-20": F086,
+ "battery-charging-30": F087,
+ "battery-charging-40": F088,
+ "battery-charging-50": F89C,
+ "battery-charging-60": F089,
+ "battery-charging-70": F89D,
+ "battery-charging-80": F08A,
+ "battery-charging-90": F08B,
+ "battery-charging-outline": F89E,
+ "battery-charging-wireless": F806,
+ "battery-charging-wireless-10": F807,
+ "battery-charging-wireless-20": F808,
+ "battery-charging-wireless-30": F809,
+ "battery-charging-wireless-40": F80A,
+ "battery-charging-wireless-50": F80B,
+ "battery-charging-wireless-60": F80C,
+ "battery-charging-wireless-70": F80D,
+ "battery-charging-wireless-80": F80E,
+ "battery-charging-wireless-90": F80F,
+ "battery-charging-wireless-alert": F810,
+ "battery-charging-wireless-outline": F811,
+ "battery-minus": F08C,
+ "battery-negative": F08D,
+ "battery-outline": F08E,
+ "battery-plus": F08F,
+ "battery-positive": F090,
+ "battery-unknown": F091,
+ "beach": F092,
+ "beaker": F68F,
+ "beats": F097,
+ "bed-empty": F89F,
+ "beer": F098,
+ "behance": F099,
+ "bell": F09A,
+ "bell-off": F09B,
+ "bell-outline": F09C,
+ "bell-plus": F09D,
+ "bell-ring": F09E,
+ "bell-ring-outline": F09F,
+ "bell-sleep": F0A0,
+ "beta": F0A1,
+ "bible": F0A2,
+ "bike": F0A3,
+ "bing": F0A4,
+ "binoculars": F0A5,
+ "bio": F0A6,
+ "biohazard": F0A7,
+ "bitbucket": F0A8,
+ "bitcoin": F812,
+ "black-mesa": F0A9,
+ "blackberry": F0AA,
+ "blender": F0AB,
+ "blinds": F0AC,
+ "block-helper": F0AD,
+ "blogger": F0AE,
+ "bluetooth": F0AF,
+ "bluetooth-audio": F0B0,
+ "bluetooth-connect": F0B1,
+ "bluetooth-off": F0B2,
+ "bluetooth-settings": F0B3,
+ "bluetooth-transfer": F0B4,
+ "blur": F0B5,
+ "blur-linear": F0B6,
+ "blur-off": F0B7,
+ "blur-radial": F0B8,
+ "bomb": F690,
+ "bomb-off": F6C4,
+ "bone": F0B9,
+ "book": F0BA,
+ "book-minus": F5D9,
+ "book-multiple": F0BB,
+ "book-multiple-variant": F0BC,
+ "book-open": F0BD,
+ "book-open-page-variant": F5DA,
+ "book-open-variant": F0BE,
+ "book-plus": F5DB,
+ "book-secure": F799,
+ "book-unsecure": F79A,
+ "book-variant": F0BF,
+ "bookmark": F0C0,
+ "bookmark-check": F0C1,
+ "bookmark-music": F0C2,
+ "bookmark-outline": F0C3,
+ "bookmark-plus": F0C5,
+ "bookmark-plus-outline": F0C4,
+ "bookmark-remove": F0C6,
+ "boombox": F5DC,
+ "bootstrap": F6C5,
+ "border-all": F0C7,
+ "border-all-variant": F8A0,
+ "border-bottom": F0C8,
+ "border-bottom-variant": F8A1,
+ "border-color": F0C9,
+ "border-horizontal": F0CA,
+ "border-inside": F0CB,
+ "border-left": F0CC,
+ "border-left-variant": F8A2,
+ "border-none": F0CD,
+ "border-none-variant": F8A3,
+ "border-outside": F0CE,
+ "border-right": F0CF,
+ "border-right-variant": F8A4,
+ "border-style": F0D0,
+ "border-top": F0D1,
+ "border-top-variant": F8A5,
+ "border-vertical": F0D2,
+ "bottle-wine": F853,
+ "bow-tie": F677,
+ "bowl": F617,
+ "bowling": F0D3,
+ "box": F0D4,
+ "box-cutter": F0D5,
+ "box-shadow": F637,
+ "bridge": F618,
+ "briefcase": F0D6,
+ "briefcase-check": F0D7,
+ "briefcase-download": F0D8,
+ "briefcase-outline": F813,
+ "briefcase-upload": F0D9,
+ "brightness-1": F0DA,
+ "brightness-2": F0DB,
+ "brightness-3": F0DC,
+ "brightness-4": F0DD,
+ "brightness-5": F0DE,
+ "brightness-6": F0DF,
+ "brightness-7": F0E0,
+ "brightness-auto": F0E1,
+ "broom": F0E2,
+ "brush": F0E3,
+ "buffer": F619,
+ "bug": F0E4,
+ "bulletin-board": F0E5,
+ "bullhorn": F0E6,
+ "bullseye": F5DD,
+ "bus": F0E7,
+ "bus-articulated-end": F79B,
+ "bus-articulated-front": F79C,
+ "bus-double-decker": F79D,
+ "bus-school": F79E,
+ "bus-side": F79F,
+ "cached": F0E8,
+ "cake": F0E9,
+ "cake-layered": F0EA,
+ "cake-variant": F0EB,
+ "calculator": F0EC,
+ "calendar": F0ED,
+ "calendar-blank": F0EE,
+ "calendar-check": F0EF,
+ "calendar-clock": F0F0,
+ "calendar-edit": F8A6,
+ "calendar-multiple": F0F1,
+ "calendar-multiple-check": F0F2,
+ "calendar-plus": F0F3,
+ "calendar-question": F691,
+ "calendar-range": F678,
+ "calendar-remove": F0F4,
+ "calendar-text": F0F5,
+ "calendar-today": F0F6,
+ "call-made": F0F7,
+ "call-merge": F0F8,
+ "call-missed": F0F9,
+ "call-received": F0FA,
+ "call-split": F0FB,
+ "camcorder": F0FC,
+ "camcorder-box": F0FD,
+ "camcorder-box-off": F0FE,
+ "camcorder-off": F0FF,
+ "camera": F100,
+ "camera-burst": F692,
+ "camera-enhance": F101,
+ "camera-front": F102,
+ "camera-front-variant": F103,
+ "camera-gopro": F7A0,
+ "camera-iris": F104,
+ "camera-metering-center": F7A1,
+ "camera-metering-matrix": F7A2,
+ "camera-metering-partial": F7A3,
+ "camera-metering-spot": F7A4,
+ "camera-off": F5DF,
+ "camera-party-mode": F105,
+ "camera-rear": F106,
+ "camera-rear-variant": F107,
+ "camera-switch": F108,
+ "camera-timer": F109,
+ "cancel": F739,
+ "candle": F5E2,
+ "candycane": F10A,
+ "cannabis": F7A5,
+ "car": F10B,
+ "car-battery": F10C,
+ "car-connected": F10D,
+ "car-convertible": F7A6,
+ "car-estate": F7A7,
+ "car-hatchback": F7A8,
+ "car-pickup": F7A9,
+ "car-side": F7AA,
+ "car-sports": F7AB,
+ "car-wash": F10E,
+ "caravan": F7AC,
+ "cards": F638,
+ "cards-outline": F639,
+ "cards-playing-outline": F63A,
+ "cards-variant": F6C6,
+ "carrot": F10F,
+ "cart": F110,
+ "cart-off": F66B,
+ "cart-outline": F111,
+ "cart-plus": F112,
+ "case-sensitive-alt": F113,
+ "cash": F114,
+ "cash-100": F115,
+ "cash-multiple": F116,
+ "cash-usd": F117,
+ "cast": F118,
+ "cast-connected": F119,
+ "cast-off": F789,
+ "castle": F11A,
+ "cat": F11B,
+ "cctv": F7AD,
+ "ceiling-light": F768,
+ "cellphone": F11C,
+ "cellphone-android": F11D,
+ "cellphone-basic": F11E,
+ "cellphone-dock": F11F,
+ "cellphone-iphone": F120,
+ "cellphone-link": F121,
+ "cellphone-link-off": F122,
+ "cellphone-settings": F123,
+ "cellphone-wireless": F814,
+ "certificate": F124,
+ "chair-school": F125,
+ "chart-arc": F126,
+ "chart-areaspline": F127,
+ "chart-bar": F128,
+ "chart-bar-stacked": F769,
+ "chart-bubble": F5E3,
+ "chart-donut": F7AE,
+ "chart-donut-variant": F7AF,
+ "chart-gantt": F66C,
+ "chart-histogram": F129,
+ "chart-line": F12A,
+ "chart-line-stacked": F76A,
+ "chart-line-variant": F7B0,
+ "chart-pie": F12B,
+ "chart-scatterplot-hexbin": F66D,
+ "chart-timeline": F66E,
+ "check": F12C,
+ "check-all": F12D,
+ "check-circle": F5E0,
+ "check-circle-outline": F5E1,
+ "check-outline": F854,
+ "checkbox-blank": F12E,
+ "checkbox-blank-circle": F12F,
+ "checkbox-blank-circle-outline": F130,
+ "checkbox-blank-outline": F131,
+ "checkbox-intermediate": F855,
+ "checkbox-marked": F132,
+ "checkbox-marked-circle": F133,
+ "checkbox-marked-circle-outline": F134,
+ "checkbox-marked-outline": F135,
+ "checkbox-multiple-blank": F136,
+ "checkbox-multiple-blank-circle": F63B,
+ "checkbox-multiple-blank-circle-outline": F63C,
+ "checkbox-multiple-blank-outline": F137,
+ "checkbox-multiple-marked": F138,
+ "checkbox-multiple-marked-circle": F63D,
+ "checkbox-multiple-marked-circle-outline": F63E,
+ "checkbox-multiple-marked-outline": F139,
+ "checkerboard": F13A,
+ "chemical-weapon": F13B,
+ "chess-bishop": F85B,
+ "chess-king": F856,
+ "chess-knight": F857,
+ "chess-pawn": F858,
+ "chess-queen": F859,
+ "chess-rook": F85A,
+ "chevron-double-down": F13C,
+ "chevron-double-left": F13D,
+ "chevron-double-right": F13E,
+ "chevron-double-up": F13F,
+ "chevron-down": F140,
+ "chevron-left": F141,
+ "chevron-right": F142,
+ "chevron-up": F143,
+ "chili-hot": F7B1,
+ "chili-medium": F7B2,
+ "chili-mild": F7B3,
+ "chip": F61A,
+ "church": F144,
+ "circle": F764,
+ "circle-outline": F765,
+ "cisco-webex": F145,
+ "city": F146,
+ "clipboard": F147,
+ "clipboard-account": F148,
+ "clipboard-alert": F149,
+ "clipboard-arrow-down": F14A,
+ "clipboard-arrow-left": F14B,
+ "clipboard-check": F14C,
+ "clipboard-check-outline": F8A7,
+ "clipboard-flow": F6C7,
+ "clipboard-outline": F14D,
+ "clipboard-plus": F750,
+ "clipboard-pulse": F85C,
+ "clipboard-pulse-outline": F85D,
+ "clipboard-text": F14E,
+ "clippy": F14F,
+ "clock": F150,
+ "clock-alert": F5CE,
+ "clock-end": F151,
+ "clock-fast": F152,
+ "clock-in": F153,
+ "clock-out": F154,
+ "clock-start": F155,
+ "close": F156,
+ "close-box": F157,
+ "close-box-outline": F158,
+ "close-circle": F159,
+ "close-circle-outline": F15A,
+ "close-network": F15B,
+ "close-octagon": F15C,
+ "close-octagon-outline": F15D,
+ "close-outline": F6C8,
+ "closed-caption": F15E,
+ "cloud": F15F,
+ "cloud-braces": F7B4,
+ "cloud-check": F160,
+ "cloud-circle": F161,
+ "cloud-download": F162,
+ "cloud-off-outline": F164,
+ "cloud-outline": F163,
+ "cloud-print": F165,
+ "cloud-print-outline": F166,
+ "cloud-sync": F63F,
+ "cloud-tags": F7B5,
+ "cloud-upload": F167,
+ "clover": F815,
+ "code-array": F168,
+ "code-braces": F169,
+ "code-brackets": F16A,
+ "code-equal": F16B,
+ "code-greater-than": F16C,
+ "code-greater-than-or-equal": F16D,
+ "code-less-than": F16E,
+ "code-less-than-or-equal": F16F,
+ "code-not-equal": F170,
+ "code-not-equal-variant": F171,
+ "code-parentheses": F172,
+ "code-string": F173,
+ "code-tags": F174,
+ "code-tags-check": F693,
+ "codepen": F175,
+ "coffee": F176,
+ "coffee-outline": F6C9,
+ "coffee-to-go": F177,
+ "coin": F178,
+ "coins": F694,
+ "collage": F640,
+ "color-helper": F179,
+ "comment": F17A,
+ "comment-account": F17B,
+ "comment-account-outline": F17C,
+ "comment-alert": F17D,
+ "comment-alert-outline": F17E,
+ "comment-check": F17F,
+ "comment-check-outline": F180,
+ "comment-multiple": F85E,
+ "comment-multiple-outline": F181,
+ "comment-outline": F182,
+ "comment-plus-outline": F183,
+ "comment-processing": F184,
+ "comment-processing-outline": F185,
+ "comment-question": F816,
+ "comment-question-outline": F186,
+ "comment-remove": F5DE,
+ "comment-remove-outline": F187,
+ "comment-text": F188,
+ "comment-text-multiple": F85F,
+ "comment-text-multiple-outline": F860,
+ "comment-text-outline": F189,
+ "compare": F18A,
+ "compass": F18B,
+ "compass-outline": F18C,
+ "console": F18D,
+ "console-line": F7B6,
+ "console-network": F8A8,
+ "contact-mail": F18E,
+ "contacts": F6CA,
+ "content-copy": F18F,
+ "content-cut": F190,
+ "content-duplicate": F191,
+ "content-paste": F192,
+ "content-save": F193,
+ "content-save-all": F194,
+ "content-save-outline": F817,
+ "content-save-settings": F61B,
+ "contrast": F195,
+ "contrast-box": F196,
+ "contrast-circle": F197,
+ "cookie": F198,
+ "copyright": F5E6,
+ "corn": F7B7,
+ "counter": F199,
+ "cow": F19A,
+ "crane": F861,
+ "creation": F1C9,
+ "credit-card": F19B,
+ "credit-card-multiple": F19C,
+ "credit-card-off": F5E4,
+ "credit-card-plus": F675,
+ "credit-card-scan": F19D,
+ "crop": F19E,
+ "crop-free": F19F,
+ "crop-landscape": F1A0,
+ "crop-portrait": F1A1,
+ "crop-rotate": F695,
+ "crop-square": F1A2,
+ "crosshairs": F1A3,
+ "crosshairs-gps": F1A4,
+ "crown": F1A5,
+ "cube": F1A6,
+ "cube-outline": F1A7,
+ "cube-send": F1A8,
+ "cube-unfolded": F1A9,
+ "cup": F1AA,
+ "cup-off": F5E5,
+ "cup-water": F1AB,
+ "curling": F862,
+ "currency-bdt": F863,
+ "currency-btc": F1AC,
+ "currency-chf": F7B8,
+ "currency-cny": F7B9,
+ "currency-eth": F7BA,
+ "currency-eur": F1AD,
+ "currency-gbp": F1AE,
+ "currency-inr": F1AF,
+ "currency-jpy": F7BB,
+ "currency-krw": F7BC,
+ "currency-kzt": F864,
+ "currency-ngn": F1B0,
+ "currency-rub": F1B1,
+ "currency-sign": F7BD,
+ "currency-try": F1B2,
+ "currency-twd": F7BE,
+ "currency-usd": F1B3,
+ "currency-usd-off": F679,
+ "cursor-default": F1B4,
+ "cursor-default-outline": F1B5,
+ "cursor-move": F1B6,
+ "cursor-pointer": F1B7,
+ "cursor-text": F5E7,
+ "database": F1B8,
+ "database-minus": F1B9,
+ "database-plus": F1BA,
+ "database-search": F865,
+ "debug-step-into": F1BB,
+ "debug-step-out": F1BC,
+ "debug-step-over": F1BD,
+ "decagram": F76B,
+ "decagram-outline": F76C,
+ "decimal-decrease": F1BE,
+ "decimal-increase": F1BF,
+ "delete": F1C0,
+ "delete-circle": F682,
+ "delete-empty": F6CB,
+ "delete-forever": F5E8,
+ "delete-restore": F818,
+ "delete-sweep": F5E9,
+ "delete-variant": F1C1,
+ "delta": F1C2,
+ "deskphone": F1C3,
+ "desktop-classic": F7BF,
+ "desktop-mac": F1C4,
+ "desktop-tower": F1C5,
+ "details": F1C6,
+ "developer-board": F696,
+ "deviantart": F1C7,
+ "dialpad": F61C,
+ "diamond": F1C8,
+ "dice-1": F1CA,
+ "dice-2": F1CB,
+ "dice-3": F1CC,
+ "dice-4": F1CD,
+ "dice-5": F1CE,
+ "dice-6": F1CF,
+ "dice-d10": F76E,
+ "dice-d12": F866,
+ "dice-d20": F5EA,
+ "dice-d4": F5EB,
+ "dice-d6": F5EC,
+ "dice-d8": F5ED,
+ "dice-multiple": F76D,
+ "dictionary": F61D,
+ "dip-switch": F7C0,
+ "directions": F1D0,
+ "directions-fork": F641,
+ "discord": F66F,
+ "disk": F5EE,
+ "disk-alert": F1D1,
+ "disqus": F1D2,
+ "disqus-outline": F1D3,
+ "division": F1D4,
+ "division-box": F1D5,
+ "dna": F683,
+ "dns": F1D6,
+ "do-not-disturb": F697,
+ "do-not-disturb-off": F698,
+ "docker": F867,
+ "dolby": F6B2,
+ "domain": F1D7,
+ "donkey": F7C1,
+ "door": F819,
+ "door-closed": F81A,
+ "door-open": F81B,
+ "doorbell-video": F868,
+ "dots-horizontal": F1D8,
+ "dots-horizontal-circle": F7C2,
+ "dots-vertical": F1D9,
+ "dots-vertical-circle": F7C3,
+ "douban": F699,
+ "download": F1DA,
+ "download-network": F6F3,
+ "drag": F1DB,
+ "drag-horizontal": F1DC,
+ "drag-vertical": F1DD,
+ "drawing": F1DE,
+ "drawing-box": F1DF,
+ "dribbble": F1E0,
+ "dribbble-box": F1E1,
+ "drone": F1E2,
+ "dropbox": F1E3,
+ "drupal": F1E4,
+ "duck": F1E5,
+ "dumbbell": F1E6,
+ "ear-hearing": F7C4,
+ "earth": F1E7,
+ "earth-box": F6CC,
+ "earth-box-off": F6CD,
+ "earth-off": F1E8,
+ "edge": F1E9,
+ "eject": F1EA,
+ "elephant": F7C5,
+ "elevation-decline": F1EB,
+ "elevation-rise": F1EC,
+ "elevator": F1ED,
+ "email": F1EE,
+ "email-alert": F6CE,
+ "email-open": F1EF,
+ "email-open-outline": F5EF,
+ "email-outline": F1F0,
+ "email-secure": F1F1,
+ "email-variant": F5F0,
+ "emby": F6B3,
+ "emoticon": F1F2,
+ "emoticon-cool": F1F3,
+ "emoticon-dead": F69A,
+ "emoticon-devil": F1F4,
+ "emoticon-excited": F69B,
+ "emoticon-happy": F1F5,
+ "emoticon-neutral": F1F6,
+ "emoticon-poop": F1F7,
+ "emoticon-sad": F1F8,
+ "emoticon-tongue": F1F9,
+ "engine": F1FA,
+ "engine-outline": F1FB,
+ "equal": F1FC,
+ "equal-box": F1FD,
+ "eraser": F1FE,
+ "eraser-variant": F642,
+ "escalator": F1FF,
+ "ethereum": F869,
+ "ethernet": F200,
+ "ethernet-cable": F201,
+ "ethernet-cable-off": F202,
+ "etsy": F203,
+ "ev-station": F5F1,
+ "eventbrite": F7C6,
+ "evernote": F204,
+ "exclamation": F205,
+ "exit-to-app": F206,
+ "export": F207,
+ "eye": F208,
+ "eye-off": F209,
+ "eye-off-outline": F6D0,
+ "eye-outline": F6CF,
+ "eye-plus": F86A,
+ "eye-plus-outline": F86B,
+ "eye-settings": F86C,
+ "eye-settings-outline": F86D,
+ "eyedropper": F20A,
+ "eyedropper-variant": F20B,
+ "face": F643,
+ "face-profile": F644,
+ "facebook": F20C,
+ "facebook-box": F20D,
+ "facebook-messenger": F20E,
+ "factory": F20F,
+ "fan": F210,
+ "fan-off": F81C,
+ "fast-forward": F211,
+ "fast-forward-outline": F6D1,
+ "fax": F212,
+ "feather": F6D2,
+ "ferry": F213,
+ "file": F214,
+ "file-account": F73A,
+ "file-chart": F215,
+ "file-check": F216,
+ "file-cloud": F217,
+ "file-compare": F8A9,
+ "file-delimited": F218,
+ "file-document": F219,
+ "file-document-box": F21A,
+ "file-excel": F21B,
+ "file-excel-box": F21C,
+ "file-export": F21D,
+ "file-find": F21E,
+ "file-hidden": F613,
+ "file-image": F21F,
+ "file-import": F220,
+ "file-lock": F221,
+ "file-multiple": F222,
+ "file-music": F223,
+ "file-outline": F224,
+ "file-pdf": F225,
+ "file-pdf-box": F226,
+ "file-percent": F81D,
+ "file-plus": F751,
+ "file-powerpoint": F227,
+ "file-powerpoint-box": F228,
+ "file-presentation-box": F229,
+ "file-question": F86E,
+ "file-restore": F670,
+ "file-send": F22A,
+ "file-tree": F645,
+ "file-video": F22B,
+ "file-word": F22C,
+ "file-word-box": F22D,
+ "file-xml": F22E,
+ "film": F22F,
+ "filmstrip": F230,
+ "filmstrip-off": F231,
+ "filter": F232,
+ "filter-outline": F233,
+ "filter-remove": F234,
+ "filter-remove-outline": F235,
+ "filter-variant": F236,
+ "finance": F81E,
+ "find-replace": F6D3,
+ "fingerprint": F237,
+ "fire": F238,
+ "fire-truck": F8AA,
+ "firefox": F239,
+ "fish": F23A,
+ "flag": F23B,
+ "flag-checkered": F23C,
+ "flag-outline": F23D,
+ "flag-triangle": F23F,
+ "flag-variant": F240,
+ "flag-variant-outline": F23E,
+ "flash": F241,
+ "flash-auto": F242,
+ "flash-circle": F81F,
+ "flash-off": F243,
+ "flash-outline": F6D4,
+ "flash-red-eye": F67A,
+ "flashlight": F244,
+ "flashlight-off": F245,
+ "flask": F093,
+ "flask-empty": F094,
+ "flask-empty-outline": F095,
+ "flask-outline": F096,
+ "flattr": F246,
+ "flip-to-back": F247,
+ "flip-to-front": F248,
+ "floor-plan": F820,
+ "floppy": F249,
+ "flower": F24A,
+ "folder": F24B,
+ "folder-account": F24C,
+ "folder-download": F24D,
+ "folder-google-drive": F24E,
+ "folder-image": F24F,
+ "folder-key": F8AB,
+ "folder-key-network": F8AC,
+ "folder-lock": F250,
+ "folder-lock-open": F251,
+ "folder-move": F252,
+ "folder-multiple": F253,
+ "folder-multiple-image": F254,
+ "folder-multiple-outline": F255,
+ "folder-network": F86F,
+ "folder-open": F76F,
+ "folder-outline": F256,
+ "folder-plus": F257,
+ "folder-remove": F258,
+ "folder-star": F69C,
+ "folder-upload": F259,
+ "font-awesome": F03A,
+ "food": F25A,
+ "food-apple": F25B,
+ "food-croissant": F7C7,
+ "food-fork-drink": F5F2,
+ "food-off": F5F3,
+ "food-variant": F25C,
+ "football": F25D,
+ "football-australian": F25E,
+ "football-helmet": F25F,
+ "forklift": F7C8,
+ "format-align-bottom": F752,
+ "format-align-center": F260,
+ "format-align-justify": F261,
+ "format-align-left": F262,
+ "format-align-middle": F753,
+ "format-align-right": F263,
+ "format-align-top": F754,
+ "format-annotation-plus": F646,
+ "format-bold": F264,
+ "format-clear": F265,
+ "format-color-fill": F266,
+ "format-color-text": F69D,
+ "format-float-center": F267,
+ "format-float-left": F268,
+ "format-float-none": F269,
+ "format-float-right": F26A,
+ "format-font": F6D5,
+ "format-header-1": F26B,
+ "format-header-2": F26C,
+ "format-header-3": F26D,
+ "format-header-4": F26E,
+ "format-header-5": F26F,
+ "format-header-6": F270,
+ "format-header-decrease": F271,
+ "format-header-equal": F272,
+ "format-header-increase": F273,
+ "format-header-pound": F274,
+ "format-horizontal-align-center": F61E,
+ "format-horizontal-align-left": F61F,
+ "format-horizontal-align-right": F620,
+ "format-indent-decrease": F275,
+ "format-indent-increase": F276,
+ "format-italic": F277,
+ "format-line-spacing": F278,
+ "format-line-style": F5C8,
+ "format-line-weight": F5C9,
+ "format-list-bulleted": F279,
+ "format-list-bulleted-type": F27A,
+ "format-list-checks": F755,
+ "format-list-numbers": F27B,
+ "format-page-break": F6D6,
+ "format-paint": F27C,
+ "format-paragraph": F27D,
+ "format-pilcrow": F6D7,
+ "format-quote-close": F27E,
+ "format-quote-open": F756,
+ "format-rotate-90": F6A9,
+ "format-section": F69E,
+ "format-size": F27F,
+ "format-strikethrough": F280,
+ "format-strikethrough-variant": F281,
+ "format-subscript": F282,
+ "format-superscript": F283,
+ "format-text": F284,
+ "format-textdirection-l-to-r": F285,
+ "format-textdirection-r-to-l": F286,
+ "format-title": F5F4,
+ "format-underline": F287,
+ "format-vertical-align-bottom": F621,
+ "format-vertical-align-center": F622,
+ "format-vertical-align-top": F623,
+ "format-wrap-inline": F288,
+ "format-wrap-square": F289,
+ "format-wrap-tight": F28A,
+ "format-wrap-top-bottom": F28B,
+ "forum": F28C,
+ "forum-outline": F821,
+ "forward": F28D,
+ "foursquare": F28E,
+ "fridge": F28F,
+ "fridge-filled": F290,
+ "fridge-filled-bottom": F291,
+ "fridge-filled-top": F292,
+ "fuel": F7C9,
+ "fullscreen": F293,
+ "fullscreen-exit": F294,
+ "function": F295,
+ "function-variant": F870,
+ "gamepad": F296,
+ "gamepad-variant": F297,
+ "garage": F6D8,
+ "garage-alert": F871,
+ "garage-open": F6D9,
+ "gas-cylinder": F647,
+ "gas-station": F298,
+ "gate": F299,
+ "gauge": F29A,
+ "gauge-empty": F872,
+ "gauge-full": F873,
+ "gauge-low": F874,
+ "gavel": F29B,
+ "gender-female": F29C,
+ "gender-male": F29D,
+ "gender-male-female": F29E,
+ "gender-transgender": F29F,
+ "gesture": F7CA,
+ "gesture-double-tap": F73B,
+ "gesture-swipe-down": F73C,
+ "gesture-swipe-left": F73D,
+ "gesture-swipe-right": F73E,
+ "gesture-swipe-up": F73F,
+ "gesture-tap": F740,
+ "gesture-two-double-tap": F741,
+ "gesture-two-tap": F742,
+ "ghost": F2A0,
+ "gift": F2A1,
+ "git": F2A2,
+ "github-box": F2A3,
+ "github-circle": F2A4,
+ "github-face": F6DA,
+ "glass-cocktail": F356,
+ "glass-flute": F2A5,
+ "glass-mug": F2A6,
+ "glass-stange": F2A7,
+ "glass-tulip": F2A8,
+ "glass-wine": F875,
+ "glassdoor": F2A9,
+ "glasses": F2AA,
+ "gmail": F2AB,
+ "gnome": F2AC,
+ "golf": F822,
+ "gondola": F685,
+ "google": F2AD,
+ "google-analytics": F7CB,
+ "google-assistant": F7CC,
+ "google-cardboard": F2AE,
+ "google-chrome": F2AF,
+ "google-circles": F2B0,
+ "google-circles-communities": F2B1,
+ "google-circles-extended": F2B2,
+ "google-circles-group": F2B3,
+ "google-controller": F2B4,
+ "google-controller-off": F2B5,
+ "google-drive": F2B6,
+ "google-earth": F2B7,
+ "google-glass": F2B8,
+ "google-home": F823,
+ "google-keep": F6DB,
+ "google-maps": F5F5,
+ "google-nearby": F2B9,
+ "google-pages": F2BA,
+ "google-photos": F6DC,
+ "google-physical-web": F2BB,
+ "google-play": F2BC,
+ "google-plus": F2BD,
+ "google-plus-box": F2BE,
+ "google-translate": F2BF,
+ "google-wallet": F2C0,
+ "gpu": F8AD,
+ "gradient": F69F,
+ "graphql": F876,
+ "grease-pencil": F648,
+ "grid": F2C1,
+ "grid-large": F757,
+ "grid-off": F2C2,
+ "group": F2C3,
+ "guitar-acoustic": F770,
+ "guitar-electric": F2C4,
+ "guitar-pick": F2C5,
+ "guitar-pick-outline": F2C6,
+ "guy-fawkes-mask": F824,
+ "hackernews": F624,
+ "hamburger": F684,
+ "hand-pointing-right": F2C7,
+ "hanger": F2C8,
+ "hangouts": F2C9,
+ "harddisk": F2CA,
+ "headphones": F2CB,
+ "headphones-box": F2CC,
+ "headphones-off": F7CD,
+ "headphones-settings": F2CD,
+ "headset": F2CE,
+ "headset-dock": F2CF,
+ "headset-off": F2D0,
+ "heart": F2D1,
+ "heart-box": F2D2,
+ "heart-box-outline": F2D3,
+ "heart-broken": F2D4,
+ "heart-half": F6DE,
+ "heart-half-full": F6DD,
+ "heart-half-outline": F6DF,
+ "heart-off": F758,
+ "heart-outline": F2D5,
+ "heart-pulse": F5F6,
+ "help": F2D6,
+ "help-box": F78A,
+ "help-circle": F2D7,
+ "help-circle-outline": F625,
+ "help-network": F6F4,
+ "hexagon": F2D8,
+ "hexagon-multiple": F6E0,
+ "hexagon-outline": F2D9,
+ "high-definition": F7CE,
+ "high-definition-box": F877,
+ "highway": F5F7,
+ "history": F2DA,
+ "hockey-puck": F878,
+ "hockey-sticks": F879,
+ "hololens": F2DB,
+ "home": F2DC,
+ "home-account": F825,
+ "home-alert": F87A,
+ "home-assistant": F7CF,
+ "home-automation": F7D0,
+ "home-circle": F7D1,
+ "home-currency-usd": F8AE,
+ "home-heart": F826,
+ "home-map-marker": F5F8,
+ "home-modern": F2DD,
+ "home-outline": F6A0,
+ "home-variant": F2DE,
+ "hook": F6E1,
+ "hook-off": F6E2,
+ "hops": F2DF,
+ "hospital": F2E0,
+ "hospital-building": F2E1,
+ "hospital-marker": F2E2,
+ "hot-tub": F827,
+ "hotel": F2E3,
+ "houzz": F2E4,
+ "houzz-box": F2E5,
+ "hulu": F828,
+ "human": F2E6,
+ "human-child": F2E7,
+ "human-female": F649,
+ "human-greeting": F64A,
+ "human-handsdown": F64B,
+ "human-handsup": F64C,
+ "human-male": F64D,
+ "human-male-female": F2E8,
+ "human-pregnant": F5CF,
+ "humble-bundle": F743,
+ "ice-cream": F829,
+ "image": F2E9,
+ "image-album": F2EA,
+ "image-area": F2EB,
+ "image-area-close": F2EC,
+ "image-broken": F2ED,
+ "image-broken-variant": F2EE,
+ "image-filter": F2EF,
+ "image-filter-black-white": F2F0,
+ "image-filter-center-focus": F2F1,
+ "image-filter-center-focus-weak": F2F2,
+ "image-filter-drama": F2F3,
+ "image-filter-frames": F2F4,
+ "image-filter-hdr": F2F5,
+ "image-filter-none": F2F6,
+ "image-filter-tilt-shift": F2F7,
+ "image-filter-vintage": F2F8,
+ "image-multiple": F2F9,
+ "image-off": F82A,
+ "image-plus": F87B,
+ "import": F2FA,
+ "inbox": F686,
+ "inbox-arrow-down": F2FB,
+ "inbox-arrow-up": F3D1,
+ "inbox-multiple": F8AF,
+ "incognito": F5F9,
+ "infinity": F6E3,
+ "information": F2FC,
+ "information-outline": F2FD,
+ "information-variant": F64E,
+ "instagram": F2FE,
+ "instapaper": F2FF,
+ "internet-explorer": F300,
+ "invert-colors": F301,
+ "itunes": F676,
+ "jeepney": F302,
+ "jira": F303,
+ "jquery": F87C,
+ "jsfiddle": F304,
+ "json": F626,
+ "karate": F82B,
+ "keg": F305,
+ "kettle": F5FA,
+ "key": F306,
+ "key-change": F307,
+ "key-minus": F308,
+ "key-plus": F309,
+ "key-remove": F30A,
+ "key-variant": F30B,
+ "keyboard": F30C,
+ "keyboard-backspace": F30D,
+ "keyboard-caps": F30E,
+ "keyboard-close": F30F,
+ "keyboard-off": F310,
+ "keyboard-return": F311,
+ "keyboard-tab": F312,
+ "keyboard-variant": F313,
+ "kickstarter": F744,
+ "kodi": F314,
+ "label": F315,
+ "label-outline": F316,
+ "ladybug": F82C,
+ "lambda": F627,
+ "lamp": F6B4,
+ "lan": F317,
+ "lan-connect": F318,
+ "lan-disconnect": F319,
+ "lan-pending": F31A,
+ "language-c": F671,
+ "language-cpp": F672,
+ "language-csharp": F31B,
+ "language-css3": F31C,
+ "language-go": F7D2,
+ "language-html5": F31D,
+ "language-javascript": F31E,
+ "language-lua": F8B0,
+ "language-php": F31F,
+ "language-python": F320,
+ "language-python-text": F321,
+ "language-r": F7D3,
+ "language-swift": F6E4,
+ "language-typescript": F6E5,
+ "laptop": F322,
+ "laptop-chromebook": F323,
+ "laptop-mac": F324,
+ "laptop-off": F6E6,
+ "laptop-windows": F325,
+ "lastfm": F326,
+ "lastpass": F446,
+ "launch": F327,
+ "lava-lamp": F7D4,
+ "layers": F328,
+ "layers-off": F329,
+ "lead-pencil": F64F,
+ "leaf": F32A,
+ "led-off": F32B,
+ "led-on": F32C,
+ "led-outline": F32D,
+ "led-strip": F7D5,
+ "led-variant-off": F32E,
+ "led-variant-on": F32F,
+ "led-variant-outline": F330,
+ "library": F331,
+ "library-books": F332,
+ "library-music": F333,
+ "library-plus": F334,
+ "lifebuoy": F87D,
+ "lightbulb": F335,
+ "lightbulb-on": F6E7,
+ "lightbulb-on-outline": F6E8,
+ "lightbulb-outline": F336,
+ "link": F337,
+ "link-off": F338,
+ "link-variant": F339,
+ "link-variant-off": F33A,
+ "linkedin": F33B,
+ "linkedin-box": F33C,
+ "linux": F33D,
+ "loading": F771,
+ "lock": F33E,
+ "lock-open": F33F,
+ "lock-open-outline": F340,
+ "lock-outline": F341,
+ "lock-pattern": F6E9,
+ "lock-plus": F5FB,
+ "lock-reset": F772,
+ "lock-smart": F8B1,
+ "locker": F7D6,
+ "locker-multiple": F7D7,
+ "login": F342,
+ "login-variant": F5FC,
+ "logout": F343,
+ "logout-variant": F5FD,
+ "looks": F344,
+ "loop": F6EA,
+ "loupe": F345,
+ "lumx": F346,
+ "magnet": F347,
+ "magnet-on": F348,
+ "magnify": F349,
+ "magnify-minus": F34A,
+ "magnify-minus-outline": F6EB,
+ "magnify-plus": F34B,
+ "magnify-plus-outline": F6EC,
+ "mail-ru": F34C,
+ "mailbox": F6ED,
+ "map": F34D,
+ "map-marker": F34E,
+ "map-marker-circle": F34F,
+ "map-marker-minus": F650,
+ "map-marker-multiple": F350,
+ "map-marker-off": F351,
+ "map-marker-outline": F7D8,
+ "map-marker-plus": F651,
+ "map-marker-radius": F352,
+ "margin": F353,
+ "markdown": F354,
+ "marker": F652,
+ "marker-check": F355,
+ "material-ui": F357,
+ "math-compass": F358,
+ "matrix": F628,
+ "maxcdn": F359,
+ "medical-bag": F6EE,
+ "medium": F35A,
+ "memory": F35B,
+ "menu": F35C,
+ "menu-down": F35D,
+ "menu-down-outline": F6B5,
+ "menu-left": F35E,
+ "menu-right": F35F,
+ "menu-up": F360,
+ "menu-up-outline": F6B6,
+ "message": F361,
+ "message-alert": F362,
+ "message-bulleted": F6A1,
+ "message-bulleted-off": F6A2,
+ "message-draw": F363,
+ "message-image": F364,
+ "message-outline": F365,
+ "message-plus": F653,
+ "message-processing": F366,
+ "message-reply": F367,
+ "message-reply-text": F368,
+ "message-settings": F6EF,
+ "message-settings-variant": F6F0,
+ "message-text": F369,
+ "message-text-outline": F36A,
+ "message-video": F36B,
+ "meteor": F629,
+ "metronome": F7D9,
+ "metronome-tick": F7DA,
+ "micro-sd": F7DB,
+ "microphone": F36C,
+ "microphone-minus": F8B2,
+ "microphone-off": F36D,
+ "microphone-outline": F36E,
+ "microphone-plus": F8B3,
+ "microphone-settings": F36F,
+ "microphone-variant": F370,
+ "microphone-variant-off": F371,
+ "microscope": F654,
+ "microsoft": F372,
+ "minecraft": F373,
+ "minus": F374,
+ "minus-box": F375,
+ "minus-box-outline": F6F1,
+ "minus-circle": F376,
+ "minus-circle-outline": F377,
+ "minus-network": F378,
+ "mixcloud": F62A,
+ "mixed-reality": F87E,
+ "mixer": F7DC,
+ "monitor": F379,
+ "monitor-multiple": F37A,
+ "more": F37B,
+ "motorbike": F37C,
+ "mouse": F37D,
+ "mouse-off": F37E,
+ "mouse-variant": F37F,
+ "mouse-variant-off": F380,
+ "move-resize": F655,
+ "move-resize-variant": F656,
+ "movie": F381,
+ "movie-roll": F7DD,
+ "multiplication": F382,
+ "multiplication-box": F383,
+ "mushroom": F7DE,
+ "mushroom-outline": F7DF,
+ "music": F759,
+ "music-box": F384,
+ "music-box-outline": F385,
+ "music-circle": F386,
+ "music-note": F387,
+ "music-note-bluetooth": F5FE,
+ "music-note-bluetooth-off": F5FF,
+ "music-note-eighth": F388,
+ "music-note-half": F389,
+ "music-note-off": F38A,
+ "music-note-quarter": F38B,
+ "music-note-sixteenth": F38C,
+ "music-note-whole": F38D,
+ "music-off": F75A,
+ "nativescript": F87F,
+ "nature": F38E,
+ "nature-people": F38F,
+ "navigation": F390,
+ "near-me": F5CD,
+ "needle": F391,
+ "nest-protect": F392,
+ "nest-thermostat": F393,
+ "netflix": F745,
+ "network": F6F2,
+ "new-box": F394,
+ "newspaper": F395,
+ "nfc": F396,
+ "nfc-tap": F397,
+ "nfc-variant": F398,
+ "ninja": F773,
+ "nintendo-switch": F7E0,
+ "nodejs": F399,
+ "note": F39A,
+ "note-multiple": F6B7,
+ "note-multiple-outline": F6B8,
+ "note-outline": F39B,
+ "note-plus": F39C,
+ "note-plus-outline": F39D,
+ "note-text": F39E,
+ "notebook": F82D,
+ "notification-clear-all": F39F,
+ "npm": F6F6,
+ "nuke": F6A3,
+ "null": F7E1,
+ "numeric": F3A0,
+ "numeric-0-box": F3A1,
+ "numeric-0-box-multiple-outline": F3A2,
+ "numeric-0-box-outline": F3A3,
+ "numeric-1-box": F3A4,
+ "numeric-1-box-multiple-outline": F3A5,
+ "numeric-1-box-outline": F3A6,
+ "numeric-2-box": F3A7,
+ "numeric-2-box-multiple-outline": F3A8,
+ "numeric-2-box-outline": F3A9,
+ "numeric-3-box": F3AA,
+ "numeric-3-box-multiple-outline": F3AB,
+ "numeric-3-box-outline": F3AC,
+ "numeric-4-box": F3AD,
+ "numeric-4-box-multiple-outline": F3AE,
+ "numeric-4-box-outline": F3AF,
+ "numeric-5-box": F3B0,
+ "numeric-5-box-multiple-outline": F3B1,
+ "numeric-5-box-outline": F3B2,
+ "numeric-6-box": F3B3,
+ "numeric-6-box-multiple-outline": F3B4,
+ "numeric-6-box-outline": F3B5,
+ "numeric-7-box": F3B6,
+ "numeric-7-box-multiple-outline": F3B7,
+ "numeric-7-box-outline": F3B8,
+ "numeric-8-box": F3B9,
+ "numeric-8-box-multiple-outline": F3BA,
+ "numeric-8-box-outline": F3BB,
+ "numeric-9-box": F3BC,
+ "numeric-9-box-multiple-outline": F3BD,
+ "numeric-9-box-outline": F3BE,
+ "numeric-9-plus-box": F3BF,
+ "numeric-9-plus-box-multiple-outline": F3C0,
+ "numeric-9-plus-box-outline": F3C1,
+ "nut": F6F7,
+ "nutrition": F3C2,
+ "oar": F67B,
+ "octagon": F3C3,
+ "octagon-outline": F3C4,
+ "octagram": F6F8,
+ "octagram-outline": F774,
+ "odnoklassniki": F3C5,
+ "office": F3C6,
+ "oil": F3C7,
+ "oil-temperature": F3C8,
+ "omega": F3C9,
+ "onedrive": F3CA,
+ "onenote": F746,
+ "onepassword": F880,
+ "opacity": F5CC,
+ "open-in-app": F3CB,
+ "open-in-new": F3CC,
+ "openid": F3CD,
+ "opera": F3CE,
+ "orbit": F018,
+ "ornament": F3CF,
+ "ornament-variant": F3D0,
+ "owl": F3D2,
+ "package": F3D3,
+ "package-down": F3D4,
+ "package-up": F3D5,
+ "package-variant": F3D6,
+ "package-variant-closed": F3D7,
+ "page-first": F600,
+ "page-last": F601,
+ "page-layout-body": F6F9,
+ "page-layout-footer": F6FA,
+ "page-layout-header": F6FB,
+ "page-layout-sidebar-left": F6FC,
+ "page-layout-sidebar-right": F6FD,
+ "palette": F3D8,
+ "palette-advanced": F3D9,
+ "palette-swatch": F8B4,
+ "panda": F3DA,
+ "pandora": F3DB,
+ "panorama": F3DC,
+ "panorama-fisheye": F3DD,
+ "panorama-horizontal": F3DE,
+ "panorama-vertical": F3DF,
+ "panorama-wide-angle": F3E0,
+ "paper-cut-vertical": F3E1,
+ "paperclip": F3E2,
+ "parking": F3E3,
+ "passport": F7E2,
+ "patreon": F881,
+ "pause": F3E4,
+ "pause-circle": F3E5,
+ "pause-circle-outline": F3E6,
+ "pause-octagon": F3E7,
+ "pause-octagon-outline": F3E8,
+ "paw": F3E9,
+ "paw-off": F657,
+ "paypal": F882,
+ "peace": F883,
+ "pen": F3EA,
+ "pencil": F3EB,
+ "pencil-box": F3EC,
+ "pencil-box-outline": F3ED,
+ "pencil-circle": F6FE,
+ "pencil-circle-outline": F775,
+ "pencil-lock": F3EE,
+ "pencil-off": F3EF,
+ "pentagon": F6FF,
+ "pentagon-outline": F700,
+ "percent": F3F0,
+ "periodic-table": F8B5,
+ "periodic-table-co2": F7E3,
+ "periscope": F747,
+ "pharmacy": F3F1,
+ "phone": F3F2,
+ "phone-bluetooth": F3F3,
+ "phone-classic": F602,
+ "phone-forward": F3F4,
+ "phone-hangup": F3F5,
+ "phone-in-talk": F3F6,
+ "phone-incoming": F3F7,
+ "phone-locked": F3F8,
+ "phone-log": F3F9,
+ "phone-minus": F658,
+ "phone-missed": F3FA,
+ "phone-outgoing": F3FB,
+ "phone-paused": F3FC,
+ "phone-plus": F659,
+ "phone-return": F82E,
+ "phone-rotate-landscape": F884,
+ "phone-rotate-portrait": F885,
+ "phone-settings": F3FD,
+ "phone-voip": F3FE,
+ "pi": F3FF,
+ "pi-box": F400,
+ "piano": F67C,
+ "pickaxe": F8B6,
+ "pier": F886,
+ "pier-crane": F887,
+ "pig": F401,
+ "pill": F402,
+ "pillar": F701,
+ "pin": F403,
+ "pin-off": F404,
+ "pine-tree": F405,
+ "pine-tree-box": F406,
+ "pinterest": F407,
+ "pinterest-box": F408,
+ "pipe": F7E4,
+ "pipe-disconnected": F7E5,
+ "pipe-leak": F888,
+ "pistol": F702,
+ "piston": F889,
+ "pizza": F409,
+ "plane-shield": F6BA,
+ "play": F40A,
+ "play-box-outline": F40B,
+ "play-circle": F40C,
+ "play-circle-outline": F40D,
+ "play-network": F88A,
+ "play-pause": F40E,
+ "play-protected-content": F40F,
+ "playlist-check": F5C7,
+ "playlist-minus": F410,
+ "playlist-play": F411,
+ "playlist-plus": F412,
+ "playlist-remove": F413,
+ "playstation": F414,
+ "plex": F6B9,
+ "plus": F415,
+ "plus-box": F416,
+ "plus-box-outline": F703,
+ "plus-circle": F417,
+ "plus-circle-multiple-outline": F418,
+ "plus-circle-outline": F419,
+ "plus-network": F41A,
+ "plus-one": F41B,
+ "plus-outline": F704,
+ "pocket": F41C,
+ "pokeball": F41D,
+ "poker-chip": F82F,
+ "polaroid": F41E,
+ "poll": F41F,
+ "poll-box": F420,
+ "polymer": F421,
+ "pool": F606,
+ "popcorn": F422,
+ "pot": F65A,
+ "pot-mix": F65B,
+ "pound": F423,
+ "pound-box": F424,
+ "power": F425,
+ "power-plug": F6A4,
+ "power-plug-off": F6A5,
+ "power-settings": F426,
+ "power-socket": F427,
+ "power-socket-eu": F7E6,
+ "power-socket-uk": F7E7,
+ "power-socket-us": F7E8,
+ "prescription": F705,
+ "presentation": F428,
+ "presentation-play": F429,
+ "printer": F42A,
+ "printer-3d": F42B,
+ "printer-alert": F42C,
+ "printer-settings": F706,
+ "priority-high": F603,
+ "priority-low": F604,
+ "professional-hexagon": F42D,
+ "projector": F42E,
+ "projector-screen": F42F,
+ "publish": F6A6,
+ "pulse": F430,
+ "puzzle": F431,
+ "qqchat": F605,
+ "qrcode": F432,
+ "qrcode-edit": F8B7,
+ "qrcode-scan": F433,
+ "quadcopter": F434,
+ "quality-high": F435,
+ "quicktime": F436,
+ "radar": F437,
+ "radiator": F438,
+ "radio": F439,
+ "radio-handheld": F43A,
+ "radio-tower": F43B,
+ "radioactive": F43C,
+ "radiobox-blank": F43D,
+ "radiobox-marked": F43E,
+ "raspberrypi": F43F,
+ "ray-end": F440,
+ "ray-end-arrow": F441,
+ "ray-start": F442,
+ "ray-start-arrow": F443,
+ "ray-start-end": F444,
+ "ray-vertex": F445,
+ "react": F707,
+ "read": F447,
+ "receipt": F449,
+ "record": F44A,
+ "record-rec": F44B,
+ "recycle": F44C,
+ "reddit": F44D,
+ "redo": F44E,
+ "redo-variant": F44F,
+ "refresh": F450,
+ "regex": F451,
+ "relative-scale": F452,
+ "reload": F453,
+ "reminder": F88B,
+ "remote": F454,
+ "remote-desktop": F8B8,
+ "rename-box": F455,
+ "reorder-horizontal": F687,
+ "reorder-vertical": F688,
+ "repeat": F456,
+ "repeat-off": F457,
+ "repeat-once": F458,
+ "replay": F459,
+ "reply": F45A,
+ "reply-all": F45B,
+ "reproduction": F45C,
+ "resize-bottom-right": F45D,
+ "responsive": F45E,
+ "restart": F708,
+ "restore": F6A7,
+ "rewind": F45F,
+ "rewind-outline": F709,
+ "rhombus": F70A,
+ "rhombus-outline": F70B,
+ "ribbon": F460,
+ "rice": F7E9,
+ "ring": F7EA,
+ "road": F461,
+ "road-variant": F462,
+ "robot": F6A8,
+ "rocket": F463,
+ "room-service": F88C,
+ "roomba": F70C,
+ "rotate-3d": F464,
+ "rotate-left": F465,
+ "rotate-left-variant": F466,
+ "rotate-right": F467,
+ "rotate-right-variant": F468,
+ "rounded-corner": F607,
+ "router-wireless": F469,
+ "routes": F46A,
+ "rowing": F608,
+ "rss": F46B,
+ "rss-box": F46C,
+ "ruler": F46D,
+ "run": F70D,
+ "run-fast": F46E,
+ "sale": F46F,
+ "salesforce": F88D,
+ "sass": F7EB,
+ "satellite": F470,
+ "satellite-variant": F471,
+ "sausage": F8B9,
+ "saxophone": F609,
+ "scale": F472,
+ "scale-balance": F5D1,
+ "scale-bathroom": F473,
+ "scanner": F6AA,
+ "school": F474,
+ "screen-rotation": F475,
+ "screen-rotation-lock": F476,
+ "screwdriver": F477,
+ "script": F478,
+ "sd": F479,
+ "seal": F47A,
+ "search-web": F70E,
+ "seat-flat": F47B,
+ "seat-flat-angled": F47C,
+ "seat-individual-suite": F47D,
+ "seat-legroom-extra": F47E,
+ "seat-legroom-normal": F47F,
+ "seat-legroom-reduced": F480,
+ "seat-recline-extra": F481,
+ "seat-recline-normal": F482,
+ "security": F483,
+ "security-account": F88E,
+ "security-home": F689,
+ "security-network": F484,
+ "select": F485,
+ "select-all": F486,
+ "select-inverse": F487,
+ "select-off": F488,
+ "selection": F489,
+ "selection-off": F776,
+ "send": F48A,
+ "send-secure": F7EC,
+ "serial-port": F65C,
+ "server": F48B,
+ "server-minus": F48C,
+ "server-network": F48D,
+ "server-network-off": F48E,
+ "server-off": F48F,
+ "server-plus": F490,
+ "server-remove": F491,
+ "server-security": F492,
+ "set-all": F777,
+ "set-center": F778,
+ "set-center-right": F779,
+ "set-left": F77A,
+ "set-left-center": F77B,
+ "set-left-right": F77C,
+ "set-none": F77D,
+ "set-right": F77E,
+ "settings": F493,
+ "settings-box": F494,
+ "settings-outline": F8BA,
+ "shape": F830,
+ "shape-circle-plus": F65D,
+ "shape-outline": F831,
+ "shape-plus": F495,
+ "shape-polygon-plus": F65E,
+ "shape-rectangle-plus": F65F,
+ "shape-square-plus": F660,
+ "share": F496,
+ "share-variant": F497,
+ "shield": F498,
+ "shield-half-full": F77F,
+ "shield-outline": F499,
+ "ship-wheel": F832,
+ "shopping": F49A,
+ "shopping-music": F49B,
+ "shovel": F70F,
+ "shovel-off": F710,
+ "shredder": F49C,
+ "shuffle": F49D,
+ "shuffle-disabled": F49E,
+ "shuffle-variant": F49F,
+ "sigma": F4A0,
+ "sigma-lower": F62B,
+ "sign-caution": F4A1,
+ "sign-direction": F780,
+ "sign-text": F781,
+ "signal": F4A2,
+ "signal-2g": F711,
+ "signal-3g": F712,
+ "signal-4g": F713,
+ "signal-cellular-1": F8BB,
+ "signal-cellular-2": F8BC,
+ "signal-cellular-3": F8BD,
+ "signal-cellular-outline": F8BE,
+ "signal-hspa": F714,
+ "signal-hspa-plus": F715,
+ "signal-off": F782,
+ "signal-variant": F60A,
+ "silverware": F4A3,
+ "silverware-fork": F4A4,
+ "silverware-spoon": F4A5,
+ "silverware-variant": F4A6,
+ "sim": F4A7,
+ "sim-alert": F4A8,
+ "sim-off": F4A9,
+ "sitemap": F4AA,
+ "skip-backward": F4AB,
+ "skip-forward": F4AC,
+ "skip-next": F4AD,
+ "skip-next-circle": F661,
+ "skip-next-circle-outline": F662,
+ "skip-previous": F4AE,
+ "skip-previous-circle": F663,
+ "skip-previous-circle-outline": F664,
+ "skull": F68B,
+ "skype": F4AF,
+ "skype-business": F4B0,
+ "slack": F4B1,
+ "sleep": F4B2,
+ "sleep-off": F4B3,
+ "smoking": F4B4,
+ "smoking-off": F4B5,
+ "snapchat": F4B6,
+ "snowflake": F716,
+ "snowman": F4B7,
+ "soccer": F4B8,
+ "soccer-field": F833,
+ "sofa": F4B9,
+ "solid": F68C,
+ "sort": F4BA,
+ "sort-alphabetical": F4BB,
+ "sort-ascending": F4BC,
+ "sort-descending": F4BD,
+ "sort-numeric": F4BE,
+ "sort-variant": F4BF,
+ "soundcloud": F4C0,
+ "source-branch": F62C,
+ "source-commit": F717,
+ "source-commit-end": F718,
+ "source-commit-end-local": F719,
+ "source-commit-local": F71A,
+ "source-commit-next-local": F71B,
+ "source-commit-start": F71C,
+ "source-commit-start-next-local": F71D,
+ "source-fork": F4C1,
+ "source-merge": F62D,
+ "source-pull": F4C2,
+ "soy-sauce": F7ED,
+ "speaker": F4C3,
+ "speaker-off": F4C4,
+ "speaker-wireless": F71E,
+ "speedometer": F4C5,
+ "spellcheck": F4C6,
+ "spotify": F4C7,
+ "spotlight": F4C8,
+ "spotlight-beam": F4C9,
+ "spray": F665,
+ "square": F763,
+ "square-inc": F4CA,
+ "square-inc-cash": F4CB,
+ "square-outline": F762,
+ "square-root": F783,
+ "ssh": F8BF,
+ "stack-overflow": F4CC,
+ "stackexchange": F60B,
+ "stadium": F71F,
+ "stairs": F4CD,
+ "standard-definition": F7EE,
+ "star": F4CE,
+ "star-circle": F4CF,
+ "star-half": F4D0,
+ "star-off": F4D1,
+ "star-outline": F4D2,
+ "steam": F4D3,
+ "steering": F4D4,
+ "step-backward": F4D5,
+ "step-backward-2": F4D6,
+ "step-forward": F4D7,
+ "step-forward-2": F4D8,
+ "stethoscope": F4D9,
+ "sticker": F5D0,
+ "sticker-emoji": F784,
+ "stocking": F4DA,
+ "stop": F4DB,
+ "stop-circle": F666,
+ "stop-circle-outline": F667,
+ "store": F4DC,
+ "store-24-hour": F4DD,
+ "stove": F4DE,
+ "subdirectory-arrow-left": F60C,
+ "subdirectory-arrow-right": F60D,
+ "subway": F6AB,
+ "subway-variant": F4DF,
+ "summit": F785,
+ "sunglasses": F4E0,
+ "surround-sound": F5C5,
+ "surround-sound-2-0": F7EF,
+ "surround-sound-3-1": F7F0,
+ "surround-sound-5-1": F7F1,
+ "surround-sound-7-1": F7F2,
+ "svg": F720,
+ "swap-horizontal": F4E1,
+ "swap-horizontal-variant": F8C0,
+ "swap-vertical": F4E2,
+ "swap-vertical-variant": F8C1,
+ "swim": F4E3,
+ "switch": F4E4,
+ "sword": F4E5,
+ "sword-cross": F786,
+ "sync": F4E6,
+ "sync-alert": F4E7,
+ "sync-off": F4E8,
+ "tab": F4E9,
+ "tab-plus": F75B,
+ "tab-unselected": F4EA,
+ "table": F4EB,
+ "table-column": F834,
+ "table-column-plus-after": F4EC,
+ "table-column-plus-before": F4ED,
+ "table-column-remove": F4EE,
+ "table-column-width": F4EF,
+ "table-edit": F4F0,
+ "table-large": F4F1,
+ "table-of-contents": F835,
+ "table-row": F836,
+ "table-row-height": F4F2,
+ "table-row-plus-after": F4F3,
+ "table-row-plus-before": F4F4,
+ "table-row-remove": F4F5,
+ "table-settings": F837,
+ "tablet": F4F6,
+ "tablet-android": F4F7,
+ "tablet-ipad": F4F8,
+ "taco": F761,
+ "tag": F4F9,
+ "tag-faces": F4FA,
+ "tag-heart": F68A,
+ "tag-multiple": F4FB,
+ "tag-outline": F4FC,
+ "tag-plus": F721,
+ "tag-remove": F722,
+ "tag-text-outline": F4FD,
+ "target": F4FE,
+ "taxi": F4FF,
+ "teach": F88F,
+ "teamviewer": F500,
+ "telegram": F501,
+ "television": F502,
+ "television-box": F838,
+ "television-classic": F7F3,
+ "television-classic-off": F839,
+ "television-guide": F503,
+ "television-off": F83A,
+ "temperature-celsius": F504,
+ "temperature-fahrenheit": F505,
+ "temperature-kelvin": F506,
+ "tennis": F507,
+ "tent": F508,
+ "terrain": F509,
+ "test-tube": F668,
+ "text-shadow": F669,
+ "text-to-speech": F50A,
+ "text-to-speech-off": F50B,
+ "textbox": F60E,
+ "textbox-password": F7F4,
+ "texture": F50C,
+ "theater": F50D,
+ "theme-light-dark": F50E,
+ "thermometer": F50F,
+ "thermometer-lines": F510,
+ "thermostat-box": F890,
+ "thought-bubble": F7F5,
+ "thought-bubble-outline": F7F6,
+ "thumb-down": F511,
+ "thumb-down-outline": F512,
+ "thumb-up": F513,
+ "thumb-up-outline": F514,
+ "thumbs-up-down": F515,
+ "ticket": F516,
+ "ticket-account": F517,
+ "ticket-confirmation": F518,
+ "ticket-percent": F723,
+ "tie": F519,
+ "tilde": F724,
+ "timelapse": F51A,
+ "timer": F51B,
+ "timer-10": F51C,
+ "timer-3": F51D,
+ "timer-off": F51E,
+ "timer-sand": F51F,
+ "timer-sand-empty": F6AC,
+ "timer-sand-full": F78B,
+ "timetable": F520,
+ "toggle-switch": F521,
+ "toggle-switch-off": F522,
+ "tooltip": F523,
+ "tooltip-edit": F524,
+ "tooltip-image": F525,
+ "tooltip-outline": F526,
+ "tooltip-outline-plus": F527,
+ "tooltip-text": F528,
+ "tooth": F8C2,
+ "tooth-outline": F529,
+ "tor": F52A,
+ "tower-beach": F680,
+ "tower-fire": F681,
+ "towing": F83B,
+ "trackpad": F7F7,
+ "tractor": F891,
+ "traffic-light": F52B,
+ "train": F52C,
+ "train-variant": F8C3,
+ "tram": F52D,
+ "transcribe": F52E,
+ "transcribe-close": F52F,
+ "transfer": F530,
+ "transit-transfer": F6AD,
+ "translate": F5CA,
+ "treasure-chest": F725,
+ "tree": F531,
+ "trello": F532,
+ "trending-down": F533,
+ "trending-neutral": F534,
+ "trending-up": F535,
+ "triangle": F536,
+ "triangle-outline": F537,
+ "trophy": F538,
+ "trophy-award": F539,
+ "trophy-outline": F53A,
+ "trophy-variant": F53B,
+ "trophy-variant-outline": F53C,
+ "truck": F53D,
+ "truck-delivery": F53E,
+ "truck-fast": F787,
+ "truck-trailer": F726,
+ "tshirt-crew": F53F,
+ "tshirt-v": F540,
+ "tumblr": F541,
+ "tumblr-reblog": F542,
+ "tune": F62E,
+ "tune-vertical": F66A,
+ "twitch": F543,
+ "twitter": F544,
+ "twitter-box": F545,
+ "twitter-circle": F546,
+ "twitter-retweet": F547,
+ "uber": F748,
+ "ubuntu": F548,
+ "ultra-high-definition": F7F8,
+ "umbraco": F549,
+ "umbrella": F54A,
+ "umbrella-outline": F54B,
+ "undo": F54C,
+ "undo-variant": F54D,
+ "unfold-less-horizontal": F54E,
+ "unfold-less-vertical": F75F,
+ "unfold-more-horizontal": F54F,
+ "unfold-more-vertical": F760,
+ "ungroup": F550,
+ "unity": F6AE,
+ "untappd": F551,
+ "update": F6AF,
+ "upload": F552,
+ "upload-multiple": F83C,
+ "upload-network": F6F5,
+ "usb": F553,
+ "van-passenger": F7F9,
+ "van-utility": F7FA,
+ "vanish": F7FB,
+ "vector-arrange-above": F554,
+ "vector-arrange-below": F555,
+ "vector-circle": F556,
+ "vector-circle-variant": F557,
+ "vector-combine": F558,
+ "vector-curve": F559,
+ "vector-difference": F55A,
+ "vector-difference-ab": F55B,
+ "vector-difference-ba": F55C,
+ "vector-ellipse": F892,
+ "vector-intersection": F55D,
+ "vector-line": F55E,
+ "vector-point": F55F,
+ "vector-polygon": F560,
+ "vector-polyline": F561,
+ "vector-radius": F749,
+ "vector-rectangle": F5C6,
+ "vector-selection": F562,
+ "vector-square": F001,
+ "vector-triangle": F563,
+ "vector-union": F564,
+ "venmo": F578,
+ "verified": F565,
+ "vibrate": F566,
+ "video": F567,
+ "video-3d": F7FC,
+ "video-4k-box": F83D,
+ "video-input-antenna": F83E,
+ "video-input-component": F83F,
+ "video-input-hdmi": F840,
+ "video-input-svideo": F841,
+ "video-off": F568,
+ "video-switch": F569,
+ "view-agenda": F56A,
+ "view-array": F56B,
+ "view-carousel": F56C,
+ "view-column": F56D,
+ "view-dashboard": F56E,
+ "view-dashboard-variant": F842,
+ "view-day": F56F,
+ "view-grid": F570,
+ "view-headline": F571,
+ "view-list": F572,
+ "view-module": F573,
+ "view-parallel": F727,
+ "view-quilt": F574,
+ "view-sequential": F728,
+ "view-stream": F575,
+ "view-week": F576,
+ "vimeo": F577,
+ "violin": F60F,
+ "virtual-reality": F893,
+ "visualstudio": F610,
+ "vk": F579,
+ "vk-box": F57A,
+ "vk-circle": F57B,
+ "vlc": F57C,
+ "voice": F5CB,
+ "voicemail": F57D,
+ "volume-high": F57E,
+ "volume-low": F57F,
+ "volume-medium": F580,
+ "volume-minus": F75D,
+ "volume-mute": F75E,
+ "volume-off": F581,
+ "volume-plus": F75C,
+ "vpn": F582,
+ "vuejs": F843,
+ "walk": F583,
+ "wall": F7FD,
+ "wallet": F584,
+ "wallet-giftcard": F585,
+ "wallet-membership": F586,
+ "wallet-travel": F587,
+ "wan": F588,
+ "washing-machine": F729,
+ "watch": F589,
+ "watch-export": F58A,
+ "watch-export-variant": F894,
+ "watch-import": F58B,
+ "watch-import-variant": F895,
+ "watch-variant": F896,
+ "watch-vibrate": F6B0,
+ "water": F58C,
+ "water-off": F58D,
+ "water-percent": F58E,
+ "water-pump": F58F,
+ "watermark": F612,
+ "waves": F78C,
+ "weather-cloudy": F590,
+ "weather-fog": F591,
+ "weather-hail": F592,
+ "weather-hurricane": F897,
+ "weather-lightning": F593,
+ "weather-lightning-rainy": F67D,
+ "weather-night": F594,
+ "weather-partlycloudy": F595,
+ "weather-pouring": F596,
+ "weather-rainy": F597,
+ "weather-snowy": F598,
+ "weather-snowy-rainy": F67E,
+ "weather-sunny": F599,
+ "weather-sunset": F59A,
+ "weather-sunset-down": F59B,
+ "weather-sunset-up": F59C,
+ "weather-windy": F59D,
+ "weather-windy-variant": F59E,
+ "web": F59F,
+ "webcam": F5A0,
+ "webhook": F62F,
+ "webpack": F72A,
+ "wechat": F611,
+ "weight": F5A1,
+ "weight-kilogram": F5A2,
+ "whatsapp": F5A3,
+ "wheelchair-accessibility": F5A4,
+ "white-balance-auto": F5A5,
+ "white-balance-incandescent": F5A6,
+ "white-balance-iridescent": F5A7,
+ "white-balance-sunny": F5A8,
+ "widgets": F72B,
+ "wifi": F5A9,
+ "wifi-off": F5AA,
+ "wii": F5AB,
+ "wiiu": F72C,
+ "wikipedia": F5AC,
+ "window-close": F5AD,
+ "window-closed": F5AE,
+ "window-maximize": F5AF,
+ "window-minimize": F5B0,
+ "window-open": F5B1,
+ "window-restore": F5B2,
+ "windows": F5B3,
+ "wordpress": F5B4,
+ "worker": F5B5,
+ "wrap": F5B6,
+ "wrench": F5B7,
+ "wunderlist": F5B8,
+ "xamarin": F844,
+ "xamarin-outline": F845,
+ "xaml": F673,
+ "xbox": F5B9,
+ "xbox-controller": F5BA,
+ "xbox-controller-battery-alert": F74A,
+ "xbox-controller-battery-empty": F74B,
+ "xbox-controller-battery-full": F74C,
+ "xbox-controller-battery-low": F74D,
+ "xbox-controller-battery-medium": F74E,
+ "xbox-controller-battery-unknown": F74F,
+ "xbox-controller-off": F5BB,
+ "xda": F5BC,
+ "xing": F5BD,
+ "xing-box": F5BE,
+ "xing-circle": F5BF,
+ "xml": F5C0,
+ "xmpp": F7FE,
+ "yammer": F788,
+ "yeast": F5C1,
+ "yelp": F5C2,
+ "yin-yang": F67F,
+ "youtube-creator-studio": F846,
+ "youtube-gaming": F847,
+ "youtube-play": F5C3,
+ "youtube-tv": F448,
+ "zip-box": F5C4
+);
diff --git a/vendor/assets/stylesheets/mdi/materialdesignicons.scss b/vendor/assets/stylesheets/mdi/materialdesignicons.scss
new file mode 100644
index 0000000..607f04b
--- /dev/null
+++ b/vendor/assets/stylesheets/mdi/materialdesignicons.scss
@@ -0,0 +1,8 @@
+/* MaterialDesignIcons.com */
+@import "variables";
+@import "functions";
+@import "path";
+@import "core";
+@import "icons";
+@import "extras";
+@import "animated";
|