diff --git a/instance/database.db b/instance/database.db index 22c011408e2e6f3d1890dfc83d4423d981d9b486..ac725b05975deccfa5719f0ae4337af8cc29e5d7 100644 Binary files a/instance/database.db and b/instance/database.db differ diff --git a/store/__init__.py b/store/__init__.py index 7ef2e13f2de8d3e7507abd6e39f65bee81593e1e..48d3335c957f3bad8a15d852981781fc2354f367 100644 --- a/store/__init__.py +++ b/store/__init__.py @@ -15,9 +15,11 @@ def create_app(): from .views import views from .auth import auth + from .productViews import productViews app.register_blueprint(views, url_prefix='/') app.register_blueprint(auth, url_prefix='/') + app.register_blueprint(productViews, url_prefix='/') from .models import User, Product, Basket, Review diff --git a/store/__pycache__/__init__.cpython-39.pyc b/store/__pycache__/__init__.cpython-39.pyc index 7e09aaa1b7deb05aaf644690c85a471da517bd94..adf94d6a183576f33825616f3e907517af1adc46 100644 Binary files a/store/__pycache__/__init__.cpython-39.pyc and b/store/__pycache__/__init__.cpython-39.pyc differ diff --git a/store/__pycache__/auth.cpython-39.pyc b/store/__pycache__/auth.cpython-39.pyc index c352d8c22333eff16848783223ed48ad47a15eab..a9bb144aa36ef8fc2e1018d5cdd9ebae3a3bedee 100644 Binary files a/store/__pycache__/auth.cpython-39.pyc and b/store/__pycache__/auth.cpython-39.pyc differ diff --git a/store/__pycache__/itemInit.cpython-39.pyc b/store/__pycache__/itemInit.cpython-39.pyc index 6285db82f9eeab9871fcf8f9d7b598d28361ebb0..e05bf70b09309db7cf5d7dddf26e83cb36358784 100644 Binary files a/store/__pycache__/itemInit.cpython-39.pyc and b/store/__pycache__/itemInit.cpython-39.pyc differ diff --git a/store/__pycache__/productViews.cpython-39.pyc b/store/__pycache__/productViews.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8b329b4845f6bc332cce0da92e7b943564c685ea Binary files /dev/null and b/store/__pycache__/productViews.cpython-39.pyc differ diff --git a/store/__pycache__/views.cpython-39.pyc b/store/__pycache__/views.cpython-39.pyc index b0a2352c864a74d0ba68ef69daaec9787d37c5ff..060fc72ec47649e66ad5c4f39282ebff97a91b2b 100644 Binary files a/store/__pycache__/views.cpython-39.pyc and b/store/__pycache__/views.cpython-39.pyc differ diff --git a/store/auth.py b/store/auth.py index 049bedd7ea31ae75317643f64fa74f15d7f9692a..60039bc7d6c0ae5546d35013456e0b50ce71c0ae 100644 --- a/store/auth.py +++ b/store/auth.py @@ -43,7 +43,7 @@ def sign_up(): if request.method == 'POST': email = request.form.get('email') username = request.form.get('username') - password1 = request.form.get('password1') + password1 = request.form.get('password') password2 = request.form.get('password2') user = User.query.filter_by(email=email).first() diff --git a/store/itemInit.py b/store/itemInit.py index e33a547384d91c598a1670c541a0a4ac2a2aab9d..726ea6d1d108edbd128eee6cb5bf8e659a04fd99 100644 --- a/store/itemInit.py +++ b/store/itemInit.py @@ -36,6 +36,14 @@ def getFly(): db.session.commit() return fly +def getCoffee(): + coffee = Product.query.filter_by(shorthand="coffee").first() + if not coffee: + coffee = Product(id="5", name='Alpha Mart Coffee Blend', shorthand="coffee", price=340, envImpact=4) + db.session.add(coffee) + db.session.commit() + return coffee + def getProducts(string=""): if string == "creamer": @@ -46,8 +54,10 @@ def getProducts(string=""): return getExistence elif string == "fly": return getFly + elif string == "coffee": + return getCoffee else: - return [getCreamer(), getDread(), getExistence(), getFly()] + return [getCreamer(), getDread(), getExistence(), getFly(), getCoffee()] def sortProducts(string="name"): diff --git a/store/productViews.py b/store/productViews.py new file mode 100644 index 0000000000000000000000000000000000000000..d5686778fe4960320224414bbb0387b49b29fb20 --- /dev/null +++ b/store/productViews.py @@ -0,0 +1,229 @@ +from flask import Blueprint, render_template, request, flash, jsonify, url_for, redirect, session +from flask_login import current_user +from .models import Basket, Product, User, Review +from . import db +from .itemInit import * +import json + +productViews = Blueprint('productViews', __name__) + +def searchReviews(item): + reviews = getProducts(item)().reviews + for review in reviews: + if review.user[0] == current_user: + return True + return False + + +def checkItem(user, item): + for basket in user.basket: + for basketitem in basket.item: + if basketitem.id == item.id: + return basket + return None + + +@productViews.route('/creamer', methods=['GET', 'POST']) +def creamer(): + if request.method == 'POST': + + if request.form.values(): + + if request.form.get('submit') == 'submit': + product = getCreamer() + basket_item = checkItem(current_user, product) + + if basket_item: + basket_item.quantity = basket_item.quantity + 1 + else: + basket_item = Basket(user_id=current_user.id, item=[product], quantity=1) + db.session.add(basket_item) + db.session.commit() + flash('Item added to cart!', category='success') + + elif request.form.get('delete'): + creamer = getCreamer() + for review in creamer.reviews: + if review.user[0] == current_user: + db.session.delete(review) + db.session.commit() + + + if request.form.get('rating') and request.form.get('review'): + if not searchReviews(getCreamer().shorthand): + rating = request.form.get('rating') + description = request.form.get('review') + + creamer = getCreamer() + new_review = Review(user=[current_user], description=description, rating=rating) + creamer.reviews.append(new_review) + db.session.commit() + flash("Review added!", category='success') + else: + flash("You have already reviewed this product!", category='error') + + return render_template("creamer.html", user=current_user, product=getCreamer()) + +@productViews.route('/coffee', methods=['GET', 'POST']) +def coffee(): + if request.method == 'POST': + + if request.form.values(): + + if request.form.get('submit') == 'submit': + product = getCoffee() + basket_item = checkItem(current_user, product) + + if basket_item: + basket_item.quantity = basket_item.quantity + 1 + else: + basket_item = Basket(user_id=current_user.id, item=[product], quantity=1) + db.session.add(basket_item) + db.session.commit() + flash('Item added to cart!', category='success') + + elif request.form.get('delete'): + coffee = getCoffee() + for review in coffee.reviews: + if review.user[0] == current_user: + db.session.delete(review) + db.session.commit() + + + if request.form.get('rating') and request.form.get('review'): + if not searchReviews(getCoffee().shorthand): + rating = request.form.get('rating') + description = request.form.get('review') + + coffee = getCoffee() + new_review = Review(user=[current_user], description=description, rating=rating) + coffee.reviews.append(new_review) + db.session.commit() + flash("Review added!", category='success') + else: + flash("You have already reviewed this product!", category='error') + + return render_template("coffee.html", user=current_user, product=getCoffee()) + +@productViews.route('/dread', methods=['GET', 'POST']) +def dread(): + if request.method == 'POST': + + if request.form.values(): + + if request.form.get('submit') == 'submit': + product = getDread() + basket_item = checkItem(current_user, product) + + if basket_item: + basket_item.quantity = basket_item.quantity + 1 + else: + basket_item = Basket(user_id=current_user.id, item=[product], quantity=1) + db.session.add(basket_item) + db.session.commit() + flash('Item added to cart!', category='success') + + elif request.form.get('delete'): + dread = getDread() + for review in dread.reviews: + if review.user[0] == current_user: + db.session.delete(review) + db.session.commit() + + + if request.form.get('rating') and request.form.get('review'): + if not searchReviews(getDread().shorthand): + rating = request.form.get('rating') + description = request.form.get('review') + + dread = getDread() + new_review = Review(user=[current_user], description=description, rating=rating) + dread.reviews.append(new_review) + db.session.commit() + flash("Review added!", category='success') + else: + flash("You have already reviewed this product!", category='error') + + return render_template("dread.html", user=current_user, product=getDread()) + +@productViews.route('/existence', methods=['GET', 'POST']) +def existence(): + if request.method == 'POST': + + if request.form.values(): + + if request.form.get('submit') == 'submit': + product = getExistence() + basket_item = checkItem(current_user, product) + + if basket_item: + basket_item.quantity = basket_item.quantity + 1 + else: + basket_item = Basket(user_id=current_user.id, item=[product], quantity=1) + db.session.add(basket_item) + db.session.commit() + flash('Item added to cart!', category='success') + + elif request.form.get('delete'): + existence = getExistence() + for review in existence.reviews: + if review.user[0] == current_user: + db.session.delete(review) + db.session.commit() + + + if request.form.get('rating') and request.form.get('review'): + if not searchReviews(getExistence().shorthand): + rating = request.form.get('rating') + description = request.form.get('review') + + existence = getExistence() + new_review = Review(user=[current_user], description=description, rating=rating) + existence.reviews.append(new_review) + db.session.commit() + flash("Review added!", category='success') + else: + flash("You have already reviewed this product!", category='error') + + return render_template("existence.html", user=current_user, product=getExistence()) + +@productViews.route('/fly', methods=['GET', 'POST']) +def fly(): + if request.method == 'POST': + + if request.form.values(): + + if request.form.get('submit') == 'submit': + product = getFly() + basket_item = checkItem(current_user, product) + + if basket_item: + basket_item.quantity = basket_item.quantity + 1 + else: + basket_item = Basket(user_id=current_user.id, item=[product], quantity=1) + db.session.add(basket_item) + db.session.commit() + flash('Item added to cart!', category='success') + + elif request.form.get('delete'): + fly = getFly() + for review in fly.reviews: + if review.user[0] == current_user: + db.session.delete(review) + db.session.commit() + + + if request.form.get('rating') and request.form.get('review'): + if not searchReviews(getFly().shorthand): + rating = request.form.get('rating') + description = request.form.get('review') + + fly = getFly() + new_review = Review(user=[current_user], description=description, rating=rating) + fly.reviews.append(new_review) + db.session.commit() + flash("Review added!", category='success') + else: + flash("You have already reviewed this product!", category='error') + + return render_template("fly.html", user=current_user, product=getFly()) \ No newline at end of file diff --git a/store/products.py b/store/products.py deleted file mode 100644 index 90d7689a9e8a975060f6b7830da88cab0900023f..0000000000000000000000000000000000000000 --- a/store/products.py +++ /dev/null @@ -1,3 +0,0 @@ -from .models import Product - -instant_existance \ No newline at end of file diff --git a/store/static/css/bootstrap/css/bootstrap.min.css b/store/static/css/bootstrap/css/bootstrap.min.css deleted file mode 100644 index 9edc0f38bcdd1c78e7d2737d41d7bf0e99411a9c..0000000000000000000000000000000000000000 --- a/store/static/css/bootstrap/css/bootstrap.min.css +++ /dev/null @@ -1,14405 +0,0 @@ -/* ! - * Bootstrap v5.2.3 (https://getbootstrap.com/) - * Copyright 2011-2022 The Bootstrap Authors - * Copyright 2011-2022 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */ - -:root { - --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-white-rgb: 255,255,255; - --bs-black-rgb: 0,0,0; - --bs-body-color-rgb: 33,37,41; - --bs-body-bg-rgb: 255,255,255; - --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-bg: #fff; - --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-2xl: 2rem; - --bs-border-radius-pill: 50rem; - --bs-link-color: #0d6efd; - --bs-link-hover-color: #0a58ca; - --bs-code-color: #d63384; - --bs-highlight-bg: #fff3cd; -} - -*, ::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: 1px 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; -} - -.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; - 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: var(--bs-link-color); - text-decoration: underline; -} - -a:hover { - color: var(--bs-link-hover-color); -} - -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: #6c757d; - 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] { - outline-offset: -2px; - -webkit-appearance: textfield; -} - -::-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: #fff; - border: 1px solid var(--bs-border-color); - border-radius: .375rem; - max-width: 100%; - height: auto; -} - -.figure { - display: inline-block; -} - -.figure-img { - margin-bottom: .5rem; - line-height: 1; -} - -.figure-caption { - font-size: .875em; - color: #6c757d; -} - -.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; - } -} - -.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.3333333333%; -} - -.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.6666666667%; -} - -.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%; - } -} - -@media (min-width:576px) { - .row-cols-sm-auto > * { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:576px) { - .row-cols-sm-1 > * { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:576px) { - .row-cols-sm-2 > * { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:576px) { - .row-cols-sm-3 > * { - flex: 0 0 auto; - width: 33.3333333333%; - } -} - -@media (min-width:576px) { - .row-cols-sm-4 > * { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:576px) { - .row-cols-sm-5 > * { - flex: 0 0 auto; - width: 20%; - } -} - -@media (min-width:576px) { - .row-cols-sm-6 > * { - flex: 0 0 auto; - width: 16.6666666667%; - } -} - -@media (min-width:576px) { - .col-sm-auto { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:576px) { - .col-sm-1 { - flex: 0 0 auto; - width: 8.33333333%; - } -} - -@media (min-width:576px) { - .col-sm-2 { - flex: 0 0 auto; - width: 16.66666667%; - } -} - -@media (min-width:576px) { - .col-sm-3 { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:576px) { - .col-sm-4 { - flex: 0 0 auto; - width: 33.33333333%; - } -} - -@media (min-width:576px) { - .col-sm-5 { - flex: 0 0 auto; - width: 41.66666667%; - } -} - -@media (min-width:576px) { - .col-sm-6 { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:576px) { - .col-sm-7 { - flex: 0 0 auto; - width: 58.33333333%; - } -} - -@media (min-width:576px) { - .col-sm-8 { - flex: 0 0 auto; - width: 66.66666667%; - } -} - -@media (min-width:576px) { - .col-sm-9 { - flex: 0 0 auto; - width: 75%; - } -} - -@media (min-width:576px) { - .col-sm-10 { - flex: 0 0 auto; - width: 83.33333333%; - } -} - -@media (min-width:576px) { - .col-sm-11 { - flex: 0 0 auto; - width: 91.66666667%; - } -} - -@media (min-width:576px) { - .col-sm-12 { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:576px) { - .offset-sm-0 { - margin-left: 0; - } -} - -@media (min-width:576px) { - .offset-sm-1 { - margin-left: 8.33333333%; - } -} - -@media (min-width:576px) { - .offset-sm-2 { - margin-left: 16.66666667%; - } -} - -@media (min-width:576px) { - .offset-sm-3 { - margin-left: 25%; - } -} - -@media (min-width:576px) { - .offset-sm-4 { - margin-left: 33.33333333%; - } -} - -@media (min-width:576px) { - .offset-sm-5 { - margin-left: 41.66666667%; - } -} - -@media (min-width:576px) { - .offset-sm-6 { - margin-left: 50%; - } -} - -@media (min-width:576px) { - .offset-sm-7 { - margin-left: 58.33333333%; - } -} - -@media (min-width:576px) { - .offset-sm-8 { - margin-left: 66.66666667%; - } -} - -@media (min-width:576px) { - .offset-sm-9 { - margin-left: 75%; - } -} - -@media (min-width:576px) { - .offset-sm-10 { - margin-left: 83.33333333%; - } -} - -@media (min-width:576px) { - .offset-sm-11 { - margin-left: 91.66666667%; - } -} - -@media (min-width:576px) { - .g-sm-0, .gx-sm-0 { - --bs-gutter-x: 0; - } -} - -@media (min-width:576px) { - .g-sm-0, .gy-sm-0 { - --bs-gutter-y: 0; - } -} - -@media (min-width:576px) { - .g-sm-1, .gx-sm-1 { - --bs-gutter-x: 0.25rem; - } -} - -@media (min-width:576px) { - .g-sm-1, .gy-sm-1 { - --bs-gutter-y: 0.25rem; - } -} - -@media (min-width:576px) { - .g-sm-2, .gx-sm-2 { - --bs-gutter-x: 0.5rem; - } -} - -@media (min-width:576px) { - .g-sm-2, .gy-sm-2 { - --bs-gutter-y: 0.5rem; - } -} - -@media (min-width:576px) { - .g-sm-3, .gx-sm-3 { - --bs-gutter-x: 1rem; - } -} - -@media (min-width:576px) { - .g-sm-3, .gy-sm-3 { - --bs-gutter-y: 1rem; - } -} - -@media (min-width:576px) { - .g-sm-4, .gx-sm-4 { - --bs-gutter-x: 1.5rem; - } -} - -@media (min-width:576px) { - .g-sm-4, .gy-sm-4 { - --bs-gutter-y: 1.5rem; - } -} - -@media (min-width:576px) { - .g-sm-5, .gx-sm-5 { - --bs-gutter-x: 3rem; - } -} - -@media (min-width:576px) { - .g-sm-5, .gy-sm-5 { - --bs-gutter-y: 3rem; - } -} - -@media (min-width:768px) { - .col-md { - flex: 1 0 0%; - } -} - -@media (min-width:768px) { - .row-cols-md-auto > * { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:768px) { - .row-cols-md-1 > * { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:768px) { - .row-cols-md-2 > * { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:768px) { - .row-cols-md-3 > * { - flex: 0 0 auto; - width: 33.3333333333%; - } -} - -@media (min-width:768px) { - .row-cols-md-4 > * { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:768px) { - .row-cols-md-5 > * { - flex: 0 0 auto; - width: 20%; - } -} - -@media (min-width:768px) { - .row-cols-md-6 > * { - flex: 0 0 auto; - width: 16.6666666667%; - } -} - -@media (min-width:768px) { - .col-md-auto { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:768px) { - .col-md-1 { - flex: 0 0 auto; - width: 8.33333333%; - } -} - -@media (min-width:768px) { - .col-md-2 { - flex: 0 0 auto; - width: 16.66666667%; - } -} - -@media (min-width:768px) { - .col-md-3 { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:768px) { - .col-md-4 { - flex: 0 0 auto; - width: 33.33333333%; - } -} - -@media (min-width:768px) { - .col-md-5 { - flex: 0 0 auto; - width: 41.66666667%; - } -} - -@media (min-width:768px) { - .col-md-6 { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:768px) { - .col-md-7 { - flex: 0 0 auto; - width: 58.33333333%; - } -} - -@media (min-width:768px) { - .col-md-8 { - flex: 0 0 auto; - width: 66.66666667%; - } -} - -@media (min-width:768px) { - .col-md-9 { - flex: 0 0 auto; - width: 75%; - } -} - -@media (min-width:768px) { - .col-md-10 { - flex: 0 0 auto; - width: 83.33333333%; - } -} - -@media (min-width:768px) { - .col-md-11 { - flex: 0 0 auto; - width: 91.66666667%; - } -} - -@media (min-width:768px) { - .col-md-12 { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:768px) { - .offset-md-0 { - margin-left: 0; - } -} - -@media (min-width:768px) { - .offset-md-1 { - margin-left: 8.33333333%; - } -} - -@media (min-width:768px) { - .offset-md-2 { - margin-left: 16.66666667%; - } -} - -@media (min-width:768px) { - .offset-md-3 { - margin-left: 25%; - } -} - -@media (min-width:768px) { - .offset-md-4 { - margin-left: 33.33333333%; - } -} - -@media (min-width:768px) { - .offset-md-5 { - margin-left: 41.66666667%; - } -} - -@media (min-width:768px) { - .offset-md-6 { - margin-left: 50%; - } -} - -@media (min-width:768px) { - .offset-md-7 { - margin-left: 58.33333333%; - } -} - -@media (min-width:768px) { - .offset-md-8 { - margin-left: 66.66666667%; - } -} - -@media (min-width:768px) { - .offset-md-9 { - margin-left: 75%; - } -} - -@media (min-width:768px) { - .offset-md-10 { - margin-left: 83.33333333%; - } -} - -@media (min-width:768px) { - .offset-md-11 { - margin-left: 91.66666667%; - } -} - -@media (min-width:768px) { - .g-md-0, .gx-md-0 { - --bs-gutter-x: 0; - } -} - -@media (min-width:768px) { - .g-md-0, .gy-md-0 { - --bs-gutter-y: 0; - } -} - -@media (min-width:768px) { - .g-md-1, .gx-md-1 { - --bs-gutter-x: 0.25rem; - } -} - -@media (min-width:768px) { - .g-md-1, .gy-md-1 { - --bs-gutter-y: 0.25rem; - } -} - -@media (min-width:768px) { - .g-md-2, .gx-md-2 { - --bs-gutter-x: 0.5rem; - } -} - -@media (min-width:768px) { - .g-md-2, .gy-md-2 { - --bs-gutter-y: 0.5rem; - } -} - -@media (min-width:768px) { - .g-md-3, .gx-md-3 { - --bs-gutter-x: 1rem; - } -} - -@media (min-width:768px) { - .g-md-3, .gy-md-3 { - --bs-gutter-y: 1rem; - } -} - -@media (min-width:768px) { - .g-md-4, .gx-md-4 { - --bs-gutter-x: 1.5rem; - } -} - -@media (min-width:768px) { - .g-md-4, .gy-md-4 { - --bs-gutter-y: 1.5rem; - } -} - -@media (min-width:768px) { - .g-md-5, .gx-md-5 { - --bs-gutter-x: 3rem; - } -} - -@media (min-width:768px) { - .g-md-5, .gy-md-5 { - --bs-gutter-y: 3rem; - } -} - -@media (min-width:992px) { - .col-lg { - flex: 1 0 0%; - } -} - -@media (min-width:992px) { - .row-cols-lg-auto > * { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:992px) { - .row-cols-lg-1 > * { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:992px) { - .row-cols-lg-2 > * { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:992px) { - .row-cols-lg-3 > * { - flex: 0 0 auto; - width: 33.3333333333%; - } -} - -@media (min-width:992px) { - .row-cols-lg-4 > * { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:992px) { - .row-cols-lg-5 > * { - flex: 0 0 auto; - width: 20%; - } -} - -@media (min-width:992px) { - .row-cols-lg-6 > * { - flex: 0 0 auto; - width: 16.6666666667%; - } -} - -@media (min-width:992px) { - .col-lg-auto { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:992px) { - .col-lg-1 { - flex: 0 0 auto; - width: 8.33333333%; - } -} - -@media (min-width:992px) { - .col-lg-2 { - flex: 0 0 auto; - width: 16.66666667%; - } -} - -@media (min-width:992px) { - .col-lg-3 { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:992px) { - .col-lg-4 { - flex: 0 0 auto; - width: 33.33333333%; - } -} - -@media (min-width:992px) { - .col-lg-5 { - flex: 0 0 auto; - width: 41.66666667%; - } -} - -@media (min-width:992px) { - .col-lg-6 { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:992px) { - .col-lg-7 { - flex: 0 0 auto; - width: 58.33333333%; - } -} - -@media (min-width:992px) { - .col-lg-8 { - flex: 0 0 auto; - width: 66.66666667%; - } -} - -@media (min-width:992px) { - .col-lg-9 { - flex: 0 0 auto; - width: 75%; - } -} - -@media (min-width:992px) { - .col-lg-10 { - flex: 0 0 auto; - width: 83.33333333%; - } -} - -@media (min-width:992px) { - .col-lg-11 { - flex: 0 0 auto; - width: 91.66666667%; - } -} - -@media (min-width:992px) { - .col-lg-12 { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:992px) { - .offset-lg-0 { - margin-left: 0; - } -} - -@media (min-width:992px) { - .offset-lg-1 { - margin-left: 8.33333333%; - } -} - -@media (min-width:992px) { - .offset-lg-2 { - margin-left: 16.66666667%; - } -} - -@media (min-width:992px) { - .offset-lg-3 { - margin-left: 25%; - } -} - -@media (min-width:992px) { - .offset-lg-4 { - margin-left: 33.33333333%; - } -} - -@media (min-width:992px) { - .offset-lg-5 { - margin-left: 41.66666667%; - } -} - -@media (min-width:992px) { - .offset-lg-6 { - margin-left: 50%; - } -} - -@media (min-width:992px) { - .offset-lg-7 { - margin-left: 58.33333333%; - } -} - -@media (min-width:992px) { - .offset-lg-8 { - margin-left: 66.66666667%; - } -} - -@media (min-width:992px) { - .offset-lg-9 { - margin-left: 75%; - } -} - -@media (min-width:992px) { - .offset-lg-10 { - margin-left: 83.33333333%; - } -} - -@media (min-width:992px) { - .offset-lg-11 { - margin-left: 91.66666667%; - } -} - -@media (min-width:992px) { - .g-lg-0, .gx-lg-0 { - --bs-gutter-x: 0; - } -} - -@media (min-width:992px) { - .g-lg-0, .gy-lg-0 { - --bs-gutter-y: 0; - } -} - -@media (min-width:992px) { - .g-lg-1, .gx-lg-1 { - --bs-gutter-x: 0.25rem; - } -} - -@media (min-width:992px) { - .g-lg-1, .gy-lg-1 { - --bs-gutter-y: 0.25rem; - } -} - -@media (min-width:992px) { - .g-lg-2, .gx-lg-2 { - --bs-gutter-x: 0.5rem; - } -} - -@media (min-width:992px) { - .g-lg-2, .gy-lg-2 { - --bs-gutter-y: 0.5rem; - } -} - -@media (min-width:992px) { - .g-lg-3, .gx-lg-3 { - --bs-gutter-x: 1rem; - } -} - -@media (min-width:992px) { - .g-lg-3, .gy-lg-3 { - --bs-gutter-y: 1rem; - } -} - -@media (min-width:992px) { - .g-lg-4, .gx-lg-4 { - --bs-gutter-x: 1.5rem; - } -} - -@media (min-width:992px) { - .g-lg-4, .gy-lg-4 { - --bs-gutter-y: 1.5rem; - } -} - -@media (min-width:992px) { - .g-lg-5, .gx-lg-5 { - --bs-gutter-x: 3rem; - } -} - -@media (min-width:992px) { - .g-lg-5, .gy-lg-5 { - --bs-gutter-y: 3rem; - } -} - -@media (min-width:1200px) { - .col-xl { - flex: 1 0 0%; - } -} - -@media (min-width:1200px) { - .row-cols-xl-auto > * { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:1200px) { - .row-cols-xl-1 > * { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:1200px) { - .row-cols-xl-2 > * { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:1200px) { - .row-cols-xl-3 > * { - flex: 0 0 auto; - width: 33.3333333333%; - } -} - -@media (min-width:1200px) { - .row-cols-xl-4 > * { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:1200px) { - .row-cols-xl-5 > * { - flex: 0 0 auto; - width: 20%; - } -} - -@media (min-width:1200px) { - .row-cols-xl-6 > * { - flex: 0 0 auto; - width: 16.6666666667%; - } -} - -@media (min-width:1200px) { - .col-xl-auto { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:1200px) { - .col-xl-1 { - flex: 0 0 auto; - width: 8.33333333%; - } -} - -@media (min-width:1200px) { - .col-xl-2 { - flex: 0 0 auto; - width: 16.66666667%; - } -} - -@media (min-width:1200px) { - .col-xl-3 { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:1200px) { - .col-xl-4 { - flex: 0 0 auto; - width: 33.33333333%; - } -} - -@media (min-width:1200px) { - .col-xl-5 { - flex: 0 0 auto; - width: 41.66666667%; - } -} - -@media (min-width:1200px) { - .col-xl-6 { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:1200px) { - .col-xl-7 { - flex: 0 0 auto; - width: 58.33333333%; - } -} - -@media (min-width:1200px) { - .col-xl-8 { - flex: 0 0 auto; - width: 66.66666667%; - } -} - -@media (min-width:1200px) { - .col-xl-9 { - flex: 0 0 auto; - width: 75%; - } -} - -@media (min-width:1200px) { - .col-xl-10 { - flex: 0 0 auto; - width: 83.33333333%; - } -} - -@media (min-width:1200px) { - .col-xl-11 { - flex: 0 0 auto; - width: 91.66666667%; - } -} - -@media (min-width:1200px) { - .col-xl-12 { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:1200px) { - .offset-xl-0 { - margin-left: 0; - } -} - -@media (min-width:1200px) { - .offset-xl-1 { - margin-left: 8.33333333%; - } -} - -@media (min-width:1200px) { - .offset-xl-2 { - margin-left: 16.66666667%; - } -} - -@media (min-width:1200px) { - .offset-xl-3 { - margin-left: 25%; - } -} - -@media (min-width:1200px) { - .offset-xl-4 { - margin-left: 33.33333333%; - } -} - -@media (min-width:1200px) { - .offset-xl-5 { - margin-left: 41.66666667%; - } -} - -@media (min-width:1200px) { - .offset-xl-6 { - margin-left: 50%; - } -} - -@media (min-width:1200px) { - .offset-xl-7 { - margin-left: 58.33333333%; - } -} - -@media (min-width:1200px) { - .offset-xl-8 { - margin-left: 66.66666667%; - } -} - -@media (min-width:1200px) { - .offset-xl-9 { - margin-left: 75%; - } -} - -@media (min-width:1200px) { - .offset-xl-10 { - margin-left: 83.33333333%; - } -} - -@media (min-width:1200px) { - .offset-xl-11 { - margin-left: 91.66666667%; - } -} - -@media (min-width:1200px) { - .g-xl-0, .gx-xl-0 { - --bs-gutter-x: 0; - } -} - -@media (min-width:1200px) { - .g-xl-0, .gy-xl-0 { - --bs-gutter-y: 0; - } -} - -@media (min-width:1200px) { - .g-xl-1, .gx-xl-1 { - --bs-gutter-x: 0.25rem; - } -} - -@media (min-width:1200px) { - .g-xl-1, .gy-xl-1 { - --bs-gutter-y: 0.25rem; - } -} - -@media (min-width:1200px) { - .g-xl-2, .gx-xl-2 { - --bs-gutter-x: 0.5rem; - } -} - -@media (min-width:1200px) { - .g-xl-2, .gy-xl-2 { - --bs-gutter-y: 0.5rem; - } -} - -@media (min-width:1200px) { - .g-xl-3, .gx-xl-3 { - --bs-gutter-x: 1rem; - } -} - -@media (min-width:1200px) { - .g-xl-3, .gy-xl-3 { - --bs-gutter-y: 1rem; - } -} - -@media (min-width:1200px) { - .g-xl-4, .gx-xl-4 { - --bs-gutter-x: 1.5rem; - } -} - -@media (min-width:1200px) { - .g-xl-4, .gy-xl-4 { - --bs-gutter-y: 1.5rem; - } -} - -@media (min-width:1200px) { - .g-xl-5, .gx-xl-5 { - --bs-gutter-x: 3rem; - } -} - -@media (min-width:1200px) { - .g-xl-5, .gy-xl-5 { - --bs-gutter-y: 3rem; - } -} - -@media (min-width:1400px) { - .col-xxl { - flex: 1 0 0%; - } -} - -@media (min-width:1400px) { - .row-cols-xxl-auto > * { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:1400px) { - .row-cols-xxl-1 > * { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:1400px) { - .row-cols-xxl-2 > * { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:1400px) { - .row-cols-xxl-3 > * { - flex: 0 0 auto; - width: 33.3333333333%; - } -} - -@media (min-width:1400px) { - .row-cols-xxl-4 > * { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:1400px) { - .row-cols-xxl-5 > * { - flex: 0 0 auto; - width: 20%; - } -} - -@media (min-width:1400px) { - .row-cols-xxl-6 > * { - flex: 0 0 auto; - width: 16.6666666667%; - } -} - -@media (min-width:1400px) { - .col-xxl-auto { - flex: 0 0 auto; - width: auto; - } -} - -@media (min-width:1400px) { - .col-xxl-1 { - flex: 0 0 auto; - width: 8.33333333%; - } -} - -@media (min-width:1400px) { - .col-xxl-2 { - flex: 0 0 auto; - width: 16.66666667%; - } -} - -@media (min-width:1400px) { - .col-xxl-3 { - flex: 0 0 auto; - width: 25%; - } -} - -@media (min-width:1400px) { - .col-xxl-4 { - flex: 0 0 auto; - width: 33.33333333%; - } -} - -@media (min-width:1400px) { - .col-xxl-5 { - flex: 0 0 auto; - width: 41.66666667%; - } -} - -@media (min-width:1400px) { - .col-xxl-6 { - flex: 0 0 auto; - width: 50%; - } -} - -@media (min-width:1400px) { - .col-xxl-7 { - flex: 0 0 auto; - width: 58.33333333%; - } -} - -@media (min-width:1400px) { - .col-xxl-8 { - flex: 0 0 auto; - width: 66.66666667%; - } -} - -@media (min-width:1400px) { - .col-xxl-9 { - flex: 0 0 auto; - width: 75%; - } -} - -@media (min-width:1400px) { - .col-xxl-10 { - flex: 0 0 auto; - width: 83.33333333%; - } -} - -@media (min-width:1400px) { - .col-xxl-11 { - flex: 0 0 auto; - width: 91.66666667%; - } -} - -@media (min-width:1400px) { - .col-xxl-12 { - flex: 0 0 auto; - width: 100%; - } -} - -@media (min-width:1400px) { - .offset-xxl-0 { - margin-left: 0; - } -} - -@media (min-width:1400px) { - .offset-xxl-1 { - margin-left: 8.33333333%; - } -} - -@media (min-width:1400px) { - .offset-xxl-2 { - margin-left: 16.66666667%; - } -} - -@media (min-width:1400px) { - .offset-xxl-3 { - margin-left: 25%; - } -} - -@media (min-width:1400px) { - .offset-xxl-4 { - margin-left: 33.33333333%; - } -} - -@media (min-width:1400px) { - .offset-xxl-5 { - margin-left: 41.66666667%; - } -} - -@media (min-width:1400px) { - .offset-xxl-6 { - margin-left: 50%; - } -} - -@media (min-width:1400px) { - .offset-xxl-7 { - margin-left: 58.33333333%; - } -} - -@media (min-width:1400px) { - .offset-xxl-8 { - margin-left: 66.66666667%; - } -} - -@media (min-width:1400px) { - .offset-xxl-9 { - margin-left: 75%; - } -} - -@media (min-width:1400px) { - .offset-xxl-10 { - margin-left: 83.33333333%; - } -} - -@media (min-width:1400px) { - .offset-xxl-11 { - margin-left: 91.66666667%; - } -} - -@media (min-width:1400px) { - .g-xxl-0, .gx-xxl-0 { - --bs-gutter-x: 0; - } -} - -@media (min-width:1400px) { - .g-xxl-0, .gy-xxl-0 { - --bs-gutter-y: 0; - } -} - -@media (min-width:1400px) { - .g-xxl-1, .gx-xxl-1 { - --bs-gutter-x: 0.25rem; - } -} - -@media (min-width:1400px) { - .g-xxl-1, .gy-xxl-1 { - --bs-gutter-y: 0.25rem; - } -} - -@media (min-width:1400px) { - .g-xxl-2, .gx-xxl-2 { - --bs-gutter-x: 0.5rem; - } -} - -@media (min-width:1400px) { - .g-xxl-2, .gy-xxl-2 { - --bs-gutter-y: 0.5rem; - } -} - -@media (min-width:1400px) { - .g-xxl-3, .gx-xxl-3 { - --bs-gutter-x: 1rem; - } -} - -@media (min-width:1400px) { - .g-xxl-3, .gy-xxl-3 { - --bs-gutter-y: 1rem; - } -} - -@media (min-width:1400px) { - .g-xxl-4, .gx-xxl-4 { - --bs-gutter-x: 1.5rem; - } -} - -@media (min-width:1400px) { - .g-xxl-4, .gy-xxl-4 { - --bs-gutter-y: 1.5rem; - } -} - -@media (min-width:1400px) { - .g-xxl-5, .gx-xxl-5 { - --bs-gutter-x: 3rem; - } -} - -@media (min-width:1400px) { - .g-xxl-5, .gy-xxl-5 { - --bs-gutter-y: 3rem; - } -} - -.table { - --bs-table-color: var(--bs-body-color); - --bs-table-bg: transparent; - --bs-table-border-color: var(--bs-border-color); - --bs-table-accent-bg: transparent; - --bs-table-striped-color: var(--bs-body-color); - --bs-table-striped-bg: rgba(0, 0, 0, 0.05); - --bs-table-active-color: var(--bs-body-color); - --bs-table-active-bg: rgba(0, 0, 0, 0.1); - --bs-table-hover-color: var(--bs-body-color); - --bs-table-hover-bg: rgba(0, 0, 0, 0.075); - width: 100%; - margin-bottom: 1rem; - color: var(--bs-table-color); - vertical-align: top; - border-color: var(--bs-table-border-color); -} - -.table > :not(caption) > * > * { - padding: .5rem .5rem; - background-color: var(--bs-table-bg); - border-bottom-width: 1px; - box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg); -} - -.table > tbody { - vertical-align: inherit; -} - -.table > thead { - vertical-align: bottom; -} - -.table-group-divider { - border-top: 2px solid currentcolor; -} - -.caption-top { - caption-side: top; -} - -.table-sm > :not(caption) > * > * { - padding: .25rem .25rem; -} - -.table-bordered > :not(caption) > * { - border-width: 1px 0; -} - -.table-bordered > :not(caption) > * > * { - border-width: 0 1px; -} - -.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-accent-bg: var(--bs-table-striped-bg); - color: var(--bs-table-striped-color); -} - -.table-striped-columns > :not(caption) > tr > :nth-child(2n) { - --bs-table-accent-bg: var(--bs-table-striped-bg); - color: var(--bs-table-striped-color); -} - -.table-active { - --bs-table-accent-bg: var(--bs-table-active-bg); - color: var(--bs-table-active-color); -} - -.table-hover > tbody > tr:hover > * { - --bs-table-accent-bg: var(--bs-table-hover-bg); - color: var(--bs-table-hover-color); -} - -.table-primary { - --bs-table-color: #000; - --bs-table-bg: #cfe2ff; - --bs-table-border-color: #bacbe6; - --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: #cbccce; - --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: #bcd0c7; - --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: #badce3; - --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: #e6dbb9; - --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: #dfc2c4; - --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: #dfe0e1; - --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: #373b3e; - --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 + 1px); - padding-bottom: calc(.375rem + 1px); - margin-bottom: 0; - font-size: inherit; - line-height: 1.5; -} - -.col-form-label-lg { - padding-top: calc(.5rem + 1px); - padding-bottom: calc(.5rem + 1px); - font-size: 1.25rem; -} - -.col-form-label-sm { - padding-top: calc(.25rem + 1px); - padding-bottom: calc(.25rem + 1px); - font-size: .875rem; -} - -.form-text { - margin-top: .25rem; - font-size: .875em; - color: #6c757d; -} - -.form-control { - display: block; - width: 100%; - padding: .375rem .75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #212529; - background-color: #fff; - background-clip: padding-box; - border: 1px solid #ced4da; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - border-radius: .375rem; - 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: #212529; - background-color: #fff; - border-color: #86b7fe; - outline: 0; - box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); -} - -.form-control::-webkit-date-and-time-value { - height: 1.5em; -} - -.form-control::-moz-placeholder { - color: #6c757d; - opacity: 1; -} - -.form-control::placeholder { - color: #6c757d; - opacity: 1; -} - -.form-control:disabled { - background-color: #e9ecef; - opacity: 1; -} - -.form-control::-webkit-file-upload-button { - padding: .375rem .75rem; - margin: -.375rem -.75rem; - -webkit-margin-end: .75rem; - margin-inline-end: .75rem; - color: #212529; - background-color: #e9ecef; - pointer-events: none; - border-color: inherit; - border-style: solid; - border-width: 0; - border-inline-end-width: 1px; - 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: #212529; - background-color: #e9ecef; - pointer-events: none; - border-color: inherit; - border-style: solid; - border-width: 0; - border-inline-end-width: 1px; - 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; - } -} - -@media (prefers-reduced-motion:reduce) { - .form-control::file-selector-button { - transition: none; - } -} - -.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { - background-color: #dde0e3; -} - -.form-control:hover:not(:disabled):not([readonly])::file-selector-button { - background-color: #dde0e3; -} - -.form-control-plaintext { - display: block; - width: 100%; - padding: .375rem 0; - margin-bottom: 0; - line-height: 1.5; - color: #212529; - background-color: transparent; - border: solid transparent; - border-width: 1px 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 + 2px); - padding: .25rem .5rem; - font-size: .875rem; - border-radius: .25rem; -} - -.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 + 2px); - padding: .5rem 1rem; - font-size: 1.25rem; - border-radius: .5rem; -} - -.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 + 2px); -} - -textarea.form-control-sm { - min-height: calc(1.5em + .5rem + 2px); -} - -textarea.form-control-lg { - min-height: calc(1.5em + 1rem + 2px); -} - -.form-control-color { - width: 3rem; - height: calc(1.5em + .75rem + 2px); - padding: .375rem; -} - -.form-control-color:not(:disabled):not([readonly]) { - cursor: pointer; -} - -.form-control-color::-moz-color-swatch { - border: 0!important; - border-radius: .375rem; -} - -.form-control-color::-webkit-color-swatch { - border-radius: .375rem; -} - -.form-control-color.form-control-sm { - height: calc(1.5em + .5rem + 2px); -} - -.form-control-color.form-control-lg { - height: calc(1.5em + 1rem + 2px); -} - -.form-select { - display: block; - width: 100%; - padding: .375rem 2.25rem .375rem .75rem; - -moz-padding-start: calc(0.75rem - 3px); - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #212529; - background-color: #fff; - background-image: 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"); - background-repeat: no-repeat; - background-position: right .75rem center; - background-size: 16px 12px; - border: 1px solid #ced4da; - border-radius: .375rem; - transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; -} - -@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: #e9ecef; -} - -.form-select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #212529; -} - -.form-select-sm { - padding-top: .25rem; - padding-bottom: .25rem; - padding-left: .5rem; - font-size: .875rem; - border-radius: .25rem; -} - -.form-select-lg { - padding-top: .5rem; - padding-bottom: .5rem; - padding-left: 1rem; - font-size: 1.25rem; - border-radius: .5rem; -} - -.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 { - width: 1em; - height: 1em; - margin-top: .25em; - vertical-align: top; - background-color: #fff; - background-repeat: no-repeat; - background-position: center; - background-size: contain; - border: 1px solid rgba(0,0,0,.25); - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - -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] { - background-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] { - background-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; - background-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 { - width: 2em; - margin-left: -2.5em; - background-image: 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"); - 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 { - background-image: 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; - background-image: 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; -} - -.form-range { - width: 100%; - height: 1.5rem; - padding: 0; - background-color: transparent; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; -} - -.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; - 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; - -webkit-appearance: none; - appearance: none; -} - -@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: #dee2e6; - border-color: transparent; - border-radius: 1rem; -} - -.form-range::-moz-range-thumb { - width: 1rem; - height: 1rem; - 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; - -moz-appearance: none; - appearance: none; -} - -@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: #dee2e6; - border-color: transparent; - border-radius: 1rem; -} - -.form-range:disabled { - pointer-events: none; -} - -.form-range:disabled::-webkit-slider-thumb { - background-color: #adb5bd; -} - -.form-range:disabled::-moz-range-thumb { - background-color: #adb5bd; -} - -.form-floating { - position: relative; -} - -.form-floating > .form-control, .form-floating > .form-control-plaintext, .form-floating > .form-select { - height: calc(3.5rem + 2px); - line-height: 1.25; -} - -.form-floating > label { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - padding: 1rem .75rem; - overflow: hidden; - text-align: start; - text-overflow: ellipsis; - white-space: nowrap; - pointer-events: none; - border: 1px 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 { - opacity: .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 { - opacity: .65; - transform: scale(.85) translateY(-.5rem) translateX(.15rem); -} - -.form-floating > .form-control:-webkit-autofill ~ label { - opacity: .65; - transform: scale(.85) translateY(-.5rem) translateX(.15rem); -} - -.form-floating > .form-control-plaintext ~ label { - border-width: 1px 0; -} - -.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: #212529; - text-align: center; - white-space: nowrap; - background-color: #e9ecef; - border: 1px solid #ced4da; - border-radius: .375rem; -} - -.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: .5rem; -} - -.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: .25rem; -} - -.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: -1px; - 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: #198754; -} - -.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: rgba(25,135,84,.9); - border-radius: .375rem; -} - -.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: #198754; - 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: #198754; - box-shadow: 0 0 0 .25rem rgba(25,135,84,.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: #198754; -} - -.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"] { - padding-right: 4.125rem; - background-image: 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"),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-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: #198754; - box-shadow: 0 0 0 .25rem rgba(25,135,84,.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: #198754; -} - -.form-check-input.is-valid:checked, .was-validated .form-check-input:valid:checked { - background-color: #198754; -} - -.form-check-input.is-valid:focus, .was-validated .form-check-input:valid:focus { - box-shadow: 0 0 0 .25rem rgba(25,135,84,.25); -} - -.form-check-input.is-valid ~ .form-check-label, .was-validated .form-check-input:valid ~ .form-check-label { - color: #198754; -} - -.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: #dc3545; -} - -.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: rgba(220,53,69,.9); - border-radius: .375rem; -} - -.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: #dc3545; - 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: #dc3545; - box-shadow: 0 0 0 .25rem rgba(220,53,69,.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: #dc3545; -} - -.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"] { - padding-right: 4.125rem; - background-image: 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"),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-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: #dc3545; - box-shadow: 0 0 0 .25rem rgba(220,53,69,.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: #dc3545; -} - -.form-check-input.is-invalid:checked, .was-validated .form-check-input:invalid:checked { - background-color: #dc3545; -} - -.form-check-input.is-invalid:focus, .was-validated .form-check-input:invalid:focus { - box-shadow: 0 0 0 .25rem rgba(220,53,69,.25); -} - -.form-check-input.is-invalid ~ .form-check-label, .was-validated .form-check-input:invalid ~ .form-check-label { - color: #dc3545; -} - -.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-size: 1rem; - --bs-btn-font-weight: 400; - --bs-btn-line-height: 1.5; - --bs-btn-color: #212529; - --bs-btn-bg: transparent; - --bs-btn-border-width: 1px; - --bs-btn-border-color: transparent; - --bs-btn-border-radius: 0.375rem; - --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.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: none; - --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: 0.5rem; -} - -.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: 0.25rem; -} - -.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: #212529; - --bs-dropdown-bg: #fff; - --bs-dropdown-border-color: var(--bs-border-color-translucent); - --bs-dropdown-border-radius: 0.375rem; - --bs-dropdown-border-width: 1px; - --bs-dropdown-inner-border-radius: calc(0.375rem - 1px); - --bs-dropdown-divider-bg: var(--bs-border-color-translucent); - --bs-dropdown-divider-margin-y: 0.5rem; - --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); - --bs-dropdown-link-color: #212529; - --bs-dropdown-link-hover-color: #1e2125; - --bs-dropdown-link-hover-bg: #e9ecef; - --bs-dropdown-link-active-color: #fff; - --bs-dropdown-link-active-bg: #0d6efd; - --bs-dropdown-link-disabled-color: #adb5bd; - --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; - } -} - -@media (min-width:576px) { - .dropdown-menu-sm-start[data-bs-popper] { - right: auto; - left: 0; - } -} - -@media (min-width:576px) { - .dropdown-menu-sm-end { - --bs-position: end; - } -} - -@media (min-width:576px) { - .dropdown-menu-sm-end[data-bs-popper] { - right: 0; - left: auto; - } -} - -@media (min-width:768px) { - .dropdown-menu-md-start { - --bs-position: start; - } -} - -@media (min-width:768px) { - .dropdown-menu-md-start[data-bs-popper] { - right: auto; - left: 0; - } -} - -@media (min-width:768px) { - .dropdown-menu-md-end { - --bs-position: end; - } -} - -@media (min-width:768px) { - .dropdown-menu-md-end[data-bs-popper] { - right: 0; - left: auto; - } -} - -@media (min-width:992px) { - .dropdown-menu-lg-start { - --bs-position: start; - } -} - -@media (min-width:992px) { - .dropdown-menu-lg-start[data-bs-popper] { - right: auto; - left: 0; - } -} - -@media (min-width:992px) { - .dropdown-menu-lg-end { - --bs-position: end; - } -} - -@media (min-width:992px) { - .dropdown-menu-lg-end[data-bs-popper] { - right: 0; - left: auto; - } -} - -@media (min-width:1200px) { - .dropdown-menu-xl-start { - --bs-position: start; - } -} - -@media (min-width:1200px) { - .dropdown-menu-xl-start[data-bs-popper] { - right: auto; - left: 0; - } -} - -@media (min-width:1200px) { - .dropdown-menu-xl-end { - --bs-position: end; - } -} - -@media (min-width:1200px) { - .dropdown-menu-xl-end[data-bs-popper] { - right: 0; - left: auto; - } -} - -@media (min-width:1400px) { - .dropdown-menu-xxl-start { - --bs-position: start; - } -} - -@media (min-width:1400px) { - .dropdown-menu-xxl-start[data-bs-popper] { - right: auto; - left: 0; - } -} - -@media (min-width:1400px) { - .dropdown-menu-xxl-end { - --bs-position: end; - } -} - -@media (min-width:1400px) { - .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; -} - -.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-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: .375rem; -} - -.btn-group > .btn-group:not(:first-child), .btn-group > :not(.btn-check:first-child) + .btn { - margin-left: -1px; -} - -.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: -1px; -} - -.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-color: var(--bs-link-color); - --bs-nav-link-hover-color: var(--bs-link-hover-color); - --bs-nav-link-disabled-color: #6c757d; - 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; - 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.disabled { - color: var(--bs-nav-link-disabled-color); - pointer-events: none; - cursor: default; -} - -.nav-tabs { - --bs-nav-tabs-border-width: 1px; - --bs-nav-tabs-border-color: #dee2e6; - --bs-nav-tabs-border-radius: 0.375rem; - --bs-nav-tabs-link-hover-border-color: #e9ecef #e9ecef #dee2e6; - --bs-nav-tabs-link-active-color: #495057; - --bs-nav-tabs-link-active-bg: #fff; - --bs-nav-tabs-link-active-border-color: #dee2e6 #dee2e6 #fff; - 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)); - background: 0 0; - 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-link.disabled, .nav-tabs .nav-link:disabled { - color: var(--bs-nav-link-disabled-color); - background-color: transparent; - border-color: transparent; -} - -.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: 0.375rem; - --bs-nav-pills-link-active-color: #fff; - --bs-nav-pills-link-active-bg: #0d6efd; -} - -.nav-pills .nav-link { - background: 0 0; - border: 0; - border-radius: var(--bs-nav-pills-border-radius); -} - -.nav-pills .nav-link:disabled { - color: var(--bs-nav-link-disabled-color); - background-color: transparent; - border-color: transparent; -} - -.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-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(0, 0, 0, 0.55); - --bs-navbar-hover-color: rgba(0, 0, 0, 0.7); - --bs-navbar-disabled-color: rgba(0, 0, 0, 0.3); - --bs-navbar-active-color: rgba(0, 0, 0, 0.9); - --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(0, 0, 0, 0.9); - --bs-navbar-brand-hover-color: rgba(0, 0, 0, 0.9); - --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%280, 0, 0, 0.55%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(0, 0, 0, 0.1); - --bs-navbar-toggler-border-radius: 0.375rem; - --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-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 .show > .nav-link { - 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; - } -} - -@media (min-width:576px) { - .navbar-expand-sm .navbar-nav { - flex-direction: row; - } -} - -@media (min-width:576px) { - .navbar-expand-sm .navbar-nav .dropdown-menu { - position: absolute; - } -} - -@media (min-width:576px) { - .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); - } -} - -@media (min-width:576px) { - .navbar-expand-sm .navbar-nav-scroll { - overflow: visible; - } -} - -@media (min-width:576px) { - .navbar-expand-sm .navbar-collapse { - display: flex!important; - flex-basis: auto; - } -} - -@media (min-width:576px) { - .navbar-expand-sm .navbar-toggler { - display: none; - } -} - -@media (min-width:576px) { - .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; - } -} - -@media (min-width:576px) { - .navbar-expand-sm .offcanvas .offcanvas-header { - display: none; - } -} - -@media (min-width:576px) { - .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; - } -} - -@media (min-width:768px) { - .navbar-expand-md .navbar-nav { - flex-direction: row; - } -} - -@media (min-width:768px) { - .navbar-expand-md .navbar-nav .dropdown-menu { - position: absolute; - } -} - -@media (min-width:768px) { - .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); - } -} - -@media (min-width:768px) { - .navbar-expand-md .navbar-nav-scroll { - overflow: visible; - } -} - -@media (min-width:768px) { - .navbar-expand-md .navbar-collapse { - display: flex!important; - flex-basis: auto; - } -} - -@media (min-width:768px) { - .navbar-expand-md .navbar-toggler { - display: none; - } -} - -@media (min-width:768px) { - .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; - } -} - -@media (min-width:768px) { - .navbar-expand-md .offcanvas .offcanvas-header { - display: none; - } -} - -@media (min-width:768px) { - .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; - } -} - -@media (min-width:992px) { - .navbar-expand-lg .navbar-nav { - flex-direction: row; - } -} - -@media (min-width:992px) { - .navbar-expand-lg .navbar-nav .dropdown-menu { - position: absolute; - } -} - -@media (min-width:992px) { - .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); - } -} - -@media (min-width:992px) { - .navbar-expand-lg .navbar-nav-scroll { - overflow: visible; - } -} - -@media (min-width:992px) { - .navbar-expand-lg .navbar-collapse { - display: flex!important; - flex-basis: auto; - } -} - -@media (min-width:992px) { - .navbar-expand-lg .navbar-toggler { - display: none; - } -} - -@media (min-width:992px) { - .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; - } -} - -@media (min-width:992px) { - .navbar-expand-lg .offcanvas .offcanvas-header { - display: none; - } -} - -@media (min-width:992px) { - .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; - } -} - -@media (min-width:1200px) { - .navbar-expand-xl .navbar-nav { - flex-direction: row; - } -} - -@media (min-width:1200px) { - .navbar-expand-xl .navbar-nav .dropdown-menu { - position: absolute; - } -} - -@media (min-width:1200px) { - .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); - } -} - -@media (min-width:1200px) { - .navbar-expand-xl .navbar-nav-scroll { - overflow: visible; - } -} - -@media (min-width:1200px) { - .navbar-expand-xl .navbar-collapse { - display: flex!important; - flex-basis: auto; - } -} - -@media (min-width:1200px) { - .navbar-expand-xl .navbar-toggler { - display: none; - } -} - -@media (min-width:1200px) { - .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; - } -} - -@media (min-width:1200px) { - .navbar-expand-xl .offcanvas .offcanvas-header { - display: none; - } -} - -@media (min-width:1200px) { - .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; - } -} - -@media (min-width:1400px) { - .navbar-expand-xxl .navbar-nav { - flex-direction: row; - } -} - -@media (min-width:1400px) { - .navbar-expand-xxl .navbar-nav .dropdown-menu { - position: absolute; - } -} - -@media (min-width:1400px) { - .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); - } -} - -@media (min-width:1400px) { - .navbar-expand-xxl .navbar-nav-scroll { - overflow: visible; - } -} - -@media (min-width:1400px) { - .navbar-expand-xxl .navbar-collapse { - display: flex!important; - flex-basis: auto; - } -} - -@media (min-width:1400px) { - .navbar-expand-xxl .navbar-toggler { - display: none; - } -} - -@media (min-width:1400px) { - .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; - } -} - -@media (min-width:1400px) { - .navbar-expand-xxl .offcanvas .offcanvas-header { - display: none; - } -} - -@media (min-width:1400px) { - .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 { - --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"); -} - -.card { - --bs-card-spacer-y: 1rem; - --bs-card-spacer-x: 1rem; - --bs-card-title-spacer-y: 0.5rem; - --bs-card-border-width: 1px; - --bs-card-border-color: var(--bs-border-color-translucent); - --bs-card-border-radius: 0.375rem; - --bs-card-inner-border-radius: calc(0.375rem - 1px); - --bs-card-cap-padding-y: 0.5rem; - --bs-card-cap-padding-x: 1rem; - --bs-card-cap-bg: rgba(0, 0, 0, 0.03); - --bs-card-bg: #fff; - --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); - 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); -} - -.card-subtitle { - margin-top: calc(-.5 * var(--bs-card-title-spacer-y)); - margin-bottom: 0; -} - -.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; - } -} - -@media (min-width:576px) { - .card-group > .card { - flex: 1 0 0%; - margin-bottom: 0; - } -} - -@media (min-width:576px) { - .card-group > .card + .card { - margin-left: 0; - border-left: 0; - } -} - -@media (min-width:576px) { - .card-group > .card:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } -} - -@media (min-width:576px) { - .card-group > .card:not(:last-child) .card-header, .card-group > .card:not(:last-child) .card-img-top { - border-top-right-radius: 0; - } -} - -@media (min-width:576px) { - .card-group > .card:not(:last-child) .card-footer, .card-group > .card:not(:last-child) .card-img-bottom { - border-bottom-right-radius: 0; - } -} - -@media (min-width:576px) { - .card-group > .card:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } -} - -@media (min-width:576px) { - .card-group > .card:not(:first-child) .card-header, .card-group > .card:not(:first-child) .card-img-top { - border-top-left-radius: 0; - } -} - -@media (min-width:576px) { - .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: #212529; - --bs-accordion-bg: #fff; - --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: 1px; - --bs-accordion-border-radius: 0.375rem; - --bs-accordion-inner-border-radius: calc(0.375rem - 1px); - --bs-accordion-btn-padding-x: 1.25rem; - --bs-accordion-btn-padding-y: 1rem; - --bs-accordion-btn-color: #212529; - --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='%23212529'%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-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='%230c63e4'%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-focus-border-color: #86b7fe; - --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: #0c63e4; - --bs-accordion-active-bg: #e7f1ff; -} - -.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; - border-color: var(--bs-accordion-btn-focus-border-color); - 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-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-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-collapse { - border-width: 0; -} - -.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-button, .accordion-flush .accordion-item .accordion-button.collapsed { - border-radius: 0; -} - -.breadcrumb { - --bs-breadcrumb-padding-x: 0; - --bs-breadcrumb-padding-y: 0; - --bs-breadcrumb-margin-bottom: 1rem; - --bs-breadcrumb-divider-color: #6c757d; - --bs-breadcrumb-item-padding-x: 0.5rem; - --bs-breadcrumb-item-active-color: #6c757d; - 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: #fff; - --bs-pagination-border-width: 1px; - --bs-pagination-border-color: #dee2e6; - --bs-pagination-border-radius: 0.375rem; - --bs-pagination-hover-color: var(--bs-link-hover-color); - --bs-pagination-hover-bg: #e9ecef; - --bs-pagination-hover-border-color: #dee2e6; - --bs-pagination-focus-color: var(--bs-link-hover-color); - --bs-pagination-focus-bg: #e9ecef; - --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: #6c757d; - --bs-pagination-disabled-bg: #fff; - --bs-pagination-disabled-border-color: #dee2e6; - 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: -1px; -} - -.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: 0.5rem; -} - -.pagination-sm { - --bs-pagination-padding-x: 0.5rem; - --bs-pagination-padding-y: 0.25rem; - --bs-pagination-font-size: 0.875rem; - --bs-pagination-border-radius: 0.25rem; -} - -.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: 0.375rem; - 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: 1px solid var(--bs-alert-border-color); - --bs-alert-border-radius: 0.375rem; - 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; -} - -.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: #084298; - --bs-alert-bg: #cfe2ff; - --bs-alert-border-color: #b6d4fe; -} - -.alert-primary .alert-link { - color: #06357a; -} - -.alert-secondary { - --bs-alert-color: #41464b; - --bs-alert-bg: #e2e3e5; - --bs-alert-border-color: #d3d6d8; -} - -.alert-secondary .alert-link { - color: #34383c; -} - -.alert-success { - --bs-alert-color: #0f5132; - --bs-alert-bg: #d1e7dd; - --bs-alert-border-color: #badbcc; -} - -.alert-success .alert-link { - color: #0c4128; -} - -.alert-info { - --bs-alert-color: #055160; - --bs-alert-bg: #cff4fc; - --bs-alert-border-color: #b6effb; -} - -.alert-info .alert-link { - color: #04414d; -} - -.alert-warning { - --bs-alert-color: #664d03; - --bs-alert-bg: #fff3cd; - --bs-alert-border-color: #ffecb5; -} - -.alert-warning .alert-link { - color: #523e02; -} - -.alert-danger { - --bs-alert-color: #842029; - --bs-alert-bg: #f8d7da; - --bs-alert-border-color: #f5c2c7; -} - -.alert-danger .alert-link { - color: #6a1a21; -} - -.alert-light { - --bs-alert-color: #636464; - --bs-alert-bg: #fefefe; - --bs-alert-border-color: #fdfdfe; -} - -.alert-light .alert-link { - color: #4f5050; -} - -.alert-dark { - --bs-alert-color: #141619; - --bs-alert-bg: #d3d3d4; - --bs-alert-border-color: #bcbebf; -} - -.alert-dark .alert-link { - color: #101214; -} - -@keyframes progress-bar-stripes { - 0% { - background-position-x: 1rem; - } -} - -.progress { - --bs-progress-height: 1rem; - --bs-progress-font-size: 0.75rem; - --bs-progress-bg: #e9ecef; - --bs-progress-border-radius: 0.375rem; - --bs-progress-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075); - --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-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: #212529; - --bs-list-group-bg: #fff; - --bs-list-group-border-color: rgba(0, 0, 0, 0.125); - --bs-list-group-border-width: 1px; - --bs-list-group-border-radius: 0.375rem; - --bs-list-group-item-padding-x: 1rem; - --bs-list-group-item-padding-y: 0.5rem; - --bs-list-group-action-color: #495057; - --bs-list-group-action-hover-color: #495057; - --bs-list-group-action-hover-bg: #f8f9fa; - --bs-list-group-action-active-color: #212529; - --bs-list-group-action-active-bg: #e9ecef; - --bs-list-group-disabled-color: #6c757d; - --bs-list-group-disabled-bg: #fff; - --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; - } -} - -@media (min-width:576px) { - .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; - } -} - -@media (min-width:576px) { - .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; - } -} - -@media (min-width:576px) { - .list-group-horizontal-sm > .list-group-item.active { - margin-top: 0; - } -} - -@media (min-width:576px) { - .list-group-horizontal-sm > .list-group-item + .list-group-item { - border-top-width: var(--bs-list-group-border-width); - border-left-width: 0; - } -} - -@media (min-width:576px) { - .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; - } -} - -@media (min-width:768px) { - .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; - } -} - -@media (min-width:768px) { - .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; - } -} - -@media (min-width:768px) { - .list-group-horizontal-md > .list-group-item.active { - margin-top: 0; - } -} - -@media (min-width:768px) { - .list-group-horizontal-md > .list-group-item + .list-group-item { - border-top-width: var(--bs-list-group-border-width); - border-left-width: 0; - } -} - -@media (min-width:768px) { - .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; - } -} - -@media (min-width:992px) { - .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; - } -} - -@media (min-width:992px) { - .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; - } -} - -@media (min-width:992px) { - .list-group-horizontal-lg > .list-group-item.active { - margin-top: 0; - } -} - -@media (min-width:992px) { - .list-group-horizontal-lg > .list-group-item + .list-group-item { - border-top-width: var(--bs-list-group-border-width); - border-left-width: 0; - } -} - -@media (min-width:992px) { - .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; - } -} - -@media (min-width:1200px) { - .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; - } -} - -@media (min-width:1200px) { - .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; - } -} - -@media (min-width:1200px) { - .list-group-horizontal-xl > .list-group-item.active { - margin-top: 0; - } -} - -@media (min-width:1200px) { - .list-group-horizontal-xl > .list-group-item + .list-group-item { - border-top-width: var(--bs-list-group-border-width); - border-left-width: 0; - } -} - -@media (min-width:1200px) { - .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; - } -} - -@media (min-width:1400px) { - .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; - } -} - -@media (min-width:1400px) { - .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; - } -} - -@media (min-width:1400px) { - .list-group-horizontal-xxl > .list-group-item.active { - margin-top: 0; - } -} - -@media (min-width:1400px) { - .list-group-horizontal-xxl > .list-group-item + .list-group-item { - border-top-width: var(--bs-list-group-border-width); - border-left-width: 0; - } -} - -@media (min-width:1400px) { - .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 { - color: #084298; - background-color: #cfe2ff; -} - -.list-group-item-primary.list-group-item-action:focus, .list-group-item-primary.list-group-item-action:hover { - color: #084298; - background-color: #bacbe6; -} - -.list-group-item-primary.list-group-item-action.active { - color: #fff; - background-color: #084298; - border-color: #084298; -} - -.list-group-item-secondary { - color: #41464b; - background-color: #e2e3e5; -} - -.list-group-item-secondary.list-group-item-action:focus, .list-group-item-secondary.list-group-item-action:hover { - color: #41464b; - background-color: #cbccce; -} - -.list-group-item-secondary.list-group-item-action.active { - color: #fff; - background-color: #41464b; - border-color: #41464b; -} - -.list-group-item-success { - color: #0f5132; - background-color: #d1e7dd; -} - -.list-group-item-success.list-group-item-action:focus, .list-group-item-success.list-group-item-action:hover { - color: #0f5132; - background-color: #bcd0c7; -} - -.list-group-item-success.list-group-item-action.active { - color: #fff; - background-color: #0f5132; - border-color: #0f5132; -} - -.list-group-item-info { - color: #055160; - background-color: #cff4fc; -} - -.list-group-item-info.list-group-item-action:focus, .list-group-item-info.list-group-item-action:hover { - color: #055160; - background-color: #badce3; -} - -.list-group-item-info.list-group-item-action.active { - color: #fff; - background-color: #055160; - border-color: #055160; -} - -.list-group-item-warning { - color: #664d03; - background-color: #fff3cd; -} - -.list-group-item-warning.list-group-item-action:focus, .list-group-item-warning.list-group-item-action:hover { - color: #664d03; - background-color: #e6dbb9; -} - -.list-group-item-warning.list-group-item-action.active { - color: #fff; - background-color: #664d03; - border-color: #664d03; -} - -.list-group-item-danger { - color: #842029; - background-color: #f8d7da; -} - -.list-group-item-danger.list-group-item-action:focus, .list-group-item-danger.list-group-item-action:hover { - color: #842029; - background-color: #dfc2c4; -} - -.list-group-item-danger.list-group-item-action.active { - color: #fff; - background-color: #842029; - border-color: #842029; -} - -.list-group-item-light { - color: #636464; - background-color: #fefefe; -} - -.list-group-item-light.list-group-item-action:focus, .list-group-item-light.list-group-item-action:hover { - color: #636464; - background-color: #e5e5e5; -} - -.list-group-item-light.list-group-item-action.active { - color: #fff; - background-color: #636464; - border-color: #636464; -} - -.list-group-item-dark { - color: #141619; - background-color: #d3d3d4; -} - -.list-group-item-dark.list-group-item-action:focus, .list-group-item-dark.list-group-item-action:hover { - color: #141619; - background-color: #bebebf; -} - -.list-group-item-dark.list-group-item-action.active { - color: #fff; - background-color: #141619; - border-color: #141619; -} - -.btn-close { - box-sizing: content-box; - width: 1em; - height: 1em; - padding: .25em .25em; - color: #000; - background: transparent 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") center/1em auto no-repeat; - border: 0; - border-radius: .375rem; - opacity: .5; -} - -.btn-close:hover { - color: #000; - text-decoration: none; - opacity: .75; -} - -.btn-close:focus { - outline: 0; - box-shadow: 0 0 0 .25rem rgba(13,110,253,.25); - opacity: 1; -} - -.btn-close.disabled, .btn-close:disabled { - pointer-events: none; - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; - opacity: .25; -} - -.btn-close-white { - filter: invert(1) grayscale(100%) brightness(200%); -} - -.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-bg: rgba(255, 255, 255, 0.85); - --bs-toast-border-width: 1px; - --bs-toast-border-color: var(--bs-border-color-translucent); - --bs-toast-border-radius: 0.375rem; - --bs-toast-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); - --bs-toast-header-color: #6c757d; - --bs-toast-header-bg: rgba(255, 255, 255, 0.85); - --bs-toast-header-border-color: rgba(0, 0, 0, 0.05); - 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: 1055; - --bs-modal-width: 500px; - --bs-modal-padding: 1rem; - --bs-modal-margin: 0.5rem; - --bs-modal-bg: #fff; - --bs-modal-border-color: var(--bs-border-color-translucent); - --bs-modal-border-width: 1px; - --bs-modal-border-radius: 0.5rem; - --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075); - --bs-modal-inner-border-radius: calc(0.5rem - 1px); - --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: 1px; - --bs-modal-title-line-height: 1.5; - --bs-modal-footer-gap: 0.5rem; - --bs-modal-footer-border-color: var(--bs-border-color); - --bs-modal-footer-border-width: 1px; - 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: 1050; - --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; - justify-content: space-between; - 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: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); - } -} - -@media (min-width:576px) { - .modal-dialog { - max-width: var(--bs-modal-width); - margin-right: auto; - margin-left: auto; - } -} - -@media (min-width:576px) { - .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; - } -} - -@media (max-width:575.98px) { - .modal-fullscreen-sm-down .modal-content { - height: 100%; - border: 0; - border-radius: 0; - } -} - -@media (max-width:575.98px) { - .modal-fullscreen-sm-down .modal-footer, .modal-fullscreen-sm-down .modal-header { - border-radius: 0; - } -} - -@media (max-width:575.98px) { - .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; - } -} - -@media (max-width:767.98px) { - .modal-fullscreen-md-down .modal-content { - height: 100%; - border: 0; - border-radius: 0; - } -} - -@media (max-width:767.98px) { - .modal-fullscreen-md-down .modal-footer, .modal-fullscreen-md-down .modal-header { - border-radius: 0; - } -} - -@media (max-width:767.98px) { - .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; - } -} - -@media (max-width:991.98px) { - .modal-fullscreen-lg-down .modal-content { - height: 100%; - border: 0; - border-radius: 0; - } -} - -@media (max-width:991.98px) { - .modal-fullscreen-lg-down .modal-footer, .modal-fullscreen-lg-down .modal-header { - border-radius: 0; - } -} - -@media (max-width:991.98px) { - .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; - } -} - -@media (max-width:1199.98px) { - .modal-fullscreen-xl-down .modal-content { - height: 100%; - border: 0; - border-radius: 0; - } -} - -@media (max-width:1199.98px) { - .modal-fullscreen-xl-down .modal-footer, .modal-fullscreen-xl-down .modal-header { - border-radius: 0; - } -} - -@media (max-width:1199.98px) { - .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; - } -} - -@media (max-width:1399.98px) { - .modal-fullscreen-xxl-down .modal-content { - height: 100%; - border: 0; - border-radius: 0; - } -} - -@media (max-width:1399.98px) { - .modal-fullscreen-xxl-down .modal-footer, .modal-fullscreen-xxl-down .modal-header { - border-radius: 0; - } -} - -@media (max-width:1399.98px) { - .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-font-size: 0.875rem; - --bs-tooltip-color: #fff; - --bs-tooltip-bg: #000; - --bs-tooltip-border-radius: 0.375rem; - --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; - padding: var(--bs-tooltip-arrow-height); - 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: 0; -} - -.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: 0; - 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: 0; -} - -.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: 0; - 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: #fff; - --bs-popover-border-width: 1px; - --bs-popover-border-color: var(--bs-border-color-translucent); - --bs-popover-border-radius: 0.5rem; - --bs-popover-inner-border-radius: calc(0.5rem - 1px); - --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); - --bs-popover-header-padding-x: 1rem; - --bs-popover-header-padding-y: 0.5rem; - --bs-popover-header-font-size: 1rem; - --bs-popover-header-bg: #f0f0f0; - --bs-popover-body-padding-x: 1rem; - --bs-popover-body-padding-y: 1rem; - --bs-popover-body-color: #212529; - --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%; - list-style: none; -} - -.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; -} - -.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-bg: #fff; - --bs-offcanvas-border-width: 1px; - --bs-offcanvas-border-color: var(--bs-border-color-translucent); - --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075); -} - -@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: transform .3s ease-in-out; - } -} - -@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%); - } -} - -@media (max-width:575.98px) { - .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%); - } -} - -@media (max-width:575.98px) { - .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%); - } -} - -@media (max-width:575.98px) { - .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%); - } -} - -@media (max-width:575.98px) { - .offcanvas-sm.show:not(.hiding), .offcanvas-sm.showing { - transform: none; - } -} - -@media (max-width:575.98px) { - .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; - } -} - -@media (min-width:576px) { - .offcanvas-sm .offcanvas-header { - display: none; - } -} - -@media (min-width:576px) { - .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: transform .3s ease-in-out; - } -} - -@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%); - } -} - -@media (max-width:767.98px) { - .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%); - } -} - -@media (max-width:767.98px) { - .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%); - } -} - -@media (max-width:767.98px) { - .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%); - } -} - -@media (max-width:767.98px) { - .offcanvas-md.show:not(.hiding), .offcanvas-md.showing { - transform: none; - } -} - -@media (max-width:767.98px) { - .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; - } -} - -@media (min-width:768px) { - .offcanvas-md .offcanvas-header { - display: none; - } -} - -@media (min-width:768px) { - .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: transform .3s ease-in-out; - } -} - -@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%); - } -} - -@media (max-width:991.98px) { - .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%); - } -} - -@media (max-width:991.98px) { - .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%); - } -} - -@media (max-width:991.98px) { - .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%); - } -} - -@media (max-width:991.98px) { - .offcanvas-lg.show:not(.hiding), .offcanvas-lg.showing { - transform: none; - } -} - -@media (max-width:991.98px) { - .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; - } -} - -@media (min-width:992px) { - .offcanvas-lg .offcanvas-header { - display: none; - } -} - -@media (min-width:992px) { - .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: transform .3s ease-in-out; - } -} - -@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%); - } -} - -@media (max-width:1199.98px) { - .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%); - } -} - -@media (max-width:1199.98px) { - .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%); - } -} - -@media (max-width:1199.98px) { - .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%); - } -} - -@media (max-width:1199.98px) { - .offcanvas-xl.show:not(.hiding), .offcanvas-xl.showing { - transform: none; - } -} - -@media (max-width:1199.98px) { - .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; - } -} - -@media (min-width:1200px) { - .offcanvas-xl .offcanvas-header { - display: none; - } -} - -@media (min-width:1200px) { - .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: transform .3s ease-in-out; - } -} - -@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%); - } -} - -@media (max-width:1399.98px) { - .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%); - } -} - -@media (max-width:1399.98px) { - .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%); - } -} - -@media (max-width:1399.98px) { - .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%); - } -} - -@media (max-width:1399.98px) { - .offcanvas-xxl.show:not(.hiding), .offcanvas-xxl.showing { - transform: none; - } -} - -@media (max-width:1399.98px) { - .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; - } -} - -@media (min-width:1400px) { - .offcanvas-xxl .offcanvas-header { - display: none; - } -} - -@media (min-width:1400px) { - .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: transform .3s ease-in-out; -} - -@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; - justify-content: space-between; - 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-top: calc(-.5 * var(--bs-offcanvas-padding-y)); - margin-right: calc(-.5 * var(--bs-offcanvas-padding-x)); - margin-bottom: calc(-.5 * var(--bs-offcanvas-padding-y)); -} - -.offcanvas-title { - margin-bottom: 0; - line-height: 1.5; -} - -.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(13,110,253,var(--bs-bg-opacity,1))!important; -} - -.text-bg-secondary { - color: #fff!important; - background-color: RGBA(108,117,125,var(--bs-bg-opacity,1))!important; -} - -.text-bg-success { - color: #fff!important; - background-color: RGBA(25,135,84,var(--bs-bg-opacity,1))!important; -} - -.text-bg-info { - color: #000!important; - background-color: RGBA(13,202,240,var(--bs-bg-opacity,1))!important; -} - -.text-bg-warning { - color: #000!important; - background-color: RGBA(255,193,7,var(--bs-bg-opacity,1))!important; -} - -.text-bg-danger { - color: #fff!important; - background-color: RGBA(220,53,69,var(--bs-bg-opacity,1))!important; -} - -.text-bg-light { - color: #000!important; - background-color: RGBA(248,249,250,var(--bs-bg-opacity,1))!important; -} - -.text-bg-dark { - color: #fff!important; - background-color: RGBA(33,37,41,var(--bs-bg-opacity,1))!important; -} - -.link-primary { - color: #0d6efd!important; -} - -.link-primary:focus, .link-primary:hover { - color: #0a58ca!important; -} - -.link-secondary { - color: #6c757d!important; -} - -.link-secondary:focus, .link-secondary:hover { - color: #565e64!important; -} - -.link-success { - color: #198754!important; -} - -.link-success:focus, .link-success:hover { - color: #146c43!important; -} - -.link-info { - color: #0dcaf0!important; -} - -.link-info:focus, .link-info:hover { - color: #3dd5f3!important; -} - -.link-warning { - color: #ffc107!important; -} - -.link-warning:focus, .link-warning:hover { - color: #ffcd39!important; -} - -.link-danger { - color: #dc3545!important; -} - -.link-danger:focus, .link-danger:hover { - color: #b02a37!important; -} - -.link-light { - color: #f8f9fa!important; -} - -.link-light:focus, .link-light:hover { - color: #f9fafb!important; -} - -.link-dark { - color: #212529!important; -} - -.link-dark:focus, .link-dark:hover { - color: #1a1e21!important; -} - -.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; - } -} - -@media (min-width:576px) { - .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; - } -} - -@media (min-width:768px) { - .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; - } -} - -@media (min-width:992px) { - .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; - } -} - -@media (min-width:1200px) { - .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; - } -} - -@media (min-width:1400px) { - .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) { - position: absolute!important; - 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; -} - -.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: 1px; - 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; -} - -.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; -} - -.d-inline { - display: inline!important; -} - -.d-inline-block { - display: inline-block!important; -} - -.d-block { - display: block!important; -} - -.d-grid { - display: 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: 0 .5rem 1rem rgba(0,0,0,.15)!important; -} - -.shadow-sm { - box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important; -} - -.shadow-lg { - box-shadow: 0 1rem 3rem rgba(0,0,0,.175)!important; -} - -.shadow-none { - box-shadow: none!important; -} - -.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-white { - --bs-border-opacity: 1; - border-color: rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important; -} - -.border-1 { - --bs-border-width: 1px; -} - -.border-2 { - --bs-border-width: 2px; -} - -.border-3 { - --bs-border-width: 3px; -} - -.border-4 { - --bs-border-width: 4px; -} - -.border-5 { - --bs-border-width: 5px; -} - -.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; -} - -.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-light { - font-weight: 300!important; -} - -.fw-lighter { - font-weight: lighter!important; -} - -.fw-normal { - font-weight: 400!important; -} - -.fw-bold { - font-weight: 700!important; -} - -.fw-semibold { - font-weight: 600!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: #6c757d!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-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; -} - -.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-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-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-2xl)!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-end { - border-top-right-radius: var(--bs-border-radius)!important; - border-bottom-right-radius: var(--bs-border-radius)!important; -} - -.rounded-bottom { - border-bottom-right-radius: var(--bs-border-radius)!important; - border-bottom-left-radius: var(--bs-border-radius)!important; -} - -.rounded-start { - border-bottom-left-radius: var(--bs-border-radius)!important; - border-top-left-radius: var(--bs-border-radius)!important; -} - -.visible { - visibility: visible!important; -} - -.invisible { - visibility: hidden!important; -} - -@media (min-width:576px) { - .float-sm-start { - float: left!important; - } -} - -@media (min-width:576px) { - .float-sm-end { - float: right!important; - } -} - -@media (min-width:576px) { - .float-sm-none { - float: none!important; - } -} - -@media (min-width:576px) { - .d-sm-inline { - display: inline!important; - } -} - -@media (min-width:576px) { - .d-sm-inline-block { - display: inline-block!important; - } -} - -@media (min-width:576px) { - .d-sm-block { - display: block!important; - } -} - -@media (min-width:576px) { - .d-sm-grid { - display: grid!important; - } -} - -@media (min-width:576px) { - .d-sm-table { - display: table!important; - } -} - -@media (min-width:576px) { - .d-sm-table-row { - display: table-row!important; - } -} - -@media (min-width:576px) { - .d-sm-table-cell { - display: table-cell!important; - } -} - -@media (min-width:576px) { - .d-sm-flex { - display: flex!important; - } -} - -@media (min-width:576px) { - .d-sm-inline-flex { - display: inline-flex!important; - } -} - -@media (min-width:576px) { - .d-sm-none { - display: none!important; - } -} - -@media (min-width:576px) { - .flex-sm-fill { - flex: 1 1 auto!important; - } -} - -@media (min-width:576px) { - .flex-sm-row { - flex-direction: row!important; - } -} - -@media (min-width:576px) { - .flex-sm-column { - flex-direction: column!important; - } -} - -@media (min-width:576px) { - .flex-sm-row-reverse { - flex-direction: row-reverse!important; - } -} - -@media (min-width:576px) { - .flex-sm-column-reverse { - flex-direction: column-reverse!important; - } -} - -@media (min-width:576px) { - .flex-sm-grow-0 { - flex-grow: 0!important; - } -} - -@media (min-width:576px) { - .flex-sm-grow-1 { - flex-grow: 1!important; - } -} - -@media (min-width:576px) { - .flex-sm-shrink-0 { - flex-shrink: 0!important; - } -} - -@media (min-width:576px) { - .flex-sm-shrink-1 { - flex-shrink: 1!important; - } -} - -@media (min-width:576px) { - .flex-sm-wrap { - flex-wrap: wrap!important; - } -} - -@media (min-width:576px) { - .flex-sm-nowrap { - flex-wrap: nowrap!important; - } -} - -@media (min-width:576px) { - .flex-sm-wrap-reverse { - flex-wrap: wrap-reverse!important; - } -} - -@media (min-width:576px) { - .justify-content-sm-start { - justify-content: flex-start!important; - } -} - -@media (min-width:576px) { - .justify-content-sm-end { - justify-content: flex-end!important; - } -} - -@media (min-width:576px) { - .justify-content-sm-center { - justify-content: center!important; - } -} - -@media (min-width:576px) { - .justify-content-sm-between { - justify-content: space-between!important; - } -} - -@media (min-width:576px) { - .justify-content-sm-around { - justify-content: space-around!important; - } -} - -@media (min-width:576px) { - .justify-content-sm-evenly { - justify-content: space-evenly!important; - } -} - -@media (min-width:576px) { - .align-items-sm-start { - align-items: flex-start!important; - } -} - -@media (min-width:576px) { - .align-items-sm-end { - align-items: flex-end!important; - } -} - -@media (min-width:576px) { - .align-items-sm-center { - align-items: center!important; - } -} - -@media (min-width:576px) { - .align-items-sm-baseline { - align-items: baseline!important; - } -} - -@media (min-width:576px) { - .align-items-sm-stretch { - align-items: stretch!important; - } -} - -@media (min-width:576px) { - .align-content-sm-start { - align-content: flex-start!important; - } -} - -@media (min-width:576px) { - .align-content-sm-end { - align-content: flex-end!important; - } -} - -@media (min-width:576px) { - .align-content-sm-center { - align-content: center!important; - } -} - -@media (min-width:576px) { - .align-content-sm-between { - align-content: space-between!important; - } -} - -@media (min-width:576px) { - .align-content-sm-around { - align-content: space-around!important; - } -} - -@media (min-width:576px) { - .align-content-sm-stretch { - align-content: stretch!important; - } -} - -@media (min-width:576px) { - .align-self-sm-auto { - align-self: auto!important; - } -} - -@media (min-width:576px) { - .align-self-sm-start { - align-self: flex-start!important; - } -} - -@media (min-width:576px) { - .align-self-sm-end { - align-self: flex-end!important; - } -} - -@media (min-width:576px) { - .align-self-sm-center { - align-self: center!important; - } -} - -@media (min-width:576px) { - .align-self-sm-baseline { - align-self: baseline!important; - } -} - -@media (min-width:576px) { - .align-self-sm-stretch { - align-self: stretch!important; - } -} - -@media (min-width:576px) { - .order-sm-first { - order: -1!important; - } -} - -@media (min-width:576px) { - .order-sm-0 { - order: 0!important; - } -} - -@media (min-width:576px) { - .order-sm-1 { - order: 1!important; - } -} - -@media (min-width:576px) { - .order-sm-2 { - order: 2!important; - } -} - -@media (min-width:576px) { - .order-sm-3 { - order: 3!important; - } -} - -@media (min-width:576px) { - .order-sm-4 { - order: 4!important; - } -} - -@media (min-width:576px) { - .order-sm-5 { - order: 5!important; - } -} - -@media (min-width:576px) { - .order-sm-last { - order: 6!important; - } -} - -@media (min-width:576px) { - .m-sm-0 { - margin: 0!important; - } -} - -@media (min-width:576px) { - .m-sm-1 { - margin: .25rem!important; - } -} - -@media (min-width:576px) { - .m-sm-2 { - margin: .5rem!important; - } -} - -@media (min-width:576px) { - .m-sm-3 { - margin: 1rem!important; - } -} - -@media (min-width:576px) { - .m-sm-4 { - margin: 1.5rem!important; - } -} - -@media (min-width:576px) { - .m-sm-5 { - margin: 3rem!important; - } -} - -@media (min-width:576px) { - .m-sm-auto { - margin: auto!important; - } -} - -@media (min-width:576px) { - .mx-sm-0 { - margin-right: 0!important; - margin-left: 0!important; - } -} - -@media (min-width:576px) { - .mx-sm-1 { - margin-right: .25rem!important; - margin-left: .25rem!important; - } -} - -@media (min-width:576px) { - .mx-sm-2 { - margin-right: .5rem!important; - margin-left: .5rem!important; - } -} - -@media (min-width:576px) { - .mx-sm-3 { - margin-right: 1rem!important; - margin-left: 1rem!important; - } -} - -@media (min-width:576px) { - .mx-sm-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important; - } -} - -@media (min-width:576px) { - .mx-sm-5 { - margin-right: 3rem!important; - margin-left: 3rem!important; - } -} - -@media (min-width:576px) { - .mx-sm-auto { - margin-right: auto!important; - margin-left: auto!important; - } -} - -@media (min-width:576px) { - .my-sm-0 { - margin-top: 0!important; - margin-bottom: 0!important; - } -} - -@media (min-width:576px) { - .my-sm-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important; - } -} - -@media (min-width:576px) { - .my-sm-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important; - } -} - -@media (min-width:576px) { - .my-sm-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important; - } -} - -@media (min-width:576px) { - .my-sm-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:576px) { - .my-sm-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important; - } -} - -@media (min-width:576px) { - .my-sm-auto { - margin-top: auto!important; - margin-bottom: auto!important; - } -} - -@media (min-width:576px) { - .mt-sm-0 { - margin-top: 0!important; - } -} - -@media (min-width:576px) { - .mt-sm-1 { - margin-top: .25rem!important; - } -} - -@media (min-width:576px) { - .mt-sm-2 { - margin-top: .5rem!important; - } -} - -@media (min-width:576px) { - .mt-sm-3 { - margin-top: 1rem!important; - } -} - -@media (min-width:576px) { - .mt-sm-4 { - margin-top: 1.5rem!important; - } -} - -@media (min-width:576px) { - .mt-sm-5 { - margin-top: 3rem!important; - } -} - -@media (min-width:576px) { - .mt-sm-auto { - margin-top: auto!important; - } -} - -@media (min-width:576px) { - .me-sm-0 { - margin-right: 0!important; - } -} - -@media (min-width:576px) { - .me-sm-1 { - margin-right: .25rem!important; - } -} - -@media (min-width:576px) { - .me-sm-2 { - margin-right: .5rem!important; - } -} - -@media (min-width:576px) { - .me-sm-3 { - margin-right: 1rem!important; - } -} - -@media (min-width:576px) { - .me-sm-4 { - margin-right: 1.5rem!important; - } -} - -@media (min-width:576px) { - .me-sm-5 { - margin-right: 3rem!important; - } -} - -@media (min-width:576px) { - .me-sm-auto { - margin-right: auto!important; - } -} - -@media (min-width:576px) { - .mb-sm-0 { - margin-bottom: 0!important; - } -} - -@media (min-width:576px) { - .mb-sm-1 { - margin-bottom: .25rem!important; - } -} - -@media (min-width:576px) { - .mb-sm-2 { - margin-bottom: .5rem!important; - } -} - -@media (min-width:576px) { - .mb-sm-3 { - margin-bottom: 1rem!important; - } -} - -@media (min-width:576px) { - .mb-sm-4 { - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:576px) { - .mb-sm-5 { - margin-bottom: 3rem!important; - } -} - -@media (min-width:576px) { - .mb-sm-auto { - margin-bottom: auto!important; - } -} - -@media (min-width:576px) { - .ms-sm-0 { - margin-left: 0!important; - } -} - -@media (min-width:576px) { - .ms-sm-1 { - margin-left: .25rem!important; - } -} - -@media (min-width:576px) { - .ms-sm-2 { - margin-left: .5rem!important; - } -} - -@media (min-width:576px) { - .ms-sm-3 { - margin-left: 1rem!important; - } -} - -@media (min-width:576px) { - .ms-sm-4 { - margin-left: 1.5rem!important; - } -} - -@media (min-width:576px) { - .ms-sm-5 { - margin-left: 3rem!important; - } -} - -@media (min-width:576px) { - .ms-sm-auto { - margin-left: auto!important; - } -} - -@media (min-width:576px) { - .p-sm-0 { - padding: 0!important; - } -} - -@media (min-width:576px) { - .p-sm-1 { - padding: .25rem!important; - } -} - -@media (min-width:576px) { - .p-sm-2 { - padding: .5rem!important; - } -} - -@media (min-width:576px) { - .p-sm-3 { - padding: 1rem!important; - } -} - -@media (min-width:576px) { - .p-sm-4 { - padding: 1.5rem!important; - } -} - -@media (min-width:576px) { - .p-sm-5 { - padding: 3rem!important; - } -} - -@media (min-width:576px) { - .px-sm-0 { - padding-right: 0!important; - padding-left: 0!important; - } -} - -@media (min-width:576px) { - .px-sm-1 { - padding-right: .25rem!important; - padding-left: .25rem!important; - } -} - -@media (min-width:576px) { - .px-sm-2 { - padding-right: .5rem!important; - padding-left: .5rem!important; - } -} - -@media (min-width:576px) { - .px-sm-3 { - padding-right: 1rem!important; - padding-left: 1rem!important; - } -} - -@media (min-width:576px) { - .px-sm-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important; - } -} - -@media (min-width:576px) { - .px-sm-5 { - padding-right: 3rem!important; - padding-left: 3rem!important; - } -} - -@media (min-width:576px) { - .py-sm-0 { - padding-top: 0!important; - padding-bottom: 0!important; - } -} - -@media (min-width:576px) { - .py-sm-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important; - } -} - -@media (min-width:576px) { - .py-sm-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important; - } -} - -@media (min-width:576px) { - .py-sm-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important; - } -} - -@media (min-width:576px) { - .py-sm-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:576px) { - .py-sm-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important; - } -} - -@media (min-width:576px) { - .pt-sm-0 { - padding-top: 0!important; - } -} - -@media (min-width:576px) { - .pt-sm-1 { - padding-top: .25rem!important; - } -} - -@media (min-width:576px) { - .pt-sm-2 { - padding-top: .5rem!important; - } -} - -@media (min-width:576px) { - .pt-sm-3 { - padding-top: 1rem!important; - } -} - -@media (min-width:576px) { - .pt-sm-4 { - padding-top: 1.5rem!important; - } -} - -@media (min-width:576px) { - .pt-sm-5 { - padding-top: 3rem!important; - } -} - -@media (min-width:576px) { - .pe-sm-0 { - padding-right: 0!important; - } -} - -@media (min-width:576px) { - .pe-sm-1 { - padding-right: .25rem!important; - } -} - -@media (min-width:576px) { - .pe-sm-2 { - padding-right: .5rem!important; - } -} - -@media (min-width:576px) { - .pe-sm-3 { - padding-right: 1rem!important; - } -} - -@media (min-width:576px) { - .pe-sm-4 { - padding-right: 1.5rem!important; - } -} - -@media (min-width:576px) { - .pe-sm-5 { - padding-right: 3rem!important; - } -} - -@media (min-width:576px) { - .pb-sm-0 { - padding-bottom: 0!important; - } -} - -@media (min-width:576px) { - .pb-sm-1 { - padding-bottom: .25rem!important; - } -} - -@media (min-width:576px) { - .pb-sm-2 { - padding-bottom: .5rem!important; - } -} - -@media (min-width:576px) { - .pb-sm-3 { - padding-bottom: 1rem!important; - } -} - -@media (min-width:576px) { - .pb-sm-4 { - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:576px) { - .pb-sm-5 { - padding-bottom: 3rem!important; - } -} - -@media (min-width:576px) { - .ps-sm-0 { - padding-left: 0!important; - } -} - -@media (min-width:576px) { - .ps-sm-1 { - padding-left: .25rem!important; - } -} - -@media (min-width:576px) { - .ps-sm-2 { - padding-left: .5rem!important; - } -} - -@media (min-width:576px) { - .ps-sm-3 { - padding-left: 1rem!important; - } -} - -@media (min-width:576px) { - .ps-sm-4 { - padding-left: 1.5rem!important; - } -} - -@media (min-width:576px) { - .ps-sm-5 { - padding-left: 3rem!important; - } -} - -@media (min-width:576px) { - .gap-sm-0 { - gap: 0!important; - } -} - -@media (min-width:576px) { - .gap-sm-1 { - gap: .25rem!important; - } -} - -@media (min-width:576px) { - .gap-sm-2 { - gap: .5rem!important; - } -} - -@media (min-width:576px) { - .gap-sm-3 { - gap: 1rem!important; - } -} - -@media (min-width:576px) { - .gap-sm-4 { - gap: 1.5rem!important; - } -} - -@media (min-width:576px) { - .gap-sm-5 { - gap: 3rem!important; - } -} - -@media (min-width:576px) { - .text-sm-start { - text-align: left!important; - } -} - -@media (min-width:576px) { - .text-sm-end { - text-align: right!important; - } -} - -@media (min-width:576px) { - .text-sm-center { - text-align: center!important; - } -} - -@media (min-width:768px) { - .float-md-start { - float: left!important; - } -} - -@media (min-width:768px) { - .float-md-end { - float: right!important; - } -} - -@media (min-width:768px) { - .float-md-none { - float: none!important; - } -} - -@media (min-width:768px) { - .d-md-inline { - display: inline!important; - } -} - -@media (min-width:768px) { - .d-md-inline-block { - display: inline-block!important; - } -} - -@media (min-width:768px) { - .d-md-block { - display: block!important; - } -} - -@media (min-width:768px) { - .d-md-grid { - display: grid!important; - } -} - -@media (min-width:768px) { - .d-md-table { - display: table!important; - } -} - -@media (min-width:768px) { - .d-md-table-row { - display: table-row!important; - } -} - -@media (min-width:768px) { - .d-md-table-cell { - display: table-cell!important; - } -} - -@media (min-width:768px) { - .d-md-flex { - display: flex!important; - } -} - -@media (min-width:768px) { - .d-md-inline-flex { - display: inline-flex!important; - } -} - -@media (min-width:768px) { - .d-md-none { - display: none!important; - } -} - -@media (min-width:768px) { - .flex-md-fill { - flex: 1 1 auto!important; - } -} - -@media (min-width:768px) { - .flex-md-row { - flex-direction: row!important; - } -} - -@media (min-width:768px) { - .flex-md-column { - flex-direction: column!important; - } -} - -@media (min-width:768px) { - .flex-md-row-reverse { - flex-direction: row-reverse!important; - } -} - -@media (min-width:768px) { - .flex-md-column-reverse { - flex-direction: column-reverse!important; - } -} - -@media (min-width:768px) { - .flex-md-grow-0 { - flex-grow: 0!important; - } -} - -@media (min-width:768px) { - .flex-md-grow-1 { - flex-grow: 1!important; - } -} - -@media (min-width:768px) { - .flex-md-shrink-0 { - flex-shrink: 0!important; - } -} - -@media (min-width:768px) { - .flex-md-shrink-1 { - flex-shrink: 1!important; - } -} - -@media (min-width:768px) { - .flex-md-wrap { - flex-wrap: wrap!important; - } -} - -@media (min-width:768px) { - .flex-md-nowrap { - flex-wrap: nowrap!important; - } -} - -@media (min-width:768px) { - .flex-md-wrap-reverse { - flex-wrap: wrap-reverse!important; - } -} - -@media (min-width:768px) { - .justify-content-md-start { - justify-content: flex-start!important; - } -} - -@media (min-width:768px) { - .justify-content-md-end { - justify-content: flex-end!important; - } -} - -@media (min-width:768px) { - .justify-content-md-center { - justify-content: center!important; - } -} - -@media (min-width:768px) { - .justify-content-md-between { - justify-content: space-between!important; - } -} - -@media (min-width:768px) { - .justify-content-md-around { - justify-content: space-around!important; - } -} - -@media (min-width:768px) { - .justify-content-md-evenly { - justify-content: space-evenly!important; - } -} - -@media (min-width:768px) { - .align-items-md-start { - align-items: flex-start!important; - } -} - -@media (min-width:768px) { - .align-items-md-end { - align-items: flex-end!important; - } -} - -@media (min-width:768px) { - .align-items-md-center { - align-items: center!important; - } -} - -@media (min-width:768px) { - .align-items-md-baseline { - align-items: baseline!important; - } -} - -@media (min-width:768px) { - .align-items-md-stretch { - align-items: stretch!important; - } -} - -@media (min-width:768px) { - .align-content-md-start { - align-content: flex-start!important; - } -} - -@media (min-width:768px) { - .align-content-md-end { - align-content: flex-end!important; - } -} - -@media (min-width:768px) { - .align-content-md-center { - align-content: center!important; - } -} - -@media (min-width:768px) { - .align-content-md-between { - align-content: space-between!important; - } -} - -@media (min-width:768px) { - .align-content-md-around { - align-content: space-around!important; - } -} - -@media (min-width:768px) { - .align-content-md-stretch { - align-content: stretch!important; - } -} - -@media (min-width:768px) { - .align-self-md-auto { - align-self: auto!important; - } -} - -@media (min-width:768px) { - .align-self-md-start { - align-self: flex-start!important; - } -} - -@media (min-width:768px) { - .align-self-md-end { - align-self: flex-end!important; - } -} - -@media (min-width:768px) { - .align-self-md-center { - align-self: center!important; - } -} - -@media (min-width:768px) { - .align-self-md-baseline { - align-self: baseline!important; - } -} - -@media (min-width:768px) { - .align-self-md-stretch { - align-self: stretch!important; - } -} - -@media (min-width:768px) { - .order-md-first { - order: -1!important; - } -} - -@media (min-width:768px) { - .order-md-0 { - order: 0!important; - } -} - -@media (min-width:768px) { - .order-md-1 { - order: 1!important; - } -} - -@media (min-width:768px) { - .order-md-2 { - order: 2!important; - } -} - -@media (min-width:768px) { - .order-md-3 { - order: 3!important; - } -} - -@media (min-width:768px) { - .order-md-4 { - order: 4!important; - } -} - -@media (min-width:768px) { - .order-md-5 { - order: 5!important; - } -} - -@media (min-width:768px) { - .order-md-last { - order: 6!important; - } -} - -@media (min-width:768px) { - .m-md-0 { - margin: 0!important; - } -} - -@media (min-width:768px) { - .m-md-1 { - margin: .25rem!important; - } -} - -@media (min-width:768px) { - .m-md-2 { - margin: .5rem!important; - } -} - -@media (min-width:768px) { - .m-md-3 { - margin: 1rem!important; - } -} - -@media (min-width:768px) { - .m-md-4 { - margin: 1.5rem!important; - } -} - -@media (min-width:768px) { - .m-md-5 { - margin: 3rem!important; - } -} - -@media (min-width:768px) { - .m-md-auto { - margin: auto!important; - } -} - -@media (min-width:768px) { - .mx-md-0 { - margin-right: 0!important; - margin-left: 0!important; - } -} - -@media (min-width:768px) { - .mx-md-1 { - margin-right: .25rem!important; - margin-left: .25rem!important; - } -} - -@media (min-width:768px) { - .mx-md-2 { - margin-right: .5rem!important; - margin-left: .5rem!important; - } -} - -@media (min-width:768px) { - .mx-md-3 { - margin-right: 1rem!important; - margin-left: 1rem!important; - } -} - -@media (min-width:768px) { - .mx-md-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important; - } -} - -@media (min-width:768px) { - .mx-md-5 { - margin-right: 3rem!important; - margin-left: 3rem!important; - } -} - -@media (min-width:768px) { - .mx-md-auto { - margin-right: auto!important; - margin-left: auto!important; - } -} - -@media (min-width:768px) { - .my-md-0 { - margin-top: 0!important; - margin-bottom: 0!important; - } -} - -@media (min-width:768px) { - .my-md-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important; - } -} - -@media (min-width:768px) { - .my-md-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important; - } -} - -@media (min-width:768px) { - .my-md-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important; - } -} - -@media (min-width:768px) { - .my-md-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:768px) { - .my-md-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important; - } -} - -@media (min-width:768px) { - .my-md-auto { - margin-top: auto!important; - margin-bottom: auto!important; - } -} - -@media (min-width:768px) { - .mt-md-0 { - margin-top: 0!important; - } -} - -@media (min-width:768px) { - .mt-md-1 { - margin-top: .25rem!important; - } -} - -@media (min-width:768px) { - .mt-md-2 { - margin-top: .5rem!important; - } -} - -@media (min-width:768px) { - .mt-md-3 { - margin-top: 1rem!important; - } -} - -@media (min-width:768px) { - .mt-md-4 { - margin-top: 1.5rem!important; - } -} - -@media (min-width:768px) { - .mt-md-5 { - margin-top: 3rem!important; - } -} - -@media (min-width:768px) { - .mt-md-auto { - margin-top: auto!important; - } -} - -@media (min-width:768px) { - .me-md-0 { - margin-right: 0!important; - } -} - -@media (min-width:768px) { - .me-md-1 { - margin-right: .25rem!important; - } -} - -@media (min-width:768px) { - .me-md-2 { - margin-right: .5rem!important; - } -} - -@media (min-width:768px) { - .me-md-3 { - margin-right: 1rem!important; - } -} - -@media (min-width:768px) { - .me-md-4 { - margin-right: 1.5rem!important; - } -} - -@media (min-width:768px) { - .me-md-5 { - margin-right: 3rem!important; - } -} - -@media (min-width:768px) { - .me-md-auto { - margin-right: auto!important; - } -} - -@media (min-width:768px) { - .mb-md-0 { - margin-bottom: 0!important; - } -} - -@media (min-width:768px) { - .mb-md-1 { - margin-bottom: .25rem!important; - } -} - -@media (min-width:768px) { - .mb-md-2 { - margin-bottom: .5rem!important; - } -} - -@media (min-width:768px) { - .mb-md-3 { - margin-bottom: 1rem!important; - } -} - -@media (min-width:768px) { - .mb-md-4 { - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:768px) { - .mb-md-5 { - margin-bottom: 3rem!important; - } -} - -@media (min-width:768px) { - .mb-md-auto { - margin-bottom: auto!important; - } -} - -@media (min-width:768px) { - .ms-md-0 { - margin-left: 0!important; - } -} - -@media (min-width:768px) { - .ms-md-1 { - margin-left: .25rem!important; - } -} - -@media (min-width:768px) { - .ms-md-2 { - margin-left: .5rem!important; - } -} - -@media (min-width:768px) { - .ms-md-3 { - margin-left: 1rem!important; - } -} - -@media (min-width:768px) { - .ms-md-4 { - margin-left: 1.5rem!important; - } -} - -@media (min-width:768px) { - .ms-md-5 { - margin-left: 3rem!important; - } -} - -@media (min-width:768px) { - .ms-md-auto { - margin-left: auto!important; - } -} - -@media (min-width:768px) { - .p-md-0 { - padding: 0!important; - } -} - -@media (min-width:768px) { - .p-md-1 { - padding: .25rem!important; - } -} - -@media (min-width:768px) { - .p-md-2 { - padding: .5rem!important; - } -} - -@media (min-width:768px) { - .p-md-3 { - padding: 1rem!important; - } -} - -@media (min-width:768px) { - .p-md-4 { - padding: 1.5rem!important; - } -} - -@media (min-width:768px) { - .p-md-5 { - padding: 3rem!important; - } -} - -@media (min-width:768px) { - .px-md-0 { - padding-right: 0!important; - padding-left: 0!important; - } -} - -@media (min-width:768px) { - .px-md-1 { - padding-right: .25rem!important; - padding-left: .25rem!important; - } -} - -@media (min-width:768px) { - .px-md-2 { - padding-right: .5rem!important; - padding-left: .5rem!important; - } -} - -@media (min-width:768px) { - .px-md-3 { - padding-right: 1rem!important; - padding-left: 1rem!important; - } -} - -@media (min-width:768px) { - .px-md-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important; - } -} - -@media (min-width:768px) { - .px-md-5 { - padding-right: 3rem!important; - padding-left: 3rem!important; - } -} - -@media (min-width:768px) { - .py-md-0 { - padding-top: 0!important; - padding-bottom: 0!important; - } -} - -@media (min-width:768px) { - .py-md-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important; - } -} - -@media (min-width:768px) { - .py-md-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important; - } -} - -@media (min-width:768px) { - .py-md-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important; - } -} - -@media (min-width:768px) { - .py-md-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:768px) { - .py-md-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important; - } -} - -@media (min-width:768px) { - .pt-md-0 { - padding-top: 0!important; - } -} - -@media (min-width:768px) { - .pt-md-1 { - padding-top: .25rem!important; - } -} - -@media (min-width:768px) { - .pt-md-2 { - padding-top: .5rem!important; - } -} - -@media (min-width:768px) { - .pt-md-3 { - padding-top: 1rem!important; - } -} - -@media (min-width:768px) { - .pt-md-4 { - padding-top: 1.5rem!important; - } -} - -@media (min-width:768px) { - .pt-md-5 { - padding-top: 3rem!important; - } -} - -@media (min-width:768px) { - .pe-md-0 { - padding-right: 0!important; - } -} - -@media (min-width:768px) { - .pe-md-1 { - padding-right: .25rem!important; - } -} - -@media (min-width:768px) { - .pe-md-2 { - padding-right: .5rem!important; - } -} - -@media (min-width:768px) { - .pe-md-3 { - padding-right: 1rem!important; - } -} - -@media (min-width:768px) { - .pe-md-4 { - padding-right: 1.5rem!important; - } -} - -@media (min-width:768px) { - .pe-md-5 { - padding-right: 3rem!important; - } -} - -@media (min-width:768px) { - .pb-md-0 { - padding-bottom: 0!important; - } -} - -@media (min-width:768px) { - .pb-md-1 { - padding-bottom: .25rem!important; - } -} - -@media (min-width:768px) { - .pb-md-2 { - padding-bottom: .5rem!important; - } -} - -@media (min-width:768px) { - .pb-md-3 { - padding-bottom: 1rem!important; - } -} - -@media (min-width:768px) { - .pb-md-4 { - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:768px) { - .pb-md-5 { - padding-bottom: 3rem!important; - } -} - -@media (min-width:768px) { - .ps-md-0 { - padding-left: 0!important; - } -} - -@media (min-width:768px) { - .ps-md-1 { - padding-left: .25rem!important; - } -} - -@media (min-width:768px) { - .ps-md-2 { - padding-left: .5rem!important; - } -} - -@media (min-width:768px) { - .ps-md-3 { - padding-left: 1rem!important; - } -} - -@media (min-width:768px) { - .ps-md-4 { - padding-left: 1.5rem!important; - } -} - -@media (min-width:768px) { - .ps-md-5 { - padding-left: 3rem!important; - } -} - -@media (min-width:768px) { - .gap-md-0 { - gap: 0!important; - } -} - -@media (min-width:768px) { - .gap-md-1 { - gap: .25rem!important; - } -} - -@media (min-width:768px) { - .gap-md-2 { - gap: .5rem!important; - } -} - -@media (min-width:768px) { - .gap-md-3 { - gap: 1rem!important; - } -} - -@media (min-width:768px) { - .gap-md-4 { - gap: 1.5rem!important; - } -} - -@media (min-width:768px) { - .gap-md-5 { - gap: 3rem!important; - } -} - -@media (min-width:768px) { - .text-md-start { - text-align: left!important; - } -} - -@media (min-width:768px) { - .text-md-end { - text-align: right!important; - } -} - -@media (min-width:768px) { - .text-md-center { - text-align: center!important; - } -} - -@media (min-width:992px) { - .float-lg-start { - float: left!important; - } -} - -@media (min-width:992px) { - .float-lg-end { - float: right!important; - } -} - -@media (min-width:992px) { - .float-lg-none { - float: none!important; - } -} - -@media (min-width:992px) { - .d-lg-inline { - display: inline!important; - } -} - -@media (min-width:992px) { - .d-lg-inline-block { - display: inline-block!important; - } -} - -@media (min-width:992px) { - .d-lg-block { - display: block!important; - } -} - -@media (min-width:992px) { - .d-lg-grid { - display: grid!important; - } -} - -@media (min-width:992px) { - .d-lg-table { - display: table!important; - } -} - -@media (min-width:992px) { - .d-lg-table-row { - display: table-row!important; - } -} - -@media (min-width:992px) { - .d-lg-table-cell { - display: table-cell!important; - } -} - -@media (min-width:992px) { - .d-lg-flex { - display: flex!important; - } -} - -@media (min-width:992px) { - .d-lg-inline-flex { - display: inline-flex!important; - } -} - -@media (min-width:992px) { - .d-lg-none { - display: none!important; - } -} - -@media (min-width:992px) { - .flex-lg-fill { - flex: 1 1 auto!important; - } -} - -@media (min-width:992px) { - .flex-lg-row { - flex-direction: row!important; - } -} - -@media (min-width:992px) { - .flex-lg-column { - flex-direction: column!important; - } -} - -@media (min-width:992px) { - .flex-lg-row-reverse { - flex-direction: row-reverse!important; - } -} - -@media (min-width:992px) { - .flex-lg-column-reverse { - flex-direction: column-reverse!important; - } -} - -@media (min-width:992px) { - .flex-lg-grow-0 { - flex-grow: 0!important; - } -} - -@media (min-width:992px) { - .flex-lg-grow-1 { - flex-grow: 1!important; - } -} - -@media (min-width:992px) { - .flex-lg-shrink-0 { - flex-shrink: 0!important; - } -} - -@media (min-width:992px) { - .flex-lg-shrink-1 { - flex-shrink: 1!important; - } -} - -@media (min-width:992px) { - .flex-lg-wrap { - flex-wrap: wrap!important; - } -} - -@media (min-width:992px) { - .flex-lg-nowrap { - flex-wrap: nowrap!important; - } -} - -@media (min-width:992px) { - .flex-lg-wrap-reverse { - flex-wrap: wrap-reverse!important; - } -} - -@media (min-width:992px) { - .justify-content-lg-start { - justify-content: flex-start!important; - } -} - -@media (min-width:992px) { - .justify-content-lg-end { - justify-content: flex-end!important; - } -} - -@media (min-width:992px) { - .justify-content-lg-center { - justify-content: center!important; - } -} - -@media (min-width:992px) { - .justify-content-lg-between { - justify-content: space-between!important; - } -} - -@media (min-width:992px) { - .justify-content-lg-around { - justify-content: space-around!important; - } -} - -@media (min-width:992px) { - .justify-content-lg-evenly { - justify-content: space-evenly!important; - } -} - -@media (min-width:992px) { - .align-items-lg-start { - align-items: flex-start!important; - } -} - -@media (min-width:992px) { - .align-items-lg-end { - align-items: flex-end!important; - } -} - -@media (min-width:992px) { - .align-items-lg-center { - align-items: center!important; - } -} - -@media (min-width:992px) { - .align-items-lg-baseline { - align-items: baseline!important; - } -} - -@media (min-width:992px) { - .align-items-lg-stretch { - align-items: stretch!important; - } -} - -@media (min-width:992px) { - .align-content-lg-start { - align-content: flex-start!important; - } -} - -@media (min-width:992px) { - .align-content-lg-end { - align-content: flex-end!important; - } -} - -@media (min-width:992px) { - .align-content-lg-center { - align-content: center!important; - } -} - -@media (min-width:992px) { - .align-content-lg-between { - align-content: space-between!important; - } -} - -@media (min-width:992px) { - .align-content-lg-around { - align-content: space-around!important; - } -} - -@media (min-width:992px) { - .align-content-lg-stretch { - align-content: stretch!important; - } -} - -@media (min-width:992px) { - .align-self-lg-auto { - align-self: auto!important; - } -} - -@media (min-width:992px) { - .align-self-lg-start { - align-self: flex-start!important; - } -} - -@media (min-width:992px) { - .align-self-lg-end { - align-self: flex-end!important; - } -} - -@media (min-width:992px) { - .align-self-lg-center { - align-self: center!important; - } -} - -@media (min-width:992px) { - .align-self-lg-baseline { - align-self: baseline!important; - } -} - -@media (min-width:992px) { - .align-self-lg-stretch { - align-self: stretch!important; - } -} - -@media (min-width:992px) { - .order-lg-first { - order: -1!important; - } -} - -@media (min-width:992px) { - .order-lg-0 { - order: 0!important; - } -} - -@media (min-width:992px) { - .order-lg-1 { - order: 1!important; - } -} - -@media (min-width:992px) { - .order-lg-2 { - order: 2!important; - } -} - -@media (min-width:992px) { - .order-lg-3 { - order: 3!important; - } -} - -@media (min-width:992px) { - .order-lg-4 { - order: 4!important; - } -} - -@media (min-width:992px) { - .order-lg-5 { - order: 5!important; - } -} - -@media (min-width:992px) { - .order-lg-last { - order: 6!important; - } -} - -@media (min-width:992px) { - .m-lg-0 { - margin: 0!important; - } -} - -@media (min-width:992px) { - .m-lg-1 { - margin: .25rem!important; - } -} - -@media (min-width:992px) { - .m-lg-2 { - margin: .5rem!important; - } -} - -@media (min-width:992px) { - .m-lg-3 { - margin: 1rem!important; - } -} - -@media (min-width:992px) { - .m-lg-4 { - margin: 1.5rem!important; - } -} - -@media (min-width:992px) { - .m-lg-5 { - margin: 3rem!important; - } -} - -@media (min-width:992px) { - .m-lg-auto { - margin: auto!important; - } -} - -@media (min-width:992px) { - .mx-lg-0 { - margin-right: 0!important; - margin-left: 0!important; - } -} - -@media (min-width:992px) { - .mx-lg-1 { - margin-right: .25rem!important; - margin-left: .25rem!important; - } -} - -@media (min-width:992px) { - .mx-lg-2 { - margin-right: .5rem!important; - margin-left: .5rem!important; - } -} - -@media (min-width:992px) { - .mx-lg-3 { - margin-right: 1rem!important; - margin-left: 1rem!important; - } -} - -@media (min-width:992px) { - .mx-lg-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important; - } -} - -@media (min-width:992px) { - .mx-lg-5 { - margin-right: 3rem!important; - margin-left: 3rem!important; - } -} - -@media (min-width:992px) { - .mx-lg-auto { - margin-right: auto!important; - margin-left: auto!important; - } -} - -@media (min-width:992px) { - .my-lg-0 { - margin-top: 0!important; - margin-bottom: 0!important; - } -} - -@media (min-width:992px) { - .my-lg-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important; - } -} - -@media (min-width:992px) { - .my-lg-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important; - } -} - -@media (min-width:992px) { - .my-lg-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important; - } -} - -@media (min-width:992px) { - .my-lg-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:992px) { - .my-lg-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important; - } -} - -@media (min-width:992px) { - .my-lg-auto { - margin-top: auto!important; - margin-bottom: auto!important; - } -} - -@media (min-width:992px) { - .mt-lg-0 { - margin-top: 0!important; - } -} - -@media (min-width:992px) { - .mt-lg-1 { - margin-top: .25rem!important; - } -} - -@media (min-width:992px) { - .mt-lg-2 { - margin-top: .5rem!important; - } -} - -@media (min-width:992px) { - .mt-lg-3 { - margin-top: 1rem!important; - } -} - -@media (min-width:992px) { - .mt-lg-4 { - margin-top: 1.5rem!important; - } -} - -@media (min-width:992px) { - .mt-lg-5 { - margin-top: 3rem!important; - } -} - -@media (min-width:992px) { - .mt-lg-auto { - margin-top: auto!important; - } -} - -@media (min-width:992px) { - .me-lg-0 { - margin-right: 0!important; - } -} - -@media (min-width:992px) { - .me-lg-1 { - margin-right: .25rem!important; - } -} - -@media (min-width:992px) { - .me-lg-2 { - margin-right: .5rem!important; - } -} - -@media (min-width:992px) { - .me-lg-3 { - margin-right: 1rem!important; - } -} - -@media (min-width:992px) { - .me-lg-4 { - margin-right: 1.5rem!important; - } -} - -@media (min-width:992px) { - .me-lg-5 { - margin-right: 3rem!important; - } -} - -@media (min-width:992px) { - .me-lg-auto { - margin-right: auto!important; - } -} - -@media (min-width:992px) { - .mb-lg-0 { - margin-bottom: 0!important; - } -} - -@media (min-width:992px) { - .mb-lg-1 { - margin-bottom: .25rem!important; - } -} - -@media (min-width:992px) { - .mb-lg-2 { - margin-bottom: .5rem!important; - } -} - -@media (min-width:992px) { - .mb-lg-3 { - margin-bottom: 1rem!important; - } -} - -@media (min-width:992px) { - .mb-lg-4 { - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:992px) { - .mb-lg-5 { - margin-bottom: 3rem!important; - } -} - -@media (min-width:992px) { - .mb-lg-auto { - margin-bottom: auto!important; - } -} - -@media (min-width:992px) { - .ms-lg-0 { - margin-left: 0!important; - } -} - -@media (min-width:992px) { - .ms-lg-1 { - margin-left: .25rem!important; - } -} - -@media (min-width:992px) { - .ms-lg-2 { - margin-left: .5rem!important; - } -} - -@media (min-width:992px) { - .ms-lg-3 { - margin-left: 1rem!important; - } -} - -@media (min-width:992px) { - .ms-lg-4 { - margin-left: 1.5rem!important; - } -} - -@media (min-width:992px) { - .ms-lg-5 { - margin-left: 3rem!important; - } -} - -@media (min-width:992px) { - .ms-lg-auto { - margin-left: auto!important; - } -} - -@media (min-width:992px) { - .p-lg-0 { - padding: 0!important; - } -} - -@media (min-width:992px) { - .p-lg-1 { - padding: .25rem!important; - } -} - -@media (min-width:992px) { - .p-lg-2 { - padding: .5rem!important; - } -} - -@media (min-width:992px) { - .p-lg-3 { - padding: 1rem!important; - } -} - -@media (min-width:992px) { - .p-lg-4 { - padding: 1.5rem!important; - } -} - -@media (min-width:992px) { - .p-lg-5 { - padding: 3rem!important; - } -} - -@media (min-width:992px) { - .px-lg-0 { - padding-right: 0!important; - padding-left: 0!important; - } -} - -@media (min-width:992px) { - .px-lg-1 { - padding-right: .25rem!important; - padding-left: .25rem!important; - } -} - -@media (min-width:992px) { - .px-lg-2 { - padding-right: .5rem!important; - padding-left: .5rem!important; - } -} - -@media (min-width:992px) { - .px-lg-3 { - padding-right: 1rem!important; - padding-left: 1rem!important; - } -} - -@media (min-width:992px) { - .px-lg-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important; - } -} - -@media (min-width:992px) { - .px-lg-5 { - padding-right: 3rem!important; - padding-left: 3rem!important; - } -} - -@media (min-width:992px) { - .py-lg-0 { - padding-top: 0!important; - padding-bottom: 0!important; - } -} - -@media (min-width:992px) { - .py-lg-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important; - } -} - -@media (min-width:992px) { - .py-lg-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important; - } -} - -@media (min-width:992px) { - .py-lg-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important; - } -} - -@media (min-width:992px) { - .py-lg-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:992px) { - .py-lg-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important; - } -} - -@media (min-width:992px) { - .pt-lg-0 { - padding-top: 0!important; - } -} - -@media (min-width:992px) { - .pt-lg-1 { - padding-top: .25rem!important; - } -} - -@media (min-width:992px) { - .pt-lg-2 { - padding-top: .5rem!important; - } -} - -@media (min-width:992px) { - .pt-lg-3 { - padding-top: 1rem!important; - } -} - -@media (min-width:992px) { - .pt-lg-4 { - padding-top: 1.5rem!important; - } -} - -@media (min-width:992px) { - .pt-lg-5 { - padding-top: 3rem!important; - } -} - -@media (min-width:992px) { - .pe-lg-0 { - padding-right: 0!important; - } -} - -@media (min-width:992px) { - .pe-lg-1 { - padding-right: .25rem!important; - } -} - -@media (min-width:992px) { - .pe-lg-2 { - padding-right: .5rem!important; - } -} - -@media (min-width:992px) { - .pe-lg-3 { - padding-right: 1rem!important; - } -} - -@media (min-width:992px) { - .pe-lg-4 { - padding-right: 1.5rem!important; - } -} - -@media (min-width:992px) { - .pe-lg-5 { - padding-right: 3rem!important; - } -} - -@media (min-width:992px) { - .pb-lg-0 { - padding-bottom: 0!important; - } -} - -@media (min-width:992px) { - .pb-lg-1 { - padding-bottom: .25rem!important; - } -} - -@media (min-width:992px) { - .pb-lg-2 { - padding-bottom: .5rem!important; - } -} - -@media (min-width:992px) { - .pb-lg-3 { - padding-bottom: 1rem!important; - } -} - -@media (min-width:992px) { - .pb-lg-4 { - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:992px) { - .pb-lg-5 { - padding-bottom: 3rem!important; - } -} - -@media (min-width:992px) { - .ps-lg-0 { - padding-left: 0!important; - } -} - -@media (min-width:992px) { - .ps-lg-1 { - padding-left: .25rem!important; - } -} - -@media (min-width:992px) { - .ps-lg-2 { - padding-left: .5rem!important; - } -} - -@media (min-width:992px) { - .ps-lg-3 { - padding-left: 1rem!important; - } -} - -@media (min-width:992px) { - .ps-lg-4 { - padding-left: 1.5rem!important; - } -} - -@media (min-width:992px) { - .ps-lg-5 { - padding-left: 3rem!important; - } -} - -@media (min-width:992px) { - .gap-lg-0 { - gap: 0!important; - } -} - -@media (min-width:992px) { - .gap-lg-1 { - gap: .25rem!important; - } -} - -@media (min-width:992px) { - .gap-lg-2 { - gap: .5rem!important; - } -} - -@media (min-width:992px) { - .gap-lg-3 { - gap: 1rem!important; - } -} - -@media (min-width:992px) { - .gap-lg-4 { - gap: 1.5rem!important; - } -} - -@media (min-width:992px) { - .gap-lg-5 { - gap: 3rem!important; - } -} - -@media (min-width:992px) { - .text-lg-start { - text-align: left!important; - } -} - -@media (min-width:992px) { - .text-lg-end { - text-align: right!important; - } -} - -@media (min-width:992px) { - .text-lg-center { - text-align: center!important; - } -} - -@media (min-width:1200px) { - .float-xl-start { - float: left!important; - } -} - -@media (min-width:1200px) { - .float-xl-end { - float: right!important; - } -} - -@media (min-width:1200px) { - .float-xl-none { - float: none!important; - } -} - -@media (min-width:1200px) { - .d-xl-inline { - display: inline!important; - } -} - -@media (min-width:1200px) { - .d-xl-inline-block { - display: inline-block!important; - } -} - -@media (min-width:1200px) { - .d-xl-block { - display: block!important; - } -} - -@media (min-width:1200px) { - .d-xl-grid { - display: grid!important; - } -} - -@media (min-width:1200px) { - .d-xl-table { - display: table!important; - } -} - -@media (min-width:1200px) { - .d-xl-table-row { - display: table-row!important; - } -} - -@media (min-width:1200px) { - .d-xl-table-cell { - display: table-cell!important; - } -} - -@media (min-width:1200px) { - .d-xl-flex { - display: flex!important; - } -} - -@media (min-width:1200px) { - .d-xl-inline-flex { - display: inline-flex!important; - } -} - -@media (min-width:1200px) { - .d-xl-none { - display: none!important; - } -} - -@media (min-width:1200px) { - .flex-xl-fill { - flex: 1 1 auto!important; - } -} - -@media (min-width:1200px) { - .flex-xl-row { - flex-direction: row!important; - } -} - -@media (min-width:1200px) { - .flex-xl-column { - flex-direction: column!important; - } -} - -@media (min-width:1200px) { - .flex-xl-row-reverse { - flex-direction: row-reverse!important; - } -} - -@media (min-width:1200px) { - .flex-xl-column-reverse { - flex-direction: column-reverse!important; - } -} - -@media (min-width:1200px) { - .flex-xl-grow-0 { - flex-grow: 0!important; - } -} - -@media (min-width:1200px) { - .flex-xl-grow-1 { - flex-grow: 1!important; - } -} - -@media (min-width:1200px) { - .flex-xl-shrink-0 { - flex-shrink: 0!important; - } -} - -@media (min-width:1200px) { - .flex-xl-shrink-1 { - flex-shrink: 1!important; - } -} - -@media (min-width:1200px) { - .flex-xl-wrap { - flex-wrap: wrap!important; - } -} - -@media (min-width:1200px) { - .flex-xl-nowrap { - flex-wrap: nowrap!important; - } -} - -@media (min-width:1200px) { - .flex-xl-wrap-reverse { - flex-wrap: wrap-reverse!important; - } -} - -@media (min-width:1200px) { - .justify-content-xl-start { - justify-content: flex-start!important; - } -} - -@media (min-width:1200px) { - .justify-content-xl-end { - justify-content: flex-end!important; - } -} - -@media (min-width:1200px) { - .justify-content-xl-center { - justify-content: center!important; - } -} - -@media (min-width:1200px) { - .justify-content-xl-between { - justify-content: space-between!important; - } -} - -@media (min-width:1200px) { - .justify-content-xl-around { - justify-content: space-around!important; - } -} - -@media (min-width:1200px) { - .justify-content-xl-evenly { - justify-content: space-evenly!important; - } -} - -@media (min-width:1200px) { - .align-items-xl-start { - align-items: flex-start!important; - } -} - -@media (min-width:1200px) { - .align-items-xl-end { - align-items: flex-end!important; - } -} - -@media (min-width:1200px) { - .align-items-xl-center { - align-items: center!important; - } -} - -@media (min-width:1200px) { - .align-items-xl-baseline { - align-items: baseline!important; - } -} - -@media (min-width:1200px) { - .align-items-xl-stretch { - align-items: stretch!important; - } -} - -@media (min-width:1200px) { - .align-content-xl-start { - align-content: flex-start!important; - } -} - -@media (min-width:1200px) { - .align-content-xl-end { - align-content: flex-end!important; - } -} - -@media (min-width:1200px) { - .align-content-xl-center { - align-content: center!important; - } -} - -@media (min-width:1200px) { - .align-content-xl-between { - align-content: space-between!important; - } -} - -@media (min-width:1200px) { - .align-content-xl-around { - align-content: space-around!important; - } -} - -@media (min-width:1200px) { - .align-content-xl-stretch { - align-content: stretch!important; - } -} - -@media (min-width:1200px) { - .align-self-xl-auto { - align-self: auto!important; - } -} - -@media (min-width:1200px) { - .align-self-xl-start { - align-self: flex-start!important; - } -} - -@media (min-width:1200px) { - .align-self-xl-end { - align-self: flex-end!important; - } -} - -@media (min-width:1200px) { - .align-self-xl-center { - align-self: center!important; - } -} - -@media (min-width:1200px) { - .align-self-xl-baseline { - align-self: baseline!important; - } -} - -@media (min-width:1200px) { - .align-self-xl-stretch { - align-self: stretch!important; - } -} - -@media (min-width:1200px) { - .order-xl-first { - order: -1!important; - } -} - -@media (min-width:1200px) { - .order-xl-0 { - order: 0!important; - } -} - -@media (min-width:1200px) { - .order-xl-1 { - order: 1!important; - } -} - -@media (min-width:1200px) { - .order-xl-2 { - order: 2!important; - } -} - -@media (min-width:1200px) { - .order-xl-3 { - order: 3!important; - } -} - -@media (min-width:1200px) { - .order-xl-4 { - order: 4!important; - } -} - -@media (min-width:1200px) { - .order-xl-5 { - order: 5!important; - } -} - -@media (min-width:1200px) { - .order-xl-last { - order: 6!important; - } -} - -@media (min-width:1200px) { - .m-xl-0 { - margin: 0!important; - } -} - -@media (min-width:1200px) { - .m-xl-1 { - margin: .25rem!important; - } -} - -@media (min-width:1200px) { - .m-xl-2 { - margin: .5rem!important; - } -} - -@media (min-width:1200px) { - .m-xl-3 { - margin: 1rem!important; - } -} - -@media (min-width:1200px) { - .m-xl-4 { - margin: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .m-xl-5 { - margin: 3rem!important; - } -} - -@media (min-width:1200px) { - .m-xl-auto { - margin: auto!important; - } -} - -@media (min-width:1200px) { - .mx-xl-0 { - margin-right: 0!important; - margin-left: 0!important; - } -} - -@media (min-width:1200px) { - .mx-xl-1 { - margin-right: .25rem!important; - margin-left: .25rem!important; - } -} - -@media (min-width:1200px) { - .mx-xl-2 { - margin-right: .5rem!important; - margin-left: .5rem!important; - } -} - -@media (min-width:1200px) { - .mx-xl-3 { - margin-right: 1rem!important; - margin-left: 1rem!important; - } -} - -@media (min-width:1200px) { - .mx-xl-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .mx-xl-5 { - margin-right: 3rem!important; - margin-left: 3rem!important; - } -} - -@media (min-width:1200px) { - .mx-xl-auto { - margin-right: auto!important; - margin-left: auto!important; - } -} - -@media (min-width:1200px) { - .my-xl-0 { - margin-top: 0!important; - margin-bottom: 0!important; - } -} - -@media (min-width:1200px) { - .my-xl-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important; - } -} - -@media (min-width:1200px) { - .my-xl-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important; - } -} - -@media (min-width:1200px) { - .my-xl-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important; - } -} - -@media (min-width:1200px) { - .my-xl-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .my-xl-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important; - } -} - -@media (min-width:1200px) { - .my-xl-auto { - margin-top: auto!important; - margin-bottom: auto!important; - } -} - -@media (min-width:1200px) { - .mt-xl-0 { - margin-top: 0!important; - } -} - -@media (min-width:1200px) { - .mt-xl-1 { - margin-top: .25rem!important; - } -} - -@media (min-width:1200px) { - .mt-xl-2 { - margin-top: .5rem!important; - } -} - -@media (min-width:1200px) { - .mt-xl-3 { - margin-top: 1rem!important; - } -} - -@media (min-width:1200px) { - .mt-xl-4 { - margin-top: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .mt-xl-5 { - margin-top: 3rem!important; - } -} - -@media (min-width:1200px) { - .mt-xl-auto { - margin-top: auto!important; - } -} - -@media (min-width:1200px) { - .me-xl-0 { - margin-right: 0!important; - } -} - -@media (min-width:1200px) { - .me-xl-1 { - margin-right: .25rem!important; - } -} - -@media (min-width:1200px) { - .me-xl-2 { - margin-right: .5rem!important; - } -} - -@media (min-width:1200px) { - .me-xl-3 { - margin-right: 1rem!important; - } -} - -@media (min-width:1200px) { - .me-xl-4 { - margin-right: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .me-xl-5 { - margin-right: 3rem!important; - } -} - -@media (min-width:1200px) { - .me-xl-auto { - margin-right: auto!important; - } -} - -@media (min-width:1200px) { - .mb-xl-0 { - margin-bottom: 0!important; - } -} - -@media (min-width:1200px) { - .mb-xl-1 { - margin-bottom: .25rem!important; - } -} - -@media (min-width:1200px) { - .mb-xl-2 { - margin-bottom: .5rem!important; - } -} - -@media (min-width:1200px) { - .mb-xl-3 { - margin-bottom: 1rem!important; - } -} - -@media (min-width:1200px) { - .mb-xl-4 { - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .mb-xl-5 { - margin-bottom: 3rem!important; - } -} - -@media (min-width:1200px) { - .mb-xl-auto { - margin-bottom: auto!important; - } -} - -@media (min-width:1200px) { - .ms-xl-0 { - margin-left: 0!important; - } -} - -@media (min-width:1200px) { - .ms-xl-1 { - margin-left: .25rem!important; - } -} - -@media (min-width:1200px) { - .ms-xl-2 { - margin-left: .5rem!important; - } -} - -@media (min-width:1200px) { - .ms-xl-3 { - margin-left: 1rem!important; - } -} - -@media (min-width:1200px) { - .ms-xl-4 { - margin-left: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .ms-xl-5 { - margin-left: 3rem!important; - } -} - -@media (min-width:1200px) { - .ms-xl-auto { - margin-left: auto!important; - } -} - -@media (min-width:1200px) { - .p-xl-0 { - padding: 0!important; - } -} - -@media (min-width:1200px) { - .p-xl-1 { - padding: .25rem!important; - } -} - -@media (min-width:1200px) { - .p-xl-2 { - padding: .5rem!important; - } -} - -@media (min-width:1200px) { - .p-xl-3 { - padding: 1rem!important; - } -} - -@media (min-width:1200px) { - .p-xl-4 { - padding: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .p-xl-5 { - padding: 3rem!important; - } -} - -@media (min-width:1200px) { - .px-xl-0 { - padding-right: 0!important; - padding-left: 0!important; - } -} - -@media (min-width:1200px) { - .px-xl-1 { - padding-right: .25rem!important; - padding-left: .25rem!important; - } -} - -@media (min-width:1200px) { - .px-xl-2 { - padding-right: .5rem!important; - padding-left: .5rem!important; - } -} - -@media (min-width:1200px) { - .px-xl-3 { - padding-right: 1rem!important; - padding-left: 1rem!important; - } -} - -@media (min-width:1200px) { - .px-xl-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .px-xl-5 { - padding-right: 3rem!important; - padding-left: 3rem!important; - } -} - -@media (min-width:1200px) { - .py-xl-0 { - padding-top: 0!important; - padding-bottom: 0!important; - } -} - -@media (min-width:1200px) { - .py-xl-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important; - } -} - -@media (min-width:1200px) { - .py-xl-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important; - } -} - -@media (min-width:1200px) { - .py-xl-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important; - } -} - -@media (min-width:1200px) { - .py-xl-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .py-xl-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important; - } -} - -@media (min-width:1200px) { - .pt-xl-0 { - padding-top: 0!important; - } -} - -@media (min-width:1200px) { - .pt-xl-1 { - padding-top: .25rem!important; - } -} - -@media (min-width:1200px) { - .pt-xl-2 { - padding-top: .5rem!important; - } -} - -@media (min-width:1200px) { - .pt-xl-3 { - padding-top: 1rem!important; - } -} - -@media (min-width:1200px) { - .pt-xl-4 { - padding-top: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .pt-xl-5 { - padding-top: 3rem!important; - } -} - -@media (min-width:1200px) { - .pe-xl-0 { - padding-right: 0!important; - } -} - -@media (min-width:1200px) { - .pe-xl-1 { - padding-right: .25rem!important; - } -} - -@media (min-width:1200px) { - .pe-xl-2 { - padding-right: .5rem!important; - } -} - -@media (min-width:1200px) { - .pe-xl-3 { - padding-right: 1rem!important; - } -} - -@media (min-width:1200px) { - .pe-xl-4 { - padding-right: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .pe-xl-5 { - padding-right: 3rem!important; - } -} - -@media (min-width:1200px) { - .pb-xl-0 { - padding-bottom: 0!important; - } -} - -@media (min-width:1200px) { - .pb-xl-1 { - padding-bottom: .25rem!important; - } -} - -@media (min-width:1200px) { - .pb-xl-2 { - padding-bottom: .5rem!important; - } -} - -@media (min-width:1200px) { - .pb-xl-3 { - padding-bottom: 1rem!important; - } -} - -@media (min-width:1200px) { - .pb-xl-4 { - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .pb-xl-5 { - padding-bottom: 3rem!important; - } -} - -@media (min-width:1200px) { - .ps-xl-0 { - padding-left: 0!important; - } -} - -@media (min-width:1200px) { - .ps-xl-1 { - padding-left: .25rem!important; - } -} - -@media (min-width:1200px) { - .ps-xl-2 { - padding-left: .5rem!important; - } -} - -@media (min-width:1200px) { - .ps-xl-3 { - padding-left: 1rem!important; - } -} - -@media (min-width:1200px) { - .ps-xl-4 { - padding-left: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .ps-xl-5 { - padding-left: 3rem!important; - } -} - -@media (min-width:1200px) { - .gap-xl-0 { - gap: 0!important; - } -} - -@media (min-width:1200px) { - .gap-xl-1 { - gap: .25rem!important; - } -} - -@media (min-width:1200px) { - .gap-xl-2 { - gap: .5rem!important; - } -} - -@media (min-width:1200px) { - .gap-xl-3 { - gap: 1rem!important; - } -} - -@media (min-width:1200px) { - .gap-xl-4 { - gap: 1.5rem!important; - } -} - -@media (min-width:1200px) { - .gap-xl-5 { - gap: 3rem!important; - } -} - -@media (min-width:1200px) { - .text-xl-start { - text-align: left!important; - } -} - -@media (min-width:1200px) { - .text-xl-end { - text-align: right!important; - } -} - -@media (min-width:1200px) { - .text-xl-center { - text-align: center!important; - } -} - -@media (min-width:1400px) { - .float-xxl-start { - float: left!important; - } -} - -@media (min-width:1400px) { - .float-xxl-end { - float: right!important; - } -} - -@media (min-width:1400px) { - .float-xxl-none { - float: none!important; - } -} - -@media (min-width:1400px) { - .d-xxl-inline { - display: inline!important; - } -} - -@media (min-width:1400px) { - .d-xxl-inline-block { - display: inline-block!important; - } -} - -@media (min-width:1400px) { - .d-xxl-block { - display: block!important; - } -} - -@media (min-width:1400px) { - .d-xxl-grid { - display: grid!important; - } -} - -@media (min-width:1400px) { - .d-xxl-table { - display: table!important; - } -} - -@media (min-width:1400px) { - .d-xxl-table-row { - display: table-row!important; - } -} - -@media (min-width:1400px) { - .d-xxl-table-cell { - display: table-cell!important; - } -} - -@media (min-width:1400px) { - .d-xxl-flex { - display: flex!important; - } -} - -@media (min-width:1400px) { - .d-xxl-inline-flex { - display: inline-flex!important; - } -} - -@media (min-width:1400px) { - .d-xxl-none { - display: none!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-fill { - flex: 1 1 auto!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-row { - flex-direction: row!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-column { - flex-direction: column!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-row-reverse { - flex-direction: row-reverse!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-column-reverse { - flex-direction: column-reverse!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-grow-0 { - flex-grow: 0!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-grow-1 { - flex-grow: 1!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-shrink-0 { - flex-shrink: 0!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-shrink-1 { - flex-shrink: 1!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-wrap { - flex-wrap: wrap!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-nowrap { - flex-wrap: nowrap!important; - } -} - -@media (min-width:1400px) { - .flex-xxl-wrap-reverse { - flex-wrap: wrap-reverse!important; - } -} - -@media (min-width:1400px) { - .justify-content-xxl-start { - justify-content: flex-start!important; - } -} - -@media (min-width:1400px) { - .justify-content-xxl-end { - justify-content: flex-end!important; - } -} - -@media (min-width:1400px) { - .justify-content-xxl-center { - justify-content: center!important; - } -} - -@media (min-width:1400px) { - .justify-content-xxl-between { - justify-content: space-between!important; - } -} - -@media (min-width:1400px) { - .justify-content-xxl-around { - justify-content: space-around!important; - } -} - -@media (min-width:1400px) { - .justify-content-xxl-evenly { - justify-content: space-evenly!important; - } -} - -@media (min-width:1400px) { - .align-items-xxl-start { - align-items: flex-start!important; - } -} - -@media (min-width:1400px) { - .align-items-xxl-end { - align-items: flex-end!important; - } -} - -@media (min-width:1400px) { - .align-items-xxl-center { - align-items: center!important; - } -} - -@media (min-width:1400px) { - .align-items-xxl-baseline { - align-items: baseline!important; - } -} - -@media (min-width:1400px) { - .align-items-xxl-stretch { - align-items: stretch!important; - } -} - -@media (min-width:1400px) { - .align-content-xxl-start { - align-content: flex-start!important; - } -} - -@media (min-width:1400px) { - .align-content-xxl-end { - align-content: flex-end!important; - } -} - -@media (min-width:1400px) { - .align-content-xxl-center { - align-content: center!important; - } -} - -@media (min-width:1400px) { - .align-content-xxl-between { - align-content: space-between!important; - } -} - -@media (min-width:1400px) { - .align-content-xxl-around { - align-content: space-around!important; - } -} - -@media (min-width:1400px) { - .align-content-xxl-stretch { - align-content: stretch!important; - } -} - -@media (min-width:1400px) { - .align-self-xxl-auto { - align-self: auto!important; - } -} - -@media (min-width:1400px) { - .align-self-xxl-start { - align-self: flex-start!important; - } -} - -@media (min-width:1400px) { - .align-self-xxl-end { - align-self: flex-end!important; - } -} - -@media (min-width:1400px) { - .align-self-xxl-center { - align-self: center!important; - } -} - -@media (min-width:1400px) { - .align-self-xxl-baseline { - align-self: baseline!important; - } -} - -@media (min-width:1400px) { - .align-self-xxl-stretch { - align-self: stretch!important; - } -} - -@media (min-width:1400px) { - .order-xxl-first { - order: -1!important; - } -} - -@media (min-width:1400px) { - .order-xxl-0 { - order: 0!important; - } -} - -@media (min-width:1400px) { - .order-xxl-1 { - order: 1!important; - } -} - -@media (min-width:1400px) { - .order-xxl-2 { - order: 2!important; - } -} - -@media (min-width:1400px) { - .order-xxl-3 { - order: 3!important; - } -} - -@media (min-width:1400px) { - .order-xxl-4 { - order: 4!important; - } -} - -@media (min-width:1400px) { - .order-xxl-5 { - order: 5!important; - } -} - -@media (min-width:1400px) { - .order-xxl-last { - order: 6!important; - } -} - -@media (min-width:1400px) { - .m-xxl-0 { - margin: 0!important; - } -} - -@media (min-width:1400px) { - .m-xxl-1 { - margin: .25rem!important; - } -} - -@media (min-width:1400px) { - .m-xxl-2 { - margin: .5rem!important; - } -} - -@media (min-width:1400px) { - .m-xxl-3 { - margin: 1rem!important; - } -} - -@media (min-width:1400px) { - .m-xxl-4 { - margin: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .m-xxl-5 { - margin: 3rem!important; - } -} - -@media (min-width:1400px) { - .m-xxl-auto { - margin: auto!important; - } -} - -@media (min-width:1400px) { - .mx-xxl-0 { - margin-right: 0!important; - margin-left: 0!important; - } -} - -@media (min-width:1400px) { - .mx-xxl-1 { - margin-right: .25rem!important; - margin-left: .25rem!important; - } -} - -@media (min-width:1400px) { - .mx-xxl-2 { - margin-right: .5rem!important; - margin-left: .5rem!important; - } -} - -@media (min-width:1400px) { - .mx-xxl-3 { - margin-right: 1rem!important; - margin-left: 1rem!important; - } -} - -@media (min-width:1400px) { - .mx-xxl-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .mx-xxl-5 { - margin-right: 3rem!important; - margin-left: 3rem!important; - } -} - -@media (min-width:1400px) { - .mx-xxl-auto { - margin-right: auto!important; - margin-left: auto!important; - } -} - -@media (min-width:1400px) { - .my-xxl-0 { - margin-top: 0!important; - margin-bottom: 0!important; - } -} - -@media (min-width:1400px) { - .my-xxl-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important; - } -} - -@media (min-width:1400px) { - .my-xxl-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important; - } -} - -@media (min-width:1400px) { - .my-xxl-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important; - } -} - -@media (min-width:1400px) { - .my-xxl-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .my-xxl-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important; - } -} - -@media (min-width:1400px) { - .my-xxl-auto { - margin-top: auto!important; - margin-bottom: auto!important; - } -} - -@media (min-width:1400px) { - .mt-xxl-0 { - margin-top: 0!important; - } -} - -@media (min-width:1400px) { - .mt-xxl-1 { - margin-top: .25rem!important; - } -} - -@media (min-width:1400px) { - .mt-xxl-2 { - margin-top: .5rem!important; - } -} - -@media (min-width:1400px) { - .mt-xxl-3 { - margin-top: 1rem!important; - } -} - -@media (min-width:1400px) { - .mt-xxl-4 { - margin-top: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .mt-xxl-5 { - margin-top: 3rem!important; - } -} - -@media (min-width:1400px) { - .mt-xxl-auto { - margin-top: auto!important; - } -} - -@media (min-width:1400px) { - .me-xxl-0 { - margin-right: 0!important; - } -} - -@media (min-width:1400px) { - .me-xxl-1 { - margin-right: .25rem!important; - } -} - -@media (min-width:1400px) { - .me-xxl-2 { - margin-right: .5rem!important; - } -} - -@media (min-width:1400px) { - .me-xxl-3 { - margin-right: 1rem!important; - } -} - -@media (min-width:1400px) { - .me-xxl-4 { - margin-right: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .me-xxl-5 { - margin-right: 3rem!important; - } -} - -@media (min-width:1400px) { - .me-xxl-auto { - margin-right: auto!important; - } -} - -@media (min-width:1400px) { - .mb-xxl-0 { - margin-bottom: 0!important; - } -} - -@media (min-width:1400px) { - .mb-xxl-1 { - margin-bottom: .25rem!important; - } -} - -@media (min-width:1400px) { - .mb-xxl-2 { - margin-bottom: .5rem!important; - } -} - -@media (min-width:1400px) { - .mb-xxl-3 { - margin-bottom: 1rem!important; - } -} - -@media (min-width:1400px) { - .mb-xxl-4 { - margin-bottom: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .mb-xxl-5 { - margin-bottom: 3rem!important; - } -} - -@media (min-width:1400px) { - .mb-xxl-auto { - margin-bottom: auto!important; - } -} - -@media (min-width:1400px) { - .ms-xxl-0 { - margin-left: 0!important; - } -} - -@media (min-width:1400px) { - .ms-xxl-1 { - margin-left: .25rem!important; - } -} - -@media (min-width:1400px) { - .ms-xxl-2 { - margin-left: .5rem!important; - } -} - -@media (min-width:1400px) { - .ms-xxl-3 { - margin-left: 1rem!important; - } -} - -@media (min-width:1400px) { - .ms-xxl-4 { - margin-left: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .ms-xxl-5 { - margin-left: 3rem!important; - } -} - -@media (min-width:1400px) { - .ms-xxl-auto { - margin-left: auto!important; - } -} - -@media (min-width:1400px) { - .p-xxl-0 { - padding: 0!important; - } -} - -@media (min-width:1400px) { - .p-xxl-1 { - padding: .25rem!important; - } -} - -@media (min-width:1400px) { - .p-xxl-2 { - padding: .5rem!important; - } -} - -@media (min-width:1400px) { - .p-xxl-3 { - padding: 1rem!important; - } -} - -@media (min-width:1400px) { - .p-xxl-4 { - padding: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .p-xxl-5 { - padding: 3rem!important; - } -} - -@media (min-width:1400px) { - .px-xxl-0 { - padding-right: 0!important; - padding-left: 0!important; - } -} - -@media (min-width:1400px) { - .px-xxl-1 { - padding-right: .25rem!important; - padding-left: .25rem!important; - } -} - -@media (min-width:1400px) { - .px-xxl-2 { - padding-right: .5rem!important; - padding-left: .5rem!important; - } -} - -@media (min-width:1400px) { - .px-xxl-3 { - padding-right: 1rem!important; - padding-left: 1rem!important; - } -} - -@media (min-width:1400px) { - .px-xxl-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .px-xxl-5 { - padding-right: 3rem!important; - padding-left: 3rem!important; - } -} - -@media (min-width:1400px) { - .py-xxl-0 { - padding-top: 0!important; - padding-bottom: 0!important; - } -} - -@media (min-width:1400px) { - .py-xxl-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important; - } -} - -@media (min-width:1400px) { - .py-xxl-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important; - } -} - -@media (min-width:1400px) { - .py-xxl-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important; - } -} - -@media (min-width:1400px) { - .py-xxl-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .py-xxl-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important; - } -} - -@media (min-width:1400px) { - .pt-xxl-0 { - padding-top: 0!important; - } -} - -@media (min-width:1400px) { - .pt-xxl-1 { - padding-top: .25rem!important; - } -} - -@media (min-width:1400px) { - .pt-xxl-2 { - padding-top: .5rem!important; - } -} - -@media (min-width:1400px) { - .pt-xxl-3 { - padding-top: 1rem!important; - } -} - -@media (min-width:1400px) { - .pt-xxl-4 { - padding-top: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .pt-xxl-5 { - padding-top: 3rem!important; - } -} - -@media (min-width:1400px) { - .pe-xxl-0 { - padding-right: 0!important; - } -} - -@media (min-width:1400px) { - .pe-xxl-1 { - padding-right: .25rem!important; - } -} - -@media (min-width:1400px) { - .pe-xxl-2 { - padding-right: .5rem!important; - } -} - -@media (min-width:1400px) { - .pe-xxl-3 { - padding-right: 1rem!important; - } -} - -@media (min-width:1400px) { - .pe-xxl-4 { - padding-right: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .pe-xxl-5 { - padding-right: 3rem!important; - } -} - -@media (min-width:1400px) { - .pb-xxl-0 { - padding-bottom: 0!important; - } -} - -@media (min-width:1400px) { - .pb-xxl-1 { - padding-bottom: .25rem!important; - } -} - -@media (min-width:1400px) { - .pb-xxl-2 { - padding-bottom: .5rem!important; - } -} - -@media (min-width:1400px) { - .pb-xxl-3 { - padding-bottom: 1rem!important; - } -} - -@media (min-width:1400px) { - .pb-xxl-4 { - padding-bottom: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .pb-xxl-5 { - padding-bottom: 3rem!important; - } -} - -@media (min-width:1400px) { - .ps-xxl-0 { - padding-left: 0!important; - } -} - -@media (min-width:1400px) { - .ps-xxl-1 { - padding-left: .25rem!important; - } -} - -@media (min-width:1400px) { - .ps-xxl-2 { - padding-left: .5rem!important; - } -} - -@media (min-width:1400px) { - .ps-xxl-3 { - padding-left: 1rem!important; - } -} - -@media (min-width:1400px) { - .ps-xxl-4 { - padding-left: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .ps-xxl-5 { - padding-left: 3rem!important; - } -} - -@media (min-width:1400px) { - .gap-xxl-0 { - gap: 0!important; - } -} - -@media (min-width:1400px) { - .gap-xxl-1 { - gap: .25rem!important; - } -} - -@media (min-width:1400px) { - .gap-xxl-2 { - gap: .5rem!important; - } -} - -@media (min-width:1400px) { - .gap-xxl-3 { - gap: 1rem!important; - } -} - -@media (min-width:1400px) { - .gap-xxl-4 { - gap: 1.5rem!important; - } -} - -@media (min-width:1400px) { - .gap-xxl-5 { - gap: 3rem!important; - } -} - -@media (min-width:1400px) { - .text-xxl-start { - text-align: left!important; - } -} - -@media (min-width:1400px) { - .text-xxl-end { - text-align: right!important; - } -} - -@media (min-width:1400px) { - .text-xxl-center { - text-align: center!important; - } -} - -@media (min-width:1200px) { - .fs-1 { - font-size: 2.5rem!important; - } -} - -@media (min-width:1200px) { - .fs-2 { - font-size: 2rem!important; - } -} - -@media (min-width:1200px) { - .fs-3 { - font-size: 1.75rem!important; - } -} - -@media (min-width:1200px) { - .fs-4 { - font-size: 1.5rem!important; - } -} - -.green-button { - background: #00ff19; - box-shadow: 5px 5px #288f32; - transition: box-shadow 0.1s ease-out; - margin-right: 20px; - text-align: center; -} - -.green-button:hover { - box-shadow: 1px 1px #288f32; -} - diff --git a/store/static/css/styles.css b/store/static/css/styles.css index b948912e61cc199ff909dcd362da7152e8b539b8..11c86cdd4047d529b1eb0bb7984958aaab63ce35 100644 --- a/store/static/css/styles.css +++ b/store/static/css/styles.css @@ -1,13 +1,21 @@ +* { + font-family: RamaGothicEW01, serif; !important; +} + body { - overscroll-behavior: none; - margin: 0; - padding: 0; + overscroll-behavior: none; + margin: 0; + padding: 0; } .main-yellow { background: #ffd200; } +.main-blue { + background: #00c0ff; +} + .bs-icon { --bs-icon-size: .75rem; display: flex; @@ -157,7 +165,6 @@ scroll p { .carousel-item { data-interval: 2000; - } .centered-text { @@ -170,10 +177,10 @@ scroll p { font-family: sans-serif; position: absolute; z-index: 100; - top: 53px; + top: 55px; right: 170px; text-transform: uppercase; - background-color: #BBB; + background-color: #424242; line-height: 1; font-size: 12px; border-radius: 3px; @@ -237,7 +244,35 @@ scroll p { @media (min-width: 801px) { .product-page-picture { - height: 400px; - width: 100%; + height: 400px; + width: 100%; + } } + +.progress { + height: 3px !important; +} +.form-group { + margin-bottom: 10px; +} +.show-pass { + position: absolute; + top:5%; + right: 8%; +} +.progress-bar-danger { + background-color: #e90f10; +} +.progress-bar-warning { + background-color: #ffad00; +} +.progress-bar-success { + background-color: #02b502; +} + +.fa-circle{ + font-size: 10px; } +.fa-check{ + color: #02b502; +} \ No newline at end of file diff --git a/store/static/js/basket.js b/store/static/js/basket.js new file mode 100644 index 0000000000000000000000000000000000000000..17888023d1ee7b923a7a6f658433e0faf87582a2 --- /dev/null +++ b/store/static/js/basket.js @@ -0,0 +1,30 @@ + +// Go to Checkout + +function checkout(authenticated, totalPrice) { + + totalPrice = JSON.stringify({ totalPrice: totalPrice }); + sessionStorage.setItem("totalPrice", totalPrice); + + if (authenticated === 'true') { + fetch("/checkout-auth", { + method: "POST", + }).then(function (_res) { + return _res.json(); + }).then(function (json) { + if (json.check === 'passed') { + location.href = '/checkout'; + } else { + flashErrorMessage("basket", "Your basket is empty!"); + } + }); + } else { + let basket = sessionStorage.getItem("basket"); + basket = JSON.parse(basket); + if (!(basket.products.length > 0)) { + flashErrorMessage("basket", "Your basket is empty!"); + return; + } + location.href = '/checkout'; + } +} \ No newline at end of file diff --git a/store/static/js/bootstrap/js/bootstrap.min.js b/store/static/js/bootstrap/js/bootstrap.min.js deleted file mode 100644 index ac5dfd3e7a4c8756de7842993da4152f652540ab..0000000000000000000000000000000000000000 --- a/store/static/js/bootstrap/js/bootstrap.min.js +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Bootstrap v5.2.3 (https://getbootstrap.com/) - * Copyright 2011-2022 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="transitionend",e=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},i=t=>{const i=e(t);return i&&document.querySelector(i)?i:null},n=t=>{const i=e(t);return i?document.querySelector(i):null},s=e=>{e.dispatchEvent(new Event(t))},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(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,g=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()},m=t=>{"function"==typeof t&&t()},_=(e,i,n=!0)=>{if(!n)return void m(e);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})(i)+5;let r=!1;const a=({target:n})=>{n===i&&(r=!0,i.removeEventListener(t,a),m(e))};i.addEventListener(t,a),setTimeout((()=>{r||s(i)}),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=N(t);return C.has(o)||(o=t),[n,s,o]}function D(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 j(s,{delegateTarget:r}),n.oneOff&&P.off(t,s.type,e,i),i.apply(r,[s])}}(t,i,r):function(t,e){return function i(n){return j(n,{delegateTarget:t}),i.oneOff&&P.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 S(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 I(t,e,i,n){const s=e[i]||{};for(const o of Object.keys(s))if(o.includes(n)){const n=s[o];S(t,e,i,n.callable,n.delegationSelector)}}function N(t){return t=t.replace(y,""),T[t]||t}const P={on(t,e,i,n){D(t,e,i,n,!1)},one(t,e,i,n){D(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))I(t,l,i,e.slice(1));for(const i of Object.keys(c)){const n=i.replace(w,"");if(!a||e.includes(n)){const e=c[i];S(t,l,r,e.callable,e.delegationSelector)}}}else{if(!Object.keys(c).length)return;S(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!==N(e)&&n&&(s=n.Event(e,i),n(t).trigger(s),o=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),a=s.isDefaultPrevented());let l=new Event(e,{bubbles:o,cancelable:!0});return l=j(l,i),a&&l.preventDefault(),r&&t.dispatchEvent(l),l.defaultPrevented&&s&&s.preventDefault(),l}};function j(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}const M=new Map,H={set(t,e,i){M.has(t)||M.set(t,new Map);const n=M.get(t);n.has(e)||0===n.size?n.set(e,i):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(n.keys())[0]}.`)},get:(t,e)=>M.has(t)&&M.get(t).get(e)||null,remove(t,e){if(!M.has(t))return;const i=M.get(t);i.delete(e),0===i.size&&M.delete(t)}};function $(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 W(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}const B={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${W(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${W(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]=$(t.dataset[n])}return e},getDataAttribute:(t,e)=>$(t.getAttribute(`data-bs-${W(e)}`))};class F{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)?B.getDataAttribute(e,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...o(e)?B.getDataAttributes(e):{},..."object"==typeof t?t:{}}}_typeCheckConfig(t,e=this.constructor.DefaultType){for(const n of Object.keys(e)){const s=e[n],r=t[n],a=o(r)?"element":null==(i=r)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(s).test(a))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${s}".`)}var i}}class z extends F{constructor(t,e){super(),(t=r(t))&&(this._element=t,this._config=this._getConfig(e),H.set(this._element,this.constructor.DATA_KEY,this))}dispose(){H.remove(this._element,this.constructor.DATA_KEY),P.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 H.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.2.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 q=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,s=t.NAME;P.on(document,i,`[data-bs-dismiss="${s}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),l(this))return;const o=n(this)||this.closest(`.${s}`);t.getOrCreateInstance(o)[e]()}))};class R extends z{static get NAME(){return"alert"}close(){if(P.trigger(this._element,"close.bs.alert").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(),P.trigger(this._element,"closed.bs.alert"),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=R.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)}}))}}q(R,"close"),g(R);const V='[data-bs-toggle="button"]';class K extends z{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=K.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}P.on(document,"click.bs.button.data-api",V,(t=>{t.preventDefault();const e=t.target.closest(V);K.getOrCreateInstance(e).toggle()})),g(K);const Q={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)))}},X={endCallback:null,leftCallback:null,rightCallback:null},Y={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class U extends F{constructor(t,e){super(),this._element=t,t&&U.isSupported()&&(this._config=this._getConfig(e),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return X}static get DefaultType(){return Y}static get NAME(){return"swipe"}dispose(){P.off(this._element,".bs.swipe")}_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(),m(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&&m(e>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(P.on(this._element,"pointerdown.bs.swipe",(t=>this._start(t))),P.on(this._element,"pointerup.bs.swipe",(t=>this._end(t))),this._element.classList.add("pointer-event")):(P.on(this._element,"touchstart.bs.swipe",(t=>this._start(t))),P.on(this._element,"touchmove.bs.swipe",(t=>this._move(t))),P.on(this._element,"touchend.bs.swipe",(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 G="next",J="prev",Z="left",tt="right",et="slid.bs.carousel",it="carousel",nt="active",st={ArrowLeft:tt,ArrowRight:Z},ot={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},rt={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class at extends z{constructor(t,e){super(t,e),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=Q.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===it&&this.cycle()}static get Default(){return ot}static get DefaultType(){return rt}static get NAME(){return"carousel"}next(){this._slide(G)}nextWhenVisible(){!document.hidden&&a(this._element)&&this.next()}prev(){this._slide(J)}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?P.one(this._element,et,(()=>this.cycle())):this.cycle())}to(t){const e=this._getItems();if(t>e.length-1||t<0)return;if(this._isSliding)return void P.one(this._element,et,(()=>this.to(t)));const i=this._getItemIndex(this._getActive());if(i===t)return;const n=t>i?G:J;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&&P.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(P.on(this._element,"mouseenter.bs.carousel",(()=>this.pause())),P.on(this._element,"mouseleave.bs.carousel",(()=>this._maybeEnableCycle()))),this._config.touch&&U.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const t of Q.find(".carousel-item img",this._element))P.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()));const t={leftCallback:()=>this._slide(this._directionToOrder(Z)),rightCallback:()=>this._slide(this._directionToOrder(tt)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new U(this._element,t)}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=st[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=Q.findOne(".active",this._indicatorsElement);e.classList.remove(nt),e.removeAttribute("aria-current");const i=Q.findOne(`[data-bs-slide-to="${t}"]`,this._indicatorsElement);i&&(i.classList.add(nt),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===G,s=e||b(this._getItems(),i,n,this._config.wrap);if(s===i)return;const o=this._getItemIndex(s),r=e=>P.trigger(this._element,e,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(i),to:o});if(r("slide.bs.carousel").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(nt),i.classList.remove(nt,c,l),this._isSliding=!1,r(et)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return Q.findOne(".active.carousel-item",this._element)}_getItems(){return Q.find(".carousel-item",this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(t){return p()?t===Z?J:G:t===Z?G:J}_orderToDirection(t){return p()?t===J?Z:tt:t===J?tt:Z}static jQueryInterface(t){return this.each((function(){const e=at.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)}))}}P.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",(function(t){const e=n(this);if(!e||!e.classList.contains(it))return;t.preventDefault();const i=at.getOrCreateInstance(e),s=this.getAttribute("data-bs-slide-to");return s?(i.to(s),void i._maybeEnableCycle()):"next"===B.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),P.on(window,"load.bs.carousel.data-api",(()=>{const t=Q.find('[data-bs-ride="carousel"]');for(const e of t)at.getOrCreateInstance(e)})),g(at);const lt="show",ct="collapse",ht="collapsing",dt='[data-bs-toggle="collapse"]',ut={parent:null,toggle:!0},ft={parent:"(null|element)",toggle:"boolean"};class pt extends z{constructor(t,e){super(t,e),this._isTransitioning=!1,this._triggerArray=[];const n=Q.find(dt);for(const t of n){const e=i(t),n=Q.find(e).filter((t=>t===this._element));null!==e&&n.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 ut}static get DefaultType(){return ft}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=>pt.getOrCreateInstance(t,{toggle:!1})))),t.length&&t[0]._isTransitioning)return;if(P.trigger(this._element,"show.bs.collapse").defaultPrevented)return;for(const e of t)e.hide();const e=this._getDimension();this._element.classList.remove(ct),this._element.classList.add(ht),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(ht),this._element.classList.add(ct,lt),this._element.style[e]="",P.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[e]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(P.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,d(this._element),this._element.classList.add(ht),this._element.classList.remove(ct,lt);for(const t of this._triggerArray){const e=n(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(ht),this._element.classList.add(ct),P.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(lt)}_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(dt);for(const e of t){const t=n(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))}}_getFirstLevelChildren(t){const e=Q.find(":scope .collapse .collapse",this._config.parent);return Q.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=pt.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}P.on(document,"click.bs.collapse.data-api",dt,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=i(this),n=Q.find(e);for(const t of n)pt.getOrCreateInstance(t,{toggle:!1}).toggle()})),g(pt);var gt="top",mt="bottom",_t="right",bt="left",vt="auto",yt=[gt,mt,_t,bt],wt="start",At="end",Et="clippingParents",Tt="viewport",Ct="popper",Ot="reference",xt=yt.reduce((function(t,e){return t.concat([e+"-"+wt,e+"-"+At])}),[]),kt=[].concat(yt,[vt]).reduce((function(t,e){return t.concat([e,e+"-"+wt,e+"-"+At])}),[]),Lt="beforeRead",Dt="read",St="afterRead",It="beforeMain",Nt="main",Pt="afterMain",jt="beforeWrite",Mt="write",Ht="afterWrite",$t=[Lt,Dt,St,It,Nt,Pt,jt,Mt,Ht];function Wt(t){return t?(t.nodeName||"").toLowerCase():null}function Bt(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function Ft(t){return t instanceof Bt(t).Element||t instanceof Element}function zt(t){return t instanceof Bt(t).HTMLElement||t instanceof HTMLElement}function qt(t){return"undefined"!=typeof ShadowRoot&&(t instanceof Bt(t).ShadowRoot||t instanceof ShadowRoot)}const Rt={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];zt(s)&&Wt(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}),{});zt(n)&&Wt(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function Vt(t){return t.split("-")[0]}var Kt=Math.max,Qt=Math.min,Xt=Math.round;function Yt(){var t=navigator.userAgentData;return null!=t&&t.brands?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function Ut(){return!/^((?!chrome|android).)*safari/i.test(Yt())}function Gt(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),s=1,o=1;e&&zt(t)&&(s=t.offsetWidth>0&&Xt(n.width)/t.offsetWidth||1,o=t.offsetHeight>0&&Xt(n.height)/t.offsetHeight||1);var r=(Ft(t)?Bt(t):window).visualViewport,a=!Ut()&&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 Jt(t){var e=Gt(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 Zt(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&qt(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function te(t){return Bt(t).getComputedStyle(t)}function ee(t){return["table","td","th"].indexOf(Wt(t))>=0}function ie(t){return((Ft(t)?t.ownerDocument:t.document)||window.document).documentElement}function ne(t){return"html"===Wt(t)?t:t.assignedSlot||t.parentNode||(qt(t)?t.host:null)||ie(t)}function se(t){return zt(t)&&"fixed"!==te(t).position?t.offsetParent:null}function oe(t){for(var e=Bt(t),i=se(t);i&&ee(i)&&"static"===te(i).position;)i=se(i);return i&&("html"===Wt(i)||"body"===Wt(i)&&"static"===te(i).position)?e:i||function(t){var e=/firefox/i.test(Yt());if(/Trident/i.test(Yt())&&zt(t)&&"fixed"===te(t).position)return null;var i=ne(t);for(qt(i)&&(i=i.host);zt(i)&&["html","body"].indexOf(Wt(i))<0;){var n=te(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 re(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function ae(t,e,i){return Kt(t,Qt(e,i))}function le(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function ce(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const he={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=Vt(i.placement),l=re(a),c=[bt,_t].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return le("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:ce(t,yt))}(s.padding,i),d=Jt(o),u="y"===l?gt:bt,f="y"===l?mt:_t,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],g=r[l]-i.rects.reference[l],m=oe(o),_=m?"y"===l?m.clientHeight||0:m.clientWidth||0:0,b=p/2-g/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,A=ae(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)))&&Zt(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function de(t){return t.split("-")[1]}var ue={top:"auto",right:"auto",bottom:"auto",left:"auto"};function fe(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,g=void 0===p?0:p,m="function"==typeof h?h({x:f,y:g}):{x:f,y:g};f=m.x,g=m.y;var _=r.hasOwnProperty("x"),b=r.hasOwnProperty("y"),v=bt,y=gt,w=window;if(c){var A=oe(i),E="clientHeight",T="clientWidth";A===Bt(i)&&"static"!==te(A=ie(i)).position&&"absolute"===a&&(E="scrollHeight",T="scrollWidth"),(s===gt||(s===bt||s===_t)&&o===At)&&(y=mt,g-=(d&&A===w&&w.visualViewport?w.visualViewport.height:A[E])-n.height,g*=l?1:-1),s!==bt&&(s!==gt&&s!==mt||o!==At)||(v=_t,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&&ue),x=!0===h?function(t){var e=t.x,i=t.y,n=window.devicePixelRatio||1;return{x:Xt(e*n)/n||0,y:Xt(i*n)/n||0}}({x:f,y:g}):{x:f,y:g};return f=x.x,g=x.y,l?Object.assign({},O,((C={})[y]=b?"0":"",C[v]=_?"0":"",C.transform=(w.devicePixelRatio||1)<=1?"translate("+f+"px, "+g+"px)":"translate3d("+f+"px, "+g+"px, 0)",C)):Object.assign({},O,((e={})[y]=b?g+"px":"",e[v]=_?f+"px":"",e.transform="",e))}const pe={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:Vt(e.placement),variation:de(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,fe(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,fe(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 ge={passive:!0};const me={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=Bt(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,ge)})),a&&l.addEventListener("resize",i.update,ge),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,ge)})),a&&l.removeEventListener("resize",i.update,ge)}},data:{}};var _e={left:"right",right:"left",bottom:"top",top:"bottom"};function be(t){return t.replace(/left|right|bottom|top/g,(function(t){return _e[t]}))}var ve={start:"end",end:"start"};function ye(t){return t.replace(/start|end/g,(function(t){return ve[t]}))}function we(t){var e=Bt(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function Ae(t){return Gt(ie(t)).left+we(t).scrollLeft}function Ee(t){var e=te(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Te(t){return["html","body","#document"].indexOf(Wt(t))>=0?t.ownerDocument.body:zt(t)&&Ee(t)?t:Te(ne(t))}function Ce(t,e){var i;void 0===e&&(e=[]);var n=Te(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=Bt(n),r=s?[o].concat(o.visualViewport||[],Ee(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Ce(ne(r)))}function Oe(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function xe(t,e,i){return e===Tt?Oe(function(t,e){var i=Bt(t),n=ie(t),s=i.visualViewport,o=n.clientWidth,r=n.clientHeight,a=0,l=0;if(s){o=s.width,r=s.height;var c=Ut();(c||!c&&"fixed"===e)&&(a=s.offsetLeft,l=s.offsetTop)}return{width:o,height:r,x:a+Ae(t),y:l}}(t,i)):Ft(e)?function(t,e){var i=Gt(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):Oe(function(t){var e,i=ie(t),n=we(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=Kt(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=Kt(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+Ae(t),l=-n.scrollTop;return"rtl"===te(s||i).direction&&(a+=Kt(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(ie(t)))}function ke(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?Vt(s):null,r=s?de(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case gt:e={x:a,y:i.y-n.height};break;case mt:e={x:a,y:i.y+i.height};break;case _t:e={x:i.x+i.width,y:l};break;case bt:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?re(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case wt:e[c]=e[c]-(i[h]/2-n[h]/2);break;case At:e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function Le(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?Et:a,c=i.rootBoundary,h=void 0===c?Tt:c,d=i.elementContext,u=void 0===d?Ct:d,f=i.altBoundary,p=void 0!==f&&f,g=i.padding,m=void 0===g?0:g,_=le("number"!=typeof m?m:ce(m,yt)),b=u===Ct?Ot:Ct,v=t.rects.popper,y=t.elements[p?b:u],w=function(t,e,i,n){var s="clippingParents"===e?function(t){var e=Ce(ne(t)),i=["absolute","fixed"].indexOf(te(t).position)>=0&&zt(t)?oe(t):t;return Ft(i)?e.filter((function(t){return Ft(t)&&Zt(t,i)&&"body"!==Wt(t)})):[]}(t):[].concat(e),o=[].concat(s,[i]),r=o[0],a=o.reduce((function(e,i){var s=xe(t,i,n);return e.top=Kt(s.top,e.top),e.right=Qt(s.right,e.right),e.bottom=Qt(s.bottom,e.bottom),e.left=Kt(s.left,e.left),e}),xe(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}(Ft(y)?y:y.contextElement||ie(t.elements.popper),l,h,r),A=Gt(t.elements.reference),E=ke({reference:A,element:v,strategy:"absolute",placement:s}),T=Oe(Object.assign({},v,E)),C=u===Ct?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===Ct&&x){var k=x[s];Object.keys(O).forEach((function(t){var e=[_t,mt].indexOf(t)>=0?1:-1,i=[gt,mt].indexOf(t)>=0?"y":"x";O[t]+=k[i]*e}))}return O}function De(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?kt:l,h=de(n),d=h?a?xt:xt.filter((function(t){return de(t)===h})):yt,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]=Le(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[Vt(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}const Se={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,g=i.allowedAutoPlacements,m=e.options.placement,_=Vt(m),b=l||(_!==m&&p?function(t){if(Vt(t)===vt)return[];var e=be(t);return[ye(t),e,ye(e)]}(m):[be(m)]),v=[m].concat(b).reduce((function(t,i){return t.concat(Vt(i)===vt?De(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:g}):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=Vt(O),k=de(O)===wt,L=[gt,mt].indexOf(x)>=0,D=L?"width":"height",S=Le(e,{placement:O,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),I=L?k?_t:bt:k?mt:gt;y[D]>w[D]&&(I=be(I));var N=be(I),P=[];if(o&&P.push(S[x]<=0),a&&P.push(S[I]<=0,S[N]<=0),P.every((function(t){return t}))){T=O,E=!1;break}A.set(O,P)}if(E)for(var j=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"},M=p?3:1;M>0&&"break"!==j(M);M--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function Ie(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 Ne(t){return[gt,_t,mt,bt].some((function(e){return t[e]>=0}))}const Pe={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=Le(e,{elementContext:"reference"}),a=Le(e,{altBoundary:!0}),l=Ie(r,n),c=Ie(a,s,o),h=Ne(l),d=Ne(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})}},je={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=kt.reduce((function(t,i){return t[i]=function(t,e,i){var n=Vt(t),s=[bt,gt].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,[bt,_t].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}},Me={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=ke({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},He={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,g=void 0===p?0:p,m=Le(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=Vt(e.placement),b=de(e.placement),v=!b,y=re(_),w="x"===y?"y":"x",A=e.modifiersData.popperOffsets,E=e.rects.reference,T=e.rects.popper,C="function"==typeof g?g(Object.assign({},e.rects,{placement:e.placement})):g,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,D="y"===y?gt:bt,S="y"===y?mt:_t,I="y"===y?"height":"width",N=A[y],P=N+m[D],j=N-m[S],M=f?-T[I]/2:0,H=b===wt?E[I]:T[I],$=b===wt?-T[I]:-E[I],W=e.elements.arrow,B=f&&W?Jt(W):{width:0,height:0},F=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},z=F[D],q=F[S],R=ae(0,E[I],B[I]),V=v?E[I]/2-M-R-z-O.mainAxis:H-R-z-O.mainAxis,K=v?-E[I]/2+M+R+q+O.mainAxis:$+R+q+O.mainAxis,Q=e.elements.arrow&&oe(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=N+K-Y,G=ae(f?Qt(P,N+V-Y-X):P,N,f?Kt(j,U):j);A[y]=G,k[y]=G-N}if(a){var J,Z="x"===y?gt:bt,tt="x"===y?mt:_t,et=A[w],it="y"===w?"height":"width",nt=et+m[Z],st=et-m[tt],ot=-1!==[gt,bt].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=ae(t,e,i);return n>i?i:n}(at,et,lt):ae(f?at:nt,et,f?lt:st);A[w]=ct,k[w]=ct-et}e.modifiersData[n]=k}},requiresIfExists:["offset"]};function $e(t,e,i){void 0===i&&(i=!1);var n,s,o=zt(e),r=zt(e)&&function(t){var e=t.getBoundingClientRect(),i=Xt(e.width)/t.offsetWidth||1,n=Xt(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=ie(e),l=Gt(t,r,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==Wt(e)||Ee(a))&&(c=(n=e)!==Bt(n)&&zt(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:we(n)),zt(e)?((h=Gt(e,!0)).x+=e.clientLeft,h.y+=e.clientTop):a&&(h.x=Ae(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function We(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 Be={placement:"bottom",modifiers:[],strategy:"absolute"};function Fe(){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 ze(t){void 0===t&&(t={});var e=t,i=e.defaultModifiers,n=void 0===i?[]:i,s=e.defaultOptions,o=void 0===s?Be:s;return function(t,e,i){void 0===i&&(i=o);var s,r,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},Be,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:Ft(t)?Ce(t):t.contextElement?Ce(t.contextElement):[],popper:Ce(e)};var r,c,u=function(t){var e=We(t);return $t.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(Fe(e,i)){a.rects={reference:$e(e,oe(i),"fixed"===a.options.strategy),popper:Jt(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(!Fe(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 qe=ze(),Re=ze({defaultModifiers:[me,Me,pe,Rt]}),Ve=ze({defaultModifiers:[me,Me,pe,Rt,je,Se,He,he,Pe]});const Ke=Object.freeze(Object.defineProperty({__proto__:null,popperGenerator:ze,detectOverflow:Le,createPopperBase:qe,createPopper:Ve,createPopperLite:Re,top:gt,bottom:mt,right:_t,left:bt,auto:vt,basePlacements:yt,start:wt,end:At,clippingParents:Et,viewport:Tt,popper:Ct,reference:Ot,variationPlacements:xt,placements:kt,beforeRead:Lt,read:Dt,afterRead:St,beforeMain:It,main:Nt,afterMain:Pt,beforeWrite:jt,write:Mt,afterWrite:Ht,modifierPhases:$t,applyStyles:Rt,arrow:he,computeStyles:pe,eventListeners:me,flip:Se,hide:Pe,offset:je,popperOffsets:Me,preventOverflow:He},Symbol.toStringTag,{value:"Module"})),Qe="dropdown",Xe="ArrowUp",Ye="ArrowDown",Ue="click.bs.dropdown.data-api",Ge="keydown.bs.dropdown.data-api",Je="show",Ze='[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)',ti=`${Ze}.show`,ei=".dropdown-menu",ii=p()?"top-end":"top-start",ni=p()?"top-start":"top-end",si=p()?"bottom-end":"bottom-start",oi=p()?"bottom-start":"bottom-end",ri=p()?"left-start":"right-start",ai=p()?"right-start":"left-start",li={autoClose:!0,boundary:"clippingParents",display:"dynamic",offset:[0,2],popperConfig:null,reference:"toggle"},ci={autoClose:"(boolean|string)",boundary:"(string|element)",display:"string",offset:"(array|string|function)",popperConfig:"(null|object|function)",reference:"(string|element|object)"};class hi extends z{constructor(t,e){super(t,e),this._popper=null,this._parent=this._element.parentNode,this._menu=Q.next(this._element,ei)[0]||Q.prev(this._element,ei)[0]||Q.findOne(ei,this._parent),this._inNavbar=this._detectNavbar()}static get Default(){return li}static get DefaultType(){return ci}static get NAME(){return Qe}toggle(){return this._isShown()?this.hide():this.show()}show(){if(l(this._element)||this._isShown())return;const t={relatedTarget:this._element};if(!P.trigger(this._element,"show.bs.dropdown",t).defaultPrevented){if(this._createPopper(),"ontouchstart"in document.documentElement&&!this._parent.closest(".navbar-nav"))for(const t of[].concat(...document.body.children))P.on(t,"mouseover",h);this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(Je),this._element.classList.add(Je),P.trigger(this._element,"shown.bs.dropdown",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(!P.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented){if("ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))P.off(t,"mouseover",h);this._popper&&this._popper.destroy(),this._menu.classList.remove(Je),this._element.classList.remove(Je),this._element.setAttribute("aria-expanded","false"),B.removeDataAttribute(this._menu,"popper"),P.trigger(this._element,"hidden.bs.dropdown",t)}}_getConfig(t){if("object"==typeof(t=super._getConfig(t)).reference&&!o(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${Qe.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(){if(void 0===Ke)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=Ve(t,this._menu,e)}_isShown(){return this._menu.classList.contains(Je)}_getPlacement(){const t=this._parent;if(t.classList.contains("dropend"))return ri;if(t.classList.contains("dropstart"))return ai;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?ni:ii:e?oi:si}_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)&&(B.setDataAttribute(this._menu,"popper","static"),t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem({key:t,target:e}){const i=Q.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((t=>a(t)));i.length&&b(i,e,t===Ye,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=hi.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=Q.find(ti);for(const i of e){const e=hi.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=[Xe,Ye].includes(t.key);if(!n&&!i)return;if(e&&!i)return;t.preventDefault();const s=this.matches(Ze)?this:Q.prev(this,Ze)[0]||Q.next(this,Ze)[0]||Q.findOne(Ze,t.delegateTarget.parentNode),o=hi.getOrCreateInstance(s);if(n)return t.stopPropagation(),o.show(),void o._selectMenuItem(t);o._isShown()&&(t.stopPropagation(),o.hide(),s.focus())}}P.on(document,Ge,Ze,hi.dataApiKeydownHandler),P.on(document,Ge,ei,hi.dataApiKeydownHandler),P.on(document,Ue,hi.clearMenus),P.on(document,"keyup.bs.dropdown.data-api",hi.clearMenus),P.on(document,Ue,Ze,(function(t){t.preventDefault(),hi.getOrCreateInstance(this).toggle()})),g(hi);const di=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",ui=".sticky-top",fi="padding-right",pi="margin-right";class gi{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,fi,(e=>e+t)),this._setElementAttributes(di,fi,(e=>e+t)),this._setElementAttributes(ui,pi,(e=>e-t))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,fi),this._resetElementAttributes(di,fi),this._resetElementAttributes(ui,pi)}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&&B.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=B.getDataAttribute(t,e);null!==i?(B.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 Q.find(t,this._element))e(i)}}const mi="show",_i="mousedown.bs.backdrop",bi={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},vi={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class yi extends F{constructor(t){super(),this._config=this._getConfig(t),this._isAppended=!1,this._element=null}static get Default(){return bi}static get DefaultType(){return vi}static get NAME(){return"backdrop"}show(t){if(!this._config.isVisible)return void m(t);this._append();const e=this._getElement();this._config.isAnimated&&d(e),e.classList.add(mi),this._emulateAnimation((()=>{m(t)}))}hide(t){this._config.isVisible?(this._getElement().classList.remove(mi),this._emulateAnimation((()=>{this.dispose(),m(t)}))):m(t)}dispose(){this._isAppended&&(P.off(this._element,_i),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),P.on(t,_i,(()=>{m(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(t){_(t,this._getElement(),this._config.isAnimated)}}const wi=".bs.focustrap",Ai="backward",Ei={autofocus:!0,trapElement:null},Ti={autofocus:"boolean",trapElement:"element"};class Ci extends F{constructor(t){super(),this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return Ei}static get DefaultType(){return Ti}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),P.off(document,wi),P.on(document,"focusin.bs.focustrap",(t=>this._handleFocusin(t))),P.on(document,"keydown.tab.bs.focustrap",(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,P.off(document,wi))}_handleFocusin(t){const{trapElement:e}=this._config;if(t.target===document||t.target===e||e.contains(t.target))return;const i=Q.focusableChildren(e);0===i.length?e.focus():this._lastTabNavDirection===Ai?i[i.length-1].focus():i[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?Ai:"forward")}}const Oi="hidden.bs.modal",xi="show.bs.modal",ki="modal-open",Li="show",Di="modal-static",Si={backdrop:!0,focus:!0,keyboard:!0},Ii={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class Ni extends z{constructor(t,e){super(t,e),this._dialog=Q.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new gi,this._addEventListeners()}static get Default(){return Si}static get DefaultType(){return Ii}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||P.trigger(this._element,xi,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(ki),this._adjustDialog(),this._backdrop.show((()=>this._showElement(t))))}hide(){this._isShown&&!this._isTransitioning&&(P.trigger(this._element,"hide.bs.modal").defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(Li),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated())))}dispose(){for(const t of[window,this._dialog])P.off(t,".bs.modal");this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new yi({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new Ci({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=Q.findOne(".modal-body",this._dialog);e&&(e.scrollTop=0),d(this._element),this._element.classList.add(Li),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,P.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,this._isAnimated())}_addEventListeners(){P.on(this._element,"keydown.dismiss.bs.modal",(t=>{if("Escape"===t.key)return this._config.keyboard?(t.preventDefault(),void this.hide()):void this._triggerBackdropTransition()})),P.on(window,"resize.bs.modal",(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),P.on(this._element,"mousedown.dismiss.bs.modal",(t=>{P.one(this._element,"click.dismiss.bs.modal",(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(ki),this._resetAdjustments(),this._scrollBar.reset(),P.trigger(this._element,Oi)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(P.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._element.style.overflowY;"hidden"===e||this._element.classList.contains(Di)||(t||(this._element.style.overflowY="hidden"),this._element.classList.add(Di),this._queueCallback((()=>{this._element.classList.remove(Di),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=Ni.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}P.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=n(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),P.one(e,xi,(t=>{t.defaultPrevented||P.one(e,Oi,(()=>{a(this)&&this.focus()}))}));const i=Q.findOne(".modal.show");i&&Ni.getInstance(i).hide(),Ni.getOrCreateInstance(e).toggle(this)})),q(Ni),g(Ni);const Pi="show",ji="showing",Mi="hiding",Hi=".offcanvas.show",$i="hidePrevented.bs.offcanvas",Wi="hidden.bs.offcanvas",Bi={backdrop:!0,keyboard:!0,scroll:!1},Fi={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class zi extends z{constructor(t,e){super(t,e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return Bi}static get DefaultType(){return Fi}static get NAME(){return"offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||P.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new gi).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(ji),this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Pi),this._element.classList.remove(ji),P.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(P.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(Mi),this._backdrop.hide(),this._queueCallback((()=>{this._element.classList.remove(Pi,Mi),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new gi).reset(),P.trigger(this._element,Wi)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new yi({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():P.trigger(this._element,$i)}:null})}_initializeFocusTrap(){return new Ci({trapElement:this._element})}_addEventListeners(){P.on(this._element,"keydown.dismiss.bs.offcanvas",(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():P.trigger(this._element,$i))}))}static jQueryInterface(t){return this.each((function(){const e=zi.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)}}))}}P.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=n(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this))return;P.one(e,Wi,(()=>{a(this)&&this.focus()}));const i=Q.findOne(Hi);i&&i!==e&&zi.getInstance(i).hide(),zi.getOrCreateInstance(e).toggle(this)})),P.on(window,"load.bs.offcanvas.data-api",(()=>{for(const t of Q.find(Hi))zi.getOrCreateInstance(t).show()})),P.on(window,"resize.bs.offcanvas",(()=>{for(const t of Q.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(t).position&&zi.getOrCreateInstance(t).hide()})),q(zi),g(zi);const qi=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Ri=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,Vi=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,Ki=(t,e)=>{const i=t.nodeName.toLowerCase();return e.includes(i)?!qi.has(i)||Boolean(Ri.test(t.nodeValue)||Vi.test(t.nodeValue)):e.filter((t=>t instanceof RegExp)).some((t=>t.test(i)))},Qi={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],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:[]},Xi={allowList:Qi,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"<div></div>"},Yi={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Ui={entry:"(string|element|function|null)",selector:"(string|element)"};class Gi extends F{constructor(t){super(),this._config=this._getConfig(t)}static get Default(){return Xi}static get DefaultType(){return Yi}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},Ui)}_setContent(t,e,i){const n=Q.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)Ki(e,s)||t.removeAttribute(e.nodeName)}return n.body.innerHTML}(t,this._config.allowList,this._config.sanitizeFn):t}_resolvePossibleFunction(t){return"function"==typeof t?t(this):t}_putElementInTemplate(t,e){if(this._config.html)return e.innerHTML="",void e.append(t);e.textContent=t.textContent}}const Ji=new Set(["sanitize","allowList","sanitizeFn"]),Zi="fade",tn="show",en=".modal",nn="hide.bs.modal",sn="hover",on="focus",rn={AUTO:"auto",TOP:"top",RIGHT:p()?"left":"right",BOTTOM:"bottom",LEFT:p()?"right":"left"},an={allowList:Qi,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,0],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>',title:"",trigger:"hover focus"},ln={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 cn extends z{constructor(t,e){if(void 0===Ke)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 an}static get DefaultType(){return ln}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),P.off(this._element.closest(en),nn,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=P.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),P.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(tn),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))P.on(t,"mouseover",h);this._queueCallback((()=>{P.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(this._isShown()&&!P.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(tn),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))P.off(t,"mouseover",h);this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,this._isHovered=null,this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),P.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(Zi,tn),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(Zi),e}setContent(t){this._newContent=t,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(t){return this._templateFactory?this._templateFactory.changeContent(t):this._templateFactory=new Gi({...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(Zi)}_isShown(){return this.tip&&this.tip.classList.contains(tn)}_createPopper(t){const e="function"==typeof this._config.placement?this._config.placement.call(this,t,this._element):this._config.placement,i=rn[e.toUpperCase()];return Ve(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"function"==typeof t?t.call(this._element):t}_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,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_setListeners(){const t=this._config.trigger.split(" ");for(const e of t)if("click"===e)P.on(this._element,this.constructor.eventName("click"),this._config.selector,(t=>{this._initializeOnDelegatedTarget(t).toggle()}));else if("manual"!==e){const t=e===sn?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=e===sn?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");P.on(this._element,t,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusin"===t.type?on:sn]=!0,e._enter()})),P.on(this._element,i,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusout"===t.type?on:sn]=e._element.contains(t.relatedTarget),e._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},P.on(this._element.closest(en),nn,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=B.getDataAttributes(this._element);for(const t of Object.keys(e))Ji.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 in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);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=cn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}g(cn);const hn={...cn.Default,content:"",offset:[0,8],placement:"right",template:'<div class="popover" role="tooltip"><div class="popover-arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>',trigger:"click"},dn={...cn.DefaultType,content:"(null|string|element|function)"};class un extends cn{static get Default(){return hn}static get DefaultType(){return dn}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=un.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}g(un);const fn="click.bs.scrollspy",pn="active",gn="[href]",mn={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},_n={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class bn extends z{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 mn}static get DefaultType(){return _n}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&&(P.off(this._config.target,fn),P.on(this._config.target,fn,gn,(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=Q.find(gn,this._config.target);for(const e of t){if(!e.hash||l(e))continue;const t=Q.findOne(e.hash,this._element);a(t)&&(this._targetLinks.set(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(pn),this._activateParents(t),P.trigger(this._element,"activate.bs.scrollspy",{relatedTarget:t}))}_activateParents(t){if(t.classList.contains("dropdown-item"))Q.findOne(".dropdown-toggle",t.closest(".dropdown")).classList.add(pn);else for(const e of Q.parents(t,".nav, .list-group"))for(const t of Q.prev(e,".nav-link, .nav-item > .nav-link, .list-group-item"))t.classList.add(pn)}_clearActiveClass(t){t.classList.remove(pn);const e=Q.find("[href].active",t);for(const t of e)t.classList.remove(pn)}static jQueryInterface(t){return this.each((function(){const e=bn.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]()}}))}}P.on(window,"load.bs.scrollspy.data-api",(()=>{for(const t of Q.find('[data-bs-spy="scroll"]'))bn.getOrCreateInstance(t)})),g(bn);const vn="ArrowLeft",yn="ArrowRight",wn="ArrowUp",An="ArrowDown",En="active",Tn="fade",Cn="show",On='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',xn=`.nav-link:not(.dropdown-toggle), .list-group-item:not(.dropdown-toggle), [role="tab"]:not(.dropdown-toggle), ${On}`;class kn extends z{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),P.on(this._element,"keydown.bs.tab",(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?P.trigger(e,"hide.bs.tab",{relatedTarget:t}):null;P.trigger(t,"show.bs.tab",{relatedTarget:e}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(e,t),this._activate(t,e))}_activate(t,e){t&&(t.classList.add(En),this._activate(n(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.removeAttribute("tabindex"),t.setAttribute("aria-selected",!0),this._toggleDropDown(t,!0),P.trigger(t,"shown.bs.tab",{relatedTarget:e})):t.classList.add(Cn)}),t,t.classList.contains(Tn)))}_deactivate(t,e){t&&(t.classList.remove(En),t.blur(),this._deactivate(n(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.setAttribute("aria-selected",!1),t.setAttribute("tabindex","-1"),this._toggleDropDown(t,!1),P.trigger(t,"hidden.bs.tab",{relatedTarget:e})):t.classList.remove(Cn)}),t,t.classList.contains(Tn)))}_keydown(t){if(![vn,yn,wn,An].includes(t.key))return;t.stopPropagation(),t.preventDefault();const e=[yn,An].includes(t.key),i=b(this._getChildren().filter((t=>!l(t))),t.target,e,!0);i&&(i.focus({preventScroll:!0}),kn.getOrCreateInstance(i).show())}_getChildren(){return Q.find(xn,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=n(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=Q.findOne(t,i);s&&s.classList.toggle(n,e)};n(".dropdown-toggle",En),n(".dropdown-menu",Cn),i.setAttribute("aria-expanded",e)}_setAttributeIfNotExists(t,e,i){t.hasAttribute(e)||t.setAttribute(e,i)}_elemIsActive(t){return t.classList.contains(En)}_getInnerElement(t){return t.matches(xn)?t:Q.findOne(xn,t)}_getOuterElement(t){return t.closest(".nav-item, .list-group-item")||t}static jQueryInterface(t){return this.each((function(){const e=kn.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}P.on(document,"click.bs.tab",On,(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this)||kn.getOrCreateInstance(this).show()})),P.on(window,"load.bs.tab",(()=>{for(const t of Q.find('.active[data-bs-toggle="tab"], .active[data-bs-toggle="pill"], .active[data-bs-toggle="list"]'))kn.getOrCreateInstance(t)})),g(kn);const Ln="hide",Dn="show",Sn="showing",In={animation:"boolean",autohide:"boolean",delay:"number"},Nn={animation:!0,autohide:!0,delay:5e3};class Pn extends z{constructor(t,e){super(t,e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return Nn}static get DefaultType(){return In}static get NAME(){return"toast"}show(){P.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(Ln),d(this._element),this._element.classList.add(Dn,Sn),this._queueCallback((()=>{this._element.classList.remove(Sn),P.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this.isShown()&&(P.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.add(Sn),this._queueCallback((()=>{this._element.classList.add(Ln),this._element.classList.remove(Sn,Dn),P.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(Dn),super.dispose()}isShown(){return this._element.classList.contains(Dn)}_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(){P.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),P.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),P.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),P.on(this._element,"focusout.bs.toast",(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=Pn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return q(Pn),g(Pn),{Alert:R,Button:K,Carousel:at,Collapse:pt,Dropdown:hi,Modal:Ni,Offcanvas:zi,Popover:un,ScrollSpy:bn,Tab:kn,Toast:Pn,Tooltip:cn}})); diff --git a/store/static/js/checkout.js b/store/static/js/checkout.js index cbf2a2dc230ad3a76fbb426b4f8fe84b6bbd3e9f..b677758b0a189b6721d25930ed78f40969363b37 100644 --- a/store/static/js/checkout.js +++ b/store/static/js/checkout.js @@ -1,6 +1,5 @@ -// Credit Card Validation - +// Credit Card Formatting var selectedCardIcon = null; var defaultCardIcon = DOM.select(".icon-credit-card-alt"); @@ -40,18 +39,57 @@ var CVC = new Cleave(".input-cvc", { blocks: [3] }); +// Detail Validation + +let checkoutForm = document.getElementById("checkoutForm"); +checkoutForm.addEventListener("submit", (e) => { + + e.preventDefault(); + + let user = document.getElementById("user"); + let number = document.getElementById("ccn"); + let exp = document.getElementById("exp"); + let cvc = document.getElementById("cvc"); + + var regEx = /[0-9]{16}$/; + if(number.value.replace(/\s/g, "").match(regEx)) { + var regEx = /[0-9]{2}[/][0-9]{2}$/; + if(exp.value.match(regEx)) { + var regEx = /[0-9]{3}$/; + if(cvc.value.match(regEx)) { + if (user === 'user') { + checkoutUser(); + } else { + checkoutAnon(); + } + } else { + alert("Please enter a valid security code."); + } + } else { + alert("Please enter a valid expiry date."); + } + } else { + alert("Please enter a valid credit card number."); + } +}); + // Submit Form function checkoutAnon() { - basket = sessionStorage.getItem("basket"); - fetch("/", { + sessionStorage.removeItem("basket") + sessionStorage.removeItem("totalPrice") + window.location.href = "/"; +} + +function checkoutUser() { + fetch("/checkout-pay", { method: "POST", - body: JSON.stringify({ basketId: basketId }), }).then((_res) => { - window.location.href = "/basket"; + window.location.href = "/"; }); } -function checkoutUser() { - -} +var checkoutButton = DOM.select(".checkout-button"); +var totalPrice = sessionStorage.getItem("totalPrice"); +totalPrice = JSON.parse(totalPrice); +checkoutButton.innerText = "PAY: £" + (parseFloat(totalPrice.totalPrice) / 100).toFixed(2).toString(); \ No newline at end of file diff --git a/store/static/js/password.js b/store/static/js/password.js new file mode 100644 index 0000000000000000000000000000000000000000..47d0afe73a145b59cbcc23e152a831f677e2ef0f --- /dev/null +++ b/store/static/js/password.js @@ -0,0 +1,91 @@ +let state = false; +let password = document.getElementById("password"); +let passwordStrength = document.getElementById("password-strength"); +let lowUpperCase = document.querySelector(".low-upper-case i"); +let number = document.querySelector(".one-number i"); +let specialChar = document.querySelector(".one-special-char i"); +let eightChar = document.querySelector(".eight-character i"); + +password.addEventListener("keyup", function(){ + let pass = document.getElementById("password").value; + checkStrength(pass); +}); + +function toggle(){ + if(state){ + document.getElementById("password").setAttribute("type","password"); + state = false; + }else{ + document.getElementById("password").setAttribute("type","text") + state = true; + } +} + +function myFunction(show){ + show.classList.toggle("fa-eye-slash"); +} + +function checkStrength(password) { + let strength = 0; + + //If password contains both lower and uppercase characters + if (password.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/)) { + strength += 1; + lowUpperCase.classList.remove('fa-circle'); + lowUpperCase.classList.add('fa-check'); + } else { + lowUpperCase.classList.add('fa-circle'); + lowUpperCase.classList.remove('fa-check'); + } + //If it has numbers and characters + if (password.match(/([0-9])/)) { + strength += 1; + number.classList.remove('fa-circle'); + number.classList.add('fa-check'); + } else { + number.classList.add('fa-circle'); + number.classList.remove('fa-check'); + } + //If it has one special character + if (password.match(/([!,%,&,@,#,$,^,*,?,_,~])/)) { + strength += 1; + specialChar.classList.remove('fa-circle'); + specialChar.classList.add('fa-check'); + } else { + specialChar.classList.add('fa-circle'); + specialChar.classList.remove('fa-check'); + } + //If password is greater than 7 + if (password.length > 7) { + strength += 1; + eightChar.classList.remove('fa-circle'); + eightChar.classList.add('fa-check'); + } else { + eightChar.classList.add('fa-circle'); + eightChar.classList.remove('fa-check'); + } + + // If value is less than 2 + + if (strength < 2) { + passwordStrength.classList.remove('progress-bar-warning'); + passwordStrength.classList.remove('progress-bar-success'); + passwordStrength.classList.add('progress-bar-danger'); + passwordStrength.style = 'width: 2%'; + } else if (strength == 2) { + passwordStrength.classList.remove('progress-bar-warning'); + passwordStrength.classList.remove('progress-bar-success'); + passwordStrength.classList.add('progress-bar-danger'); + passwordStrength.style = 'width: 20%'; + } else if (strength == 3) { + passwordStrength.classList.remove('progress-bar-success'); + passwordStrength.classList.remove('progress-bar-danger'); + passwordStrength.classList.add('progress-bar-warning'); + passwordStrength.style = 'width: 60%'; + } else if (strength == 4) { + passwordStrength.classList.remove('progress-bar-warning'); + passwordStrength.classList.remove('progress-bar-danger'); + passwordStrength.classList.add('progress-bar-success'); + passwordStrength.style = 'width: 100%'; + } +} \ No newline at end of file diff --git a/store/static/js/product.js b/store/static/js/product.js new file mode 100644 index 0000000000000000000000000000000000000000..54ef64c55ef8c9d5a29c45309499c75f01254e60 --- /dev/null +++ b/store/static/js/product.js @@ -0,0 +1,7 @@ +document.getElementsByClassName('input-rating')[0].oninput = function () { + var max = 10; + + if (parseInt(this.value) > max) { + this.value = max; + } +} \ No newline at end of file diff --git a/store/static/js/store.js b/store/static/js/store.js index b3dc5297af2aee9e63efc1eb19a8556b926455cb..50f7f8177cfdd95e6e5a115e0520ab5c8820bbe5 100644 --- a/store/static/js/store.js +++ b/store/static/js/store.js @@ -10,7 +10,16 @@ function deleteItem(basketId) { function flashSuccessMessage(page, message) { fetch("/flash-message", { method: "POST", - body: JSON.stringify({ message: message }), + body: JSON.stringify({ message: message, type: "success" }), + }).then((_res) => { + window.location.href = "/".concat(page); + }); +} + +function flashErrorMessage(page, message) { + fetch("/flash-message", { + method: "POST", + body: JSON.stringify({ message: message, type: "error" }), }).then((_res) => { window.location.href = "/".concat(page); }); @@ -37,7 +46,7 @@ window.addEventListener("scroll", () => { // ANONYMOUS SESSION BASKET -function addToBasket(product, price, page) { +function addToBasket(product, fullname, price, page) { if (!sessionStorage.getItem("basket")) { sessionStorage.setItem("basket", JSON.stringify( @@ -48,7 +57,7 @@ function addToBasket(product, price, page) { if (basket.products === undefined) { - var item = '{"name": "' + product + '", "price": "' + price + '", "quantity": "1"}'; + var item = '{"name": "' + product + '", "fullname": "' + fullname + '", "price": "' + price + '", "quantity": "1"}'; var productsHolder = '{"products": [' + item + ']}'; sessionStorage.setItem("basket", productsHolder); @@ -65,7 +74,7 @@ function addToBasket(product, price, page) { sessionStorage.setItem("basket", sBasket); } else { - var item = '{"name": "' + product + '", "price": "' + price + '", "quantity": "1"}'; + var item = '{"name": "' + product + '", "fullname": "' + fullname + '", "price": "' + price + '", "quantity": "1"}'; basket.products.push(JSON.parse(item)); sBasket = JSON.stringify(basket); sessionStorage.setItem("basket", sBasket); @@ -82,56 +91,66 @@ if (document.getElementById("js_basket")) { let basket = JSON.parse(sessionStorage.getItem("basket")); var html = [`<div>`]; - for (i = 0; i < basket.products.length; i++) { - var htmlToAdd = []; - htmlToAdd = [ - `<div class="d-flex" style="width: 100%;height: 100px;background: #ffd200;padding: 10px 20px;position: relative;margin-bottom: 10px;">` + - `<div style="width: 80px;height: 80px;background: #ffffff;text-align: center;position: relative">` + - `<img src="static/img/${basket.products[i].name}.png" class="align-bottom" style="height: auto;width: auto;max-height: 80px;max-width: 80px;top: 0;left: 0;bottom: 0;right: 0;margin: auto;position: absolute">` + - `</div>` + - `<div class="blue-button centered-text" style="margin-top: 10px;margin-left: 20px;">` + - `<span style="font-size: 24px;display: block;">${basket.products[i].name}</span>` + - `</div>` + - `<div class="centered-text" style="margin-top: 10px;margin-left: auto;">` + - `<span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">Quantity: ${basket.products[i].quantity}</span>` + - `</div>` + - `<div class="centered-text" style="margin-top: 10px;margin-left: auto;">` + - `<span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">Price: £${(parseFloat(basket.products[i].price) / 100).toFixed(2)}</span>` + - `</div>` + - `<div class="centered-text" style="margin-top: 10px;margin-left: auto;">` + - `<span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">Total: £${((parseFloat(basket.products[i].price) * parseFloat(basket.products[i].quantity)) / 100).toFixed(2)}</span>` + - `</div>` + - `<div class="red-button centered-text" style="margin-top: 10px;margin-left: auto;" onClick='deleteItemAnon("${basket.products[i].name.toString()}")'>` + - `<span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">REMOVE FROM BASKET</span>` + - `</div>` + - `</div>` - ]; - html.push(htmlToAdd); + if (basket.products !== undefined) { + for (i = 0; i < basket.products.length; i++) { + var htmlToAdd = []; + htmlToAdd = [ + `<div class="d-flex" style="width: 100%;height: 100px;background: #ffd200;padding: 10px 20px;position: relative;margin-bottom: 10px;">` + + `<div style="width: 80px;height: 80px;background: #ffffff;text-align: center;position: relative">` + + `<img src="static/img/${basket.products[i].name}.png" class="align-bottom" style="height: auto;width: auto;max-height: 80px;max-width: 80px;top: 0;left: 0;bottom: 0;right: 0;margin: auto;position: absolute">` + + `</div>` + + `<div class="blue-button centered-text" style="margin-top: 10px;margin-left: 20px;">` + + `<span style="font-size: 24px;display: block;">${basket.products[i].fullname}</span>` + + `</div>` + + `<div class="centered-text ms-auto" style="margin-top: 10px;">` + + `<span style="margin: auto;margin-right: 30px;margin-left: 30px;font-size: 24px;">Quantity: ${basket.products[i].quantity}</span>` + + `</div>` + + `<div class="centered-text" style="margin-top: 10px;">` + + `<span style="margin: auto;margin-right: 30px;margin-left: 30px;font-size: 24px;">Price: £${(parseFloat(basket.products[i].price) / 100).toFixed(2)}</span>` + + `</div>` + + `<div class="centered-text" style="margin-top: 10px;">` + + `<span style="margin: auto;margin-right: 30px;margin-left: 30px;font-size: 24px;">Total: £${((parseFloat(basket.products[i].price) * parseFloat(basket.products[i].quantity)) / 100).toFixed(2)}</span>` + + `</div>` + + `<div class="red-button centered-text" style="margin-left:30px;margin-top: 10px" onClick='deleteItemAnon("${basket.products[i].name.toString()}")'>` + + `<span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">REMOVE FROM BASKET</span>` + + `</div>` + + `</div>` + ]; + html.push(htmlToAdd); + } } - console.log(basket.products.length === 0); - if (basket.products.length === 0) { + if (basket.products === undefined) { var htmlToAdd = [ `<div class="d-flex" style="width: 100%;height: 100px;background: #ffd200;padding: 10px 20px;position: relative;margin-bottom: 10px;">` + `<div class="centered-text" style="margin-top: 5px;margin-left: auto;margin-right: auto;">` + `<span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 32px;">YOU HAVE NO ITEMS IN YOUR BASKET!</span>` + `</div>` + + `</div>` + `</div>` ]; - } else { + } else if (basket.products.length > 0) { var htmlToAdd = [ `<div class="d-flex" style="background: #ffd200;width: 35%;height: 100px;margin: auto;margin-top:50px;padding: 10px 40px;min-width: 400px;">` + `<div class="centered-text" style="margin-top: 10px;background: #00c0ff;">` + `<span>TOTAL PRICE: £${(parseFloat(getTotalPrice(basket)) / 100).toFixed(2)}</span>` + `</div>` + - `<div class="red-button centered-text" style="margin-top: 10px;margin-left: auto;">` + + `<div class="red-button centered-text" onClick="checkout('false', ${parseFloat(getTotalPrice(basket))})" style="margin-top: 10px;margin-left: auto;">` + `<span>CHECKOUT</span>` + `</div>` + `</div>` + `</div>` ]; + } else { + var htmlToAdd = [ + `<div class="d-flex" style="width: 100%;height: 100px;background: #ffd200;padding: 10px 20px;position: relative;margin-bottom: 10px;">` + + `<div class="centered-text" style="margin-top: 5px;margin-left: auto;margin-right: auto;">` + + `<span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 32px;">YOU HAVE NO ITEMS IN YOUR BASKET!</span>` + + `</div>` + + `</div>` + + `</div>` + ]; } html.push(htmlToAdd); - document.getElementById("js_basket").innerHTML = html.join(""); reloadCss(); reloadCss(); @@ -176,4 +195,5 @@ function deleteItemAnon(product) { flashSuccessMessage("basket", 'Item removed from basket!'); location.reload(); -} \ No newline at end of file +} + diff --git a/store/templates/base.html b/store/templates/base.html index 800037c0631e2d9132771c903d8e244b673f6b08..65d4e6230f556e415fea3443e4679ea31f24cf6e 100644 --- a/store/templates/base.html +++ b/store/templates/base.html @@ -5,26 +5,35 @@ <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no"> <title>{% block title %}Page Title Not Found{% endblock %}</title> - <link rel="stylesheet" href="../static/bootstrap/css/bootstrap.min.css"> <link rel="stylesheet" href="../static/css/RamaGothicEW01.css"> <link rel="stylesheet" href="../static/css/swiper-icons.css"> <link rel="stylesheet" href="../static/css/icon-font.css"> - <link rel="stylesheet" href="../static/css/styles.css"> - <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> - <link rel="stylesheet" href="../static/css/bootstrap/css/bootstrap.min.css"> + <link rel="stylesheet" href="../static/css/styles.css"> <link rel="stylesheet" href="../static/css/Simple-Slider-swiper-bundle.min.css"> <link rel="stylesheet" href="../static/css/Simple-Slider.css"> + <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KK94CHFLLe+nY2dmCWGMq91rCGa5gtU4mk92HdvYe+M/SXH301p5ILy+dN9+nJOZ" crossorigin="anonymous"> + <script defer src="https://code.jquery.com/jquery-3.6.4.min.js" integrity="sha256-oP6HI9z1XaZNBrJURtCoUT5SUnxFr8s3BzRl+cbzUq8=" crossorigin="anonymous"></script> + <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ENjdO4Dr2bkBIFxQpeoTz1HIcje39Wm4jDKdf19U8gI4ddQ3GYNS7NTKfAdVQSZe" crossorigin="anonymous"></script> </head> -<body style="background: #00c0ff;"> - <div style="text-align: center;background: #ffffff; width:100% "><img src="../static/img/AlphaMart_logo_cut.png" width="1000" height="300" style="text-align: center;overflow: hidden;height: 50%;width: 50%;min-height: 72px;min-width: 300px;"></div> +<body style="background: #00c0ff;font-family: RamaGothicEW01"> + + <div style="text-align: center;background: #ffffff; width:100% "> + <img src="../static/img/AlphaMart_logo_cut.png" width="1000" height="300" style="text-align: center;overflow: hidden;height: 50%;width: 50%;min-height: 72px;min-width: 300px;"> + </div> <div style="position: sticky;top: 0px;width: 100%;z-index: 1000;"> <div> - <nav class="navbar navbar-light navbar-expand-md" style="background: #ffd200;height: 72px;font-family: 'RamaGothicEW01';font-size: 20px;"> + <nav class="navbar navbar-expand-md" style="background: #ffd200;height: 72px;font-family: 'RamaGothicEW01';font-size: 20px;z-index:1001;"> <div class="container-fluid"> - <div class="secondary-logo-wrapper" style="position: absolute;left: -450px;height: 72px;"><img class="secondary-logo" src="../static/img/AlphaMart_logo_cut_small.png" style="height: 72px;width: auto;position: static;left: -400px;"></div><button data-bs-toggle="collapse" class="navbar-toggler nav-buttons-2" data-bs-target="#navcol-1"><span class="visually-hidden">Toggle navigation</span><span class="navbar-toggler-icon"></span></button> - <div class="collapse navbar-collapse nav-buttons" id="navcol-1"> + <div class="secondary-logo-wrapper" style="position: absolute;left: -450px;height: 72px;"> + <img class="secondary-logo" src="../static/img/AlphaMart_logo_cut_small.png" style="height: 72px;width: auto;position: static;left: -400px;"> + </div> + <button type="button" data-bs-toggle="collapse" class="navbar-toggle collapsed navbar-toggler nav-buttons-2" data-bs-target="#navbar-buttons" aria-expanded="false" aria-controls="navbar"> + <span class="visually-hidden">Toggle navigation</span> + <span class="navbar-toggler-icon"></span> + </button> + <div class="collapse navbar-collapse nav-buttons" id="navbar-buttons"> <ul class="navbar-nav"> <li class="nav-item blue-button"><a class="nav-link active" href="/">HOME</a></li> <li class="nav-item blue-button"><a class="nav-link active" href="/basket">BASKET</a></li> @@ -48,18 +57,14 @@ {% with messages = get_flashed_messages(with_categories=true) %} {% if messages %} {% for category, message in messages %} {% if category == 'error' %} - <div class="alert alert-danger alert-dismissable fade show" role="alert"> + <div class="alert alert-danger alert-dismissable fade show" role="alert" style="font-size: 20px;"> {{ message }} - <button type="button" class="close" data-dismiss="alert"> - <span aria-hidden="true">×</span> - </button> + <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close" style="position: absolute;right: 20px"></button> </div> {% else %} - <div class="alert alert-success alert-dismissable fade show" role="alert"> - {{ message }} - <button type="button" class="close" data-dismiss="alert"> - <span aria-hidden="true">×</span> - </button> + <div class="alert alert-success alert-dismissable fade show" role="alert" style="font-size: 20px"> + {{ message }} + <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close" style="position: absolute;right: 20px"></button> </div> {% endif %} {% endfor %} {% endif %} {% endwith %} </div> @@ -69,13 +74,10 @@ <script src="../static/bootstrap/js/bootstrap.min.js"></script> <script src="../static/js/Simple-Slider-swiper-bundle.min.js"></script> <script src="../static/js/Simple-Slider.js"></script> - <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"></script> - <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script> - <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script> - <script src="../static/js/bootstrap/js/bootstrap.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/cleave.js@1.6.0/dist/cleave.min.js"></script> <script src="../static/js/lib.js"></script> <script src="../static/js/store.js"></script> + {% block scripts %} {% endblock %} </body> diff --git a/store/templates/basket.html b/store/templates/basket.html index 1e7ecd276cf437e2e519ddd44529c024ba8cede0..dc094bf40eff06364c86d3c6b85bec8c68e7c0bf 100644 --- a/store/templates/basket.html +++ b/store/templates/basket.html @@ -1,4 +1,4 @@ -{% extends "base.html" %} {% block title %}Home{% endblock %} {% block page %} +{% extends "base.html" %} {% block title %}Basket{% endblock %} {% block page %} <div style="background: #00c0ff;padding: 0px;"> <div class="container py-4 py-xl-5" style="font-family: 'RamaGothicEW01';"> @@ -17,22 +17,32 @@ </div> </div> {% else %} - {% for basket in user.basket %} - {% set totalprice.totalprice = totalprice.totalprice + basket.item[0].price %} - <div class="d-flex" style="width: 100%;height: 100px;background: #ffd200;padding: 10px 20px;position: relative;margin-bottom: 10px;"> - <div style="width: 80px;height: 80px;background: #ffffff;text-align: center;position: relative"> - <img src="static/img/{{ basket.item[0].shorthand }}.png" class="align-bottom" style="height: auto;width: auto;max-height: 80px;max-width: 80px;top: 0;left: 0;bottom: 0;right: 0;margin: auto;position: absolute"> + {% for basket in user.basket %} + {% set totalprice.totalprice = totalprice.totalprice + basket.item[0].price %} + <div class="d-flex" style="width: 100%;height: 100px;background: #ffd200;padding: 10px 20px;position: relative;margin-bottom: 10px;"> + <div style="width: 80px;height: 80px;background: #ffffff;text-align: center;position: relative"> + <img src="static/img/{{ basket.item[0].shorthand }}.png" class="align-bottom" style="height: auto;width: auto;max-height: 80px;max-width: 80px;top: 0;left: 0;bottom: 0;right: 0;margin: auto;position: absolute"> + </div> + <div class="blue-button centered-text" style="margin-top: 10px;margin-left: 20px;"> + <span style="font-size: 24px;display: block;">{{ basket.item[0].name }}</span> + </div> + <div class="centered-text ms-auto" style="margin-top: 10px;"> + <span style="margin: auto;margin-right: 30px;margin-left: 30px;font-size: 24px;">Quantity: {{ basket.quantity }}</span> + </div> + <div class="centered-text" style="margin-top: 10px;"> + <span style="margin: auto;margin-right: 30px;margin-left: 30px;font-size: 24px;">Price: £{{ "{0:.2f}".format(basket.item[0].price / 100) }}</span> + </div> + <div class="centered-text" style="margin-top: 10px;"> + <span style="margin: auto;margin-right: 30px;margin-left: 30px;font-size: 24px;">Total: £{{ "{0:.2f}".format((basket.item[0].price * basket.quantity) / 100) }}</span> + </div> + <div class="red-button centered-text" style="margin-top: 10px;margin-left: 30px;" onClick="deleteItem({{ basket.id }})"> + <span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">REMOVE FROM BASKET</span> + </div> </div> - <div class="blue-button centered-text" style="margin-top: 10px;margin-left: 20px;"><span style="font-size: 24px;display: block;">{{ basket.item[0].name }}</span></div> - <div class="centered-text" style="margin-top: 10px;margin-left: auto;"><span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">Quantity: {{ basket.quantity }}</span></div> - <div class="centered-text" style="margin-top: 10px;margin-left: auto;"><span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">Price: £{{ "{0:.2f}".format(basket.item[0].price / 100) }}</span></div> - <div class="centered-text" style="margin-top: 10px;margin-left: auto;"><span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">Total: £{{ "{0:.2f}".format((basket.item[0].price * basket.quantity) / 100) }}</span></div> - <div class="red-button centered-text" style="margin-top: 10px;margin-left: auto;" onClick="deleteItem({{ basket.id }})"><span style="margin: auto;margin-right: 10px;margin-left: 10px;font-size: 24px;">REMOVE FROM BASKET</span></div> - </div> - {% endfor %} + {% endfor %} <div class="d-flex" style="background: #ffd200;width: 35%;height: 100px;margin: auto;margin-top:50px;padding: 10px 40px;min-width: 400px;"> <div class="centered-text" style="margin-top: 10px;background: #00c0ff;"><span>TOTAL PRICE: £{{ "{0:.2f}".format(totalprice.totalprice / 100) }}</span></div> - <div class="red-button centered-text" style="margin-top: 10px;margin-left: auto;"><span>CHECKOUT</span></div> + <button class="red-button centered-text" onClick="checkout('true', {{ totalprice.totalprice }})" style="margin-top: 10px;margin-left: auto;">CHECKOUT</button> </div> {% endif %} </div> @@ -43,3 +53,7 @@ </div> </div> {% endblock %} + +{% block scripts %} +<script src="../static/js/basket.js"></script> +{% endblock %} diff --git a/store/templates/checkout.html b/store/templates/checkout.html index 7ccdab2e574dfa59a4780ae9a1757c5177053169..ccbf14bfccc15b0b333ed03326750a7cfe2e7665 100644 --- a/store/templates/checkout.html +++ b/store/templates/checkout.html @@ -6,7 +6,7 @@ <div class="col-md-8 col-xl-6 text-center mx-auto" style="background: #ffd200;margin-bottom: 40px"> <h2 style="font-family: RamaGothicEW01;font-weight: bold;letter-spacing: 2px;font-size: 48px;text-shadow: 3px 3px #ffffff;color: #ff2e00;margin-bottom: 0px;">CHECKOUT</h2> </div> - <form method="POST"> + <form method="POST" id="checkoutForm" action=""> <div style=";width:90%;background: #ffd200;padding: 20px 20px;position: relative;margin: auto"> <div style='height: 80px;margin:10px 30px;background: #00c0ff'> <div class="d-flex" style="width: 80%;margin:auto"> @@ -55,10 +55,12 @@ </div> </div> <div style="margin:10px;text-align: center"> - {% if user.is_authnticated %} - <button class="red-button checkout-button" type="button" onclick="checkoutUser()">SUBMIT</button> + {% if user.is_authenticated %} + <button class="red-button checkout-button" type="submit">SUBMIT</button> + <input style="display: none;visibility: hidden" class="hidden" type="text" name="user" id="user" value="user"/> {% else %} - <button class="red-button checkout-button" type="button" onclick="checkoutAnon()">SUBMIT</button> + <button class="red-button checkout-button" type="submit">SUBMIT</button> + <input style="display: none;visibility: hidden" class="hidden" type="text" name="user" id="user" value="anon"/> {% endif %} </div> </div> diff --git a/store/templates/coffee.html b/store/templates/coffee.html new file mode 100644 index 0000000000000000000000000000000000000000..8847e46b755a7ab46cb7db3f161eb8c8b3ed945d --- /dev/null +++ b/store/templates/coffee.html @@ -0,0 +1,5 @@ +{% extends "product.html" %} {% block title %}COFFEE{% endblock %} + +{% block description %} + DESCRIPTION FOR EXISTENTIAL DREAD RELIEF +{% endblock %} \ No newline at end of file diff --git a/store/templates/dread.html b/store/templates/dread.html new file mode 100644 index 0000000000000000000000000000000000000000..8d7fbc921697d3c0c7c01341797e9e98f51cd8bb --- /dev/null +++ b/store/templates/dread.html @@ -0,0 +1,5 @@ +{% extends "product.html" %} {% block title %}DREAD{% endblock %} + +{% block description %} + DESCRIPTION FOR EXISTENTIAL DREAD RELIEF +{% endblock %} \ No newline at end of file diff --git a/store/templates/existence.html b/store/templates/existence.html new file mode 100644 index 0000000000000000000000000000000000000000..cc8874fc9e15b489444b5223070033d52fa60a69 --- /dev/null +++ b/store/templates/existence.html @@ -0,0 +1,5 @@ +{% extends "product.html" %} {% block title %}EXISTENCE{% endblock %} + +{% block description %} + DESCRIPTION FOR INSTANT EXISTENCE +{% endblock %} \ No newline at end of file diff --git a/store/templates/fly.html b/store/templates/fly.html new file mode 100644 index 0000000000000000000000000000000000000000..c18b8f987afe6e63ed9ebd6fe09bbb9a0cd05659 --- /dev/null +++ b/store/templates/fly.html @@ -0,0 +1,5 @@ +{% extends "product.html" %} {% block title %}FLY{% endblock %} + +{% block description %} + DESCRIPTION FOR NON-STICK FLY PAPERS +{% endblock %} \ No newline at end of file diff --git a/store/templates/home.html b/store/templates/home.html index 0fee7a58e6ee2ec5ce27891d9731bbbf9c4adf4b..821187a0037f6954b56cb2d67779078984d5fb82 100644 --- a/store/templates/home.html +++ b/store/templates/home.html @@ -46,19 +46,25 @@ <div class="col"> <div class="card" style="border-radius: 0px;background: #ffd200;border-width: 0px;"> <div class="fit-cover" style="display: inline;background: #ffffff;height: 300px;width: 100%;text-align: center;position: relative"> - <img class="fit-cover" style="height: auto;width: auto;max-height: 300px;max-width: 330px;top: 0;left: 0;bottom: 0;right: 0;margin: auto;position: absolute" src="../static/img/{{ product.shorthand }}.png"> + <img class="fit-cover" style="height: auto;width: auto;max-height: 300px;max-width: 100% ;top: 0;left: 0;bottom: 0;right: 0;margin: auto;position: absolute" src="../static/img/{{ product.shorthand }}.png"> </div> <div class="card-body p-4"> <h4 class="card-title" style="font-family: RamaGothicEW01;font-weight: bold;color: #1728b8;">{{ (product.name).upper() }} - £{{ "{0:.2f}".format(product.price / 100) }}</h4> - <p class="card-text" style="font-family: RamaGothicEW01;letter-spacing: 0px;font-size: 20px;">Some text about {{ product.shorthand }} yada yada yada it is awesome</p> + <p class="card-text" style="font-family: RamaGothicEW01;letter-spacing: 0px;font-size: 20px;">Want to find out more about this AWESOME AlphaMart product? Press view item!</p> <div class="d-flex" style="text-align: left;"> <label for="{{ product.shorthand }}"></label> {% if user.is_authenticated %} <form method='POST'> - <button class="btn btn-primary red-button" type="submit" name="product" value="{{ products[0].shorthand }}" style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;">ADD <img src="../static/img/cart_w.svg" style="width: 20%;"></button> + <button class="btn btn-primary red-button" type="submit" name="product" value="{{ product.shorthand }}" style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;"> + ADD + <img src="../static/img/cart_w.svg" style="width: 20%;"> + </button> </form> {% else %} - <button class="btn btn-primary red-button" type="button" onclick='addToBasket("{{ product.shorthand }}", "{{ product.price }}", "")' style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;">ADD <img src="../static/img/cart_w.svg" style="width: 20%;"></button> + <button class="btn btn-primary red-button" type="button" onclick='addToBasket("{{ product.shorthand }}", "{{ product.name }}", "{{ product.price }}", "")' style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;"> + ADD + <img src="../static/img/cart_w.svg" style="width: 20%;"> + </button> {% endif %} <button class="btn btn-primary red-button" onclick="location.href = '/{{ product.shorthand }}';" type="submit" style="background: #ff2e00;border-style: none;width: 130px;position: absolute;right: 25px;border-radius: 0px;"> VIEW ITEM <img src="../static/img/arrow_w.svg" style="width: 20%;margin-bottom: 2px;"> @@ -68,21 +74,6 @@ </div> </div> {% endfor %} - <div class="col"> - <div class="card" style="border-radius: 0px;background: #ffd200;border-width: 0px;"> - <div class="fit-cover" style="display: inline;background: #ffffff;height: 300px;text-align: center;"><img class="fit-cover" style="height: 100%;border-radius: 0px;width: 100%;" src=""></div> - <div class="card-body p-4"> - <h4 class="card-title" style="font-family: RamaGothicEW01;font-weight: bold;color: #1728b8;">MYSTERY 5TH ITEM</h4> - <p class="card-text" style="font-family: RamaGothicEW01;letter-spacing: 0px;font-size: 20px;">Some text about the mystery 5th item yada yada yada it is awesome</p> - <div class="d-flex" style="text-align: left;"> - <form method='POST'> - <button class="btn btn-primary red-button" type="button" style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;">ADD <img src="../static/img/cart_w.svg" style="width: 20%;"></button> - <button class="btn btn-primary red-button" type="button" style="background: #ff2e00;border-style: none;width: 130px;position: absolute;right: 25px;border-radius: 0px;">VIEW ITEM <img src="../static/img/arrow_w.svg" style="width: 20%;margin-bottom: 2px;"></button> - </form> - </div> - </div> - </div> - </div> </div> </div> </div> diff --git a/store/templates/product.html b/store/templates/product.html index 67cf1383b469383a18ae8471f1d90a4c2e0736da..a95113a2b0c1401c34c191f0394084484a6888f5 100644 --- a/store/templates/product.html +++ b/store/templates/product.html @@ -21,11 +21,11 @@ <div style="margin-left:auto;margin-right:auto;margin-top:-50px;font-size: 32px"> <label for="{{ product.shorthand }}"></label> {% if user.is_authenticated %} - <form method='POST'> - <button class="btn btn-primary red-button" type="submit" name="product" value="{{ product.shorthand }}" style="background: #ff2e00;font-size: 28px;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;">ADD <img src="../static/img/cart_w.svg" style="width: 20%;"></button> + <form method='POST' name='submit' value="submit"> + <button class="red-button" type="submit" name="submit" value="submit" style="background: #ff2e00;font-size: 28px;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;">ADD <img src="../static/img/cart_w.svg" style="width: 20%;"></button> </form> {% else %} - <button class="btn btn-primary red-button" type="button" onclick='addToBasket("{{ product.shorthand }}", "{{ product.price }}", "")' style="background: #ff2e00;font-size: 28px;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;">ADD <img src="../static/img/cart_w.svg" style="width: 20%;"></button> + <button class="red-button" type="button" onclick='addToBasket("{{ product.shorthand }}", "{{ product.name }}", "{{ product.price }}", "{{ product.shorthand }}")' style="background: #ff2e00;font-size: 28px;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;margin-top: 40px">ADD <img src="../static/img/cart_w.svg" style="width: 20%;"></button> {% endif %} </div> </div> @@ -34,16 +34,19 @@ </div> </div> <div class="row gy-4 row-cols-1 row-cols-md-2 row-cols-xl-3" style="margin-bottom: 25px;"> + {% if product.reviews %} {% for review in product.reviews %} <div class="col"> <div class="card" style="border-radius: 0px;background: #ffd200;border-width: 0px;"> - <h2 style="font-family: RamaGothicEW01;margin-top:10px;text-align: center;font-weight: bold;letter-spacing: 2px;font-size: 24px;text-shadow: 3px 3px #ffffff;color: #ff2e00;margin-bottom: 0px;"> + <h2 style="font-family: RamaGothicEW01;margin-top:10px;text-align: center;font-weight: bold;letter-spacing: 2px;font-size: 28px;text-shadow: 3px 3px #ffffff;color: #ff2e00;margin-bottom: 0px;"> REVIEW BY: {{ (review.user[0].username).upper() }} </h2> <div class="card-body p-4"> <h4 class="card-title" style="font-family: RamaGothicEW01;font-weight: bold;color: #1728b8;">RATED: {{ review.rating }}/10</h4> - <p class="card-text" style="font-family: RamaGothicEW01;letter-spacing: 0px;font-size: 20px;">{{ (review.description).upper() }}</p> + <div style="padding: 10px;margin-bottom: 10px" class="main-blue"> + <p class="card-text" style="font-family: RamaGothicEW01;letter-spacing: 0px;font-size: 20px;">{{ (review.description).upper() }}</p> + </div> <div class="d-flex" style="text-align: left;"> <label for="{{ product.shorthand }}"></label> {% if user == review.user[0] %} @@ -56,36 +59,46 @@ </div> </div> {% endfor %} + {% endif %} </div> <div class="row mb-5"> - <div class="cold-md-8 cold-xl-6 text-center mx-auto" style="background: #ffd200;"> - <div style="max-width: 455px;"> + <div class="col-md-8 col-xl-6 text-center mx-auto d-flex" style="background: #ffd200;padding:15px"> + <div style="margin: auto;width: 70%; min-width:350px"> {% if user.is_authenticated %} - <form method="POST"> - <h3 align="center">Write a review:</h3> + <form method="POST" style="font-family: RamaGothicEW01"> + <h3 style="font-family: RamaGothicEW01;margin-top:10px;text-align: center;font-weight: bold;letter-spacing: 2px;font-size: 28px;text-shadow: 3px 3px #ffffff;color: #ff2e00;margin-bottom: 0px;"> + LEAVE A REVIEW! + </h3> + <div style="margin-bottom:10px;margin-top: 10px;padding: 10px" class="main-blue"> <div class="form-group"> - <label for="rating">Rating:</label> - <input - type="rating" - class="form-control" - id="rating" + <label for="rating" style="font-size:24px;font-weight: bold;color: #1728b8;">RATING OUT OF 10:</label> + <input class="form-control input-rating" id="input-rating" name="rating" - placeholder="Give a number to rate this product" + placeholder="10" + data-cleave-max="10" data-cleave-min="0" /> </div> <div class="form-group"> - <label for="review">Review:</label> - <input - type="review" + <label for="review" style="font-size:24px;font-weight: bold;color: #1728b8;">REVIEW:</label> + <textarea class="form-control" id="review" name="review" - placeholder="Write about this product" - /> + placeholder="THE BEST PRODUCT I EVER TRIED!"></textarea> </div> - <button class="btn btn-primary red-button" type="submit" name="submit" value="submit" style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;margin: auto">POST REVIEW</button> + </div> + <button class="btn btn-primary red-button" type="submit" style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;margin: auto">POST REVIEW</button> </form> {% else %} + <h3 style="font-family: RamaGothicEW01;margin-top:10px;text-align: center;font-weight: bold;letter-spacing: 2px;font-size: 28px;text-shadow: 3px 3px #ffffff;color: #ff2e00;margin-bottom: 0px;"> + LEAVE A REVIEW! + </h3> + <div style="margin-bottom:10px;margin-top: 10px;padding: 10px" class="main-blue"> + <label style="font-size:24px;font-weight: bold;color: #1728b8;">YOU MUST LOG IN TO LEAVE A REVIEW!</label> + <div class="d-flex" style="font-family: RamaGothicEW01"> + <button onclick="location.href = '/signup';" class="red-button" type="submit" value="submit" style="border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;margin: auto">SIGN UP</button> + <button onclick="location.href = '/login';" class="red-button" type="submit" value="submit" style="background: #ff2e00;border-radius: 0px;width: 130px;padding: 5px 5px;border-style: none;margin: auto">LOG IN</button> + </div> {% endif %} </div> </div> @@ -94,3 +107,6 @@ {% endblock %} +{% block scripts %} +<script src="../static/js/product.js"></script> +{% endblock %} \ No newline at end of file diff --git a/store/templates/signup.html b/store/templates/signup.html index a1d5a3e4ca465a0d9e9406c9f15123de4e0e35f0..335950aff1da120d30bab8109c16dafc25edbb78 100644 --- a/store/templates/signup.html +++ b/store/templates/signup.html @@ -25,20 +25,63 @@ <input type="text" class="form-control" - id="username" + id="userna me" name="username" placeholder="Enter username" /> </div> <div class="form-group" style="background:#00c0ff;padding: 10px"> - <label for="password1">PASSWORD</label> - <input - type="password" - class="form-control" - id="password1" - name="password1" - placeholder="Enter password" - /> + <div class="form-group"> + <label class="col-md-12 control-label" for="passwordinput"> + Password + </label> + <div class="col-md-12"> + <input id="password" class="form-control input-md" + name="password" type="password" + placeholder="Enter your password" > + <span class="show-pass" onclick="toggle()"> + <i class="far fa-eye" onclick="myFunction(this)"></i> + </span> + <div id="popover-password"> + <p><span id="result"></span></p> + <div class="progress"> + <div id="password-strength" + role="progressbar" + aria-valuenow="40" + aria-valuemin="0" + aria-valuemax="100" + style="width:0%"> + </div> + </div> + <ul class="list-unstyled" style="font-size: 18px"> + <li class=""> + <span class="low-upper-case"> + <i class="fas fa-circle" aria-hidden="true"></i> + Lowercase & Uppercase + </span> + </li> + <li class=""> + <span class="one-number"> + <i class="fas fa-circle" aria-hidden="true"></i> + Number (0-9) + </span> + </li> + <li class=""> + <span class="one-special-char"> + <i class="fas fa-circle" aria-hidden="true"></i> + Special Character (!@#$%^&*) + </span> + </li> + <li class=""> + <span class="eight-character"> + <i class="fas fa-circle" aria-hidden="true"></i> + Atleast 8 Character + </span> + </li> + </ul> + </div> + </div> + </div> </div> <div class="form-group" style="background:#00c0ff;padding: 10px"> <label for="password2">PASSWORD (CONFIRM)</label> @@ -52,8 +95,8 @@ </div> <div class="d-flex"> <div></div><div style="margin: auto"></div> - <button type="submit" class="red-button centered-text" style="border:none;margin: auto;width:80px">Submit</button> - <div class="blue-button centered-text" style="padding-top:5px"> + <button type="submit" class="red-button centered-text" style="border:none;margin: auto;width:80px">SUBMIT</button> + <div class="blue-button centered-text" style="padding-top:12px"> <a class="nav-link" href="/login">ALREADY PART OF THE FAMILY? CLICK HERE TO LOGIN!</a> </div> <div style="margin: auto"></div><div></div> @@ -63,3 +106,7 @@ </div> </div> {% endblock %} + +{% block scripts %} + <script src="../static/js/password.js"></script> +{% endblock %} diff --git a/store/views.py b/store/views.py index 8b727946a706196c9d290c81bb80dbf0bc5b0935..dcf03c3f595e5babf3b6b9b0f5be0065caf722e3 100644 --- a/store/views.py +++ b/store/views.py @@ -68,45 +68,6 @@ def checkout(): return render_template("checkout.html", user=current_user, products=getProducts()) -@views.route('/creamer', methods=['GET', 'POST']) -def creamer(): - if request.method == 'POST': - - if request.form.get('delete'): - creamer = getCreamer() - for review in creamer.reviews: - if review.user[0] == current_user: - db.session.delete(review) - db.session.commit() - - elif request.form.values(): - - if not searchReviews(getCreamer().shorthand): - rating = request.form.get('rating') - description = request.form.get('review') - - creamer = getCreamer() - new_review = Review(user=[current_user], description=description, rating=rating) - creamer.reviews.append(new_review) - db.session.commit() - flash(new_review.user[0].name, category='success') - else: - flash("You have already reviewed this product!", category='error') - - else: - product = getCreamer() - basket_item = checkItem(current_user, product) - - if basket_item: - basket_item.quantity = basket_item.quantity + 1 - else: - basket_item = Basket(user_id=current_user.id, item=[product], quantity=1) - db.session.add(basket_item) - db.session.commit() - flash('Item added to cart!', category='success') - - return render_template("creamer.html", user=current_user, product=getCreamer()) - @views.route('/delete-item', methods=['POST']) def deleteItem(): @@ -131,5 +92,24 @@ def deleteItem(): def flashMessage(): message = json.loads(request.get_data()) message = message['message'] - flash(message, category='success') + category = message['type'] + flash(message, category=category) return jsonify({}) + +@views.route('/checkout-auth', methods=['POST']) +def checkoutAuth(): + if current_user.basket: + return jsonify({"check": "passed"}) + else: + flash('Basket is empty!', category='error') + return jsonify({}) + +@views.route('/checkout-pay', methods=['POST']) +def checkoutPay(): + + for basket in current_user.basket: + db.session.delete(basket) + db.session.commit() + flash('Payment successful!', category='success') + redirect(url_for('views.home')) + return jsonify({}) \ No newline at end of file