diff --git a/database/model/model.go b/database/model/model.go
index 6508a61e..b47be686 100644
--- a/database/model/model.go
+++ b/database/model/model.go
@@ -121,10 +121,10 @@ type Client struct {
}
type Server struct {
- Id int `json:"id" gorm:"primaryKey;autoIncrement"`
- Name string `json:"name" gorm:"unique;not null"`
- Address string `json:"address" gorm:"not null"`
- Port int `json:"port" gorm:"not null"`
- APIKey string `json:"apiKey" gorm:"not null"`
- Enable bool `json:"enable" gorm:"default:true"`
+ Id int `json:"id" gorm:"primaryKey;autoIncrement" form:"id"`
+ Name string `json:"name" gorm:"unique;not null" form:"name"`
+ Address string `json:"address" gorm:"not null" form:"address"`
+ Port int `json:"port" gorm:"not null" form:"port"`
+ APIKey string `json:"apiKey" gorm:"not null" form:"apiKey"`
+ Enable bool `json:"enable" gorm:"default:true" form:"enable"`
}
diff --git a/web/assets/bootstrap/bootstrap.min.css b/web/assets/bootstrap/bootstrap.min.css
new file mode 100644
index 00000000..d91db9d0
--- /dev/null
+++ b/web/assets/bootstrap/bootstrap.min.css
@@ -0,0 +1,13894 @@
+@charset "UTF-8";
+
+/*!
+ * Bootstrap v5.3.3 (https://getbootstrap.com/)
+ * Copyright 2011-2024 The Bootstrap Authors
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
+ */
+:root,
+[data-bs-theme=light] {
+ --bs-blue: #0d6efd;
+ --bs-indigo: #6610f2;
+ --bs-purple: #6f42c1;
+ --bs-pink: #d63384;
+ --bs-red: #dc3545;
+ --bs-orange: #fd7e14;
+ --bs-yellow: #ffc107;
+ --bs-green: #198754;
+ --bs-teal: #20c997;
+ --bs-cyan: #0dcaf0;
+ --bs-black: #000;
+ --bs-white: #fff;
+ --bs-gray: #6c757d;
+ --bs-gray-dark: #343a40;
+ --bs-gray-100: #f8f9fa;
+ --bs-gray-200: #e9ecef;
+ --bs-gray-300: #dee2e6;
+ --bs-gray-400: #ced4da;
+ --bs-gray-500: #adb5bd;
+ --bs-gray-600: #6c757d;
+ --bs-gray-700: #495057;
+ --bs-gray-800: #343a40;
+ --bs-gray-900: #212529;
+ --bs-primary: #0d6efd;
+ --bs-secondary: #6c757d;
+ --bs-success: #198754;
+ --bs-info: #0dcaf0;
+ --bs-warning: #ffc107;
+ --bs-danger: #dc3545;
+ --bs-light: #f8f9fa;
+ --bs-dark: #212529;
+ --bs-primary-rgb: 13, 110, 253;
+ --bs-secondary-rgb: 108, 117, 125;
+ --bs-success-rgb: 25, 135, 84;
+ --bs-info-rgb: 13, 202, 240;
+ --bs-warning-rgb: 255, 193, 7;
+ --bs-danger-rgb: 220, 53, 69;
+ --bs-light-rgb: 248, 249, 250;
+ --bs-dark-rgb: 33, 37, 41;
+ --bs-primary-text-emphasis: #052c65;
+ --bs-secondary-text-emphasis: #2b2f32;
+ --bs-success-text-emphasis: #0a3622;
+ --bs-info-text-emphasis: #055160;
+ --bs-warning-text-emphasis: #664d03;
+ --bs-danger-text-emphasis: #58151c;
+ --bs-light-text-emphasis: #495057;
+ --bs-dark-text-emphasis: #495057;
+ --bs-primary-bg-subtle: #cfe2ff;
+ --bs-secondary-bg-subtle: #e2e3e5;
+ --bs-success-bg-subtle: #d1e7dd;
+ --bs-info-bg-subtle: #cff4fc;
+ --bs-warning-bg-subtle: #fff3cd;
+ --bs-danger-bg-subtle: #f8d7da;
+ --bs-light-bg-subtle: #fcfcfd;
+ --bs-dark-bg-subtle: #ced4da;
+ --bs-primary-border-subtle: #9ec5fe;
+ --bs-secondary-border-subtle: #c4c8cb;
+ --bs-success-border-subtle: #a3cfbb;
+ --bs-info-border-subtle: #9eeaf9;
+ --bs-warning-border-subtle: #ffe69c;
+ --bs-danger-border-subtle: #f1aeb5;
+ --bs-light-border-subtle: #e9ecef;
+ --bs-dark-border-subtle: #adb5bd;
+ --bs-white-rgb: 255, 255, 255;
+ --bs-black-rgb: 0, 0, 0;
+ --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
+ --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
+ --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
+ --bs-body-font-family: var(--bs-font-sans-serif);
+ --bs-body-font-size: 1rem;
+ --bs-body-font-weight: 400;
+ --bs-body-line-height: 1.5;
+ --bs-body-color: #212529;
+ --bs-body-color-rgb: 33, 37, 41;
+ --bs-body-bg: #fff;
+ --bs-body-bg-rgb: 255, 255, 255;
+ --bs-emphasis-color: #000;
+ --bs-emphasis-color-rgb: 0, 0, 0;
+ --bs-secondary-color: rgba(33, 37, 41, 0.75);
+ --bs-secondary-color-rgb: 33, 37, 41;
+ --bs-secondary-bg: #e9ecef;
+ --bs-secondary-bg-rgb: 233, 236, 239;
+ --bs-tertiary-color: rgba(33, 37, 41, 0.5);
+ --bs-tertiary-color-rgb: 33, 37, 41;
+ --bs-tertiary-bg: #f8f9fa;
+ --bs-tertiary-bg-rgb: 248, 249, 250;
+ --bs-heading-color: inherit;
+ --bs-link-color: #0d6efd;
+ --bs-link-color-rgb: 13, 110, 253;
+ --bs-link-decoration: underline;
+ --bs-link-hover-color: #0a58ca;
+ --bs-link-hover-color-rgb: 10, 88, 202;
+ --bs-code-color: #d63384;
+ --bs-highlight-color: #212529;
+ --bs-highlight-bg: #fff3cd;
+ --bs-border-width: 1px;
+ --bs-border-style: solid;
+ --bs-border-color: #dee2e6;
+ --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
+ --bs-border-radius: 0.375rem;
+ --bs-border-radius-sm: 0.25rem;
+ --bs-border-radius-lg: 0.5rem;
+ --bs-border-radius-xl: 1rem;
+ --bs-border-radius-xxl: 2rem;
+ --bs-border-radius-2xl: var(--bs-border-radius-xxl);
+ --bs-border-radius-pill: 50rem;
+ --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
+ --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
+ --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
+ --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
+ --bs-focus-ring-width: 0.25rem;
+ --bs-focus-ring-opacity: 0.25;
+ --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
+ --bs-form-valid-color: #198754;
+ --bs-form-valid-border-color: #198754;
+ --bs-form-invalid-color: #dc3545;
+ --bs-form-invalid-border-color: #dc3545
+}
+
+[data-bs-theme=dark] {
+ color-scheme: dark;
+ --bs-body-color: #dee2e6;
+ --bs-body-color-rgb: 222, 226, 230;
+ --bs-body-bg: #212529;
+ --bs-body-bg-rgb: 33, 37, 41;
+ --bs-emphasis-color: #fff;
+ --bs-emphasis-color-rgb: 255, 255, 255;
+ --bs-secondary-color: rgba(222, 226, 230, 0.75);
+ --bs-secondary-color-rgb: 222, 226, 230;
+ --bs-secondary-bg: #343a40;
+ --bs-secondary-bg-rgb: 52, 58, 64;
+ --bs-tertiary-color: rgba(222, 226, 230, 0.5);
+ --bs-tertiary-color-rgb: 222, 226, 230;
+ --bs-tertiary-bg: #2b3035;
+ --bs-tertiary-bg-rgb: 43, 48, 53;
+ --bs-primary-text-emphasis: #6ea8fe;
+ --bs-secondary-text-emphasis: #a7acb1;
+ --bs-success-text-emphasis: #75b798;
+ --bs-info-text-emphasis: #6edff6;
+ --bs-warning-text-emphasis: #ffda6a;
+ --bs-danger-text-emphasis: #ea868f;
+ --bs-light-text-emphasis: #f8f9fa;
+ --bs-dark-text-emphasis: #dee2e6;
+ --bs-primary-bg-subtle: #031633;
+ --bs-secondary-bg-subtle: #161719;
+ --bs-success-bg-subtle: #051b11;
+ --bs-info-bg-subtle: #032830;
+ --bs-warning-bg-subtle: #332701;
+ --bs-danger-bg-subtle: #2c0b0e;
+ --bs-light-bg-subtle: #343a40;
+ --bs-dark-bg-subtle: #1a1d20;
+ --bs-primary-border-subtle: #084298;
+ --bs-secondary-border-subtle: #41464b;
+ --bs-success-border-subtle: #0f5132;
+ --bs-info-border-subtle: #087990;
+ --bs-warning-border-subtle: #997404;
+ --bs-danger-border-subtle: #842029;
+ --bs-light-border-subtle: #495057;
+ --bs-dark-border-subtle: #343a40;
+ --bs-heading-color: inherit;
+ --bs-link-color: #6ea8fe;
+ --bs-link-hover-color: #8bb9fe;
+ --bs-link-color-rgb: 110, 168, 254;
+ --bs-link-hover-color-rgb: 139, 185, 254;
+ --bs-code-color: #e685b5;
+ --bs-highlight-color: #dee2e6;
+ --bs-highlight-bg: #664d03;
+ --bs-border-color: #495057;
+ --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
+ --bs-form-valid-color: #75b798;
+ --bs-form-valid-border-color: #75b798;
+ --bs-form-invalid-color: #ea868f;
+ --bs-form-invalid-border-color: #ea868f
+}
+
+*,
+::after,
+::before {
+ box-sizing: border-box
+}
+
+@media (prefers-reduced-motion:no-preference) {
+ :root {
+ scroll-behavior: smooth
+ }
+}
+
+body {
+ margin: 0;
+ font-family: var(--bs-body-font-family);
+ font-size: var(--bs-body-font-size);
+ font-weight: var(--bs-body-font-weight);
+ line-height: var(--bs-body-line-height);
+ color: var(--bs-body-color);
+ text-align: var(--bs-body-text-align);
+ background-color: var(--bs-body-bg);
+ -webkit-text-size-adjust: 100%;
+ -webkit-tap-highlight-color: transparent
+}
+
+hr {
+ margin: 1rem 0;
+ color: inherit;
+ border: 0;
+ border-top: var(--bs-border-width) solid;
+ opacity: .25
+}
+
+.h1,
+.h2,
+.h3,
+.h4,
+.h5,
+.h6,
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ margin-top: 0;
+ margin-bottom: .5rem;
+ font-weight: 500;
+ line-height: 1.2;
+ color: var(--bs-heading-color)
+}
+
+.h1,
+h1 {
+ font-size: calc(1.375rem + 1.5vw)
+}
+
+@media (min-width:1200px) {
+
+ .h1,
+ h1 {
+ font-size: 2.5rem
+ }
+}
+
+.h2,
+h2 {
+ font-size: calc(1.325rem + .9vw)
+}
+
+@media (min-width:1200px) {
+
+ .h2,
+ h2 {
+ font-size: 2rem
+ }
+}
+
+.h3,
+h3 {
+ font-size: calc(1.3rem + .6vw)
+}
+
+@media (min-width:1200px) {
+
+ .h3,
+ h3 {
+ font-size: 1.75rem
+ }
+}
+
+.h4,
+h4 {
+ font-size: calc(1.275rem + .3vw)
+}
+
+@media (min-width:1200px) {
+
+ .h4,
+ h4 {
+ font-size: 1.5rem
+ }
+}
+
+.h5,
+h5 {
+ font-size: 1.25rem
+}
+
+.h6,
+h6 {
+ font-size: 1rem
+}
+
+p {
+ margin-top: 0;
+ margin-bottom: 1rem
+}
+
+abbr[title] {
+ -webkit-text-decoration: underline dotted;
+ text-decoration: underline dotted;
+ cursor: help;
+ -webkit-text-decoration-skip-ink: none;
+ text-decoration-skip-ink: none
+}
+
+address {
+ margin-bottom: 1rem;
+ font-style: normal;
+ line-height: inherit
+}
+
+ol,
+ul {
+ padding-left: 2rem
+}
+
+dl,
+ol,
+ul {
+ margin-top: 0;
+ margin-bottom: 1rem
+}
+
+ol ol,
+ol ul,
+ul ol,
+ul ul {
+ margin-bottom: 0
+}
+
+dt {
+ font-weight: 700
+}
+
+dd {
+ margin-bottom: .5rem;
+ margin-left: 0
+}
+
+blockquote {
+ margin: 0 0 1rem
+}
+
+b,
+strong {
+ font-weight: bolder
+}
+
+.small,
+small {
+ font-size: .875em
+}
+
+.mark,
+mark {
+ padding: .1875em;
+ color: var(--bs-highlight-color);
+ background-color: var(--bs-highlight-bg)
+}
+
+sub,
+sup {
+ position: relative;
+ font-size: .75em;
+ line-height: 0;
+ vertical-align: baseline
+}
+
+sub {
+ bottom: -.25em
+}
+
+sup {
+ top: -.5em
+}
+
+a {
+ color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
+ text-decoration: underline
+}
+
+a:hover {
+ --bs-link-color-rgb: var(--bs-link-hover-color-rgb)
+}
+
+a:not([href]):not([class]),
+a:not([href]):not([class]):hover {
+ color: inherit;
+ text-decoration: none
+}
+
+code,
+kbd,
+pre,
+samp {
+ font-family: var(--bs-font-monospace);
+ font-size: 1em
+}
+
+pre {
+ display: block;
+ margin-top: 0;
+ margin-bottom: 1rem;
+ overflow: auto;
+ font-size: .875em
+}
+
+pre code {
+ font-size: inherit;
+ color: inherit;
+ word-break: normal
+}
+
+code {
+ font-size: .875em;
+ color: var(--bs-code-color);
+ word-wrap: break-word
+}
+
+a>code {
+ color: inherit
+}
+
+kbd {
+ padding: .1875rem .375rem;
+ font-size: .875em;
+ color: var(--bs-body-bg);
+ background-color: var(--bs-body-color);
+ border-radius: .25rem
+}
+
+kbd kbd {
+ padding: 0;
+ font-size: 1em
+}
+
+figure {
+ margin: 0 0 1rem
+}
+
+img,
+svg {
+ vertical-align: middle
+}
+
+table {
+ caption-side: bottom;
+ border-collapse: collapse
+}
+
+caption {
+ padding-top: .5rem;
+ padding-bottom: .5rem;
+ color: var(--bs-secondary-color);
+ text-align: left
+}
+
+th {
+ text-align: inherit;
+ text-align: -webkit-match-parent
+}
+
+tbody,
+td,
+tfoot,
+th,
+thead,
+tr {
+ border-color: inherit;
+ border-style: solid;
+ border-width: 0
+}
+
+label {
+ display: inline-block
+}
+
+button {
+ border-radius: 0
+}
+
+button:focus:not(:focus-visible) {
+ outline: 0
+}
+
+button,
+input,
+optgroup,
+select,
+textarea {
+ margin: 0;
+ font-family: inherit;
+ font-size: inherit;
+ line-height: inherit
+}
+
+button,
+select {
+ text-transform: none
+}
+
+[role=button] {
+ cursor: pointer
+}
+
+select {
+ word-wrap: normal
+}
+
+select:disabled {
+ opacity: 1
+}
+
+[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
+ display: none !important
+}
+
+[type=button],
+[type=reset],
+[type=submit],
+button {
+ -webkit-appearance: button
+}
+
+[type=button]:not(:disabled),
+[type=reset]:not(:disabled),
+[type=submit]:not(:disabled),
+button:not(:disabled) {
+ cursor: pointer
+}
+
+::-moz-focus-inner {
+ padding: 0;
+ border-style: none
+}
+
+textarea {
+ resize: vertical
+}
+
+fieldset {
+ min-width: 0;
+ padding: 0;
+ margin: 0;
+ border: 0
+}
+
+legend {
+ float: left;
+ width: 100%;
+ padding: 0;
+ margin-bottom: .5rem;
+ font-size: calc(1.275rem + .3vw);
+ line-height: inherit
+}
+
+@media (min-width:1200px) {
+ legend {
+ font-size: 1.5rem
+ }
+}
+
+legend+* {
+ clear: left
+}
+
+::-webkit-datetime-edit-day-field,
+::-webkit-datetime-edit-fields-wrapper,
+::-webkit-datetime-edit-hour-field,
+::-webkit-datetime-edit-minute,
+::-webkit-datetime-edit-month-field,
+::-webkit-datetime-edit-text,
+::-webkit-datetime-edit-year-field {
+ padding: 0
+}
+
+::-webkit-inner-spin-button {
+ height: auto
+}
+
+[type=search] {
+ -webkit-appearance: textfield;
+ outline-offset: -2px
+}
+
+::-webkit-search-decoration {
+ -webkit-appearance: none
+}
+
+::-webkit-color-swatch-wrapper {
+ padding: 0
+}
+
+::-webkit-file-upload-button {
+ font: inherit;
+ -webkit-appearance: button
+}
+
+::file-selector-button {
+ font: inherit;
+ -webkit-appearance: button
+}
+
+output {
+ display: inline-block
+}
+
+iframe {
+ border: 0
+}
+
+summary {
+ display: list-item;
+ cursor: pointer
+}
+
+progress {
+ vertical-align: baseline
+}
+
+[hidden] {
+ display: none !important
+}
+
+.lead {
+ font-size: 1.25rem;
+ font-weight: 300
+}
+
+.display-1 {
+ font-size: calc(1.625rem + 4.5vw);
+ font-weight: 300;
+ line-height: 1.2
+}
+
+@media (min-width:1200px) {
+ .display-1 {
+ font-size: 5rem
+ }
+}
+
+.display-2 {
+ font-size: calc(1.575rem + 3.9vw);
+ font-weight: 300;
+ line-height: 1.2
+}
+
+@media (min-width:1200px) {
+ .display-2 {
+ font-size: 4.5rem
+ }
+}
+
+.display-3 {
+ font-size: calc(1.525rem + 3.3vw);
+ font-weight: 300;
+ line-height: 1.2
+}
+
+@media (min-width:1200px) {
+ .display-3 {
+ font-size: 4rem
+ }
+}
+
+.display-4 {
+ font-size: calc(1.475rem + 2.7vw);
+ font-weight: 300;
+ line-height: 1.2
+}
+
+@media (min-width:1200px) {
+ .display-4 {
+ font-size: 3.5rem
+ }
+}
+
+.display-5 {
+ font-size: calc(1.425rem + 2.1vw);
+ font-weight: 300;
+ line-height: 1.2
+}
+
+@media (min-width:1200px) {
+ .display-5 {
+ font-size: 3rem
+ }
+}
+
+.display-6 {
+ font-size: calc(1.375rem + 1.5vw);
+ font-weight: 300;
+ line-height: 1.2
+}
+
+@media (min-width:1200px) {
+ .display-6 {
+ font-size: 2.5rem
+ }
+}
+
+.list-unstyled {
+ padding-left: 0;
+ list-style: none
+}
+
+.list-inline {
+ padding-left: 0;
+ list-style: none
+}
+
+.list-inline-item {
+ display: inline-block
+}
+
+.list-inline-item:not(:last-child) {
+ margin-right: .5rem
+}
+
+.initialism {
+ font-size: .875em;
+ text-transform: uppercase
+}
+
+.blockquote {
+ margin-bottom: 1rem;
+ font-size: 1.25rem
+}
+
+.blockquote>:last-child {
+ margin-bottom: 0
+}
+
+.blockquote-footer {
+ margin-top: -1rem;
+ margin-bottom: 1rem;
+ font-size: .875em;
+ color: #6c757d
+}
+
+.blockquote-footer::before {
+ content: "— "
+}
+
+.img-fluid {
+ max-width: 100%;
+ height: auto
+}
+
+.img-thumbnail {
+ padding: .25rem;
+ background-color: var(--bs-body-bg);
+ border: var(--bs-border-width) solid var(--bs-border-color);
+ border-radius: var(--bs-border-radius);
+ max-width: 100%;
+ height: auto
+}
+
+.figure {
+ display: inline-block
+}
+
+.figure-img {
+ margin-bottom: .5rem;
+ line-height: 1
+}
+
+.figure-caption {
+ font-size: .875em;
+ color: var(--bs-secondary-color)
+}
+
+.container,
+.container-fluid,
+.container-lg,
+.container-md,
+.container-sm,
+.container-xl,
+.container-xxl {
+ --bs-gutter-x: 1.5rem;
+ --bs-gutter-y: 0;
+ width: 100%;
+ padding-right: calc(var(--bs-gutter-x) * .5);
+ padding-left: calc(var(--bs-gutter-x) * .5);
+ margin-right: auto;
+ margin-left: auto
+}
+
+@media (min-width:576px) {
+
+ .container,
+ .container-sm {
+ max-width: 540px
+ }
+}
+
+@media (min-width:768px) {
+
+ .container,
+ .container-md,
+ .container-sm {
+ max-width: 720px
+ }
+}
+
+@media (min-width:992px) {
+
+ .container,
+ .container-lg,
+ .container-md,
+ .container-sm {
+ max-width: 960px
+ }
+}
+
+@media (min-width:1200px) {
+
+ .container,
+ .container-lg,
+ .container-md,
+ .container-sm,
+ .container-xl {
+ max-width: 1140px
+ }
+}
+
+@media (min-width:1400px) {
+
+ .container,
+ .container-lg,
+ .container-md,
+ .container-sm,
+ .container-xl,
+ .container-xxl {
+ max-width: 1320px
+ }
+}
+
+:root {
+ --bs-breakpoint-xs: 0;
+ --bs-breakpoint-sm: 576px;
+ --bs-breakpoint-md: 768px;
+ --bs-breakpoint-lg: 992px;
+ --bs-breakpoint-xl: 1200px;
+ --bs-breakpoint-xxl: 1400px
+}
+
+.row {
+ --bs-gutter-x: 1.5rem;
+ --bs-gutter-y: 0;
+ display: flex;
+ flex-wrap: wrap;
+ margin-top: calc(-1 * var(--bs-gutter-y));
+ margin-right: calc(-.5 * var(--bs-gutter-x));
+ margin-left: calc(-.5 * var(--bs-gutter-x))
+}
+
+.row>* {
+ flex-shrink: 0;
+ width: 100%;
+ max-width: 100%;
+ padding-right: calc(var(--bs-gutter-x) * .5);
+ padding-left: calc(var(--bs-gutter-x) * .5);
+ margin-top: var(--bs-gutter-y)
+}
+
+.col {
+ flex: 1 0 0%
+}
+
+.row-cols-auto>* {
+ flex: 0 0 auto;
+ width: auto
+}
+
+.row-cols-1>* {
+ flex: 0 0 auto;
+ width: 100%
+}
+
+.row-cols-2>* {
+ flex: 0 0 auto;
+ width: 50%
+}
+
+.row-cols-3>* {
+ flex: 0 0 auto;
+ width: 33.33333333%
+}
+
+.row-cols-4>* {
+ flex: 0 0 auto;
+ width: 25%
+}
+
+.row-cols-5>* {
+ flex: 0 0 auto;
+ width: 20%
+}
+
+.row-cols-6>* {
+ flex: 0 0 auto;
+ width: 16.66666667%
+}
+
+.col-auto {
+ flex: 0 0 auto;
+ width: auto
+}
+
+.col-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%
+}
+
+.col-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%
+}
+
+.col-3 {
+ flex: 0 0 auto;
+ width: 25%
+}
+
+.col-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%
+}
+
+.col-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%
+}
+
+.col-6 {
+ flex: 0 0 auto;
+ width: 50%
+}
+
+.col-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%
+}
+
+.col-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%
+}
+
+.col-9 {
+ flex: 0 0 auto;
+ width: 75%
+}
+
+.col-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%
+}
+
+.col-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%
+}
+
+.col-12 {
+ flex: 0 0 auto;
+ width: 100%
+}
+
+.offset-1 {
+ margin-left: 8.33333333%
+}
+
+.offset-2 {
+ margin-left: 16.66666667%
+}
+
+.offset-3 {
+ margin-left: 25%
+}
+
+.offset-4 {
+ margin-left: 33.33333333%
+}
+
+.offset-5 {
+ margin-left: 41.66666667%
+}
+
+.offset-6 {
+ margin-left: 50%
+}
+
+.offset-7 {
+ margin-left: 58.33333333%
+}
+
+.offset-8 {
+ margin-left: 66.66666667%
+}
+
+.offset-9 {
+ margin-left: 75%
+}
+
+.offset-10 {
+ margin-left: 83.33333333%
+}
+
+.offset-11 {
+ margin-left: 91.66666667%
+}
+
+.g-0,
+.gx-0 {
+ --bs-gutter-x: 0
+}
+
+.g-0,
+.gy-0 {
+ --bs-gutter-y: 0
+}
+
+.g-1,
+.gx-1 {
+ --bs-gutter-x: 0.25rem
+}
+
+.g-1,
+.gy-1 {
+ --bs-gutter-y: 0.25rem
+}
+
+.g-2,
+.gx-2 {
+ --bs-gutter-x: 0.5rem
+}
+
+.g-2,
+.gy-2 {
+ --bs-gutter-y: 0.5rem
+}
+
+.g-3,
+.gx-3 {
+ --bs-gutter-x: 1rem
+}
+
+.g-3,
+.gy-3 {
+ --bs-gutter-y: 1rem
+}
+
+.g-4,
+.gx-4 {
+ --bs-gutter-x: 1.5rem
+}
+
+.g-4,
+.gy-4 {
+ --bs-gutter-y: 1.5rem
+}
+
+.g-5,
+.gx-5 {
+ --bs-gutter-x: 3rem
+}
+
+.g-5,
+.gy-5 {
+ --bs-gutter-y: 3rem
+}
+
+@media (min-width:576px) {
+ .col-sm {
+ flex: 1 0 0%
+ }
+
+ .row-cols-sm-auto>* {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .row-cols-sm-1>* {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .row-cols-sm-2>* {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .row-cols-sm-3>* {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .row-cols-sm-4>* {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .row-cols-sm-5>* {
+ flex: 0 0 auto;
+ width: 20%
+ }
+
+ .row-cols-sm-6>* {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-sm-auto {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .col-sm-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%
+ }
+
+ .col-sm-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-sm-3 {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .col-sm-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .col-sm-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%
+ }
+
+ .col-sm-6 {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .col-sm-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%
+ }
+
+ .col-sm-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%
+ }
+
+ .col-sm-9 {
+ flex: 0 0 auto;
+ width: 75%
+ }
+
+ .col-sm-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%
+ }
+
+ .col-sm-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%
+ }
+
+ .col-sm-12 {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .offset-sm-0 {
+ margin-left: 0
+ }
+
+ .offset-sm-1 {
+ margin-left: 8.33333333%
+ }
+
+ .offset-sm-2 {
+ margin-left: 16.66666667%
+ }
+
+ .offset-sm-3 {
+ margin-left: 25%
+ }
+
+ .offset-sm-4 {
+ margin-left: 33.33333333%
+ }
+
+ .offset-sm-5 {
+ margin-left: 41.66666667%
+ }
+
+ .offset-sm-6 {
+ margin-left: 50%
+ }
+
+ .offset-sm-7 {
+ margin-left: 58.33333333%
+ }
+
+ .offset-sm-8 {
+ margin-left: 66.66666667%
+ }
+
+ .offset-sm-9 {
+ margin-left: 75%
+ }
+
+ .offset-sm-10 {
+ margin-left: 83.33333333%
+ }
+
+ .offset-sm-11 {
+ margin-left: 91.66666667%
+ }
+
+ .g-sm-0,
+ .gx-sm-0 {
+ --bs-gutter-x: 0
+ }
+
+ .g-sm-0,
+ .gy-sm-0 {
+ --bs-gutter-y: 0
+ }
+
+ .g-sm-1,
+ .gx-sm-1 {
+ --bs-gutter-x: 0.25rem
+ }
+
+ .g-sm-1,
+ .gy-sm-1 {
+ --bs-gutter-y: 0.25rem
+ }
+
+ .g-sm-2,
+ .gx-sm-2 {
+ --bs-gutter-x: 0.5rem
+ }
+
+ .g-sm-2,
+ .gy-sm-2 {
+ --bs-gutter-y: 0.5rem
+ }
+
+ .g-sm-3,
+ .gx-sm-3 {
+ --bs-gutter-x: 1rem
+ }
+
+ .g-sm-3,
+ .gy-sm-3 {
+ --bs-gutter-y: 1rem
+ }
+
+ .g-sm-4,
+ .gx-sm-4 {
+ --bs-gutter-x: 1.5rem
+ }
+
+ .g-sm-4,
+ .gy-sm-4 {
+ --bs-gutter-y: 1.5rem
+ }
+
+ .g-sm-5,
+ .gx-sm-5 {
+ --bs-gutter-x: 3rem
+ }
+
+ .g-sm-5,
+ .gy-sm-5 {
+ --bs-gutter-y: 3rem
+ }
+}
+
+@media (min-width:768px) {
+ .col-md {
+ flex: 1 0 0%
+ }
+
+ .row-cols-md-auto>* {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .row-cols-md-1>* {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .row-cols-md-2>* {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .row-cols-md-3>* {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .row-cols-md-4>* {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .row-cols-md-5>* {
+ flex: 0 0 auto;
+ width: 20%
+ }
+
+ .row-cols-md-6>* {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-md-auto {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .col-md-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%
+ }
+
+ .col-md-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-md-3 {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .col-md-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .col-md-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%
+ }
+
+ .col-md-6 {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .col-md-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%
+ }
+
+ .col-md-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%
+ }
+
+ .col-md-9 {
+ flex: 0 0 auto;
+ width: 75%
+ }
+
+ .col-md-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%
+ }
+
+ .col-md-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%
+ }
+
+ .col-md-12 {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .offset-md-0 {
+ margin-left: 0
+ }
+
+ .offset-md-1 {
+ margin-left: 8.33333333%
+ }
+
+ .offset-md-2 {
+ margin-left: 16.66666667%
+ }
+
+ .offset-md-3 {
+ margin-left: 25%
+ }
+
+ .offset-md-4 {
+ margin-left: 33.33333333%
+ }
+
+ .offset-md-5 {
+ margin-left: 41.66666667%
+ }
+
+ .offset-md-6 {
+ margin-left: 50%
+ }
+
+ .offset-md-7 {
+ margin-left: 58.33333333%
+ }
+
+ .offset-md-8 {
+ margin-left: 66.66666667%
+ }
+
+ .offset-md-9 {
+ margin-left: 75%
+ }
+
+ .offset-md-10 {
+ margin-left: 83.33333333%
+ }
+
+ .offset-md-11 {
+ margin-left: 91.66666667%
+ }
+
+ .g-md-0,
+ .gx-md-0 {
+ --bs-gutter-x: 0
+ }
+
+ .g-md-0,
+ .gy-md-0 {
+ --bs-gutter-y: 0
+ }
+
+ .g-md-1,
+ .gx-md-1 {
+ --bs-gutter-x: 0.25rem
+ }
+
+ .g-md-1,
+ .gy-md-1 {
+ --bs-gutter-y: 0.25rem
+ }
+
+ .g-md-2,
+ .gx-md-2 {
+ --bs-gutter-x: 0.5rem
+ }
+
+ .g-md-2,
+ .gy-md-2 {
+ --bs-gutter-y: 0.5rem
+ }
+
+ .g-md-3,
+ .gx-md-3 {
+ --bs-gutter-x: 1rem
+ }
+
+ .g-md-3,
+ .gy-md-3 {
+ --bs-gutter-y: 1rem
+ }
+
+ .g-md-4,
+ .gx-md-4 {
+ --bs-gutter-x: 1.5rem
+ }
+
+ .g-md-4,
+ .gy-md-4 {
+ --bs-gutter-y: 1.5rem
+ }
+
+ .g-md-5,
+ .gx-md-5 {
+ --bs-gutter-x: 3rem
+ }
+
+ .g-md-5,
+ .gy-md-5 {
+ --bs-gutter-y: 3rem
+ }
+}
+
+@media (min-width:992px) {
+ .col-lg {
+ flex: 1 0 0%
+ }
+
+ .row-cols-lg-auto>* {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .row-cols-lg-1>* {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .row-cols-lg-2>* {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .row-cols-lg-3>* {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .row-cols-lg-4>* {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .row-cols-lg-5>* {
+ flex: 0 0 auto;
+ width: 20%
+ }
+
+ .row-cols-lg-6>* {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-lg-auto {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .col-lg-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%
+ }
+
+ .col-lg-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-lg-3 {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .col-lg-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .col-lg-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%
+ }
+
+ .col-lg-6 {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .col-lg-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%
+ }
+
+ .col-lg-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%
+ }
+
+ .col-lg-9 {
+ flex: 0 0 auto;
+ width: 75%
+ }
+
+ .col-lg-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%
+ }
+
+ .col-lg-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%
+ }
+
+ .col-lg-12 {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .offset-lg-0 {
+ margin-left: 0
+ }
+
+ .offset-lg-1 {
+ margin-left: 8.33333333%
+ }
+
+ .offset-lg-2 {
+ margin-left: 16.66666667%
+ }
+
+ .offset-lg-3 {
+ margin-left: 25%
+ }
+
+ .offset-lg-4 {
+ margin-left: 33.33333333%
+ }
+
+ .offset-lg-5 {
+ margin-left: 41.66666667%
+ }
+
+ .offset-lg-6 {
+ margin-left: 50%
+ }
+
+ .offset-lg-7 {
+ margin-left: 58.33333333%
+ }
+
+ .offset-lg-8 {
+ margin-left: 66.66666667%
+ }
+
+ .offset-lg-9 {
+ margin-left: 75%
+ }
+
+ .offset-lg-10 {
+ margin-left: 83.33333333%
+ }
+
+ .offset-lg-11 {
+ margin-left: 91.66666667%
+ }
+
+ .g-lg-0,
+ .gx-lg-0 {
+ --bs-gutter-x: 0
+ }
+
+ .g-lg-0,
+ .gy-lg-0 {
+ --bs-gutter-y: 0
+ }
+
+ .g-lg-1,
+ .gx-lg-1 {
+ --bs-gutter-x: 0.25rem
+ }
+
+ .g-lg-1,
+ .gy-lg-1 {
+ --bs-gutter-y: 0.25rem
+ }
+
+ .g-lg-2,
+ .gx-lg-2 {
+ --bs-gutter-x: 0.5rem
+ }
+
+ .g-lg-2,
+ .gy-lg-2 {
+ --bs-gutter-y: 0.5rem
+ }
+
+ .g-lg-3,
+ .gx-lg-3 {
+ --bs-gutter-x: 1rem
+ }
+
+ .g-lg-3,
+ .gy-lg-3 {
+ --bs-gutter-y: 1rem
+ }
+
+ .g-lg-4,
+ .gx-lg-4 {
+ --bs-gutter-x: 1.5rem
+ }
+
+ .g-lg-4,
+ .gy-lg-4 {
+ --bs-gutter-y: 1.5rem
+ }
+
+ .g-lg-5,
+ .gx-lg-5 {
+ --bs-gutter-x: 3rem
+ }
+
+ .g-lg-5,
+ .gy-lg-5 {
+ --bs-gutter-y: 3rem
+ }
+}
+
+@media (min-width:1200px) {
+ .col-xl {
+ flex: 1 0 0%
+ }
+
+ .row-cols-xl-auto>* {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .row-cols-xl-1>* {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .row-cols-xl-2>* {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .row-cols-xl-3>* {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .row-cols-xl-4>* {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .row-cols-xl-5>* {
+ flex: 0 0 auto;
+ width: 20%
+ }
+
+ .row-cols-xl-6>* {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-xl-auto {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .col-xl-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%
+ }
+
+ .col-xl-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-xl-3 {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .col-xl-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .col-xl-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%
+ }
+
+ .col-xl-6 {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .col-xl-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%
+ }
+
+ .col-xl-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%
+ }
+
+ .col-xl-9 {
+ flex: 0 0 auto;
+ width: 75%
+ }
+
+ .col-xl-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%
+ }
+
+ .col-xl-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%
+ }
+
+ .col-xl-12 {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .offset-xl-0 {
+ margin-left: 0
+ }
+
+ .offset-xl-1 {
+ margin-left: 8.33333333%
+ }
+
+ .offset-xl-2 {
+ margin-left: 16.66666667%
+ }
+
+ .offset-xl-3 {
+ margin-left: 25%
+ }
+
+ .offset-xl-4 {
+ margin-left: 33.33333333%
+ }
+
+ .offset-xl-5 {
+ margin-left: 41.66666667%
+ }
+
+ .offset-xl-6 {
+ margin-left: 50%
+ }
+
+ .offset-xl-7 {
+ margin-left: 58.33333333%
+ }
+
+ .offset-xl-8 {
+ margin-left: 66.66666667%
+ }
+
+ .offset-xl-9 {
+ margin-left: 75%
+ }
+
+ .offset-xl-10 {
+ margin-left: 83.33333333%
+ }
+
+ .offset-xl-11 {
+ margin-left: 91.66666667%
+ }
+
+ .g-xl-0,
+ .gx-xl-0 {
+ --bs-gutter-x: 0
+ }
+
+ .g-xl-0,
+ .gy-xl-0 {
+ --bs-gutter-y: 0
+ }
+
+ .g-xl-1,
+ .gx-xl-1 {
+ --bs-gutter-x: 0.25rem
+ }
+
+ .g-xl-1,
+ .gy-xl-1 {
+ --bs-gutter-y: 0.25rem
+ }
+
+ .g-xl-2,
+ .gx-xl-2 {
+ --bs-gutter-x: 0.5rem
+ }
+
+ .g-xl-2,
+ .gy-xl-2 {
+ --bs-gutter-y: 0.5rem
+ }
+
+ .g-xl-3,
+ .gx-xl-3 {
+ --bs-gutter-x: 1rem
+ }
+
+ .g-xl-3,
+ .gy-xl-3 {
+ --bs-gutter-y: 1rem
+ }
+
+ .g-xl-4,
+ .gx-xl-4 {
+ --bs-gutter-x: 1.5rem
+ }
+
+ .g-xl-4,
+ .gy-xl-4 {
+ --bs-gutter-y: 1.5rem
+ }
+
+ .g-xl-5,
+ .gx-xl-5 {
+ --bs-gutter-x: 3rem
+ }
+
+ .g-xl-5,
+ .gy-xl-5 {
+ --bs-gutter-y: 3rem
+ }
+}
+
+@media (min-width:1400px) {
+ .col-xxl {
+ flex: 1 0 0%
+ }
+
+ .row-cols-xxl-auto>* {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .row-cols-xxl-1>* {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .row-cols-xxl-2>* {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .row-cols-xxl-3>* {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .row-cols-xxl-4>* {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .row-cols-xxl-5>* {
+ flex: 0 0 auto;
+ width: 20%
+ }
+
+ .row-cols-xxl-6>* {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-xxl-auto {
+ flex: 0 0 auto;
+ width: auto
+ }
+
+ .col-xxl-1 {
+ flex: 0 0 auto;
+ width: 8.33333333%
+ }
+
+ .col-xxl-2 {
+ flex: 0 0 auto;
+ width: 16.66666667%
+ }
+
+ .col-xxl-3 {
+ flex: 0 0 auto;
+ width: 25%
+ }
+
+ .col-xxl-4 {
+ flex: 0 0 auto;
+ width: 33.33333333%
+ }
+
+ .col-xxl-5 {
+ flex: 0 0 auto;
+ width: 41.66666667%
+ }
+
+ .col-xxl-6 {
+ flex: 0 0 auto;
+ width: 50%
+ }
+
+ .col-xxl-7 {
+ flex: 0 0 auto;
+ width: 58.33333333%
+ }
+
+ .col-xxl-8 {
+ flex: 0 0 auto;
+ width: 66.66666667%
+ }
+
+ .col-xxl-9 {
+ flex: 0 0 auto;
+ width: 75%
+ }
+
+ .col-xxl-10 {
+ flex: 0 0 auto;
+ width: 83.33333333%
+ }
+
+ .col-xxl-11 {
+ flex: 0 0 auto;
+ width: 91.66666667%
+ }
+
+ .col-xxl-12 {
+ flex: 0 0 auto;
+ width: 100%
+ }
+
+ .offset-xxl-0 {
+ margin-left: 0
+ }
+
+ .offset-xxl-1 {
+ margin-left: 8.33333333%
+ }
+
+ .offset-xxl-2 {
+ margin-left: 16.66666667%
+ }
+
+ .offset-xxl-3 {
+ margin-left: 25%
+ }
+
+ .offset-xxl-4 {
+ margin-left: 33.33333333%
+ }
+
+ .offset-xxl-5 {
+ margin-left: 41.66666667%
+ }
+
+ .offset-xxl-6 {
+ margin-left: 50%
+ }
+
+ .offset-xxl-7 {
+ margin-left: 58.33333333%
+ }
+
+ .offset-xxl-8 {
+ margin-left: 66.66666667%
+ }
+
+ .offset-xxl-9 {
+ margin-left: 75%
+ }
+
+ .offset-xxl-10 {
+ margin-left: 83.33333333%
+ }
+
+ .offset-xxl-11 {
+ margin-left: 91.66666667%
+ }
+
+ .g-xxl-0,
+ .gx-xxl-0 {
+ --bs-gutter-x: 0
+ }
+
+ .g-xxl-0,
+ .gy-xxl-0 {
+ --bs-gutter-y: 0
+ }
+
+ .g-xxl-1,
+ .gx-xxl-1 {
+ --bs-gutter-x: 0.25rem
+ }
+
+ .g-xxl-1,
+ .gy-xxl-1 {
+ --bs-gutter-y: 0.25rem
+ }
+
+ .g-xxl-2,
+ .gx-xxl-2 {
+ --bs-gutter-x: 0.5rem
+ }
+
+ .g-xxl-2,
+ .gy-xxl-2 {
+ --bs-gutter-y: 0.5rem
+ }
+
+ .g-xxl-3,
+ .gx-xxl-3 {
+ --bs-gutter-x: 1rem
+ }
+
+ .g-xxl-3,
+ .gy-xxl-3 {
+ --bs-gutter-y: 1rem
+ }
+
+ .g-xxl-4,
+ .gx-xxl-4 {
+ --bs-gutter-x: 1.5rem
+ }
+
+ .g-xxl-4,
+ .gy-xxl-4 {
+ --bs-gutter-y: 1.5rem
+ }
+
+ .g-xxl-5,
+ .gx-xxl-5 {
+ --bs-gutter-x: 3rem
+ }
+
+ .g-xxl-5,
+ .gy-xxl-5 {
+ --bs-gutter-y: 3rem
+ }
+}
+
+.table {
+ --bs-table-color-type: initial;
+ --bs-table-bg-type: initial;
+ --bs-table-color-state: initial;
+ --bs-table-bg-state: initial;
+ --bs-table-color: var(--bs-emphasis-color);
+ --bs-table-bg: var(--bs-body-bg);
+ --bs-table-border-color: var(--bs-border-color);
+ --bs-table-accent-bg: transparent;
+ --bs-table-striped-color: var(--bs-emphasis-color);
+ --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);
+ --bs-table-active-color: var(--bs-emphasis-color);
+ --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);
+ --bs-table-hover-color: var(--bs-emphasis-color);
+ --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);
+ width: 100%;
+ margin-bottom: 1rem;
+ vertical-align: top;
+ border-color: var(--bs-table-border-color)
+}
+
+.table>:not(caption)>*>* {
+ padding: .5rem .5rem;
+ color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
+ background-color: var(--bs-table-bg);
+ border-bottom-width: var(--bs-border-width);
+ box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))
+}
+
+.table>tbody {
+ vertical-align: inherit
+}
+
+.table>thead {
+ vertical-align: bottom
+}
+
+.table-group-divider {
+ border-top: calc(var(--bs-border-width) * 2) solid currentcolor
+}
+
+.caption-top {
+ caption-side: top
+}
+
+.table-sm>:not(caption)>*>* {
+ padding: .25rem .25rem
+}
+
+.table-bordered>:not(caption)>* {
+ border-width: var(--bs-border-width) 0
+}
+
+.table-bordered>:not(caption)>*>* {
+ border-width: 0 var(--bs-border-width)
+}
+
+.table-borderless>:not(caption)>*>* {
+ border-bottom-width: 0
+}
+
+.table-borderless>:not(:first-child) {
+ border-top-width: 0
+}
+
+.table-striped>tbody>tr:nth-of-type(odd)>* {
+ --bs-table-color-type: var(--bs-table-striped-color);
+ --bs-table-bg-type: var(--bs-table-striped-bg)
+}
+
+.table-striped-columns>:not(caption)>tr>:nth-child(2n) {
+ --bs-table-color-type: var(--bs-table-striped-color);
+ --bs-table-bg-type: var(--bs-table-striped-bg)
+}
+
+.table-active {
+ --bs-table-color-state: var(--bs-table-active-color);
+ --bs-table-bg-state: var(--bs-table-active-bg)
+}
+
+.table-hover>tbody>tr:hover>* {
+ --bs-table-color-state: var(--bs-table-hover-color);
+ --bs-table-bg-state: var(--bs-table-hover-bg)
+}
+
+.table-primary {
+ --bs-table-color: #000;
+ --bs-table-bg: #cfe2ff;
+ --bs-table-border-color: #a6b5cc;
+ --bs-table-striped-bg: #c5d7f2;
+ --bs-table-striped-color: #000;
+ --bs-table-active-bg: #bacbe6;
+ --bs-table-active-color: #000;
+ --bs-table-hover-bg: #bfd1ec;
+ --bs-table-hover-color: #000;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-secondary {
+ --bs-table-color: #000;
+ --bs-table-bg: #e2e3e5;
+ --bs-table-border-color: #b5b6b7;
+ --bs-table-striped-bg: #d7d8da;
+ --bs-table-striped-color: #000;
+ --bs-table-active-bg: #cbccce;
+ --bs-table-active-color: #000;
+ --bs-table-hover-bg: #d1d2d4;
+ --bs-table-hover-color: #000;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-success {
+ --bs-table-color: #000;
+ --bs-table-bg: #d1e7dd;
+ --bs-table-border-color: #a7b9b1;
+ --bs-table-striped-bg: #c7dbd2;
+ --bs-table-striped-color: #000;
+ --bs-table-active-bg: #bcd0c7;
+ --bs-table-active-color: #000;
+ --bs-table-hover-bg: #c1d6cc;
+ --bs-table-hover-color: #000;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-info {
+ --bs-table-color: #000;
+ --bs-table-bg: #cff4fc;
+ --bs-table-border-color: #a6c3ca;
+ --bs-table-striped-bg: #c5e8ef;
+ --bs-table-striped-color: #000;
+ --bs-table-active-bg: #badce3;
+ --bs-table-active-color: #000;
+ --bs-table-hover-bg: #bfe2e9;
+ --bs-table-hover-color: #000;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-warning {
+ --bs-table-color: #000;
+ --bs-table-bg: #fff3cd;
+ --bs-table-border-color: #ccc2a4;
+ --bs-table-striped-bg: #f2e7c3;
+ --bs-table-striped-color: #000;
+ --bs-table-active-bg: #e6dbb9;
+ --bs-table-active-color: #000;
+ --bs-table-hover-bg: #ece1be;
+ --bs-table-hover-color: #000;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-danger {
+ --bs-table-color: #000;
+ --bs-table-bg: #f8d7da;
+ --bs-table-border-color: #c6acae;
+ --bs-table-striped-bg: #eccccf;
+ --bs-table-striped-color: #000;
+ --bs-table-active-bg: #dfc2c4;
+ --bs-table-active-color: #000;
+ --bs-table-hover-bg: #e5c7ca;
+ --bs-table-hover-color: #000;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-light {
+ --bs-table-color: #000;
+ --bs-table-bg: #f8f9fa;
+ --bs-table-border-color: #c6c7c8;
+ --bs-table-striped-bg: #ecedee;
+ --bs-table-striped-color: #000;
+ --bs-table-active-bg: #dfe0e1;
+ --bs-table-active-color: #000;
+ --bs-table-hover-bg: #e5e6e7;
+ --bs-table-hover-color: #000;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-dark {
+ --bs-table-color: #fff;
+ --bs-table-bg: #212529;
+ --bs-table-border-color: #4d5154;
+ --bs-table-striped-bg: #2c3034;
+ --bs-table-striped-color: #fff;
+ --bs-table-active-bg: #373b3e;
+ --bs-table-active-color: #fff;
+ --bs-table-hover-bg: #323539;
+ --bs-table-hover-color: #fff;
+ color: var(--bs-table-color);
+ border-color: var(--bs-table-border-color)
+}
+
+.table-responsive {
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch
+}
+
+@media (max-width:575.98px) {
+ .table-responsive-sm {
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch
+ }
+}
+
+@media (max-width:767.98px) {
+ .table-responsive-md {
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch
+ }
+}
+
+@media (max-width:991.98px) {
+ .table-responsive-lg {
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch
+ }
+}
+
+@media (max-width:1199.98px) {
+ .table-responsive-xl {
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch
+ }
+}
+
+@media (max-width:1399.98px) {
+ .table-responsive-xxl {
+ overflow-x: auto;
+ -webkit-overflow-scrolling: touch
+ }
+}
+
+.form-label {
+ margin-bottom: .5rem
+}
+
+.col-form-label {
+ padding-top: calc(.375rem + var(--bs-border-width));
+ padding-bottom: calc(.375rem + var(--bs-border-width));
+ margin-bottom: 0;
+ font-size: inherit;
+ line-height: 1.5
+}
+
+.col-form-label-lg {
+ padding-top: calc(.5rem + var(--bs-border-width));
+ padding-bottom: calc(.5rem + var(--bs-border-width));
+ font-size: 1.25rem
+}
+
+.col-form-label-sm {
+ padding-top: calc(.25rem + var(--bs-border-width));
+ padding-bottom: calc(.25rem + var(--bs-border-width));
+ font-size: .875rem
+}
+
+.form-text {
+ margin-top: .25rem;
+ font-size: .875em;
+ color: var(--bs-secondary-color)
+}
+
+.form-control {
+ display: block;
+ width: 100%;
+ padding: .375rem .75rem;
+ font-size: 1rem;
+ font-weight: 400;
+ line-height: 1.5;
+ color: var(--bs-body-color);
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ background-color: var(--bs-body-bg);
+ background-clip: padding-box;
+ border: var(--bs-border-width) solid var(--bs-border-color);
+ border-radius: var(--bs-border-radius);
+ transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .form-control {
+ transition: none
+ }
+}
+
+.form-control[type=file] {
+ overflow: hidden
+}
+
+.form-control[type=file]:not(:disabled):not([readonly]) {
+ cursor: pointer
+}
+
+.form-control:focus {
+ color: var(--bs-body-color);
+ background-color: var(--bs-body-bg);
+ border-color: #86b7fe;
+ outline: 0;
+ box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
+}
+
+.form-control::-webkit-date-and-time-value {
+ min-width: 85px;
+ height: 1.5em;
+ margin: 0
+}
+
+.form-control::-webkit-datetime-edit {
+ display: block;
+ padding: 0
+}
+
+.form-control::-moz-placeholder {
+ color: var(--bs-secondary-color);
+ opacity: 1
+}
+
+.form-control::placeholder {
+ color: var(--bs-secondary-color);
+ opacity: 1
+}
+
+.form-control:disabled {
+ background-color: var(--bs-secondary-bg);
+ opacity: 1
+}
+
+.form-control::-webkit-file-upload-button {
+ padding: .375rem .75rem;
+ margin: -.375rem -.75rem;
+ -webkit-margin-end: .75rem;
+ margin-inline-end: .75rem;
+ color: var(--bs-body-color);
+ background-color: var(--bs-tertiary-bg);
+ pointer-events: none;
+ border-color: inherit;
+ border-style: solid;
+ border-width: 0;
+ border-inline-end-width: var(--bs-border-width);
+ border-radius: 0;
+ -webkit-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
+ transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+.form-control::file-selector-button {
+ padding: .375rem .75rem;
+ margin: -.375rem -.75rem;
+ -webkit-margin-end: .75rem;
+ margin-inline-end: .75rem;
+ color: var(--bs-body-color);
+ background-color: var(--bs-tertiary-bg);
+ pointer-events: none;
+ border-color: inherit;
+ border-style: solid;
+ border-width: 0;
+ border-inline-end-width: var(--bs-border-width);
+ border-radius: 0;
+ transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .form-control::-webkit-file-upload-button {
+ -webkit-transition: none;
+ transition: none
+ }
+
+ .form-control::file-selector-button {
+ transition: none
+ }
+}
+
+.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
+ background-color: var(--bs-secondary-bg)
+}
+
+.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
+ background-color: var(--bs-secondary-bg)
+}
+
+.form-control-plaintext {
+ display: block;
+ width: 100%;
+ padding: .375rem 0;
+ margin-bottom: 0;
+ line-height: 1.5;
+ color: var(--bs-body-color);
+ background-color: transparent;
+ border: solid transparent;
+ border-width: var(--bs-border-width) 0
+}
+
+.form-control-plaintext:focus {
+ outline: 0
+}
+
+.form-control-plaintext.form-control-lg,
+.form-control-plaintext.form-control-sm {
+ padding-right: 0;
+ padding-left: 0
+}
+
+.form-control-sm {
+ min-height: calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));
+ padding: .25rem .5rem;
+ font-size: .875rem;
+ border-radius: var(--bs-border-radius-sm)
+}
+
+.form-control-sm::-webkit-file-upload-button {
+ padding: .25rem .5rem;
+ margin: -.25rem -.5rem;
+ -webkit-margin-end: .5rem;
+ margin-inline-end: .5rem
+}
+
+.form-control-sm::file-selector-button {
+ padding: .25rem .5rem;
+ margin: -.25rem -.5rem;
+ -webkit-margin-end: .5rem;
+ margin-inline-end: .5rem
+}
+
+.form-control-lg {
+ min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));
+ padding: .5rem 1rem;
+ font-size: 1.25rem;
+ border-radius: var(--bs-border-radius-lg)
+}
+
+.form-control-lg::-webkit-file-upload-button {
+ padding: .5rem 1rem;
+ margin: -.5rem -1rem;
+ -webkit-margin-end: 1rem;
+ margin-inline-end: 1rem
+}
+
+.form-control-lg::file-selector-button {
+ padding: .5rem 1rem;
+ margin: -.5rem -1rem;
+ -webkit-margin-end: 1rem;
+ margin-inline-end: 1rem
+}
+
+textarea.form-control {
+ min-height: calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))
+}
+
+textarea.form-control-sm {
+ min-height: calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))
+}
+
+textarea.form-control-lg {
+ min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))
+}
+
+.form-control-color {
+ width: 3rem;
+ height: calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));
+ padding: .375rem
+}
+
+.form-control-color:not(:disabled):not([readonly]) {
+ cursor: pointer
+}
+
+.form-control-color::-moz-color-swatch {
+ border: 0 !important;
+ border-radius: var(--bs-border-radius)
+}
+
+.form-control-color::-webkit-color-swatch {
+ border: 0 !important;
+ border-radius: var(--bs-border-radius)
+}
+
+.form-control-color.form-control-sm {
+ height: calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))
+}
+
+.form-control-color.form-control-lg {
+ height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))
+}
+
+.form-select {
+ --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
+ display: block;
+ width: 100%;
+ padding: .375rem 2.25rem .375rem .75rem;
+ font-size: 1rem;
+ font-weight: 400;
+ line-height: 1.5;
+ color: var(--bs-body-color);
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ background-color: var(--bs-body-bg);
+ background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
+ background-repeat: no-repeat;
+ background-position: right .75rem center;
+ background-size: 16px 12px;
+ border: var(--bs-border-width) solid var(--bs-border-color);
+ border-radius: var(--bs-border-radius);
+ transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .form-select {
+ transition: none
+ }
+}
+
+.form-select:focus {
+ border-color: #86b7fe;
+ outline: 0;
+ box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
+}
+
+.form-select[multiple],
+.form-select[size]:not([size="1"]) {
+ padding-right: .75rem;
+ background-image: none
+}
+
+.form-select:disabled {
+ background-color: var(--bs-secondary-bg)
+}
+
+.form-select:-moz-focusring {
+ color: transparent;
+ text-shadow: 0 0 0 var(--bs-body-color)
+}
+
+.form-select-sm {
+ padding-top: .25rem;
+ padding-bottom: .25rem;
+ padding-left: .5rem;
+ font-size: .875rem;
+ border-radius: var(--bs-border-radius-sm)
+}
+
+.form-select-lg {
+ padding-top: .5rem;
+ padding-bottom: .5rem;
+ padding-left: 1rem;
+ font-size: 1.25rem;
+ border-radius: var(--bs-border-radius-lg)
+}
+
+[data-bs-theme=dark] .form-select {
+ --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")
+}
+
+.form-check {
+ display: block;
+ min-height: 1.5rem;
+ padding-left: 1.5em;
+ margin-bottom: .125rem
+}
+
+.form-check .form-check-input {
+ float: left;
+ margin-left: -1.5em
+}
+
+.form-check-reverse {
+ padding-right: 1.5em;
+ padding-left: 0;
+ text-align: right
+}
+
+.form-check-reverse .form-check-input {
+ float: right;
+ margin-right: -1.5em;
+ margin-left: 0
+}
+
+.form-check-input {
+ --bs-form-check-bg: var(--bs-body-bg);
+ flex-shrink: 0;
+ width: 1em;
+ height: 1em;
+ margin-top: .25em;
+ vertical-align: top;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ background-color: var(--bs-form-check-bg);
+ background-image: var(--bs-form-check-bg-image);
+ background-repeat: no-repeat;
+ background-position: center;
+ background-size: contain;
+ border: var(--bs-border-width) solid var(--bs-border-color);
+ -webkit-print-color-adjust: exact;
+ color-adjust: exact;
+ print-color-adjust: exact
+}
+
+.form-check-input[type=checkbox] {
+ border-radius: .25em
+}
+
+.form-check-input[type=radio] {
+ border-radius: 50%
+}
+
+.form-check-input:active {
+ filter: brightness(90%)
+}
+
+.form-check-input:focus {
+ border-color: #86b7fe;
+ outline: 0;
+ box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
+}
+
+.form-check-input:checked {
+ background-color: #0d6efd;
+ border-color: #0d6efd
+}
+
+.form-check-input:checked[type=checkbox] {
+ --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")
+}
+
+.form-check-input:checked[type=radio] {
+ --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")
+}
+
+.form-check-input[type=checkbox]:indeterminate {
+ background-color: #0d6efd;
+ border-color: #0d6efd;
+ --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")
+}
+
+.form-check-input:disabled {
+ pointer-events: none;
+ filter: none;
+ opacity: .5
+}
+
+.form-check-input:disabled~.form-check-label,
+.form-check-input[disabled]~.form-check-label {
+ cursor: default;
+ opacity: .5
+}
+
+.form-switch {
+ padding-left: 2.5em
+}
+
+.form-switch .form-check-input {
+ --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
+ width: 2em;
+ margin-left: -2.5em;
+ background-image: var(--bs-form-switch-bg);
+ background-position: left center;
+ border-radius: 2em;
+ transition: background-position .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .form-switch .form-check-input {
+ transition: none
+ }
+}
+
+.form-switch .form-check-input:focus {
+ --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")
+}
+
+.form-switch .form-check-input:checked {
+ background-position: right center;
+ --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")
+}
+
+.form-switch.form-check-reverse {
+ padding-right: 2.5em;
+ padding-left: 0
+}
+
+.form-switch.form-check-reverse .form-check-input {
+ margin-right: -2.5em;
+ margin-left: 0
+}
+
+.form-check-inline {
+ display: inline-block;
+ margin-right: 1rem
+}
+
+.btn-check {
+ position: absolute;
+ clip: rect(0, 0, 0, 0);
+ pointer-events: none
+}
+
+.btn-check:disabled+.btn,
+.btn-check[disabled]+.btn {
+ pointer-events: none;
+ filter: none;
+ opacity: .65
+}
+
+[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
+ --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")
+}
+
+.form-range {
+ width: 100%;
+ height: 1.5rem;
+ padding: 0;
+ -webkit-appearance: none;
+ -moz-appearance: none;
+ appearance: none;
+ background-color: transparent
+}
+
+.form-range:focus {
+ outline: 0
+}
+
+.form-range:focus::-webkit-slider-thumb {
+ box-shadow: 0 0 0 1px #fff, 0 0 0 .25rem rgba(13, 110, 253, .25)
+}
+
+.form-range:focus::-moz-range-thumb {
+ box-shadow: 0 0 0 1px #fff, 0 0 0 .25rem rgba(13, 110, 253, .25)
+}
+
+.form-range::-moz-focus-outer {
+ border: 0
+}
+
+.form-range::-webkit-slider-thumb {
+ width: 1rem;
+ height: 1rem;
+ margin-top: -.25rem;
+ -webkit-appearance: none;
+ appearance: none;
+ background-color: #0d6efd;
+ border: 0;
+ border-radius: 1rem;
+ -webkit-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
+ transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .form-range::-webkit-slider-thumb {
+ -webkit-transition: none;
+ transition: none
+ }
+}
+
+.form-range::-webkit-slider-thumb:active {
+ background-color: #b6d4fe
+}
+
+.form-range::-webkit-slider-runnable-track {
+ width: 100%;
+ height: .5rem;
+ color: transparent;
+ cursor: pointer;
+ background-color: var(--bs-secondary-bg);
+ border-color: transparent;
+ border-radius: 1rem
+}
+
+.form-range::-moz-range-thumb {
+ width: 1rem;
+ height: 1rem;
+ -moz-appearance: none;
+ appearance: none;
+ background-color: #0d6efd;
+ border: 0;
+ border-radius: 1rem;
+ -moz-transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
+ transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .form-range::-moz-range-thumb {
+ -moz-transition: none;
+ transition: none
+ }
+}
+
+.form-range::-moz-range-thumb:active {
+ background-color: #b6d4fe
+}
+
+.form-range::-moz-range-track {
+ width: 100%;
+ height: .5rem;
+ color: transparent;
+ cursor: pointer;
+ background-color: var(--bs-secondary-bg);
+ border-color: transparent;
+ border-radius: 1rem
+}
+
+.form-range:disabled {
+ pointer-events: none
+}
+
+.form-range:disabled::-webkit-slider-thumb {
+ background-color: var(--bs-secondary-color)
+}
+
+.form-range:disabled::-moz-range-thumb {
+ background-color: var(--bs-secondary-color)
+}
+
+.form-floating {
+ position: relative
+}
+
+.form-floating>.form-control,
+.form-floating>.form-control-plaintext,
+.form-floating>.form-select {
+ height: calc(3.5rem + calc(var(--bs-border-width) * 2));
+ min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
+ line-height: 1.25
+}
+
+.form-floating>label {
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: 2;
+ height: 100%;
+ padding: 1rem .75rem;
+ overflow: hidden;
+ text-align: start;
+ text-overflow: ellipsis;
+ white-space: nowrap;
+ pointer-events: none;
+ border: var(--bs-border-width) solid transparent;
+ transform-origin: 0 0;
+ transition: opacity .1s ease-in-out, transform .1s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .form-floating>label {
+ transition: none
+ }
+}
+
+.form-floating>.form-control,
+.form-floating>.form-control-plaintext {
+ padding: 1rem .75rem
+}
+
+.form-floating>.form-control-plaintext::-moz-placeholder,
+.form-floating>.form-control::-moz-placeholder {
+ color: transparent
+}
+
+.form-floating>.form-control-plaintext::placeholder,
+.form-floating>.form-control::placeholder {
+ color: transparent
+}
+
+.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),
+.form-floating>.form-control:not(:-moz-placeholder-shown) {
+ padding-top: 1.625rem;
+ padding-bottom: .625rem
+}
+
+.form-floating>.form-control-plaintext:focus,
+.form-floating>.form-control-plaintext:not(:placeholder-shown),
+.form-floating>.form-control:focus,
+.form-floating>.form-control:not(:placeholder-shown) {
+ padding-top: 1.625rem;
+ padding-bottom: .625rem
+}
+
+.form-floating>.form-control-plaintext:-webkit-autofill,
+.form-floating>.form-control:-webkit-autofill {
+ padding-top: 1.625rem;
+ padding-bottom: .625rem
+}
+
+.form-floating>.form-select {
+ padding-top: 1.625rem;
+ padding-bottom: .625rem
+}
+
+.form-floating>.form-control:not(:-moz-placeholder-shown)~label {
+ color: rgba(var(--bs-body-color-rgb), .65);
+ transform: scale(.85) translateY(-.5rem) translateX(.15rem)
+}
+
+.form-floating>.form-control-plaintext~label,
+.form-floating>.form-control:focus~label,
+.form-floating>.form-control:not(:placeholder-shown)~label,
+.form-floating>.form-select~label {
+ color: rgba(var(--bs-body-color-rgb), .65);
+ transform: scale(.85) translateY(-.5rem) translateX(.15rem)
+}
+
+.form-floating>.form-control:not(:-moz-placeholder-shown)~label::after {
+ position: absolute;
+ inset: 1rem 0.375rem;
+ z-index: -1;
+ height: 1.5em;
+ content: "";
+ background-color: var(--bs-body-bg);
+ border-radius: var(--bs-border-radius)
+}
+
+.form-floating>.form-control-plaintext~label::after,
+.form-floating>.form-control:focus~label::after,
+.form-floating>.form-control:not(:placeholder-shown)~label::after,
+.form-floating>.form-select~label::after {
+ position: absolute;
+ inset: 1rem 0.375rem;
+ z-index: -1;
+ height: 1.5em;
+ content: "";
+ background-color: var(--bs-body-bg);
+ border-radius: var(--bs-border-radius)
+}
+
+.form-floating>.form-control:-webkit-autofill~label {
+ color: rgba(var(--bs-body-color-rgb), .65);
+ transform: scale(.85) translateY(-.5rem) translateX(.15rem)
+}
+
+.form-floating>.form-control-plaintext~label {
+ border-width: var(--bs-border-width) 0
+}
+
+.form-floating>.form-control:disabled~label,
+.form-floating>:disabled~label {
+ color: #6c757d
+}
+
+.form-floating>.form-control:disabled~label::after,
+.form-floating>:disabled~label::after {
+ background-color: var(--bs-secondary-bg)
+}
+
+.input-group {
+ position: relative;
+ display: flex;
+ flex-wrap: wrap;
+ align-items: stretch;
+ width: 100%
+}
+
+.input-group>.form-control,
+.input-group>.form-floating,
+.input-group>.form-select {
+ position: relative;
+ flex: 1 1 auto;
+ width: 1%;
+ min-width: 0
+}
+
+.input-group>.form-control:focus,
+.input-group>.form-floating:focus-within,
+.input-group>.form-select:focus {
+ z-index: 5
+}
+
+.input-group .btn {
+ position: relative;
+ z-index: 2
+}
+
+.input-group .btn:focus {
+ z-index: 5
+}
+
+.input-group-text {
+ display: flex;
+ align-items: center;
+ padding: .375rem .75rem;
+ font-size: 1rem;
+ font-weight: 400;
+ line-height: 1.5;
+ color: var(--bs-body-color);
+ text-align: center;
+ white-space: nowrap;
+ background-color: var(--bs-tertiary-bg);
+ border: var(--bs-border-width) solid var(--bs-border-color);
+ border-radius: var(--bs-border-radius)
+}
+
+.input-group-lg>.btn,
+.input-group-lg>.form-control,
+.input-group-lg>.form-select,
+.input-group-lg>.input-group-text {
+ padding: .5rem 1rem;
+ font-size: 1.25rem;
+ border-radius: var(--bs-border-radius-lg)
+}
+
+.input-group-sm>.btn,
+.input-group-sm>.form-control,
+.input-group-sm>.form-select,
+.input-group-sm>.input-group-text {
+ padding: .25rem .5rem;
+ font-size: .875rem;
+ border-radius: var(--bs-border-radius-sm)
+}
+
+.input-group-lg>.form-select,
+.input-group-sm>.form-select {
+ padding-right: 3rem
+}
+
+.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),
+.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,
+.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,
+.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0
+}
+
+.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),
+.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,
+.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,
+.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0
+}
+
+.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
+ margin-left: calc(var(--bs-border-width) * -1);
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.input-group>.form-floating:not(:first-child)>.form-control,
+.input-group>.form-floating:not(:first-child)>.form-select {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.valid-feedback {
+ display: none;
+ width: 100%;
+ margin-top: .25rem;
+ font-size: .875em;
+ color: var(--bs-form-valid-color)
+}
+
+.valid-tooltip {
+ position: absolute;
+ top: 100%;
+ z-index: 5;
+ display: none;
+ max-width: 100%;
+ padding: .25rem .5rem;
+ margin-top: .1rem;
+ font-size: .875rem;
+ color: #fff;
+ background-color: var(--bs-success);
+ border-radius: var(--bs-border-radius)
+}
+
+.is-valid~.valid-feedback,
+.is-valid~.valid-tooltip,
+.was-validated :valid~.valid-feedback,
+.was-validated :valid~.valid-tooltip {
+ display: block
+}
+
+.form-control.is-valid,
+.was-validated .form-control:valid {
+ border-color: var(--bs-form-valid-border-color);
+ padding-right: calc(1.5em + .75rem);
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
+ background-repeat: no-repeat;
+ background-position: right calc(.375em + .1875rem) center;
+ background-size: calc(.75em + .375rem) calc(.75em + .375rem)
+}
+
+.form-control.is-valid:focus,
+.was-validated .form-control:valid:focus {
+ border-color: var(--bs-form-valid-border-color);
+ box-shadow: 0 0 0 .25rem rgba(var(--bs-success-rgb), .25)
+}
+
+.was-validated textarea.form-control:valid,
+textarea.form-control.is-valid {
+ padding-right: calc(1.5em + .75rem);
+ background-position: top calc(.375em + .1875rem) right calc(.375em + .1875rem)
+}
+
+.form-select.is-valid,
+.was-validated .form-select:valid {
+ border-color: var(--bs-form-valid-border-color)
+}
+
+.form-select.is-valid:not([multiple]):not([size]),
+.form-select.is-valid:not([multiple])[size="1"],
+.was-validated .form-select:valid:not([multiple]):not([size]),
+.was-validated .form-select:valid:not([multiple])[size="1"] {
+ --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
+ padding-right: 4.125rem;
+ background-position: right .75rem center, center right 2.25rem;
+ background-size: 16px 12px, calc(.75em + .375rem) calc(.75em + .375rem)
+}
+
+.form-select.is-valid:focus,
+.was-validated .form-select:valid:focus {
+ border-color: var(--bs-form-valid-border-color);
+ box-shadow: 0 0 0 .25rem rgba(var(--bs-success-rgb), .25)
+}
+
+.form-control-color.is-valid,
+.was-validated .form-control-color:valid {
+ width: calc(3rem + calc(1.5em + .75rem))
+}
+
+.form-check-input.is-valid,
+.was-validated .form-check-input:valid {
+ border-color: var(--bs-form-valid-border-color)
+}
+
+.form-check-input.is-valid:checked,
+.was-validated .form-check-input:valid:checked {
+ background-color: var(--bs-form-valid-color)
+}
+
+.form-check-input.is-valid:focus,
+.was-validated .form-check-input:valid:focus {
+ box-shadow: 0 0 0 .25rem rgba(var(--bs-success-rgb), .25)
+}
+
+.form-check-input.is-valid~.form-check-label,
+.was-validated .form-check-input:valid~.form-check-label {
+ color: var(--bs-form-valid-color)
+}
+
+.form-check-inline .form-check-input~.valid-feedback {
+ margin-left: .5em
+}
+
+.input-group>.form-control:not(:focus).is-valid,
+.input-group>.form-floating:not(:focus-within).is-valid,
+.input-group>.form-select:not(:focus).is-valid,
+.was-validated .input-group>.form-control:not(:focus):valid,
+.was-validated .input-group>.form-floating:not(:focus-within):valid,
+.was-validated .input-group>.form-select:not(:focus):valid {
+ z-index: 3
+}
+
+.invalid-feedback {
+ display: none;
+ width: 100%;
+ margin-top: .25rem;
+ font-size: .875em;
+ color: var(--bs-form-invalid-color)
+}
+
+.invalid-tooltip {
+ position: absolute;
+ top: 100%;
+ z-index: 5;
+ display: none;
+ max-width: 100%;
+ padding: .25rem .5rem;
+ margin-top: .1rem;
+ font-size: .875rem;
+ color: #fff;
+ background-color: var(--bs-danger);
+ border-radius: var(--bs-border-radius)
+}
+
+.is-invalid~.invalid-feedback,
+.is-invalid~.invalid-tooltip,
+.was-validated :invalid~.invalid-feedback,
+.was-validated :invalid~.invalid-tooltip {
+ display: block
+}
+
+.form-control.is-invalid,
+.was-validated .form-control:invalid {
+ border-color: var(--bs-form-invalid-border-color);
+ padding-right: calc(1.5em + .75rem);
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
+ background-repeat: no-repeat;
+ background-position: right calc(.375em + .1875rem) center;
+ background-size: calc(.75em + .375rem) calc(.75em + .375rem)
+}
+
+.form-control.is-invalid:focus,
+.was-validated .form-control:invalid:focus {
+ border-color: var(--bs-form-invalid-border-color);
+ box-shadow: 0 0 0 .25rem rgba(var(--bs-danger-rgb), .25)
+}
+
+.was-validated textarea.form-control:invalid,
+textarea.form-control.is-invalid {
+ padding-right: calc(1.5em + .75rem);
+ background-position: top calc(.375em + .1875rem) right calc(.375em + .1875rem)
+}
+
+.form-select.is-invalid,
+.was-validated .form-select:invalid {
+ border-color: var(--bs-form-invalid-border-color)
+}
+
+.form-select.is-invalid:not([multiple]):not([size]),
+.form-select.is-invalid:not([multiple])[size="1"],
+.was-validated .form-select:invalid:not([multiple]):not([size]),
+.was-validated .form-select:invalid:not([multiple])[size="1"] {
+ --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
+ padding-right: 4.125rem;
+ background-position: right .75rem center, center right 2.25rem;
+ background-size: 16px 12px, calc(.75em + .375rem) calc(.75em + .375rem)
+}
+
+.form-select.is-invalid:focus,
+.was-validated .form-select:invalid:focus {
+ border-color: var(--bs-form-invalid-border-color);
+ box-shadow: 0 0 0 .25rem rgba(var(--bs-danger-rgb), .25)
+}
+
+.form-control-color.is-invalid,
+.was-validated .form-control-color:invalid {
+ width: calc(3rem + calc(1.5em + .75rem))
+}
+
+.form-check-input.is-invalid,
+.was-validated .form-check-input:invalid {
+ border-color: var(--bs-form-invalid-border-color)
+}
+
+.form-check-input.is-invalid:checked,
+.was-validated .form-check-input:invalid:checked {
+ background-color: var(--bs-form-invalid-color)
+}
+
+.form-check-input.is-invalid:focus,
+.was-validated .form-check-input:invalid:focus {
+ box-shadow: 0 0 0 .25rem rgba(var(--bs-danger-rgb), .25)
+}
+
+.form-check-input.is-invalid~.form-check-label,
+.was-validated .form-check-input:invalid~.form-check-label {
+ color: var(--bs-form-invalid-color)
+}
+
+.form-check-inline .form-check-input~.invalid-feedback {
+ margin-left: .5em
+}
+
+.input-group>.form-control:not(:focus).is-invalid,
+.input-group>.form-floating:not(:focus-within).is-invalid,
+.input-group>.form-select:not(:focus).is-invalid,
+.was-validated .input-group>.form-control:not(:focus):invalid,
+.was-validated .input-group>.form-floating:not(:focus-within):invalid,
+.was-validated .input-group>.form-select:not(:focus):invalid {
+ z-index: 4
+}
+
+.btn {
+ --bs-btn-padding-x: 0.75rem;
+ --bs-btn-padding-y: 0.375rem;
+ --bs-btn-font-family: ;
+ --bs-btn-font-size: 1rem;
+ --bs-btn-font-weight: 400;
+ --bs-btn-line-height: 1.5;
+ --bs-btn-color: var(--bs-body-color);
+ --bs-btn-bg: transparent;
+ --bs-btn-border-width: var(--bs-border-width);
+ --bs-btn-border-color: transparent;
+ --bs-btn-border-radius: var(--bs-border-radius);
+ --bs-btn-hover-border-color: transparent;
+ --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
+ --bs-btn-disabled-opacity: 0.65;
+ --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
+ display: inline-block;
+ padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
+ font-family: var(--bs-btn-font-family);
+ font-size: var(--bs-btn-font-size);
+ font-weight: var(--bs-btn-font-weight);
+ line-height: var(--bs-btn-line-height);
+ color: var(--bs-btn-color);
+ text-align: center;
+ text-decoration: none;
+ vertical-align: middle;
+ cursor: pointer;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ user-select: none;
+ border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
+ border-radius: var(--bs-btn-border-radius);
+ background-color: var(--bs-btn-bg);
+ transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .btn {
+ transition: none
+ }
+}
+
+.btn:hover {
+ color: var(--bs-btn-hover-color);
+ background-color: var(--bs-btn-hover-bg);
+ border-color: var(--bs-btn-hover-border-color)
+}
+
+.btn-check+.btn:hover {
+ color: var(--bs-btn-color);
+ background-color: var(--bs-btn-bg);
+ border-color: var(--bs-btn-border-color)
+}
+
+.btn:focus-visible {
+ color: var(--bs-btn-hover-color);
+ background-color: var(--bs-btn-hover-bg);
+ border-color: var(--bs-btn-hover-border-color);
+ outline: 0;
+ box-shadow: var(--bs-btn-focus-box-shadow)
+}
+
+.btn-check:focus-visible+.btn {
+ border-color: var(--bs-btn-hover-border-color);
+ outline: 0;
+ box-shadow: var(--bs-btn-focus-box-shadow)
+}
+
+.btn-check:checked+.btn,
+.btn.active,
+.btn.show,
+.btn:first-child:active,
+:not(.btn-check)+.btn:active {
+ color: var(--bs-btn-active-color);
+ background-color: var(--bs-btn-active-bg);
+ border-color: var(--bs-btn-active-border-color)
+}
+
+.btn-check:checked+.btn:focus-visible,
+.btn.active:focus-visible,
+.btn.show:focus-visible,
+.btn:first-child:active:focus-visible,
+:not(.btn-check)+.btn:active:focus-visible {
+ box-shadow: var(--bs-btn-focus-box-shadow)
+}
+
+.btn-check:checked:focus-visible+.btn {
+ box-shadow: var(--bs-btn-focus-box-shadow)
+}
+
+.btn.disabled,
+.btn:disabled,
+fieldset:disabled .btn {
+ color: var(--bs-btn-disabled-color);
+ pointer-events: none;
+ background-color: var(--bs-btn-disabled-bg);
+ border-color: var(--bs-btn-disabled-border-color);
+ opacity: var(--bs-btn-disabled-opacity)
+}
+
+.btn-primary {
+ --bs-btn-color: #fff;
+ --bs-btn-bg: #0d6efd;
+ --bs-btn-border-color: #0d6efd;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #0b5ed7;
+ --bs-btn-hover-border-color: #0a58ca;
+ --bs-btn-focus-shadow-rgb: 49, 132, 253;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #0a58ca;
+ --bs-btn-active-border-color: #0a53be;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #fff;
+ --bs-btn-disabled-bg: #0d6efd;
+ --bs-btn-disabled-border-color: #0d6efd
+}
+
+.btn-secondary {
+ --bs-btn-color: #fff;
+ --bs-btn-bg: #6c757d;
+ --bs-btn-border-color: #6c757d;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #5c636a;
+ --bs-btn-hover-border-color: #565e64;
+ --bs-btn-focus-shadow-rgb: 130, 138, 145;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #565e64;
+ --bs-btn-active-border-color: #51585e;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #fff;
+ --bs-btn-disabled-bg: #6c757d;
+ --bs-btn-disabled-border-color: #6c757d
+}
+
+.btn-success {
+ --bs-btn-color: #fff;
+ --bs-btn-bg: #198754;
+ --bs-btn-border-color: #198754;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #157347;
+ --bs-btn-hover-border-color: #146c43;
+ --bs-btn-focus-shadow-rgb: 60, 153, 110;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #146c43;
+ --bs-btn-active-border-color: #13653f;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #fff;
+ --bs-btn-disabled-bg: #198754;
+ --bs-btn-disabled-border-color: #198754
+}
+
+.btn-info {
+ --bs-btn-color: #000;
+ --bs-btn-bg: #0dcaf0;
+ --bs-btn-border-color: #0dcaf0;
+ --bs-btn-hover-color: #000;
+ --bs-btn-hover-bg: #31d2f2;
+ --bs-btn-hover-border-color: #25cff2;
+ --bs-btn-focus-shadow-rgb: 11, 172, 204;
+ --bs-btn-active-color: #000;
+ --bs-btn-active-bg: #3dd5f3;
+ --bs-btn-active-border-color: #25cff2;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #000;
+ --bs-btn-disabled-bg: #0dcaf0;
+ --bs-btn-disabled-border-color: #0dcaf0
+}
+
+.btn-warning {
+ --bs-btn-color: #000;
+ --bs-btn-bg: #ffc107;
+ --bs-btn-border-color: #ffc107;
+ --bs-btn-hover-color: #000;
+ --bs-btn-hover-bg: #ffca2c;
+ --bs-btn-hover-border-color: #ffc720;
+ --bs-btn-focus-shadow-rgb: 217, 164, 6;
+ --bs-btn-active-color: #000;
+ --bs-btn-active-bg: #ffcd39;
+ --bs-btn-active-border-color: #ffc720;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #000;
+ --bs-btn-disabled-bg: #ffc107;
+ --bs-btn-disabled-border-color: #ffc107
+}
+
+.btn-danger {
+ --bs-btn-color: #fff;
+ --bs-btn-bg: #dc3545;
+ --bs-btn-border-color: #dc3545;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #bb2d3b;
+ --bs-btn-hover-border-color: #b02a37;
+ --bs-btn-focus-shadow-rgb: 225, 83, 97;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #b02a37;
+ --bs-btn-active-border-color: #a52834;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #fff;
+ --bs-btn-disabled-bg: #dc3545;
+ --bs-btn-disabled-border-color: #dc3545
+}
+
+.btn-light {
+ --bs-btn-color: #000;
+ --bs-btn-bg: #f8f9fa;
+ --bs-btn-border-color: #f8f9fa;
+ --bs-btn-hover-color: #000;
+ --bs-btn-hover-bg: #d3d4d5;
+ --bs-btn-hover-border-color: #c6c7c8;
+ --bs-btn-focus-shadow-rgb: 211, 212, 213;
+ --bs-btn-active-color: #000;
+ --bs-btn-active-bg: #c6c7c8;
+ --bs-btn-active-border-color: #babbbc;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #000;
+ --bs-btn-disabled-bg: #f8f9fa;
+ --bs-btn-disabled-border-color: #f8f9fa
+}
+
+.btn-dark {
+ --bs-btn-color: #fff;
+ --bs-btn-bg: #212529;
+ --bs-btn-border-color: #212529;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #424649;
+ --bs-btn-hover-border-color: #373b3e;
+ --bs-btn-focus-shadow-rgb: 66, 70, 73;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #4d5154;
+ --bs-btn-active-border-color: #373b3e;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #fff;
+ --bs-btn-disabled-bg: #212529;
+ --bs-btn-disabled-border-color: #212529
+}
+
+.btn-outline-primary {
+ --bs-btn-color: #0d6efd;
+ --bs-btn-border-color: #0d6efd;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #0d6efd;
+ --bs-btn-hover-border-color: #0d6efd;
+ --bs-btn-focus-shadow-rgb: 13, 110, 253;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #0d6efd;
+ --bs-btn-active-border-color: #0d6efd;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #0d6efd;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #0d6efd;
+ --bs-gradient: none
+}
+
+.btn-outline-secondary {
+ --bs-btn-color: #6c757d;
+ --bs-btn-border-color: #6c757d;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #6c757d;
+ --bs-btn-hover-border-color: #6c757d;
+ --bs-btn-focus-shadow-rgb: 108, 117, 125;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #6c757d;
+ --bs-btn-active-border-color: #6c757d;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #6c757d;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #6c757d;
+ --bs-gradient: none
+}
+
+.btn-outline-success {
+ --bs-btn-color: #198754;
+ --bs-btn-border-color: #198754;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #198754;
+ --bs-btn-hover-border-color: #198754;
+ --bs-btn-focus-shadow-rgb: 25, 135, 84;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #198754;
+ --bs-btn-active-border-color: #198754;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #198754;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #198754;
+ --bs-gradient: none
+}
+
+.btn-outline-info {
+ --bs-btn-color: #0dcaf0;
+ --bs-btn-border-color: #0dcaf0;
+ --bs-btn-hover-color: #000;
+ --bs-btn-hover-bg: #0dcaf0;
+ --bs-btn-hover-border-color: #0dcaf0;
+ --bs-btn-focus-shadow-rgb: 13, 202, 240;
+ --bs-btn-active-color: #000;
+ --bs-btn-active-bg: #0dcaf0;
+ --bs-btn-active-border-color: #0dcaf0;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #0dcaf0;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #0dcaf0;
+ --bs-gradient: none
+}
+
+.btn-outline-warning {
+ --bs-btn-color: #ffc107;
+ --bs-btn-border-color: #ffc107;
+ --bs-btn-hover-color: #000;
+ --bs-btn-hover-bg: #ffc107;
+ --bs-btn-hover-border-color: #ffc107;
+ --bs-btn-focus-shadow-rgb: 255, 193, 7;
+ --bs-btn-active-color: #000;
+ --bs-btn-active-bg: #ffc107;
+ --bs-btn-active-border-color: #ffc107;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #ffc107;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #ffc107;
+ --bs-gradient: none
+}
+
+.btn-outline-danger {
+ --bs-btn-color: #dc3545;
+ --bs-btn-border-color: #dc3545;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #dc3545;
+ --bs-btn-hover-border-color: #dc3545;
+ --bs-btn-focus-shadow-rgb: 220, 53, 69;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #dc3545;
+ --bs-btn-active-border-color: #dc3545;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #dc3545;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #dc3545;
+ --bs-gradient: none
+}
+
+.btn-outline-light {
+ --bs-btn-color: #f8f9fa;
+ --bs-btn-border-color: #f8f9fa;
+ --bs-btn-hover-color: #000;
+ --bs-btn-hover-bg: #f8f9fa;
+ --bs-btn-hover-border-color: #f8f9fa;
+ --bs-btn-focus-shadow-rgb: 248, 249, 250;
+ --bs-btn-active-color: #000;
+ --bs-btn-active-bg: #f8f9fa;
+ --bs-btn-active-border-color: #f8f9fa;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #f8f9fa;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #f8f9fa;
+ --bs-gradient: none
+}
+
+.btn-outline-dark {
+ --bs-btn-color: #212529;
+ --bs-btn-border-color: #212529;
+ --bs-btn-hover-color: #fff;
+ --bs-btn-hover-bg: #212529;
+ --bs-btn-hover-border-color: #212529;
+ --bs-btn-focus-shadow-rgb: 33, 37, 41;
+ --bs-btn-active-color: #fff;
+ --bs-btn-active-bg: #212529;
+ --bs-btn-active-border-color: #212529;
+ --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
+ --bs-btn-disabled-color: #212529;
+ --bs-btn-disabled-bg: transparent;
+ --bs-btn-disabled-border-color: #212529;
+ --bs-gradient: none
+}
+
+.btn-link {
+ --bs-btn-font-weight: 400;
+ --bs-btn-color: var(--bs-link-color);
+ --bs-btn-bg: transparent;
+ --bs-btn-border-color: transparent;
+ --bs-btn-hover-color: var(--bs-link-hover-color);
+ --bs-btn-hover-border-color: transparent;
+ --bs-btn-active-color: var(--bs-link-hover-color);
+ --bs-btn-active-border-color: transparent;
+ --bs-btn-disabled-color: #6c757d;
+ --bs-btn-disabled-border-color: transparent;
+ --bs-btn-box-shadow: 0 0 0 #000;
+ --bs-btn-focus-shadow-rgb: 49, 132, 253;
+ text-decoration: underline
+}
+
+.btn-link:focus-visible {
+ color: var(--bs-btn-color)
+}
+
+.btn-link:hover {
+ color: var(--bs-btn-hover-color)
+}
+
+.btn-group-lg>.btn,
+.btn-lg {
+ --bs-btn-padding-y: 0.5rem;
+ --bs-btn-padding-x: 1rem;
+ --bs-btn-font-size: 1.25rem;
+ --bs-btn-border-radius: var(--bs-border-radius-lg)
+}
+
+.btn-group-sm>.btn,
+.btn-sm {
+ --bs-btn-padding-y: 0.25rem;
+ --bs-btn-padding-x: 0.5rem;
+ --bs-btn-font-size: 0.875rem;
+ --bs-btn-border-radius: var(--bs-border-radius-sm)
+}
+
+.fade {
+ transition: opacity .15s linear
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .fade {
+ transition: none
+ }
+}
+
+.fade:not(.show) {
+ opacity: 0
+}
+
+.collapse:not(.show) {
+ display: none
+}
+
+.collapsing {
+ height: 0;
+ overflow: hidden;
+ transition: height .35s ease
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .collapsing {
+ transition: none
+ }
+}
+
+.collapsing.collapse-horizontal {
+ width: 0;
+ height: auto;
+ transition: width .35s ease
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .collapsing.collapse-horizontal {
+ transition: none
+ }
+}
+
+.dropdown,
+.dropdown-center,
+.dropend,
+.dropstart,
+.dropup,
+.dropup-center {
+ position: relative
+}
+
+.dropdown-toggle {
+ white-space: nowrap
+}
+
+.dropdown-toggle::after {
+ display: inline-block;
+ margin-left: .255em;
+ vertical-align: .255em;
+ content: "";
+ border-top: .3em solid;
+ border-right: .3em solid transparent;
+ border-bottom: 0;
+ border-left: .3em solid transparent
+}
+
+.dropdown-toggle:empty::after {
+ margin-left: 0
+}
+
+.dropdown-menu {
+ --bs-dropdown-zindex: 1000;
+ --bs-dropdown-min-width: 10rem;
+ --bs-dropdown-padding-x: 0;
+ --bs-dropdown-padding-y: 0.5rem;
+ --bs-dropdown-spacer: 0.125rem;
+ --bs-dropdown-font-size: 1rem;
+ --bs-dropdown-color: var(--bs-body-color);
+ --bs-dropdown-bg: var(--bs-body-bg);
+ --bs-dropdown-border-color: var(--bs-border-color-translucent);
+ --bs-dropdown-border-radius: var(--bs-border-radius);
+ --bs-dropdown-border-width: var(--bs-border-width);
+ --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
+ --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
+ --bs-dropdown-divider-margin-y: 0.5rem;
+ --bs-dropdown-box-shadow: var(--bs-box-shadow);
+ --bs-dropdown-link-color: var(--bs-body-color);
+ --bs-dropdown-link-hover-color: var(--bs-body-color);
+ --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
+ --bs-dropdown-link-active-color: #fff;
+ --bs-dropdown-link-active-bg: #0d6efd;
+ --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
+ --bs-dropdown-item-padding-x: 1rem;
+ --bs-dropdown-item-padding-y: 0.25rem;
+ --bs-dropdown-header-color: #6c757d;
+ --bs-dropdown-header-padding-x: 1rem;
+ --bs-dropdown-header-padding-y: 0.5rem;
+ position: absolute;
+ z-index: var(--bs-dropdown-zindex);
+ display: none;
+ min-width: var(--bs-dropdown-min-width);
+ padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
+ margin: 0;
+ font-size: var(--bs-dropdown-font-size);
+ color: var(--bs-dropdown-color);
+ text-align: left;
+ list-style: none;
+ background-color: var(--bs-dropdown-bg);
+ background-clip: padding-box;
+ border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
+ border-radius: var(--bs-dropdown-border-radius)
+}
+
+.dropdown-menu[data-bs-popper] {
+ top: 100%;
+ left: 0;
+ margin-top: var(--bs-dropdown-spacer)
+}
+
+.dropdown-menu-start {
+ --bs-position: start
+}
+
+.dropdown-menu-start[data-bs-popper] {
+ right: auto;
+ left: 0
+}
+
+.dropdown-menu-end {
+ --bs-position: end
+}
+
+.dropdown-menu-end[data-bs-popper] {
+ right: 0;
+ left: auto
+}
+
+@media (min-width:576px) {
+ .dropdown-menu-sm-start {
+ --bs-position: start
+ }
+
+ .dropdown-menu-sm-start[data-bs-popper] {
+ right: auto;
+ left: 0
+ }
+
+ .dropdown-menu-sm-end {
+ --bs-position: end
+ }
+
+ .dropdown-menu-sm-end[data-bs-popper] {
+ right: 0;
+ left: auto
+ }
+}
+
+@media (min-width:768px) {
+ .dropdown-menu-md-start {
+ --bs-position: start
+ }
+
+ .dropdown-menu-md-start[data-bs-popper] {
+ right: auto;
+ left: 0
+ }
+
+ .dropdown-menu-md-end {
+ --bs-position: end
+ }
+
+ .dropdown-menu-md-end[data-bs-popper] {
+ right: 0;
+ left: auto
+ }
+}
+
+@media (min-width:992px) {
+ .dropdown-menu-lg-start {
+ --bs-position: start
+ }
+
+ .dropdown-menu-lg-start[data-bs-popper] {
+ right: auto;
+ left: 0
+ }
+
+ .dropdown-menu-lg-end {
+ --bs-position: end
+ }
+
+ .dropdown-menu-lg-end[data-bs-popper] {
+ right: 0;
+ left: auto
+ }
+}
+
+@media (min-width:1200px) {
+ .dropdown-menu-xl-start {
+ --bs-position: start
+ }
+
+ .dropdown-menu-xl-start[data-bs-popper] {
+ right: auto;
+ left: 0
+ }
+
+ .dropdown-menu-xl-end {
+ --bs-position: end
+ }
+
+ .dropdown-menu-xl-end[data-bs-popper] {
+ right: 0;
+ left: auto
+ }
+}
+
+@media (min-width:1400px) {
+ .dropdown-menu-xxl-start {
+ --bs-position: start
+ }
+
+ .dropdown-menu-xxl-start[data-bs-popper] {
+ right: auto;
+ left: 0
+ }
+
+ .dropdown-menu-xxl-end {
+ --bs-position: end
+ }
+
+ .dropdown-menu-xxl-end[data-bs-popper] {
+ right: 0;
+ left: auto
+ }
+}
+
+.dropup .dropdown-menu[data-bs-popper] {
+ top: auto;
+ bottom: 100%;
+ margin-top: 0;
+ margin-bottom: var(--bs-dropdown-spacer)
+}
+
+.dropup .dropdown-toggle::after {
+ display: inline-block;
+ margin-left: .255em;
+ vertical-align: .255em;
+ content: "";
+ border-top: 0;
+ border-right: .3em solid transparent;
+ border-bottom: .3em solid;
+ border-left: .3em solid transparent
+}
+
+.dropup .dropdown-toggle:empty::after {
+ margin-left: 0
+}
+
+.dropend .dropdown-menu[data-bs-popper] {
+ top: 0;
+ right: auto;
+ left: 100%;
+ margin-top: 0;
+ margin-left: var(--bs-dropdown-spacer)
+}
+
+.dropend .dropdown-toggle::after {
+ display: inline-block;
+ margin-left: .255em;
+ vertical-align: .255em;
+ content: "";
+ border-top: .3em solid transparent;
+ border-right: 0;
+ border-bottom: .3em solid transparent;
+ border-left: .3em solid
+}
+
+.dropend .dropdown-toggle:empty::after {
+ margin-left: 0
+}
+
+.dropend .dropdown-toggle::after {
+ vertical-align: 0
+}
+
+.dropstart .dropdown-menu[data-bs-popper] {
+ top: 0;
+ right: 100%;
+ left: auto;
+ margin-top: 0;
+ margin-right: var(--bs-dropdown-spacer)
+}
+
+.dropstart .dropdown-toggle::after {
+ display: inline-block;
+ margin-left: .255em;
+ vertical-align: .255em;
+ content: ""
+}
+
+.dropstart .dropdown-toggle::after {
+ display: none
+}
+
+.dropstart .dropdown-toggle::before {
+ display: inline-block;
+ margin-right: .255em;
+ vertical-align: .255em;
+ content: "";
+ border-top: .3em solid transparent;
+ border-right: .3em solid;
+ border-bottom: .3em solid transparent
+}
+
+.dropstart .dropdown-toggle:empty::after {
+ margin-left: 0
+}
+
+.dropstart .dropdown-toggle::before {
+ vertical-align: 0
+}
+
+.dropdown-divider {
+ height: 0;
+ margin: var(--bs-dropdown-divider-margin-y) 0;
+ overflow: hidden;
+ border-top: 1px solid var(--bs-dropdown-divider-bg);
+ opacity: 1
+}
+
+.dropdown-item {
+ display: block;
+ width: 100%;
+ padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
+ clear: both;
+ font-weight: 400;
+ color: var(--bs-dropdown-link-color);
+ text-align: inherit;
+ text-decoration: none;
+ white-space: nowrap;
+ background-color: transparent;
+ border: 0;
+ border-radius: var(--bs-dropdown-item-border-radius, 0)
+}
+
+.dropdown-item:focus,
+.dropdown-item:hover {
+ color: var(--bs-dropdown-link-hover-color);
+ background-color: var(--bs-dropdown-link-hover-bg)
+}
+
+.dropdown-item.active,
+.dropdown-item:active {
+ color: var(--bs-dropdown-link-active-color);
+ text-decoration: none;
+ background-color: var(--bs-dropdown-link-active-bg)
+}
+
+.dropdown-item.disabled,
+.dropdown-item:disabled {
+ color: var(--bs-dropdown-link-disabled-color);
+ pointer-events: none;
+ background-color: transparent
+}
+
+.dropdown-menu.show {
+ display: block
+}
+
+.dropdown-header {
+ display: block;
+ padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
+ margin-bottom: 0;
+ font-size: .875rem;
+ color: var(--bs-dropdown-header-color);
+ white-space: nowrap
+}
+
+.dropdown-item-text {
+ display: block;
+ padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
+ color: var(--bs-dropdown-link-color)
+}
+
+.dropdown-menu-dark {
+ --bs-dropdown-color: #dee2e6;
+ --bs-dropdown-bg: #343a40;
+ --bs-dropdown-border-color: var(--bs-border-color-translucent);
+ --bs-dropdown-box-shadow: ;
+ --bs-dropdown-link-color: #dee2e6;
+ --bs-dropdown-link-hover-color: #fff;
+ --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
+ --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
+ --bs-dropdown-link-active-color: #fff;
+ --bs-dropdown-link-active-bg: #0d6efd;
+ --bs-dropdown-link-disabled-color: #adb5bd;
+ --bs-dropdown-header-color: #adb5bd
+}
+
+.btn-group,
+.btn-group-vertical {
+ position: relative;
+ display: inline-flex;
+ vertical-align: middle
+}
+
+.btn-group-vertical>.btn,
+.btn-group>.btn {
+ position: relative;
+ flex: 1 1 auto
+}
+
+.btn-group-vertical>.btn-check:checked+.btn,
+.btn-group-vertical>.btn-check:focus+.btn,
+.btn-group-vertical>.btn.active,
+.btn-group-vertical>.btn:active,
+.btn-group-vertical>.btn:focus,
+.btn-group-vertical>.btn:hover,
+.btn-group>.btn-check:checked+.btn,
+.btn-group>.btn-check:focus+.btn,
+.btn-group>.btn.active,
+.btn-group>.btn:active,
+.btn-group>.btn:focus,
+.btn-group>.btn:hover {
+ z-index: 1
+}
+
+.btn-toolbar {
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: flex-start
+}
+
+.btn-toolbar .input-group {
+ width: auto
+}
+
+.btn-group {
+ border-radius: var(--bs-border-radius)
+}
+
+.btn-group>.btn-group:not(:first-child),
+.btn-group>:not(.btn-check:first-child)+.btn {
+ margin-left: calc(var(--bs-border-width) * -1)
+}
+
+.btn-group>.btn-group:not(:last-child)>.btn,
+.btn-group>.btn.dropdown-toggle-split:first-child,
+.btn-group>.btn:not(:last-child):not(.dropdown-toggle) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0
+}
+
+.btn-group>.btn-group:not(:first-child)>.btn,
+.btn-group>.btn:nth-child(n+3),
+.btn-group>:not(.btn-check)+.btn {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.dropdown-toggle-split {
+ padding-right: .5625rem;
+ padding-left: .5625rem
+}
+
+.dropdown-toggle-split::after,
+.dropend .dropdown-toggle-split::after,
+.dropup .dropdown-toggle-split::after {
+ margin-left: 0
+}
+
+.dropstart .dropdown-toggle-split::before {
+ margin-right: 0
+}
+
+.btn-group-sm>.btn+.dropdown-toggle-split,
+.btn-sm+.dropdown-toggle-split {
+ padding-right: .375rem;
+ padding-left: .375rem
+}
+
+.btn-group-lg>.btn+.dropdown-toggle-split,
+.btn-lg+.dropdown-toggle-split {
+ padding-right: .75rem;
+ padding-left: .75rem
+}
+
+.btn-group-vertical {
+ flex-direction: column;
+ align-items: flex-start;
+ justify-content: center
+}
+
+.btn-group-vertical>.btn,
+.btn-group-vertical>.btn-group {
+ width: 100%
+}
+
+.btn-group-vertical>.btn-group:not(:first-child),
+.btn-group-vertical>.btn:not(:first-child) {
+ margin-top: calc(var(--bs-border-width) * -1)
+}
+
+.btn-group-vertical>.btn-group:not(:last-child)>.btn,
+.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle) {
+ border-bottom-right-radius: 0;
+ border-bottom-left-radius: 0
+}
+
+.btn-group-vertical>.btn-group:not(:first-child)>.btn,
+.btn-group-vertical>.btn~.btn {
+ border-top-left-radius: 0;
+ border-top-right-radius: 0
+}
+
+.nav {
+ --bs-nav-link-padding-x: 1rem;
+ --bs-nav-link-padding-y: 0.5rem;
+ --bs-nav-link-font-weight: ;
+ --bs-nav-link-color: var(--bs-link-color);
+ --bs-nav-link-hover-color: var(--bs-link-hover-color);
+ --bs-nav-link-disabled-color: var(--bs-secondary-color);
+ display: flex;
+ flex-wrap: wrap;
+ padding-left: 0;
+ margin-bottom: 0;
+ list-style: none
+}
+
+.nav-link {
+ display: block;
+ padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
+ font-size: var(--bs-nav-link-font-size);
+ font-weight: var(--bs-nav-link-font-weight);
+ color: var(--bs-nav-link-color);
+ text-decoration: none;
+ background: 0 0;
+ border: 0;
+ transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .nav-link {
+ transition: none
+ }
+}
+
+.nav-link:focus,
+.nav-link:hover {
+ color: var(--bs-nav-link-hover-color)
+}
+
+.nav-link:focus-visible {
+ outline: 0;
+ box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25)
+}
+
+.nav-link.disabled,
+.nav-link:disabled {
+ color: var(--bs-nav-link-disabled-color);
+ pointer-events: none;
+ cursor: default
+}
+
+.nav-tabs {
+ --bs-nav-tabs-border-width: var(--bs-border-width);
+ --bs-nav-tabs-border-color: var(--bs-border-color);
+ --bs-nav-tabs-border-radius: var(--bs-border-radius);
+ --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
+ --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
+ --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
+ --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
+ border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)
+}
+
+.nav-tabs .nav-link {
+ margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
+ border: var(--bs-nav-tabs-border-width) solid transparent;
+ border-top-left-radius: var(--bs-nav-tabs-border-radius);
+ border-top-right-radius: var(--bs-nav-tabs-border-radius)
+}
+
+.nav-tabs .nav-link:focus,
+.nav-tabs .nav-link:hover {
+ isolation: isolate;
+ border-color: var(--bs-nav-tabs-link-hover-border-color)
+}
+
+.nav-tabs .nav-item.show .nav-link,
+.nav-tabs .nav-link.active {
+ color: var(--bs-nav-tabs-link-active-color);
+ background-color: var(--bs-nav-tabs-link-active-bg);
+ border-color: var(--bs-nav-tabs-link-active-border-color)
+}
+
+.nav-tabs .dropdown-menu {
+ margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
+ border-top-left-radius: 0;
+ border-top-right-radius: 0
+}
+
+.nav-pills {
+ --bs-nav-pills-border-radius: var(--bs-border-radius);
+ --bs-nav-pills-link-active-color: #fff;
+ --bs-nav-pills-link-active-bg: #0d6efd
+}
+
+.nav-pills .nav-link {
+ border-radius: var(--bs-nav-pills-border-radius)
+}
+
+.nav-pills .nav-link.active,
+.nav-pills .show>.nav-link {
+ color: var(--bs-nav-pills-link-active-color);
+ background-color: var(--bs-nav-pills-link-active-bg)
+}
+
+.nav-underline {
+ --bs-nav-underline-gap: 1rem;
+ --bs-nav-underline-border-width: 0.125rem;
+ --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
+ gap: var(--bs-nav-underline-gap)
+}
+
+.nav-underline .nav-link {
+ padding-right: 0;
+ padding-left: 0;
+ border-bottom: var(--bs-nav-underline-border-width) solid transparent
+}
+
+.nav-underline .nav-link:focus,
+.nav-underline .nav-link:hover {
+ border-bottom-color: currentcolor
+}
+
+.nav-underline .nav-link.active,
+.nav-underline .show>.nav-link {
+ font-weight: 700;
+ color: var(--bs-nav-underline-link-active-color);
+ border-bottom-color: currentcolor
+}
+
+.nav-fill .nav-item,
+.nav-fill>.nav-link {
+ flex: 1 1 auto;
+ text-align: center
+}
+
+.nav-justified .nav-item,
+.nav-justified>.nav-link {
+ flex-basis: 0;
+ flex-grow: 1;
+ text-align: center
+}
+
+.nav-fill .nav-item .nav-link,
+.nav-justified .nav-item .nav-link {
+ width: 100%
+}
+
+.tab-content>.tab-pane {
+ display: none
+}
+
+.tab-content>.active {
+ display: block
+}
+
+.navbar {
+ --bs-navbar-padding-x: 0;
+ --bs-navbar-padding-y: 0.5rem;
+ --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
+ --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
+ --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
+ --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
+ --bs-navbar-brand-padding-y: 0.3125rem;
+ --bs-navbar-brand-margin-end: 1rem;
+ --bs-navbar-brand-font-size: 1.25rem;
+ --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
+ --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
+ --bs-navbar-nav-link-padding-x: 0.5rem;
+ --bs-navbar-toggler-padding-y: 0.25rem;
+ --bs-navbar-toggler-padding-x: 0.75rem;
+ --bs-navbar-toggler-font-size: 1.25rem;
+ --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
+ --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
+ --bs-navbar-toggler-border-radius: var(--bs-border-radius);
+ --bs-navbar-toggler-focus-width: 0.25rem;
+ --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
+ position: relative;
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ justify-content: space-between;
+ padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)
+}
+
+.navbar>.container,
+.navbar>.container-fluid,
+.navbar>.container-lg,
+.navbar>.container-md,
+.navbar>.container-sm,
+.navbar>.container-xl,
+.navbar>.container-xxl {
+ display: flex;
+ flex-wrap: inherit;
+ align-items: center;
+ justify-content: space-between
+}
+
+.navbar-brand {
+ padding-top: var(--bs-navbar-brand-padding-y);
+ padding-bottom: var(--bs-navbar-brand-padding-y);
+ margin-right: var(--bs-navbar-brand-margin-end);
+ font-size: var(--bs-navbar-brand-font-size);
+ color: var(--bs-navbar-brand-color);
+ text-decoration: none;
+ white-space: nowrap
+}
+
+.navbar-brand:focus,
+.navbar-brand:hover {
+ color: var(--bs-navbar-brand-hover-color)
+}
+
+.navbar-nav {
+ --bs-nav-link-padding-x: 0;
+ --bs-nav-link-padding-y: 0.5rem;
+ --bs-nav-link-font-weight: ;
+ --bs-nav-link-color: var(--bs-navbar-color);
+ --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
+ --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
+ display: flex;
+ flex-direction: column;
+ padding-left: 0;
+ margin-bottom: 0;
+ list-style: none
+}
+
+.navbar-nav .nav-link.active,
+.navbar-nav .nav-link.show {
+ color: var(--bs-navbar-active-color)
+}
+
+.navbar-nav .dropdown-menu {
+ position: static
+}
+
+.navbar-text {
+ padding-top: .5rem;
+ padding-bottom: .5rem;
+ color: var(--bs-navbar-color)
+}
+
+.navbar-text a,
+.navbar-text a:focus,
+.navbar-text a:hover {
+ color: var(--bs-navbar-active-color)
+}
+
+.navbar-collapse {
+ flex-basis: 100%;
+ flex-grow: 1;
+ align-items: center
+}
+
+.navbar-toggler {
+ padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
+ font-size: var(--bs-navbar-toggler-font-size);
+ line-height: 1;
+ color: var(--bs-navbar-color);
+ background-color: transparent;
+ border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
+ border-radius: var(--bs-navbar-toggler-border-radius);
+ transition: var(--bs-navbar-toggler-transition)
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .navbar-toggler {
+ transition: none
+ }
+}
+
+.navbar-toggler:hover {
+ text-decoration: none
+}
+
+.navbar-toggler:focus {
+ text-decoration: none;
+ outline: 0;
+ box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width)
+}
+
+.navbar-toggler-icon {
+ display: inline-block;
+ width: 1.5em;
+ height: 1.5em;
+ vertical-align: middle;
+ background-image: var(--bs-navbar-toggler-icon-bg);
+ background-repeat: no-repeat;
+ background-position: center;
+ background-size: 100%
+}
+
+.navbar-nav-scroll {
+ max-height: var(--bs-scroll-height, 75vh);
+ overflow-y: auto
+}
+
+@media (min-width:576px) {
+ .navbar-expand-sm {
+ flex-wrap: nowrap;
+ justify-content: flex-start
+ }
+
+ .navbar-expand-sm .navbar-nav {
+ flex-direction: row
+ }
+
+ .navbar-expand-sm .navbar-nav .dropdown-menu {
+ position: absolute
+ }
+
+ .navbar-expand-sm .navbar-nav .nav-link {
+ padding-right: var(--bs-navbar-nav-link-padding-x);
+ padding-left: var(--bs-navbar-nav-link-padding-x)
+ }
+
+ .navbar-expand-sm .navbar-nav-scroll {
+ overflow: visible
+ }
+
+ .navbar-expand-sm .navbar-collapse {
+ display: flex !important;
+ flex-basis: auto
+ }
+
+ .navbar-expand-sm .navbar-toggler {
+ display: none
+ }
+
+ .navbar-expand-sm .offcanvas {
+ position: static;
+ z-index: auto;
+ flex-grow: 1;
+ width: auto !important;
+ height: auto !important;
+ visibility: visible !important;
+ background-color: transparent !important;
+ border: 0 !important;
+ transform: none !important;
+ transition: none
+ }
+
+ .navbar-expand-sm .offcanvas .offcanvas-header {
+ display: none
+ }
+
+ .navbar-expand-sm .offcanvas .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible
+ }
+}
+
+@media (min-width:768px) {
+ .navbar-expand-md {
+ flex-wrap: nowrap;
+ justify-content: flex-start
+ }
+
+ .navbar-expand-md .navbar-nav {
+ flex-direction: row
+ }
+
+ .navbar-expand-md .navbar-nav .dropdown-menu {
+ position: absolute
+ }
+
+ .navbar-expand-md .navbar-nav .nav-link {
+ padding-right: var(--bs-navbar-nav-link-padding-x);
+ padding-left: var(--bs-navbar-nav-link-padding-x)
+ }
+
+ .navbar-expand-md .navbar-nav-scroll {
+ overflow: visible
+ }
+
+ .navbar-expand-md .navbar-collapse {
+ display: flex !important;
+ flex-basis: auto
+ }
+
+ .navbar-expand-md .navbar-toggler {
+ display: none
+ }
+
+ .navbar-expand-md .offcanvas {
+ position: static;
+ z-index: auto;
+ flex-grow: 1;
+ width: auto !important;
+ height: auto !important;
+ visibility: visible !important;
+ background-color: transparent !important;
+ border: 0 !important;
+ transform: none !important;
+ transition: none
+ }
+
+ .navbar-expand-md .offcanvas .offcanvas-header {
+ display: none
+ }
+
+ .navbar-expand-md .offcanvas .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible
+ }
+}
+
+@media (min-width:992px) {
+ .navbar-expand-lg {
+ flex-wrap: nowrap;
+ justify-content: flex-start
+ }
+
+ .navbar-expand-lg .navbar-nav {
+ flex-direction: row
+ }
+
+ .navbar-expand-lg .navbar-nav .dropdown-menu {
+ position: absolute
+ }
+
+ .navbar-expand-lg .navbar-nav .nav-link {
+ padding-right: var(--bs-navbar-nav-link-padding-x);
+ padding-left: var(--bs-navbar-nav-link-padding-x)
+ }
+
+ .navbar-expand-lg .navbar-nav-scroll {
+ overflow: visible
+ }
+
+ .navbar-expand-lg .navbar-collapse {
+ display: flex !important;
+ flex-basis: auto
+ }
+
+ .navbar-expand-lg .navbar-toggler {
+ display: none
+ }
+
+ .navbar-expand-lg .offcanvas {
+ position: static;
+ z-index: auto;
+ flex-grow: 1;
+ width: auto !important;
+ height: auto !important;
+ visibility: visible !important;
+ background-color: transparent !important;
+ border: 0 !important;
+ transform: none !important;
+ transition: none
+ }
+
+ .navbar-expand-lg .offcanvas .offcanvas-header {
+ display: none
+ }
+
+ .navbar-expand-lg .offcanvas .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible
+ }
+}
+
+@media (min-width:1200px) {
+ .navbar-expand-xl {
+ flex-wrap: nowrap;
+ justify-content: flex-start
+ }
+
+ .navbar-expand-xl .navbar-nav {
+ flex-direction: row
+ }
+
+ .navbar-expand-xl .navbar-nav .dropdown-menu {
+ position: absolute
+ }
+
+ .navbar-expand-xl .navbar-nav .nav-link {
+ padding-right: var(--bs-navbar-nav-link-padding-x);
+ padding-left: var(--bs-navbar-nav-link-padding-x)
+ }
+
+ .navbar-expand-xl .navbar-nav-scroll {
+ overflow: visible
+ }
+
+ .navbar-expand-xl .navbar-collapse {
+ display: flex !important;
+ flex-basis: auto
+ }
+
+ .navbar-expand-xl .navbar-toggler {
+ display: none
+ }
+
+ .navbar-expand-xl .offcanvas {
+ position: static;
+ z-index: auto;
+ flex-grow: 1;
+ width: auto !important;
+ height: auto !important;
+ visibility: visible !important;
+ background-color: transparent !important;
+ border: 0 !important;
+ transform: none !important;
+ transition: none
+ }
+
+ .navbar-expand-xl .offcanvas .offcanvas-header {
+ display: none
+ }
+
+ .navbar-expand-xl .offcanvas .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible
+ }
+}
+
+@media (min-width:1400px) {
+ .navbar-expand-xxl {
+ flex-wrap: nowrap;
+ justify-content: flex-start
+ }
+
+ .navbar-expand-xxl .navbar-nav {
+ flex-direction: row
+ }
+
+ .navbar-expand-xxl .navbar-nav .dropdown-menu {
+ position: absolute
+ }
+
+ .navbar-expand-xxl .navbar-nav .nav-link {
+ padding-right: var(--bs-navbar-nav-link-padding-x);
+ padding-left: var(--bs-navbar-nav-link-padding-x)
+ }
+
+ .navbar-expand-xxl .navbar-nav-scroll {
+ overflow: visible
+ }
+
+ .navbar-expand-xxl .navbar-collapse {
+ display: flex !important;
+ flex-basis: auto
+ }
+
+ .navbar-expand-xxl .navbar-toggler {
+ display: none
+ }
+
+ .navbar-expand-xxl .offcanvas {
+ position: static;
+ z-index: auto;
+ flex-grow: 1;
+ width: auto !important;
+ height: auto !important;
+ visibility: visible !important;
+ background-color: transparent !important;
+ border: 0 !important;
+ transform: none !important;
+ transition: none
+ }
+
+ .navbar-expand-xxl .offcanvas .offcanvas-header {
+ display: none
+ }
+
+ .navbar-expand-xxl .offcanvas .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible
+ }
+}
+
+.navbar-expand {
+ flex-wrap: nowrap;
+ justify-content: flex-start
+}
+
+.navbar-expand .navbar-nav {
+ flex-direction: row
+}
+
+.navbar-expand .navbar-nav .dropdown-menu {
+ position: absolute
+}
+
+.navbar-expand .navbar-nav .nav-link {
+ padding-right: var(--bs-navbar-nav-link-padding-x);
+ padding-left: var(--bs-navbar-nav-link-padding-x)
+}
+
+.navbar-expand .navbar-nav-scroll {
+ overflow: visible
+}
+
+.navbar-expand .navbar-collapse {
+ display: flex !important;
+ flex-basis: auto
+}
+
+.navbar-expand .navbar-toggler {
+ display: none
+}
+
+.navbar-expand .offcanvas {
+ position: static;
+ z-index: auto;
+ flex-grow: 1;
+ width: auto !important;
+ height: auto !important;
+ visibility: visible !important;
+ background-color: transparent !important;
+ border: 0 !important;
+ transform: none !important;
+ transition: none
+}
+
+.navbar-expand .offcanvas .offcanvas-header {
+ display: none
+}
+
+.navbar-expand .offcanvas .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible
+}
+
+.navbar-dark,
+.navbar[data-bs-theme=dark] {
+ --bs-navbar-color: rgba(255, 255, 255, 0.55);
+ --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
+ --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
+ --bs-navbar-active-color: #fff;
+ --bs-navbar-brand-color: #fff;
+ --bs-navbar-brand-hover-color: #fff;
+ --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
+ --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
+}
+
+[data-bs-theme=dark] .navbar-toggler-icon {
+ --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")
+}
+
+.card {
+ --bs-card-spacer-y: 1rem;
+ --bs-card-spacer-x: 1rem;
+ --bs-card-title-spacer-y: 0.5rem;
+ --bs-card-title-color: ;
+ --bs-card-subtitle-color: ;
+ --bs-card-border-width: var(--bs-border-width);
+ --bs-card-border-color: var(--bs-border-color-translucent);
+ --bs-card-border-radius: var(--bs-border-radius);
+ --bs-card-box-shadow: ;
+ --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
+ --bs-card-cap-padding-y: 0.5rem;
+ --bs-card-cap-padding-x: 1rem;
+ --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
+ --bs-card-cap-color: ;
+ --bs-card-height: ;
+ --bs-card-color: ;
+ --bs-card-bg: var(--bs-body-bg);
+ --bs-card-img-overlay-padding: 1rem;
+ --bs-card-group-margin: 0.75rem;
+ position: relative;
+ display: flex;
+ flex-direction: column;
+ min-width: 0;
+ height: var(--bs-card-height);
+ color: var(--bs-body-color);
+ word-wrap: break-word;
+ background-color: var(--bs-card-bg);
+ background-clip: border-box;
+ border: var(--bs-card-border-width) solid var(--bs-card-border-color);
+ border-radius: var(--bs-card-border-radius)
+}
+
+.card>hr {
+ margin-right: 0;
+ margin-left: 0
+}
+
+.card>.list-group {
+ border-top: inherit;
+ border-bottom: inherit
+}
+
+.card>.list-group:first-child {
+ border-top-width: 0;
+ border-top-left-radius: var(--bs-card-inner-border-radius);
+ border-top-right-radius: var(--bs-card-inner-border-radius)
+}
+
+.card>.list-group:last-child {
+ border-bottom-width: 0;
+ border-bottom-right-radius: var(--bs-card-inner-border-radius);
+ border-bottom-left-radius: var(--bs-card-inner-border-radius)
+}
+
+.card>.card-header+.list-group,
+.card>.list-group+.card-footer {
+ border-top: 0
+}
+
+.card-body {
+ flex: 1 1 auto;
+ padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
+ color: var(--bs-card-color)
+}
+
+.card-title {
+ margin-bottom: var(--bs-card-title-spacer-y);
+ color: var(--bs-card-title-color)
+}
+
+.card-subtitle {
+ margin-top: calc(-.5 * var(--bs-card-title-spacer-y));
+ margin-bottom: 0;
+ color: var(--bs-card-subtitle-color)
+}
+
+.card-text:last-child {
+ margin-bottom: 0
+}
+
+.card-link+.card-link {
+ margin-left: var(--bs-card-spacer-x)
+}
+
+.card-header {
+ padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
+ margin-bottom: 0;
+ color: var(--bs-card-cap-color);
+ background-color: var(--bs-card-cap-bg);
+ border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color)
+}
+
+.card-header:first-child {
+ border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0
+}
+
+.card-footer {
+ padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
+ color: var(--bs-card-cap-color);
+ background-color: var(--bs-card-cap-bg);
+ border-top: var(--bs-card-border-width) solid var(--bs-card-border-color)
+}
+
+.card-footer:last-child {
+ border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)
+}
+
+.card-header-tabs {
+ margin-right: calc(-.5 * var(--bs-card-cap-padding-x));
+ margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
+ margin-left: calc(-.5 * var(--bs-card-cap-padding-x));
+ border-bottom: 0
+}
+
+.card-header-tabs .nav-link.active {
+ background-color: var(--bs-card-bg);
+ border-bottom-color: var(--bs-card-bg)
+}
+
+.card-header-pills {
+ margin-right: calc(-.5 * var(--bs-card-cap-padding-x));
+ margin-left: calc(-.5 * var(--bs-card-cap-padding-x))
+}
+
+.card-img-overlay {
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ padding: var(--bs-card-img-overlay-padding);
+ border-radius: var(--bs-card-inner-border-radius)
+}
+
+.card-img,
+.card-img-bottom,
+.card-img-top {
+ width: 100%
+}
+
+.card-img,
+.card-img-top {
+ border-top-left-radius: var(--bs-card-inner-border-radius);
+ border-top-right-radius: var(--bs-card-inner-border-radius)
+}
+
+.card-img,
+.card-img-bottom {
+ border-bottom-right-radius: var(--bs-card-inner-border-radius);
+ border-bottom-left-radius: var(--bs-card-inner-border-radius)
+}
+
+.card-group>.card {
+ margin-bottom: var(--bs-card-group-margin)
+}
+
+@media (min-width:576px) {
+ .card-group {
+ display: flex;
+ flex-flow: row wrap
+ }
+
+ .card-group>.card {
+ flex: 1 0 0%;
+ margin-bottom: 0
+ }
+
+ .card-group>.card+.card {
+ margin-left: 0;
+ border-left: 0
+ }
+
+ .card-group>.card:not(:last-child) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0
+ }
+
+ .card-group>.card:not(:last-child) .card-header,
+ .card-group>.card:not(:last-child) .card-img-top {
+ border-top-right-radius: 0
+ }
+
+ .card-group>.card:not(:last-child) .card-footer,
+ .card-group>.card:not(:last-child) .card-img-bottom {
+ border-bottom-right-radius: 0
+ }
+
+ .card-group>.card:not(:first-child) {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0
+ }
+
+ .card-group>.card:not(:first-child) .card-header,
+ .card-group>.card:not(:first-child) .card-img-top {
+ border-top-left-radius: 0
+ }
+
+ .card-group>.card:not(:first-child) .card-footer,
+ .card-group>.card:not(:first-child) .card-img-bottom {
+ border-bottom-left-radius: 0
+ }
+}
+
+.accordion {
+ --bs-accordion-color: var(--bs-body-color);
+ --bs-accordion-bg: var(--bs-body-bg);
+ --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
+ --bs-accordion-border-color: var(--bs-border-color);
+ --bs-accordion-border-width: var(--bs-border-width);
+ --bs-accordion-border-radius: var(--bs-border-radius);
+ --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
+ --bs-accordion-btn-padding-x: 1.25rem;
+ --bs-accordion-btn-padding-y: 1rem;
+ --bs-accordion-btn-color: var(--bs-body-color);
+ --bs-accordion-btn-bg: var(--bs-accordion-bg);
+ --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
+ --bs-accordion-btn-icon-width: 1.25rem;
+ --bs-accordion-btn-icon-transform: rotate(-180deg);
+ --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
+ --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");
+ --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
+ --bs-accordion-body-padding-x: 1.25rem;
+ --bs-accordion-body-padding-y: 1rem;
+ --bs-accordion-active-color: var(--bs-primary-text-emphasis);
+ --bs-accordion-active-bg: var(--bs-primary-bg-subtle)
+}
+
+.accordion-button {
+ position: relative;
+ display: flex;
+ align-items: center;
+ width: 100%;
+ padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
+ font-size: 1rem;
+ color: var(--bs-accordion-btn-color);
+ text-align: left;
+ background-color: var(--bs-accordion-btn-bg);
+ border: 0;
+ border-radius: 0;
+ overflow-anchor: none;
+ transition: var(--bs-accordion-transition)
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .accordion-button {
+ transition: none
+ }
+}
+
+.accordion-button:not(.collapsed) {
+ color: var(--bs-accordion-active-color);
+ background-color: var(--bs-accordion-active-bg);
+ box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)
+}
+
+.accordion-button:not(.collapsed)::after {
+ background-image: var(--bs-accordion-btn-active-icon);
+ transform: var(--bs-accordion-btn-icon-transform)
+}
+
+.accordion-button::after {
+ flex-shrink: 0;
+ width: var(--bs-accordion-btn-icon-width);
+ height: var(--bs-accordion-btn-icon-width);
+ margin-left: auto;
+ content: "";
+ background-image: var(--bs-accordion-btn-icon);
+ background-repeat: no-repeat;
+ background-size: var(--bs-accordion-btn-icon-width);
+ transition: var(--bs-accordion-btn-icon-transition)
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .accordion-button::after {
+ transition: none
+ }
+}
+
+.accordion-button:hover {
+ z-index: 2
+}
+
+.accordion-button:focus {
+ z-index: 3;
+ outline: 0;
+ box-shadow: var(--bs-accordion-btn-focus-box-shadow)
+}
+
+.accordion-header {
+ margin-bottom: 0
+}
+
+.accordion-item {
+ color: var(--bs-accordion-color);
+ background-color: var(--bs-accordion-bg);
+ border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)
+}
+
+.accordion-item:first-of-type {
+ border-top-left-radius: var(--bs-accordion-border-radius);
+ border-top-right-radius: var(--bs-accordion-border-radius)
+}
+
+.accordion-item:first-of-type>.accordion-header .accordion-button {
+ border-top-left-radius: var(--bs-accordion-inner-border-radius);
+ border-top-right-radius: var(--bs-accordion-inner-border-radius)
+}
+
+.accordion-item:not(:first-of-type) {
+ border-top: 0
+}
+
+.accordion-item:last-of-type {
+ border-bottom-right-radius: var(--bs-accordion-border-radius);
+ border-bottom-left-radius: var(--bs-accordion-border-radius)
+}
+
+.accordion-item:last-of-type>.accordion-header .accordion-button.collapsed {
+ border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
+ border-bottom-left-radius: var(--bs-accordion-inner-border-radius)
+}
+
+.accordion-item:last-of-type>.accordion-collapse {
+ border-bottom-right-radius: var(--bs-accordion-border-radius);
+ border-bottom-left-radius: var(--bs-accordion-border-radius)
+}
+
+.accordion-body {
+ padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)
+}
+
+.accordion-flush>.accordion-item {
+ border-right: 0;
+ border-left: 0;
+ border-radius: 0
+}
+
+.accordion-flush>.accordion-item:first-child {
+ border-top: 0
+}
+
+.accordion-flush>.accordion-item:last-child {
+ border-bottom: 0
+}
+
+.accordion-flush>.accordion-item>.accordion-header .accordion-button,
+.accordion-flush>.accordion-item>.accordion-header .accordion-button.collapsed {
+ border-radius: 0
+}
+
+.accordion-flush>.accordion-item>.accordion-collapse {
+ border-radius: 0
+}
+
+[data-bs-theme=dark] .accordion-button::after {
+ --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
+ --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")
+}
+
+.breadcrumb {
+ --bs-breadcrumb-padding-x: 0;
+ --bs-breadcrumb-padding-y: 0;
+ --bs-breadcrumb-margin-bottom: 1rem;
+ --bs-breadcrumb-bg: ;
+ --bs-breadcrumb-border-radius: ;
+ --bs-breadcrumb-divider-color: var(--bs-secondary-color);
+ --bs-breadcrumb-item-padding-x: 0.5rem;
+ --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
+ display: flex;
+ flex-wrap: wrap;
+ padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
+ margin-bottom: var(--bs-breadcrumb-margin-bottom);
+ font-size: var(--bs-breadcrumb-font-size);
+ list-style: none;
+ background-color: var(--bs-breadcrumb-bg);
+ border-radius: var(--bs-breadcrumb-border-radius)
+}
+
+.breadcrumb-item+.breadcrumb-item {
+ padding-left: var(--bs-breadcrumb-item-padding-x)
+}
+
+.breadcrumb-item+.breadcrumb-item::before {
+ float: left;
+ padding-right: var(--bs-breadcrumb-item-padding-x);
+ color: var(--bs-breadcrumb-divider-color);
+ content: var(--bs-breadcrumb-divider, "/")
+}
+
+.breadcrumb-item.active {
+ color: var(--bs-breadcrumb-item-active-color)
+}
+
+.pagination {
+ --bs-pagination-padding-x: 0.75rem;
+ --bs-pagination-padding-y: 0.375rem;
+ --bs-pagination-font-size: 1rem;
+ --bs-pagination-color: var(--bs-link-color);
+ --bs-pagination-bg: var(--bs-body-bg);
+ --bs-pagination-border-width: var(--bs-border-width);
+ --bs-pagination-border-color: var(--bs-border-color);
+ --bs-pagination-border-radius: var(--bs-border-radius);
+ --bs-pagination-hover-color: var(--bs-link-hover-color);
+ --bs-pagination-hover-bg: var(--bs-tertiary-bg);
+ --bs-pagination-hover-border-color: var(--bs-border-color);
+ --bs-pagination-focus-color: var(--bs-link-hover-color);
+ --bs-pagination-focus-bg: var(--bs-secondary-bg);
+ --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
+ --bs-pagination-active-color: #fff;
+ --bs-pagination-active-bg: #0d6efd;
+ --bs-pagination-active-border-color: #0d6efd;
+ --bs-pagination-disabled-color: var(--bs-secondary-color);
+ --bs-pagination-disabled-bg: var(--bs-secondary-bg);
+ --bs-pagination-disabled-border-color: var(--bs-border-color);
+ display: flex;
+ padding-left: 0;
+ list-style: none
+}
+
+.page-link {
+ position: relative;
+ display: block;
+ padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
+ font-size: var(--bs-pagination-font-size);
+ color: var(--bs-pagination-color);
+ text-decoration: none;
+ background-color: var(--bs-pagination-bg);
+ border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
+ transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .page-link {
+ transition: none
+ }
+}
+
+.page-link:hover {
+ z-index: 2;
+ color: var(--bs-pagination-hover-color);
+ background-color: var(--bs-pagination-hover-bg);
+ border-color: var(--bs-pagination-hover-border-color)
+}
+
+.page-link:focus {
+ z-index: 3;
+ color: var(--bs-pagination-focus-color);
+ background-color: var(--bs-pagination-focus-bg);
+ outline: 0;
+ box-shadow: var(--bs-pagination-focus-box-shadow)
+}
+
+.active>.page-link,
+.page-link.active {
+ z-index: 3;
+ color: var(--bs-pagination-active-color);
+ background-color: var(--bs-pagination-active-bg);
+ border-color: var(--bs-pagination-active-border-color)
+}
+
+.disabled>.page-link,
+.page-link.disabled {
+ color: var(--bs-pagination-disabled-color);
+ pointer-events: none;
+ background-color: var(--bs-pagination-disabled-bg);
+ border-color: var(--bs-pagination-disabled-border-color)
+}
+
+.page-item:not(:first-child) .page-link {
+ margin-left: calc(var(--bs-border-width) * -1)
+}
+
+.page-item:first-child .page-link {
+ border-top-left-radius: var(--bs-pagination-border-radius);
+ border-bottom-left-radius: var(--bs-pagination-border-radius)
+}
+
+.page-item:last-child .page-link {
+ border-top-right-radius: var(--bs-pagination-border-radius);
+ border-bottom-right-radius: var(--bs-pagination-border-radius)
+}
+
+.pagination-lg {
+ --bs-pagination-padding-x: 1.5rem;
+ --bs-pagination-padding-y: 0.75rem;
+ --bs-pagination-font-size: 1.25rem;
+ --bs-pagination-border-radius: var(--bs-border-radius-lg)
+}
+
+.pagination-sm {
+ --bs-pagination-padding-x: 0.5rem;
+ --bs-pagination-padding-y: 0.25rem;
+ --bs-pagination-font-size: 0.875rem;
+ --bs-pagination-border-radius: var(--bs-border-radius-sm)
+}
+
+.badge {
+ --bs-badge-padding-x: 0.65em;
+ --bs-badge-padding-y: 0.35em;
+ --bs-badge-font-size: 0.75em;
+ --bs-badge-font-weight: 700;
+ --bs-badge-color: #fff;
+ --bs-badge-border-radius: var(--bs-border-radius);
+ display: inline-block;
+ padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
+ font-size: var(--bs-badge-font-size);
+ font-weight: var(--bs-badge-font-weight);
+ line-height: 1;
+ color: var(--bs-badge-color);
+ text-align: center;
+ white-space: nowrap;
+ vertical-align: baseline;
+ border-radius: var(--bs-badge-border-radius)
+}
+
+.badge:empty {
+ display: none
+}
+
+.btn .badge {
+ position: relative;
+ top: -1px
+}
+
+.alert {
+ --bs-alert-bg: transparent;
+ --bs-alert-padding-x: 1rem;
+ --bs-alert-padding-y: 1rem;
+ --bs-alert-margin-bottom: 1rem;
+ --bs-alert-color: inherit;
+ --bs-alert-border-color: transparent;
+ --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
+ --bs-alert-border-radius: var(--bs-border-radius);
+ --bs-alert-link-color: inherit;
+ position: relative;
+ padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
+ margin-bottom: var(--bs-alert-margin-bottom);
+ color: var(--bs-alert-color);
+ background-color: var(--bs-alert-bg);
+ border: var(--bs-alert-border);
+ border-radius: var(--bs-alert-border-radius)
+}
+
+.alert-heading {
+ color: inherit
+}
+
+.alert-link {
+ font-weight: 700;
+ color: var(--bs-alert-link-color)
+}
+
+.alert-dismissible {
+ padding-right: 3rem
+}
+
+.alert-dismissible .btn-close {
+ position: absolute;
+ top: 0;
+ right: 0;
+ z-index: 2;
+ padding: 1.25rem 1rem
+}
+
+.alert-primary {
+ --bs-alert-color: var(--bs-primary-text-emphasis);
+ --bs-alert-bg: var(--bs-primary-bg-subtle);
+ --bs-alert-border-color: var(--bs-primary-border-subtle);
+ --bs-alert-link-color: var(--bs-primary-text-emphasis)
+}
+
+.alert-secondary {
+ --bs-alert-color: var(--bs-secondary-text-emphasis);
+ --bs-alert-bg: var(--bs-secondary-bg-subtle);
+ --bs-alert-border-color: var(--bs-secondary-border-subtle);
+ --bs-alert-link-color: var(--bs-secondary-text-emphasis)
+}
+
+.alert-success {
+ --bs-alert-color: var(--bs-success-text-emphasis);
+ --bs-alert-bg: var(--bs-success-bg-subtle);
+ --bs-alert-border-color: var(--bs-success-border-subtle);
+ --bs-alert-link-color: var(--bs-success-text-emphasis)
+}
+
+.alert-info {
+ --bs-alert-color: var(--bs-info-text-emphasis);
+ --bs-alert-bg: var(--bs-info-bg-subtle);
+ --bs-alert-border-color: var(--bs-info-border-subtle);
+ --bs-alert-link-color: var(--bs-info-text-emphasis)
+}
+
+.alert-warning {
+ --bs-alert-color: var(--bs-warning-text-emphasis);
+ --bs-alert-bg: var(--bs-warning-bg-subtle);
+ --bs-alert-border-color: var(--bs-warning-border-subtle);
+ --bs-alert-link-color: var(--bs-warning-text-emphasis)
+}
+
+.alert-danger {
+ --bs-alert-color: var(--bs-danger-text-emphasis);
+ --bs-alert-bg: var(--bs-danger-bg-subtle);
+ --bs-alert-border-color: var(--bs-danger-border-subtle);
+ --bs-alert-link-color: var(--bs-danger-text-emphasis)
+}
+
+.alert-light {
+ --bs-alert-color: var(--bs-light-text-emphasis);
+ --bs-alert-bg: var(--bs-light-bg-subtle);
+ --bs-alert-border-color: var(--bs-light-border-subtle);
+ --bs-alert-link-color: var(--bs-light-text-emphasis)
+}
+
+.alert-dark {
+ --bs-alert-color: var(--bs-dark-text-emphasis);
+ --bs-alert-bg: var(--bs-dark-bg-subtle);
+ --bs-alert-border-color: var(--bs-dark-border-subtle);
+ --bs-alert-link-color: var(--bs-dark-text-emphasis)
+}
+
+@keyframes progress-bar-stripes {
+ 0% {
+ background-position-x: 1rem
+ }
+}
+
+.progress,
+.progress-stacked {
+ --bs-progress-height: 1rem;
+ --bs-progress-font-size: 0.75rem;
+ --bs-progress-bg: var(--bs-secondary-bg);
+ --bs-progress-border-radius: var(--bs-border-radius);
+ --bs-progress-box-shadow: var(--bs-box-shadow-inset);
+ --bs-progress-bar-color: #fff;
+ --bs-progress-bar-bg: #0d6efd;
+ --bs-progress-bar-transition: width 0.6s ease;
+ display: flex;
+ height: var(--bs-progress-height);
+ overflow: hidden;
+ font-size: var(--bs-progress-font-size);
+ background-color: var(--bs-progress-bg);
+ border-radius: var(--bs-progress-border-radius)
+}
+
+.progress-bar {
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ overflow: hidden;
+ color: var(--bs-progress-bar-color);
+ text-align: center;
+ white-space: nowrap;
+ background-color: var(--bs-progress-bar-bg);
+ transition: var(--bs-progress-bar-transition)
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .progress-bar {
+ transition: none
+ }
+}
+
+.progress-bar-striped {
+ background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
+ background-size: var(--bs-progress-height) var(--bs-progress-height)
+}
+
+.progress-stacked>.progress {
+ overflow: visible
+}
+
+.progress-stacked>.progress>.progress-bar {
+ width: 100%
+}
+
+.progress-bar-animated {
+ animation: 1s linear infinite progress-bar-stripes
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .progress-bar-animated {
+ animation: none
+ }
+}
+
+.list-group {
+ --bs-list-group-color: var(--bs-body-color);
+ --bs-list-group-bg: var(--bs-body-bg);
+ --bs-list-group-border-color: var(--bs-border-color);
+ --bs-list-group-border-width: var(--bs-border-width);
+ --bs-list-group-border-radius: var(--bs-border-radius);
+ --bs-list-group-item-padding-x: 1rem;
+ --bs-list-group-item-padding-y: 0.5rem;
+ --bs-list-group-action-color: var(--bs-secondary-color);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
+ --bs-list-group-action-active-color: var(--bs-body-color);
+ --bs-list-group-action-active-bg: var(--bs-secondary-bg);
+ --bs-list-group-disabled-color: var(--bs-secondary-color);
+ --bs-list-group-disabled-bg: var(--bs-body-bg);
+ --bs-list-group-active-color: #fff;
+ --bs-list-group-active-bg: #0d6efd;
+ --bs-list-group-active-border-color: #0d6efd;
+ display: flex;
+ flex-direction: column;
+ padding-left: 0;
+ margin-bottom: 0;
+ border-radius: var(--bs-list-group-border-radius)
+}
+
+.list-group-numbered {
+ list-style-type: none;
+ counter-reset: section
+}
+
+.list-group-numbered>.list-group-item::before {
+ content: counters(section, ".") ". ";
+ counter-increment: section
+}
+
+.list-group-item-action {
+ width: 100%;
+ color: var(--bs-list-group-action-color);
+ text-align: inherit
+}
+
+.list-group-item-action:focus,
+.list-group-item-action:hover {
+ z-index: 1;
+ color: var(--bs-list-group-action-hover-color);
+ text-decoration: none;
+ background-color: var(--bs-list-group-action-hover-bg)
+}
+
+.list-group-item-action:active {
+ color: var(--bs-list-group-action-active-color);
+ background-color: var(--bs-list-group-action-active-bg)
+}
+
+.list-group-item {
+ position: relative;
+ display: block;
+ padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
+ color: var(--bs-list-group-color);
+ text-decoration: none;
+ background-color: var(--bs-list-group-bg);
+ border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)
+}
+
+.list-group-item:first-child {
+ border-top-left-radius: inherit;
+ border-top-right-radius: inherit
+}
+
+.list-group-item:last-child {
+ border-bottom-right-radius: inherit;
+ border-bottom-left-radius: inherit
+}
+
+.list-group-item.disabled,
+.list-group-item:disabled {
+ color: var(--bs-list-group-disabled-color);
+ pointer-events: none;
+ background-color: var(--bs-list-group-disabled-bg)
+}
+
+.list-group-item.active {
+ z-index: 2;
+ color: var(--bs-list-group-active-color);
+ background-color: var(--bs-list-group-active-bg);
+ border-color: var(--bs-list-group-active-border-color)
+}
+
+.list-group-item+.list-group-item {
+ border-top-width: 0
+}
+
+.list-group-item+.list-group-item.active {
+ margin-top: calc(-1 * var(--bs-list-group-border-width));
+ border-top-width: var(--bs-list-group-border-width)
+}
+
+.list-group-horizontal {
+ flex-direction: row
+}
+
+.list-group-horizontal>.list-group-item:first-child:not(:last-child) {
+ border-bottom-left-radius: var(--bs-list-group-border-radius);
+ border-top-right-radius: 0
+}
+
+.list-group-horizontal>.list-group-item:last-child:not(:first-child) {
+ border-top-right-radius: var(--bs-list-group-border-radius);
+ border-bottom-left-radius: 0
+}
+
+.list-group-horizontal>.list-group-item.active {
+ margin-top: 0
+}
+
+.list-group-horizontal>.list-group-item+.list-group-item {
+ border-top-width: var(--bs-list-group-border-width);
+ border-left-width: 0
+}
+
+.list-group-horizontal>.list-group-item+.list-group-item.active {
+ margin-left: calc(-1 * var(--bs-list-group-border-width));
+ border-left-width: var(--bs-list-group-border-width)
+}
+
+@media (min-width:576px) {
+ .list-group-horizontal-sm {
+ flex-direction: row
+ }
+
+ .list-group-horizontal-sm>.list-group-item:first-child:not(:last-child) {
+ border-bottom-left-radius: var(--bs-list-group-border-radius);
+ border-top-right-radius: 0
+ }
+
+ .list-group-horizontal-sm>.list-group-item:last-child:not(:first-child) {
+ border-top-right-radius: var(--bs-list-group-border-radius);
+ border-bottom-left-radius: 0
+ }
+
+ .list-group-horizontal-sm>.list-group-item.active {
+ margin-top: 0
+ }
+
+ .list-group-horizontal-sm>.list-group-item+.list-group-item {
+ border-top-width: var(--bs-list-group-border-width);
+ border-left-width: 0
+ }
+
+ .list-group-horizontal-sm>.list-group-item+.list-group-item.active {
+ margin-left: calc(-1 * var(--bs-list-group-border-width));
+ border-left-width: var(--bs-list-group-border-width)
+ }
+}
+
+@media (min-width:768px) {
+ .list-group-horizontal-md {
+ flex-direction: row
+ }
+
+ .list-group-horizontal-md>.list-group-item:first-child:not(:last-child) {
+ border-bottom-left-radius: var(--bs-list-group-border-radius);
+ border-top-right-radius: 0
+ }
+
+ .list-group-horizontal-md>.list-group-item:last-child:not(:first-child) {
+ border-top-right-radius: var(--bs-list-group-border-radius);
+ border-bottom-left-radius: 0
+ }
+
+ .list-group-horizontal-md>.list-group-item.active {
+ margin-top: 0
+ }
+
+ .list-group-horizontal-md>.list-group-item+.list-group-item {
+ border-top-width: var(--bs-list-group-border-width);
+ border-left-width: 0
+ }
+
+ .list-group-horizontal-md>.list-group-item+.list-group-item.active {
+ margin-left: calc(-1 * var(--bs-list-group-border-width));
+ border-left-width: var(--bs-list-group-border-width)
+ }
+}
+
+@media (min-width:992px) {
+ .list-group-horizontal-lg {
+ flex-direction: row
+ }
+
+ .list-group-horizontal-lg>.list-group-item:first-child:not(:last-child) {
+ border-bottom-left-radius: var(--bs-list-group-border-radius);
+ border-top-right-radius: 0
+ }
+
+ .list-group-horizontal-lg>.list-group-item:last-child:not(:first-child) {
+ border-top-right-radius: var(--bs-list-group-border-radius);
+ border-bottom-left-radius: 0
+ }
+
+ .list-group-horizontal-lg>.list-group-item.active {
+ margin-top: 0
+ }
+
+ .list-group-horizontal-lg>.list-group-item+.list-group-item {
+ border-top-width: var(--bs-list-group-border-width);
+ border-left-width: 0
+ }
+
+ .list-group-horizontal-lg>.list-group-item+.list-group-item.active {
+ margin-left: calc(-1 * var(--bs-list-group-border-width));
+ border-left-width: var(--bs-list-group-border-width)
+ }
+}
+
+@media (min-width:1200px) {
+ .list-group-horizontal-xl {
+ flex-direction: row
+ }
+
+ .list-group-horizontal-xl>.list-group-item:first-child:not(:last-child) {
+ border-bottom-left-radius: var(--bs-list-group-border-radius);
+ border-top-right-radius: 0
+ }
+
+ .list-group-horizontal-xl>.list-group-item:last-child:not(:first-child) {
+ border-top-right-radius: var(--bs-list-group-border-radius);
+ border-bottom-left-radius: 0
+ }
+
+ .list-group-horizontal-xl>.list-group-item.active {
+ margin-top: 0
+ }
+
+ .list-group-horizontal-xl>.list-group-item+.list-group-item {
+ border-top-width: var(--bs-list-group-border-width);
+ border-left-width: 0
+ }
+
+ .list-group-horizontal-xl>.list-group-item+.list-group-item.active {
+ margin-left: calc(-1 * var(--bs-list-group-border-width));
+ border-left-width: var(--bs-list-group-border-width)
+ }
+}
+
+@media (min-width:1400px) {
+ .list-group-horizontal-xxl {
+ flex-direction: row
+ }
+
+ .list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child) {
+ border-bottom-left-radius: var(--bs-list-group-border-radius);
+ border-top-right-radius: 0
+ }
+
+ .list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child) {
+ border-top-right-radius: var(--bs-list-group-border-radius);
+ border-bottom-left-radius: 0
+ }
+
+ .list-group-horizontal-xxl>.list-group-item.active {
+ margin-top: 0
+ }
+
+ .list-group-horizontal-xxl>.list-group-item+.list-group-item {
+ border-top-width: var(--bs-list-group-border-width);
+ border-left-width: 0
+ }
+
+ .list-group-horizontal-xxl>.list-group-item+.list-group-item.active {
+ margin-left: calc(-1 * var(--bs-list-group-border-width));
+ border-left-width: var(--bs-list-group-border-width)
+ }
+}
+
+.list-group-flush {
+ border-radius: 0
+}
+
+.list-group-flush>.list-group-item {
+ border-width: 0 0 var(--bs-list-group-border-width)
+}
+
+.list-group-flush>.list-group-item:last-child {
+ border-bottom-width: 0
+}
+
+.list-group-item-primary {
+ --bs-list-group-color: var(--bs-primary-text-emphasis);
+ --bs-list-group-bg: var(--bs-primary-bg-subtle);
+ --bs-list-group-border-color: var(--bs-primary-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
+ --bs-list-group-active-color: var(--bs-primary-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-primary-text-emphasis)
+}
+
+.list-group-item-secondary {
+ --bs-list-group-color: var(--bs-secondary-text-emphasis);
+ --bs-list-group-bg: var(--bs-secondary-bg-subtle);
+ --bs-list-group-border-color: var(--bs-secondary-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
+ --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)
+}
+
+.list-group-item-success {
+ --bs-list-group-color: var(--bs-success-text-emphasis);
+ --bs-list-group-bg: var(--bs-success-bg-subtle);
+ --bs-list-group-border-color: var(--bs-success-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
+ --bs-list-group-active-color: var(--bs-success-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-success-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-success-text-emphasis)
+}
+
+.list-group-item-info {
+ --bs-list-group-color: var(--bs-info-text-emphasis);
+ --bs-list-group-bg: var(--bs-info-bg-subtle);
+ --bs-list-group-border-color: var(--bs-info-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
+ --bs-list-group-active-color: var(--bs-info-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-info-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-info-text-emphasis)
+}
+
+.list-group-item-warning {
+ --bs-list-group-color: var(--bs-warning-text-emphasis);
+ --bs-list-group-bg: var(--bs-warning-bg-subtle);
+ --bs-list-group-border-color: var(--bs-warning-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
+ --bs-list-group-active-color: var(--bs-warning-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-warning-text-emphasis)
+}
+
+.list-group-item-danger {
+ --bs-list-group-color: var(--bs-danger-text-emphasis);
+ --bs-list-group-bg: var(--bs-danger-bg-subtle);
+ --bs-list-group-border-color: var(--bs-danger-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
+ --bs-list-group-active-color: var(--bs-danger-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-danger-text-emphasis)
+}
+
+.list-group-item-light {
+ --bs-list-group-color: var(--bs-light-text-emphasis);
+ --bs-list-group-bg: var(--bs-light-bg-subtle);
+ --bs-list-group-border-color: var(--bs-light-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
+ --bs-list-group-active-color: var(--bs-light-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-light-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-light-text-emphasis)
+}
+
+.list-group-item-dark {
+ --bs-list-group-color: var(--bs-dark-text-emphasis);
+ --bs-list-group-bg: var(--bs-dark-bg-subtle);
+ --bs-list-group-border-color: var(--bs-dark-border-subtle);
+ --bs-list-group-action-hover-color: var(--bs-emphasis-color);
+ --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
+ --bs-list-group-action-active-color: var(--bs-emphasis-color);
+ --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
+ --bs-list-group-active-color: var(--bs-dark-bg-subtle);
+ --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
+ --bs-list-group-active-border-color: var(--bs-dark-text-emphasis)
+}
+
+.btn-close {
+ --bs-btn-close-color: #000;
+ --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
+ --bs-btn-close-opacity: 0.5;
+ --bs-btn-close-hover-opacity: 0.75;
+ --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
+ --bs-btn-close-focus-opacity: 1;
+ --bs-btn-close-disabled-opacity: 0.25;
+ --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);
+ box-sizing: content-box;
+ width: 1em;
+ height: 1em;
+ padding: .25em .25em;
+ color: var(--bs-btn-close-color);
+ background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
+ border: 0;
+ border-radius: .375rem;
+ opacity: var(--bs-btn-close-opacity)
+}
+
+.btn-close:hover {
+ color: var(--bs-btn-close-color);
+ text-decoration: none;
+ opacity: var(--bs-btn-close-hover-opacity)
+}
+
+.btn-close:focus {
+ outline: 0;
+ box-shadow: var(--bs-btn-close-focus-shadow);
+ opacity: var(--bs-btn-close-focus-opacity)
+}
+
+.btn-close.disabled,
+.btn-close:disabled {
+ pointer-events: none;
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ user-select: none;
+ opacity: var(--bs-btn-close-disabled-opacity)
+}
+
+.btn-close-white {
+ filter: var(--bs-btn-close-white-filter)
+}
+
+[data-bs-theme=dark] .btn-close {
+ filter: var(--bs-btn-close-white-filter)
+}
+
+.toast {
+ --bs-toast-zindex: 1090;
+ --bs-toast-padding-x: 0.75rem;
+ --bs-toast-padding-y: 0.5rem;
+ --bs-toast-spacing: 1.5rem;
+ --bs-toast-max-width: 350px;
+ --bs-toast-font-size: 0.875rem;
+ --bs-toast-color: ;
+ --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
+ --bs-toast-border-width: var(--bs-border-width);
+ --bs-toast-border-color: var(--bs-border-color-translucent);
+ --bs-toast-border-radius: var(--bs-border-radius);
+ --bs-toast-box-shadow: var(--bs-box-shadow);
+ --bs-toast-header-color: var(--bs-secondary-color);
+ --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
+ --bs-toast-header-border-color: var(--bs-border-color-translucent);
+ width: var(--bs-toast-max-width);
+ max-width: 100%;
+ font-size: var(--bs-toast-font-size);
+ color: var(--bs-toast-color);
+ pointer-events: auto;
+ background-color: var(--bs-toast-bg);
+ background-clip: padding-box;
+ border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
+ box-shadow: var(--bs-toast-box-shadow);
+ border-radius: var(--bs-toast-border-radius)
+}
+
+.toast.showing {
+ opacity: 0
+}
+
+.toast:not(.show) {
+ display: none
+}
+
+.toast-container {
+ --bs-toast-zindex: 1090;
+ position: absolute;
+ z-index: var(--bs-toast-zindex);
+ width: -webkit-max-content;
+ width: -moz-max-content;
+ width: max-content;
+ max-width: 100%;
+ pointer-events: none
+}
+
+.toast-container>:not(:last-child) {
+ margin-bottom: var(--bs-toast-spacing)
+}
+
+.toast-header {
+ display: flex;
+ align-items: center;
+ padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
+ color: var(--bs-toast-header-color);
+ background-color: var(--bs-toast-header-bg);
+ background-clip: padding-box;
+ border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
+ border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
+ border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))
+}
+
+.toast-header .btn-close {
+ margin-right: calc(-.5 * var(--bs-toast-padding-x));
+ margin-left: var(--bs-toast-padding-x)
+}
+
+.toast-body {
+ padding: var(--bs-toast-padding-x);
+ word-wrap: break-word
+}
+
+.modal {
+ --bs-modal-zindex: 1050;
+ --bs-modal-width: 500px;
+ --bs-modal-padding: 1rem;
+ --bs-modal-margin: 0.5rem;
+ --bs-modal-color: ;
+ --bs-modal-bg: var(--bs-body-bg);
+ --bs-modal-border-color: var(--bs-border-color-translucent);
+ --bs-modal-border-width: var(--bs-border-width);
+ --bs-modal-border-radius: var(--bs-border-radius-lg);
+ --bs-modal-box-shadow: var(--bs-box-shadow-sm);
+ --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
+ --bs-modal-header-padding-x: 1rem;
+ --bs-modal-header-padding-y: 1rem;
+ --bs-modal-header-padding: 1rem 1rem;
+ --bs-modal-header-border-color: var(--bs-border-color);
+ --bs-modal-header-border-width: var(--bs-border-width);
+ --bs-modal-title-line-height: 1.5;
+ --bs-modal-footer-gap: 0.5rem;
+ --bs-modal-footer-bg: ;
+ --bs-modal-footer-border-color: var(--bs-border-color);
+ --bs-modal-footer-border-width: var(--bs-border-width);
+ position: fixed;
+ top: 0;
+ left: 0;
+ z-index: var(--bs-modal-zindex);
+ display: none;
+ width: 100%;
+ height: 100%;
+ overflow-x: hidden;
+ overflow-y: auto;
+ outline: 0
+}
+
+.modal-dialog {
+ position: relative;
+ width: auto;
+ margin: var(--bs-modal-margin);
+ pointer-events: none
+}
+
+.modal.fade .modal-dialog {
+ transition: transform .3s ease-out;
+ transform: translate(0, -50px)
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .modal.fade .modal-dialog {
+ transition: none
+ }
+}
+
+.modal.show .modal-dialog {
+ transform: none
+}
+
+.modal.modal-static .modal-dialog {
+ transform: scale(1.02)
+}
+
+.modal-dialog-scrollable {
+ height: calc(100% - var(--bs-modal-margin) * 2)
+}
+
+.modal-dialog-scrollable .modal-content {
+ max-height: 100%;
+ overflow: hidden
+}
+
+.modal-dialog-scrollable .modal-body {
+ overflow-y: auto
+}
+
+.modal-dialog-centered {
+ display: flex;
+ align-items: center;
+ min-height: calc(100% - var(--bs-modal-margin) * 2)
+}
+
+.modal-content {
+ position: relative;
+ display: flex;
+ flex-direction: column;
+ width: 100%;
+ color: var(--bs-modal-color);
+ pointer-events: auto;
+ background-color: var(--bs-modal-bg);
+ background-clip: padding-box;
+ border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
+ border-radius: var(--bs-modal-border-radius);
+ outline: 0
+}
+
+/* .modal-backdrop {
+ --bs-backdrop-zindex: 1040;
+ --bs-backdrop-bg: #000;
+ --bs-backdrop-opacity: 0.5;
+ position: fixed;
+ top: 0;
+ left: 0;
+ z-index: var(--bs-backdrop-zindex);
+ width: 100vw;
+ height: 100vh;
+ background-color: var(--bs-backdrop-bg)
+}
+
+.modal-backdrop.fade {
+ opacity: 0
+}
+
+.modal-backdrop.show {
+ opacity: var(--bs-backdrop-opacity)
+} */
+
+.modal-header {
+ display: flex;
+ flex-shrink: 0;
+ align-items: center;
+ padding: var(--bs-modal-header-padding);
+ border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
+ border-top-left-radius: var(--bs-modal-inner-border-radius);
+ border-top-right-radius: var(--bs-modal-inner-border-radius)
+}
+
+.modal-header .btn-close {
+ padding: calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);
+ margin: calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto
+}
+
+.modal-title {
+ margin-bottom: 0;
+ line-height: var(--bs-modal-title-line-height)
+}
+
+.modal-body {
+ position: relative;
+ flex: 1 1 auto;
+ padding: var(--bs-modal-padding)
+}
+
+.modal-footer {
+ display: flex;
+ flex-shrink: 0;
+ flex-wrap: wrap;
+ align-items: center;
+ justify-content: flex-end;
+ padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);
+ background-color: var(--bs-modal-footer-bg);
+ border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
+ border-bottom-right-radius: var(--bs-modal-inner-border-radius);
+ border-bottom-left-radius: var(--bs-modal-inner-border-radius)
+}
+
+.modal-footer>* {
+ margin: calc(var(--bs-modal-footer-gap) * .5)
+}
+
+@media (min-width:576px) {
+ .modal {
+ --bs-modal-margin: 1.75rem;
+ --bs-modal-box-shadow: var(--bs-box-shadow)
+ }
+
+ .modal-dialog {
+ max-width: var(--bs-modal-width);
+ margin-right: auto;
+ margin-left: auto
+ }
+
+ .modal-sm {
+ --bs-modal-width: 300px
+ }
+}
+
+@media (min-width:992px) {
+
+ .modal-lg,
+ .modal-xl {
+ --bs-modal-width: 800px
+ }
+}
+
+@media (min-width:1200px) {
+ .modal-xl {
+ --bs-modal-width: 1140px
+ }
+}
+
+.modal-fullscreen {
+ width: 100vw;
+ max-width: none;
+ height: 100%;
+ margin: 0
+}
+
+.modal-fullscreen .modal-content {
+ height: 100%;
+ border: 0;
+ border-radius: 0
+}
+
+.modal-fullscreen .modal-footer,
+.modal-fullscreen .modal-header {
+ border-radius: 0
+}
+
+.modal-fullscreen .modal-body {
+ overflow-y: auto
+}
+
+@media (max-width:575.98px) {
+ .modal-fullscreen-sm-down {
+ width: 100vw;
+ max-width: none;
+ height: 100%;
+ margin: 0
+ }
+
+ .modal-fullscreen-sm-down .modal-content {
+ height: 100%;
+ border: 0;
+ border-radius: 0
+ }
+
+ .modal-fullscreen-sm-down .modal-footer,
+ .modal-fullscreen-sm-down .modal-header {
+ border-radius: 0
+ }
+
+ .modal-fullscreen-sm-down .modal-body {
+ overflow-y: auto
+ }
+}
+
+@media (max-width:767.98px) {
+ .modal-fullscreen-md-down {
+ width: 100vw;
+ max-width: none;
+ height: 100%;
+ margin: 0
+ }
+
+ .modal-fullscreen-md-down .modal-content {
+ height: 100%;
+ border: 0;
+ border-radius: 0
+ }
+
+ .modal-fullscreen-md-down .modal-footer,
+ .modal-fullscreen-md-down .modal-header {
+ border-radius: 0
+ }
+
+ .modal-fullscreen-md-down .modal-body {
+ overflow-y: auto
+ }
+}
+
+@media (max-width:991.98px) {
+ .modal-fullscreen-lg-down {
+ width: 100vw;
+ max-width: none;
+ height: 100%;
+ margin: 0
+ }
+
+ .modal-fullscreen-lg-down .modal-content {
+ height: 100%;
+ border: 0;
+ border-radius: 0
+ }
+
+ .modal-fullscreen-lg-down .modal-footer,
+ .modal-fullscreen-lg-down .modal-header {
+ border-radius: 0
+ }
+
+ .modal-fullscreen-lg-down .modal-body {
+ overflow-y: auto
+ }
+}
+
+@media (max-width:1199.98px) {
+ .modal-fullscreen-xl-down {
+ width: 100vw;
+ max-width: none;
+ height: 100%;
+ margin: 0
+ }
+
+ .modal-fullscreen-xl-down .modal-content {
+ height: 100%;
+ border: 0;
+ border-radius: 0
+ }
+
+ .modal-fullscreen-xl-down .modal-footer,
+ .modal-fullscreen-xl-down .modal-header {
+ border-radius: 0
+ }
+
+ .modal-fullscreen-xl-down .modal-body {
+ overflow-y: auto
+ }
+}
+
+@media (max-width:1399.98px) {
+ .modal-fullscreen-xxl-down {
+ width: 100vw;
+ max-width: none;
+ height: 100%;
+ margin: 0
+ }
+
+ .modal-fullscreen-xxl-down .modal-content {
+ height: 100%;
+ border: 0;
+ border-radius: 0
+ }
+
+ .modal-fullscreen-xxl-down .modal-footer,
+ .modal-fullscreen-xxl-down .modal-header {
+ border-radius: 0
+ }
+
+ .modal-fullscreen-xxl-down .modal-body {
+ overflow-y: auto
+ }
+}
+
+.tooltip {
+ --bs-tooltip-zindex: 1080;
+ --bs-tooltip-max-width: 200px;
+ --bs-tooltip-padding-x: 0.5rem;
+ --bs-tooltip-padding-y: 0.25rem;
+ --bs-tooltip-margin: ;
+ --bs-tooltip-font-size: 0.875rem;
+ --bs-tooltip-color: var(--bs-body-bg);
+ --bs-tooltip-bg: var(--bs-emphasis-color);
+ --bs-tooltip-border-radius: var(--bs-border-radius);
+ --bs-tooltip-opacity: 0.9;
+ --bs-tooltip-arrow-width: 0.8rem;
+ --bs-tooltip-arrow-height: 0.4rem;
+ z-index: var(--bs-tooltip-zindex);
+ display: block;
+ margin: var(--bs-tooltip-margin);
+ font-family: var(--bs-font-sans-serif);
+ font-style: normal;
+ font-weight: 400;
+ line-height: 1.5;
+ text-align: left;
+ text-align: start;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-break: normal;
+ white-space: normal;
+ word-spacing: normal;
+ line-break: auto;
+ font-size: var(--bs-tooltip-font-size);
+ word-wrap: break-word;
+ opacity: 0
+}
+
+.tooltip.show {
+ opacity: var(--bs-tooltip-opacity)
+}
+
+.tooltip .tooltip-arrow {
+ display: block;
+ width: var(--bs-tooltip-arrow-width);
+ height: var(--bs-tooltip-arrow-height)
+}
+
+.tooltip .tooltip-arrow::before {
+ position: absolute;
+ content: "";
+ border-color: transparent;
+ border-style: solid
+}
+
+.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,
+.bs-tooltip-top .tooltip-arrow {
+ bottom: calc(-1 * var(--bs-tooltip-arrow-height))
+}
+
+.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,
+.bs-tooltip-top .tooltip-arrow::before {
+ top: -1px;
+ border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;
+ border-top-color: var(--bs-tooltip-bg)
+}
+
+.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,
+.bs-tooltip-end .tooltip-arrow {
+ left: calc(-1 * var(--bs-tooltip-arrow-height));
+ width: var(--bs-tooltip-arrow-height);
+ height: var(--bs-tooltip-arrow-width)
+}
+
+.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,
+.bs-tooltip-end .tooltip-arrow::before {
+ right: -1px;
+ border-width: calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;
+ border-right-color: var(--bs-tooltip-bg)
+}
+
+.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,
+.bs-tooltip-bottom .tooltip-arrow {
+ top: calc(-1 * var(--bs-tooltip-arrow-height))
+}
+
+.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,
+.bs-tooltip-bottom .tooltip-arrow::before {
+ bottom: -1px;
+ border-width: 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);
+ border-bottom-color: var(--bs-tooltip-bg)
+}
+
+.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,
+.bs-tooltip-start .tooltip-arrow {
+ right: calc(-1 * var(--bs-tooltip-arrow-height));
+ width: var(--bs-tooltip-arrow-height);
+ height: var(--bs-tooltip-arrow-width)
+}
+
+.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,
+.bs-tooltip-start .tooltip-arrow::before {
+ left: -1px;
+ border-width: calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);
+ border-left-color: var(--bs-tooltip-bg)
+}
+
+.tooltip-inner {
+ max-width: var(--bs-tooltip-max-width);
+ padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
+ color: var(--bs-tooltip-color);
+ text-align: center;
+ background-color: var(--bs-tooltip-bg);
+ border-radius: var(--bs-tooltip-border-radius)
+}
+
+.popover {
+ --bs-popover-zindex: 1070;
+ --bs-popover-max-width: 276px;
+ --bs-popover-font-size: 0.875rem;
+ --bs-popover-bg: var(--bs-body-bg);
+ --bs-popover-border-width: var(--bs-border-width);
+ --bs-popover-border-color: var(--bs-border-color-translucent);
+ --bs-popover-border-radius: var(--bs-border-radius-lg);
+ --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
+ --bs-popover-box-shadow: var(--bs-box-shadow);
+ --bs-popover-header-padding-x: 1rem;
+ --bs-popover-header-padding-y: 0.5rem;
+ --bs-popover-header-font-size: 1rem;
+ --bs-popover-header-color: inherit;
+ --bs-popover-header-bg: var(--bs-secondary-bg);
+ --bs-popover-body-padding-x: 1rem;
+ --bs-popover-body-padding-y: 1rem;
+ --bs-popover-body-color: var(--bs-body-color);
+ --bs-popover-arrow-width: 1rem;
+ --bs-popover-arrow-height: 0.5rem;
+ --bs-popover-arrow-border: var(--bs-popover-border-color);
+ z-index: var(--bs-popover-zindex);
+ display: block;
+ max-width: var(--bs-popover-max-width);
+ font-family: var(--bs-font-sans-serif);
+ font-style: normal;
+ font-weight: 400;
+ line-height: 1.5;
+ text-align: left;
+ text-align: start;
+ text-decoration: none;
+ text-shadow: none;
+ text-transform: none;
+ letter-spacing: normal;
+ word-break: normal;
+ white-space: normal;
+ word-spacing: normal;
+ line-break: auto;
+ font-size: var(--bs-popover-font-size);
+ word-wrap: break-word;
+ background-color: var(--bs-popover-bg);
+ background-clip: padding-box;
+ border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
+ border-radius: var(--bs-popover-border-radius)
+}
+
+.popover .popover-arrow {
+ display: block;
+ width: var(--bs-popover-arrow-width);
+ height: var(--bs-popover-arrow-height)
+}
+
+.popover .popover-arrow::after,
+.popover .popover-arrow::before {
+ position: absolute;
+ display: block;
+ content: "";
+ border-color: transparent;
+ border-style: solid;
+ border-width: 0
+}
+
+.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,
+.bs-popover-top>.popover-arrow {
+ bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))
+}
+
+.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,
+.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,
+.bs-popover-top>.popover-arrow::after,
+.bs-popover-top>.popover-arrow::before {
+ border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0
+}
+
+.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,
+.bs-popover-top>.popover-arrow::before {
+ bottom: 0;
+ border-top-color: var(--bs-popover-arrow-border)
+}
+
+.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,
+.bs-popover-top>.popover-arrow::after {
+ bottom: var(--bs-popover-border-width);
+ border-top-color: var(--bs-popover-bg)
+}
+
+.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,
+.bs-popover-end>.popover-arrow {
+ left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
+ width: var(--bs-popover-arrow-height);
+ height: var(--bs-popover-arrow-width)
+}
+
+.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,
+.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,
+.bs-popover-end>.popover-arrow::after,
+.bs-popover-end>.popover-arrow::before {
+ border-width: calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0
+}
+
+.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,
+.bs-popover-end>.popover-arrow::before {
+ left: 0;
+ border-right-color: var(--bs-popover-arrow-border)
+}
+
+.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,
+.bs-popover-end>.popover-arrow::after {
+ left: var(--bs-popover-border-width);
+ border-right-color: var(--bs-popover-bg)
+}
+
+.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,
+.bs-popover-bottom>.popover-arrow {
+ top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))
+}
+
+.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,
+.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,
+.bs-popover-bottom>.popover-arrow::after,
+.bs-popover-bottom>.popover-arrow::before {
+ border-width: 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)
+}
+
+.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,
+.bs-popover-bottom>.popover-arrow::before {
+ top: 0;
+ border-bottom-color: var(--bs-popover-arrow-border)
+}
+
+.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,
+.bs-popover-bottom>.popover-arrow::after {
+ top: var(--bs-popover-border-width);
+ border-bottom-color: var(--bs-popover-bg)
+}
+
+.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,
+.bs-popover-bottom .popover-header::before {
+ position: absolute;
+ top: 0;
+ left: 50%;
+ display: block;
+ width: var(--bs-popover-arrow-width);
+ margin-left: calc(-.5 * var(--bs-popover-arrow-width));
+ content: "";
+ border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg)
+}
+
+.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,
+.bs-popover-start>.popover-arrow {
+ right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
+ width: var(--bs-popover-arrow-height);
+ height: var(--bs-popover-arrow-width)
+}
+
+.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,
+.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,
+.bs-popover-start>.popover-arrow::after,
+.bs-popover-start>.popover-arrow::before {
+ border-width: calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)
+}
+
+.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,
+.bs-popover-start>.popover-arrow::before {
+ right: 0;
+ border-left-color: var(--bs-popover-arrow-border)
+}
+
+.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,
+.bs-popover-start>.popover-arrow::after {
+ right: var(--bs-popover-border-width);
+ border-left-color: var(--bs-popover-bg)
+}
+
+.popover-header {
+ padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
+ margin-bottom: 0;
+ font-size: var(--bs-popover-header-font-size);
+ color: var(--bs-popover-header-color);
+ background-color: var(--bs-popover-header-bg);
+ border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
+ border-top-left-radius: var(--bs-popover-inner-border-radius);
+ border-top-right-radius: var(--bs-popover-inner-border-radius)
+}
+
+.popover-header:empty {
+ display: none
+}
+
+.popover-body {
+ padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
+ color: var(--bs-popover-body-color)
+}
+
+.carousel {
+ position: relative
+}
+
+.carousel.pointer-event {
+ touch-action: pan-y
+}
+
+.carousel-inner {
+ position: relative;
+ width: 100%;
+ overflow: hidden
+}
+
+.carousel-inner::after {
+ display: block;
+ clear: both;
+ content: ""
+}
+
+.carousel-item {
+ position: relative;
+ display: none;
+ float: left;
+ width: 100%;
+ margin-right: -100%;
+ -webkit-backface-visibility: hidden;
+ backface-visibility: hidden;
+ transition: transform .6s ease-in-out
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .carousel-item {
+ transition: none
+ }
+}
+
+.carousel-item-next,
+.carousel-item-prev,
+.carousel-item.active {
+ display: block
+}
+
+.active.carousel-item-end,
+.carousel-item-next:not(.carousel-item-start) {
+ transform: translateX(100%)
+}
+
+.active.carousel-item-start,
+.carousel-item-prev:not(.carousel-item-end) {
+ transform: translateX(-100%)
+}
+
+.carousel-fade .carousel-item {
+ opacity: 0;
+ transition-property: opacity;
+ transform: none
+}
+
+.carousel-fade .carousel-item-next.carousel-item-start,
+.carousel-fade .carousel-item-prev.carousel-item-end,
+.carousel-fade .carousel-item.active {
+ z-index: 1;
+ opacity: 1
+}
+
+.carousel-fade .active.carousel-item-end,
+.carousel-fade .active.carousel-item-start {
+ z-index: 0;
+ opacity: 0;
+ transition: opacity 0s .6s
+}
+
+@media (prefers-reduced-motion:reduce) {
+
+ .carousel-fade .active.carousel-item-end,
+ .carousel-fade .active.carousel-item-start {
+ transition: none
+ }
+}
+
+.carousel-control-next,
+.carousel-control-prev {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ z-index: 1;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ width: 15%;
+ padding: 0;
+ color: #fff;
+ text-align: center;
+ background: 0 0;
+ border: 0;
+ opacity: .5;
+ transition: opacity .15s ease
+}
+
+@media (prefers-reduced-motion:reduce) {
+
+ .carousel-control-next,
+ .carousel-control-prev {
+ transition: none
+ }
+}
+
+.carousel-control-next:focus,
+.carousel-control-next:hover,
+.carousel-control-prev:focus,
+.carousel-control-prev:hover {
+ color: #fff;
+ text-decoration: none;
+ outline: 0;
+ opacity: .9
+}
+
+.carousel-control-prev {
+ left: 0
+}
+
+.carousel-control-next {
+ right: 0
+}
+
+.carousel-control-next-icon,
+.carousel-control-prev-icon {
+ display: inline-block;
+ width: 2rem;
+ height: 2rem;
+ background-repeat: no-repeat;
+ background-position: 50%;
+ background-size: 100% 100%
+}
+
+.carousel-control-prev-icon {
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")
+}
+
+.carousel-control-next-icon {
+ background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")
+}
+
+.carousel-indicators {
+ position: absolute;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 2;
+ display: flex;
+ justify-content: center;
+ padding: 0;
+ margin-right: 15%;
+ margin-bottom: 1rem;
+ margin-left: 15%
+}
+
+.carousel-indicators [data-bs-target] {
+ box-sizing: content-box;
+ flex: 0 1 auto;
+ width: 30px;
+ height: 3px;
+ padding: 0;
+ margin-right: 3px;
+ margin-left: 3px;
+ text-indent: -999px;
+ cursor: pointer;
+ background-color: #fff;
+ background-clip: padding-box;
+ border: 0;
+ border-top: 10px solid transparent;
+ border-bottom: 10px solid transparent;
+ opacity: .5;
+ transition: opacity .6s ease
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .carousel-indicators [data-bs-target] {
+ transition: none
+ }
+}
+
+.carousel-indicators .active {
+ opacity: 1
+}
+
+.carousel-caption {
+ position: absolute;
+ right: 15%;
+ bottom: 1.25rem;
+ left: 15%;
+ padding-top: 1.25rem;
+ padding-bottom: 1.25rem;
+ color: #fff;
+ text-align: center
+}
+
+.carousel-dark .carousel-control-next-icon,
+.carousel-dark .carousel-control-prev-icon {
+ filter: invert(1) grayscale(100)
+}
+
+.carousel-dark .carousel-indicators [data-bs-target] {
+ background-color: #000
+}
+
+.carousel-dark .carousel-caption {
+ color: #000
+}
+
+[data-bs-theme=dark] .carousel .carousel-control-next-icon,
+[data-bs-theme=dark] .carousel .carousel-control-prev-icon,
+[data-bs-theme=dark].carousel .carousel-control-next-icon,
+[data-bs-theme=dark].carousel .carousel-control-prev-icon {
+ filter: invert(1) grayscale(100)
+}
+
+[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],
+[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {
+ background-color: #000
+}
+
+[data-bs-theme=dark] .carousel .carousel-caption,
+[data-bs-theme=dark].carousel .carousel-caption {
+ color: #000
+}
+
+.spinner-border,
+.spinner-grow {
+ display: inline-block;
+ width: var(--bs-spinner-width);
+ height: var(--bs-spinner-height);
+ vertical-align: var(--bs-spinner-vertical-align);
+ border-radius: 50%;
+ animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)
+}
+
+@keyframes spinner-border {
+ to {
+ transform: rotate(360deg)
+ }
+}
+
+.spinner-border {
+ --bs-spinner-width: 2rem;
+ --bs-spinner-height: 2rem;
+ --bs-spinner-vertical-align: -0.125em;
+ --bs-spinner-border-width: 0.25em;
+ --bs-spinner-animation-speed: 0.75s;
+ --bs-spinner-animation-name: spinner-border;
+ border: var(--bs-spinner-border-width) solid currentcolor;
+ border-right-color: transparent
+}
+
+.spinner-border-sm {
+ --bs-spinner-width: 1rem;
+ --bs-spinner-height: 1rem;
+ --bs-spinner-border-width: 0.2em
+}
+
+@keyframes spinner-grow {
+ 0% {
+ transform: scale(0)
+ }
+
+ 50% {
+ opacity: 1;
+ transform: none
+ }
+}
+
+.spinner-grow {
+ --bs-spinner-width: 2rem;
+ --bs-spinner-height: 2rem;
+ --bs-spinner-vertical-align: -0.125em;
+ --bs-spinner-animation-speed: 0.75s;
+ --bs-spinner-animation-name: spinner-grow;
+ background-color: currentcolor;
+ opacity: 0
+}
+
+.spinner-grow-sm {
+ --bs-spinner-width: 1rem;
+ --bs-spinner-height: 1rem
+}
+
+@media (prefers-reduced-motion:reduce) {
+
+ .spinner-border,
+ .spinner-grow {
+ --bs-spinner-animation-speed: 1.5s
+ }
+}
+
+.offcanvas,
+.offcanvas-lg,
+.offcanvas-md,
+.offcanvas-sm,
+.offcanvas-xl,
+.offcanvas-xxl {
+ --bs-offcanvas-zindex: 1045;
+ --bs-offcanvas-width: 400px;
+ --bs-offcanvas-height: 30vh;
+ --bs-offcanvas-padding-x: 1rem;
+ --bs-offcanvas-padding-y: 1rem;
+ --bs-offcanvas-color: var(--bs-body-color);
+ --bs-offcanvas-bg: var(--bs-body-bg);
+ --bs-offcanvas-border-width: var(--bs-border-width);
+ --bs-offcanvas-border-color: var(--bs-border-color-translucent);
+ --bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);
+ --bs-offcanvas-transition: transform 0.3s ease-in-out;
+ --bs-offcanvas-title-line-height: 1.5
+}
+
+@media (max-width:575.98px) {
+ .offcanvas-sm {
+ position: fixed;
+ bottom: 0;
+ z-index: var(--bs-offcanvas-zindex);
+ display: flex;
+ flex-direction: column;
+ max-width: 100%;
+ color: var(--bs-offcanvas-color);
+ visibility: hidden;
+ background-color: var(--bs-offcanvas-bg);
+ background-clip: padding-box;
+ outline: 0;
+ transition: var(--bs-offcanvas-transition)
+ }
+}
+
+@media (max-width:575.98px) and (prefers-reduced-motion:reduce) {
+ .offcanvas-sm {
+ transition: none
+ }
+}
+
+@media (max-width:575.98px) {
+ .offcanvas-sm.offcanvas-start {
+ top: 0;
+ left: 0;
+ width: var(--bs-offcanvas-width);
+ border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(-100%)
+ }
+
+ .offcanvas-sm.offcanvas-end {
+ top: 0;
+ right: 0;
+ width: var(--bs-offcanvas-width);
+ border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(100%)
+ }
+
+ .offcanvas-sm.offcanvas-top {
+ top: 0;
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(-100%)
+ }
+
+ .offcanvas-sm.offcanvas-bottom {
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(100%)
+ }
+
+ .offcanvas-sm.show:not(.hiding),
+ .offcanvas-sm.showing {
+ transform: none
+ }
+
+ .offcanvas-sm.hiding,
+ .offcanvas-sm.show,
+ .offcanvas-sm.showing {
+ visibility: visible
+ }
+}
+
+@media (min-width:576px) {
+ .offcanvas-sm {
+ --bs-offcanvas-height: auto;
+ --bs-offcanvas-border-width: 0;
+ background-color: transparent !important
+ }
+
+ .offcanvas-sm .offcanvas-header {
+ display: none
+ }
+
+ .offcanvas-sm .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible;
+ background-color: transparent !important
+ }
+}
+
+@media (max-width:767.98px) {
+ .offcanvas-md {
+ position: fixed;
+ bottom: 0;
+ z-index: var(--bs-offcanvas-zindex);
+ display: flex;
+ flex-direction: column;
+ max-width: 100%;
+ color: var(--bs-offcanvas-color);
+ visibility: hidden;
+ background-color: var(--bs-offcanvas-bg);
+ background-clip: padding-box;
+ outline: 0;
+ transition: var(--bs-offcanvas-transition)
+ }
+}
+
+@media (max-width:767.98px) and (prefers-reduced-motion:reduce) {
+ .offcanvas-md {
+ transition: none
+ }
+}
+
+@media (max-width:767.98px) {
+ .offcanvas-md.offcanvas-start {
+ top: 0;
+ left: 0;
+ width: var(--bs-offcanvas-width);
+ border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(-100%)
+ }
+
+ .offcanvas-md.offcanvas-end {
+ top: 0;
+ right: 0;
+ width: var(--bs-offcanvas-width);
+ border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(100%)
+ }
+
+ .offcanvas-md.offcanvas-top {
+ top: 0;
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(-100%)
+ }
+
+ .offcanvas-md.offcanvas-bottom {
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(100%)
+ }
+
+ .offcanvas-md.show:not(.hiding),
+ .offcanvas-md.showing {
+ transform: none
+ }
+
+ .offcanvas-md.hiding,
+ .offcanvas-md.show,
+ .offcanvas-md.showing {
+ visibility: visible
+ }
+}
+
+@media (min-width:768px) {
+ .offcanvas-md {
+ --bs-offcanvas-height: auto;
+ --bs-offcanvas-border-width: 0;
+ background-color: transparent !important
+ }
+
+ .offcanvas-md .offcanvas-header {
+ display: none
+ }
+
+ .offcanvas-md .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible;
+ background-color: transparent !important
+ }
+}
+
+@media (max-width:991.98px) {
+ .offcanvas-lg {
+ position: fixed;
+ bottom: 0;
+ z-index: var(--bs-offcanvas-zindex);
+ display: flex;
+ flex-direction: column;
+ max-width: 100%;
+ color: var(--bs-offcanvas-color);
+ visibility: hidden;
+ background-color: var(--bs-offcanvas-bg);
+ background-clip: padding-box;
+ outline: 0;
+ transition: var(--bs-offcanvas-transition)
+ }
+}
+
+@media (max-width:991.98px) and (prefers-reduced-motion:reduce) {
+ .offcanvas-lg {
+ transition: none
+ }
+}
+
+@media (max-width:991.98px) {
+ .offcanvas-lg.offcanvas-start {
+ top: 0;
+ left: 0;
+ width: var(--bs-offcanvas-width);
+ border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(-100%)
+ }
+
+ .offcanvas-lg.offcanvas-end {
+ top: 0;
+ right: 0;
+ width: var(--bs-offcanvas-width);
+ border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(100%)
+ }
+
+ .offcanvas-lg.offcanvas-top {
+ top: 0;
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(-100%)
+ }
+
+ .offcanvas-lg.offcanvas-bottom {
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(100%)
+ }
+
+ .offcanvas-lg.show:not(.hiding),
+ .offcanvas-lg.showing {
+ transform: none
+ }
+
+ .offcanvas-lg.hiding,
+ .offcanvas-lg.show,
+ .offcanvas-lg.showing {
+ visibility: visible
+ }
+}
+
+@media (min-width:992px) {
+ .offcanvas-lg {
+ --bs-offcanvas-height: auto;
+ --bs-offcanvas-border-width: 0;
+ background-color: transparent !important
+ }
+
+ .offcanvas-lg .offcanvas-header {
+ display: none
+ }
+
+ .offcanvas-lg .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible;
+ background-color: transparent !important
+ }
+}
+
+@media (max-width:1199.98px) {
+ .offcanvas-xl {
+ position: fixed;
+ bottom: 0;
+ z-index: var(--bs-offcanvas-zindex);
+ display: flex;
+ flex-direction: column;
+ max-width: 100%;
+ color: var(--bs-offcanvas-color);
+ visibility: hidden;
+ background-color: var(--bs-offcanvas-bg);
+ background-clip: padding-box;
+ outline: 0;
+ transition: var(--bs-offcanvas-transition)
+ }
+}
+
+@media (max-width:1199.98px) and (prefers-reduced-motion:reduce) {
+ .offcanvas-xl {
+ transition: none
+ }
+}
+
+@media (max-width:1199.98px) {
+ .offcanvas-xl.offcanvas-start {
+ top: 0;
+ left: 0;
+ width: var(--bs-offcanvas-width);
+ border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(-100%)
+ }
+
+ .offcanvas-xl.offcanvas-end {
+ top: 0;
+ right: 0;
+ width: var(--bs-offcanvas-width);
+ border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(100%)
+ }
+
+ .offcanvas-xl.offcanvas-top {
+ top: 0;
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(-100%)
+ }
+
+ .offcanvas-xl.offcanvas-bottom {
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(100%)
+ }
+
+ .offcanvas-xl.show:not(.hiding),
+ .offcanvas-xl.showing {
+ transform: none
+ }
+
+ .offcanvas-xl.hiding,
+ .offcanvas-xl.show,
+ .offcanvas-xl.showing {
+ visibility: visible
+ }
+}
+
+@media (min-width:1200px) {
+ .offcanvas-xl {
+ --bs-offcanvas-height: auto;
+ --bs-offcanvas-border-width: 0;
+ background-color: transparent !important
+ }
+
+ .offcanvas-xl .offcanvas-header {
+ display: none
+ }
+
+ .offcanvas-xl .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible;
+ background-color: transparent !important
+ }
+}
+
+@media (max-width:1399.98px) {
+ .offcanvas-xxl {
+ position: fixed;
+ bottom: 0;
+ z-index: var(--bs-offcanvas-zindex);
+ display: flex;
+ flex-direction: column;
+ max-width: 100%;
+ color: var(--bs-offcanvas-color);
+ visibility: hidden;
+ background-color: var(--bs-offcanvas-bg);
+ background-clip: padding-box;
+ outline: 0;
+ transition: var(--bs-offcanvas-transition)
+ }
+}
+
+@media (max-width:1399.98px) and (prefers-reduced-motion:reduce) {
+ .offcanvas-xxl {
+ transition: none
+ }
+}
+
+@media (max-width:1399.98px) {
+ .offcanvas-xxl.offcanvas-start {
+ top: 0;
+ left: 0;
+ width: var(--bs-offcanvas-width);
+ border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(-100%)
+ }
+
+ .offcanvas-xxl.offcanvas-end {
+ top: 0;
+ right: 0;
+ width: var(--bs-offcanvas-width);
+ border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(100%)
+ }
+
+ .offcanvas-xxl.offcanvas-top {
+ top: 0;
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(-100%)
+ }
+
+ .offcanvas-xxl.offcanvas-bottom {
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(100%)
+ }
+
+ .offcanvas-xxl.show:not(.hiding),
+ .offcanvas-xxl.showing {
+ transform: none
+ }
+
+ .offcanvas-xxl.hiding,
+ .offcanvas-xxl.show,
+ .offcanvas-xxl.showing {
+ visibility: visible
+ }
+}
+
+@media (min-width:1400px) {
+ .offcanvas-xxl {
+ --bs-offcanvas-height: auto;
+ --bs-offcanvas-border-width: 0;
+ background-color: transparent !important
+ }
+
+ .offcanvas-xxl .offcanvas-header {
+ display: none
+ }
+
+ .offcanvas-xxl .offcanvas-body {
+ display: flex;
+ flex-grow: 0;
+ padding: 0;
+ overflow-y: visible;
+ background-color: transparent !important
+ }
+}
+
+.offcanvas {
+ position: fixed;
+ bottom: 0;
+ z-index: var(--bs-offcanvas-zindex);
+ display: flex;
+ flex-direction: column;
+ max-width: 100%;
+ color: var(--bs-offcanvas-color);
+ visibility: hidden;
+ background-color: var(--bs-offcanvas-bg);
+ background-clip: padding-box;
+ outline: 0;
+ transition: var(--bs-offcanvas-transition)
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .offcanvas {
+ transition: none
+ }
+}
+
+.offcanvas.offcanvas-start {
+ top: 0;
+ left: 0;
+ width: var(--bs-offcanvas-width);
+ border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(-100%)
+}
+
+.offcanvas.offcanvas-end {
+ top: 0;
+ right: 0;
+ width: var(--bs-offcanvas-width);
+ border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateX(100%)
+}
+
+.offcanvas.offcanvas-top {
+ top: 0;
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(-100%)
+}
+
+.offcanvas.offcanvas-bottom {
+ right: 0;
+ left: 0;
+ height: var(--bs-offcanvas-height);
+ max-height: 100%;
+ border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
+ transform: translateY(100%)
+}
+
+.offcanvas.show:not(.hiding),
+.offcanvas.showing {
+ transform: none
+}
+
+.offcanvas.hiding,
+.offcanvas.show,
+.offcanvas.showing {
+ visibility: visible
+}
+
+.offcanvas-backdrop {
+ position: fixed;
+ top: 0;
+ left: 0;
+ z-index: 1040;
+ width: 100vw;
+ height: 100vh;
+ background-color: #000
+}
+
+.offcanvas-backdrop.fade {
+ opacity: 0
+}
+
+.offcanvas-backdrop.show {
+ opacity: .5
+}
+
+.offcanvas-header {
+ display: flex;
+ align-items: center;
+ padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)
+}
+
+.offcanvas-header .btn-close {
+ padding: calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);
+ margin: calc(-.5 * var(--bs-offcanvas-padding-y)) calc(-.5 * var(--bs-offcanvas-padding-x)) calc(-.5 * var(--bs-offcanvas-padding-y)) auto
+}
+
+.offcanvas-title {
+ margin-bottom: 0;
+ line-height: var(--bs-offcanvas-title-line-height)
+}
+
+.offcanvas-body {
+ flex-grow: 1;
+ padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
+ overflow-y: auto
+}
+
+.placeholder {
+ display: inline-block;
+ min-height: 1em;
+ vertical-align: middle;
+ cursor: wait;
+ background-color: currentcolor;
+ opacity: .5
+}
+
+.placeholder.btn::before {
+ display: inline-block;
+ content: ""
+}
+
+.placeholder-xs {
+ min-height: .6em
+}
+
+.placeholder-sm {
+ min-height: .8em
+}
+
+.placeholder-lg {
+ min-height: 1.2em
+}
+
+.placeholder-glow .placeholder {
+ animation: placeholder-glow 2s ease-in-out infinite
+}
+
+@keyframes placeholder-glow {
+ 50% {
+ opacity: .2
+ }
+}
+
+.placeholder-wave {
+ -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
+ mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
+ -webkit-mask-size: 200% 100%;
+ mask-size: 200% 100%;
+ animation: placeholder-wave 2s linear infinite
+}
+
+@keyframes placeholder-wave {
+ 100% {
+ -webkit-mask-position: -200% 0%;
+ mask-position: -200% 0%
+ }
+}
+
+.clearfix::after {
+ display: block;
+ clear: both;
+ content: ""
+}
+
+.text-bg-primary {
+ color: #fff !important;
+ background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.text-bg-secondary {
+ color: #fff !important;
+ background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.text-bg-success {
+ color: #fff !important;
+ background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.text-bg-info {
+ color: #000 !important;
+ background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.text-bg-warning {
+ color: #000 !important;
+ background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.text-bg-danger {
+ color: #fff !important;
+ background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.text-bg-light {
+ color: #000 !important;
+ background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.text-bg-dark {
+ color: #fff !important;
+ background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important
+}
+
+.link-primary {
+ color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-primary:focus,
+.link-primary:hover {
+ color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-secondary {
+ color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-secondary:focus,
+.link-secondary:hover {
+ color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-success {
+ color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-success:focus,
+.link-success:hover {
+ color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-info {
+ color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-info:focus,
+.link-info:hover {
+ color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-warning {
+ color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-warning:focus,
+.link-warning:hover {
+ color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-danger {
+ color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-danger:focus,
+.link-danger:hover {
+ color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-light {
+ color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-light:focus,
+.link-light:hover {
+ color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-dark {
+ color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-dark:focus,
+.link-dark:hover {
+ color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-body-emphasis {
+ color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-body-emphasis:focus,
+.link-body-emphasis:hover {
+ color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, .75)) !important;
+ -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
+ text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important
+}
+
+.focus-ring:focus {
+ outline: 0;
+ box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)
+}
+
+.icon-link {
+ display: inline-flex;
+ gap: .375rem;
+ align-items: center;
+ -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
+ text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
+ text-underline-offset: 0.25em;
+ -webkit-backface-visibility: hidden;
+ backface-visibility: hidden
+}
+
+.icon-link>.bi {
+ flex-shrink: 0;
+ width: 1em;
+ height: 1em;
+ fill: currentcolor;
+ transition: .2s ease-in-out transform
+}
+
+@media (prefers-reduced-motion:reduce) {
+ .icon-link>.bi {
+ transition: none
+ }
+}
+
+.icon-link-hover:focus-visible>.bi,
+.icon-link-hover:hover>.bi {
+ transform: var(--bs-icon-link-transform, translate3d(.25em, 0, 0))
+}
+
+.ratio {
+ position: relative;
+ width: 100%
+}
+
+.ratio::before {
+ display: block;
+ padding-top: var(--bs-aspect-ratio);
+ content: ""
+}
+
+.ratio>* {
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%
+}
+
+.ratio-1x1 {
+ --bs-aspect-ratio: 100%
+}
+
+.ratio-4x3 {
+ --bs-aspect-ratio: 75%
+}
+
+.ratio-16x9 {
+ --bs-aspect-ratio: 56.25%
+}
+
+.ratio-21x9 {
+ --bs-aspect-ratio: 42.8571428571%
+}
+
+.fixed-top {
+ position: fixed;
+ top: 0;
+ right: 0;
+ left: 0;
+ z-index: 1030
+}
+
+.fixed-bottom {
+ position: fixed;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 1030
+}
+
+.sticky-top {
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+ z-index: 1020
+}
+
+.sticky-bottom {
+ position: -webkit-sticky;
+ position: sticky;
+ bottom: 0;
+ z-index: 1020
+}
+
+@media (min-width:576px) {
+ .sticky-sm-top {
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+ z-index: 1020
+ }
+
+ .sticky-sm-bottom {
+ position: -webkit-sticky;
+ position: sticky;
+ bottom: 0;
+ z-index: 1020
+ }
+}
+
+@media (min-width:768px) {
+ .sticky-md-top {
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+ z-index: 1020
+ }
+
+ .sticky-md-bottom {
+ position: -webkit-sticky;
+ position: sticky;
+ bottom: 0;
+ z-index: 1020
+ }
+}
+
+@media (min-width:992px) {
+ .sticky-lg-top {
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+ z-index: 1020
+ }
+
+ .sticky-lg-bottom {
+ position: -webkit-sticky;
+ position: sticky;
+ bottom: 0;
+ z-index: 1020
+ }
+}
+
+@media (min-width:1200px) {
+ .sticky-xl-top {
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+ z-index: 1020
+ }
+
+ .sticky-xl-bottom {
+ position: -webkit-sticky;
+ position: sticky;
+ bottom: 0;
+ z-index: 1020
+ }
+}
+
+@media (min-width:1400px) {
+ .sticky-xxl-top {
+ position: -webkit-sticky;
+ position: sticky;
+ top: 0;
+ z-index: 1020
+ }
+
+ .sticky-xxl-bottom {
+ position: -webkit-sticky;
+ position: sticky;
+ bottom: 0;
+ z-index: 1020
+ }
+}
+
+.hstack {
+ display: flex;
+ flex-direction: row;
+ align-items: center;
+ align-self: stretch
+}
+
+.vstack {
+ display: flex;
+ flex: 1 1 auto;
+ flex-direction: column;
+ align-self: stretch
+}
+
+.visually-hidden,
+.visually-hidden-focusable:not(:focus):not(:focus-within) {
+ width: 1px !important;
+ height: 1px !important;
+ padding: 0 !important;
+ margin: -1px !important;
+ overflow: hidden !important;
+ clip: rect(0, 0, 0, 0) !important;
+ white-space: nowrap !important;
+ border: 0 !important
+}
+
+.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),
+.visually-hidden:not(caption) {
+ position: absolute !important
+}
+
+.stretched-link::after {
+ position: absolute;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 1;
+ content: ""
+}
+
+.text-truncate {
+ overflow: hidden;
+ text-overflow: ellipsis;
+ white-space: nowrap
+}
+
+.vr {
+ display: inline-block;
+ align-self: stretch;
+ width: var(--bs-border-width);
+ min-height: 1em;
+ background-color: currentcolor;
+ opacity: .25
+}
+
+.align-baseline {
+ vertical-align: baseline !important
+}
+
+.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
+}
+
+.float-start {
+ float: left !important
+}
+
+.float-end {
+ float: right !important
+}
+
+.float-none {
+ float: none !important
+}
+
+.object-fit-contain {
+ -o-object-fit: contain !important;
+ object-fit: contain !important
+}
+
+.object-fit-cover {
+ -o-object-fit: cover !important;
+ object-fit: cover !important
+}
+
+.object-fit-fill {
+ -o-object-fit: fill !important;
+ object-fit: fill !important
+}
+
+.object-fit-scale {
+ -o-object-fit: scale-down !important;
+ object-fit: scale-down !important
+}
+
+.object-fit-none {
+ -o-object-fit: none !important;
+ object-fit: none !important
+}
+
+.opacity-0 {
+ opacity: 0 !important
+}
+
+.opacity-25 {
+ opacity: .25 !important
+}
+
+.opacity-50 {
+ opacity: .5 !important
+}
+
+.opacity-75 {
+ opacity: .75 !important
+}
+
+.opacity-100 {
+ opacity: 1 !important
+}
+
+.overflow-auto {
+ overflow: auto !important
+}
+
+.overflow-hidden {
+ overflow: hidden !important
+}
+
+.overflow-visible {
+ overflow: visible !important
+}
+
+.overflow-scroll {
+ overflow: scroll !important
+}
+
+.overflow-x-auto {
+ overflow-x: auto !important
+}
+
+.overflow-x-hidden {
+ overflow-x: hidden !important
+}
+
+.overflow-x-visible {
+ overflow-x: visible !important
+}
+
+.overflow-x-scroll {
+ overflow-x: scroll !important
+}
+
+.overflow-y-auto {
+ overflow-y: auto !important
+}
+
+.overflow-y-hidden {
+ overflow-y: hidden !important
+}
+
+.overflow-y-visible {
+ overflow-y: visible !important
+}
+
+.overflow-y-scroll {
+ overflow-y: scroll !important
+}
+
+.d-inline {
+ display: inline !important
+}
+
+.d-inline-block {
+ display: inline-block !important
+}
+
+.d-block {
+ display: block !important
+}
+
+.d-grid {
+ display: grid !important
+}
+
+.d-inline-grid {
+ display: inline-grid !important
+}
+
+.d-table {
+ display: table !important
+}
+
+.d-table-row {
+ display: table-row !important
+}
+
+.d-table-cell {
+ display: table-cell !important
+}
+
+.d-flex {
+ display: flex !important
+}
+
+.d-inline-flex {
+ display: inline-flex !important
+}
+
+.d-none {
+ display: none !important
+}
+
+.shadow {
+ box-shadow: var(--bs-box-shadow) !important
+}
+
+.shadow-sm {
+ box-shadow: var(--bs-box-shadow-sm) !important
+}
+
+.shadow-lg {
+ box-shadow: var(--bs-box-shadow-lg) !important
+}
+
+.shadow-none {
+ box-shadow: none !important
+}
+
+.focus-ring-primary {
+ --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))
+}
+
+.focus-ring-secondary {
+ --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))
+}
+
+.focus-ring-success {
+ --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))
+}
+
+.focus-ring-info {
+ --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))
+}
+
+.focus-ring-warning {
+ --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))
+}
+
+.focus-ring-danger {
+ --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))
+}
+
+.focus-ring-light {
+ --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))
+}
+
+.focus-ring-dark {
+ --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))
+}
+
+.position-static {
+ position: static !important
+}
+
+.position-relative {
+ position: relative !important
+}
+
+.position-absolute {
+ position: absolute !important
+}
+
+.position-fixed {
+ position: fixed !important
+}
+
+.position-sticky {
+ position: -webkit-sticky !important;
+ position: sticky !important
+}
+
+.top-0 {
+ top: 0 !important
+}
+
+.top-50 {
+ top: 50% !important
+}
+
+.top-100 {
+ top: 100% !important
+}
+
+.bottom-0 {
+ bottom: 0 !important
+}
+
+.bottom-50 {
+ bottom: 50% !important
+}
+
+.bottom-100 {
+ bottom: 100% !important
+}
+
+.start-0 {
+ left: 0 !important
+}
+
+.start-50 {
+ left: 50% !important
+}
+
+.start-100 {
+ left: 100% !important
+}
+
+.end-0 {
+ right: 0 !important
+}
+
+.end-50 {
+ right: 50% !important
+}
+
+.end-100 {
+ right: 100% !important
+}
+
+.translate-middle {
+ transform: translate(-50%, -50%) !important
+}
+
+.translate-middle-x {
+ transform: translateX(-50%) !important
+}
+
+.translate-middle-y {
+ transform: translateY(-50%) !important
+}
+
+.border {
+ border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important
+}
+
+.border-0 {
+ border: 0 !important
+}
+
+.border-top {
+ border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important
+}
+
+.border-top-0 {
+ border-top: 0 !important
+}
+
+.border-end {
+ border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important
+}
+
+.border-end-0 {
+ border-right: 0 !important
+}
+
+.border-bottom {
+ border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important
+}
+
+.border-bottom-0 {
+ border-bottom: 0 !important
+}
+
+.border-start {
+ border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important
+}
+
+.border-start-0 {
+ border-left: 0 !important
+}
+
+.border-primary {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-secondary {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-success {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-info {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-warning {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-danger {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-light {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-dark {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-black {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-white {
+ --bs-border-opacity: 1;
+ border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important
+}
+
+.border-primary-subtle {
+ border-color: var(--bs-primary-border-subtle) !important
+}
+
+.border-secondary-subtle {
+ border-color: var(--bs-secondary-border-subtle) !important
+}
+
+.border-success-subtle {
+ border-color: var(--bs-success-border-subtle) !important
+}
+
+.border-info-subtle {
+ border-color: var(--bs-info-border-subtle) !important
+}
+
+.border-warning-subtle {
+ border-color: var(--bs-warning-border-subtle) !important
+}
+
+.border-danger-subtle {
+ border-color: var(--bs-danger-border-subtle) !important
+}
+
+.border-light-subtle {
+ border-color: var(--bs-light-border-subtle) !important
+}
+
+.border-dark-subtle {
+ border-color: var(--bs-dark-border-subtle) !important
+}
+
+.border-1 {
+ border-width: 1px !important
+}
+
+.border-2 {
+ border-width: 2px !important
+}
+
+.border-3 {
+ border-width: 3px !important
+}
+
+.border-4 {
+ border-width: 4px !important
+}
+
+.border-5 {
+ border-width: 5px !important
+}
+
+.border-opacity-10 {
+ --bs-border-opacity: 0.1
+}
+
+.border-opacity-25 {
+ --bs-border-opacity: 0.25
+}
+
+.border-opacity-50 {
+ --bs-border-opacity: 0.5
+}
+
+.border-opacity-75 {
+ --bs-border-opacity: 0.75
+}
+
+.border-opacity-100 {
+ --bs-border-opacity: 1
+}
+
+.w-25 {
+ width: 25% !important
+}
+
+.w-50 {
+ width: 50% !important
+}
+
+.w-75 {
+ width: 75% !important
+}
+
+.w-100 {
+ width: 100% !important
+}
+
+.w-auto {
+ width: auto !important
+}
+
+.mw-100 {
+ max-width: 100% !important
+}
+
+.vw-100 {
+ width: 100vw !important
+}
+
+.min-vw-100 {
+ min-width: 100vw !important
+}
+
+.h-25 {
+ height: 25% !important
+}
+
+.h-50 {
+ height: 50% !important
+}
+
+.h-75 {
+ height: 75% !important
+}
+
+.h-100 {
+ height: 100% !important
+}
+
+.h-auto {
+ height: auto !important
+}
+
+.mh-100 {
+ max-height: 100% !important
+}
+
+.vh-100 {
+ height: 100vh !important
+}
+
+.min-vh-100 {
+ min-height: 100vh !important
+}
+
+.flex-fill {
+ flex: 1 1 auto !important
+}
+
+.flex-row {
+ flex-direction: row !important
+}
+
+.flex-column {
+ flex-direction: column !important
+}
+
+.flex-row-reverse {
+ flex-direction: row-reverse !important
+}
+
+.flex-column-reverse {
+ flex-direction: column-reverse !important
+}
+
+.flex-grow-0 {
+ flex-grow: 0 !important
+}
+
+.flex-grow-1 {
+ flex-grow: 1 !important
+}
+
+.flex-shrink-0 {
+ flex-shrink: 0 !important
+}
+
+.flex-shrink-1 {
+ flex-shrink: 1 !important
+}
+
+.flex-wrap {
+ flex-wrap: wrap !important
+}
+
+.flex-nowrap {
+ flex-wrap: nowrap !important
+}
+
+.flex-wrap-reverse {
+ flex-wrap: wrap-reverse !important
+}
+
+.justify-content-start {
+ justify-content: flex-start !important
+}
+
+.justify-content-end {
+ justify-content: flex-end !important
+}
+
+.justify-content-center {
+ justify-content: center !important
+}
+
+.justify-content-between {
+ justify-content: space-between !important
+}
+
+.justify-content-around {
+ justify-content: space-around !important
+}
+
+.justify-content-evenly {
+ justify-content: space-evenly !important
+}
+
+.align-items-start {
+ align-items: flex-start !important
+}
+
+.align-items-end {
+ align-items: flex-end !important
+}
+
+.align-items-center {
+ align-items: center !important
+}
+
+.align-items-baseline {
+ align-items: baseline !important
+}
+
+.align-items-stretch {
+ align-items: stretch !important
+}
+
+.align-content-start {
+ align-content: flex-start !important
+}
+
+.align-content-end {
+ align-content: flex-end !important
+}
+
+.align-content-center {
+ align-content: center !important
+}
+
+.align-content-between {
+ align-content: space-between !important
+}
+
+.align-content-around {
+ align-content: space-around !important
+}
+
+.align-content-stretch {
+ align-content: stretch !important
+}
+
+.align-self-auto {
+ align-self: auto !important
+}
+
+.align-self-start {
+ align-self: flex-start !important
+}
+
+.align-self-end {
+ align-self: flex-end !important
+}
+
+.align-self-center {
+ align-self: center !important
+}
+
+.align-self-baseline {
+ align-self: baseline !important
+}
+
+.align-self-stretch {
+ align-self: stretch !important
+}
+
+.order-first {
+ order: -1 !important
+}
+
+.order-0 {
+ order: 0 !important
+}
+
+.order-1 {
+ order: 1 !important
+}
+
+.order-2 {
+ order: 2 !important
+}
+
+.order-3 {
+ order: 3 !important
+}
+
+.order-4 {
+ order: 4 !important
+}
+
+.order-5 {
+ order: 5 !important
+}
+
+.order-last {
+ order: 6 !important
+}
+
+.m-0 {
+ margin: 0 !important
+}
+
+.m-1 {
+ margin: .25rem !important
+}
+
+.m-2 {
+ margin: .5rem !important
+}
+
+.m-3 {
+ margin: 1rem !important
+}
+
+.m-4 {
+ margin: 1.5rem !important
+}
+
+.m-5 {
+ margin: 3rem !important
+}
+
+.m-auto {
+ margin: auto !important
+}
+
+.mx-0 {
+ margin-right: 0 !important;
+ margin-left: 0 !important
+}
+
+.mx-1 {
+ margin-right: .25rem !important;
+ margin-left: .25rem !important
+}
+
+.mx-2 {
+ margin-right: .5rem !important;
+ margin-left: .5rem !important
+}
+
+.mx-3 {
+ margin-right: 1rem !important;
+ margin-left: 1rem !important
+}
+
+.mx-4 {
+ margin-right: 1.5rem !important;
+ margin-left: 1.5rem !important
+}
+
+.mx-5 {
+ margin-right: 3rem !important;
+ margin-left: 3rem !important
+}
+
+.mx-auto {
+ margin-right: auto !important;
+ margin-left: auto !important
+}
+
+.my-0 {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important
+}
+
+.my-1 {
+ margin-top: .25rem !important;
+ margin-bottom: .25rem !important
+}
+
+.my-2 {
+ margin-top: .5rem !important;
+ margin-bottom: .5rem !important
+}
+
+.my-3 {
+ margin-top: 1rem !important;
+ margin-bottom: 1rem !important
+}
+
+.my-4 {
+ margin-top: 1.5rem !important;
+ margin-bottom: 1.5rem !important
+}
+
+.my-5 {
+ margin-top: 3rem !important;
+ margin-bottom: 3rem !important
+}
+
+.my-auto {
+ margin-top: auto !important;
+ margin-bottom: auto !important
+}
+
+.mt-0 {
+ margin-top: 0 !important
+}
+
+.mt-1 {
+ margin-top: .25rem !important
+}
+
+.mt-2 {
+ margin-top: .5rem !important
+}
+
+.mt-3 {
+ margin-top: 1rem !important
+}
+
+.mt-4 {
+ margin-top: 1.5rem !important
+}
+
+.mt-5 {
+ margin-top: 3rem !important
+}
+
+.mt-auto {
+ margin-top: auto !important
+}
+
+.me-0 {
+ margin-right: 0 !important
+}
+
+.me-1 {
+ margin-right: .25rem !important
+}
+
+.me-2 {
+ margin-right: .5rem !important
+}
+
+.me-3 {
+ margin-right: 1rem !important
+}
+
+.me-4 {
+ margin-right: 1.5rem !important
+}
+
+.me-5 {
+ margin-right: 3rem !important
+}
+
+.me-auto {
+ margin-right: auto !important
+}
+
+.mb-0 {
+ margin-bottom: 0 !important
+}
+
+.mb-1 {
+ margin-bottom: .25rem !important
+}
+
+.mb-2 {
+ margin-bottom: .5rem !important
+}
+
+.mb-3 {
+ margin-bottom: 1rem !important
+}
+
+.mb-4 {
+ margin-bottom: 1.5rem !important
+}
+
+.mb-5 {
+ margin-bottom: 3rem !important
+}
+
+.mb-auto {
+ margin-bottom: auto !important
+}
+
+.ms-0 {
+ margin-left: 0 !important
+}
+
+.ms-1 {
+ margin-left: .25rem !important
+}
+
+.ms-2 {
+ margin-left: .5rem !important
+}
+
+.ms-3 {
+ margin-left: 1rem !important
+}
+
+.ms-4 {
+ margin-left: 1.5rem !important
+}
+
+.ms-5 {
+ margin-left: 3rem !important
+}
+
+.ms-auto {
+ margin-left: auto !important
+}
+
+.p-0 {
+ padding: 0 !important
+}
+
+.p-1 {
+ padding: .25rem !important
+}
+
+.p-2 {
+ padding: .5rem !important
+}
+
+.p-3 {
+ padding: 1rem !important
+}
+
+.p-4 {
+ padding: 1.5rem !important
+}
+
+.p-5 {
+ padding: 3rem !important
+}
+
+.px-0 {
+ padding-right: 0 !important;
+ padding-left: 0 !important
+}
+
+.px-1 {
+ padding-right: .25rem !important;
+ padding-left: .25rem !important
+}
+
+.px-2 {
+ padding-right: .5rem !important;
+ padding-left: .5rem !important
+}
+
+.px-3 {
+ padding-right: 1rem !important;
+ padding-left: 1rem !important
+}
+
+.px-4 {
+ padding-right: 1.5rem !important;
+ padding-left: 1.5rem !important
+}
+
+.px-5 {
+ padding-right: 3rem !important;
+ padding-left: 3rem !important
+}
+
+.py-0 {
+ padding-top: 0 !important;
+ padding-bottom: 0 !important
+}
+
+.py-1 {
+ padding-top: .25rem !important;
+ padding-bottom: .25rem !important
+}
+
+.py-2 {
+ padding-top: .5rem !important;
+ padding-bottom: .5rem !important
+}
+
+.py-3 {
+ padding-top: 1rem !important;
+ padding-bottom: 1rem !important
+}
+
+.py-4 {
+ padding-top: 1.5rem !important;
+ padding-bottom: 1.5rem !important
+}
+
+.py-5 {
+ padding-top: 3rem !important;
+ padding-bottom: 3rem !important
+}
+
+.pt-0 {
+ padding-top: 0 !important
+}
+
+.pt-1 {
+ padding-top: .25rem !important
+}
+
+.pt-2 {
+ padding-top: .5rem !important
+}
+
+.pt-3 {
+ padding-top: 1rem !important
+}
+
+.pt-4 {
+ padding-top: 1.5rem !important
+}
+
+.pt-5 {
+ padding-top: 3rem !important
+}
+
+.pe-0 {
+ padding-right: 0 !important
+}
+
+.pe-1 {
+ padding-right: .25rem !important
+}
+
+.pe-2 {
+ padding-right: .5rem !important
+}
+
+.pe-3 {
+ padding-right: 1rem !important
+}
+
+.pe-4 {
+ padding-right: 1.5rem !important
+}
+
+.pe-5 {
+ padding-right: 3rem !important
+}
+
+.pb-0 {
+ padding-bottom: 0 !important
+}
+
+.pb-1 {
+ padding-bottom: .25rem !important
+}
+
+.pb-2 {
+ padding-bottom: .5rem !important
+}
+
+.pb-3 {
+ padding-bottom: 1rem !important
+}
+
+.pb-4 {
+ padding-bottom: 1.5rem !important
+}
+
+.pb-5 {
+ padding-bottom: 3rem !important
+}
+
+.ps-0 {
+ padding-left: 0 !important
+}
+
+.ps-1 {
+ padding-left: .25rem !important
+}
+
+.ps-2 {
+ padding-left: .5rem !important
+}
+
+.ps-3 {
+ padding-left: 1rem !important
+}
+
+.ps-4 {
+ padding-left: 1.5rem !important
+}
+
+.ps-5 {
+ padding-left: 3rem !important
+}
+
+.gap-0 {
+ gap: 0 !important
+}
+
+.gap-1 {
+ gap: .25rem !important
+}
+
+.gap-2 {
+ gap: .5rem !important
+}
+
+.gap-3 {
+ gap: 1rem !important
+}
+
+.gap-4 {
+ gap: 1.5rem !important
+}
+
+.gap-5 {
+ gap: 3rem !important
+}
+
+.row-gap-0 {
+ row-gap: 0 !important
+}
+
+.row-gap-1 {
+ row-gap: .25rem !important
+}
+
+.row-gap-2 {
+ row-gap: .5rem !important
+}
+
+.row-gap-3 {
+ row-gap: 1rem !important
+}
+
+.row-gap-4 {
+ row-gap: 1.5rem !important
+}
+
+.row-gap-5 {
+ row-gap: 3rem !important
+}
+
+.column-gap-0 {
+ -moz-column-gap: 0 !important;
+ column-gap: 0 !important
+}
+
+.column-gap-1 {
+ -moz-column-gap: 0.25rem !important;
+ column-gap: .25rem !important
+}
+
+.column-gap-2 {
+ -moz-column-gap: 0.5rem !important;
+ column-gap: .5rem !important
+}
+
+.column-gap-3 {
+ -moz-column-gap: 1rem !important;
+ column-gap: 1rem !important
+}
+
+.column-gap-4 {
+ -moz-column-gap: 1.5rem !important;
+ column-gap: 1.5rem !important
+}
+
+.column-gap-5 {
+ -moz-column-gap: 3rem !important;
+ column-gap: 3rem !important
+}
+
+.font-monospace {
+ font-family: var(--bs-font-monospace) !important
+}
+
+.fs-1 {
+ font-size: calc(1.375rem + 1.5vw) !important
+}
+
+.fs-2 {
+ font-size: calc(1.325rem + .9vw) !important
+}
+
+.fs-3 {
+ font-size: calc(1.3rem + .6vw) !important
+}
+
+.fs-4 {
+ font-size: calc(1.275rem + .3vw) !important
+}
+
+.fs-5 {
+ font-size: 1.25rem !important
+}
+
+.fs-6 {
+ font-size: 1rem !important
+}
+
+.fst-italic {
+ font-style: italic !important
+}
+
+.fst-normal {
+ font-style: normal !important
+}
+
+.fw-lighter {
+ font-weight: lighter !important
+}
+
+.fw-light {
+ font-weight: 300 !important
+}
+
+.fw-normal {
+ font-weight: 400 !important
+}
+
+.fw-medium {
+ font-weight: 500 !important
+}
+
+.fw-semibold {
+ font-weight: 600 !important
+}
+
+.fw-bold {
+ font-weight: 700 !important
+}
+
+.fw-bolder {
+ font-weight: bolder !important
+}
+
+.lh-1 {
+ line-height: 1 !important
+}
+
+.lh-sm {
+ line-height: 1.25 !important
+}
+
+.lh-base {
+ line-height: 1.5 !important
+}
+
+.lh-lg {
+ line-height: 2 !important
+}
+
+.text-start {
+ text-align: left !important
+}
+
+.text-end {
+ text-align: right !important
+}
+
+.text-center {
+ text-align: center !important
+}
+
+.text-decoration-none {
+ text-decoration: none !important
+}
+
+.text-decoration-underline {
+ text-decoration: underline !important
+}
+
+.text-decoration-line-through {
+ text-decoration: line-through !important
+}
+
+.text-lowercase {
+ text-transform: lowercase !important
+}
+
+.text-uppercase {
+ text-transform: uppercase !important
+}
+
+.text-capitalize {
+ text-transform: capitalize !important
+}
+
+.text-wrap {
+ white-space: normal !important
+}
+
+.text-nowrap {
+ white-space: nowrap !important
+}
+
+.text-break {
+ word-wrap: break-word !important;
+ word-break: break-word !important
+}
+
+.text-primary {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-secondary {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-success {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-info {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-warning {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-danger {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-light {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-dark {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-black {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-white {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-body {
+ --bs-text-opacity: 1;
+ color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important
+}
+
+.text-muted {
+ --bs-text-opacity: 1;
+ color: var(--bs-secondary-color) !important
+}
+
+.text-black-50 {
+ --bs-text-opacity: 1;
+ color: rgba(0, 0, 0, .5) !important
+}
+
+.text-white-50 {
+ --bs-text-opacity: 1;
+ color: rgba(255, 255, 255, .5) !important
+}
+
+.text-body-secondary {
+ --bs-text-opacity: 1;
+ color: var(--bs-secondary-color) !important
+}
+
+.text-body-tertiary {
+ --bs-text-opacity: 1;
+ color: var(--bs-tertiary-color) !important
+}
+
+.text-body-emphasis {
+ --bs-text-opacity: 1;
+ color: var(--bs-emphasis-color) !important
+}
+
+.text-reset {
+ --bs-text-opacity: 1;
+ color: inherit !important
+}
+
+.text-opacity-25 {
+ --bs-text-opacity: 0.25
+}
+
+.text-opacity-50 {
+ --bs-text-opacity: 0.5
+}
+
+.text-opacity-75 {
+ --bs-text-opacity: 0.75
+}
+
+.text-opacity-100 {
+ --bs-text-opacity: 1
+}
+
+.text-primary-emphasis {
+ color: var(--bs-primary-text-emphasis) !important
+}
+
+.text-secondary-emphasis {
+ color: var(--bs-secondary-text-emphasis) !important
+}
+
+.text-success-emphasis {
+ color: var(--bs-success-text-emphasis) !important
+}
+
+.text-info-emphasis {
+ color: var(--bs-info-text-emphasis) !important
+}
+
+.text-warning-emphasis {
+ color: var(--bs-warning-text-emphasis) !important
+}
+
+.text-danger-emphasis {
+ color: var(--bs-danger-text-emphasis) !important
+}
+
+.text-light-emphasis {
+ color: var(--bs-light-text-emphasis) !important
+}
+
+.text-dark-emphasis {
+ color: var(--bs-dark-text-emphasis) !important
+}
+
+.link-opacity-10 {
+ --bs-link-opacity: 0.1
+}
+
+.link-opacity-10-hover:hover {
+ --bs-link-opacity: 0.1
+}
+
+.link-opacity-25 {
+ --bs-link-opacity: 0.25
+}
+
+.link-opacity-25-hover:hover {
+ --bs-link-opacity: 0.25
+}
+
+.link-opacity-50 {
+ --bs-link-opacity: 0.5
+}
+
+.link-opacity-50-hover:hover {
+ --bs-link-opacity: 0.5
+}
+
+.link-opacity-75 {
+ --bs-link-opacity: 0.75
+}
+
+.link-opacity-75-hover:hover {
+ --bs-link-opacity: 0.75
+}
+
+.link-opacity-100 {
+ --bs-link-opacity: 1
+}
+
+.link-opacity-100-hover:hover {
+ --bs-link-opacity: 1
+}
+
+.link-offset-1 {
+ text-underline-offset: 0.125em !important
+}
+
+.link-offset-1-hover:hover {
+ text-underline-offset: 0.125em !important
+}
+
+.link-offset-2 {
+ text-underline-offset: 0.25em !important
+}
+
+.link-offset-2-hover:hover {
+ text-underline-offset: 0.25em !important
+}
+
+.link-offset-3 {
+ text-underline-offset: 0.375em !important
+}
+
+.link-offset-3-hover:hover {
+ text-underline-offset: 0.375em !important
+}
+
+.link-underline-primary {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline-secondary {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline-success {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline-info {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline-warning {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline-danger {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline-light {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline-dark {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
+ text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important
+}
+
+.link-underline {
+ --bs-link-underline-opacity: 1;
+ -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
+ text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important
+}
+
+.link-underline-opacity-0 {
+ --bs-link-underline-opacity: 0
+}
+
+.link-underline-opacity-0-hover:hover {
+ --bs-link-underline-opacity: 0
+}
+
+.link-underline-opacity-10 {
+ --bs-link-underline-opacity: 0.1
+}
+
+.link-underline-opacity-10-hover:hover {
+ --bs-link-underline-opacity: 0.1
+}
+
+.link-underline-opacity-25 {
+ --bs-link-underline-opacity: 0.25
+}
+
+.link-underline-opacity-25-hover:hover {
+ --bs-link-underline-opacity: 0.25
+}
+
+.link-underline-opacity-50 {
+ --bs-link-underline-opacity: 0.5
+}
+
+.link-underline-opacity-50-hover:hover {
+ --bs-link-underline-opacity: 0.5
+}
+
+.link-underline-opacity-75 {
+ --bs-link-underline-opacity: 0.75
+}
+
+.link-underline-opacity-75-hover:hover {
+ --bs-link-underline-opacity: 0.75
+}
+
+.link-underline-opacity-100 {
+ --bs-link-underline-opacity: 1
+}
+
+.link-underline-opacity-100-hover:hover {
+ --bs-link-underline-opacity: 1
+}
+
+.bg-primary {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-secondary {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-success {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-info {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-warning {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-danger {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-light {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-dark {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-black {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-white {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-body {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-transparent {
+ --bs-bg-opacity: 1;
+ background-color: transparent !important
+}
+
+.bg-body-secondary {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-body-tertiary {
+ --bs-bg-opacity: 1;
+ background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important
+}
+
+.bg-opacity-10 {
+ --bs-bg-opacity: 0.1
+}
+
+.bg-opacity-25 {
+ --bs-bg-opacity: 0.25
+}
+
+.bg-opacity-50 {
+ --bs-bg-opacity: 0.5
+}
+
+.bg-opacity-75 {
+ --bs-bg-opacity: 0.75
+}
+
+.bg-opacity-100 {
+ --bs-bg-opacity: 1
+}
+
+.bg-primary-subtle {
+ background-color: var(--bs-primary-bg-subtle) !important
+}
+
+.bg-secondary-subtle {
+ background-color: var(--bs-secondary-bg-subtle) !important
+}
+
+.bg-success-subtle {
+ background-color: var(--bs-success-bg-subtle) !important
+}
+
+.bg-info-subtle {
+ background-color: var(--bs-info-bg-subtle) !important
+}
+
+.bg-warning-subtle {
+ background-color: var(--bs-warning-bg-subtle) !important
+}
+
+.bg-danger-subtle {
+ background-color: var(--bs-danger-bg-subtle) !important
+}
+
+.bg-light-subtle {
+ background-color: var(--bs-light-bg-subtle) !important
+}
+
+.bg-dark-subtle {
+ background-color: var(--bs-dark-bg-subtle) !important
+}
+
+.bg-gradient {
+ background-image: var(--bs-gradient) !important
+}
+
+.user-select-all {
+ -webkit-user-select: all !important;
+ -moz-user-select: all !important;
+ user-select: all !important
+}
+
+.user-select-auto {
+ -webkit-user-select: auto !important;
+ -moz-user-select: auto !important;
+ user-select: auto !important
+}
+
+.user-select-none {
+ -webkit-user-select: none !important;
+ -moz-user-select: none !important;
+ user-select: none !important
+}
+
+.pe-none {
+ pointer-events: none !important
+}
+
+.pe-auto {
+ pointer-events: auto !important
+}
+
+.rounded {
+ border-radius: var(--bs-border-radius) !important
+}
+
+.rounded-0 {
+ border-radius: 0 !important
+}
+
+.rounded-1 {
+ border-radius: var(--bs-border-radius-sm) !important
+}
+
+.rounded-2 {
+ border-radius: var(--bs-border-radius) !important
+}
+
+.rounded-3 {
+ border-radius: var(--bs-border-radius-lg) !important
+}
+
+.rounded-4 {
+ border-radius: var(--bs-border-radius-xl) !important
+}
+
+.rounded-5 {
+ border-radius: var(--bs-border-radius-xxl) !important
+}
+
+.rounded-circle {
+ border-radius: 50% !important
+}
+
+.rounded-pill {
+ border-radius: var(--bs-border-radius-pill) !important
+}
+
+.rounded-top {
+ border-top-left-radius: var(--bs-border-radius) !important;
+ border-top-right-radius: var(--bs-border-radius) !important
+}
+
+.rounded-top-0 {
+ border-top-left-radius: 0 !important;
+ border-top-right-radius: 0 !important
+}
+
+.rounded-top-1 {
+ border-top-left-radius: var(--bs-border-radius-sm) !important;
+ border-top-right-radius: var(--bs-border-radius-sm) !important
+}
+
+.rounded-top-2 {
+ border-top-left-radius: var(--bs-border-radius) !important;
+ border-top-right-radius: var(--bs-border-radius) !important
+}
+
+.rounded-top-3 {
+ border-top-left-radius: var(--bs-border-radius-lg) !important;
+ border-top-right-radius: var(--bs-border-radius-lg) !important
+}
+
+.rounded-top-4 {
+ border-top-left-radius: var(--bs-border-radius-xl) !important;
+ border-top-right-radius: var(--bs-border-radius-xl) !important
+}
+
+.rounded-top-5 {
+ border-top-left-radius: var(--bs-border-radius-xxl) !important;
+ border-top-right-radius: var(--bs-border-radius-xxl) !important
+}
+
+.rounded-top-circle {
+ border-top-left-radius: 50% !important;
+ border-top-right-radius: 50% !important
+}
+
+.rounded-top-pill {
+ border-top-left-radius: var(--bs-border-radius-pill) !important;
+ border-top-right-radius: var(--bs-border-radius-pill) !important
+}
+
+.rounded-end {
+ border-top-right-radius: var(--bs-border-radius) !important;
+ border-bottom-right-radius: var(--bs-border-radius) !important
+}
+
+.rounded-end-0 {
+ border-top-right-radius: 0 !important;
+ border-bottom-right-radius: 0 !important
+}
+
+.rounded-end-1 {
+ border-top-right-radius: var(--bs-border-radius-sm) !important;
+ border-bottom-right-radius: var(--bs-border-radius-sm) !important
+}
+
+.rounded-end-2 {
+ border-top-right-radius: var(--bs-border-radius) !important;
+ border-bottom-right-radius: var(--bs-border-radius) !important
+}
+
+.rounded-end-3 {
+ border-top-right-radius: var(--bs-border-radius-lg) !important;
+ border-bottom-right-radius: var(--bs-border-radius-lg) !important
+}
+
+.rounded-end-4 {
+ border-top-right-radius: var(--bs-border-radius-xl) !important;
+ border-bottom-right-radius: var(--bs-border-radius-xl) !important
+}
+
+.rounded-end-5 {
+ border-top-right-radius: var(--bs-border-radius-xxl) !important;
+ border-bottom-right-radius: var(--bs-border-radius-xxl) !important
+}
+
+.rounded-end-circle {
+ border-top-right-radius: 50% !important;
+ border-bottom-right-radius: 50% !important
+}
+
+.rounded-end-pill {
+ border-top-right-radius: var(--bs-border-radius-pill) !important;
+ border-bottom-right-radius: var(--bs-border-radius-pill) !important
+}
+
+.rounded-bottom {
+ border-bottom-right-radius: var(--bs-border-radius) !important;
+ border-bottom-left-radius: var(--bs-border-radius) !important
+}
+
+.rounded-bottom-0 {
+ border-bottom-right-radius: 0 !important;
+ border-bottom-left-radius: 0 !important
+}
+
+.rounded-bottom-1 {
+ border-bottom-right-radius: var(--bs-border-radius-sm) !important;
+ border-bottom-left-radius: var(--bs-border-radius-sm) !important
+}
+
+.rounded-bottom-2 {
+ border-bottom-right-radius: var(--bs-border-radius) !important;
+ border-bottom-left-radius: var(--bs-border-radius) !important
+}
+
+.rounded-bottom-3 {
+ border-bottom-right-radius: var(--bs-border-radius-lg) !important;
+ border-bottom-left-radius: var(--bs-border-radius-lg) !important
+}
+
+.rounded-bottom-4 {
+ border-bottom-right-radius: var(--bs-border-radius-xl) !important;
+ border-bottom-left-radius: var(--bs-border-radius-xl) !important
+}
+
+.rounded-bottom-5 {
+ border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
+ border-bottom-left-radius: var(--bs-border-radius-xxl) !important
+}
+
+.rounded-bottom-circle {
+ border-bottom-right-radius: 50% !important;
+ border-bottom-left-radius: 50% !important
+}
+
+.rounded-bottom-pill {
+ border-bottom-right-radius: var(--bs-border-radius-pill) !important;
+ border-bottom-left-radius: var(--bs-border-radius-pill) !important
+}
+
+.rounded-start {
+ border-bottom-left-radius: var(--bs-border-radius) !important;
+ border-top-left-radius: var(--bs-border-radius) !important
+}
+
+.rounded-start-0 {
+ border-bottom-left-radius: 0 !important;
+ border-top-left-radius: 0 !important
+}
+
+.rounded-start-1 {
+ border-bottom-left-radius: var(--bs-border-radius-sm) !important;
+ border-top-left-radius: var(--bs-border-radius-sm) !important
+}
+
+.rounded-start-2 {
+ border-bottom-left-radius: var(--bs-border-radius) !important;
+ border-top-left-radius: var(--bs-border-radius) !important
+}
+
+.rounded-start-3 {
+ border-bottom-left-radius: var(--bs-border-radius-lg) !important;
+ border-top-left-radius: var(--bs-border-radius-lg) !important
+}
+
+.rounded-start-4 {
+ border-bottom-left-radius: var(--bs-border-radius-xl) !important;
+ border-top-left-radius: var(--bs-border-radius-xl) !important
+}
+
+.rounded-start-5 {
+ border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
+ border-top-left-radius: var(--bs-border-radius-xxl) !important
+}
+
+.rounded-start-circle {
+ border-bottom-left-radius: 50% !important;
+ border-top-left-radius: 50% !important
+}
+
+.rounded-start-pill {
+ border-bottom-left-radius: var(--bs-border-radius-pill) !important;
+ border-top-left-radius: var(--bs-border-radius-pill) !important
+}
+
+.visible {
+ visibility: visible !important
+}
+
+.invisible {
+ visibility: hidden !important
+}
+
+.z-n1 {
+ z-index: -1 !important
+}
+
+.z-0 {
+ z-index: 0 !important
+}
+
+.z-1 {
+ z-index: 1 !important
+}
+
+.z-2 {
+ z-index: 2 !important
+}
+
+.z-3 {
+ z-index: 3 !important
+}
+
+@media (min-width:576px) {
+ .float-sm-start {
+ float: left !important
+ }
+
+ .float-sm-end {
+ float: right !important
+ }
+
+ .float-sm-none {
+ float: none !important
+ }
+
+ .object-fit-sm-contain {
+ -o-object-fit: contain !important;
+ object-fit: contain !important
+ }
+
+ .object-fit-sm-cover {
+ -o-object-fit: cover !important;
+ object-fit: cover !important
+ }
+
+ .object-fit-sm-fill {
+ -o-object-fit: fill !important;
+ object-fit: fill !important
+ }
+
+ .object-fit-sm-scale {
+ -o-object-fit: scale-down !important;
+ object-fit: scale-down !important
+ }
+
+ .object-fit-sm-none {
+ -o-object-fit: none !important;
+ object-fit: none !important
+ }
+
+ .d-sm-inline {
+ display: inline !important
+ }
+
+ .d-sm-inline-block {
+ display: inline-block !important
+ }
+
+ .d-sm-block {
+ display: block !important
+ }
+
+ .d-sm-grid {
+ display: grid !important
+ }
+
+ .d-sm-inline-grid {
+ display: inline-grid !important
+ }
+
+ .d-sm-table {
+ display: table !important
+ }
+
+ .d-sm-table-row {
+ display: table-row !important
+ }
+
+ .d-sm-table-cell {
+ display: table-cell !important
+ }
+
+ .d-sm-flex {
+ display: flex !important
+ }
+
+ .d-sm-inline-flex {
+ display: inline-flex !important
+ }
+
+ .d-sm-none {
+ display: none !important
+ }
+
+ .flex-sm-fill {
+ flex: 1 1 auto !important
+ }
+
+ .flex-sm-row {
+ flex-direction: row !important
+ }
+
+ .flex-sm-column {
+ flex-direction: column !important
+ }
+
+ .flex-sm-row-reverse {
+ flex-direction: row-reverse !important
+ }
+
+ .flex-sm-column-reverse {
+ flex-direction: column-reverse !important
+ }
+
+ .flex-sm-grow-0 {
+ flex-grow: 0 !important
+ }
+
+ .flex-sm-grow-1 {
+ flex-grow: 1 !important
+ }
+
+ .flex-sm-shrink-0 {
+ flex-shrink: 0 !important
+ }
+
+ .flex-sm-shrink-1 {
+ flex-shrink: 1 !important
+ }
+
+ .flex-sm-wrap {
+ flex-wrap: wrap !important
+ }
+
+ .flex-sm-nowrap {
+ flex-wrap: nowrap !important
+ }
+
+ .flex-sm-wrap-reverse {
+ flex-wrap: wrap-reverse !important
+ }
+
+ .justify-content-sm-start {
+ justify-content: flex-start !important
+ }
+
+ .justify-content-sm-end {
+ justify-content: flex-end !important
+ }
+
+ .justify-content-sm-center {
+ justify-content: center !important
+ }
+
+ .justify-content-sm-between {
+ justify-content: space-between !important
+ }
+
+ .justify-content-sm-around {
+ justify-content: space-around !important
+ }
+
+ .justify-content-sm-evenly {
+ justify-content: space-evenly !important
+ }
+
+ .align-items-sm-start {
+ align-items: flex-start !important
+ }
+
+ .align-items-sm-end {
+ align-items: flex-end !important
+ }
+
+ .align-items-sm-center {
+ align-items: center !important
+ }
+
+ .align-items-sm-baseline {
+ align-items: baseline !important
+ }
+
+ .align-items-sm-stretch {
+ align-items: stretch !important
+ }
+
+ .align-content-sm-start {
+ align-content: flex-start !important
+ }
+
+ .align-content-sm-end {
+ align-content: flex-end !important
+ }
+
+ .align-content-sm-center {
+ align-content: center !important
+ }
+
+ .align-content-sm-between {
+ align-content: space-between !important
+ }
+
+ .align-content-sm-around {
+ align-content: space-around !important
+ }
+
+ .align-content-sm-stretch {
+ align-content: stretch !important
+ }
+
+ .align-self-sm-auto {
+ align-self: auto !important
+ }
+
+ .align-self-sm-start {
+ align-self: flex-start !important
+ }
+
+ .align-self-sm-end {
+ align-self: flex-end !important
+ }
+
+ .align-self-sm-center {
+ align-self: center !important
+ }
+
+ .align-self-sm-baseline {
+ align-self: baseline !important
+ }
+
+ .align-self-sm-stretch {
+ align-self: stretch !important
+ }
+
+ .order-sm-first {
+ order: -1 !important
+ }
+
+ .order-sm-0 {
+ order: 0 !important
+ }
+
+ .order-sm-1 {
+ order: 1 !important
+ }
+
+ .order-sm-2 {
+ order: 2 !important
+ }
+
+ .order-sm-3 {
+ order: 3 !important
+ }
+
+ .order-sm-4 {
+ order: 4 !important
+ }
+
+ .order-sm-5 {
+ order: 5 !important
+ }
+
+ .order-sm-last {
+ order: 6 !important
+ }
+
+ .m-sm-0 {
+ margin: 0 !important
+ }
+
+ .m-sm-1 {
+ margin: .25rem !important
+ }
+
+ .m-sm-2 {
+ margin: .5rem !important
+ }
+
+ .m-sm-3 {
+ margin: 1rem !important
+ }
+
+ .m-sm-4 {
+ margin: 1.5rem !important
+ }
+
+ .m-sm-5 {
+ margin: 3rem !important
+ }
+
+ .m-sm-auto {
+ margin: auto !important
+ }
+
+ .mx-sm-0 {
+ margin-right: 0 !important;
+ margin-left: 0 !important
+ }
+
+ .mx-sm-1 {
+ margin-right: .25rem !important;
+ margin-left: .25rem !important
+ }
+
+ .mx-sm-2 {
+ margin-right: .5rem !important;
+ margin-left: .5rem !important
+ }
+
+ .mx-sm-3 {
+ margin-right: 1rem !important;
+ margin-left: 1rem !important
+ }
+
+ .mx-sm-4 {
+ margin-right: 1.5rem !important;
+ margin-left: 1.5rem !important
+ }
+
+ .mx-sm-5 {
+ margin-right: 3rem !important;
+ margin-left: 3rem !important
+ }
+
+ .mx-sm-auto {
+ margin-right: auto !important;
+ margin-left: auto !important
+ }
+
+ .my-sm-0 {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important
+ }
+
+ .my-sm-1 {
+ margin-top: .25rem !important;
+ margin-bottom: .25rem !important
+ }
+
+ .my-sm-2 {
+ margin-top: .5rem !important;
+ margin-bottom: .5rem !important
+ }
+
+ .my-sm-3 {
+ margin-top: 1rem !important;
+ margin-bottom: 1rem !important
+ }
+
+ .my-sm-4 {
+ margin-top: 1.5rem !important;
+ margin-bottom: 1.5rem !important
+ }
+
+ .my-sm-5 {
+ margin-top: 3rem !important;
+ margin-bottom: 3rem !important
+ }
+
+ .my-sm-auto {
+ margin-top: auto !important;
+ margin-bottom: auto !important
+ }
+
+ .mt-sm-0 {
+ margin-top: 0 !important
+ }
+
+ .mt-sm-1 {
+ margin-top: .25rem !important
+ }
+
+ .mt-sm-2 {
+ margin-top: .5rem !important
+ }
+
+ .mt-sm-3 {
+ margin-top: 1rem !important
+ }
+
+ .mt-sm-4 {
+ margin-top: 1.5rem !important
+ }
+
+ .mt-sm-5 {
+ margin-top: 3rem !important
+ }
+
+ .mt-sm-auto {
+ margin-top: auto !important
+ }
+
+ .me-sm-0 {
+ margin-right: 0 !important
+ }
+
+ .me-sm-1 {
+ margin-right: .25rem !important
+ }
+
+ .me-sm-2 {
+ margin-right: .5rem !important
+ }
+
+ .me-sm-3 {
+ margin-right: 1rem !important
+ }
+
+ .me-sm-4 {
+ margin-right: 1.5rem !important
+ }
+
+ .me-sm-5 {
+ margin-right: 3rem !important
+ }
+
+ .me-sm-auto {
+ margin-right: auto !important
+ }
+
+ .mb-sm-0 {
+ margin-bottom: 0 !important
+ }
+
+ .mb-sm-1 {
+ margin-bottom: .25rem !important
+ }
+
+ .mb-sm-2 {
+ margin-bottom: .5rem !important
+ }
+
+ .mb-sm-3 {
+ margin-bottom: 1rem !important
+ }
+
+ .mb-sm-4 {
+ margin-bottom: 1.5rem !important
+ }
+
+ .mb-sm-5 {
+ margin-bottom: 3rem !important
+ }
+
+ .mb-sm-auto {
+ margin-bottom: auto !important
+ }
+
+ .ms-sm-0 {
+ margin-left: 0 !important
+ }
+
+ .ms-sm-1 {
+ margin-left: .25rem !important
+ }
+
+ .ms-sm-2 {
+ margin-left: .5rem !important
+ }
+
+ .ms-sm-3 {
+ margin-left: 1rem !important
+ }
+
+ .ms-sm-4 {
+ margin-left: 1.5rem !important
+ }
+
+ .ms-sm-5 {
+ margin-left: 3rem !important
+ }
+
+ .ms-sm-auto {
+ margin-left: auto !important
+ }
+
+ .p-sm-0 {
+ padding: 0 !important
+ }
+
+ .p-sm-1 {
+ padding: .25rem !important
+ }
+
+ .p-sm-2 {
+ padding: .5rem !important
+ }
+
+ .p-sm-3 {
+ padding: 1rem !important
+ }
+
+ .p-sm-4 {
+ padding: 1.5rem !important
+ }
+
+ .p-sm-5 {
+ padding: 3rem !important
+ }
+
+ .px-sm-0 {
+ padding-right: 0 !important;
+ padding-left: 0 !important
+ }
+
+ .px-sm-1 {
+ padding-right: .25rem !important;
+ padding-left: .25rem !important
+ }
+
+ .px-sm-2 {
+ padding-right: .5rem !important;
+ padding-left: .5rem !important
+ }
+
+ .px-sm-3 {
+ padding-right: 1rem !important;
+ padding-left: 1rem !important
+ }
+
+ .px-sm-4 {
+ padding-right: 1.5rem !important;
+ padding-left: 1.5rem !important
+ }
+
+ .px-sm-5 {
+ padding-right: 3rem !important;
+ padding-left: 3rem !important
+ }
+
+ .py-sm-0 {
+ padding-top: 0 !important;
+ padding-bottom: 0 !important
+ }
+
+ .py-sm-1 {
+ padding-top: .25rem !important;
+ padding-bottom: .25rem !important
+ }
+
+ .py-sm-2 {
+ padding-top: .5rem !important;
+ padding-bottom: .5rem !important
+ }
+
+ .py-sm-3 {
+ padding-top: 1rem !important;
+ padding-bottom: 1rem !important
+ }
+
+ .py-sm-4 {
+ padding-top: 1.5rem !important;
+ padding-bottom: 1.5rem !important
+ }
+
+ .py-sm-5 {
+ padding-top: 3rem !important;
+ padding-bottom: 3rem !important
+ }
+
+ .pt-sm-0 {
+ padding-top: 0 !important
+ }
+
+ .pt-sm-1 {
+ padding-top: .25rem !important
+ }
+
+ .pt-sm-2 {
+ padding-top: .5rem !important
+ }
+
+ .pt-sm-3 {
+ padding-top: 1rem !important
+ }
+
+ .pt-sm-4 {
+ padding-top: 1.5rem !important
+ }
+
+ .pt-sm-5 {
+ padding-top: 3rem !important
+ }
+
+ .pe-sm-0 {
+ padding-right: 0 !important
+ }
+
+ .pe-sm-1 {
+ padding-right: .25rem !important
+ }
+
+ .pe-sm-2 {
+ padding-right: .5rem !important
+ }
+
+ .pe-sm-3 {
+ padding-right: 1rem !important
+ }
+
+ .pe-sm-4 {
+ padding-right: 1.5rem !important
+ }
+
+ .pe-sm-5 {
+ padding-right: 3rem !important
+ }
+
+ .pb-sm-0 {
+ padding-bottom: 0 !important
+ }
+
+ .pb-sm-1 {
+ padding-bottom: .25rem !important
+ }
+
+ .pb-sm-2 {
+ padding-bottom: .5rem !important
+ }
+
+ .pb-sm-3 {
+ padding-bottom: 1rem !important
+ }
+
+ .pb-sm-4 {
+ padding-bottom: 1.5rem !important
+ }
+
+ .pb-sm-5 {
+ padding-bottom: 3rem !important
+ }
+
+ .ps-sm-0 {
+ padding-left: 0 !important
+ }
+
+ .ps-sm-1 {
+ padding-left: .25rem !important
+ }
+
+ .ps-sm-2 {
+ padding-left: .5rem !important
+ }
+
+ .ps-sm-3 {
+ padding-left: 1rem !important
+ }
+
+ .ps-sm-4 {
+ padding-left: 1.5rem !important
+ }
+
+ .ps-sm-5 {
+ padding-left: 3rem !important
+ }
+
+ .gap-sm-0 {
+ gap: 0 !important
+ }
+
+ .gap-sm-1 {
+ gap: .25rem !important
+ }
+
+ .gap-sm-2 {
+ gap: .5rem !important
+ }
+
+ .gap-sm-3 {
+ gap: 1rem !important
+ }
+
+ .gap-sm-4 {
+ gap: 1.5rem !important
+ }
+
+ .gap-sm-5 {
+ gap: 3rem !important
+ }
+
+ .row-gap-sm-0 {
+ row-gap: 0 !important
+ }
+
+ .row-gap-sm-1 {
+ row-gap: .25rem !important
+ }
+
+ .row-gap-sm-2 {
+ row-gap: .5rem !important
+ }
+
+ .row-gap-sm-3 {
+ row-gap: 1rem !important
+ }
+
+ .row-gap-sm-4 {
+ row-gap: 1.5rem !important
+ }
+
+ .row-gap-sm-5 {
+ row-gap: 3rem !important
+ }
+
+ .column-gap-sm-0 {
+ -moz-column-gap: 0 !important;
+ column-gap: 0 !important
+ }
+
+ .column-gap-sm-1 {
+ -moz-column-gap: 0.25rem !important;
+ column-gap: .25rem !important
+ }
+
+ .column-gap-sm-2 {
+ -moz-column-gap: 0.5rem !important;
+ column-gap: .5rem !important
+ }
+
+ .column-gap-sm-3 {
+ -moz-column-gap: 1rem !important;
+ column-gap: 1rem !important
+ }
+
+ .column-gap-sm-4 {
+ -moz-column-gap: 1.5rem !important;
+ column-gap: 1.5rem !important
+ }
+
+ .column-gap-sm-5 {
+ -moz-column-gap: 3rem !important;
+ column-gap: 3rem !important
+ }
+
+ .text-sm-start {
+ text-align: left !important
+ }
+
+ .text-sm-end {
+ text-align: right !important
+ }
+
+ .text-sm-center {
+ text-align: center !important
+ }
+}
+
+@media (min-width:768px) {
+ .float-md-start {
+ float: left !important
+ }
+
+ .float-md-end {
+ float: right !important
+ }
+
+ .float-md-none {
+ float: none !important
+ }
+
+ .object-fit-md-contain {
+ -o-object-fit: contain !important;
+ object-fit: contain !important
+ }
+
+ .object-fit-md-cover {
+ -o-object-fit: cover !important;
+ object-fit: cover !important
+ }
+
+ .object-fit-md-fill {
+ -o-object-fit: fill !important;
+ object-fit: fill !important
+ }
+
+ .object-fit-md-scale {
+ -o-object-fit: scale-down !important;
+ object-fit: scale-down !important
+ }
+
+ .object-fit-md-none {
+ -o-object-fit: none !important;
+ object-fit: none !important
+ }
+
+ .d-md-inline {
+ display: inline !important
+ }
+
+ .d-md-inline-block {
+ display: inline-block !important
+ }
+
+ .d-md-block {
+ display: block !important
+ }
+
+ .d-md-grid {
+ display: grid !important
+ }
+
+ .d-md-inline-grid {
+ display: inline-grid !important
+ }
+
+ .d-md-table {
+ display: table !important
+ }
+
+ .d-md-table-row {
+ display: table-row !important
+ }
+
+ .d-md-table-cell {
+ display: table-cell !important
+ }
+
+ .d-md-flex {
+ display: flex !important
+ }
+
+ .d-md-inline-flex {
+ display: inline-flex !important
+ }
+
+ .d-md-none {
+ display: none !important
+ }
+
+ .flex-md-fill {
+ flex: 1 1 auto !important
+ }
+
+ .flex-md-row {
+ flex-direction: row !important
+ }
+
+ .flex-md-column {
+ flex-direction: column !important
+ }
+
+ .flex-md-row-reverse {
+ flex-direction: row-reverse !important
+ }
+
+ .flex-md-column-reverse {
+ flex-direction: column-reverse !important
+ }
+
+ .flex-md-grow-0 {
+ flex-grow: 0 !important
+ }
+
+ .flex-md-grow-1 {
+ flex-grow: 1 !important
+ }
+
+ .flex-md-shrink-0 {
+ flex-shrink: 0 !important
+ }
+
+ .flex-md-shrink-1 {
+ flex-shrink: 1 !important
+ }
+
+ .flex-md-wrap {
+ flex-wrap: wrap !important
+ }
+
+ .flex-md-nowrap {
+ flex-wrap: nowrap !important
+ }
+
+ .flex-md-wrap-reverse {
+ flex-wrap: wrap-reverse !important
+ }
+
+ .justify-content-md-start {
+ justify-content: flex-start !important
+ }
+
+ .justify-content-md-end {
+ justify-content: flex-end !important
+ }
+
+ .justify-content-md-center {
+ justify-content: center !important
+ }
+
+ .justify-content-md-between {
+ justify-content: space-between !important
+ }
+
+ .justify-content-md-around {
+ justify-content: space-around !important
+ }
+
+ .justify-content-md-evenly {
+ justify-content: space-evenly !important
+ }
+
+ .align-items-md-start {
+ align-items: flex-start !important
+ }
+
+ .align-items-md-end {
+ align-items: flex-end !important
+ }
+
+ .align-items-md-center {
+ align-items: center !important
+ }
+
+ .align-items-md-baseline {
+ align-items: baseline !important
+ }
+
+ .align-items-md-stretch {
+ align-items: stretch !important
+ }
+
+ .align-content-md-start {
+ align-content: flex-start !important
+ }
+
+ .align-content-md-end {
+ align-content: flex-end !important
+ }
+
+ .align-content-md-center {
+ align-content: center !important
+ }
+
+ .align-content-md-between {
+ align-content: space-between !important
+ }
+
+ .align-content-md-around {
+ align-content: space-around !important
+ }
+
+ .align-content-md-stretch {
+ align-content: stretch !important
+ }
+
+ .align-self-md-auto {
+ align-self: auto !important
+ }
+
+ .align-self-md-start {
+ align-self: flex-start !important
+ }
+
+ .align-self-md-end {
+ align-self: flex-end !important
+ }
+
+ .align-self-md-center {
+ align-self: center !important
+ }
+
+ .align-self-md-baseline {
+ align-self: baseline !important
+ }
+
+ .align-self-md-stretch {
+ align-self: stretch !important
+ }
+
+ .order-md-first {
+ order: -1 !important
+ }
+
+ .order-md-0 {
+ order: 0 !important
+ }
+
+ .order-md-1 {
+ order: 1 !important
+ }
+
+ .order-md-2 {
+ order: 2 !important
+ }
+
+ .order-md-3 {
+ order: 3 !important
+ }
+
+ .order-md-4 {
+ order: 4 !important
+ }
+
+ .order-md-5 {
+ order: 5 !important
+ }
+
+ .order-md-last {
+ order: 6 !important
+ }
+
+ .m-md-0 {
+ margin: 0 !important
+ }
+
+ .m-md-1 {
+ margin: .25rem !important
+ }
+
+ .m-md-2 {
+ margin: .5rem !important
+ }
+
+ .m-md-3 {
+ margin: 1rem !important
+ }
+
+ .m-md-4 {
+ margin: 1.5rem !important
+ }
+
+ .m-md-5 {
+ margin: 3rem !important
+ }
+
+ .m-md-auto {
+ margin: auto !important
+ }
+
+ .mx-md-0 {
+ margin-right: 0 !important;
+ margin-left: 0 !important
+ }
+
+ .mx-md-1 {
+ margin-right: .25rem !important;
+ margin-left: .25rem !important
+ }
+
+ .mx-md-2 {
+ margin-right: .5rem !important;
+ margin-left: .5rem !important
+ }
+
+ .mx-md-3 {
+ margin-right: 1rem !important;
+ margin-left: 1rem !important
+ }
+
+ .mx-md-4 {
+ margin-right: 1.5rem !important;
+ margin-left: 1.5rem !important
+ }
+
+ .mx-md-5 {
+ margin-right: 3rem !important;
+ margin-left: 3rem !important
+ }
+
+ .mx-md-auto {
+ margin-right: auto !important;
+ margin-left: auto !important
+ }
+
+ .my-md-0 {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important
+ }
+
+ .my-md-1 {
+ margin-top: .25rem !important;
+ margin-bottom: .25rem !important
+ }
+
+ .my-md-2 {
+ margin-top: .5rem !important;
+ margin-bottom: .5rem !important
+ }
+
+ .my-md-3 {
+ margin-top: 1rem !important;
+ margin-bottom: 1rem !important
+ }
+
+ .my-md-4 {
+ margin-top: 1.5rem !important;
+ margin-bottom: 1.5rem !important
+ }
+
+ .my-md-5 {
+ margin-top: 3rem !important;
+ margin-bottom: 3rem !important
+ }
+
+ .my-md-auto {
+ margin-top: auto !important;
+ margin-bottom: auto !important
+ }
+
+ .mt-md-0 {
+ margin-top: 0 !important
+ }
+
+ .mt-md-1 {
+ margin-top: .25rem !important
+ }
+
+ .mt-md-2 {
+ margin-top: .5rem !important
+ }
+
+ .mt-md-3 {
+ margin-top: 1rem !important
+ }
+
+ .mt-md-4 {
+ margin-top: 1.5rem !important
+ }
+
+ .mt-md-5 {
+ margin-top: 3rem !important
+ }
+
+ .mt-md-auto {
+ margin-top: auto !important
+ }
+
+ .me-md-0 {
+ margin-right: 0 !important
+ }
+
+ .me-md-1 {
+ margin-right: .25rem !important
+ }
+
+ .me-md-2 {
+ margin-right: .5rem !important
+ }
+
+ .me-md-3 {
+ margin-right: 1rem !important
+ }
+
+ .me-md-4 {
+ margin-right: 1.5rem !important
+ }
+
+ .me-md-5 {
+ margin-right: 3rem !important
+ }
+
+ .me-md-auto {
+ margin-right: auto !important
+ }
+
+ .mb-md-0 {
+ margin-bottom: 0 !important
+ }
+
+ .mb-md-1 {
+ margin-bottom: .25rem !important
+ }
+
+ .mb-md-2 {
+ margin-bottom: .5rem !important
+ }
+
+ .mb-md-3 {
+ margin-bottom: 1rem !important
+ }
+
+ .mb-md-4 {
+ margin-bottom: 1.5rem !important
+ }
+
+ .mb-md-5 {
+ margin-bottom: 3rem !important
+ }
+
+ .mb-md-auto {
+ margin-bottom: auto !important
+ }
+
+ .ms-md-0 {
+ margin-left: 0 !important
+ }
+
+ .ms-md-1 {
+ margin-left: .25rem !important
+ }
+
+ .ms-md-2 {
+ margin-left: .5rem !important
+ }
+
+ .ms-md-3 {
+ margin-left: 1rem !important
+ }
+
+ .ms-md-4 {
+ margin-left: 1.5rem !important
+ }
+
+ .ms-md-5 {
+ margin-left: 3rem !important
+ }
+
+ .ms-md-auto {
+ margin-left: auto !important
+ }
+
+ .p-md-0 {
+ padding: 0 !important
+ }
+
+ .p-md-1 {
+ padding: .25rem !important
+ }
+
+ .p-md-2 {
+ padding: .5rem !important
+ }
+
+ .p-md-3 {
+ padding: 1rem !important
+ }
+
+ .p-md-4 {
+ padding: 1.5rem !important
+ }
+
+ .p-md-5 {
+ padding: 3rem !important
+ }
+
+ .px-md-0 {
+ padding-right: 0 !important;
+ padding-left: 0 !important
+ }
+
+ .px-md-1 {
+ padding-right: .25rem !important;
+ padding-left: .25rem !important
+ }
+
+ .px-md-2 {
+ padding-right: .5rem !important;
+ padding-left: .5rem !important
+ }
+
+ .px-md-3 {
+ padding-right: 1rem !important;
+ padding-left: 1rem !important
+ }
+
+ .px-md-4 {
+ padding-right: 1.5rem !important;
+ padding-left: 1.5rem !important
+ }
+
+ .px-md-5 {
+ padding-right: 3rem !important;
+ padding-left: 3rem !important
+ }
+
+ .py-md-0 {
+ padding-top: 0 !important;
+ padding-bottom: 0 !important
+ }
+
+ .py-md-1 {
+ padding-top: .25rem !important;
+ padding-bottom: .25rem !important
+ }
+
+ .py-md-2 {
+ padding-top: .5rem !important;
+ padding-bottom: .5rem !important
+ }
+
+ .py-md-3 {
+ padding-top: 1rem !important;
+ padding-bottom: 1rem !important
+ }
+
+ .py-md-4 {
+ padding-top: 1.5rem !important;
+ padding-bottom: 1.5rem !important
+ }
+
+ .py-md-5 {
+ padding-top: 3rem !important;
+ padding-bottom: 3rem !important
+ }
+
+ .pt-md-0 {
+ padding-top: 0 !important
+ }
+
+ .pt-md-1 {
+ padding-top: .25rem !important
+ }
+
+ .pt-md-2 {
+ padding-top: .5rem !important
+ }
+
+ .pt-md-3 {
+ padding-top: 1rem !important
+ }
+
+ .pt-md-4 {
+ padding-top: 1.5rem !important
+ }
+
+ .pt-md-5 {
+ padding-top: 3rem !important
+ }
+
+ .pe-md-0 {
+ padding-right: 0 !important
+ }
+
+ .pe-md-1 {
+ padding-right: .25rem !important
+ }
+
+ .pe-md-2 {
+ padding-right: .5rem !important
+ }
+
+ .pe-md-3 {
+ padding-right: 1rem !important
+ }
+
+ .pe-md-4 {
+ padding-right: 1.5rem !important
+ }
+
+ .pe-md-5 {
+ padding-right: 3rem !important
+ }
+
+ .pb-md-0 {
+ padding-bottom: 0 !important
+ }
+
+ .pb-md-1 {
+ padding-bottom: .25rem !important
+ }
+
+ .pb-md-2 {
+ padding-bottom: .5rem !important
+ }
+
+ .pb-md-3 {
+ padding-bottom: 1rem !important
+ }
+
+ .pb-md-4 {
+ padding-bottom: 1.5rem !important
+ }
+
+ .pb-md-5 {
+ padding-bottom: 3rem !important
+ }
+
+ .ps-md-0 {
+ padding-left: 0 !important
+ }
+
+ .ps-md-1 {
+ padding-left: .25rem !important
+ }
+
+ .ps-md-2 {
+ padding-left: .5rem !important
+ }
+
+ .ps-md-3 {
+ padding-left: 1rem !important
+ }
+
+ .ps-md-4 {
+ padding-left: 1.5rem !important
+ }
+
+ .ps-md-5 {
+ padding-left: 3rem !important
+ }
+
+ .gap-md-0 {
+ gap: 0 !important
+ }
+
+ .gap-md-1 {
+ gap: .25rem !important
+ }
+
+ .gap-md-2 {
+ gap: .5rem !important
+ }
+
+ .gap-md-3 {
+ gap: 1rem !important
+ }
+
+ .gap-md-4 {
+ gap: 1.5rem !important
+ }
+
+ .gap-md-5 {
+ gap: 3rem !important
+ }
+
+ .row-gap-md-0 {
+ row-gap: 0 !important
+ }
+
+ .row-gap-md-1 {
+ row-gap: .25rem !important
+ }
+
+ .row-gap-md-2 {
+ row-gap: .5rem !important
+ }
+
+ .row-gap-md-3 {
+ row-gap: 1rem !important
+ }
+
+ .row-gap-md-4 {
+ row-gap: 1.5rem !important
+ }
+
+ .row-gap-md-5 {
+ row-gap: 3rem !important
+ }
+
+ .column-gap-md-0 {
+ -moz-column-gap: 0 !important;
+ column-gap: 0 !important
+ }
+
+ .column-gap-md-1 {
+ -moz-column-gap: 0.25rem !important;
+ column-gap: .25rem !important
+ }
+
+ .column-gap-md-2 {
+ -moz-column-gap: 0.5rem !important;
+ column-gap: .5rem !important
+ }
+
+ .column-gap-md-3 {
+ -moz-column-gap: 1rem !important;
+ column-gap: 1rem !important
+ }
+
+ .column-gap-md-4 {
+ -moz-column-gap: 1.5rem !important;
+ column-gap: 1.5rem !important
+ }
+
+ .column-gap-md-5 {
+ -moz-column-gap: 3rem !important;
+ column-gap: 3rem !important
+ }
+
+ .text-md-start {
+ text-align: left !important
+ }
+
+ .text-md-end {
+ text-align: right !important
+ }
+
+ .text-md-center {
+ text-align: center !important
+ }
+}
+
+@media (min-width:992px) {
+ .float-lg-start {
+ float: left !important
+ }
+
+ .float-lg-end {
+ float: right !important
+ }
+
+ .float-lg-none {
+ float: none !important
+ }
+
+ .object-fit-lg-contain {
+ -o-object-fit: contain !important;
+ object-fit: contain !important
+ }
+
+ .object-fit-lg-cover {
+ -o-object-fit: cover !important;
+ object-fit: cover !important
+ }
+
+ .object-fit-lg-fill {
+ -o-object-fit: fill !important;
+ object-fit: fill !important
+ }
+
+ .object-fit-lg-scale {
+ -o-object-fit: scale-down !important;
+ object-fit: scale-down !important
+ }
+
+ .object-fit-lg-none {
+ -o-object-fit: none !important;
+ object-fit: none !important
+ }
+
+ .d-lg-inline {
+ display: inline !important
+ }
+
+ .d-lg-inline-block {
+ display: inline-block !important
+ }
+
+ .d-lg-block {
+ display: block !important
+ }
+
+ .d-lg-grid {
+ display: grid !important
+ }
+
+ .d-lg-inline-grid {
+ display: inline-grid !important
+ }
+
+ .d-lg-table {
+ display: table !important
+ }
+
+ .d-lg-table-row {
+ display: table-row !important
+ }
+
+ .d-lg-table-cell {
+ display: table-cell !important
+ }
+
+ .d-lg-flex {
+ display: flex !important
+ }
+
+ .d-lg-inline-flex {
+ display: inline-flex !important
+ }
+
+ .d-lg-none {
+ display: none !important
+ }
+
+ .flex-lg-fill {
+ flex: 1 1 auto !important
+ }
+
+ .flex-lg-row {
+ flex-direction: row !important
+ }
+
+ .flex-lg-column {
+ flex-direction: column !important
+ }
+
+ .flex-lg-row-reverse {
+ flex-direction: row-reverse !important
+ }
+
+ .flex-lg-column-reverse {
+ flex-direction: column-reverse !important
+ }
+
+ .flex-lg-grow-0 {
+ flex-grow: 0 !important
+ }
+
+ .flex-lg-grow-1 {
+ flex-grow: 1 !important
+ }
+
+ .flex-lg-shrink-0 {
+ flex-shrink: 0 !important
+ }
+
+ .flex-lg-shrink-1 {
+ flex-shrink: 1 !important
+ }
+
+ .flex-lg-wrap {
+ flex-wrap: wrap !important
+ }
+
+ .flex-lg-nowrap {
+ flex-wrap: nowrap !important
+ }
+
+ .flex-lg-wrap-reverse {
+ flex-wrap: wrap-reverse !important
+ }
+
+ .justify-content-lg-start {
+ justify-content: flex-start !important
+ }
+
+ .justify-content-lg-end {
+ justify-content: flex-end !important
+ }
+
+ .justify-content-lg-center {
+ justify-content: center !important
+ }
+
+ .justify-content-lg-between {
+ justify-content: space-between !important
+ }
+
+ .justify-content-lg-around {
+ justify-content: space-around !important
+ }
+
+ .justify-content-lg-evenly {
+ justify-content: space-evenly !important
+ }
+
+ .align-items-lg-start {
+ align-items: flex-start !important
+ }
+
+ .align-items-lg-end {
+ align-items: flex-end !important
+ }
+
+ .align-items-lg-center {
+ align-items: center !important
+ }
+
+ .align-items-lg-baseline {
+ align-items: baseline !important
+ }
+
+ .align-items-lg-stretch {
+ align-items: stretch !important
+ }
+
+ .align-content-lg-start {
+ align-content: flex-start !important
+ }
+
+ .align-content-lg-end {
+ align-content: flex-end !important
+ }
+
+ .align-content-lg-center {
+ align-content: center !important
+ }
+
+ .align-content-lg-between {
+ align-content: space-between !important
+ }
+
+ .align-content-lg-around {
+ align-content: space-around !important
+ }
+
+ .align-content-lg-stretch {
+ align-content: stretch !important
+ }
+
+ .align-self-lg-auto {
+ align-self: auto !important
+ }
+
+ .align-self-lg-start {
+ align-self: flex-start !important
+ }
+
+ .align-self-lg-end {
+ align-self: flex-end !important
+ }
+
+ .align-self-lg-center {
+ align-self: center !important
+ }
+
+ .align-self-lg-baseline {
+ align-self: baseline !important
+ }
+
+ .align-self-lg-stretch {
+ align-self: stretch !important
+ }
+
+ .order-lg-first {
+ order: -1 !important
+ }
+
+ .order-lg-0 {
+ order: 0 !important
+ }
+
+ .order-lg-1 {
+ order: 1 !important
+ }
+
+ .order-lg-2 {
+ order: 2 !important
+ }
+
+ .order-lg-3 {
+ order: 3 !important
+ }
+
+ .order-lg-4 {
+ order: 4 !important
+ }
+
+ .order-lg-5 {
+ order: 5 !important
+ }
+
+ .order-lg-last {
+ order: 6 !important
+ }
+
+ .m-lg-0 {
+ margin: 0 !important
+ }
+
+ .m-lg-1 {
+ margin: .25rem !important
+ }
+
+ .m-lg-2 {
+ margin: .5rem !important
+ }
+
+ .m-lg-3 {
+ margin: 1rem !important
+ }
+
+ .m-lg-4 {
+ margin: 1.5rem !important
+ }
+
+ .m-lg-5 {
+ margin: 3rem !important
+ }
+
+ .m-lg-auto {
+ margin: auto !important
+ }
+
+ .mx-lg-0 {
+ margin-right: 0 !important;
+ margin-left: 0 !important
+ }
+
+ .mx-lg-1 {
+ margin-right: .25rem !important;
+ margin-left: .25rem !important
+ }
+
+ .mx-lg-2 {
+ margin-right: .5rem !important;
+ margin-left: .5rem !important
+ }
+
+ .mx-lg-3 {
+ margin-right: 1rem !important;
+ margin-left: 1rem !important
+ }
+
+ .mx-lg-4 {
+ margin-right: 1.5rem !important;
+ margin-left: 1.5rem !important
+ }
+
+ .mx-lg-5 {
+ margin-right: 3rem !important;
+ margin-left: 3rem !important
+ }
+
+ .mx-lg-auto {
+ margin-right: auto !important;
+ margin-left: auto !important
+ }
+
+ .my-lg-0 {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important
+ }
+
+ .my-lg-1 {
+ margin-top: .25rem !important;
+ margin-bottom: .25rem !important
+ }
+
+ .my-lg-2 {
+ margin-top: .5rem !important;
+ margin-bottom: .5rem !important
+ }
+
+ .my-lg-3 {
+ margin-top: 1rem !important;
+ margin-bottom: 1rem !important
+ }
+
+ .my-lg-4 {
+ margin-top: 1.5rem !important;
+ margin-bottom: 1.5rem !important
+ }
+
+ .my-lg-5 {
+ margin-top: 3rem !important;
+ margin-bottom: 3rem !important
+ }
+
+ .my-lg-auto {
+ margin-top: auto !important;
+ margin-bottom: auto !important
+ }
+
+ .mt-lg-0 {
+ margin-top: 0 !important
+ }
+
+ .mt-lg-1 {
+ margin-top: .25rem !important
+ }
+
+ .mt-lg-2 {
+ margin-top: .5rem !important
+ }
+
+ .mt-lg-3 {
+ margin-top: 1rem !important
+ }
+
+ .mt-lg-4 {
+ margin-top: 1.5rem !important
+ }
+
+ .mt-lg-5 {
+ margin-top: 3rem !important
+ }
+
+ .mt-lg-auto {
+ margin-top: auto !important
+ }
+
+ .me-lg-0 {
+ margin-right: 0 !important
+ }
+
+ .me-lg-1 {
+ margin-right: .25rem !important
+ }
+
+ .me-lg-2 {
+ margin-right: .5rem !important
+ }
+
+ .me-lg-3 {
+ margin-right: 1rem !important
+ }
+
+ .me-lg-4 {
+ margin-right: 1.5rem !important
+ }
+
+ .me-lg-5 {
+ margin-right: 3rem !important
+ }
+
+ .me-lg-auto {
+ margin-right: auto !important
+ }
+
+ .mb-lg-0 {
+ margin-bottom: 0 !important
+ }
+
+ .mb-lg-1 {
+ margin-bottom: .25rem !important
+ }
+
+ .mb-lg-2 {
+ margin-bottom: .5rem !important
+ }
+
+ .mb-lg-3 {
+ margin-bottom: 1rem !important
+ }
+
+ .mb-lg-4 {
+ margin-bottom: 1.5rem !important
+ }
+
+ .mb-lg-5 {
+ margin-bottom: 3rem !important
+ }
+
+ .mb-lg-auto {
+ margin-bottom: auto !important
+ }
+
+ .ms-lg-0 {
+ margin-left: 0 !important
+ }
+
+ .ms-lg-1 {
+ margin-left: .25rem !important
+ }
+
+ .ms-lg-2 {
+ margin-left: .5rem !important
+ }
+
+ .ms-lg-3 {
+ margin-left: 1rem !important
+ }
+
+ .ms-lg-4 {
+ margin-left: 1.5rem !important
+ }
+
+ .ms-lg-5 {
+ margin-left: 3rem !important
+ }
+
+ .ms-lg-auto {
+ margin-left: auto !important
+ }
+
+ .p-lg-0 {
+ padding: 0 !important
+ }
+
+ .p-lg-1 {
+ padding: .25rem !important
+ }
+
+ .p-lg-2 {
+ padding: .5rem !important
+ }
+
+ .p-lg-3 {
+ padding: 1rem !important
+ }
+
+ .p-lg-4 {
+ padding: 1.5rem !important
+ }
+
+ .p-lg-5 {
+ padding: 3rem !important
+ }
+
+ .px-lg-0 {
+ padding-right: 0 !important;
+ padding-left: 0 !important
+ }
+
+ .px-lg-1 {
+ padding-right: .25rem !important;
+ padding-left: .25rem !important
+ }
+
+ .px-lg-2 {
+ padding-right: .5rem !important;
+ padding-left: .5rem !important
+ }
+
+ .px-lg-3 {
+ padding-right: 1rem !important;
+ padding-left: 1rem !important
+ }
+
+ .px-lg-4 {
+ padding-right: 1.5rem !important;
+ padding-left: 1.5rem !important
+ }
+
+ .px-lg-5 {
+ padding-right: 3rem !important;
+ padding-left: 3rem !important
+ }
+
+ .py-lg-0 {
+ padding-top: 0 !important;
+ padding-bottom: 0 !important
+ }
+
+ .py-lg-1 {
+ padding-top: .25rem !important;
+ padding-bottom: .25rem !important
+ }
+
+ .py-lg-2 {
+ padding-top: .5rem !important;
+ padding-bottom: .5rem !important
+ }
+
+ .py-lg-3 {
+ padding-top: 1rem !important;
+ padding-bottom: 1rem !important
+ }
+
+ .py-lg-4 {
+ padding-top: 1.5rem !important;
+ padding-bottom: 1.5rem !important
+ }
+
+ .py-lg-5 {
+ padding-top: 3rem !important;
+ padding-bottom: 3rem !important
+ }
+
+ .pt-lg-0 {
+ padding-top: 0 !important
+ }
+
+ .pt-lg-1 {
+ padding-top: .25rem !important
+ }
+
+ .pt-lg-2 {
+ padding-top: .5rem !important
+ }
+
+ .pt-lg-3 {
+ padding-top: 1rem !important
+ }
+
+ .pt-lg-4 {
+ padding-top: 1.5rem !important
+ }
+
+ .pt-lg-5 {
+ padding-top: 3rem !important
+ }
+
+ .pe-lg-0 {
+ padding-right: 0 !important
+ }
+
+ .pe-lg-1 {
+ padding-right: .25rem !important
+ }
+
+ .pe-lg-2 {
+ padding-right: .5rem !important
+ }
+
+ .pe-lg-3 {
+ padding-right: 1rem !important
+ }
+
+ .pe-lg-4 {
+ padding-right: 1.5rem !important
+ }
+
+ .pe-lg-5 {
+ padding-right: 3rem !important
+ }
+
+ .pb-lg-0 {
+ padding-bottom: 0 !important
+ }
+
+ .pb-lg-1 {
+ padding-bottom: .25rem !important
+ }
+
+ .pb-lg-2 {
+ padding-bottom: .5rem !important
+ }
+
+ .pb-lg-3 {
+ padding-bottom: 1rem !important
+ }
+
+ .pb-lg-4 {
+ padding-bottom: 1.5rem !important
+ }
+
+ .pb-lg-5 {
+ padding-bottom: 3rem !important
+ }
+
+ .ps-lg-0 {
+ padding-left: 0 !important
+ }
+
+ .ps-lg-1 {
+ padding-left: .25rem !important
+ }
+
+ .ps-lg-2 {
+ padding-left: .5rem !important
+ }
+
+ .ps-lg-3 {
+ padding-left: 1rem !important
+ }
+
+ .ps-lg-4 {
+ padding-left: 1.5rem !important
+ }
+
+ .ps-lg-5 {
+ padding-left: 3rem !important
+ }
+
+ .gap-lg-0 {
+ gap: 0 !important
+ }
+
+ .gap-lg-1 {
+ gap: .25rem !important
+ }
+
+ .gap-lg-2 {
+ gap: .5rem !important
+ }
+
+ .gap-lg-3 {
+ gap: 1rem !important
+ }
+
+ .gap-lg-4 {
+ gap: 1.5rem !important
+ }
+
+ .gap-lg-5 {
+ gap: 3rem !important
+ }
+
+ .row-gap-lg-0 {
+ row-gap: 0 !important
+ }
+
+ .row-gap-lg-1 {
+ row-gap: .25rem !important
+ }
+
+ .row-gap-lg-2 {
+ row-gap: .5rem !important
+ }
+
+ .row-gap-lg-3 {
+ row-gap: 1rem !important
+ }
+
+ .row-gap-lg-4 {
+ row-gap: 1.5rem !important
+ }
+
+ .row-gap-lg-5 {
+ row-gap: 3rem !important
+ }
+
+ .column-gap-lg-0 {
+ -moz-column-gap: 0 !important;
+ column-gap: 0 !important
+ }
+
+ .column-gap-lg-1 {
+ -moz-column-gap: 0.25rem !important;
+ column-gap: .25rem !important
+ }
+
+ .column-gap-lg-2 {
+ -moz-column-gap: 0.5rem !important;
+ column-gap: .5rem !important
+ }
+
+ .column-gap-lg-3 {
+ -moz-column-gap: 1rem !important;
+ column-gap: 1rem !important
+ }
+
+ .column-gap-lg-4 {
+ -moz-column-gap: 1.5rem !important;
+ column-gap: 1.5rem !important
+ }
+
+ .column-gap-lg-5 {
+ -moz-column-gap: 3rem !important;
+ column-gap: 3rem !important
+ }
+
+ .text-lg-start {
+ text-align: left !important
+ }
+
+ .text-lg-end {
+ text-align: right !important
+ }
+
+ .text-lg-center {
+ text-align: center !important
+ }
+}
+
+@media (min-width:1200px) {
+ .float-xl-start {
+ float: left !important
+ }
+
+ .float-xl-end {
+ float: right !important
+ }
+
+ .float-xl-none {
+ float: none !important
+ }
+
+ .object-fit-xl-contain {
+ -o-object-fit: contain !important;
+ object-fit: contain !important
+ }
+
+ .object-fit-xl-cover {
+ -o-object-fit: cover !important;
+ object-fit: cover !important
+ }
+
+ .object-fit-xl-fill {
+ -o-object-fit: fill !important;
+ object-fit: fill !important
+ }
+
+ .object-fit-xl-scale {
+ -o-object-fit: scale-down !important;
+ object-fit: scale-down !important
+ }
+
+ .object-fit-xl-none {
+ -o-object-fit: none !important;
+ object-fit: none !important
+ }
+
+ .d-xl-inline {
+ display: inline !important
+ }
+
+ .d-xl-inline-block {
+ display: inline-block !important
+ }
+
+ .d-xl-block {
+ display: block !important
+ }
+
+ .d-xl-grid {
+ display: grid !important
+ }
+
+ .d-xl-inline-grid {
+ display: inline-grid !important
+ }
+
+ .d-xl-table {
+ display: table !important
+ }
+
+ .d-xl-table-row {
+ display: table-row !important
+ }
+
+ .d-xl-table-cell {
+ display: table-cell !important
+ }
+
+ .d-xl-flex {
+ display: flex !important
+ }
+
+ .d-xl-inline-flex {
+ display: inline-flex !important
+ }
+
+ .d-xl-none {
+ display: none !important
+ }
+
+ .flex-xl-fill {
+ flex: 1 1 auto !important
+ }
+
+ .flex-xl-row {
+ flex-direction: row !important
+ }
+
+ .flex-xl-column {
+ flex-direction: column !important
+ }
+
+ .flex-xl-row-reverse {
+ flex-direction: row-reverse !important
+ }
+
+ .flex-xl-column-reverse {
+ flex-direction: column-reverse !important
+ }
+
+ .flex-xl-grow-0 {
+ flex-grow: 0 !important
+ }
+
+ .flex-xl-grow-1 {
+ flex-grow: 1 !important
+ }
+
+ .flex-xl-shrink-0 {
+ flex-shrink: 0 !important
+ }
+
+ .flex-xl-shrink-1 {
+ flex-shrink: 1 !important
+ }
+
+ .flex-xl-wrap {
+ flex-wrap: wrap !important
+ }
+
+ .flex-xl-nowrap {
+ flex-wrap: nowrap !important
+ }
+
+ .flex-xl-wrap-reverse {
+ flex-wrap: wrap-reverse !important
+ }
+
+ .justify-content-xl-start {
+ justify-content: flex-start !important
+ }
+
+ .justify-content-xl-end {
+ justify-content: flex-end !important
+ }
+
+ .justify-content-xl-center {
+ justify-content: center !important
+ }
+
+ .justify-content-xl-between {
+ justify-content: space-between !important
+ }
+
+ .justify-content-xl-around {
+ justify-content: space-around !important
+ }
+
+ .justify-content-xl-evenly {
+ justify-content: space-evenly !important
+ }
+
+ .align-items-xl-start {
+ align-items: flex-start !important
+ }
+
+ .align-items-xl-end {
+ align-items: flex-end !important
+ }
+
+ .align-items-xl-center {
+ align-items: center !important
+ }
+
+ .align-items-xl-baseline {
+ align-items: baseline !important
+ }
+
+ .align-items-xl-stretch {
+ align-items: stretch !important
+ }
+
+ .align-content-xl-start {
+ align-content: flex-start !important
+ }
+
+ .align-content-xl-end {
+ align-content: flex-end !important
+ }
+
+ .align-content-xl-center {
+ align-content: center !important
+ }
+
+ .align-content-xl-between {
+ align-content: space-between !important
+ }
+
+ .align-content-xl-around {
+ align-content: space-around !important
+ }
+
+ .align-content-xl-stretch {
+ align-content: stretch !important
+ }
+
+ .align-self-xl-auto {
+ align-self: auto !important
+ }
+
+ .align-self-xl-start {
+ align-self: flex-start !important
+ }
+
+ .align-self-xl-end {
+ align-self: flex-end !important
+ }
+
+ .align-self-xl-center {
+ align-self: center !important
+ }
+
+ .align-self-xl-baseline {
+ align-self: baseline !important
+ }
+
+ .align-self-xl-stretch {
+ align-self: stretch !important
+ }
+
+ .order-xl-first {
+ order: -1 !important
+ }
+
+ .order-xl-0 {
+ order: 0 !important
+ }
+
+ .order-xl-1 {
+ order: 1 !important
+ }
+
+ .order-xl-2 {
+ order: 2 !important
+ }
+
+ .order-xl-3 {
+ order: 3 !important
+ }
+
+ .order-xl-4 {
+ order: 4 !important
+ }
+
+ .order-xl-5 {
+ order: 5 !important
+ }
+
+ .order-xl-last {
+ order: 6 !important
+ }
+
+ .m-xl-0 {
+ margin: 0 !important
+ }
+
+ .m-xl-1 {
+ margin: .25rem !important
+ }
+
+ .m-xl-2 {
+ margin: .5rem !important
+ }
+
+ .m-xl-3 {
+ margin: 1rem !important
+ }
+
+ .m-xl-4 {
+ margin: 1.5rem !important
+ }
+
+ .m-xl-5 {
+ margin: 3rem !important
+ }
+
+ .m-xl-auto {
+ margin: auto !important
+ }
+
+ .mx-xl-0 {
+ margin-right: 0 !important;
+ margin-left: 0 !important
+ }
+
+ .mx-xl-1 {
+ margin-right: .25rem !important;
+ margin-left: .25rem !important
+ }
+
+ .mx-xl-2 {
+ margin-right: .5rem !important;
+ margin-left: .5rem !important
+ }
+
+ .mx-xl-3 {
+ margin-right: 1rem !important;
+ margin-left: 1rem !important
+ }
+
+ .mx-xl-4 {
+ margin-right: 1.5rem !important;
+ margin-left: 1.5rem !important
+ }
+
+ .mx-xl-5 {
+ margin-right: 3rem !important;
+ margin-left: 3rem !important
+ }
+
+ .mx-xl-auto {
+ margin-right: auto !important;
+ margin-left: auto !important
+ }
+
+ .my-xl-0 {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important
+ }
+
+ .my-xl-1 {
+ margin-top: .25rem !important;
+ margin-bottom: .25rem !important
+ }
+
+ .my-xl-2 {
+ margin-top: .5rem !important;
+ margin-bottom: .5rem !important
+ }
+
+ .my-xl-3 {
+ margin-top: 1rem !important;
+ margin-bottom: 1rem !important
+ }
+
+ .my-xl-4 {
+ margin-top: 1.5rem !important;
+ margin-bottom: 1.5rem !important
+ }
+
+ .my-xl-5 {
+ margin-top: 3rem !important;
+ margin-bottom: 3rem !important
+ }
+
+ .my-xl-auto {
+ margin-top: auto !important;
+ margin-bottom: auto !important
+ }
+
+ .mt-xl-0 {
+ margin-top: 0 !important
+ }
+
+ .mt-xl-1 {
+ margin-top: .25rem !important
+ }
+
+ .mt-xl-2 {
+ margin-top: .5rem !important
+ }
+
+ .mt-xl-3 {
+ margin-top: 1rem !important
+ }
+
+ .mt-xl-4 {
+ margin-top: 1.5rem !important
+ }
+
+ .mt-xl-5 {
+ margin-top: 3rem !important
+ }
+
+ .mt-xl-auto {
+ margin-top: auto !important
+ }
+
+ .me-xl-0 {
+ margin-right: 0 !important
+ }
+
+ .me-xl-1 {
+ margin-right: .25rem !important
+ }
+
+ .me-xl-2 {
+ margin-right: .5rem !important
+ }
+
+ .me-xl-3 {
+ margin-right: 1rem !important
+ }
+
+ .me-xl-4 {
+ margin-right: 1.5rem !important
+ }
+
+ .me-xl-5 {
+ margin-right: 3rem !important
+ }
+
+ .me-xl-auto {
+ margin-right: auto !important
+ }
+
+ .mb-xl-0 {
+ margin-bottom: 0 !important
+ }
+
+ .mb-xl-1 {
+ margin-bottom: .25rem !important
+ }
+
+ .mb-xl-2 {
+ margin-bottom: .5rem !important
+ }
+
+ .mb-xl-3 {
+ margin-bottom: 1rem !important
+ }
+
+ .mb-xl-4 {
+ margin-bottom: 1.5rem !important
+ }
+
+ .mb-xl-5 {
+ margin-bottom: 3rem !important
+ }
+
+ .mb-xl-auto {
+ margin-bottom: auto !important
+ }
+
+ .ms-xl-0 {
+ margin-left: 0 !important
+ }
+
+ .ms-xl-1 {
+ margin-left: .25rem !important
+ }
+
+ .ms-xl-2 {
+ margin-left: .5rem !important
+ }
+
+ .ms-xl-3 {
+ margin-left: 1rem !important
+ }
+
+ .ms-xl-4 {
+ margin-left: 1.5rem !important
+ }
+
+ .ms-xl-5 {
+ margin-left: 3rem !important
+ }
+
+ .ms-xl-auto {
+ margin-left: auto !important
+ }
+
+ .p-xl-0 {
+ padding: 0 !important
+ }
+
+ .p-xl-1 {
+ padding: .25rem !important
+ }
+
+ .p-xl-2 {
+ padding: .5rem !important
+ }
+
+ .p-xl-3 {
+ padding: 1rem !important
+ }
+
+ .p-xl-4 {
+ padding: 1.5rem !important
+ }
+
+ .p-xl-5 {
+ padding: 3rem !important
+ }
+
+ .px-xl-0 {
+ padding-right: 0 !important;
+ padding-left: 0 !important
+ }
+
+ .px-xl-1 {
+ padding-right: .25rem !important;
+ padding-left: .25rem !important
+ }
+
+ .px-xl-2 {
+ padding-right: .5rem !important;
+ padding-left: .5rem !important
+ }
+
+ .px-xl-3 {
+ padding-right: 1rem !important;
+ padding-left: 1rem !important
+ }
+
+ .px-xl-4 {
+ padding-right: 1.5rem !important;
+ padding-left: 1.5rem !important
+ }
+
+ .px-xl-5 {
+ padding-right: 3rem !important;
+ padding-left: 3rem !important
+ }
+
+ .py-xl-0 {
+ padding-top: 0 !important;
+ padding-bottom: 0 !important
+ }
+
+ .py-xl-1 {
+ padding-top: .25rem !important;
+ padding-bottom: .25rem !important
+ }
+
+ .py-xl-2 {
+ padding-top: .5rem !important;
+ padding-bottom: .5rem !important
+ }
+
+ .py-xl-3 {
+ padding-top: 1rem !important;
+ padding-bottom: 1rem !important
+ }
+
+ .py-xl-4 {
+ padding-top: 1.5rem !important;
+ padding-bottom: 1.5rem !important
+ }
+
+ .py-xl-5 {
+ padding-top: 3rem !important;
+ padding-bottom: 3rem !important
+ }
+
+ .pt-xl-0 {
+ padding-top: 0 !important
+ }
+
+ .pt-xl-1 {
+ padding-top: .25rem !important
+ }
+
+ .pt-xl-2 {
+ padding-top: .5rem !important
+ }
+
+ .pt-xl-3 {
+ padding-top: 1rem !important
+ }
+
+ .pt-xl-4 {
+ padding-top: 1.5rem !important
+ }
+
+ .pt-xl-5 {
+ padding-top: 3rem !important
+ }
+
+ .pe-xl-0 {
+ padding-right: 0 !important
+ }
+
+ .pe-xl-1 {
+ padding-right: .25rem !important
+ }
+
+ .pe-xl-2 {
+ padding-right: .5rem !important
+ }
+
+ .pe-xl-3 {
+ padding-right: 1rem !important
+ }
+
+ .pe-xl-4 {
+ padding-right: 1.5rem !important
+ }
+
+ .pe-xl-5 {
+ padding-right: 3rem !important
+ }
+
+ .pb-xl-0 {
+ padding-bottom: 0 !important
+ }
+
+ .pb-xl-1 {
+ padding-bottom: .25rem !important
+ }
+
+ .pb-xl-2 {
+ padding-bottom: .5rem !important
+ }
+
+ .pb-xl-3 {
+ padding-bottom: 1rem !important
+ }
+
+ .pb-xl-4 {
+ padding-bottom: 1.5rem !important
+ }
+
+ .pb-xl-5 {
+ padding-bottom: 3rem !important
+ }
+
+ .ps-xl-0 {
+ padding-left: 0 !important
+ }
+
+ .ps-xl-1 {
+ padding-left: .25rem !important
+ }
+
+ .ps-xl-2 {
+ padding-left: .5rem !important
+ }
+
+ .ps-xl-3 {
+ padding-left: 1rem !important
+ }
+
+ .ps-xl-4 {
+ padding-left: 1.5rem !important
+ }
+
+ .ps-xl-5 {
+ padding-left: 3rem !important
+ }
+
+ .gap-xl-0 {
+ gap: 0 !important
+ }
+
+ .gap-xl-1 {
+ gap: .25rem !important
+ }
+
+ .gap-xl-2 {
+ gap: .5rem !important
+ }
+
+ .gap-xl-3 {
+ gap: 1rem !important
+ }
+
+ .gap-xl-4 {
+ gap: 1.5rem !important
+ }
+
+ .gap-xl-5 {
+ gap: 3rem !important
+ }
+
+ .row-gap-xl-0 {
+ row-gap: 0 !important
+ }
+
+ .row-gap-xl-1 {
+ row-gap: .25rem !important
+ }
+
+ .row-gap-xl-2 {
+ row-gap: .5rem !important
+ }
+
+ .row-gap-xl-3 {
+ row-gap: 1rem !important
+ }
+
+ .row-gap-xl-4 {
+ row-gap: 1.5rem !important
+ }
+
+ .row-gap-xl-5 {
+ row-gap: 3rem !important
+ }
+
+ .column-gap-xl-0 {
+ -moz-column-gap: 0 !important;
+ column-gap: 0 !important
+ }
+
+ .column-gap-xl-1 {
+ -moz-column-gap: 0.25rem !important;
+ column-gap: .25rem !important
+ }
+
+ .column-gap-xl-2 {
+ -moz-column-gap: 0.5rem !important;
+ column-gap: .5rem !important
+ }
+
+ .column-gap-xl-3 {
+ -moz-column-gap: 1rem !important;
+ column-gap: 1rem !important
+ }
+
+ .column-gap-xl-4 {
+ -moz-column-gap: 1.5rem !important;
+ column-gap: 1.5rem !important
+ }
+
+ .column-gap-xl-5 {
+ -moz-column-gap: 3rem !important;
+ column-gap: 3rem !important
+ }
+
+ .text-xl-start {
+ text-align: left !important
+ }
+
+ .text-xl-end {
+ text-align: right !important
+ }
+
+ .text-xl-center {
+ text-align: center !important
+ }
+}
+
+@media (min-width:1400px) {
+ .float-xxl-start {
+ float: left !important
+ }
+
+ .float-xxl-end {
+ float: right !important
+ }
+
+ .float-xxl-none {
+ float: none !important
+ }
+
+ .object-fit-xxl-contain {
+ -o-object-fit: contain !important;
+ object-fit: contain !important
+ }
+
+ .object-fit-xxl-cover {
+ -o-object-fit: cover !important;
+ object-fit: cover !important
+ }
+
+ .object-fit-xxl-fill {
+ -o-object-fit: fill !important;
+ object-fit: fill !important
+ }
+
+ .object-fit-xxl-scale {
+ -o-object-fit: scale-down !important;
+ object-fit: scale-down !important
+ }
+
+ .object-fit-xxl-none {
+ -o-object-fit: none !important;
+ object-fit: none !important
+ }
+
+ .d-xxl-inline {
+ display: inline !important
+ }
+
+ .d-xxl-inline-block {
+ display: inline-block !important
+ }
+
+ .d-xxl-block {
+ display: block !important
+ }
+
+ .d-xxl-grid {
+ display: grid !important
+ }
+
+ .d-xxl-inline-grid {
+ display: inline-grid !important
+ }
+
+ .d-xxl-table {
+ display: table !important
+ }
+
+ .d-xxl-table-row {
+ display: table-row !important
+ }
+
+ .d-xxl-table-cell {
+ display: table-cell !important
+ }
+
+ .d-xxl-flex {
+ display: flex !important
+ }
+
+ .d-xxl-inline-flex {
+ display: inline-flex !important
+ }
+
+ .d-xxl-none {
+ display: none !important
+ }
+
+ .flex-xxl-fill {
+ flex: 1 1 auto !important
+ }
+
+ .flex-xxl-row {
+ flex-direction: row !important
+ }
+
+ .flex-xxl-column {
+ flex-direction: column !important
+ }
+
+ .flex-xxl-row-reverse {
+ flex-direction: row-reverse !important
+ }
+
+ .flex-xxl-column-reverse {
+ flex-direction: column-reverse !important
+ }
+
+ .flex-xxl-grow-0 {
+ flex-grow: 0 !important
+ }
+
+ .flex-xxl-grow-1 {
+ flex-grow: 1 !important
+ }
+
+ .flex-xxl-shrink-0 {
+ flex-shrink: 0 !important
+ }
+
+ .flex-xxl-shrink-1 {
+ flex-shrink: 1 !important
+ }
+
+ .flex-xxl-wrap {
+ flex-wrap: wrap !important
+ }
+
+ .flex-xxl-nowrap {
+ flex-wrap: nowrap !important
+ }
+
+ .flex-xxl-wrap-reverse {
+ flex-wrap: wrap-reverse !important
+ }
+
+ .justify-content-xxl-start {
+ justify-content: flex-start !important
+ }
+
+ .justify-content-xxl-end {
+ justify-content: flex-end !important
+ }
+
+ .justify-content-xxl-center {
+ justify-content: center !important
+ }
+
+ .justify-content-xxl-between {
+ justify-content: space-between !important
+ }
+
+ .justify-content-xxl-around {
+ justify-content: space-around !important
+ }
+
+ .justify-content-xxl-evenly {
+ justify-content: space-evenly !important
+ }
+
+ .align-items-xxl-start {
+ align-items: flex-start !important
+ }
+
+ .align-items-xxl-end {
+ align-items: flex-end !important
+ }
+
+ .align-items-xxl-center {
+ align-items: center !important
+ }
+
+ .align-items-xxl-baseline {
+ align-items: baseline !important
+ }
+
+ .align-items-xxl-stretch {
+ align-items: stretch !important
+ }
+
+ .align-content-xxl-start {
+ align-content: flex-start !important
+ }
+
+ .align-content-xxl-end {
+ align-content: flex-end !important
+ }
+
+ .align-content-xxl-center {
+ align-content: center !important
+ }
+
+ .align-content-xxl-between {
+ align-content: space-between !important
+ }
+
+ .align-content-xxl-around {
+ align-content: space-around !important
+ }
+
+ .align-content-xxl-stretch {
+ align-content: stretch !important
+ }
+
+ .align-self-xxl-auto {
+ align-self: auto !important
+ }
+
+ .align-self-xxl-start {
+ align-self: flex-start !important
+ }
+
+ .align-self-xxl-end {
+ align-self: flex-end !important
+ }
+
+ .align-self-xxl-center {
+ align-self: center !important
+ }
+
+ .align-self-xxl-baseline {
+ align-self: baseline !important
+ }
+
+ .align-self-xxl-stretch {
+ align-self: stretch !important
+ }
+
+ .order-xxl-first {
+ order: -1 !important
+ }
+
+ .order-xxl-0 {
+ order: 0 !important
+ }
+
+ .order-xxl-1 {
+ order: 1 !important
+ }
+
+ .order-xxl-2 {
+ order: 2 !important
+ }
+
+ .order-xxl-3 {
+ order: 3 !important
+ }
+
+ .order-xxl-4 {
+ order: 4 !important
+ }
+
+ .order-xxl-5 {
+ order: 5 !important
+ }
+
+ .order-xxl-last {
+ order: 6 !important
+ }
+
+ .m-xxl-0 {
+ margin: 0 !important
+ }
+
+ .m-xxl-1 {
+ margin: .25rem !important
+ }
+
+ .m-xxl-2 {
+ margin: .5rem !important
+ }
+
+ .m-xxl-3 {
+ margin: 1rem !important
+ }
+
+ .m-xxl-4 {
+ margin: 1.5rem !important
+ }
+
+ .m-xxl-5 {
+ margin: 3rem !important
+ }
+
+ .m-xxl-auto {
+ margin: auto !important
+ }
+
+ .mx-xxl-0 {
+ margin-right: 0 !important;
+ margin-left: 0 !important
+ }
+
+ .mx-xxl-1 {
+ margin-right: .25rem !important;
+ margin-left: .25rem !important
+ }
+
+ .mx-xxl-2 {
+ margin-right: .5rem !important;
+ margin-left: .5rem !important
+ }
+
+ .mx-xxl-3 {
+ margin-right: 1rem !important;
+ margin-left: 1rem !important
+ }
+
+ .mx-xxl-4 {
+ margin-right: 1.5rem !important;
+ margin-left: 1.5rem !important
+ }
+
+ .mx-xxl-5 {
+ margin-right: 3rem !important;
+ margin-left: 3rem !important
+ }
+
+ .mx-xxl-auto {
+ margin-right: auto !important;
+ margin-left: auto !important
+ }
+
+ .my-xxl-0 {
+ margin-top: 0 !important;
+ margin-bottom: 0 !important
+ }
+
+ .my-xxl-1 {
+ margin-top: .25rem !important;
+ margin-bottom: .25rem !important
+ }
+
+ .my-xxl-2 {
+ margin-top: .5rem !important;
+ margin-bottom: .5rem !important
+ }
+
+ .my-xxl-3 {
+ margin-top: 1rem !important;
+ margin-bottom: 1rem !important
+ }
+
+ .my-xxl-4 {
+ margin-top: 1.5rem !important;
+ margin-bottom: 1.5rem !important
+ }
+
+ .my-xxl-5 {
+ margin-top: 3rem !important;
+ margin-bottom: 3rem !important
+ }
+
+ .my-xxl-auto {
+ margin-top: auto !important;
+ margin-bottom: auto !important
+ }
+
+ .mt-xxl-0 {
+ margin-top: 0 !important
+ }
+
+ .mt-xxl-1 {
+ margin-top: .25rem !important
+ }
+
+ .mt-xxl-2 {
+ margin-top: .5rem !important
+ }
+
+ .mt-xxl-3 {
+ margin-top: 1rem !important
+ }
+
+ .mt-xxl-4 {
+ margin-top: 1.5rem !important
+ }
+
+ .mt-xxl-5 {
+ margin-top: 3rem !important
+ }
+
+ .mt-xxl-auto {
+ margin-top: auto !important
+ }
+
+ .me-xxl-0 {
+ margin-right: 0 !important
+ }
+
+ .me-xxl-1 {
+ margin-right: .25rem !important
+ }
+
+ .me-xxl-2 {
+ margin-right: .5rem !important
+ }
+
+ .me-xxl-3 {
+ margin-right: 1rem !important
+ }
+
+ .me-xxl-4 {
+ margin-right: 1.5rem !important
+ }
+
+ .me-xxl-5 {
+ margin-right: 3rem !important
+ }
+
+ .me-xxl-auto {
+ margin-right: auto !important
+ }
+
+ .mb-xxl-0 {
+ margin-bottom: 0 !important
+ }
+
+ .mb-xxl-1 {
+ margin-bottom: .25rem !important
+ }
+
+ .mb-xxl-2 {
+ margin-bottom: .5rem !important
+ }
+
+ .mb-xxl-3 {
+ margin-bottom: 1rem !important
+ }
+
+ .mb-xxl-4 {
+ margin-bottom: 1.5rem !important
+ }
+
+ .mb-xxl-5 {
+ margin-bottom: 3rem !important
+ }
+
+ .mb-xxl-auto {
+ margin-bottom: auto !important
+ }
+
+ .ms-xxl-0 {
+ margin-left: 0 !important
+ }
+
+ .ms-xxl-1 {
+ margin-left: .25rem !important
+ }
+
+ .ms-xxl-2 {
+ margin-left: .5rem !important
+ }
+
+ .ms-xxl-3 {
+ margin-left: 1rem !important
+ }
+
+ .ms-xxl-4 {
+ margin-left: 1.5rem !important
+ }
+
+ .ms-xxl-5 {
+ margin-left: 3rem !important
+ }
+
+ .ms-xxl-auto {
+ margin-left: auto !important
+ }
+
+ .p-xxl-0 {
+ padding: 0 !important
+ }
+
+ .p-xxl-1 {
+ padding: .25rem !important
+ }
+
+ .p-xxl-2 {
+ padding: .5rem !important
+ }
+
+ .p-xxl-3 {
+ padding: 1rem !important
+ }
+
+ .p-xxl-4 {
+ padding: 1.5rem !important
+ }
+
+ .p-xxl-5 {
+ padding: 3rem !important
+ }
+
+ .px-xxl-0 {
+ padding-right: 0 !important;
+ padding-left: 0 !important
+ }
+
+ .px-xxl-1 {
+ padding-right: .25rem !important;
+ padding-left: .25rem !important
+ }
+
+ .px-xxl-2 {
+ padding-right: .5rem !important;
+ padding-left: .5rem !important
+ }
+
+ .px-xxl-3 {
+ padding-right: 1rem !important;
+ padding-left: 1rem !important
+ }
+
+ .px-xxl-4 {
+ padding-right: 1.5rem !important;
+ padding-left: 1.5rem !important
+ }
+
+ .px-xxl-5 {
+ padding-right: 3rem !important;
+ padding-left: 3rem !important
+ }
+
+ .py-xxl-0 {
+ padding-top: 0 !important;
+ padding-bottom: 0 !important
+ }
+
+ .py-xxl-1 {
+ padding-top: .25rem !important;
+ padding-bottom: .25rem !important
+ }
+
+ .py-xxl-2 {
+ padding-top: .5rem !important;
+ padding-bottom: .5rem !important
+ }
+
+ .py-xxl-3 {
+ padding-top: 1rem !important;
+ padding-bottom: 1rem !important
+ }
+
+ .py-xxl-4 {
+ padding-top: 1.5rem !important;
+ padding-bottom: 1.5rem !important
+ }
+
+ .py-xxl-5 {
+ padding-top: 3rem !important;
+ padding-bottom: 3rem !important
+ }
+
+ .pt-xxl-0 {
+ padding-top: 0 !important
+ }
+
+ .pt-xxl-1 {
+ padding-top: .25rem !important
+ }
+
+ .pt-xxl-2 {
+ padding-top: .5rem !important
+ }
+
+ .pt-xxl-3 {
+ padding-top: 1rem !important
+ }
+
+ .pt-xxl-4 {
+ padding-top: 1.5rem !important
+ }
+
+ .pt-xxl-5 {
+ padding-top: 3rem !important
+ }
+
+ .pe-xxl-0 {
+ padding-right: 0 !important
+ }
+
+ .pe-xxl-1 {
+ padding-right: .25rem !important
+ }
+
+ .pe-xxl-2 {
+ padding-right: .5rem !important
+ }
+
+ .pe-xxl-3 {
+ padding-right: 1rem !important
+ }
+
+ .pe-xxl-4 {
+ padding-right: 1.5rem !important
+ }
+
+ .pe-xxl-5 {
+ padding-right: 3rem !important
+ }
+
+ .pb-xxl-0 {
+ padding-bottom: 0 !important
+ }
+
+ .pb-xxl-1 {
+ padding-bottom: .25rem !important
+ }
+
+ .pb-xxl-2 {
+ padding-bottom: .5rem !important
+ }
+
+ .pb-xxl-3 {
+ padding-bottom: 1rem !important
+ }
+
+ .pb-xxl-4 {
+ padding-bottom: 1.5rem !important
+ }
+
+ .pb-xxl-5 {
+ padding-bottom: 3rem !important
+ }
+
+ .ps-xxl-0 {
+ padding-left: 0 !important
+ }
+
+ .ps-xxl-1 {
+ padding-left: .25rem !important
+ }
+
+ .ps-xxl-2 {
+ padding-left: .5rem !important
+ }
+
+ .ps-xxl-3 {
+ padding-left: 1rem !important
+ }
+
+ .ps-xxl-4 {
+ padding-left: 1.5rem !important
+ }
+
+ .ps-xxl-5 {
+ padding-left: 3rem !important
+ }
+
+ .gap-xxl-0 {
+ gap: 0 !important
+ }
+
+ .gap-xxl-1 {
+ gap: .25rem !important
+ }
+
+ .gap-xxl-2 {
+ gap: .5rem !important
+ }
+
+ .gap-xxl-3 {
+ gap: 1rem !important
+ }
+
+ .gap-xxl-4 {
+ gap: 1.5rem !important
+ }
+
+ .gap-xxl-5 {
+ gap: 3rem !important
+ }
+
+ .row-gap-xxl-0 {
+ row-gap: 0 !important
+ }
+
+ .row-gap-xxl-1 {
+ row-gap: .25rem !important
+ }
+
+ .row-gap-xxl-2 {
+ row-gap: .5rem !important
+ }
+
+ .row-gap-xxl-3 {
+ row-gap: 1rem !important
+ }
+
+ .row-gap-xxl-4 {
+ row-gap: 1.5rem !important
+ }
+
+ .row-gap-xxl-5 {
+ row-gap: 3rem !important
+ }
+
+ .column-gap-xxl-0 {
+ -moz-column-gap: 0 !important;
+ column-gap: 0 !important
+ }
+
+ .column-gap-xxl-1 {
+ -moz-column-gap: 0.25rem !important;
+ column-gap: .25rem !important
+ }
+
+ .column-gap-xxl-2 {
+ -moz-column-gap: 0.5rem !important;
+ column-gap: .5rem !important
+ }
+
+ .column-gap-xxl-3 {
+ -moz-column-gap: 1rem !important;
+ column-gap: 1rem !important
+ }
+
+ .column-gap-xxl-4 {
+ -moz-column-gap: 1.5rem !important;
+ column-gap: 1.5rem !important
+ }
+
+ .column-gap-xxl-5 {
+ -moz-column-gap: 3rem !important;
+ column-gap: 3rem !important
+ }
+
+ .text-xxl-start {
+ text-align: left !important
+ }
+
+ .text-xxl-end {
+ text-align: right !important
+ }
+
+ .text-xxl-center {
+ text-align: center !important
+ }
+}
+
+@media (min-width:1200px) {
+ .fs-1 {
+ font-size: 2.5rem !important
+ }
+
+ .fs-2 {
+ font-size: 2rem !important
+ }
+
+ .fs-3 {
+ font-size: 1.75rem !important
+ }
+
+ .fs-4 {
+ font-size: 1.5rem !important
+ }
+}
+
+@media print {
+ .d-print-inline {
+ display: inline !important
+ }
+
+ .d-print-inline-block {
+ display: inline-block !important
+ }
+
+ .d-print-block {
+ display: block !important
+ }
+
+ .d-print-grid {
+ display: grid !important
+ }
+
+ .d-print-inline-grid {
+ display: inline-grid !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
+ }
+
+ .d-print-none {
+ display: none !important
+ }
+}
+
+/*# sourceMappingURL=bootstrap.min.css.map */
\ No newline at end of file
diff --git a/web/assets/bootstrap/bootstrap.min.js b/web/assets/bootstrap/bootstrap.min.js
new file mode 100644
index 00000000..341df50e
--- /dev/null
+++ b/web/assets/bootstrap/bootstrap.min.js
@@ -0,0 +1,7 @@
+/*!
+ * Bootstrap v5.3.3 (https://getbootstrap.com/)
+ * Copyright 2011-2024 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
+ * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
+ */
+!function (t, e) { "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : (t = "undefined" != typeof globalThis ? globalThis : t || self).bootstrap = e() }(this, (function () { "use strict"; const t = new Map, e = { set(e, i, n) { t.has(e) || t.set(e, new Map); const s = t.get(e); s.has(i) || 0 === s.size ? s.set(i, n) : console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`) }, get: (e, i) => t.has(e) && t.get(e).get(i) || null, remove(e, i) { if (!t.has(e)) return; const n = t.get(e); n.delete(i), 0 === n.size && t.delete(e) } }, i = "transitionend", n = t => (t && window.CSS && window.CSS.escape && (t = t.replace(/#([^\s"#']+)/g, ((t, e) => `#${CSS.escape(e)}`))), t), s = t => { t.dispatchEvent(new Event(i)) }, o = t => !(!t || "object" != typeof t) && (void 0 !== t.jquery && (t = t[0]), void 0 !== t.nodeType), r = t => o(t) ? t.jquery ? t[0] : t : "string" == typeof t && t.length > 0 ? document.querySelector(n(t)) : null, a = t => { if (!o(t) || 0 === t.getClientRects().length) return !1; const e = "visible" === getComputedStyle(t).getPropertyValue("visibility"), i = t.closest("details:not([open])"); if (!i) return e; if (i !== t) { const e = t.closest("summary"); if (e && e.parentNode !== i) return !1; if (null === e) return !1 } return e }, l = t => !t || t.nodeType !== Node.ELEMENT_NODE || !!t.classList.contains("disabled") || (void 0 !== t.disabled ? t.disabled : t.hasAttribute("disabled") && "false" !== t.getAttribute("disabled")), c = t => { if (!document.documentElement.attachShadow) return null; if ("function" == typeof t.getRootNode) { const e = t.getRootNode(); return e instanceof ShadowRoot ? e : null } return t instanceof ShadowRoot ? t : t.parentNode ? c(t.parentNode) : null }, h = () => { }, d = t => { t.offsetHeight }, u = () => window.jQuery && !document.body.hasAttribute("data-bs-no-jquery") ? window.jQuery : null, f = [], p = () => "rtl" === document.documentElement.dir, m = t => { var e; e = () => { const e = u(); if (e) { const i = t.NAME, n = e.fn[i]; e.fn[i] = t.jQueryInterface, e.fn[i].Constructor = t, e.fn[i].noConflict = () => (e.fn[i] = n, t.jQueryInterface) } }, "loading" === document.readyState ? (f.length || document.addEventListener("DOMContentLoaded", (() => { for (const t of f) t() })), f.push(e)) : e() }, g = (t, e = [], i = t) => "function" == typeof t ? t(...e) : i, _ = (t, e, n = !0) => { if (!n) return void g(t); const o = (t => { if (!t) return 0; let { transitionDuration: e, transitionDelay: i } = window.getComputedStyle(t); const n = Number.parseFloat(e), s = Number.parseFloat(i); return n || s ? (e = e.split(",")[0], i = i.split(",")[0], 1e3 * (Number.parseFloat(e) + Number.parseFloat(i))) : 0 })(e) + 5; let r = !1; const a = ({ target: n }) => { n === e && (r = !0, e.removeEventListener(i, a), g(t)) }; e.addEventListener(i, a), setTimeout((() => { r || s(e) }), o) }, b = (t, e, i, n) => { const s = t.length; let o = t.indexOf(e); return -1 === o ? !i && n ? t[s - 1] : t[0] : (o += i ? 1 : -1, n && (o = (o + s) % s), t[Math.max(0, Math.min(o, s - 1))]) }, v = /[^.]*(?=\..*)\.|.*/, y = /\..*/, w = /::\d+$/, A = {}; let E = 1; const T = { mouseenter: "mouseover", mouseleave: "mouseout" }, C = new Set(["click", "dblclick", "mouseup", "mousedown", "contextmenu", "mousewheel", "DOMMouseScroll", "mouseover", "mouseout", "mousemove", "selectstart", "selectend", "keydown", "keypress", "keyup", "orientationchange", "touchstart", "touchmove", "touchend", "touchcancel", "pointerdown", "pointermove", "pointerup", "pointerleave", "pointercancel", "gesturestart", "gesturechange", "gestureend", "focus", "blur", "change", "reset", "select", "submit", "focusin", "focusout", "load", "unload", "beforeunload", "resize", "move", "DOMContentLoaded", "readystatechange", "error", "abort", "scroll"]); function O(t, e) { return e && `${e}::${E++}` || t.uidEvent || E++ } function x(t) { const e = O(t); return t.uidEvent = e, A[e] = A[e] || {}, A[e] } function k(t, e, i = null) { return Object.values(t).find((t => t.callable === e && t.delegationSelector === i)) } function L(t, e, i) { const n = "string" == typeof e, s = n ? i : e || i; let o = I(t); return C.has(o) || (o = t), [n, s, o] } function S(t, e, i, n, s) { if ("string" != typeof e || !t) return; let [o, r, a] = L(e, i, n); if (e in T) { const t = t => function (e) { if (!e.relatedTarget || e.relatedTarget !== e.delegateTarget && !e.delegateTarget.contains(e.relatedTarget)) return t.call(this, e) }; r = t(r) } const l = x(t), c = l[a] || (l[a] = {}), h = k(c, r, o ? i : null); if (h) return void (h.oneOff = h.oneOff && s); const d = O(r, e.replace(v, "")), u = o ? function (t, e, i) { return function n(s) { const o = t.querySelectorAll(e); for (let { target: r } = s; r && r !== this; r = r.parentNode)for (const a of o) if (a === r) return P(s, { delegateTarget: r }), n.oneOff && N.off(t, s.type, e, i), i.apply(r, [s]) } }(t, i, r) : function (t, e) { return function i(n) { return P(n, { delegateTarget: t }), i.oneOff && N.off(t, n.type, e), e.apply(t, [n]) } }(t, r); u.delegationSelector = o ? i : null, u.callable = r, u.oneOff = s, u.uidEvent = d, c[d] = u, t.addEventListener(a, u, o) } function D(t, e, i, n, s) { const o = k(e[i], n, s); o && (t.removeEventListener(i, o, Boolean(s)), delete e[i][o.uidEvent]) } function $(t, e, i, n) { const s = e[i] || {}; for (const [o, r] of Object.entries(s)) o.includes(n) && D(t, e, i, r.callable, r.delegationSelector) } function I(t) { return t = t.replace(y, ""), T[t] || t } const N = { on(t, e, i, n) { S(t, e, i, n, !1) }, one(t, e, i, n) { S(t, e, i, n, !0) }, off(t, e, i, n) { if ("string" != typeof e || !t) return; const [s, o, r] = L(e, i, n), a = r !== e, l = x(t), c = l[r] || {}, h = e.startsWith("."); if (void 0 === o) { if (h) for (const i of Object.keys(l)) $(t, l, i, e.slice(1)); for (const [i, n] of Object.entries(c)) { const s = i.replace(w, ""); a && !e.includes(s) || D(t, l, r, n.callable, n.delegationSelector) } } else { if (!Object.keys(c).length) return; D(t, l, r, o, s ? i : null) } }, trigger(t, e, i) { if ("string" != typeof e || !t) return null; const n = u(); let s = null, o = !0, r = !0, a = !1; e !== I(e) && n && (s = n.Event(e, i), n(t).trigger(s), o = !s.isPropagationStopped(), r = !s.isImmediatePropagationStopped(), a = s.isDefaultPrevented()); const l = P(new Event(e, { bubbles: o, cancelable: !0 }), i); return a && l.preventDefault(), r && t.dispatchEvent(l), l.defaultPrevented && s && s.preventDefault(), l } }; function P(t, e = {}) { for (const [i, n] of Object.entries(e)) try { t[i] = n } catch (e) { Object.defineProperty(t, i, { configurable: !0, get: () => n }) } return t } function j(t) { if ("true" === t) return !0; if ("false" === t) return !1; if (t === Number(t).toString()) return Number(t); if ("" === t || "null" === t) return null; if ("string" != typeof t) return t; try { return JSON.parse(decodeURIComponent(t)) } catch (e) { return t } } function M(t) { return t.replace(/[A-Z]/g, (t => `-${t.toLowerCase()}`)) } const F = { setDataAttribute(t, e, i) { t.setAttribute(`data-bs-${M(e)}`, i) }, removeDataAttribute(t, e) { t.removeAttribute(`data-bs-${M(e)}`) }, getDataAttributes(t) { if (!t) return {}; const e = {}, i = Object.keys(t.dataset).filter((t => t.startsWith("bs") && !t.startsWith("bsConfig"))); for (const n of i) { let i = n.replace(/^bs/, ""); i = i.charAt(0).toLowerCase() + i.slice(1, i.length), e[i] = j(t.dataset[n]) } return e }, getDataAttribute: (t, e) => j(t.getAttribute(`data-bs-${M(e)}`)) }; class H { static get Default() { return {} } static get DefaultType() { return {} } static get NAME() { throw new Error('You have to implement the static method "NAME", for each component!') } _getConfig(t) { return t = this._mergeConfigObj(t), t = this._configAfterMerge(t), this._typeCheckConfig(t), t } _configAfterMerge(t) { return t } _mergeConfigObj(t, e) { const i = o(e) ? F.getDataAttribute(e, "config") : {}; return { ...this.constructor.Default, ..."object" == typeof i ? i : {}, ...o(e) ? F.getDataAttributes(e) : {}, ..."object" == typeof t ? t : {} } } _typeCheckConfig(t, e = this.constructor.DefaultType) { for (const [n, s] of Object.entries(e)) { const e = t[n], r = o(e) ? "element" : null == (i = e) ? `${i}` : Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase(); if (!new RegExp(s).test(r)) throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`) } var i } } class W extends H { constructor(t, i) { super(), (t = r(t)) && (this._element = t, this._config = this._getConfig(i), e.set(this._element, this.constructor.DATA_KEY, this)) } dispose() { e.remove(this._element, this.constructor.DATA_KEY), N.off(this._element, this.constructor.EVENT_KEY); for (const t of Object.getOwnPropertyNames(this)) this[t] = null } _queueCallback(t, e, i = !0) { _(t, e, i) } _getConfig(t) { return t = this._mergeConfigObj(t, this._element), t = this._configAfterMerge(t), this._typeCheckConfig(t), t } static getInstance(t) { return e.get(r(t), this.DATA_KEY) } static getOrCreateInstance(t, e = {}) { return this.getInstance(t) || new this(t, "object" == typeof e ? e : null) } static get VERSION() { return "5.3.3" } static get DATA_KEY() { return `bs.${this.NAME}` } static get EVENT_KEY() { return `.${this.DATA_KEY}` } static eventName(t) { return `${t}${this.EVENT_KEY}` } } const B = t => { let e = t.getAttribute("data-bs-target"); if (!e || "#" === e) { let i = t.getAttribute("href"); if (!i || !i.includes("#") && !i.startsWith(".")) return null; i.includes("#") && !i.startsWith("#") && (i = `#${i.split("#")[1]}`), e = i && "#" !== i ? i.trim() : null } return e ? e.split(",").map((t => n(t))).join(",") : null }, z = { find: (t, e = document.documentElement) => [].concat(...Element.prototype.querySelectorAll.call(e, t)), findOne: (t, e = document.documentElement) => Element.prototype.querySelector.call(e, t), children: (t, e) => [].concat(...t.children).filter((t => t.matches(e))), parents(t, e) { const i = []; let n = t.parentNode.closest(e); for (; n;)i.push(n), n = n.parentNode.closest(e); return i }, prev(t, e) { let i = t.previousElementSibling; for (; i;) { if (i.matches(e)) return [i]; i = i.previousElementSibling } return [] }, next(t, e) { let i = t.nextElementSibling; for (; i;) { if (i.matches(e)) return [i]; i = i.nextElementSibling } return [] }, focusableChildren(t) { const e = ["a", "button", "input", "textarea", "select", "details", "[tabindex]", '[contenteditable="true"]'].map((t => `${t}:not([tabindex^="-"])`)).join(","); return this.find(e, t).filter((t => !l(t) && a(t))) }, getSelectorFromElement(t) { const e = B(t); return e && z.findOne(e) ? e : null }, getElementFromSelector(t) { const e = B(t); return e ? z.findOne(e) : null }, getMultipleElementsFromSelector(t) { const e = B(t); return e ? z.find(e) : [] } }, R = (t, e = "hide") => { const i = `click.dismiss${t.EVENT_KEY}`, n = t.NAME; N.on(document, i, `[data-bs-dismiss="${n}"]`, (function (i) { if (["A", "AREA"].includes(this.tagName) && i.preventDefault(), l(this)) return; const s = z.getElementFromSelector(this) || this.closest(`.${n}`); t.getOrCreateInstance(s)[e]() })) }, q = ".bs.alert", V = `close${q}`, K = `closed${q}`; class Q extends W { static get NAME() { return "alert" } close() { if (N.trigger(this._element, V).defaultPrevented) return; this._element.classList.remove("show"); const t = this._element.classList.contains("fade"); this._queueCallback((() => this._destroyElement()), this._element, t) } _destroyElement() { this._element.remove(), N.trigger(this._element, K), this.dispose() } static jQueryInterface(t) { return this.each((function () { const e = Q.getOrCreateInstance(this); if ("string" == typeof t) { if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method named "${t}"`); e[t](this) } })) } } R(Q, "close"), m(Q); const X = '[data-bs-toggle="button"]'; class Y extends W { static get NAME() { return "button" } toggle() { this._element.setAttribute("aria-pressed", this._element.classList.toggle("active")) } static jQueryInterface(t) { return this.each((function () { const e = Y.getOrCreateInstance(this); "toggle" === t && e[t]() })) } } N.on(document, "click.bs.button.data-api", X, (t => { t.preventDefault(); const e = t.target.closest(X); Y.getOrCreateInstance(e).toggle() })), m(Y); const U = ".bs.swipe", G = `touchstart${U}`, J = `touchmove${U}`, Z = `touchend${U}`, tt = `pointerdown${U}`, et = `pointerup${U}`, it = { endCallback: null, leftCallback: null, rightCallback: null }, nt = { endCallback: "(function|null)", leftCallback: "(function|null)", rightCallback: "(function|null)" }; class st extends H { constructor(t, e) { super(), this._element = t, t && st.isSupported() && (this._config = this._getConfig(e), this._deltaX = 0, this._supportPointerEvents = Boolean(window.PointerEvent), this._initEvents()) } static get Default() { return it } static get DefaultType() { return nt } static get NAME() { return "swipe" } dispose() { N.off(this._element, U) } _start(t) { this._supportPointerEvents ? this._eventIsPointerPenTouch(t) && (this._deltaX = t.clientX) : this._deltaX = t.touches[0].clientX } _end(t) { this._eventIsPointerPenTouch(t) && (this._deltaX = t.clientX - this._deltaX), this._handleSwipe(), g(this._config.endCallback) } _move(t) { this._deltaX = t.touches && t.touches.length > 1 ? 0 : t.touches[0].clientX - this._deltaX } _handleSwipe() { const t = Math.abs(this._deltaX); if (t <= 40) return; const e = t / this._deltaX; this._deltaX = 0, e && g(e > 0 ? this._config.rightCallback : this._config.leftCallback) } _initEvents() { this._supportPointerEvents ? (N.on(this._element, tt, (t => this._start(t))), N.on(this._element, et, (t => this._end(t))), this._element.classList.add("pointer-event")) : (N.on(this._element, G, (t => this._start(t))), N.on(this._element, J, (t => this._move(t))), N.on(this._element, Z, (t => this._end(t)))) } _eventIsPointerPenTouch(t) { return this._supportPointerEvents && ("pen" === t.pointerType || "touch" === t.pointerType) } static isSupported() { return "ontouchstart" in document.documentElement || navigator.maxTouchPoints > 0 } } const ot = ".bs.carousel", rt = ".data-api", at = "next", lt = "prev", ct = "left", ht = "right", dt = `slide${ot}`, ut = `slid${ot}`, ft = `keydown${ot}`, pt = `mouseenter${ot}`, mt = `mouseleave${ot}`, gt = `dragstart${ot}`, _t = `load${ot}${rt}`, bt = `click${ot}${rt}`, vt = "carousel", yt = "active", wt = ".active", At = ".carousel-item", Et = wt + At, Tt = { ArrowLeft: ht, ArrowRight: ct }, Ct = { interval: 5e3, keyboard: !0, pause: "hover", ride: !1, touch: !0, wrap: !0 }, Ot = { interval: "(number|boolean)", keyboard: "boolean", pause: "(string|boolean)", ride: "(boolean|string)", touch: "boolean", wrap: "boolean" }; class xt extends W { constructor(t, e) { super(t, e), this._interval = null, this._activeElement = null, this._isSliding = !1, this.touchTimeout = null, this._swipeHelper = null, this._indicatorsElement = z.findOne(".carousel-indicators", this._element), this._addEventListeners(), this._config.ride === vt && this.cycle() } static get Default() { return Ct } static get DefaultType() { return Ot } static get NAME() { return "carousel" } next() { this._slide(at) } nextWhenVisible() { !document.hidden && a(this._element) && this.next() } prev() { this._slide(lt) } pause() { this._isSliding && s(this._element), this._clearInterval() } cycle() { this._clearInterval(), this._updateInterval(), this._interval = setInterval((() => this.nextWhenVisible()), this._config.interval) } _maybeEnableCycle() { this._config.ride && (this._isSliding ? N.one(this._element, ut, (() => this.cycle())) : this.cycle()) } to(t) { const e = this._getItems(); if (t > e.length - 1 || t < 0) return; if (this._isSliding) return void N.one(this._element, ut, (() => this.to(t))); const i = this._getItemIndex(this._getActive()); if (i === t) return; const n = t > i ? at : lt; this._slide(n, e[t]) } dispose() { this._swipeHelper && this._swipeHelper.dispose(), super.dispose() } _configAfterMerge(t) { return t.defaultInterval = t.interval, t } _addEventListeners() { this._config.keyboard && N.on(this._element, ft, (t => this._keydown(t))), "hover" === this._config.pause && (N.on(this._element, pt, (() => this.pause())), N.on(this._element, mt, (() => this._maybeEnableCycle()))), this._config.touch && st.isSupported() && this._addTouchEventListeners() } _addTouchEventListeners() { for (const t of z.find(".carousel-item img", this._element)) N.on(t, gt, (t => t.preventDefault())); const t = { leftCallback: () => this._slide(this._directionToOrder(ct)), rightCallback: () => this._slide(this._directionToOrder(ht)), endCallback: () => { "hover" === this._config.pause && (this.pause(), this.touchTimeout && clearTimeout(this.touchTimeout), this.touchTimeout = setTimeout((() => this._maybeEnableCycle()), 500 + this._config.interval)) } }; this._swipeHelper = new st(this._element, t) } _keydown(t) { if (/input|textarea/i.test(t.target.tagName)) return; const e = Tt[t.key]; e && (t.preventDefault(), this._slide(this._directionToOrder(e))) } _getItemIndex(t) { return this._getItems().indexOf(t) } _setActiveIndicatorElement(t) { if (!this._indicatorsElement) return; const e = z.findOne(wt, this._indicatorsElement); e.classList.remove(yt), e.removeAttribute("aria-current"); const i = z.findOne(`[data-bs-slide-to="${t}"]`, this._indicatorsElement); i && (i.classList.add(yt), i.setAttribute("aria-current", "true")) } _updateInterval() { const t = this._activeElement || this._getActive(); if (!t) return; const e = Number.parseInt(t.getAttribute("data-bs-interval"), 10); this._config.interval = e || this._config.defaultInterval } _slide(t, e = null) { if (this._isSliding) return; const i = this._getActive(), n = t === at, s = e || b(this._getItems(), i, n, this._config.wrap); if (s === i) return; const o = this._getItemIndex(s), r = e => N.trigger(this._element, e, { relatedTarget: s, direction: this._orderToDirection(t), from: this._getItemIndex(i), to: o }); if (r(dt).defaultPrevented) return; if (!i || !s) return; const a = Boolean(this._interval); this.pause(), this._isSliding = !0, this._setActiveIndicatorElement(o), this._activeElement = s; const l = n ? "carousel-item-start" : "carousel-item-end", c = n ? "carousel-item-next" : "carousel-item-prev"; s.classList.add(c), d(s), i.classList.add(l), s.classList.add(l), this._queueCallback((() => { s.classList.remove(l, c), s.classList.add(yt), i.classList.remove(yt, c, l), this._isSliding = !1, r(ut) }), i, this._isAnimated()), a && this.cycle() } _isAnimated() { return this._element.classList.contains("slide") } _getActive() { return z.findOne(Et, this._element) } _getItems() { return z.find(At, this._element) } _clearInterval() { this._interval && (clearInterval(this._interval), this._interval = null) } _directionToOrder(t) { return p() ? t === ct ? lt : at : t === ct ? at : lt } _orderToDirection(t) { return p() ? t === lt ? ct : ht : t === lt ? ht : ct } static jQueryInterface(t) { return this.each((function () { const e = xt.getOrCreateInstance(this, t); if ("number" != typeof t) { if ("string" == typeof t) { if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method named "${t}"`); e[t]() } } else e.to(t) })) } } N.on(document, bt, "[data-bs-slide], [data-bs-slide-to]", (function (t) { const e = z.getElementFromSelector(this); if (!e || !e.classList.contains(vt)) return; t.preventDefault(); const i = xt.getOrCreateInstance(e), n = this.getAttribute("data-bs-slide-to"); return n ? (i.to(n), void i._maybeEnableCycle()) : "next" === F.getDataAttribute(this, "slide") ? (i.next(), void i._maybeEnableCycle()) : (i.prev(), void i._maybeEnableCycle()) })), N.on(window, _t, (() => { const t = z.find('[data-bs-ride="carousel"]'); for (const e of t) xt.getOrCreateInstance(e) })), m(xt); const kt = ".bs.collapse", Lt = `show${kt}`, St = `shown${kt}`, Dt = `hide${kt}`, $t = `hidden${kt}`, It = `click${kt}.data-api`, Nt = "show", Pt = "collapse", jt = "collapsing", Mt = `:scope .${Pt} .${Pt}`, Ft = '[data-bs-toggle="collapse"]', Ht = { parent: null, toggle: !0 }, Wt = { parent: "(null|element)", toggle: "boolean" }; class Bt extends W { constructor(t, e) { super(t, e), this._isTransitioning = !1, this._triggerArray = []; const i = z.find(Ft); for (const t of i) { const e = z.getSelectorFromElement(t), i = z.find(e).filter((t => t === this._element)); null !== e && i.length && this._triggerArray.push(t) } this._initializeChildren(), this._config.parent || this._addAriaAndCollapsedClass(this._triggerArray, this._isShown()), this._config.toggle && this.toggle() } static get Default() { return Ht } static get DefaultType() { return Wt } static get NAME() { return "collapse" } toggle() { this._isShown() ? this.hide() : this.show() } show() { if (this._isTransitioning || this._isShown()) return; let t = []; if (this._config.parent && (t = this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t => t !== this._element)).map((t => Bt.getOrCreateInstance(t, { toggle: !1 })))), t.length && t[0]._isTransitioning) return; if (N.trigger(this._element, Lt).defaultPrevented) return; for (const e of t) e.hide(); const e = this._getDimension(); this._element.classList.remove(Pt), this._element.classList.add(jt), this._element.style[e] = 0, this._addAriaAndCollapsedClass(this._triggerArray, !0), this._isTransitioning = !0; const i = `scroll${e[0].toUpperCase() + e.slice(1)}`; this._queueCallback((() => { this._isTransitioning = !1, this._element.classList.remove(jt), this._element.classList.add(Pt, Nt), this._element.style[e] = "", N.trigger(this._element, St) }), this._element, !0), this._element.style[e] = `${this._element[i]}px` } hide() { if (this._isTransitioning || !this._isShown()) return; if (N.trigger(this._element, Dt).defaultPrevented) return; const t = this._getDimension(); this._element.style[t] = `${this._element.getBoundingClientRect()[t]}px`, d(this._element), this._element.classList.add(jt), this._element.classList.remove(Pt, Nt); for (const t of this._triggerArray) { const e = z.getElementFromSelector(t); e && !this._isShown(e) && this._addAriaAndCollapsedClass([t], !1) } this._isTransitioning = !0, this._element.style[t] = "", this._queueCallback((() => { this._isTransitioning = !1, this._element.classList.remove(jt), this._element.classList.add(Pt), N.trigger(this._element, $t) }), this._element, !0) } _isShown(t = this._element) { return t.classList.contains(Nt) } _configAfterMerge(t) { return t.toggle = Boolean(t.toggle), t.parent = r(t.parent), t } _getDimension() { return this._element.classList.contains("collapse-horizontal") ? "width" : "height" } _initializeChildren() { if (!this._config.parent) return; const t = this._getFirstLevelChildren(Ft); for (const e of t) { const t = z.getElementFromSelector(e); t && this._addAriaAndCollapsedClass([e], this._isShown(t)) } } _getFirstLevelChildren(t) { const e = z.find(Mt, this._config.parent); return z.find(t, this._config.parent).filter((t => !e.includes(t))) } _addAriaAndCollapsedClass(t, e) { if (t.length) for (const i of t) i.classList.toggle("collapsed", !e), i.setAttribute("aria-expanded", e) } static jQueryInterface(t) { const e = {}; return "string" == typeof t && /show|hide/.test(t) && (e.toggle = !1), this.each((function () { const i = Bt.getOrCreateInstance(this, e); if ("string" == typeof t) { if (void 0 === i[t]) throw new TypeError(`No method named "${t}"`); i[t]() } })) } } N.on(document, It, Ft, (function (t) { ("A" === t.target.tagName || t.delegateTarget && "A" === t.delegateTarget.tagName) && t.preventDefault(); for (const t of z.getMultipleElementsFromSelector(this)) Bt.getOrCreateInstance(t, { toggle: !1 }).toggle() })), m(Bt); var zt = "top", Rt = "bottom", qt = "right", Vt = "left", Kt = "auto", Qt = [zt, Rt, qt, Vt], Xt = "start", Yt = "end", Ut = "clippingParents", Gt = "viewport", Jt = "popper", Zt = "reference", te = Qt.reduce((function (t, e) { return t.concat([e + "-" + Xt, e + "-" + Yt]) }), []), ee = [].concat(Qt, [Kt]).reduce((function (t, e) { return t.concat([e, e + "-" + Xt, e + "-" + Yt]) }), []), ie = "beforeRead", ne = "read", se = "afterRead", oe = "beforeMain", re = "main", ae = "afterMain", le = "beforeWrite", ce = "write", he = "afterWrite", de = [ie, ne, se, oe, re, ae, le, ce, he]; function ue(t) { return t ? (t.nodeName || "").toLowerCase() : null } function fe(t) { if (null == t) return window; if ("[object Window]" !== t.toString()) { var e = t.ownerDocument; return e && e.defaultView || window } return t } function pe(t) { return t instanceof fe(t).Element || t instanceof Element } function me(t) { return t instanceof fe(t).HTMLElement || t instanceof HTMLElement } function ge(t) { return "undefined" != typeof ShadowRoot && (t instanceof fe(t).ShadowRoot || t instanceof ShadowRoot) } const _e = { name: "applyStyles", enabled: !0, phase: "write", fn: function (t) { var e = t.state; Object.keys(e.elements).forEach((function (t) { var i = e.styles[t] || {}, n = e.attributes[t] || {}, s = e.elements[t]; me(s) && ue(s) && (Object.assign(s.style, i), Object.keys(n).forEach((function (t) { var e = n[t]; !1 === e ? s.removeAttribute(t) : s.setAttribute(t, !0 === e ? "" : e) }))) })) }, effect: function (t) { var e = t.state, i = { popper: { position: e.options.strategy, left: "0", top: "0", margin: "0" }, arrow: { position: "absolute" }, reference: {} }; return Object.assign(e.elements.popper.style, i.popper), e.styles = i, e.elements.arrow && Object.assign(e.elements.arrow.style, i.arrow), function () { Object.keys(e.elements).forEach((function (t) { var n = e.elements[t], s = e.attributes[t] || {}, o = Object.keys(e.styles.hasOwnProperty(t) ? e.styles[t] : i[t]).reduce((function (t, e) { return t[e] = "", t }), {}); me(n) && ue(n) && (Object.assign(n.style, o), Object.keys(s).forEach((function (t) { n.removeAttribute(t) }))) })) } }, requires: ["computeStyles"] }; function be(t) { return t.split("-")[0] } var ve = Math.max, ye = Math.min, we = Math.round; function Ae() { var t = navigator.userAgentData; return null != t && t.brands && Array.isArray(t.brands) ? t.brands.map((function (t) { return t.brand + "/" + t.version })).join(" ") : navigator.userAgent } function Ee() { return !/^((?!chrome|android).)*safari/i.test(Ae()) } function Te(t, e, i) { void 0 === e && (e = !1), void 0 === i && (i = !1); var n = t.getBoundingClientRect(), s = 1, o = 1; e && me(t) && (s = t.offsetWidth > 0 && we(n.width) / t.offsetWidth || 1, o = t.offsetHeight > 0 && we(n.height) / t.offsetHeight || 1); var r = (pe(t) ? fe(t) : window).visualViewport, a = !Ee() && i, l = (n.left + (a && r ? r.offsetLeft : 0)) / s, c = (n.top + (a && r ? r.offsetTop : 0)) / o, h = n.width / s, d = n.height / o; return { width: h, height: d, top: c, right: l + h, bottom: c + d, left: l, x: l, y: c } } function Ce(t) { var e = Te(t), i = t.offsetWidth, n = t.offsetHeight; return Math.abs(e.width - i) <= 1 && (i = e.width), Math.abs(e.height - n) <= 1 && (n = e.height), { x: t.offsetLeft, y: t.offsetTop, width: i, height: n } } function Oe(t, e) { var i = e.getRootNode && e.getRootNode(); if (t.contains(e)) return !0; if (i && ge(i)) { var n = e; do { if (n && t.isSameNode(n)) return !0; n = n.parentNode || n.host } while (n) } return !1 } function xe(t) { return fe(t).getComputedStyle(t) } function ke(t) { return ["table", "td", "th"].indexOf(ue(t)) >= 0 } function Le(t) { return ((pe(t) ? t.ownerDocument : t.document) || window.document).documentElement } function Se(t) { return "html" === ue(t) ? t : t.assignedSlot || t.parentNode || (ge(t) ? t.host : null) || Le(t) } function De(t) { return me(t) && "fixed" !== xe(t).position ? t.offsetParent : null } function $e(t) { for (var e = fe(t), i = De(t); i && ke(i) && "static" === xe(i).position;)i = De(i); return i && ("html" === ue(i) || "body" === ue(i) && "static" === xe(i).position) ? e : i || function (t) { var e = /firefox/i.test(Ae()); if (/Trident/i.test(Ae()) && me(t) && "fixed" === xe(t).position) return null; var i = Se(t); for (ge(i) && (i = i.host); me(i) && ["html", "body"].indexOf(ue(i)) < 0;) { var n = xe(i); if ("none" !== n.transform || "none" !== n.perspective || "paint" === n.contain || -1 !== ["transform", "perspective"].indexOf(n.willChange) || e && "filter" === n.willChange || e && n.filter && "none" !== n.filter) return i; i = i.parentNode } return null }(t) || e } function Ie(t) { return ["top", "bottom"].indexOf(t) >= 0 ? "x" : "y" } function Ne(t, e, i) { return ve(t, ye(e, i)) } function Pe(t) { return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, t) } function je(t, e) { return e.reduce((function (e, i) { return e[i] = t, e }), {}) } const Me = { name: "arrow", enabled: !0, phase: "main", fn: function (t) { var e, i = t.state, n = t.name, s = t.options, o = i.elements.arrow, r = i.modifiersData.popperOffsets, a = be(i.placement), l = Ie(a), c = [Vt, qt].indexOf(a) >= 0 ? "height" : "width"; if (o && r) { var h = function (t, e) { return Pe("number" != typeof (t = "function" == typeof t ? t(Object.assign({}, e.rects, { placement: e.placement })) : t) ? t : je(t, Qt)) }(s.padding, i), d = Ce(o), u = "y" === l ? zt : Vt, f = "y" === l ? Rt : qt, p = i.rects.reference[c] + i.rects.reference[l] - r[l] - i.rects.popper[c], m = r[l] - i.rects.reference[l], g = $e(o), _ = g ? "y" === l ? g.clientHeight || 0 : g.clientWidth || 0 : 0, b = p / 2 - m / 2, v = h[u], y = _ - d[c] - h[f], w = _ / 2 - d[c] / 2 + b, A = Ne(v, w, y), E = l; i.modifiersData[n] = ((e = {})[E] = A, e.centerOffset = A - w, e) } }, effect: function (t) { var e = t.state, i = t.options.element, n = void 0 === i ? "[data-popper-arrow]" : i; null != n && ("string" != typeof n || (n = e.elements.popper.querySelector(n))) && Oe(e.elements.popper, n) && (e.elements.arrow = n) }, requires: ["popperOffsets"], requiresIfExists: ["preventOverflow"] }; function Fe(t) { return t.split("-")[1] } var He = { top: "auto", right: "auto", bottom: "auto", left: "auto" }; function We(t) { var e, i = t.popper, n = t.popperRect, s = t.placement, o = t.variation, r = t.offsets, a = t.position, l = t.gpuAcceleration, c = t.adaptive, h = t.roundOffsets, d = t.isFixed, u = r.x, f = void 0 === u ? 0 : u, p = r.y, m = void 0 === p ? 0 : p, g = "function" == typeof h ? h({ x: f, y: m }) : { x: f, y: m }; f = g.x, m = g.y; var _ = r.hasOwnProperty("x"), b = r.hasOwnProperty("y"), v = Vt, y = zt, w = window; if (c) { var A = $e(i), E = "clientHeight", T = "clientWidth"; A === fe(i) && "static" !== xe(A = Le(i)).position && "absolute" === a && (E = "scrollHeight", T = "scrollWidth"), (s === zt || (s === Vt || s === qt) && o === Yt) && (y = Rt, m -= (d && A === w && w.visualViewport ? w.visualViewport.height : A[E]) - n.height, m *= l ? 1 : -1), s !== Vt && (s !== zt && s !== Rt || o !== Yt) || (v = qt, f -= (d && A === w && w.visualViewport ? w.visualViewport.width : A[T]) - n.width, f *= l ? 1 : -1) } var C, O = Object.assign({ position: a }, c && He), x = !0 === h ? function (t, e) { var i = t.x, n = t.y, s = e.devicePixelRatio || 1; return { x: we(i * s) / s || 0, y: we(n * s) / s || 0 } }({ x: f, y: m }, fe(i)) : { x: f, y: m }; return f = x.x, m = x.y, l ? Object.assign({}, O, ((C = {})[y] = b ? "0" : "", C[v] = _ ? "0" : "", C.transform = (w.devicePixelRatio || 1) <= 1 ? "translate(" + f + "px, " + m + "px)" : "translate3d(" + f + "px, " + m + "px, 0)", C)) : Object.assign({}, O, ((e = {})[y] = b ? m + "px" : "", e[v] = _ ? f + "px" : "", e.transform = "", e)) } const Be = { name: "computeStyles", enabled: !0, phase: "beforeWrite", fn: function (t) { var e = t.state, i = t.options, n = i.gpuAcceleration, s = void 0 === n || n, o = i.adaptive, r = void 0 === o || o, a = i.roundOffsets, l = void 0 === a || a, c = { placement: be(e.placement), variation: Fe(e.placement), popper: e.elements.popper, popperRect: e.rects.popper, gpuAcceleration: s, isFixed: "fixed" === e.options.strategy }; null != e.modifiersData.popperOffsets && (e.styles.popper = Object.assign({}, e.styles.popper, We(Object.assign({}, c, { offsets: e.modifiersData.popperOffsets, position: e.options.strategy, adaptive: r, roundOffsets: l })))), null != e.modifiersData.arrow && (e.styles.arrow = Object.assign({}, e.styles.arrow, We(Object.assign({}, c, { offsets: e.modifiersData.arrow, position: "absolute", adaptive: !1, roundOffsets: l })))), e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-placement": e.placement }) }, data: {} }; var ze = { passive: !0 }; const Re = { name: "eventListeners", enabled: !0, phase: "write", fn: function () { }, effect: function (t) { var e = t.state, i = t.instance, n = t.options, s = n.scroll, o = void 0 === s || s, r = n.resize, a = void 0 === r || r, l = fe(e.elements.popper), c = [].concat(e.scrollParents.reference, e.scrollParents.popper); return o && c.forEach((function (t) { t.addEventListener("scroll", i.update, ze) })), a && l.addEventListener("resize", i.update, ze), function () { o && c.forEach((function (t) { t.removeEventListener("scroll", i.update, ze) })), a && l.removeEventListener("resize", i.update, ze) } }, data: {} }; var qe = { left: "right", right: "left", bottom: "top", top: "bottom" }; function Ve(t) { return t.replace(/left|right|bottom|top/g, (function (t) { return qe[t] })) } var Ke = { start: "end", end: "start" }; function Qe(t) { return t.replace(/start|end/g, (function (t) { return Ke[t] })) } function Xe(t) { var e = fe(t); return { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset } } function Ye(t) { return Te(Le(t)).left + Xe(t).scrollLeft } function Ue(t) { var e = xe(t), i = e.overflow, n = e.overflowX, s = e.overflowY; return /auto|scroll|overlay|hidden/.test(i + s + n) } function Ge(t) { return ["html", "body", "#document"].indexOf(ue(t)) >= 0 ? t.ownerDocument.body : me(t) && Ue(t) ? t : Ge(Se(t)) } function Je(t, e) { var i; void 0 === e && (e = []); var n = Ge(t), s = n === (null == (i = t.ownerDocument) ? void 0 : i.body), o = fe(n), r = s ? [o].concat(o.visualViewport || [], Ue(n) ? n : []) : n, a = e.concat(r); return s ? a : a.concat(Je(Se(r))) } function Ze(t) { return Object.assign({}, t, { left: t.x, top: t.y, right: t.x + t.width, bottom: t.y + t.height }) } function ti(t, e, i) { return e === Gt ? Ze(function (t, e) { var i = fe(t), n = Le(t), s = i.visualViewport, o = n.clientWidth, r = n.clientHeight, a = 0, l = 0; if (s) { o = s.width, r = s.height; var c = Ee(); (c || !c && "fixed" === e) && (a = s.offsetLeft, l = s.offsetTop) } return { width: o, height: r, x: a + Ye(t), y: l } }(t, i)) : pe(e) ? function (t, e) { var i = Te(t, !1, "fixed" === e); return i.top = i.top + t.clientTop, i.left = i.left + t.clientLeft, i.bottom = i.top + t.clientHeight, i.right = i.left + t.clientWidth, i.width = t.clientWidth, i.height = t.clientHeight, i.x = i.left, i.y = i.top, i }(e, i) : Ze(function (t) { var e, i = Le(t), n = Xe(t), s = null == (e = t.ownerDocument) ? void 0 : e.body, o = ve(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0), r = ve(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0), a = -n.scrollLeft + Ye(t), l = -n.scrollTop; return "rtl" === xe(s || i).direction && (a += ve(i.clientWidth, s ? s.clientWidth : 0) - o), { width: o, height: r, x: a, y: l } }(Le(t))) } function ei(t) { var e, i = t.reference, n = t.element, s = t.placement, o = s ? be(s) : null, r = s ? Fe(s) : null, a = i.x + i.width / 2 - n.width / 2, l = i.y + i.height / 2 - n.height / 2; switch (o) { case zt: e = { x: a, y: i.y - n.height }; break; case Rt: e = { x: a, y: i.y + i.height }; break; case qt: e = { x: i.x + i.width, y: l }; break; case Vt: e = { x: i.x - n.width, y: l }; break; default: e = { x: i.x, y: i.y } }var c = o ? Ie(o) : null; if (null != c) { var h = "y" === c ? "height" : "width"; switch (r) { case Xt: e[c] = e[c] - (i[h] / 2 - n[h] / 2); break; case Yt: e[c] = e[c] + (i[h] / 2 - n[h] / 2) } } return e } function ii(t, e) { void 0 === e && (e = {}); var i = e, n = i.placement, s = void 0 === n ? t.placement : n, o = i.strategy, r = void 0 === o ? t.strategy : o, a = i.boundary, l = void 0 === a ? Ut : a, c = i.rootBoundary, h = void 0 === c ? Gt : c, d = i.elementContext, u = void 0 === d ? Jt : d, f = i.altBoundary, p = void 0 !== f && f, m = i.padding, g = void 0 === m ? 0 : m, _ = Pe("number" != typeof g ? g : je(g, Qt)), b = u === Jt ? Zt : Jt, v = t.rects.popper, y = t.elements[p ? b : u], w = function (t, e, i, n) { var s = "clippingParents" === e ? function (t) { var e = Je(Se(t)), i = ["absolute", "fixed"].indexOf(xe(t).position) >= 0 && me(t) ? $e(t) : t; return pe(i) ? e.filter((function (t) { return pe(t) && Oe(t, i) && "body" !== ue(t) })) : [] }(t) : [].concat(e), o = [].concat(s, [i]), r = o[0], a = o.reduce((function (e, i) { var s = ti(t, i, n); return e.top = ve(s.top, e.top), e.right = ye(s.right, e.right), e.bottom = ye(s.bottom, e.bottom), e.left = ve(s.left, e.left), e }), ti(t, r, n)); return a.width = a.right - a.left, a.height = a.bottom - a.top, a.x = a.left, a.y = a.top, a }(pe(y) ? y : y.contextElement || Le(t.elements.popper), l, h, r), A = Te(t.elements.reference), E = ei({ reference: A, element: v, strategy: "absolute", placement: s }), T = Ze(Object.assign({}, v, E)), C = u === Jt ? T : A, O = { top: w.top - C.top + _.top, bottom: C.bottom - w.bottom + _.bottom, left: w.left - C.left + _.left, right: C.right - w.right + _.right }, x = t.modifiersData.offset; if (u === Jt && x) { var k = x[s]; Object.keys(O).forEach((function (t) { var e = [qt, Rt].indexOf(t) >= 0 ? 1 : -1, i = [zt, Rt].indexOf(t) >= 0 ? "y" : "x"; O[t] += k[i] * e })) } return O } function ni(t, e) { void 0 === e && (e = {}); var i = e, n = i.placement, s = i.boundary, o = i.rootBoundary, r = i.padding, a = i.flipVariations, l = i.allowedAutoPlacements, c = void 0 === l ? ee : l, h = Fe(n), d = h ? a ? te : te.filter((function (t) { return Fe(t) === h })) : Qt, u = d.filter((function (t) { return c.indexOf(t) >= 0 })); 0 === u.length && (u = d); var f = u.reduce((function (e, i) { return e[i] = ii(t, { placement: i, boundary: s, rootBoundary: o, padding: r })[be(i)], e }), {}); return Object.keys(f).sort((function (t, e) { return f[t] - f[e] })) } const si = { name: "flip", enabled: !0, phase: "main", fn: function (t) { var e = t.state, i = t.options, n = t.name; if (!e.modifiersData[n]._skip) { for (var s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, a = void 0 === r || r, l = i.fallbackPlacements, c = i.padding, h = i.boundary, d = i.rootBoundary, u = i.altBoundary, f = i.flipVariations, p = void 0 === f || f, m = i.allowedAutoPlacements, g = e.options.placement, _ = be(g), b = l || (_ !== g && p ? function (t) { if (be(t) === Kt) return []; var e = Ve(t); return [Qe(t), e, Qe(e)] }(g) : [Ve(g)]), v = [g].concat(b).reduce((function (t, i) { return t.concat(be(i) === Kt ? ni(e, { placement: i, boundary: h, rootBoundary: d, padding: c, flipVariations: p, allowedAutoPlacements: m }) : i) }), []), y = e.rects.reference, w = e.rects.popper, A = new Map, E = !0, T = v[0], C = 0; C < v.length; C++) { var O = v[C], x = be(O), k = Fe(O) === Xt, L = [zt, Rt].indexOf(x) >= 0, S = L ? "width" : "height", D = ii(e, { placement: O, boundary: h, rootBoundary: d, altBoundary: u, padding: c }), $ = L ? k ? qt : Vt : k ? Rt : zt; y[S] > w[S] && ($ = Ve($)); var I = Ve($), N = []; if (o && N.push(D[x] <= 0), a && N.push(D[$] <= 0, D[I] <= 0), N.every((function (t) { return t }))) { T = O, E = !1; break } A.set(O, N) } if (E) for (var P = function (t) { var e = v.find((function (e) { var i = A.get(e); if (i) return i.slice(0, t).every((function (t) { return t })) })); if (e) return T = e, "break" }, j = p ? 3 : 1; j > 0 && "break" !== P(j); j--); e.placement !== T && (e.modifiersData[n]._skip = !0, e.placement = T, e.reset = !0) } }, requiresIfExists: ["offset"], data: { _skip: !1 } }; function oi(t, e, i) { return void 0 === i && (i = { x: 0, y: 0 }), { top: t.top - e.height - i.y, right: t.right - e.width + i.x, bottom: t.bottom - e.height + i.y, left: t.left - e.width - i.x } } function ri(t) { return [zt, qt, Rt, Vt].some((function (e) { return t[e] >= 0 })) } const ai = { name: "hide", enabled: !0, phase: "main", requiresIfExists: ["preventOverflow"], fn: function (t) { var e = t.state, i = t.name, n = e.rects.reference, s = e.rects.popper, o = e.modifiersData.preventOverflow, r = ii(e, { elementContext: "reference" }), a = ii(e, { altBoundary: !0 }), l = oi(r, n), c = oi(a, s, o), h = ri(l), d = ri(c); e.modifiersData[i] = { referenceClippingOffsets: l, popperEscapeOffsets: c, isReferenceHidden: h, hasPopperEscaped: d }, e.attributes.popper = Object.assign({}, e.attributes.popper, { "data-popper-reference-hidden": h, "data-popper-escaped": d }) } }, li = { name: "offset", enabled: !0, phase: "main", requires: ["popperOffsets"], fn: function (t) { var e = t.state, i = t.options, n = t.name, s = i.offset, o = void 0 === s ? [0, 0] : s, r = ee.reduce((function (t, i) { return t[i] = function (t, e, i) { var n = be(t), s = [Vt, zt].indexOf(n) >= 0 ? -1 : 1, o = "function" == typeof i ? i(Object.assign({}, e, { placement: t })) : i, r = o[0], a = o[1]; return r = r || 0, a = (a || 0) * s, [Vt, qt].indexOf(n) >= 0 ? { x: a, y: r } : { x: r, y: a } }(i, e.rects, o), t }), {}), a = r[e.placement], l = a.x, c = a.y; null != e.modifiersData.popperOffsets && (e.modifiersData.popperOffsets.x += l, e.modifiersData.popperOffsets.y += c), e.modifiersData[n] = r } }, ci = { name: "popperOffsets", enabled: !0, phase: "read", fn: function (t) { var e = t.state, i = t.name; e.modifiersData[i] = ei({ reference: e.rects.reference, element: e.rects.popper, strategy: "absolute", placement: e.placement }) }, data: {} }, hi = { name: "preventOverflow", enabled: !0, phase: "main", fn: function (t) { var e = t.state, i = t.options, n = t.name, s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, a = void 0 !== r && r, l = i.boundary, c = i.rootBoundary, h = i.altBoundary, d = i.padding, u = i.tether, f = void 0 === u || u, p = i.tetherOffset, m = void 0 === p ? 0 : p, g = ii(e, { boundary: l, rootBoundary: c, padding: d, altBoundary: h }), _ = be(e.placement), b = Fe(e.placement), v = !b, y = Ie(_), w = "x" === y ? "y" : "x", A = e.modifiersData.popperOffsets, E = e.rects.reference, T = e.rects.popper, C = "function" == typeof m ? m(Object.assign({}, e.rects, { placement: e.placement })) : m, O = "number" == typeof C ? { mainAxis: C, altAxis: C } : Object.assign({ mainAxis: 0, altAxis: 0 }, C), x = e.modifiersData.offset ? e.modifiersData.offset[e.placement] : null, k = { x: 0, y: 0 }; if (A) { if (o) { var L, S = "y" === y ? zt : Vt, D = "y" === y ? Rt : qt, $ = "y" === y ? "height" : "width", I = A[y], N = I + g[S], P = I - g[D], j = f ? -T[$] / 2 : 0, M = b === Xt ? E[$] : T[$], F = b === Xt ? -T[$] : -E[$], H = e.elements.arrow, W = f && H ? Ce(H) : { width: 0, height: 0 }, B = e.modifiersData["arrow#persistent"] ? e.modifiersData["arrow#persistent"].padding : { top: 0, right: 0, bottom: 0, left: 0 }, z = B[S], R = B[D], q = Ne(0, E[$], W[$]), V = v ? E[$] / 2 - j - q - z - O.mainAxis : M - q - z - O.mainAxis, K = v ? -E[$] / 2 + j + q + R + O.mainAxis : F + q + R + O.mainAxis, Q = e.elements.arrow && $e(e.elements.arrow), X = Q ? "y" === y ? Q.clientTop || 0 : Q.clientLeft || 0 : 0, Y = null != (L = null == x ? void 0 : x[y]) ? L : 0, U = I + K - Y, G = Ne(f ? ye(N, I + V - Y - X) : N, I, f ? ve(P, U) : P); A[y] = G, k[y] = G - I } if (a) { var J, Z = "x" === y ? zt : Vt, tt = "x" === y ? Rt : qt, et = A[w], it = "y" === w ? "height" : "width", nt = et + g[Z], st = et - g[tt], ot = -1 !== [zt, Vt].indexOf(_), rt = null != (J = null == x ? void 0 : x[w]) ? J : 0, at = ot ? nt : et - E[it] - T[it] - rt + O.altAxis, lt = ot ? et + E[it] + T[it] - rt - O.altAxis : st, ct = f && ot ? function (t, e, i) { var n = Ne(t, e, i); return n > i ? i : n }(at, et, lt) : Ne(f ? at : nt, et, f ? lt : st); A[w] = ct, k[w] = ct - et } e.modifiersData[n] = k } }, requiresIfExists: ["offset"] }; function di(t, e, i) { void 0 === i && (i = !1); var n, s, o = me(e), r = me(e) && function (t) { var e = t.getBoundingClientRect(), i = we(e.width) / t.offsetWidth || 1, n = we(e.height) / t.offsetHeight || 1; return 1 !== i || 1 !== n }(e), a = Le(e), l = Te(t, r, i), c = { scrollLeft: 0, scrollTop: 0 }, h = { x: 0, y: 0 }; return (o || !o && !i) && (("body" !== ue(e) || Ue(a)) && (c = (n = e) !== fe(n) && me(n) ? { scrollLeft: (s = n).scrollLeft, scrollTop: s.scrollTop } : Xe(n)), me(e) ? ((h = Te(e, !0)).x += e.clientLeft, h.y += e.clientTop) : a && (h.x = Ye(a))), { x: l.left + c.scrollLeft - h.x, y: l.top + c.scrollTop - h.y, width: l.width, height: l.height } } function ui(t) { var e = new Map, i = new Set, n = []; function s(t) { i.add(t.name), [].concat(t.requires || [], t.requiresIfExists || []).forEach((function (t) { if (!i.has(t)) { var n = e.get(t); n && s(n) } })), n.push(t) } return t.forEach((function (t) { e.set(t.name, t) })), t.forEach((function (t) { i.has(t.name) || s(t) })), n } var fi = { placement: "bottom", modifiers: [], strategy: "absolute" }; function pi() { for (var t = arguments.length, e = new Array(t), i = 0; i < t; i++)e[i] = arguments[i]; return !e.some((function (t) { return !(t && "function" == typeof t.getBoundingClientRect) })) } function mi(t) { void 0 === t && (t = {}); var e = t, i = e.defaultModifiers, n = void 0 === i ? [] : i, s = e.defaultOptions, o = void 0 === s ? fi : s; return function (t, e, i) { void 0 === i && (i = o); var s, r, a = { placement: "bottom", orderedModifiers: [], options: Object.assign({}, fi, o), modifiersData: {}, elements: { reference: t, popper: e }, attributes: {}, styles: {} }, l = [], c = !1, h = { state: a, setOptions: function (i) { var s = "function" == typeof i ? i(a.options) : i; d(), a.options = Object.assign({}, o, a.options, s), a.scrollParents = { reference: pe(t) ? Je(t) : t.contextElement ? Je(t.contextElement) : [], popper: Je(e) }; var r, c, u = function (t) { var e = ui(t); return de.reduce((function (t, i) { return t.concat(e.filter((function (t) { return t.phase === i }))) }), []) }((r = [].concat(n, a.options.modifiers), c = r.reduce((function (t, e) { var i = t[e.name]; return t[e.name] = i ? Object.assign({}, i, e, { options: Object.assign({}, i.options, e.options), data: Object.assign({}, i.data, e.data) }) : e, t }), {}), Object.keys(c).map((function (t) { return c[t] })))); return a.orderedModifiers = u.filter((function (t) { return t.enabled })), a.orderedModifiers.forEach((function (t) { var e = t.name, i = t.options, n = void 0 === i ? {} : i, s = t.effect; if ("function" == typeof s) { var o = s({ state: a, name: e, instance: h, options: n }); l.push(o || function () { }) } })), h.update() }, forceUpdate: function () { if (!c) { var t = a.elements, e = t.reference, i = t.popper; if (pi(e, i)) { a.rects = { reference: di(e, $e(i), "fixed" === a.options.strategy), popper: Ce(i) }, a.reset = !1, a.placement = a.options.placement, a.orderedModifiers.forEach((function (t) { return a.modifiersData[t.name] = Object.assign({}, t.data) })); for (var n = 0; n < a.orderedModifiers.length; n++)if (!0 !== a.reset) { var s = a.orderedModifiers[n], o = s.fn, r = s.options, l = void 0 === r ? {} : r, d = s.name; "function" == typeof o && (a = o({ state: a, options: l, name: d, instance: h }) || a) } else a.reset = !1, n = -1 } } }, update: (s = function () { return new Promise((function (t) { h.forceUpdate(), t(a) })) }, function () { return r || (r = new Promise((function (t) { Promise.resolve().then((function () { r = void 0, t(s()) })) }))), r }), destroy: function () { d(), c = !0 } }; if (!pi(t, e)) return h; function d() { l.forEach((function (t) { return t() })), l = [] } return h.setOptions(i).then((function (t) { !c && i.onFirstUpdate && i.onFirstUpdate(t) })), h } } var gi = mi(), _i = mi({ defaultModifiers: [Re, ci, Be, _e] }), bi = mi({ defaultModifiers: [Re, ci, Be, _e, li, si, hi, Me, ai] }); const vi = Object.freeze(Object.defineProperty({ __proto__: null, afterMain: ae, afterRead: se, afterWrite: he, applyStyles: _e, arrow: Me, auto: Kt, basePlacements: Qt, beforeMain: oe, beforeRead: ie, beforeWrite: le, bottom: Rt, clippingParents: Ut, computeStyles: Be, createPopper: bi, createPopperBase: gi, createPopperLite: _i, detectOverflow: ii, end: Yt, eventListeners: Re, flip: si, hide: ai, left: Vt, main: re, modifierPhases: de, offset: li, placements: ee, popper: Jt, popperGenerator: mi, popperOffsets: ci, preventOverflow: hi, read: ne, reference: Zt, right: qt, start: Xt, top: zt, variationPlacements: te, viewport: Gt, write: ce }, Symbol.toStringTag, { value: "Module" })), yi = "dropdown", wi = ".bs.dropdown", Ai = ".data-api", Ei = "ArrowUp", Ti = "ArrowDown", Ci = `hide${wi}`, Oi = `hidden${wi}`, xi = `show${wi}`, ki = `shown${wi}`, Li = `click${wi}${Ai}`, Si = `keydown${wi}${Ai}`, Di = `keyup${wi}${Ai}`, $i = "show", Ii = '[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)', Ni = `${Ii}.${$i}`, Pi = ".dropdown-menu", ji = p() ? "top-end" : "top-start", Mi = p() ? "top-start" : "top-end", Fi = p() ? "bottom-end" : "bottom-start", Hi = p() ? "bottom-start" : "bottom-end", Wi = p() ? "left-start" : "right-start", Bi = p() ? "right-start" : "left-start", zi = { autoClose: !0, boundary: "clippingParents", display: "dynamic", offset: [0, 2], popperConfig: null, reference: "toggle" }, Ri = { autoClose: "(boolean|string)", boundary: "(string|element)", display: "string", offset: "(array|string|function)", popperConfig: "(null|object|function)", reference: "(string|element|object)" }; class qi extends W { constructor(t, e) { super(t, e), this._popper = null, this._parent = this._element.parentNode, this._menu = z.next(this._element, Pi)[0] || z.prev(this._element, Pi)[0] || z.findOne(Pi, this._parent), this._inNavbar = this._detectNavbar() } static get Default() { return zi } static get DefaultType() { return Ri } static get NAME() { return yi } toggle() { return this._isShown() ? this.hide() : this.show() } show() { if (l(this._element) || this._isShown()) return; const t = { relatedTarget: this._element }; if (!N.trigger(this._element, xi, t).defaultPrevented) { if (this._createPopper(), "ontouchstart" in document.documentElement && !this._parent.closest(".navbar-nav")) for (const t of [].concat(...document.body.children)) N.on(t, "mouseover", h); this._element.focus(), this._element.setAttribute("aria-expanded", !0), this._menu.classList.add($i), this._element.classList.add($i), N.trigger(this._element, ki, t) } } hide() { if (l(this._element) || !this._isShown()) return; const t = { relatedTarget: this._element }; this._completeHide(t) } dispose() { this._popper && this._popper.destroy(), super.dispose() } update() { this._inNavbar = this._detectNavbar(), this._popper && this._popper.update() } _completeHide(t) { if (!N.trigger(this._element, Ci, t).defaultPrevented) { if ("ontouchstart" in document.documentElement) for (const t of [].concat(...document.body.children)) N.off(t, "mouseover", h); this._popper && this._popper.destroy(), this._menu.classList.remove($i), this._element.classList.remove($i), this._element.setAttribute("aria-expanded", "false"), F.removeDataAttribute(this._menu, "popper"), N.trigger(this._element, Oi, t) } } _getConfig(t) { if ("object" == typeof (t = super._getConfig(t)).reference && !o(t.reference) && "function" != typeof t.reference.getBoundingClientRect) throw new TypeError(`${yi.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`); return t } _createPopper() { if (void 0 === vi) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)"); let t = this._element; "parent" === this._config.reference ? t = this._parent : o(this._config.reference) ? t = r(this._config.reference) : "object" == typeof this._config.reference && (t = this._config.reference); const e = this._getPopperConfig(); this._popper = bi(t, this._menu, e) } _isShown() { return this._menu.classList.contains($i) } _getPlacement() { const t = this._parent; if (t.classList.contains("dropend")) return Wi; if (t.classList.contains("dropstart")) return Bi; if (t.classList.contains("dropup-center")) return "top"; if (t.classList.contains("dropdown-center")) return "bottom"; const e = "end" === getComputedStyle(this._menu).getPropertyValue("--bs-position").trim(); return t.classList.contains("dropup") ? e ? Mi : ji : e ? Hi : Fi } _detectNavbar() { return null !== this._element.closest(".navbar") } _getOffset() { const { offset: t } = this._config; return "string" == typeof t ? t.split(",").map((t => Number.parseInt(t, 10))) : "function" == typeof t ? e => t(e, this._element) : t } _getPopperConfig() { const t = { placement: this._getPlacement(), modifiers: [{ name: "preventOverflow", options: { boundary: this._config.boundary } }, { name: "offset", options: { offset: this._getOffset() } }] }; return (this._inNavbar || "static" === this._config.display) && (F.setDataAttribute(this._menu, "popper", "static"), t.modifiers = [{ name: "applyStyles", enabled: !1 }]), { ...t, ...g(this._config.popperConfig, [t]) } } _selectMenuItem({ key: t, target: e }) { const i = z.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", this._menu).filter((t => a(t))); i.length && b(i, e, t === Ti, !i.includes(e)).focus() } static jQueryInterface(t) { return this.each((function () { const e = qi.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t]() } })) } static clearMenus(t) { if (2 === t.button || "keyup" === t.type && "Tab" !== t.key) return; const e = z.find(Ni); for (const i of e) { const e = qi.getInstance(i); if (!e || !1 === e._config.autoClose) continue; const n = t.composedPath(), s = n.includes(e._menu); if (n.includes(e._element) || "inside" === e._config.autoClose && !s || "outside" === e._config.autoClose && s) continue; if (e._menu.contains(t.target) && ("keyup" === t.type && "Tab" === t.key || /input|select|option|textarea|form/i.test(t.target.tagName))) continue; const o = { relatedTarget: e._element }; "click" === t.type && (o.clickEvent = t), e._completeHide(o) } } static dataApiKeydownHandler(t) { const e = /input|textarea/i.test(t.target.tagName), i = "Escape" === t.key, n = [Ei, Ti].includes(t.key); if (!n && !i) return; if (e && !i) return; t.preventDefault(); const s = this.matches(Ii) ? this : z.prev(this, Ii)[0] || z.next(this, Ii)[0] || z.findOne(Ii, t.delegateTarget.parentNode), o = qi.getOrCreateInstance(s); if (n) return t.stopPropagation(), o.show(), void o._selectMenuItem(t); o._isShown() && (t.stopPropagation(), o.hide(), s.focus()) } } N.on(document, Si, Ii, qi.dataApiKeydownHandler), N.on(document, Si, Pi, qi.dataApiKeydownHandler), N.on(document, Li, qi.clearMenus), N.on(document, Di, qi.clearMenus), N.on(document, Li, Ii, (function (t) { t.preventDefault(), qi.getOrCreateInstance(this).toggle() })), m(qi); const Vi = "backdrop", Ki = "show", Qi = `mousedown.bs.${Vi}`, Xi = { className: "modal-backdrop", clickCallback: null, isAnimated: !1, isVisible: !0, rootElement: "body" }, Yi = { className: "string", clickCallback: "(function|null)", isAnimated: "boolean", isVisible: "boolean", rootElement: "(element|string)" }; class Ui extends H { constructor(t) { super(), this._config = this._getConfig(t), this._isAppended = !1, this._element = null } static get Default() { return Xi } static get DefaultType() { return Yi } static get NAME() { return Vi } show(t) { if (!this._config.isVisible) return void g(t); this._append(); const e = this._getElement(); this._config.isAnimated && d(e), e.classList.add(Ki), this._emulateAnimation((() => { g(t) })) } hide(t) { this._config.isVisible ? (this._getElement().classList.remove(Ki), this._emulateAnimation((() => { this.dispose(), g(t) }))) : g(t) } dispose() { this._isAppended && (N.off(this._element, Qi), this._element.remove(), this._isAppended = !1) } _getElement() { if (!this._element) { const t = document.createElement("div"); t.className = this._config.className, this._config.isAnimated && t.classList.add("fade"), this._element = t } return this._element } _configAfterMerge(t) { return t.rootElement = r(t.rootElement), t } _append() { if (this._isAppended) return; const t = this._getElement(); this._config.rootElement.append(t), N.on(t, Qi, (() => { g(this._config.clickCallback) })), this._isAppended = !0 } _emulateAnimation(t) { _(t, this._getElement(), this._config.isAnimated) } } const Gi = ".bs.focustrap", Ji = `focusin${Gi}`, Zi = `keydown.tab${Gi}`, tn = "backward", en = { autofocus: !0, trapElement: null }, nn = { autofocus: "boolean", trapElement: "element" }; class sn extends H { constructor(t) { super(), this._config = this._getConfig(t), this._isActive = !1, this._lastTabNavDirection = null } static get Default() { return en } static get DefaultType() { return nn } static get NAME() { return "focustrap" } activate() { this._isActive || (this._config.autofocus && this._config.trapElement.focus(), N.off(document, Gi), N.on(document, Ji, (t => this._handleFocusin(t))), N.on(document, Zi, (t => this._handleKeydown(t))), this._isActive = !0) } deactivate() { this._isActive && (this._isActive = !1, N.off(document, Gi)) } _handleFocusin(t) { const { trapElement: e } = this._config; if (t.target === document || t.target === e || e.contains(t.target)) return; const i = z.focusableChildren(e); 0 === i.length ? e.focus() : this._lastTabNavDirection === tn ? i[i.length - 1].focus() : i[0].focus() } _handleKeydown(t) { "Tab" === t.key && (this._lastTabNavDirection = t.shiftKey ? tn : "forward") } } const on = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", rn = ".sticky-top", an = "padding-right", ln = "margin-right"; class cn { constructor() { this._element = document.body } getWidth() { const t = document.documentElement.clientWidth; return Math.abs(window.innerWidth - t) } hide() { const t = this.getWidth(); this._disableOverFlow(), this._setElementAttributes(this._element, an, (e => e + t)), this._setElementAttributes(on, an, (e => e + t)), this._setElementAttributes(rn, ln, (e => e - t)) } reset() { this._resetElementAttributes(this._element, "overflow"), this._resetElementAttributes(this._element, an), this._resetElementAttributes(on, an), this._resetElementAttributes(rn, ln) } isOverflowing() { return this.getWidth() > 0 } _disableOverFlow() { this._saveInitialAttribute(this._element, "overflow"), this._element.style.overflow = "hidden" } _setElementAttributes(t, e, i) { const n = this.getWidth(); this._applyManipulationCallback(t, (t => { if (t !== this._element && window.innerWidth > t.clientWidth + n) return; this._saveInitialAttribute(t, e); const s = window.getComputedStyle(t).getPropertyValue(e); t.style.setProperty(e, `${i(Number.parseFloat(s))}px`) })) } _saveInitialAttribute(t, e) { const i = t.style.getPropertyValue(e); i && F.setDataAttribute(t, e, i) } _resetElementAttributes(t, e) { this._applyManipulationCallback(t, (t => { const i = F.getDataAttribute(t, e); null !== i ? (F.removeDataAttribute(t, e), t.style.setProperty(e, i)) : t.style.removeProperty(e) })) } _applyManipulationCallback(t, e) { if (o(t)) e(t); else for (const i of z.find(t, this._element)) e(i) } } const hn = ".bs.modal", dn = `hide${hn}`, un = `hidePrevented${hn}`, fn = `hidden${hn}`, pn = `show${hn}`, mn = `shown${hn}`, gn = `resize${hn}`, _n = `click.dismiss${hn}`, bn = `mousedown.dismiss${hn}`, vn = `keydown.dismiss${hn}`, yn = `click${hn}.data-api`, wn = "modal-open", An = "show", En = "modal-static", Tn = { backdrop: !0, focus: !0, keyboard: !0 }, Cn = { backdrop: "(boolean|string)", focus: "boolean", keyboard: "boolean" }; class On extends W { constructor(t, e) { super(t, e), this._dialog = z.findOne(".modal-dialog", this._element), this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._isShown = !1, this._isTransitioning = !1, this._scrollBar = new cn, this._addEventListeners() } static get Default() { return Tn } static get DefaultType() { return Cn } static get NAME() { return "modal" } toggle(t) { return this._isShown ? this.hide() : this.show(t) } show(t) { this._isShown || this._isTransitioning || N.trigger(this._element, pn, { relatedTarget: t }).defaultPrevented || (this._isShown = !0, this._isTransitioning = !0, this._scrollBar.hide(), document.body.classList.add(wn), this._adjustDialog(), this._backdrop.show((() => this._showElement(t)))) } hide() { this._isShown && !this._isTransitioning && (N.trigger(this._element, dn).defaultPrevented || (this._isShown = !1, this._isTransitioning = !0, this._focustrap.deactivate(), this._element.classList.remove(An), this._queueCallback((() => this._hideModal()), this._element, this._isAnimated()))) } dispose() { N.off(window, hn), N.off(this._dialog, hn), this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() } handleUpdate() { this._adjustDialog() } _initializeBackDrop() { return new Ui({ isVisible: Boolean(this._config.backdrop), isAnimated: this._isAnimated() }) } _initializeFocusTrap() { return new sn({ trapElement: this._element }) } _showElement(t) { document.body.contains(this._element) || document.body.append(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.scrollTop = 0; const e = z.findOne(".modal-body", this._dialog); e && (e.scrollTop = 0), d(this._element), this._element.classList.add(An), this._queueCallback((() => { this._config.focus && this._focustrap.activate(), this._isTransitioning = !1, N.trigger(this._element, mn, { relatedTarget: t }) }), this._dialog, this._isAnimated()) } _addEventListeners() { N.on(this._element, vn, (t => { "Escape" === t.key && (this._config.keyboard ? this.hide() : this._triggerBackdropTransition()) })), N.on(window, gn, (() => { this._isShown && !this._isTransitioning && this._adjustDialog() })), N.on(this._element, bn, (t => { N.one(this._element, _n, (e => { this._element === t.target && this._element === e.target && ("static" !== this._config.backdrop ? this._config.backdrop && this.hide() : this._triggerBackdropTransition()) })) })) } _hideModal() { this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._isTransitioning = !1, this._backdrop.hide((() => { document.body.classList.remove(wn), this._resetAdjustments(), this._scrollBar.reset(), N.trigger(this._element, fn) })) } _isAnimated() { return this._element.classList.contains("fade") } _triggerBackdropTransition() { if (N.trigger(this._element, un).defaultPrevented) return; const t = this._element.scrollHeight > document.documentElement.clientHeight, e = this._element.style.overflowY; "hidden" === e || this._element.classList.contains(En) || (t || (this._element.style.overflowY = "hidden"), this._element.classList.add(En), this._queueCallback((() => { this._element.classList.remove(En), this._queueCallback((() => { this._element.style.overflowY = e }), this._dialog) }), this._dialog), this._element.focus()) } _adjustDialog() { const t = this._element.scrollHeight > document.documentElement.clientHeight, e = this._scrollBar.getWidth(), i = e > 0; if (i && !t) { const t = p() ? "paddingLeft" : "paddingRight"; this._element.style[t] = `${e}px` } if (!i && t) { const t = p() ? "paddingRight" : "paddingLeft"; this._element.style[t] = `${e}px` } } _resetAdjustments() { this._element.style.paddingLeft = "", this._element.style.paddingRight = "" } static jQueryInterface(t, e) { return this.each((function () { const i = On.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === i[t]) throw new TypeError(`No method named "${t}"`); i[t](e) } })) } } N.on(document, yn, '[data-bs-toggle="modal"]', (function (t) { const e = z.getElementFromSelector(this);["A", "AREA"].includes(this.tagName) && t.preventDefault(), N.one(e, pn, (t => { t.defaultPrevented || N.one(e, fn, (() => { a(this) && this.focus() })) })); const i = z.findOne(".modal.show"); i && On.getInstance(i).hide(), On.getOrCreateInstance(e).toggle(this) })), R(On), m(On); const xn = ".bs.offcanvas", kn = ".data-api", Ln = `load${xn}${kn}`, Sn = "show", Dn = "showing", $n = "hiding", In = ".offcanvas.show", Nn = `show${xn}`, Pn = `shown${xn}`, jn = `hide${xn}`, Mn = `hidePrevented${xn}`, Fn = `hidden${xn}`, Hn = `resize${xn}`, Wn = `click${xn}${kn}`, Bn = `keydown.dismiss${xn}`, zn = { backdrop: !0, keyboard: !0, scroll: !1 }, Rn = { backdrop: "(boolean|string)", keyboard: "boolean", scroll: "boolean" }; class qn extends W { constructor(t, e) { super(t, e), this._isShown = !1, this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._addEventListeners() } static get Default() { return zn } static get DefaultType() { return Rn } static get NAME() { return "offcanvas" } toggle(t) { return this._isShown ? this.hide() : this.show(t) } show(t) { this._isShown || N.trigger(this._element, Nn, { relatedTarget: t }).defaultPrevented || (this._isShown = !0, this._backdrop.show(), this._config.scroll || (new cn).hide(), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.classList.add(Dn), this._queueCallback((() => { this._config.scroll && !this._config.backdrop || this._focustrap.activate(), this._element.classList.add(Sn), this._element.classList.remove(Dn), N.trigger(this._element, Pn, { relatedTarget: t }) }), this._element, !0)) } hide() { this._isShown && (N.trigger(this._element, jn).defaultPrevented || (this._focustrap.deactivate(), this._element.blur(), this._isShown = !1, this._element.classList.add($n), this._backdrop.hide(), this._queueCallback((() => { this._element.classList.remove(Sn, $n), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._config.scroll || (new cn).reset(), N.trigger(this._element, Fn) }), this._element, !0))) } dispose() { this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() } _initializeBackDrop() { const t = Boolean(this._config.backdrop); return new Ui({ className: "offcanvas-backdrop", isVisible: t, isAnimated: !0, rootElement: this._element.parentNode, clickCallback: t ? () => { "static" !== this._config.backdrop ? this.hide() : N.trigger(this._element, Mn) } : null }) } _initializeFocusTrap() { return new sn({ trapElement: this._element }) } _addEventListeners() { N.on(this._element, Bn, (t => { "Escape" === t.key && (this._config.keyboard ? this.hide() : N.trigger(this._element, Mn)) })) } static jQueryInterface(t) { return this.each((function () { const e = qn.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method named "${t}"`); e[t](this) } })) } } N.on(document, Wn, '[data-bs-toggle="offcanvas"]', (function (t) { const e = z.getElementFromSelector(this); if (["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this)) return; N.one(e, Fn, (() => { a(this) && this.focus() })); const i = z.findOne(In); i && i !== e && qn.getInstance(i).hide(), qn.getOrCreateInstance(e).toggle(this) })), N.on(window, Ln, (() => { for (const t of z.find(In)) qn.getOrCreateInstance(t).show() })), N.on(window, Hn, (() => { for (const t of z.find("[aria-modal][class*=show][class*=offcanvas-]")) "fixed" !== getComputedStyle(t).position && qn.getOrCreateInstance(t).hide() })), R(qn), m(qn); const Vn = { "*": ["class", "dir", "id", "lang", "role", /^aria-[\w-]*$/i], a: ["target", "href", "title", "rel"], area: [], b: [], br: [], col: [], code: [], dd: [], div: [], dl: [], dt: [], em: [], hr: [], h1: [], h2: [], h3: [], h4: [], h5: [], h6: [], i: [], img: ["src", "srcset", "alt", "title", "width", "height"], li: [], ol: [], p: [], pre: [], s: [], small: [], span: [], sub: [], sup: [], strong: [], u: [], ul: [] }, Kn = new Set(["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"]), Qn = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i, Xn = (t, e) => { const i = t.nodeName.toLowerCase(); return e.includes(i) ? !Kn.has(i) || Boolean(Qn.test(t.nodeValue)) : e.filter((t => t instanceof RegExp)).some((t => t.test(i))) }, Yn = { allowList: Vn, content: {}, extraClass: "", html: !1, sanitize: !0, sanitizeFn: null, template: "
" }, Un = { allowList: "object", content: "object", extraClass: "(string|function)", html: "boolean", sanitize: "boolean", sanitizeFn: "(null|function)", template: "string" }, Gn = { entry: "(string|element|function|null)", selector: "(string|element)" }; class Jn extends H { constructor(t) { super(), this._config = this._getConfig(t) } static get Default() { return Yn } static get DefaultType() { return Un } static get NAME() { return "TemplateFactory" } getContent() { return Object.values(this._config.content).map((t => this._resolvePossibleFunction(t))).filter(Boolean) } hasContent() { return this.getContent().length > 0 } changeContent(t) { return this._checkContent(t), this._config.content = { ...this._config.content, ...t }, this } toHtml() { const t = document.createElement("div"); t.innerHTML = this._maybeSanitize(this._config.template); for (const [e, i] of Object.entries(this._config.content)) this._setContent(t, i, e); const e = t.children[0], i = this._resolvePossibleFunction(this._config.extraClass); return i && e.classList.add(...i.split(" ")), e } _typeCheckConfig(t) { super._typeCheckConfig(t), this._checkContent(t.content) } _checkContent(t) { for (const [e, i] of Object.entries(t)) super._typeCheckConfig({ selector: e, entry: i }, Gn) } _setContent(t, e, i) { const n = z.findOne(i, t); n && ((e = this._resolvePossibleFunction(e)) ? o(e) ? this._putElementInTemplate(r(e), n) : this._config.html ? n.innerHTML = this._maybeSanitize(e) : n.textContent = e : n.remove()) } _maybeSanitize(t) { return this._config.sanitize ? function (t, e, i) { if (!t.length) return t; if (i && "function" == typeof i) return i(t); const n = (new window.DOMParser).parseFromString(t, "text/html"), s = [].concat(...n.body.querySelectorAll("*")); for (const t of s) { const i = t.nodeName.toLowerCase(); if (!Object.keys(e).includes(i)) { t.remove(); continue } const n = [].concat(...t.attributes), s = [].concat(e["*"] || [], e[i] || []); for (const e of n) Xn(e, s) || t.removeAttribute(e.nodeName) } return n.body.innerHTML }(t, this._config.allowList, this._config.sanitizeFn) : t } _resolvePossibleFunction(t) { return g(t, [this]) } _putElementInTemplate(t, e) { if (this._config.html) return e.innerHTML = "", void e.append(t); e.textContent = t.textContent } } const Zn = new Set(["sanitize", "allowList", "sanitizeFn"]), ts = "fade", es = "show", is = ".modal", ns = "hide.bs.modal", ss = "hover", os = "focus", rs = { AUTO: "auto", TOP: "top", RIGHT: p() ? "left" : "right", BOTTOM: "bottom", LEFT: p() ? "right" : "left" }, as = { allowList: Vn, animation: !0, boundary: "clippingParents", container: !1, customClass: "", delay: 0, fallbackPlacements: ["top", "right", "bottom", "left"], html: !1, offset: [0, 6], placement: "top", popperConfig: null, sanitize: !0, sanitizeFn: null, selector: !1, template: '', title: "", trigger: "hover focus" }, ls = { allowList: "object", animation: "boolean", boundary: "(string|element)", container: "(string|element|boolean)", customClass: "(string|function)", delay: "(number|object)", fallbackPlacements: "array", html: "boolean", offset: "(array|string|function)", placement: "(string|function)", popperConfig: "(null|object|function)", sanitize: "boolean", sanitizeFn: "(null|function)", selector: "(string|boolean)", template: "string", title: "(string|element|function)", trigger: "string" }; class cs extends W { constructor(t, e) { if (void 0 === vi) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)"); super(t, e), this._isEnabled = !0, this._timeout = 0, this._isHovered = null, this._activeTrigger = {}, this._popper = null, this._templateFactory = null, this._newContent = null, this.tip = null, this._setListeners(), this._config.selector || this._fixTitle() } static get Default() { return as } static get DefaultType() { return ls } static get NAME() { return "tooltip" } enable() { this._isEnabled = !0 } disable() { this._isEnabled = !1 } toggleEnabled() { this._isEnabled = !this._isEnabled } toggle() { this._isEnabled && (this._activeTrigger.click = !this._activeTrigger.click, this._isShown() ? this._leave() : this._enter()) } dispose() { clearTimeout(this._timeout), N.off(this._element.closest(is), ns, this._hideModalHandler), this._element.getAttribute("data-bs-original-title") && this._element.setAttribute("title", this._element.getAttribute("data-bs-original-title")), this._disposePopper(), super.dispose() } show() { if ("none" === this._element.style.display) throw new Error("Please use show on visible elements"); if (!this._isWithContent() || !this._isEnabled) return; const t = N.trigger(this._element, this.constructor.eventName("show")), e = (c(this._element) || this._element.ownerDocument.documentElement).contains(this._element); if (t.defaultPrevented || !e) return; this._disposePopper(); const i = this._getTipElement(); this._element.setAttribute("aria-describedby", i.getAttribute("id")); const { container: n } = this._config; if (this._element.ownerDocument.documentElement.contains(this.tip) || (n.append(i), N.trigger(this._element, this.constructor.eventName("inserted"))), this._popper = this._createPopper(i), i.classList.add(es), "ontouchstart" in document.documentElement) for (const t of [].concat(...document.body.children)) N.on(t, "mouseover", h); this._queueCallback((() => { N.trigger(this._element, this.constructor.eventName("shown")), !1 === this._isHovered && this._leave(), this._isHovered = !1 }), this.tip, this._isAnimated()) } hide() { if (this._isShown() && !N.trigger(this._element, this.constructor.eventName("hide")).defaultPrevented) { if (this._getTipElement().classList.remove(es), "ontouchstart" in document.documentElement) for (const t of [].concat(...document.body.children)) N.off(t, "mouseover", h); this._activeTrigger.click = !1, this._activeTrigger[os] = !1, this._activeTrigger[ss] = !1, this._isHovered = null, this._queueCallback((() => { this._isWithActiveTrigger() || (this._isHovered || this._disposePopper(), this._element.removeAttribute("aria-describedby"), N.trigger(this._element, this.constructor.eventName("hidden"))) }), this.tip, this._isAnimated()) } } update() { this._popper && this._popper.update() } _isWithContent() { return Boolean(this._getTitle()) } _getTipElement() { return this.tip || (this.tip = this._createTipElement(this._newContent || this._getContentForTemplate())), this.tip } _createTipElement(t) { const e = this._getTemplateFactory(t).toHtml(); if (!e) return null; e.classList.remove(ts, es), e.classList.add(`bs-${this.constructor.NAME}-auto`); const i = (t => { do { t += Math.floor(1e6 * Math.random()) } while (document.getElementById(t)); return t })(this.constructor.NAME).toString(); return e.setAttribute("id", i), this._isAnimated() && e.classList.add(ts), e } setContent(t) { this._newContent = t, this._isShown() && (this._disposePopper(), this.show()) } _getTemplateFactory(t) { return this._templateFactory ? this._templateFactory.changeContent(t) : this._templateFactory = new Jn({ ...this._config, content: t, extraClass: this._resolvePossibleFunction(this._config.customClass) }), this._templateFactory } _getContentForTemplate() { return { ".tooltip-inner": this._getTitle() } } _getTitle() { return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute("data-bs-original-title") } _initializeOnDelegatedTarget(t) { return this.constructor.getOrCreateInstance(t.delegateTarget, this._getDelegateConfig()) } _isAnimated() { return this._config.animation || this.tip && this.tip.classList.contains(ts) } _isShown() { return this.tip && this.tip.classList.contains(es) } _createPopper(t) { const e = g(this._config.placement, [this, t, this._element]), i = rs[e.toUpperCase()]; return bi(this._element, t, this._getPopperConfig(i)) } _getOffset() { const { offset: t } = this._config; return "string" == typeof t ? t.split(",").map((t => Number.parseInt(t, 10))) : "function" == typeof t ? e => t(e, this._element) : t } _resolvePossibleFunction(t) { return g(t, [this._element]) } _getPopperConfig(t) { const e = { placement: t, modifiers: [{ name: "flip", options: { fallbackPlacements: this._config.fallbackPlacements } }, { name: "offset", options: { offset: this._getOffset() } }, { name: "preventOverflow", options: { boundary: this._config.boundary } }, { name: "arrow", options: { element: `.${this.constructor.NAME}-arrow` } }, { name: "preSetPlacement", enabled: !0, phase: "beforeMain", fn: t => { this._getTipElement().setAttribute("data-popper-placement", t.state.placement) } }] }; return { ...e, ...g(this._config.popperConfig, [e]) } } _setListeners() { const t = this._config.trigger.split(" "); for (const e of t) if ("click" === e) N.on(this._element, this.constructor.eventName("click"), this._config.selector, (t => { this._initializeOnDelegatedTarget(t).toggle() })); else if ("manual" !== e) { const t = e === ss ? this.constructor.eventName("mouseenter") : this.constructor.eventName("focusin"), i = e === ss ? this.constructor.eventName("mouseleave") : this.constructor.eventName("focusout"); N.on(this._element, t, this._config.selector, (t => { const e = this._initializeOnDelegatedTarget(t); e._activeTrigger["focusin" === t.type ? os : ss] = !0, e._enter() })), N.on(this._element, i, this._config.selector, (t => { const e = this._initializeOnDelegatedTarget(t); e._activeTrigger["focusout" === t.type ? os : ss] = e._element.contains(t.relatedTarget), e._leave() })) } this._hideModalHandler = () => { this._element && this.hide() }, N.on(this._element.closest(is), ns, this._hideModalHandler) } _fixTitle() { const t = this._element.getAttribute("title"); t && (this._element.getAttribute("aria-label") || this._element.textContent.trim() || this._element.setAttribute("aria-label", t), this._element.setAttribute("data-bs-original-title", t), this._element.removeAttribute("title")) } _enter() { this._isShown() || this._isHovered ? this._isHovered = !0 : (this._isHovered = !0, this._setTimeout((() => { this._isHovered && this.show() }), this._config.delay.show)) } _leave() { this._isWithActiveTrigger() || (this._isHovered = !1, this._setTimeout((() => { this._isHovered || this.hide() }), this._config.delay.hide)) } _setTimeout(t, e) { clearTimeout(this._timeout), this._timeout = setTimeout(t, e) } _isWithActiveTrigger() { return Object.values(this._activeTrigger).includes(!0) } _getConfig(t) { const e = F.getDataAttributes(this._element); for (const t of Object.keys(e)) Zn.has(t) && delete e[t]; return t = { ...e, ..."object" == typeof t && t ? t : {} }, t = this._mergeConfigObj(t), t = this._configAfterMerge(t), this._typeCheckConfig(t), t } _configAfterMerge(t) { return t.container = !1 === t.container ? document.body : r(t.container), "number" == typeof t.delay && (t.delay = { show: t.delay, hide: t.delay }), "number" == typeof t.title && (t.title = t.title.toString()), "number" == typeof t.content && (t.content = t.content.toString()), t } _getDelegateConfig() { const t = {}; for (const [e, i] of Object.entries(this._config)) this.constructor.Default[e] !== i && (t[e] = i); return t.selector = !1, t.trigger = "manual", t } _disposePopper() { this._popper && (this._popper.destroy(), this._popper = null), this.tip && (this.tip.remove(), this.tip = null) } static jQueryInterface(t) { return this.each((function () { const e = cs.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } m(cs); const hs = { ...cs.Default, content: "", offset: [0, 8], placement: "right", template: '', trigger: "click" }, ds = { ...cs.DefaultType, content: "(null|string|element|function)" }; class us extends cs { static get Default() { return hs } static get DefaultType() { return ds } static get NAME() { return "popover" } _isWithContent() { return this._getTitle() || this._getContent() } _getContentForTemplate() { return { ".popover-header": this._getTitle(), ".popover-body": this._getContent() } } _getContent() { return this._resolvePossibleFunction(this._config.content) } static jQueryInterface(t) { return this.each((function () { const e = us.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } m(us); const fs = ".bs.scrollspy", ps = `activate${fs}`, ms = `click${fs}`, gs = `load${fs}.data-api`, _s = "active", bs = "[href]", vs = ".nav-link", ys = `${vs}, .nav-item > ${vs}, .list-group-item`, ws = { offset: null, rootMargin: "0px 0px -25%", smoothScroll: !1, target: null, threshold: [.1, .5, 1] }, As = { offset: "(number|null)", rootMargin: "string", smoothScroll: "boolean", target: "element", threshold: "array" }; class Es extends W { constructor(t, e) { super(t, e), this._targetLinks = new Map, this._observableSections = new Map, this._rootElement = "visible" === getComputedStyle(this._element).overflowY ? null : this._element, this._activeTarget = null, this._observer = null, this._previousScrollData = { visibleEntryTop: 0, parentScrollTop: 0 }, this.refresh() } static get Default() { return ws } static get DefaultType() { return As } static get NAME() { return "scrollspy" } refresh() { this._initializeTargetsAndObservables(), this._maybeEnableSmoothScroll(), this._observer ? this._observer.disconnect() : this._observer = this._getNewObserver(); for (const t of this._observableSections.values()) this._observer.observe(t) } dispose() { this._observer.disconnect(), super.dispose() } _configAfterMerge(t) { return t.target = r(t.target) || document.body, t.rootMargin = t.offset ? `${t.offset}px 0px -30%` : t.rootMargin, "string" == typeof t.threshold && (t.threshold = t.threshold.split(",").map((t => Number.parseFloat(t)))), t } _maybeEnableSmoothScroll() { this._config.smoothScroll && (N.off(this._config.target, ms), N.on(this._config.target, ms, bs, (t => { const e = this._observableSections.get(t.target.hash); if (e) { t.preventDefault(); const i = this._rootElement || window, n = e.offsetTop - this._element.offsetTop; if (i.scrollTo) return void i.scrollTo({ top: n, behavior: "smooth" }); i.scrollTop = n } }))) } _getNewObserver() { const t = { root: this._rootElement, threshold: this._config.threshold, rootMargin: this._config.rootMargin }; return new IntersectionObserver((t => this._observerCallback(t)), t) } _observerCallback(t) { const e = t => this._targetLinks.get(`#${t.target.id}`), i = t => { this._previousScrollData.visibleEntryTop = t.target.offsetTop, this._process(e(t)) }, n = (this._rootElement || document.documentElement).scrollTop, s = n >= this._previousScrollData.parentScrollTop; this._previousScrollData.parentScrollTop = n; for (const o of t) { if (!o.isIntersecting) { this._activeTarget = null, this._clearActiveClass(e(o)); continue } const t = o.target.offsetTop >= this._previousScrollData.visibleEntryTop; if (s && t) { if (i(o), !n) return } else s || t || i(o) } } _initializeTargetsAndObservables() { this._targetLinks = new Map, this._observableSections = new Map; const t = z.find(bs, this._config.target); for (const e of t) { if (!e.hash || l(e)) continue; const t = z.findOne(decodeURI(e.hash), this._element); a(t) && (this._targetLinks.set(decodeURI(e.hash), e), this._observableSections.set(e.hash, t)) } } _process(t) { this._activeTarget !== t && (this._clearActiveClass(this._config.target), this._activeTarget = t, t.classList.add(_s), this._activateParents(t), N.trigger(this._element, ps, { relatedTarget: t })) } _activateParents(t) { if (t.classList.contains("dropdown-item")) z.findOne(".dropdown-toggle", t.closest(".dropdown")).classList.add(_s); else for (const e of z.parents(t, ".nav, .list-group")) for (const t of z.prev(e, ys)) t.classList.add(_s) } _clearActiveClass(t) { t.classList.remove(_s); const e = z.find(`${bs}.${_s}`, t); for (const t of e) t.classList.remove(_s) } static jQueryInterface(t) { return this.each((function () { const e = Es.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } N.on(window, gs, (() => { for (const t of z.find('[data-bs-spy="scroll"]')) Es.getOrCreateInstance(t) })), m(Es); const Ts = ".bs.tab", Cs = `hide${Ts}`, Os = `hidden${Ts}`, xs = `show${Ts}`, ks = `shown${Ts}`, Ls = `click${Ts}`, Ss = `keydown${Ts}`, Ds = `load${Ts}`, $s = "ArrowLeft", Is = "ArrowRight", Ns = "ArrowUp", Ps = "ArrowDown", js = "Home", Ms = "End", Fs = "active", Hs = "fade", Ws = "show", Bs = ".dropdown-toggle", zs = `:not(${Bs})`, Rs = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]', qs = `.nav-link${zs}, .list-group-item${zs}, [role="tab"]${zs}, ${Rs}`, Vs = `.${Fs}[data-bs-toggle="tab"], .${Fs}[data-bs-toggle="pill"], .${Fs}[data-bs-toggle="list"]`; class Ks extends W { constructor(t) { super(t), this._parent = this._element.closest('.list-group, .nav, [role="tablist"]'), this._parent && (this._setInitialAttributes(this._parent, this._getChildren()), N.on(this._element, Ss, (t => this._keydown(t)))) } static get NAME() { return "tab" } show() { const t = this._element; if (this._elemIsActive(t)) return; const e = this._getActiveElem(), i = e ? N.trigger(e, Cs, { relatedTarget: t }) : null; N.trigger(t, xs, { relatedTarget: e }).defaultPrevented || i && i.defaultPrevented || (this._deactivate(e, t), this._activate(t, e)) } _activate(t, e) { t && (t.classList.add(Fs), this._activate(z.getElementFromSelector(t)), this._queueCallback((() => { "tab" === t.getAttribute("role") ? (t.removeAttribute("tabindex"), t.setAttribute("aria-selected", !0), this._toggleDropDown(t, !0), N.trigger(t, ks, { relatedTarget: e })) : t.classList.add(Ws) }), t, t.classList.contains(Hs))) } _deactivate(t, e) { t && (t.classList.remove(Fs), t.blur(), this._deactivate(z.getElementFromSelector(t)), this._queueCallback((() => { "tab" === t.getAttribute("role") ? (t.setAttribute("aria-selected", !1), t.setAttribute("tabindex", "-1"), this._toggleDropDown(t, !1), N.trigger(t, Os, { relatedTarget: e })) : t.classList.remove(Ws) }), t, t.classList.contains(Hs))) } _keydown(t) { if (![$s, Is, Ns, Ps, js, Ms].includes(t.key)) return; t.stopPropagation(), t.preventDefault(); const e = this._getChildren().filter((t => !l(t))); let i; if ([js, Ms].includes(t.key)) i = e[t.key === js ? 0 : e.length - 1]; else { const n = [Is, Ps].includes(t.key); i = b(e, t.target, n, !0) } i && (i.focus({ preventScroll: !0 }), Ks.getOrCreateInstance(i).show()) } _getChildren() { return z.find(qs, this._parent) } _getActiveElem() { return this._getChildren().find((t => this._elemIsActive(t))) || null } _setInitialAttributes(t, e) { this._setAttributeIfNotExists(t, "role", "tablist"); for (const t of e) this._setInitialAttributesOnChild(t) } _setInitialAttributesOnChild(t) { t = this._getInnerElement(t); const e = this._elemIsActive(t), i = this._getOuterElement(t); t.setAttribute("aria-selected", e), i !== t && this._setAttributeIfNotExists(i, "role", "presentation"), e || t.setAttribute("tabindex", "-1"), this._setAttributeIfNotExists(t, "role", "tab"), this._setInitialAttributesOnTargetPanel(t) } _setInitialAttributesOnTargetPanel(t) { const e = z.getElementFromSelector(t); e && (this._setAttributeIfNotExists(e, "role", "tabpanel"), t.id && this._setAttributeIfNotExists(e, "aria-labelledby", `${t.id}`)) } _toggleDropDown(t, e) { const i = this._getOuterElement(t); if (!i.classList.contains("dropdown")) return; const n = (t, n) => { const s = z.findOne(t, i); s && s.classList.toggle(n, e) }; n(Bs, Fs), n(".dropdown-menu", Ws), i.setAttribute("aria-expanded", e) } _setAttributeIfNotExists(t, e, i) { t.hasAttribute(e) || t.setAttribute(e, i) } _elemIsActive(t) { return t.classList.contains(Fs) } _getInnerElement(t) { return t.matches(qs) ? t : z.findOne(qs, t) } _getOuterElement(t) { return t.closest(".nav-item, .list-group-item") || t } static jQueryInterface(t) { return this.each((function () { const e = Ks.getOrCreateInstance(this); if ("string" == typeof t) { if (void 0 === e[t] || t.startsWith("_") || "constructor" === t) throw new TypeError(`No method named "${t}"`); e[t]() } })) } } N.on(document, Ls, Rs, (function (t) { ["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this) || Ks.getOrCreateInstance(this).show() })), N.on(window, Ds, (() => { for (const t of z.find(Vs)) Ks.getOrCreateInstance(t) })), m(Ks); const Qs = ".bs.toast", Xs = `mouseover${Qs}`, Ys = `mouseout${Qs}`, Us = `focusin${Qs}`, Gs = `focusout${Qs}`, Js = `hide${Qs}`, Zs = `hidden${Qs}`, to = `show${Qs}`, eo = `shown${Qs}`, io = "hide", no = "show", so = "showing", oo = { animation: "boolean", autohide: "boolean", delay: "number" }, ro = { animation: !0, autohide: !0, delay: 5e3 }; class ao extends W { constructor(t, e) { super(t, e), this._timeout = null, this._hasMouseInteraction = !1, this._hasKeyboardInteraction = !1, this._setListeners() } static get Default() { return ro } static get DefaultType() { return oo } static get NAME() { return "toast" } show() { N.trigger(this._element, to).defaultPrevented || (this._clearTimeout(), this._config.animation && this._element.classList.add("fade"), this._element.classList.remove(io), d(this._element), this._element.classList.add(no, so), this._queueCallback((() => { this._element.classList.remove(so), N.trigger(this._element, eo), this._maybeScheduleHide() }), this._element, this._config.animation)) } hide() { this.isShown() && (N.trigger(this._element, Js).defaultPrevented || (this._element.classList.add(so), this._queueCallback((() => { this._element.classList.add(io), this._element.classList.remove(so, no), N.trigger(this._element, Zs) }), this._element, this._config.animation))) } dispose() { this._clearTimeout(), this.isShown() && this._element.classList.remove(no), super.dispose() } isShown() { return this._element.classList.contains(no) } _maybeScheduleHide() { this._config.autohide && (this._hasMouseInteraction || this._hasKeyboardInteraction || (this._timeout = setTimeout((() => { this.hide() }), this._config.delay))) } _onInteraction(t, e) { switch (t.type) { case "mouseover": case "mouseout": this._hasMouseInteraction = e; break; case "focusin": case "focusout": this._hasKeyboardInteraction = e }if (e) return void this._clearTimeout(); const i = t.relatedTarget; this._element === i || this._element.contains(i) || this._maybeScheduleHide() } _setListeners() { N.on(this._element, Xs, (t => this._onInteraction(t, !0))), N.on(this._element, Ys, (t => this._onInteraction(t, !1))), N.on(this._element, Us, (t => this._onInteraction(t, !0))), N.on(this._element, Gs, (t => this._onInteraction(t, !1))) } _clearTimeout() { clearTimeout(this._timeout), this._timeout = null } static jQueryInterface(t) { return this.each((function () { const e = ao.getOrCreateInstance(this, t); if ("string" == typeof t) { if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); e[t](this) } })) } } return R(ao), m(ao), { Alert: Q, Button: Y, Carousel: xt, Collapse: Bt, Dropdown: qi, Modal: On, Offcanvas: qn, Popover: us, ScrollSpy: Es, Tab: Ks, Toast: ao, Tooltip: cs } }));
+//# sourceMappingURL=bootstrap.bundle.min.js.map
\ No newline at end of file
diff --git a/web/controller/api.go b/web/controller/api.go
index 1a39f8ed..f186655d 100644
--- a/web/controller/api.go
+++ b/web/controller/api.go
@@ -12,9 +12,10 @@ import (
// APIController handles the main API routes for the 3x-ui panel, including inbounds and server management.
type APIController struct {
BaseController
- inboundController *InboundController
- serverController *ServerController
- Tgbot service.Tgbot
+ inboundController *InboundController
+ serverController *ServerController
+ multiServerController *MultiServerController
+ Tgbot service.Tgbot
}
// NewAPIController creates a new APIController instance and initializes its routes.
@@ -48,6 +49,10 @@ func (a *APIController) initRouter(g *gin.RouterGroup) {
server := api.Group("/server")
a.serverController = NewServerController(server)
+ // Servers api
+ servers := api.Group("/servers")
+ a.multiServerController = NewMultiServerController(servers)
+
// Extra routes
api.GET("/backuptotgbot", a.BackuptoTgbot)
}
diff --git a/web/controller/multi_server_controller.go b/web/controller/multi_server_controller.go
index 84a979ba..1b5c171d 100644
--- a/web/controller/multi_server_controller.go
+++ b/web/controller/multi_server_controller.go
@@ -20,7 +20,6 @@ func NewMultiServerController(g *gin.RouterGroup) *MultiServerController {
}
func (c *MultiServerController) initRouter(g *gin.RouterGroup) {
- g = g.Group("/server")
g.GET("/list", c.getServers)
g.POST("/add", c.addServer)
diff --git a/web/html/servers.html b/web/html/servers.html
index df7f982a..701b54c9 100644
--- a/web/html/servers.html
+++ b/web/html/servers.html
@@ -1,174 +1,277 @@
-{{template "header" .}}
+{{ template "page/head_start" .}}
+
+
+{{ template "page/head_end" .}} {{ template
+"page/body_start" .}}
-
-
-
-
-
-
-
-
- | # |
- Name |
- Address |
- Port |
- Enabled |
- Actions |
-
-
-
-
- | {{index + 1}} |
- {{server.name}} |
- {{server.address}} |
- {{server.port}} |
-
- Yes
- No
- |
-
-
-
- |
-
-
-
-
-
-
+
+
+
+
+
+
+
+ {{ i18n "secAlertConf" }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ | # |
+ Name |
+ Address |
+ Port |
+ Enabled |
+ Actions |
+
+
+
+
+
+ | [[ index + 1 ]] |
+ [[ server.name ]] |
+ [[ server.address ]] |
+ [[ server.port ]] |
+ YesNo
+ |
+ |
+
+
+
+ | No servers found |
+
+
+
+
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+{{template "page/body_scripts" .}} {{template "component/aSidebar" .}}
+{{template "component/aThemeSwitch" .}}
+
+
+
+
-
-{{template "footer" .}}
-
+{{ template "page/body_end" .}}
\ No newline at end of file
diff --git a/web/translation/translate.ru_RU.toml b/web/translation/translate.ru_RU.toml
index c75ae649..38e52086 100644
--- a/web/translation/translate.ru_RU.toml
+++ b/web/translation/translate.ru_RU.toml
@@ -72,6 +72,9 @@
"emptyReverseDesc" = "Нет добавленных реверс-прокси."
"somethingWentWrong" = "Что-то пошло не так"
+"Server" = "Сервер"
+"Servers" = "Серверы"
+
[subscription]
"title" = "Информация о подписке"
"subId" = "ID подписки"