diff --git a/.github/workflows/docker-build_push.yml b/.github/workflows/docker-build_push.yml index 9d68532..ed4ef23 100644 --- a/.github/workflows/docker-build_push.yml +++ b/.github/workflows/docker-build_push.yml @@ -9,22 +9,32 @@ on: - 'dockerfile' jobs: - build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - name: Build the Docker image - run: docker build . --file dockerfile --tag k3nd0x/piglet:latest - - uses: docker/login-action@v2 - with: - username: ${{ secrets.DOCKER_USER }} - password: ${{ secrets.DOCKER_KEY }} - - name: Push the image - run: | - export DOCKER_BUILDKIT=0 - export COMPOSE_DOCKER_CLI_BUILD=0 - docker push k3nd0x/piglet:latest + - uses: actions/checkout@v3 + - name: Get latest release tag + id: get_tag + run: | + echo "::set-output name=tag::$(git describe --tags --abbrev=0)" + - name: Build the Docker image with latest release tag + run: docker build . --file dockerfile --tag k3nd0x/piglet:${{ steps.get_tag.outputs.tag }} + - name: Tag the image as latest + run: docker tag k3nd0x/piglet:${{ steps.get_tag.outputs.tag }} k3nd0x/piglet:latest + - uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKER_USER }} + password: ${{ secrets.DOCKER_KEY }} + - name: Push the image with latest release tag + run: | + export DOCKER_BUILDKIT=0 + export COMPOSE_DOCKER_CLI_BUILD=0 + docker push k3nd0x/piglet:${{ steps.get_tag.outputs.tag }} + - name: Push the image with latest tag + run: | + export DOCKER_BUILDKIT=0 + export COMPOSE_DOCKER_CLI_BUILD=0 + docker push k3nd0x/piglet:latest run-compose: needs: build diff --git a/.gitignore b/.gitignore index 93ebaa3..3f022a2 100644 --- a/.gitignore +++ b/.gitignore @@ -134,3 +134,6 @@ webapp/celerybeat-schedule.dir webapp/celerybeat-schedule.pag webapp/config/redis/dump.rdb docker-compose-dev.yml +dockerfile-dev +webapp/app/views/pictures +!webapp/app/views/pictures/default.png diff --git a/README.md b/README.md index de99e36..15f46f4 100644 --- a/README.md +++ b/README.md @@ -86,10 +86,6 @@ Password: `admin` - password change over webui - SQLite as database #10 -# Known issues -- Site is flashing white at reload when darkmode is active https://github.com/k3nd0x/piglet/issues/1 -- Nav Menue is popping out at reload when its in mini mode https://github.com/k3nd0x/piglet/issues/2 - # Disclaimer I started to build this project at the beginning of my programming career so please be gentle if something is not working as expected. diff --git a/webapp/api/routes/admin.py b/webapp/api/routes/admin.py index c80d12b..f856ed1 100644 --- a/webapp/api/routes/admin.py +++ b/webapp/api/routes/admin.py @@ -23,7 +23,7 @@ import time import logging -from .functs import hex_color, random_name +from .functs import hex_color, random_name,random_image @admin.on_event("startup") @@ -47,13 +47,16 @@ async def startup_event(): time.sleep(15) name, surname = random_name() + image,image_name = random_image() + if image: + image.save(f'app/views/pictures/{image_name}') inserts = [ """INSERT IGNORE INTO months VALUES (2,"February"),(3,"March"),(4,"April"),(5,"May"),(6,"June"),(7,"July"),(8,"August"),(9,"September"),(10,"October"),(11,"November"),(12,"December"),(1,"January")""", """INSERT IGNORE INTO pig_budgets VALUES (100,0,"Default",0,"3ec5d92868964bfbbf223ca88f379ee9","USD")""", f"""INSERT IGNORE INTO pig_category VALUES (1,"Groceries",1,1,100,"{hex_color()}")""", """INSERT IGNORE INTO pig_notitype VALUES (1,"order","Money"),(2,"category","Category"),(3,"budget","Budget")""", """INSERT IGNORE INTO pig_notiobj VALUES (1,'added','added'),(2,'removed','removed'),(3,'joined','joined'),(4,'shared','shared')""", - f'''INSERT IGNORE INTO registered_user VALUES (1,"admin@{domain}",1,"864fd3978f508ef03a3e9c24aef43b639d7725c15e08eeaf961a9b81c3adc097:0b108f78bca548fa8fa2721e46d83150","{name}","{surname}","default.png",NULL,"{hex_color()}","7eb304283ead5f6",100,10000,1)''', + f'''INSERT IGNORE INTO registered_user VALUES (1,"admin@{domain}",1,"864fd3978f508ef03a3e9c24aef43b639d7725c15e08eeaf961a9b81c3adc097:0b108f78bca548fa8fa2721e46d83150","{name}","{surname}","{image_name}",NULL,"{hex_color()}","7eb304283ead5f6",100,10000,1)''', """INSERT IGNORE into pig_userbudgets values (1,100,1)""", ] diff --git a/webapp/api/routes/budget.py b/webapp/api/routes/budget.py index d2eec00..ec6849d 100644 --- a/webapp/api/routes/budget.py +++ b/webapp/api/routes/budget.py @@ -18,12 +18,15 @@ budget = APIRouter() @budget.get("/") -async def _get(current_user = Depends(get_current_user)): +async def _get(current_user = Depends(get_current_user),all: Optional[bool] = False): mysql = sql() - query = f'''select pig_budgets.*, pig_userbudgets.joined from pig_budgets JOIN pig_userbudgets on pig_budgets.id = pig_userbudgets.budget_id where pig_userbudgets.user_id = {current_user["id"]} order by joined''' + if not all: + query = f'''select pig_budgets.*, pig_userbudgets.joined from pig_budgets JOIN pig_userbudgets on pig_budgets.id = pig_userbudgets.budget_id where pig_userbudgets.user_id = {current_user["id"]} and pig_userbudgets.joined = 1 order by joined''' + else: + query = f'''select pig_budgets.*, pig_userbudgets.joined from pig_budgets JOIN pig_userbudgets on pig_budgets.id = pig_userbudgets.budget_id where pig_userbudgets.user_id = {current_user["id"]} order by joined''' response = mysql.get(query) - mysql.close() + return response @budget.post("/add") @@ -82,56 +85,3 @@ async def _leave(budgetid: str, force: bool, current_user = Depends(get_current_ return True, "Budget left" else: return False, "You cannot leave your last budget" - - - - #bid_mapping = current_user["bid_mapping"] - - #query = '''select b0,b1,b2,b3 from pig_bidmapping where id=(select bid_mapping from registered_user where id={})'''.format(userid) - - #empty = 0 - - #for _k,_v in mysql.get(query)[0].items(): - - # if _v != None: - # empty += 1 - - #if empty <= 1: - # return False, "You cannot leave your last budget" - #else: - # query = '''update pig_bidmapping set b0=NULL where b0={budgetid} and id={bid}'''.format(budgetid=budgetid,bid=bid_mapping) - # query1 = '''update pig_bidmapping set b1=NULL where b1={budgetid} and id={bid}'''.format(budgetid=budgetid,bid=bid_mapping) - # query2 = '''update pig_bidmapping set b2=NULL where b2={budgetid} and id={bid}'''.format(budgetid=budgetid,bid=bid_mapping) - # query3 = '''update pig_bidmapping set b3=NULL where b3={budgetid} and id={bid}'''.format(budgetid=budgetid,bid=bid_mapping) - # - # response = [] - # for i in query,query1,query2,query3: - # response.append(mysql.post(i)) - - # query = '''select mode from pig_budgets where id={budgetid}'''.format(budgetid=budgetid) - - # response = mysql.get(query) - - # mode = int(response[0]["mode"]) - - # if mode == 0: - # if force: - # query = '''delete from pig_budgets where id={}'''.format(budgetid) - # response = mysql.post(query) - # return True, "Budget deleted" - # else: - # query = '''select budget_id from pig_orders where budget_id={}'''.format(budgetid) - # if mysql.get(query) == []: - # query = '''select budget_id from pig_category where budget_id={}'''.format(budgetid) - # if mysql.get(query) == []: - # query = '''delete from pig_budgets where id={}'''.format(budgetid) - # response = mysql.post(query) - # return True, "Budget deleted" - # else: - # return False, "Categories still in budget" - # else: - # return False, "Orders still in budget" - # else: - # return True, "Budget in use" - - diff --git a/webapp/api/routes/functs.py b/webapp/api/routes/functs.py index 8c17f79..a27778d 100644 --- a/webapp/api/routes/functs.py +++ b/webapp/api/routes/functs.py @@ -4,7 +4,10 @@ import random as random from datetime import datetime, timedelta from dateutil import parser -import random +from PIL import Image +import hashlib +import time + def get_budgetid(user_id): mysql = sql() query = '''select budget_id from registered_user where id="{}"'''.format(user_id) @@ -90,3 +93,35 @@ def random_name(): random_name = random.choice(names) random_surname = random.choice(surnames) return random_name, random_surname + + +def random_image(size=8, scale=32): + try: + image = Image.new('RGB', (size, size), 'white') + pixels = image.load() + + # Generate random colors + colors = [( + random.randint(0, 255), + random.randint(0, 255), + random.randint(0, 255) + ) for _ in range(size * size // 2)] + + + for x in range(size // 2): + for y in range(size): + color = random.choice(colors) + pixels[x, y] = color + pixels[size - 1 - x, y] = color # Mirror the left half to the right half + + image = image.resize((size * scale, size * scale), Image.NEAREST) + + current_time = str(time.time()) + hash_object = hashlib.sha256(current_time.encode()) + name = hash_object.hexdigest() + + name = f'gen_{name}.png' + + return image,name + except: + return None,"default.png" \ No newline at end of file diff --git a/webapp/api/routes/user.py b/webapp/api/routes/user.py index ae47bd3..bc19697 100644 --- a/webapp/api/routes/user.py +++ b/webapp/api/routes/user.py @@ -13,7 +13,7 @@ from .mysql import sql from .sendmail import mail -from .functs import hex_color, get_timestamp, random_name +from .functs import hex_color, get_timestamp, random_name,random_image from .admin import oauth2_scheme,get_current_user user = APIRouter() @@ -48,9 +48,10 @@ async def register_user(registerUser: registerUser): color = hex_color() name, surname = random_name() - - query = '''insert into registered_user( id, email,name, surname, password,color, shamail,budget_id) select max( id ) + 1, "{}", "{}", "{}", "{}", "{}", "{}","{}" from registered_user'''.format(email, name,surname, password,color,shamail,budget_id) - print(query,flush=True) + image,image_name = random_image() + if image: + image.save(f'app/views/pictures/{image_name}') + query = '''insert into registered_user( id, email,name, surname, password,color, shamail,budget_id,image) select max( id ) + 1, "{}", "{}", "{}", "{}", "{}", "{}","{}","{}" from registered_user'''.format(email, name,surname, password,color,shamail,budget_id,image_name) return_value = mysql.post(query) user_id = mysql.lastrowid() @@ -93,19 +94,23 @@ async def login_user(current_user = Depends(get_current_user)): userid = current_user["id"] - query1 = f'''select id,email,verified,name,surname,color,image,budget_id from registered_user where id={userid}''' + query = '''select r.id,r.email,r.verified,r.name,r.surname,r.color,r.image,r.budget_id,r.bid_mapping,pig_bidmapping.b0,pig_bidmapping.b1,pig_bidmapping.b2,pig_bidmapping.b3 from registered_user as r join pig_bidmapping on pig_bidmapping.id = r.bid_mapping where r.email="{}"'''.format(email) + query1 = f'''select id,email,verified,name,surname,color,image from registered_user where id={userid}''' query2 = f'''select budget_id from pig_userbudgets where user_id={userid} and joined=1''' user_data = mysql.get(query1)[0] budget_ids = mysql.get(query2) + budgets = [] for i in budget_ids: budgets.append(i["budget_id"]) + budget_id = min(budgets) user_data["budgetids"] = budgets + user_data["budget_id"] = budget_id response = user_data diff --git a/webapp/app/views/budget.py b/webapp/app/views/budget.py index d1ab746..f05782d 100644 --- a/webapp/app/views/budget.py +++ b/webapp/app/views/budget.py @@ -71,10 +71,9 @@ def budget(): user_id = session["userid"] noticount, notilist, notifications = get_notis(pigapi) - s, my_budgets = pigapi.get(url="budget/") + s, my_budgets = pigapi.get(url="budget/?all=true") s, users = pigapi.get(url=f'share/availusers/{budget_id}') - session["budgets"] = my_budgets if request.method == "GET": return render_template("budget_settings.html", my_budgets=my_budgets,availusers=users,notifications=notifications, notilist=notilist, noticount=noticount) @@ -146,14 +145,16 @@ def joinBudget(): s, response = pigapi.post(url=f'share/updatejoin?budget_id={bid}&join={join}') - pigapi.close() if s: string = "You joined a budget" + s, my_budgets = pigapi.get(url="budget/") + session["budgets"] = my_budgets flash_message = {string: "success"} else: string = "Budget joining failed" flash_message = {string: "danger"} + pigapi.close() flash(flash_message) return redirect(url_for('budget')) diff --git a/webapp/app/views/pictures/bc0bff3c0e0ad5d2c452f92c092fdbdbf40b446924aa0e8237fb4518432f70c8.jpg b/webapp/app/views/pictures/bc0bff3c0e0ad5d2c452f92c092fdbdbf40b446924aa0e8237fb4518432f70c8.jpg deleted file mode 100644 index 6310b51..0000000 Binary files a/webapp/app/views/pictures/bc0bff3c0e0ad5d2c452f92c092fdbdbf40b446924aa0e8237fb4518432f70c8.jpg and /dev/null differ diff --git a/webapp/app/views/pictures/d9280b5e00b9266741c9bcf8332fb94b7945cc8550c71b0ac06e066aa9cbcab7.PNG b/webapp/app/views/pictures/d9280b5e00b9266741c9bcf8332fb94b7945cc8550c71b0ac06e066aa9cbcab7.PNG deleted file mode 100644 index d6c5446..0000000 Binary files a/webapp/app/views/pictures/d9280b5e00b9266741c9bcf8332fb94b7945cc8550c71b0ac06e066aa9cbcab7.PNG and /dev/null differ diff --git a/webapp/app/views/register.py b/webapp/app/views/register.py index 4f7dfa7..4d188ff 100644 --- a/webapp/app/views/register.py +++ b/webapp/app/views/register.py @@ -84,7 +84,7 @@ def login(): session["surname"] = response["surname"] else: session["surname"] = email - s, my_budgets = pigapi.get(url="budget/",data=response["id"]) + s, my_budgets = pigapi.get(url="budget/") if s: session["month"] = "None" session["year"] = "None" diff --git a/webapp/app/views/static/assets/css/SIdebar-Responsive-2-1.css b/webapp/app/views/static/assets/css/SIdebar-Responsive-2-1.css new file mode 100644 index 0000000..4024340 --- /dev/null +++ b/webapp/app/views/static/assets/css/SIdebar-Responsive-2-1.css @@ -0,0 +1,326 @@ +body, html { + height: 100%; +} + +.container-main .row { + padding: 0px; + margin: 0px; +} + +nav.sidebar.navbar { + border-radius: 0px; +} + +nav.sidebar, .container-main { + -webkit-transition: margin 200ms ease-out; + -moz-transition: margin 200ms ease-out; + -o-transition: margin 200ms ease-out; + transition: margin 200ms ease-out; +} + +.menu-icon { + font-size: 20px; +} + +.navbar-m2p { + background-color: #00464f; + border-color: #00464f; +} + +.navbar-m2p span, .navbar-m2p a { + color: #FFFFFF; +} + +.active .dropdown-toggle { + background-color: rgba(126, 169, 39, 0.3); + border-color: rgba(126, 169, 39, 0.3); +} + +.nav .open > a { + background-color: rgba(126, 169, 39, 0.3); + border-color: rgba(126, 169, 39, 0.3); +} + +.nav li > a:hover, .nav .open > a:hover, .nav li > a:focus, .nav .open > a:focus, .nav li > a:active, .nav .open > a:active { + background-color: rgba(126, 169, 39, 0.3); +} + +.nav .open ul > li { + background-color: rgba(126, 169, 39, 0.4); +} + +.navbar-m2p .navbar-nav .open .dropdown-menu > li > a { + color: #FFFFFF; + padding: 10px; +} + +.navbar-m2p .navbar-nav .active a { + margin-left: -1px; + border-left: 5px solid #7ea927; +} + +.navbar-toggle { + background-color: transparent; + border: 1px solid rgba(126, 169, 39, 0.4); +} + +.navbar-toggle .icon-bar, .navbar-toggle .icon-bar + .icon-bar { + background-color: #7ea927; +} + +nav:hover .forAnimate { + opacity: 1; +} + +.navbar-m2p .dropdown-menu { + padding: 0px; +} + +.nav li.separator { + padding: 10px 15px; + text-transform: uppercase; + background-color: rgba(0, 0, 39, 0.2); + color: rgba(208, 208, 207, 0.4); +} + +@media (min-width: 768px) { + .container-main { + position: absolute; + width: calc(100% - 40px); + margin-left: 40px; + float: right; + } +} + +@media (min-width: 768px) { + nav.sidebar:hover + .container-main { + margin-left: 300px; + } +} + +@media (min-width: 768px) { + nav.sidebar.navbar.sidebar > .container .navbar-brand, .navbar > .container-fluid .navbar-brand { + margin-left: 0px; + } +} + +@media (min-width: 768px) { + nav.sidebar .navbar-brand, nav.sidebar .navbar-header { + text-align: center; + width: 100%; + margin-left: 0px; + font-size: 25px; + line-height: 27px; + } +} + +@media (min-width: 768px) { + nav.sidebar a { + padding-right: 13px; + } +} + +@media (min-width: 768px) { + nav.sidebar .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} + +@media (min-width: 768px) { + nav.sidebar .navbar-collapse, nav.sidebar .container-fluid { + padding: 0 0px 0 0px; + } +} + +@media (min-width: 768px) { + nav.sidebar { + width: 300px; + height: 100%; + margin-left: -260px; + float: left; + z-index: 8000; + margin-bottom: 0px; + } +} + +@media (min-width: 768px) { + nav.sidebar li { + width: 100%; + } +} + +@media (min-width: 768px) { + nav.sidebar:hover { + margin-left: 0px; + } +} + +@media (min-width: 768px) { + .forAnimate { + opacity: 0; + } +} + +@media (min-width: 1330px) { + .container-main { + width: calc(100% - 300px); + margin-left: 300px; + } +} + +@media (min-width: 1330px) { + nav.sidebar { + margin-left: 0px; + float: left; + } +} + +@media (min-width: 1330px) { + nav.sidebar .forAnimate { + opacity: 1; + } +} + +#sideBarImg { + /*width: 100%;*/ + height: 50px; +} + + +nav.sidebar.navbar { + border-radius: 0px; +} + +nav.sidebar, .container-main { + -webkit-transition: margin 200ms ease-out; + -moz-transition: margin 200ms ease-out; + -o-transition: margin 200ms ease-out; + transition: margin 200ms ease-out; +} + +.menu-icon { + font-size: 20px; +} + +.navbar-m2p { + background-color: #00464f; + border-color: #00464f; +} + +.navbar-m2p span, .navbar-m2p a { + color: #FFFFFF; +} + +.nav .open > a { + background-color: rgba(126, 169, 39, 0.3); + border-color: rgba(126, 169, 39, 0.3); +} + +.nav li > a:hover, .nav .open > a:hover, .nav li > a:focus, .nav .open > a:focus, .nav li > a:active, .nav .open > a:active { + background-color: rgba(126, 169, 39, 0.3); +} + +.navbar-m2p .navbar-nav .active a { + margin-left: -1px; + border-left: 5px solid #7ea927; +} + +.navbar-toggle { + background-color: transparent; + border: 1px solid rgba(126, 169, 39, 0.4); +} + +.navbar-toggle .icon-bar, .navbar-toggle .icon-bar + .icon-bar { + background-color: #7ea927; +} + +nav:hover .forAnimate { + opacity: 1; +} + +.navbar-m2p .dropdown-menu { + padding: 0px; +} + +.nav li.separator { + padding: 10px 15px; + text-transform: uppercase; + background-color: rgba(0, 0, 39, 0.2); + color: rgba(208, 208, 207, 0.4); +} + +@media (min-width: 768px) { + nav.sidebar .navbar-brand, nav.sidebar .navbar-header { + text-align: center; + width: 100%; + margin-left: 0px; + font-size: 25px; + line-height: 27px; + } +} + +@media (min-width: 768px) { + nav.sidebar a { + padding-right: 13px; + } +} + +@media (min-width: 768px) { + nav.sidebar .navbar-collapse, nav.sidebar .container-fluid { + padding: 0 0px 0 0px; + } +} + +@media (min-width: 768px) { + nav.sidebar { + width: 300px; + height: 100%; + margin-left: -260px; + float: left; + z-index: 8000; + margin-bottom: 0px; + } +} + +@media (min-width: 768px) { + nav.sidebar li { + width: 100%; + } +} + +@media (min-width: 768px) { + nav.sidebar:hover { + margin-left: 0px; + } +} + +@media (min-width: 768px) { + .forAnimate { + opacity: 0; + } +} + +@media (min-width: 1330px) { + nav.sidebar { + margin-left: 0px; + float: left; + } +} + +@media (min-width: 1330px) { + nav.sidebar .forAnimate { + opacity: 1; + } +} + +#sideBarImg { + /*width: 100%;*/ + height: 50px; +} \ No newline at end of file diff --git a/webapp/app/views/static/assets/css/custom.css b/webapp/app/views/static/assets/css/custom.css new file mode 100644 index 0000000..a1d58c5 --- /dev/null +++ b/webapp/app/views/static/assets/css/custom.css @@ -0,0 +1,81 @@ +:root { + --header-height: 3rem; + --nav-width: 68px; + --first-color: #4c5af7; + --first-color-light: #7984fd; + --second-color: #ff9edf; + --white-color: #F7F6FB; + --black-color: #212529; + --black-color-lighter: #949494af; + --body-font: 'Nunito', sans-serif; + --normal-font-size: 1rem; + --z-fixed: 100; + --form-control-color: #b3b3b3af; +} +.hidden { + display: none; +} +.text-piglet { + color: var(--first-color); +} + +.btn-piglet { + background-color: var(--first-color); + color: #fff; + border-radius: 4px; + width: 100%; + height: 45px; +} +.btn-outline-piglet { + color: var(--font-color); + border-color: var(--first-color); + --bs-btn-color: var(--font-color); + --bs-btn-border-color: var(--first-color); + --bs-btn-hover-bg: var(--first-color-light); + --bs-btn-hover-border-color: var(--first-color); + --bs-btn-active-bg: var(--bkg-color); + --bs-btn-active-border-color: var(--first-color); +} + +.btn-check:checked+.btn { + background-color: var(--first-color); + border: none; +} +.btn-piglet:hover { + background-color: var(--first-color-light); + color: #fff +} + +.form-control_piglet { + background: var(--form-control-color); + border: none; + border-radius: 3px; + box-shadow: none; + outline: none; + color: inherit; + height: 45px; + margin-right: 0px; + min-width: 250px; + padding: .375rem .75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; + border-radius: 4px; + text-align: center; +} + + +.header { + background-color: var(--bkg-color); + +} + + +.table-piglet { + table-layout: fixed; + text-align: center; +} \ No newline at end of file diff --git a/webapp/app/views/static/assets/css/navbar.css b/webapp/app/views/static/assets/css/navbar.css new file mode 100644 index 0000000..cd4adac --- /dev/null +++ b/webapp/app/views/static/assets/css/navbar.css @@ -0,0 +1,217 @@ + +*, ::before, ::after { + box-sizing: border-box; +} + +body { + position: relative; + margin: var(--header-height) 0 0 0; + padding: 0 1rem; + font-family: var(--body-font); + font-size: var(--normal-font-size); +} + +a { + text-decoration: none; +} + +.header { + width: 100%; + height: var(--header-height); + position: fixed; + top: 0; + left: 0; + display: flex; + align-items: center; + justify-content: space-between; + padding: 0 1rem; + background-color: var(--white-color); + z-index: var(--z-fixed); +} + +.header_toggle { + color: var(--first-color); + font-size: 1.5rem; + cursor: pointer; +} + +.header_img { + width: 35px; + height: 35px; + display: flex; + justify-content: center; + border-radius: 50%; + overflow: hidden; +} + +.header_img img { + width: 40px; +} + +.l-navbar { + position: fixed; + top: 0; + left: -30%; + width: var(--nav-width); + height: 100vh; + padding: .5rem 1rem 0 0; + z-index: var(--z-fixed); + background: var(--first-color); + color: var(--white-color); +} + +.nav { + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + overflow: hidden; +} + +.nav_logo, .nav_link { + display: grid; + grid-template-columns: max-content max-content; + align-items: center; + column-gap: 1rem; + padding: .5rem 0 .5rem 1.5rem; +} + +.nav_logo { + margin-bottom: 2rem; +} + +.nav_logo-icon { + font-size: 1.25rem; + color: var(--white-color); +} +.nav_logo-img { + width: 25px; + height: 25px; +} +.nav_logo-img-rounded { + width: 25px; + height: 25px; + border-radius: 30px; +} + +.nav_logo-name { + color: var(--white-color); + font-weight: 700; +} + +.nav_link { + position: relative; + color: var(--bs-gray-400); + margin-bottom: 1.5rem; +} + +.nav_link:hover { + color: var(--white-color); +} + +.nav_icon { + font-size: 1.25rem; +} + +.show { + left: 0; +} + +.body-pd { + padding-left: calc(var(--nav-width) + 1rem); +} + +.active { + color: var(--white-color); +} + +.active::before { + content: ''; + position: absolute; + left: 0; + width: 2px; + height: 32px; + background-color: var(--white-color); +} + +.height-100 { + height: 100vh; +} + +@media screen and (min-width: 768px) { + body { + margin: calc(var(--header-height) + 1rem) 0 0 0; + padding-left: calc(var(--nav-width) + 2rem); + } +} + +@media screen and (min-width: 768px) { + .header { + height: calc(var(--header-height) + 1rem); + padding: 0 2rem 0 calc(var(--nav-width) + 2rem); + } +} + +@media screen and (min-width: 768px) { + .header_img { + width: 40px; + height: 40px; + } +} + +@media screen and (min-width: 768px) { + .header_img img { + width: 45px; + } +} + +@media screen and (min-width: 768px) { + .l-navbar { + left: 0; + padding: 1rem 1rem 0 0; + } +} + +@media screen and (min-width: 768px) { + .show-nav { + width: calc(var(--nav-width) + 156px); + } +} + +@media screen and (min-width: 768px) { + .body-pd { + padding-left: calc(var(--nav-width) + 188px); + } +} + +.btn-check:active + .btn-primary, .btn-check:checked + .btn-primary, .btn-primary.active, .btn-primary:active, .show > .btn-primary.dropdown-toggle { + color: var(--first-color-light); + background-color: #0a58ca; + border-color: #0a53be; +} + +.btn-primary { + color: var(--first-color-light); + background-color: var(--first-color); + border-color: var(--first-color); +} + +.badge { + display: inline-block; + padding: .35em .65em; + font-size: 12px; + font-weight: 700; + /*line-height: 1;*/ + background: var(--bs-red); + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 5px; + position: absolute; + color: var(--bs-light); +} + +a:hover { + color: var(--first-color-light); +} + diff --git a/webapp/app/views/static/assets/img/default.png b/webapp/app/views/static/assets/img/default.png new file mode 100644 index 0000000..2b83185 Binary files /dev/null and b/webapp/app/views/static/assets/img/default.png differ diff --git a/webapp/app/views/static/assets/img/logo_v2.png b/webapp/app/views/static/assets/img/logo_v2.png new file mode 100644 index 0000000..57c8a35 Binary files /dev/null and b/webapp/app/views/static/assets/img/logo_v2.png differ diff --git a/webapp/app/views/static/assets/js/footer.js b/webapp/app/views/static/assets/js/footer.js new file mode 100644 index 0000000..f401b47 --- /dev/null +++ b/webapp/app/views/static/assets/js/footer.js @@ -0,0 +1,18 @@ + +document.addEventListener("DOMContentLoaded", function() { + const currentVersion = "v1.3" + const owner = 'k3nd0x' + const repo = 'piglet' + const p_version = document.getElementById('version') + fetch(`https://api.github.com/repos/${owner}/${repo}/releases/latest`) + .then(response => response.json()) + .then(data => { + const latestVersion = data.tag_name; // Assumes the version is stored in the tag_name field + if (currentVersion !== latestVersion) { + p_version.textContent = `New Version available at Github '${latestVersion}'`; + } else { + p_version.textContent = `Piglet - Version ${currentVersion}`; + } + }) + .catch(error => console.error('Error fetching the latest version:', error)); +}); \ No newline at end of file diff --git a/webapp/app/views/static/assets/js/lightswitch.js b/webapp/app/views/static/assets/js/lightswitch.js new file mode 100644 index 0000000..2db15e0 --- /dev/null +++ b/webapp/app/views/static/assets/js/lightswitch.js @@ -0,0 +1,56 @@ + document.addEventListener("DOMContentLoaded", function() { + const body = document.body; + let header = null; + let table = null; + try { + header = document.getElementById('header'); + table = document.getElementsByClassName('table-piglet') + } catch (error) { + header = null; + table = null; + } + const html = document.documentElement; + + function switchLight() { + const theme = localStorage.getItem("theme") || "light" + if ( header !== null ){ + header.classList.toggle("dark") + } + if ( theme === "light") { + html.setAttribute('data-bs-theme', 'dark') + localStorage.setItem("theme", "dark"); + for (var i = 0; i < table.length; i++) { + table[i].classList.add('table-dark') + } + } else if ( theme === "dark") { + for (var i = 0; i < table.length; i++) { + table[i].classList.remove('table-dark') + } + localStorage.setItem("theme", 'light') + html.removeAttribute('data-bs-theme') + } + } + try { + document.getElementById('light-switch').addEventListener('click', switchLight); + } catch ( error ){ + } + + const theme = localStorage.getItem("theme") || "light" + if ( theme == "dark"){ + body.classList.toggle("dark") + + if (header !== null ) { + header.classList.toggle("dark") + } + html.setAttribute('data-bs-theme', 'dark') + for (var i = 0; i < table.length; i++) { + table[i].classList.add('table-dark') + } + } else { + for (var i = 0; i < table.length; i++) { + table[i].classList.remove('table-dark') + } + html.removeAttribute('data-bs-theme') + + } + }); \ No newline at end of file diff --git a/webapp/app/views/static/assets/js/navbar.js b/webapp/app/views/static/assets/js/navbar.js new file mode 100644 index 0000000..92e1fd6 --- /dev/null +++ b/webapp/app/views/static/assets/js/navbar.js @@ -0,0 +1,54 @@ + document.addEventListener("DOMContentLoaded", function() { + + const nav_bar = document.getElementById('nav-bar'); + const nav_list = document.getElementById('nav-list'); + const header = document.getElementById('header'); + const body = document.body; + const chevron = document.getElementById('chevron-icon'); + + menu_mode = localStorage.getItem("menu") || "maxi" + + function closeMenue() { + menu_mode = localStorage.getItem("menu") || "maxi" + + if ( menu_mode == "mini") { + localStorage.setItem("menu", "maxi"); + } else { + localStorage.setItem("menu", 'mini') + } + nav_bar.classList.toggle('show-nav'); + header.classList.toggle('body-pd'); + body.classList.toggle('body-pd'); + + if ( chevron.classList.contains('bx-chevron-left') ) { + chevron.classList.remove('bx-chevron-left') + chevron.classList.add('bx-chevron-right') + } else { + chevron.classList.remove('bx-chevron-right') + chevron.classList.add('bx-chevron-left') + + } + nav_list.classList.toggle('show-nav'); + + + } + + document.getElementById('close-menu').addEventListener('click', closeMenue); + + if ( menu_mode == "mini" ) { + nav_bar.classList.remove('show-nav'); + header.classList.remove('body-pd'); + body.classList.remove('body-pd'); + chevron.classList.remove('bx-chevron-left') + chevron.classList.add('bx-chevron-right') + nav_list.classList.remove('show-nav'); + } else { + nav_bar.classList.add('show-nav'); + header.classList.add('body-pd'); + body.classList.add('body-pd'); + chevron.classList.add('bx-chevron-left') + chevron.classList.remove('bx-chevron-right') + nav_list.classList.add('show-nav'); + + } +}); \ No newline at end of file diff --git a/webapp/app/views/static/assets/js/randomcolor.js b/webapp/app/views/static/assets/js/randomcolor.js new file mode 100644 index 0000000..de6f6b8 --- /dev/null +++ b/webapp/app/views/static/assets/js/randomcolor.js @@ -0,0 +1,13 @@ +function generateRandomHexColor() { + const randomInt = Math.floor(Math.random() * 16777215); + const hexColor = '#' + randomInt.toString(16).padStart(6, '0'); + return hexColor; +} +function setRandomColor() { + const randomColor = generateRandomHexColor(); + const colorPickerElement = document.getElementById('colorpicker'); + if (colorPickerElement) { + colorPickerElement.value = randomColor; + } +} +window.addEventListener('load', setRandomColor); \ No newline at end of file diff --git a/webapp/app/views/static/custom.css b/webapp/app/views/static/custom.css deleted file mode 100644 index ee586da..0000000 --- a/webapp/app/views/static/custom.css +++ /dev/null @@ -1,163 +0,0 @@ -.separator { - display: flex; - align-items: center; -} - -.separator h6 { - padding: 0 0.6rem; - /* creates the space */ -} - -.separator .line { - flex: 1; - height: 1px; - background-color: rgb(90, 90, 90); -} - -.text-piglet { - color: #ff9edf -} - -.btn-piglet { - background-color: #2739ff; - color: #fff; - border-radius: 4px; - width: 100%; - height: 45px; -} - -.btn-piglet:hover { - color: #fff; - background-color: #4554f7; -} - -.btn-link { - font-weight: 400; - color: #2739ff; -} - -.text-piglet { - color: #2739ff; -} - -.page-item.active .page-link { - z-index: 3; - color: #fff; - background-color: #2739ff; - border-color: #0d6efd; -} - -.page-link { - position: relative; - display: block; - color: #2739ff; - text-decoration: none; - background-color: #fff; - border: 1px solid #dee2e6; - transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; -} - -.nav-tabs .nav-link-piglet.active { - color: #495057; - background-color: #fff; - border-color: #dee2e6 #dee2e6 #fff; -} - -.nav-tabs .nav-link-piglet:focus, -.nav-tabs .nav-link:hover { - border-color: #e9ecef #e9ecef #dee2e6; - isolation: isolate; -} - -.nav-tabs .nav-link-piglet { - margin-bottom: -1px; - background: 0 0; - background-color: rgba(0, 0, 0, 0); - border: 1px solid transparent; - border-top-color: transparent; - border-right-color: transparent; - border-bottom-color: transparent; - border-left-color: transparent; - border-top-left-radius: .25rem; - border-top-right-radius: .25rem; -} - -.nav-link-piglet:focus, -.nav-link-piglet:hover { - color: #0a58ca; -} - -.nav-link-piglet { - display: block; - padding: .5rem 1rem; - color: #2739ff; - text-decoration: none; - transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out; -} - -iframe, -object, -embed { - max-width: 100%; -} - -.form-control_piglet { - background: #eff1f4; - border: none; - border-radius: 3px; - box-shadow: none; - outline: none; - color: inherit; - height: 45px; - margin-right: 0px; - min-width: 250px; - padding: .375rem .75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #212529; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; - border-radius: .25rem; - transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; - border-radius: 4px; - text-align: center; -} - -.avatar { - vertical-align: middle; - width: 40px; - height: 40px; - border-radius: 50%; - margin-left: 10px; -} - -.avatar_big { - vertical-align: middle; - width: 150px; - height: 150px; - border-radius: 50%; - margin-left: 10px; -} - -.notification { - background-color: #00000; - color: white; - text-decoration: none; - padding: 15px 26px; - position: relative; - display: inline-block; - border-radius: 2px; -} - -.notification .badge { - position: absolute; - top: 10px; - right: 21px; - background: var(--bs-danger); - color: white; -} -.trflashgreen-bg { - background-color: rgb(119, 245, 119); /* Sets the background color of the table row to green */ -} \ No newline at end of file diff --git a/webapp/app/views/static/index/bootstrap/css/bootstrap.min.css b/webapp/app/views/static/index/bootstrap/css/bootstrap.min.css deleted file mode 100644 index 9868cde..0000000 --- a/webapp/app/views/static/index/bootstrap/css/bootstrap.min.css +++ /dev/null @@ -1,10993 +0,0 @@ -@charset "UTF-8"; - -/*! - * Bootstrap v5.1.0 (https://getbootstrap.com/) - * Copyright 2011-2021 The Bootstrap Authors - * Copyright 2011-2021 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-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-rgb: 33, 37, 41; - --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", 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 -} - -*, -::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; - background-color: currentColor; - border: 0; - opacity: .25 -} - -hr:not([size]) { - height: 1px -} - -.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[data-bs-original-title], -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: .2em; - background-color: #fcf8e3 -} - -sub, -sup { - position: relative; - font-size: .75em; - line-height: 0; - vertical-align: baseline -} - -sub { - bottom: -.25em -} - -sup { - top: -.5em -} - -a { - color: #0d6efd; - text-decoration: underline -} - -a:hover { - color: #0a58ca -} - -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; - direction: ltr; - unicode-bidi: bidi-override -} - -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: #d63384; - word-wrap: break-word -} - -a>code { - color: inherit -} - -kbd { - padding: .2rem .4rem; - font-size: .875em; - color: #fff; - background-color: #212529; - border-radius: .2rem -} - -kbd kbd { - padding: 0; - font-size: 1em; - font-weight: 700 -} - -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]::-webkit-calendar-picker-indicator { - display: none -} - -[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 -} - -::file-selector-button { - font: inherit -} - -::-webkit-file-upload-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 #dee2e6; - border-radius: .25rem; - 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 { - width: 100%; - padding-right: var(--bs-gutter-x, .75rem); - padding-left: var(--bs-gutter-x, .75rem); - 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(var(--bs-gutter-y) * -1); - margin-right: calc(var(--bs-gutter-x) * -.5); - margin-left: calc(var(--bs-gutter-x) * -.5) -} - -.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% - } - .row-cols-sm-auto>* { - flex: 0 0 auto; - width: auto - } - .row-cols-sm-1>* { - flex: 0 0 auto; - width: 100% - } - .row-cols-sm-2>* { - flex: 0 0 auto; - width: 50% - } - .row-cols-sm-3>* { - flex: 0 0 auto; - width: 33.3333333333% - } - .row-cols-sm-4>* { - flex: 0 0 auto; - width: 25% - } - .row-cols-sm-5>* { - flex: 0 0 auto; - width: 20% - } - .row-cols-sm-6>* { - flex: 0 0 auto; - width: 16.6666666667% - } - .col-sm-auto { - flex: 0 0 auto; - width: auto - } - .col-sm-1 { - flex: 0 0 auto; - width: 8.33333333% - } - .col-sm-2 { - flex: 0 0 auto; - width: 16.66666667% - } - .col-sm-3 { - flex: 0 0 auto; - width: 25% - } - .col-sm-4 { - flex: 0 0 auto; - width: 33.33333333% - } - .col-sm-5 { - flex: 0 0 auto; - width: 41.66666667% - } - .col-sm-6 { - flex: 0 0 auto; - width: 50% - } - .col-sm-7 { - flex: 0 0 auto; - width: 58.33333333% - } - .col-sm-8 { - flex: 0 0 auto; - width: 66.66666667% - } - .col-sm-9 { - flex: 0 0 auto; - width: 75% - } - .col-sm-10 { - flex: 0 0 auto; - width: 83.33333333% - } - .col-sm-11 { - flex: 0 0 auto; - width: 91.66666667% - } - .col-sm-12 { - flex: 0 0 auto; - width: 100% - } - .offset-sm-0 { - margin-left: 0 - } - .offset-sm-1 { - margin-left: 8.33333333% - } - .offset-sm-2 { - margin-left: 16.66666667% - } - .offset-sm-3 { - margin-left: 25% - } - .offset-sm-4 { - margin-left: 33.33333333% - } - .offset-sm-5 { - margin-left: 41.66666667% - } - .offset-sm-6 { - margin-left: 50% - } - .offset-sm-7 { - margin-left: 58.33333333% - } - .offset-sm-8 { - margin-left: 66.66666667% - } - .offset-sm-9 { - margin-left: 75% - } - .offset-sm-10 { - margin-left: 83.33333333% - } - .offset-sm-11 { - margin-left: 91.66666667% - } - .g-sm-0, - .gx-sm-0 { - --bs-gutter-x: 0 - } - .g-sm-0, - .gy-sm-0 { - --bs-gutter-y: 0 - } - .g-sm-1, - .gx-sm-1 { - --bs-gutter-x: 0.25rem - } - .g-sm-1, - .gy-sm-1 { - --bs-gutter-y: 0.25rem - } - .g-sm-2, - .gx-sm-2 { - --bs-gutter-x: 0.5rem - } - .g-sm-2, - .gy-sm-2 { - --bs-gutter-y: 0.5rem - } - .g-sm-3, - .gx-sm-3 { - --bs-gutter-x: 1rem - } - .g-sm-3, - .gy-sm-3 { - --bs-gutter-y: 1rem - } - .g-sm-4, - .gx-sm-4 { - --bs-gutter-x: 1.5rem - } - .g-sm-4, - .gy-sm-4 { - --bs-gutter-y: 1.5rem - } - .g-sm-5, - .gx-sm-5 { - --bs-gutter-x: 3rem - } - .g-sm-5, - .gy-sm-5 { - --bs-gutter-y: 3rem - } -} - -@media (min-width:768px) { - .col-md { - flex: 1 0 0% - } - .row-cols-md-auto>* { - flex: 0 0 auto; - width: auto - } - .row-cols-md-1>* { - flex: 0 0 auto; - width: 100% - } - .row-cols-md-2>* { - flex: 0 0 auto; - width: 50% - } - .row-cols-md-3>* { - flex: 0 0 auto; - width: 33.3333333333% - } - .row-cols-md-4>* { - flex: 0 0 auto; - width: 25% - } - .row-cols-md-5>* { - flex: 0 0 auto; - width: 20% - } - .row-cols-md-6>* { - flex: 0 0 auto; - width: 16.6666666667% - } - .col-md-auto { - flex: 0 0 auto; - width: auto - } - .col-md-1 { - flex: 0 0 auto; - width: 8.33333333% - } - .col-md-2 { - flex: 0 0 auto; - width: 16.66666667% - } - .col-md-3 { - flex: 0 0 auto; - width: 25% - } - .col-md-4 { - flex: 0 0 auto; - width: 33.33333333% - } - .col-md-5 { - flex: 0 0 auto; - width: 41.66666667% - } - .col-md-6 { - flex: 0 0 auto; - width: 50% - } - .col-md-7 { - flex: 0 0 auto; - width: 58.33333333% - } - .col-md-8 { - flex: 0 0 auto; - width: 66.66666667% - } - .col-md-9 { - flex: 0 0 auto; - width: 75% - } - .col-md-10 { - flex: 0 0 auto; - width: 83.33333333% - } - .col-md-11 { - flex: 0 0 auto; - width: 91.66666667% - } - .col-md-12 { - flex: 0 0 auto; - width: 100% - } - .offset-md-0 { - margin-left: 0 - } - .offset-md-1 { - margin-left: 8.33333333% - } - .offset-md-2 { - margin-left: 16.66666667% - } - .offset-md-3 { - margin-left: 25% - } - .offset-md-4 { - margin-left: 33.33333333% - } - .offset-md-5 { - margin-left: 41.66666667% - } - .offset-md-6 { - margin-left: 50% - } - .offset-md-7 { - margin-left: 58.33333333% - } - .offset-md-8 { - margin-left: 66.66666667% - } - .offset-md-9 { - margin-left: 75% - } - .offset-md-10 { - margin-left: 83.33333333% - } - .offset-md-11 { - margin-left: 91.66666667% - } - .g-md-0, - .gx-md-0 { - --bs-gutter-x: 0 - } - .g-md-0, - .gy-md-0 { - --bs-gutter-y: 0 - } - .g-md-1, - .gx-md-1 { - --bs-gutter-x: 0.25rem - } - .g-md-1, - .gy-md-1 { - --bs-gutter-y: 0.25rem - } - .g-md-2, - .gx-md-2 { - --bs-gutter-x: 0.5rem - } - .g-md-2, - .gy-md-2 { - --bs-gutter-y: 0.5rem - } - .g-md-3, - .gx-md-3 { - --bs-gutter-x: 1rem - } - .g-md-3, - .gy-md-3 { - --bs-gutter-y: 1rem - } - .g-md-4, - .gx-md-4 { - --bs-gutter-x: 1.5rem - } - .g-md-4, - .gy-md-4 { - --bs-gutter-y: 1.5rem - } - .g-md-5, - .gx-md-5 { - --bs-gutter-x: 3rem - } - .g-md-5, - .gy-md-5 { - --bs-gutter-y: 3rem - } -} - -@media (min-width:992px) { - .col-lg { - flex: 1 0 0% - } - .row-cols-lg-auto>* { - flex: 0 0 auto; - width: auto - } - .row-cols-lg-1>* { - flex: 0 0 auto; - width: 100% - } - .row-cols-lg-2>* { - flex: 0 0 auto; - width: 50% - } - .row-cols-lg-3>* { - flex: 0 0 auto; - width: 33.3333333333% - } - .row-cols-lg-4>* { - flex: 0 0 auto; - width: 25% - } - .row-cols-lg-5>* { - flex: 0 0 auto; - width: 20% - } - .row-cols-lg-6>* { - flex: 0 0 auto; - width: 16.6666666667% - } - .col-lg-auto { - flex: 0 0 auto; - width: auto - } - .col-lg-1 { - flex: 0 0 auto; - width: 8.33333333% - } - .col-lg-2 { - flex: 0 0 auto; - width: 16.66666667% - } - .col-lg-3 { - flex: 0 0 auto; - width: 25% - } - .col-lg-4 { - flex: 0 0 auto; - width: 33.33333333% - } - .col-lg-5 { - flex: 0 0 auto; - width: 41.66666667% - } - .col-lg-6 { - flex: 0 0 auto; - width: 50% - } - .col-lg-7 { - flex: 0 0 auto; - width: 58.33333333% - } - .col-lg-8 { - flex: 0 0 auto; - width: 66.66666667% - } - .col-lg-9 { - flex: 0 0 auto; - width: 75% - } - .col-lg-10 { - flex: 0 0 auto; - width: 83.33333333% - } - .col-lg-11 { - flex: 0 0 auto; - width: 91.66666667% - } - .col-lg-12 { - flex: 0 0 auto; - width: 100% - } - .offset-lg-0 { - margin-left: 0 - } - .offset-lg-1 { - margin-left: 8.33333333% - } - .offset-lg-2 { - margin-left: 16.66666667% - } - .offset-lg-3 { - margin-left: 25% - } - .offset-lg-4 { - margin-left: 33.33333333% - } - .offset-lg-5 { - margin-left: 41.66666667% - } - .offset-lg-6 { - margin-left: 50% - } - .offset-lg-7 { - margin-left: 58.33333333% - } - .offset-lg-8 { - margin-left: 66.66666667% - } - .offset-lg-9 { - margin-left: 75% - } - .offset-lg-10 { - margin-left: 83.33333333% - } - .offset-lg-11 { - margin-left: 91.66666667% - } - .g-lg-0, - .gx-lg-0 { - --bs-gutter-x: 0 - } - .g-lg-0, - .gy-lg-0 { - --bs-gutter-y: 0 - } - .g-lg-1, - .gx-lg-1 { - --bs-gutter-x: 0.25rem - } - .g-lg-1, - .gy-lg-1 { - --bs-gutter-y: 0.25rem - } - .g-lg-2, - .gx-lg-2 { - --bs-gutter-x: 0.5rem - } - .g-lg-2, - .gy-lg-2 { - --bs-gutter-y: 0.5rem - } - .g-lg-3, - .gx-lg-3 { - --bs-gutter-x: 1rem - } - .g-lg-3, - .gy-lg-3 { - --bs-gutter-y: 1rem - } - .g-lg-4, - .gx-lg-4 { - --bs-gutter-x: 1.5rem - } - .g-lg-4, - .gy-lg-4 { - --bs-gutter-y: 1.5rem - } - .g-lg-5, - .gx-lg-5 { - --bs-gutter-x: 3rem - } - .g-lg-5, - .gy-lg-5 { - --bs-gutter-y: 3rem - } -} - -@media (min-width:1200px) { - .col-xl { - flex: 1 0 0% - } - .row-cols-xl-auto>* { - flex: 0 0 auto; - width: auto - } - .row-cols-xl-1>* { - flex: 0 0 auto; - width: 100% - } - .row-cols-xl-2>* { - flex: 0 0 auto; - width: 50% - } - .row-cols-xl-3>* { - flex: 0 0 auto; - width: 33.3333333333% - } - .row-cols-xl-4>* { - flex: 0 0 auto; - width: 25% - } - .row-cols-xl-5>* { - flex: 0 0 auto; - width: 20% - } - .row-cols-xl-6>* { - flex: 0 0 auto; - width: 16.6666666667% - } - .col-xl-auto { - flex: 0 0 auto; - width: auto - } - .col-xl-1 { - flex: 0 0 auto; - width: 8.33333333% - } - .col-xl-2 { - flex: 0 0 auto; - width: 16.66666667% - } - .col-xl-3 { - flex: 0 0 auto; - width: 25% - } - .col-xl-4 { - flex: 0 0 auto; - width: 33.33333333% - } - .col-xl-5 { - flex: 0 0 auto; - width: 41.66666667% - } - .col-xl-6 { - flex: 0 0 auto; - width: 50% - } - .col-xl-7 { - flex: 0 0 auto; - width: 58.33333333% - } - .col-xl-8 { - flex: 0 0 auto; - width: 66.66666667% - } - .col-xl-9 { - flex: 0 0 auto; - width: 75% - } - .col-xl-10 { - flex: 0 0 auto; - width: 83.33333333% - } - .col-xl-11 { - flex: 0 0 auto; - width: 91.66666667% - } - .col-xl-12 { - flex: 0 0 auto; - width: 100% - } - .offset-xl-0 { - margin-left: 0 - } - .offset-xl-1 { - margin-left: 8.33333333% - } - .offset-xl-2 { - margin-left: 16.66666667% - } - .offset-xl-3 { - margin-left: 25% - } - .offset-xl-4 { - margin-left: 33.33333333% - } - .offset-xl-5 { - margin-left: 41.66666667% - } - .offset-xl-6 { - margin-left: 50% - } - .offset-xl-7 { - margin-left: 58.33333333% - } - .offset-xl-8 { - margin-left: 66.66666667% - } - .offset-xl-9 { - margin-left: 75% - } - .offset-xl-10 { - margin-left: 83.33333333% - } - .offset-xl-11 { - margin-left: 91.66666667% - } - .g-xl-0, - .gx-xl-0 { - --bs-gutter-x: 0 - } - .g-xl-0, - .gy-xl-0 { - --bs-gutter-y: 0 - } - .g-xl-1, - .gx-xl-1 { - --bs-gutter-x: 0.25rem - } - .g-xl-1, - .gy-xl-1 { - --bs-gutter-y: 0.25rem - } - .g-xl-2, - .gx-xl-2 { - --bs-gutter-x: 0.5rem - } - .g-xl-2, - .gy-xl-2 { - --bs-gutter-y: 0.5rem - } - .g-xl-3, - .gx-xl-3 { - --bs-gutter-x: 1rem - } - .g-xl-3, - .gy-xl-3 { - --bs-gutter-y: 1rem - } - .g-xl-4, - .gx-xl-4 { - --bs-gutter-x: 1.5rem - } - .g-xl-4, - .gy-xl-4 { - --bs-gutter-y: 1.5rem - } - .g-xl-5, - .gx-xl-5 { - --bs-gutter-x: 3rem - } - .g-xl-5, - .gy-xl-5 { - --bs-gutter-y: 3rem - } -} - -@media (min-width:1400px) { - .col-xxl { - flex: 1 0 0% - } - .row-cols-xxl-auto>* { - flex: 0 0 auto; - width: auto - } - .row-cols-xxl-1>* { - flex: 0 0 auto; - width: 100% - } - .row-cols-xxl-2>* { - flex: 0 0 auto; - width: 50% - } - .row-cols-xxl-3>* { - flex: 0 0 auto; - width: 33.3333333333% - } - .row-cols-xxl-4>* { - flex: 0 0 auto; - width: 25% - } - .row-cols-xxl-5>* { - flex: 0 0 auto; - width: 20% - } - .row-cols-xxl-6>* { - flex: 0 0 auto; - width: 16.6666666667% - } - .col-xxl-auto { - flex: 0 0 auto; - width: auto - } - .col-xxl-1 { - flex: 0 0 auto; - width: 8.33333333% - } - .col-xxl-2 { - flex: 0 0 auto; - width: 16.66666667% - } - .col-xxl-3 { - flex: 0 0 auto; - width: 25% - } - .col-xxl-4 { - flex: 0 0 auto; - width: 33.33333333% - } - .col-xxl-5 { - flex: 0 0 auto; - width: 41.66666667% - } - .col-xxl-6 { - flex: 0 0 auto; - width: 50% - } - .col-xxl-7 { - flex: 0 0 auto; - width: 58.33333333% - } - .col-xxl-8 { - flex: 0 0 auto; - width: 66.66666667% - } - .col-xxl-9 { - flex: 0 0 auto; - width: 75% - } - .col-xxl-10 { - flex: 0 0 auto; - width: 83.33333333% - } - .col-xxl-11 { - flex: 0 0 auto; - width: 91.66666667% - } - .col-xxl-12 { - flex: 0 0 auto; - width: 100% - } - .offset-xxl-0 { - margin-left: 0 - } - .offset-xxl-1 { - margin-left: 8.33333333% - } - .offset-xxl-2 { - margin-left: 16.66666667% - } - .offset-xxl-3 { - margin-left: 25% - } - .offset-xxl-4 { - margin-left: 33.33333333% - } - .offset-xxl-5 { - margin-left: 41.66666667% - } - .offset-xxl-6 { - margin-left: 50% - } - .offset-xxl-7 { - margin-left: 58.33333333% - } - .offset-xxl-8 { - margin-left: 66.66666667% - } - .offset-xxl-9 { - margin-left: 75% - } - .offset-xxl-10 { - margin-left: 83.33333333% - } - .offset-xxl-11 { - margin-left: 91.66666667% - } - .g-xxl-0, - .gx-xxl-0 { - --bs-gutter-x: 0 - } - .g-xxl-0, - .gy-xxl-0 { - --bs-gutter-y: 0 - } - .g-xxl-1, - .gx-xxl-1 { - --bs-gutter-x: 0.25rem - } - .g-xxl-1, - .gy-xxl-1 { - --bs-gutter-y: 0.25rem - } - .g-xxl-2, - .gx-xxl-2 { - --bs-gutter-x: 0.5rem - } - .g-xxl-2, - .gy-xxl-2 { - --bs-gutter-y: 0.5rem - } - .g-xxl-3, - .gx-xxl-3 { - --bs-gutter-x: 1rem - } - .g-xxl-3, - .gy-xxl-3 { - --bs-gutter-y: 1rem - } - .g-xxl-4, - .gx-xxl-4 { - --bs-gutter-x: 1.5rem - } - .g-xxl-4, - .gy-xxl-4 { - --bs-gutter-y: 1.5rem - } - .g-xxl-5, - .gx-xxl-5 { - --bs-gutter-x: 3rem - } - .g-xxl-5, - .gy-xxl-5 { - --bs-gutter-y: 3rem - } -} - -.table { - --bs-table-bg: transparent; - --bs-table-accent-bg: transparent; - --bs-table-striped-color: #212529; - --bs-table-striped-bg: rgba(0, 0, 0, 0.05); - --bs-table-active-color: #212529; - --bs-table-active-bg: rgba(0, 0, 0, 0.1); - --bs-table-hover-color: #212529; - --bs-table-hover-bg: rgba(0, 0, 0, 0.075); - width: 100%; - margin-bottom: 1rem; - color: #212529; - vertical-align: top; - border-color: #dee2e6 -} - -.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>:not(:last-child)>:last-child>* { - border-bottom-color: 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-striped>tbody>tr:nth-of-type(odd) { - --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-bg: #cfe2ff; - --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: #000; - border-color: #bacbe6 -} - -.table-secondary { - --bs-table-bg: #e2e3e5; - --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: #000; - border-color: #cbccce -} - -.table-success { - --bs-table-bg: #d1e7dd; - --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: #000; - border-color: #bcd0c7 -} - -.table-info { - --bs-table-bg: #cff4fc; - --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: #000; - border-color: #badce3 -} - -.table-warning { - --bs-table-bg: #fff3cd; - --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: #000; - border-color: #e6dbb9 -} - -.table-danger { - --bs-table-bg: #f8d7da; - --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: #000; - border-color: #dfc2c4 -} - -.table-light { - --bs-table-bg: #f8f9fa; - --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: #000; - border-color: #dfe0e1 -} - -.table-dark { - --bs-table-bg: #212529; - --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: #fff; - border-color: #373b3e -} - -.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: .25rem; - 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, -.form-control[readonly] { - background-color: #e9ecef; - opacity: 1 -} - -.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::file-selector-button { - transition: none - } -} - -.form-control:hover:not(:disabled):not([readonly])::file-selector-button { - background-color: #dde0e3 -} - -.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 -} - -@media (prefers-reduced-motion:reduce) { - .form-control::-webkit-file-upload-button { - -webkit-transition: none; - transition: none - } -} - -.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-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.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: .2rem -} - -.form-control-sm::file-selector-button { - padding: .25rem .5rem; - margin: -.25rem -.5rem; - -webkit-margin-end: .5rem; - margin-inline-end: .5rem -} - -.form-control-sm::-webkit-file-upload-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: .3rem -} - -.form-control-lg::file-selector-button { - padding: .5rem 1rem; - margin: -.5rem -1rem; - -webkit-margin-end: 1rem; - margin-inline-end: 1rem -} - -.form-control-lg::-webkit-file-upload-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: auto; - padding: .375rem -} - -.form-control-color:not(:disabled):not([readonly]) { - cursor: pointer -} - -.form-control-color::-moz-color-swatch { - height: 1.5em; - border-radius: .25rem -} - -.form-control-color::-webkit-color-swatch { - height: 1.5em; - border-radius: .25rem -} - -.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 5l6 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: .25rem; - 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 -} - -.form-select-lg { - padding-top: .5rem; - padding-bottom: .5rem; - padding-left: 1rem; - font-size: 1.25rem -} - -.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-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 -} - -.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 10l3 3l6-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 { - 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-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-select { - height: calc(3.5rem + 2px); - line-height: 1.25 -} - -.form-floating>label { - position: absolute; - top: 0; - left: 0; - height: 100%; - padding: 1rem .75rem; - 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 { - padding: 1rem .75rem -} - -.form-floating>.form-control::-moz-placeholder { - color: transparent -} - -.form-floating>.form-control::placeholder { - color: transparent -} - -.form-floating>.form-control:not(:-moz-placeholder-shown) { - padding-top: 1.625rem; - padding-bottom: .625rem -} - -.form-floating>.form-control:focus, -.form-floating>.form-control:not(:placeholder-shown) { - padding-top: 1.625rem; - padding-bottom: .625rem -} - -.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: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) -} - -.input-group { - position: relative; - display: flex; - flex-wrap: wrap; - align-items: stretch; - width: 100% -} - -.input-group>.form-control, -.input-group>.form-select { - position: relative; - flex: 1 1 auto; - width: 1%; - min-width: 0 -} - -.input-group>.form-control:focus, -.input-group>.form-select:focus { - z-index: 3 -} - -.input-group .btn { - position: relative; - z-index: 2 -} - -.input-group .btn:focus { - z-index: 3 -} - -.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: .25rem -} - -.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: .3rem -} - -.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: .2rem -} - -.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)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) { - 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>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu) { - 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 -} - -.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: .25rem -} - -.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.73L.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 5l6 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.73L.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-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.is-valid, -.input-group .form-select.is-valid, -.was-validated .input-group .form-control:valid, -.was-validated .input-group .form-select:valid { - z-index: 1 -} - -.input-group .form-control.is-valid:focus, -.input-group .form-select.is-valid:focus, -.was-validated .input-group .form-control:valid:focus, -.was-validated .input-group .form-select:valid:focus { - 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: .25rem -} - -.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 5l6 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-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.is-invalid, -.input-group .form-select.is-invalid, -.was-validated .input-group .form-control:invalid, -.was-validated .input-group .form-select:invalid { - z-index: 2 -} - -.input-group .form-control.is-invalid:focus, -.input-group .form-select.is-invalid:focus, -.was-validated .input-group .form-control:invalid:focus, -.was-validated .input-group .form-select:invalid:focus { - z-index: 3 -} - -.btn { - display: inline-block; - font-weight: 400; - line-height: 1.5; - color: #212529; - text-align: center; - text-decoration: none; - vertical-align: middle; - cursor: pointer; - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; - background-color: transparent; - border: 1px solid transparent; - padding: .375rem .75rem; - font-size: 1rem; - border-radius: .25rem; - 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: #212529 -} - -.btn-check:focus+.btn, -.btn:focus { - outline: 0; - box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25) -} - -.btn.disabled, -.btn:disabled, -fieldset:disabled .btn { - pointer-events: none; - opacity: .65 -} - -.btn-primary { - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd -} - -.btn-primary:hover { - color: #fff; - background-color: #0b5ed7; - border-color: #0a58ca -} - -.btn-check:focus+.btn-primary, -.btn-primary:focus { - color: #fff; - background-color: #0b5ed7; - border-color: #0a58ca; - box-shadow: 0 0 0 .25rem rgba(49, 132, 253, .5) -} - -.btn-check:active+.btn-primary, -.btn-check:checked+.btn-primary, -.btn-primary.active, -.btn-primary:active, -.show>.btn-primary.dropdown-toggle { - color: #fff; - background-color: #2739ff; - border-color: #2739ff; -} - -.btn-check:active+.btn-primary:focus, -.btn-check:checked+.btn-primary:focus, -.btn-primary.active:focus, -.btn-primary:active:focus, -.show>.btn-primary.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(49, 132, 253, .5) -} - -.btn-primary.disabled, -.btn-primary:disabled { - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd -} - -.btn-secondary { - color: #fff; - background-color: #6c757d; - border-color: #6c757d -} - -.btn-secondary:hover { - color: #fff; - background-color: #5c636a; - border-color: #565e64 -} - -.btn-check:focus+.btn-secondary, -.btn-secondary:focus { - color: #fff; - background-color: #5c636a; - border-color: #565e64; - box-shadow: 0 0 0 .25rem rgba(130, 138, 145, .5) -} - -.btn-check:active+.btn-secondary, -.btn-check:checked+.btn-secondary, -.btn-secondary.active, -.btn-secondary:active, -.show>.btn-secondary.dropdown-toggle { - color: #fff; - background-color: #565e64; - border-color: #51585e -} - -.btn-check:active+.btn-secondary:focus, -.btn-check:checked+.btn-secondary:focus, -.btn-secondary.active:focus, -.btn-secondary:active:focus, -.show>.btn-secondary.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(130, 138, 145, .5) -} - -.btn-secondary.disabled, -.btn-secondary:disabled { - color: #fff; - background-color: #6c757d; - border-color: #6c757d -} - -.btn-success { - color: #fff; - background-color: #198754; - border-color: #198754 -} - -.btn-success:hover { - color: #fff; - background-color: #157347; - border-color: #146c43 -} - -.btn-check:focus+.btn-success, -.btn-success:focus { - color: #fff; - background-color: #157347; - border-color: #146c43; - box-shadow: 0 0 0 .25rem rgba(60, 153, 110, .5) -} - -.btn-check:active+.btn-success, -.btn-check:checked+.btn-success, -.btn-success.active, -.btn-success:active, -.show>.btn-success.dropdown-toggle { - color: #fff; - background-color: #146c43; - border-color: #13653f -} - -.btn-check:active+.btn-success:focus, -.btn-check:checked+.btn-success:focus, -.btn-success.active:focus, -.btn-success:active:focus, -.show>.btn-success.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(60, 153, 110, .5) -} - -.btn-success.disabled, -.btn-success:disabled { - color: #fff; - background-color: #198754; - border-color: #198754 -} - -.btn-info { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0 -} - -.btn-info:hover { - color: #000; - background-color: #31d2f2; - border-color: #25cff2 -} - -.btn-check:focus+.btn-info, -.btn-info:focus { - color: #000; - background-color: #31d2f2; - border-color: #25cff2; - box-shadow: 0 0 0 .25rem rgba(11, 172, 204, .5) -} - -.btn-check:active+.btn-info, -.btn-check:checked+.btn-info, -.btn-info.active, -.btn-info:active, -.show>.btn-info.dropdown-toggle { - color: #000; - background-color: #3dd5f3; - border-color: #25cff2 -} - -.btn-check:active+.btn-info:focus, -.btn-check:checked+.btn-info:focus, -.btn-info.active:focus, -.btn-info:active:focus, -.show>.btn-info.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(11, 172, 204, .5) -} - -.btn-info.disabled, -.btn-info:disabled { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0 -} - -.btn-warning { - color: #000; - background-color: #ffc107; - border-color: #ffc107 -} - -.btn-warning:hover { - color: #000; - background-color: #ffca2c; - border-color: #ffc720 -} - -.btn-check:focus+.btn-warning, -.btn-warning:focus { - color: #000; - background-color: #ffca2c; - border-color: #ffc720; - box-shadow: 0 0 0 .25rem rgba(217, 164, 6, .5) -} - -.btn-check:active+.btn-warning, -.btn-check:checked+.btn-warning, -.btn-warning.active, -.btn-warning:active, -.show>.btn-warning.dropdown-toggle { - color: #000; - background-color: #ffcd39; - border-color: #ffc720 -} - -.btn-check:active+.btn-warning:focus, -.btn-check:checked+.btn-warning:focus, -.btn-warning.active:focus, -.btn-warning:active:focus, -.show>.btn-warning.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(217, 164, 6, .5) -} - -.btn-warning.disabled, -.btn-warning:disabled { - color: #000; - background-color: #ffc107; - border-color: #ffc107 -} - -.btn-danger { - color: #fff; - background-color: #dc3545; - border-color: #dc3545 -} - -.btn-danger:hover { - color: #fff; - background-color: #bb2d3b; - border-color: #b02a37 -} - -.btn-check:focus+.btn-danger, -.btn-danger:focus { - color: #fff; - background-color: #bb2d3b; - border-color: #b02a37; - box-shadow: 0 0 0 .25rem rgba(225, 83, 97, .5) -} - -.btn-check:active+.btn-danger, -.btn-check:checked+.btn-danger, -.btn-danger.active, -.btn-danger:active, -.show>.btn-danger.dropdown-toggle { - color: #fff; - background-color: #b02a37; - border-color: #a52834 -} - -.btn-check:active+.btn-danger:focus, -.btn-check:checked+.btn-danger:focus, -.btn-danger.active:focus, -.btn-danger:active:focus, -.show>.btn-danger.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(225, 83, 97, .5) -} - -.btn-danger.disabled, -.btn-danger:disabled { - color: #fff; - background-color: #dc3545; - border-color: #dc3545 -} - -.btn-light { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa -} - -.btn-light:hover { - color: #000; - background-color: #f9fafb; - border-color: #f9fafb -} - -.btn-check:focus+.btn-light, -.btn-light:focus { - color: #000; - background-color: #f9fafb; - border-color: #f9fafb; - box-shadow: 0 0 0 .25rem rgba(211, 212, 213, .5) -} - -.btn-check:active+.btn-light, -.btn-check:checked+.btn-light, -.btn-light.active, -.btn-light:active, -.show>.btn-light.dropdown-toggle { - color: #000; - background-color: #f9fafb; - border-color: #f9fafb -} - -.btn-check:active+.btn-light:focus, -.btn-check:checked+.btn-light:focus, -.btn-light.active:focus, -.btn-light:active:focus, -.show>.btn-light.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(211, 212, 213, .5) -} - -.btn-light.disabled, -.btn-light:disabled { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa -} - -.btn-dark { - color: #fff; - background-color: #212529; - border-color: #212529 -} - -.btn-dark:hover { - color: #fff; - background-color: #1c1f23; - border-color: #1a1e21 -} - -.btn-check:focus+.btn-dark, -.btn-dark:focus { - color: #fff; - background-color: #1c1f23; - border-color: #1a1e21; - box-shadow: 0 0 0 .25rem rgba(66, 70, 73, .5) -} - -.btn-check:active+.btn-dark, -.btn-check:checked+.btn-dark, -.btn-dark.active, -.btn-dark:active, -.show>.btn-dark.dropdown-toggle { - color: #fff; - background-color: #1a1e21; - border-color: #191c1f -} - -.btn-check:active+.btn-dark:focus, -.btn-check:checked+.btn-dark:focus, -.btn-dark.active:focus, -.btn-dark:active:focus, -.show>.btn-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 .25rem rgba(66, 70, 73, .5) -} - -.btn-dark.disabled, -.btn-dark:disabled { - color: #fff; - background-color: #212529; - border-color: #212529 -} - -.btn-outline-primary { - color: #2739ff; - border-color: #2739ff; -} - -.btn-outline-primary:hover { - color: #fff; - background-color: #5966f3; - border-color: #5966f3; -} - -.btn-check:focus+.btn-outline-primary, -.btn-outline-primary:focus { - box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .5) -} - -.btn-check:active+.btn-outline-primary, -.btn-check:checked+.btn-outline-primary, -.btn-outline-primary.active, -.btn-outline-primary.dropdown-toggle.show, -.btn-outline-primary:active { - color: #fff; - background-color: #2739ff; - border-color: #2739ff; -} - -.btn-check:active+.btn-outline-primary:focus, -.btn-check:checked+.btn-outline-primary:focus, -.btn-outline-primary.active:focus, -.btn-outline-primary.dropdown-toggle.show:focus, -.btn-outline-primary:active:focus { - box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .5) -} - -.btn-outline-primary.disabled, -.btn-outline-primary:disabled { - color: #0d6efd; - background-color: transparent -} - -.btn-outline-secondary { - color: #6c757d; - border-color: #6c757d -} - -.btn-outline-secondary:hover { - color: #fff; - background-color: #6c757d; - border-color: #6c757d -} - -.btn-check:focus+.btn-outline-secondary, -.btn-outline-secondary:focus { - box-shadow: 0 0 0 .25rem rgba(108, 117, 125, .5) -} - -.btn-check:active+.btn-outline-secondary, -.btn-check:checked+.btn-outline-secondary, -.btn-outline-secondary.active, -.btn-outline-secondary.dropdown-toggle.show, -.btn-outline-secondary:active { - color: #fff; - background-color: #6c757d; - border-color: #6c757d -} - -.btn-check:active+.btn-outline-secondary:focus, -.btn-check:checked+.btn-outline-secondary:focus, -.btn-outline-secondary.active:focus, -.btn-outline-secondary.dropdown-toggle.show:focus, -.btn-outline-secondary:active:focus { - box-shadow: 0 0 0 .25rem rgba(108, 117, 125, .5) -} - -.btn-outline-secondary.disabled, -.btn-outline-secondary:disabled { - color: #6c757d; - background-color: transparent -} - -.btn-outline-success { - color: #198754; - border-color: #198754 -} - -.btn-outline-success:hover { - color: #fff; - background-color: #198754; - border-color: #198754 -} - -.btn-check:focus+.btn-outline-success, -.btn-outline-success:focus { - box-shadow: 0 0 0 .25rem rgba(25, 135, 84, .5) -} - -.btn-check:active+.btn-outline-success, -.btn-check:checked+.btn-outline-success, -.btn-outline-success.active, -.btn-outline-success.dropdown-toggle.show, -.btn-outline-success:active { - color: #fff; - background-color: #198754; - border-color: #198754 -} - -.btn-check:active+.btn-outline-success:focus, -.btn-check:checked+.btn-outline-success:focus, -.btn-outline-success.active:focus, -.btn-outline-success.dropdown-toggle.show:focus, -.btn-outline-success:active:focus { - box-shadow: 0 0 0 .25rem rgba(25, 135, 84, .5) -} - -.btn-outline-success.disabled, -.btn-outline-success:disabled { - color: #198754; - background-color: transparent -} - -.btn-outline-info { - color: #0dcaf0; - border-color: #0dcaf0 -} - -.btn-outline-info:hover { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0 -} - -.btn-check:focus+.btn-outline-info, -.btn-outline-info:focus { - box-shadow: 0 0 0 .25rem rgba(13, 202, 240, .5) -} - -.btn-check:active+.btn-outline-info, -.btn-check:checked+.btn-outline-info, -.btn-outline-info.active, -.btn-outline-info.dropdown-toggle.show, -.btn-outline-info:active { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0 -} - -.btn-check:active+.btn-outline-info:focus, -.btn-check:checked+.btn-outline-info:focus, -.btn-outline-info.active:focus, -.btn-outline-info.dropdown-toggle.show:focus, -.btn-outline-info:active:focus { - box-shadow: 0 0 0 .25rem rgba(13, 202, 240, .5) -} - -.btn-outline-info.disabled, -.btn-outline-info:disabled { - color: #0dcaf0; - background-color: transparent -} - -.btn-outline-warning { - color: #ffc107; - border-color: #ffc107 -} - -.btn-outline-warning:hover { - color: #000; - background-color: #ffc107; - border-color: #ffc107 -} - -.btn-check:focus+.btn-outline-warning, -.btn-outline-warning:focus { - box-shadow: 0 0 0 .25rem rgba(255, 193, 7, .5) -} - -.btn-check:active+.btn-outline-warning, -.btn-check:checked+.btn-outline-warning, -.btn-outline-warning.active, -.btn-outline-warning.dropdown-toggle.show, -.btn-outline-warning:active { - color: #000; - background-color: #ffc107; - border-color: #ffc107 -} - -.btn-check:active+.btn-outline-warning:focus, -.btn-check:checked+.btn-outline-warning:focus, -.btn-outline-warning.active:focus, -.btn-outline-warning.dropdown-toggle.show:focus, -.btn-outline-warning:active:focus { - box-shadow: 0 0 0 .25rem rgba(255, 193, 7, .5) -} - -.btn-outline-warning.disabled, -.btn-outline-warning:disabled { - color: #ffc107; - background-color: transparent -} - -.btn-outline-danger { - color: #dc3545; - border-color: #dc3545 -} - -.btn-outline-danger:hover { - color: #fff; - background-color: #dc3545; - border-color: #dc3545 -} - -.btn-check:focus+.btn-outline-danger, -.btn-outline-danger:focus { - box-shadow: 0 0 0 .25rem rgba(220, 53, 69, .5) -} - -.btn-check:active+.btn-outline-danger, -.btn-check:checked+.btn-outline-danger, -.btn-outline-danger.active, -.btn-outline-danger.dropdown-toggle.show, -.btn-outline-danger:active { - color: #fff; - background-color: #dc3545; - border-color: #dc3545 -} - -.btn-check:active+.btn-outline-danger:focus, -.btn-check:checked+.btn-outline-danger:focus, -.btn-outline-danger.active:focus, -.btn-outline-danger.dropdown-toggle.show:focus, -.btn-outline-danger:active:focus { - box-shadow: 0 0 0 .25rem rgba(220, 53, 69, .5) -} - -.btn-outline-danger.disabled, -.btn-outline-danger:disabled { - color: #dc3545; - background-color: transparent -} - -.btn-outline-light { - color: #f8f9fa; - border-color: #f8f9fa -} - -.btn-outline-light:hover { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa -} - -.btn-check:focus+.btn-outline-light, -.btn-outline-light:focus { - box-shadow: 0 0 0 .25rem rgba(248, 249, 250, .5) -} - -.btn-check:active+.btn-outline-light, -.btn-check:checked+.btn-outline-light, -.btn-outline-light.active, -.btn-outline-light.dropdown-toggle.show, -.btn-outline-light:active { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa -} - -.btn-check:active+.btn-outline-light:focus, -.btn-check:checked+.btn-outline-light:focus, -.btn-outline-light.active:focus, -.btn-outline-light.dropdown-toggle.show:focus, -.btn-outline-light:active:focus { - box-shadow: 0 0 0 .25rem rgba(248, 249, 250, .5) -} - -.btn-outline-light.disabled, -.btn-outline-light:disabled { - color: #f8f9fa; - background-color: transparent -} - -.btn-outline-dark { - color: #212529; - border-color: #212529 -} - -.btn-outline-dark:hover { - color: #fff; - background-color: #212529; - border-color: #212529 -} - -.btn-check:focus+.btn-outline-dark, -.btn-outline-dark:focus { - box-shadow: 0 0 0 .25rem rgba(33, 37, 41, .5) -} - -.btn-check:active+.btn-outline-dark, -.btn-check:checked+.btn-outline-dark, -.btn-outline-dark.active, -.btn-outline-dark.dropdown-toggle.show, -.btn-outline-dark:active { - color: #fff; - background-color: #212529; - border-color: #212529 -} - -.btn-check:active+.btn-outline-dark:focus, -.btn-check:checked+.btn-outline-dark:focus, -.btn-outline-dark.active:focus, -.btn-outline-dark.dropdown-toggle.show:focus, -.btn-outline-dark:active:focus { - box-shadow: 0 0 0 .25rem rgba(33, 37, 41, .5) -} - -.btn-outline-dark.disabled, -.btn-outline-dark:disabled { - color: #212529; - background-color: transparent -} - -.btn-link { - font-weight: 400; - color: #0d6efd; - text-decoration: underline -} - -.btn-link:hover { - color: #0a58ca -} - -.btn-link.disabled, -.btn-link:disabled { - color: #6c757d -} - -.btn-group-lg>.btn, -.btn-lg { - padding: .5rem 1rem; - font-size: 1.25rem; - border-radius: .3rem -} - -.btn-group-sm>.btn, -.btn-sm { - padding: .25rem .5rem; - font-size: .875rem; - border-radius: .2rem -} - -.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, -.dropend, -.dropstart, -.dropup { - 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 { - position: absolute; - z-index: 1000; - display: none; - min-width: 10rem; - padding: .5rem 0; - margin: 0; - font-size: 1rem; - color: #212529; - text-align: left; - list-style: none; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .15); - border-radius: .25rem -} - -.dropdown-menu[data-bs-popper] { - top: 100%; - left: 0; - margin-top: .125rem -} - -.dropdown-menu-start { - --bs-position: start -} - -.dropdown-menu-start[data-bs-popper] { - right: auto; - left: 0 -} - -.dropdown-menu-end { - --bs-position: end -} - -.dropdown-menu-end[data-bs-popper] { - right: 0; - left: auto -} - -@media (min-width:576px) { - .dropdown-menu-sm-start { - --bs-position: start - } - .dropdown-menu-sm-start[data-bs-popper] { - right: auto; - left: 0 - } - .dropdown-menu-sm-end { - --bs-position: end - } - .dropdown-menu-sm-end[data-bs-popper] { - right: 0; - left: auto - } -} - -@media (min-width:768px) { - .dropdown-menu-md-start { - --bs-position: start - } - .dropdown-menu-md-start[data-bs-popper] { - right: auto; - left: 0 - } - .dropdown-menu-md-end { - --bs-position: end - } - .dropdown-menu-md-end[data-bs-popper] { - right: 0; - left: auto - } -} - -@media (min-width:992px) { - .dropdown-menu-lg-start { - --bs-position: start - } - .dropdown-menu-lg-start[data-bs-popper] { - right: auto; - left: 0 - } - .dropdown-menu-lg-end { - --bs-position: end - } - .dropdown-menu-lg-end[data-bs-popper] { - right: 0; - left: auto - } -} - -@media (min-width:1200px) { - .dropdown-menu-xl-start { - --bs-position: start - } - .dropdown-menu-xl-start[data-bs-popper] { - right: auto; - left: 0 - } - .dropdown-menu-xl-end { - --bs-position: end - } - .dropdown-menu-xl-end[data-bs-popper] { - right: 0; - left: auto - } -} - -@media (min-width:1400px) { - .dropdown-menu-xxl-start { - --bs-position: start - } - .dropdown-menu-xxl-start[data-bs-popper] { - right: auto; - left: 0 - } - .dropdown-menu-xxl-end { - --bs-position: end - } - .dropdown-menu-xxl-end[data-bs-popper] { - right: 0; - left: auto - } -} - -.dropup .dropdown-menu[data-bs-popper] { - top: auto; - bottom: 100%; - margin-top: 0; - margin-bottom: .125rem -} - -.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: .125rem -} - -.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: .125rem -} - -.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: .5rem 0; - overflow: hidden; - border-top: 1px solid rgba(0, 0, 0, .15) -} - -.dropdown-item { - display: block; - width: 100%; - padding: .25rem 1rem; - clear: both; - font-weight: 400; - color: #212529; - text-align: inherit; - text-decoration: none; - white-space: nowrap; - background-color: transparent; - border: 0 -} - -.dropdown-item:focus, -.dropdown-item:hover { - color: #1e2125; - background-color: #e9ecef -} - -.dropdown-item.active, -.dropdown-item:active { - color: #fff; - text-decoration: none; - background-color: #0d6efd -} - -.dropdown-item.disabled, -.dropdown-item:disabled { - color: #adb5bd; - pointer-events: none; - background-color: transparent -} - -.dropdown-menu.show { - display: block -} - -.dropdown-header { - display: block; - padding: .5rem 1rem; - margin-bottom: 0; - font-size: .875rem; - color: #6c757d; - white-space: nowrap -} - -.dropdown-item-text { - display: block; - padding: .25rem 1rem; - color: #212529 -} - -.dropdown-menu-dark { - color: #dee2e6; - background-color: #343a40; - border-color: rgba(0, 0, 0, .15) -} - -.dropdown-menu-dark .dropdown-item { - color: #dee2e6 -} - -.dropdown-menu-dark .dropdown-item:focus, -.dropdown-menu-dark .dropdown-item:hover { - color: #fff; - background-color: rgba(255, 255, 255, .15) -} - -.dropdown-menu-dark .dropdown-item.active, -.dropdown-menu-dark .dropdown-item:active { - color: #fff; - background-color: #0d6efd -} - -.dropdown-menu-dark .dropdown-item.disabled, -.dropdown-menu-dark .dropdown-item:disabled { - color: #adb5bd -} - -.dropdown-menu-dark .dropdown-divider { - border-color: rgba(0, 0, 0, .15) -} - -.dropdown-menu-dark .dropdown-item-text { - color: #dee2e6 -} - -.dropdown-menu-dark .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>.btn-group:not(:first-child), -.btn-group>.btn:not(:first-child) { - margin-left: -1px -} - -.btn-group>.btn-group:not(:last-child)>.btn, -.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 { - display: flex; - flex-wrap: wrap; - padding-left: 0; - margin-bottom: 0; - list-style: none -} - -.nav-link { - display: block; - padding: .5rem 1rem; - color: #0d6efd; - 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: #0a58ca -} - -.nav-link.disabled { - color: #6c757d; - pointer-events: none; - cursor: default -} - -.nav-tabs { - border-bottom: 1px solid #dee2e6 -} - -.nav-tabs .nav-link { - margin-bottom: -1px; - background: 0 0; - border: 1px solid transparent; - border-top-left-radius: .25rem; - border-top-right-radius: .25rem -} - -.nav-tabs .nav-link:focus, -.nav-tabs .nav-link:hover { - border-color: #e9ecef #e9ecef #dee2e6; - isolation: isolate -} - -.nav-tabs .nav-link.disabled { - color: #6c757d; - background-color: transparent; - border-color: transparent -} - -.nav-tabs .nav-item.show .nav-link, -.nav-tabs .nav-link.active { - color: #495057; - background-color: #fff; - border-color: #dee2e6 #dee2e6 #fff -} - -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-left-radius: 0; - border-top-right-radius: 0 -} - -.nav-pills .nav-link { - background: 0 0; - border: 0; - border-radius: .25rem -} - -.nav-pills .nav-link.active, -.nav-pills .show>.nav-link { - color: #fff; - background-color: #0d6efd -} - -.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 { - position: relative; - display: flex; - flex-wrap: wrap; - align-items: center; - justify-content: space-between; - padding-top: .5rem; - padding-bottom: .5rem -} - -.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: .3125rem; - padding-bottom: .3125rem; - margin-right: 1rem; - font-size: 1.25rem; - text-decoration: none; - white-space: nowrap -} - -.navbar-nav { - display: flex; - flex-direction: column; - padding-left: 0; - margin-bottom: 0; - list-style: none -} - -.navbar-nav .nav-link { - padding-right: 0; - padding-left: 0 -} - -.navbar-nav .dropdown-menu { - position: static -} - -.navbar-text { - padding-top: .5rem; - padding-bottom: .5rem -} - -.navbar-collapse { - flex-basis: 100%; - flex-grow: 1; - align-items: center -} - -.navbar-toggler { - padding: .25rem .75rem; - font-size: 1.25rem; - line-height: 1; - background-color: transparent; - border: 1px solid transparent; - border-radius: .25rem; - transition: box-shadow .15s ease-in-out -} - -@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 .25rem -} - -.navbar-toggler-icon { - display: inline-block; - width: 1.5em; - height: 1.5em; - vertical-align: middle; - background-repeat: no-repeat; - background-position: center; - background-size: 100% -} - -.navbar-nav-scroll { - max-height: var(--bs-scroll-height, 75vh); - overflow-y: auto -} - -@media (min-width:576px) { - .navbar-expand-sm { - flex-wrap: nowrap; - justify-content: flex-start - } - .navbar-expand-sm .navbar-nav { - flex-direction: row - } - .navbar-expand-sm .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-sm .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-sm .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-sm .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-sm .navbar-toggler { - display: none - } - .navbar-expand-sm .offcanvas-header { - display: none - } - .navbar-expand-sm .offcanvas { - position: inherit; - bottom: 0; - z-index: 1000; - flex-grow: 1; - visibility: visible!important; - background-color: transparent; - border-right: 0; - border-left: 0; - transition: none; - transform: none - } - .navbar-expand-sm .offcanvas-bottom, - .navbar-expand-sm .offcanvas-top { - height: auto; - border-top: 0; - border-bottom: 0 - } - .navbar-expand-sm .offcanvas-body { - display: flex; - flex-grow: 0; - padding: 0; - overflow-y: visible - } -} - -@media (min-width:768px) { - .navbar-expand-md { - flex-wrap: nowrap; - justify-content: flex-start - } - .navbar-expand-md .navbar-nav { - flex-direction: row - } - .navbar-expand-md .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-md .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-md .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-md .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-md .navbar-toggler { - display: none - } - .navbar-expand-md .offcanvas-header { - display: none - } - .navbar-expand-md .offcanvas { - position: inherit; - bottom: 0; - z-index: 1000; - flex-grow: 1; - visibility: visible!important; - background-color: transparent; - border-right: 0; - border-left: 0; - transition: none; - transform: none - } - .navbar-expand-md .offcanvas-bottom, - .navbar-expand-md .offcanvas-top { - height: auto; - border-top: 0; - border-bottom: 0 - } - .navbar-expand-md .offcanvas-body { - display: flex; - flex-grow: 0; - padding: 0; - overflow-y: visible - } -} - -@media (min-width:992px) { - .navbar-expand-lg { - flex-wrap: nowrap; - justify-content: flex-start - } - .navbar-expand-lg .navbar-nav { - flex-direction: row - } - .navbar-expand-lg .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-lg .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-lg .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-lg .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-lg .navbar-toggler { - display: none - } - .navbar-expand-lg .offcanvas-header { - display: none - } - .navbar-expand-lg .offcanvas { - position: inherit; - bottom: 0; - z-index: 1000; - flex-grow: 1; - visibility: visible!important; - background-color: transparent; - border-right: 0; - border-left: 0; - transition: none; - transform: none - } - .navbar-expand-lg .offcanvas-bottom, - .navbar-expand-lg .offcanvas-top { - height: auto; - border-top: 0; - border-bottom: 0 - } - .navbar-expand-lg .offcanvas-body { - display: flex; - flex-grow: 0; - padding: 0; - overflow-y: visible - } -} - -@media (min-width:1200px) { - .navbar-expand-xl { - flex-wrap: nowrap; - justify-content: flex-start - } - .navbar-expand-xl .navbar-nav { - flex-direction: row - } - .navbar-expand-xl .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-xl .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-xl .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-xl .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-xl .navbar-toggler { - display: none - } - .navbar-expand-xl .offcanvas-header { - display: none - } - .navbar-expand-xl .offcanvas { - position: inherit; - bottom: 0; - z-index: 1000; - flex-grow: 1; - visibility: visible!important; - background-color: transparent; - border-right: 0; - border-left: 0; - transition: none; - transform: none - } - .navbar-expand-xl .offcanvas-bottom, - .navbar-expand-xl .offcanvas-top { - height: auto; - border-top: 0; - border-bottom: 0 - } - .navbar-expand-xl .offcanvas-body { - display: flex; - flex-grow: 0; - padding: 0; - overflow-y: visible - } -} - -@media (min-width:1400px) { - .navbar-expand-xxl { - flex-wrap: nowrap; - justify-content: flex-start - } - .navbar-expand-xxl .navbar-nav { - flex-direction: row - } - .navbar-expand-xxl .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-xxl .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-xxl .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-xxl .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-xxl .navbar-toggler { - display: none - } - .navbar-expand-xxl .offcanvas-header { - display: none - } - .navbar-expand-xxl .offcanvas { - position: inherit; - bottom: 0; - z-index: 1000; - flex-grow: 1; - visibility: visible!important; - background-color: transparent; - border-right: 0; - border-left: 0; - transition: none; - transform: none - } - .navbar-expand-xxl .offcanvas-bottom, - .navbar-expand-xxl .offcanvas-top { - height: auto; - border-top: 0; - border-bottom: 0 - } - .navbar-expand-xxl .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: .5rem; - padding-left: .5rem -} - -.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-header { - display: none -} - -.navbar-expand .offcanvas { - position: inherit; - bottom: 0; - z-index: 1000; - flex-grow: 1; - visibility: visible!important; - background-color: transparent; - border-right: 0; - border-left: 0; - transition: none; - transform: none -} - -.navbar-expand .offcanvas-bottom, -.navbar-expand .offcanvas-top { - height: auto; - border-top: 0; - border-bottom: 0 -} - -.navbar-expand .offcanvas-body { - display: flex; - flex-grow: 0; - padding: 0; - overflow-y: visible -} - -.navbar-light .navbar-brand { - color: rgba(0, 0, 0, .9) -} - -.navbar-light .navbar-brand:focus, -.navbar-light .navbar-brand:hover { - color: rgba(0, 0, 0, .9) -} - -.navbar-light .navbar-nav .nav-link { - color: rgba(0, 0, 0, .55) -} - -.navbar-light .navbar-nav .nav-link:focus, -.navbar-light .navbar-nav .nav-link:hover { - color: rgba(0, 0, 0, .7) -} - -.navbar-light .navbar-nav .nav-link.disabled { - color: rgba(0, 0, 0, .3) -} - -.navbar-light .navbar-nav .nav-link.active, -.navbar-light .navbar-nav .show>.nav-link { - color: rgba(0, 0, 0, .9) -} - -.navbar-light .navbar-toggler { - color: rgba(0, 0, 0, .55); - border-color: rgba(0, 0, 0, .1) -} - -.navbar-light .navbar-toggler-icon { - background-image: 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") -} - -.navbar-light .navbar-text { - color: rgba(0, 0, 0, .55) -} - -.navbar-light .navbar-text a, -.navbar-light .navbar-text a:focus, -.navbar-light .navbar-text a:hover { - color: rgba(0, 0, 0, .9) -} - -.navbar-dark .navbar-brand { - color: #fff -} - -.navbar-dark .navbar-brand:focus, -.navbar-dark .navbar-brand:hover { - color: #fff -} - -.navbar-dark .navbar-nav .nav-link { - color: rgba(255, 255, 255, .55) -} - -.navbar-dark .navbar-nav .nav-link:focus, -.navbar-dark .navbar-nav .nav-link:hover { - color: rgba(255, 255, 255, .75) -} - -.navbar-dark .navbar-nav .nav-link.disabled { - color: rgba(255, 255, 255, .25) -} - -.navbar-dark .navbar-nav .nav-link.active, -.navbar-dark .navbar-nav .show>.nav-link { - color: #fff -} - -.navbar-dark .navbar-toggler { - color: rgba(255, 255, 255, .55); - border-color: rgba(255, 255, 255, .1) -} - -.navbar-dark .navbar-toggler-icon { - background-image: 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") -} - -.navbar-dark .navbar-text { - color: rgba(255, 255, 255, .55) -} - -.navbar-dark .navbar-text a, -.navbar-dark .navbar-text a:focus, -.navbar-dark .navbar-text a:hover { - color: #fff -} - -.card { - position: relative; - display: flex; - flex-direction: column; - min-width: 0; - word-wrap: break-word; - background-color: #fff; - background-clip: border-box; - border: 1px solid rgba(0, 0, 0, .125); - border-radius: .25rem -} - -.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: calc(.25rem - 1px); - border-top-right-radius: calc(.25rem - 1px) -} - -.card>.list-group:last-child { - border-bottom-width: 0; - border-bottom-right-radius: calc(.25rem - 1px); - border-bottom-left-radius: calc(.25rem - 1px) -} - -.card>.card-header+.list-group, -.card>.list-group+.card-footer { - border-top: 0 -} - -.card-body { - flex: 1 1 auto; - padding: 1rem 1rem -} - -.card-title { - margin-bottom: .5rem -} - -.card-subtitle { - margin-top: -.25rem; - margin-bottom: 0 -} - -.card-text:last-child { - margin-bottom: 0 -} - -.card-link+.card-link { - margin-left: 1rem -} - -.card-header { - padding: .5rem 1rem; - margin-bottom: 0; - background-color: rgba(0, 0, 0, .03); - border-bottom: 1px solid rgba(0, 0, 0, .125) -} - -.card-header:first-child { - border-radius: calc(.25rem - 1px) calc(.25rem - 1px) 0 0 -} - -.card-footer { - padding: .5rem 1rem; - background-color: rgba(0, 0, 0, .03); - border-top: 1px solid rgba(0, 0, 0, .125) -} - -.card-footer:last-child { - border-radius: 0 0 calc(.25rem - 1px) calc(.25rem - 1px) -} - -.card-header-tabs { - margin-right: -.5rem; - margin-bottom: -.5rem; - margin-left: -.5rem; - border-bottom: 0 -} - -.card-header-pills { - margin-right: -.5rem; - margin-left: -.5rem -} - -.card-img-overlay { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - padding: 1rem; - border-radius: calc(.25rem - 1px) -} - -.card-img, -.card-img-bottom, -.card-img-top { - width: 100% -} - -.card-img, -.card-img-top { - border-top-left-radius: calc(.25rem - 1px); - border-top-right-radius: calc(.25rem - 1px) -} - -.card-img, -.card-img-bottom { - border-bottom-right-radius: calc(.25rem - 1px); - border-bottom-left-radius: calc(.25rem - 1px) -} - -.card-group>.card { - margin-bottom: .75rem -} - -@media (min-width:576px) { - .card-group { - display: flex; - flex-flow: row wrap - } - .card-group>.card { - flex: 1 0 0%; - margin-bottom: 0 - } - .card-group>.card+.card { - margin-left: 0; - border-left: 0 - } - .card-group>.card:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0 - } - .card-group>.card:not(:last-child) .card-header, - .card-group>.card:not(:last-child) .card-img-top { - border-top-right-radius: 0 - } - .card-group>.card:not(:last-child) .card-footer, - .card-group>.card:not(:last-child) .card-img-bottom { - border-bottom-right-radius: 0 - } - .card-group>.card:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0 - } - .card-group>.card:not(:first-child) .card-header, - .card-group>.card:not(:first-child) .card-img-top { - border-top-left-radius: 0 - } - .card-group>.card:not(:first-child) .card-footer, - .card-group>.card:not(:first-child) .card-img-bottom { - border-bottom-left-radius: 0 - } -} - -.accordion-button { - position: relative; - display: flex; - align-items: center; - width: 100%; - padding: 1rem 1.25rem; - font-size: 1rem; - color: #212529; - text-align: left; - background-color: #fff; - border: 0; - border-radius: 0; - overflow-anchor: none; - transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, border-radius .15s ease -} - -@media (prefers-reduced-motion:reduce) { - .accordion-button { - transition: none - } -} - -.accordion-button:not(.collapsed) { - color: #0c63e4; - background-color: #e7f1ff; - box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .125) -} - -.accordion-button:not(.collapsed)::after { - background-image: 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"); - transform: rotate(-180deg) -} - -.accordion-button::after { - flex-shrink: 0; - width: 1.25rem; - height: 1.25rem; - margin-left: auto; - content: ""; - background-image: 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"); - background-repeat: no-repeat; - background-size: 1.25rem; - transition: transform .2s ease-in-out -} - -@media (prefers-reduced-motion:reduce) { - .accordion-button::after { - transition: none - } -} - -.accordion-button:hover { - z-index: 2 -} - -.accordion-button:focus { - z-index: 3; - border-color: #86b7fe; - outline: 0; - box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25) -} - -.accordion-header { - margin-bottom: 0 -} - -.accordion-item { - background-color: #fff; - border: 1px solid rgba(0, 0, 0, .125) -} - -.accordion-item:first-of-type { - border-top-left-radius: .25rem; - border-top-right-radius: .25rem -} - -.accordion-item:first-of-type .accordion-button { - border-top-left-radius: calc(.25rem - 1px); - border-top-right-radius: calc(.25rem - 1px) -} - -.accordion-item:not(:first-of-type) { - border-top: 0 -} - -.accordion-item:last-of-type { - border-bottom-right-radius: .25rem; - border-bottom-left-radius: .25rem -} - -.accordion-item:last-of-type .accordion-button.collapsed { - border-bottom-right-radius: calc(.25rem - 1px); - border-bottom-left-radius: calc(.25rem - 1px) -} - -.accordion-item:last-of-type .accordion-collapse { - border-bottom-right-radius: .25rem; - border-bottom-left-radius: .25rem -} - -.accordion-body { - padding: 1rem 1.25rem -} - -.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 { - border-radius: 0 -} - -.breadcrumb { - display: flex; - flex-wrap: wrap; - padding: 0 0; - margin-bottom: 1rem; - list-style: none -} - -.breadcrumb-item+.breadcrumb-item { - padding-left: .5rem -} - -.breadcrumb-item+.breadcrumb-item::before { - float: left; - padding-right: .5rem; - color: #6c757d; - content: var(--bs-breadcrumb-divider, "/") -} - -.breadcrumb-item.active { - color: #6c757d -} - -.pagination { - display: flex; - padding-left: 0; - list-style: none -} - -.page-link { - position: relative; - display: block; - color: #0d6efd; - text-decoration: none; - background-color: #fff; - border: 1px solid #dee2e6; - 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: #0a58ca; - background-color: #e9ecef; - border-color: #dee2e6 -} - -.page-link:focus { - z-index: 3; - color: #0a58ca; - background-color: #e9ecef; - outline: 0; - box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25) -} - -.page-item:not(:first-child) .page-link { - margin-left: -1px -} - -.page-item.active .page-link { - z-index: 3; - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd -} - -.page-item.disabled .page-link { - color: #6c757d; - pointer-events: none; - background-color: #fff; - border-color: #dee2e6 -} - -.page-link { - padding: .375rem .75rem -} - -.page-item:first-child .page-link { - border-top-left-radius: .25rem; - border-bottom-left-radius: .25rem -} - -.page-item:last-child .page-link { - border-top-right-radius: .25rem; - border-bottom-right-radius: .25rem -} - -.pagination-lg .page-link { - padding: .75rem 1.5rem; - font-size: 1.25rem -} - -.pagination-lg .page-item:first-child .page-link { - border-top-left-radius: .3rem; - border-bottom-left-radius: .3rem -} - -.pagination-lg .page-item:last-child .page-link { - border-top-right-radius: .3rem; - border-bottom-right-radius: .3rem -} - -.pagination-sm .page-link { - padding: .25rem .5rem; - font-size: .875rem -} - -.pagination-sm .page-item:first-child .page-link { - border-top-left-radius: .2rem; - border-bottom-left-radius: .2rem -} - -.pagination-sm .page-item:last-child .page-link { - border-top-right-radius: .2rem; - border-bottom-right-radius: .2rem -} - -.badge { - display: inline-block; - padding: .35em .65em; - font-size: .75em; - font-weight: 700; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: .25rem -} - -.badge:empty { - display: none -} - -.btn .badge { - position: relative; - top: -1px -} - -.alert { - position: relative; - padding: 1rem 1rem; - margin-bottom: 1rem; - border: 1px solid transparent; - border-radius: .25rem -} - -.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 { - color: #084298; - background-color: #cfe2ff; - border-color: #b6d4fe -} - -.alert-primary .alert-link { - color: #06357a -} - -.alert-secondary { - color: #41464b; - background-color: #e2e3e5; - border-color: #d3d6d8 -} - -.alert-secondary .alert-link { - color: #34383c -} - -.alert-success { - color: #0f5132; - background-color: #d1e7dd; - border-color: #badbcc -} - -.alert-success .alert-link { - color: #0c4128 -} - -.alert-info { - color: #055160; - background-color: #cff4fc; - border-color: #b6effb -} - -.alert-info .alert-link { - color: #04414d -} - -.alert-warning { - color: #664d03; - background-color: #fff3cd; - border-color: #ffecb5 -} - -.alert-warning .alert-link { - color: #523e02 -} - -.alert-danger { - color: #842029; - background-color: #f8d7da; - border-color: #f5c2c7 -} - -.alert-danger .alert-link { - color: #6a1a21 -} - -.alert-light { - color: #636464; - background-color: #fefefe; - border-color: #fdfdfe -} - -.alert-light .alert-link { - color: #4f5050 -} - -.alert-dark { - color: #141619; - background-color: #d3d3d4; - border-color: #bcbebf -} - -.alert-dark .alert-link { - color: #101214 -} - -@-webkit-keyframes progress-bar-stripes { - 0% { - background-position-x: 1rem - } -} - -@keyframes progress-bar-stripes { - 0% { - background-position-x: 1rem - } -} - -.progress { - display: flex; - height: 1rem; - overflow: hidden; - font-size: .75rem; - background-color: #e9ecef; - border-radius: .25rem -} - -.progress-bar { - display: flex; - flex-direction: column; - justify-content: center; - overflow: hidden; - color: #fff; - text-align: center; - white-space: nowrap; - background-color: #0d6efd; - transition: width .6s ease -} - -@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: 1rem 1rem -} - -.progress-bar-animated { - -webkit-animation: 1s linear infinite progress-bar-stripes; - animation: 1s linear infinite progress-bar-stripes -} - -@media (prefers-reduced-motion:reduce) { - .progress-bar-animated { - -webkit-animation: none; - animation: none - } -} - -.list-group { - display: flex; - flex-direction: column; - padding-left: 0; - margin-bottom: 0; - border-radius: .25rem -} - -.list-group-numbered { - list-style-type: none; - counter-reset: section -} - -.list-group-numbered>li::before { - content: counters(section, ".") ". "; - counter-increment: section -} - -.list-group-item-action { - width: 100%; - color: #495057; - text-align: inherit -} - -.list-group-item-action:focus, -.list-group-item-action:hover { - z-index: 1; - color: #495057; - text-decoration: none; - background-color: #f8f9fa -} - -.list-group-item-action:active { - color: #212529; - background-color: #e9ecef -} - -.list-group-item { - position: relative; - display: block; - padding: .5rem 1rem; - color: #212529; - text-decoration: none; - background-color: #fff; - border: 1px solid rgba(0, 0, 0, .125) -} - -.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: #6c757d; - pointer-events: none; - background-color: #fff -} - -.list-group-item.active { - z-index: 2; - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd -} - -.list-group-item+.list-group-item { - border-top-width: 0 -} - -.list-group-item+.list-group-item.active { - margin-top: -1px; - border-top-width: 1px -} - -.list-group-horizontal { - flex-direction: row -} - -.list-group-horizontal>.list-group-item:first-child { - border-bottom-left-radius: .25rem; - border-top-right-radius: 0 -} - -.list-group-horizontal>.list-group-item:last-child { - border-top-right-radius: .25rem; - 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: 1px; - border-left-width: 0 -} - -.list-group-horizontal>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px -} - -@media (min-width:576px) { - .list-group-horizontal-sm { - flex-direction: row - } - .list-group-horizontal-sm>.list-group-item:first-child { - border-bottom-left-radius: .25rem; - border-top-right-radius: 0 - } - .list-group-horizontal-sm>.list-group-item:last-child { - border-top-right-radius: .25rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-sm>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-sm>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-sm>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -@media (min-width:768px) { - .list-group-horizontal-md { - flex-direction: row - } - .list-group-horizontal-md>.list-group-item:first-child { - border-bottom-left-radius: .25rem; - border-top-right-radius: 0 - } - .list-group-horizontal-md>.list-group-item:last-child { - border-top-right-radius: .25rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-md>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-md>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-md>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -@media (min-width:992px) { - .list-group-horizontal-lg { - flex-direction: row - } - .list-group-horizontal-lg>.list-group-item:first-child { - border-bottom-left-radius: .25rem; - border-top-right-radius: 0 - } - .list-group-horizontal-lg>.list-group-item:last-child { - border-top-right-radius: .25rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-lg>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-lg>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-lg>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -@media (min-width:1200px) { - .list-group-horizontal-xl { - flex-direction: row - } - .list-group-horizontal-xl>.list-group-item:first-child { - border-bottom-left-radius: .25rem; - border-top-right-radius: 0 - } - .list-group-horizontal-xl>.list-group-item:last-child { - border-top-right-radius: .25rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-xl>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-xl>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-xl>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -@media (min-width:1400px) { - .list-group-horizontal-xxl { - flex-direction: row - } - .list-group-horizontal-xxl>.list-group-item:first-child { - border-bottom-left-radius: .25rem; - border-top-right-radius: 0 - } - .list-group-horizontal-xxl>.list-group-item:last-child { - border-top-right-radius: .25rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-xxl>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-xxl>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-xxl>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -.list-group-flush { - border-radius: 0 -} - -.list-group-flush>.list-group-item { - border-width: 0 0 1px -} - -.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 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat; - border: 0; - border-radius: .25rem; - 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 { - width: 350px; - max-width: 100%; - font-size: .875rem; - pointer-events: auto; - background-color: rgba(255, 255, 255, .85); - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .1); - box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15); - border-radius: .25rem -} - -.toast.showing { - opacity: 0 -} - -.toast:not(.show) { - display: none -} - -.toast-container { - width: -webkit-max-content; - width: -moz-max-content; - width: max-content; - max-width: 100%; - pointer-events: none -} - -.toast-container>:not(:last-child) { - margin-bottom: .75rem -} - -.toast-header { - display: flex; - align-items: center; - padding: .5rem .75rem; - color: #6c757d; - background-color: rgba(255, 255, 255, .85); - background-clip: padding-box; - border-bottom: 1px solid rgba(0, 0, 0, .05); - border-top-left-radius: calc(.25rem - 1px); - border-top-right-radius: calc(.25rem - 1px) -} - -.toast-header .btn-close { - margin-right: -.375rem; - margin-left: .75rem -} - -.toast-body { - padding: .75rem; - word-wrap: break-word -} - -.modal { - position: fixed; - top: 0; - left: 0; - z-index: 1055; - display: none; - width: 100%; - height: 100%; - overflow-x: hidden; - overflow-y: auto; - outline: 0 -} - -.modal-dialog { - position: relative; - width: auto; - margin: .5rem; - 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% - 1rem) -} - -.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% - 1rem) -} - -.modal-content { - position: relative; - display: flex; - flex-direction: column; - width: 100%; - pointer-events: auto; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: .3rem; - outline: 0 -} - -.modal-backdrop { - position: fixed; - top: 0; - left: 0; - z-index: 1050; - width: 100vw; - height: 100vh; - background-color: #000 -} - -.modal-backdrop.fade { - opacity: 0 -} - -.modal-backdrop.show { - opacity: .5 -} - -.modal-header { - display: flex; - flex-shrink: 0; - align-items: center; - justify-content: space-between; - padding: 1rem 1rem; - border-bottom: 1px solid #dee2e6; - border-top-left-radius: calc(.3rem - 1px); - border-top-right-radius: calc(.3rem - 1px) -} - -.modal-header .btn-close { - padding: .5rem .5rem; - margin: -.5rem -.5rem -.5rem auto -} - -.modal-title { - margin-bottom: 0; - line-height: 1.5 -} - -.modal-body { - position: relative; - flex: 1 1 auto; - padding: 1rem -} - -.modal-footer { - display: flex; - flex-wrap: wrap; - flex-shrink: 0; - align-items: center; - justify-content: flex-end; - padding: .75rem; - border-top: 1px solid #dee2e6; - border-bottom-right-radius: calc(.3rem - 1px); - border-bottom-left-radius: calc(.3rem - 1px) -} - -.modal-footer>* { - margin: .25rem -} - -@media (min-width:576px) { - .modal-dialog { - max-width: 500px; - margin: 1.75rem auto - } - .modal-dialog-scrollable { - height: calc(100% - 3.5rem) - } - .modal-dialog-centered { - min-height: calc(100% - 3.5rem) - } - .modal-sm { - max-width: 300px - } -} - -@media (min-width:992px) { - .modal-lg, - .modal-xl { - max-width: 800px - } -} - -@media (min-width:1200px) { - .modal-xl { - max-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-header { - border-radius: 0 -} - -.modal-fullscreen .modal-body { - overflow-y: auto -} - -.modal-fullscreen .modal-footer { - border-radius: 0 -} - -@media (max-width:575.98px) { - .modal-fullscreen-sm-down { - width: 100vw; - max-width: none; - height: 100%; - margin: 0 - } - .modal-fullscreen-sm-down .modal-content { - height: 100%; - border: 0; - border-radius: 0 - } - .modal-fullscreen-sm-down .modal-header { - border-radius: 0 - } - .modal-fullscreen-sm-down .modal-body { - overflow-y: auto - } - .modal-fullscreen-sm-down .modal-footer { - border-radius: 0 - } -} - -@media (max-width:767.98px) { - .modal-fullscreen-md-down { - width: 100vw; - max-width: none; - height: 100%; - margin: 0 - } - .modal-fullscreen-md-down .modal-content { - height: 100%; - border: 0; - border-radius: 0 - } - .modal-fullscreen-md-down .modal-header { - border-radius: 0 - } - .modal-fullscreen-md-down .modal-body { - overflow-y: auto - } - .modal-fullscreen-md-down .modal-footer { - border-radius: 0 - } -} - -@media (max-width:991.98px) { - .modal-fullscreen-lg-down { - width: 100vw; - max-width: none; - height: 100%; - margin: 0 - } - .modal-fullscreen-lg-down .modal-content { - height: 100%; - border: 0; - border-radius: 0 - } - .modal-fullscreen-lg-down .modal-header { - border-radius: 0 - } - .modal-fullscreen-lg-down .modal-body { - overflow-y: auto - } - .modal-fullscreen-lg-down .modal-footer { - border-radius: 0 - } -} - -@media (max-width:1199.98px) { - .modal-fullscreen-xl-down { - width: 100vw; - max-width: none; - height: 100%; - margin: 0 - } - .modal-fullscreen-xl-down .modal-content { - height: 100%; - border: 0; - border-radius: 0 - } - .modal-fullscreen-xl-down .modal-header { - border-radius: 0 - } - .modal-fullscreen-xl-down .modal-body { - overflow-y: auto - } - .modal-fullscreen-xl-down .modal-footer { - border-radius: 0 - } -} - -@media (max-width:1399.98px) { - .modal-fullscreen-xxl-down { - width: 100vw; - max-width: none; - height: 100%; - margin: 0 - } - .modal-fullscreen-xxl-down .modal-content { - height: 100%; - border: 0; - border-radius: 0 - } - .modal-fullscreen-xxl-down .modal-header { - border-radius: 0 - } - .modal-fullscreen-xxl-down .modal-body { - overflow-y: auto - } - .modal-fullscreen-xxl-down .modal-footer { - border-radius: 0 - } -} - -.tooltip { - position: absolute; - z-index: 1080; - display: block; - margin: 0; - 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; - word-spacing: normal; - white-space: normal; - line-break: auto; - font-size: .875rem; - word-wrap: break-word; - opacity: 0 -} - -.tooltip.show { - opacity: .9 -} - -.tooltip .tooltip-arrow { - position: absolute; - display: block; - width: .8rem; - height: .4rem -} - -.tooltip .tooltip-arrow::before { - position: absolute; - content: ""; - border-color: transparent; - border-style: solid -} - -.bs-tooltip-auto[data-popper-placement^=top], -.bs-tooltip-top { - padding: .4rem 0 -} - -.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: .4rem .4rem 0; - border-top-color: #000 -} - -.bs-tooltip-auto[data-popper-placement^=right], -.bs-tooltip-end { - padding: 0 .4rem -} - -.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow, -.bs-tooltip-end .tooltip-arrow { - left: 0; - width: .4rem; - height: .8rem -} - -.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before, -.bs-tooltip-end .tooltip-arrow::before { - right: -1px; - border-width: .4rem .4rem .4rem 0; - border-right-color: #000 -} - -.bs-tooltip-auto[data-popper-placement^=bottom], -.bs-tooltip-bottom { - padding: .4rem 0 -} - -.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 .4rem .4rem; - border-bottom-color: #000 -} - -.bs-tooltip-auto[data-popper-placement^=left], -.bs-tooltip-start { - padding: 0 .4rem -} - -.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow, -.bs-tooltip-start .tooltip-arrow { - right: 0; - width: .4rem; - height: .8rem -} - -.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before, -.bs-tooltip-start .tooltip-arrow::before { - left: -1px; - border-width: .4rem 0 .4rem .4rem; - border-left-color: #000 -} - -.tooltip-inner { - max-width: 200px; - padding: .25rem .5rem; - color: #fff; - text-align: center; - background-color: #000; - border-radius: .25rem -} - -.popover { - position: absolute; - top: 0; - left: 0; - z-index: 1070; - display: block; - max-width: 276px; - 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; - word-spacing: normal; - white-space: normal; - line-break: auto; - font-size: .875rem; - word-wrap: break-word; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: .3rem -} - -.popover .popover-arrow { - position: absolute; - display: block; - width: 1rem; - height: .5rem -} - -.popover .popover-arrow::after, -.popover .popover-arrow::before { - position: absolute; - display: block; - content: ""; - border-color: transparent; - border-style: solid -} - -.bs-popover-auto[data-popper-placement^=top]>.popover-arrow, -.bs-popover-top>.popover-arrow { - bottom: calc(-.5rem - 1px) -} - -.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before, -.bs-popover-top>.popover-arrow::before { - bottom: 0; - border-width: .5rem .5rem 0; - border-top-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after, -.bs-popover-top>.popover-arrow::after { - bottom: 1px; - border-width: .5rem .5rem 0; - border-top-color: #fff -} - -.bs-popover-auto[data-popper-placement^=right]>.popover-arrow, -.bs-popover-end>.popover-arrow { - left: calc(-.5rem - 1px); - width: .5rem; - height: 1rem -} - -.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before, -.bs-popover-end>.popover-arrow::before { - left: 0; - border-width: .5rem .5rem .5rem 0; - border-right-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after, -.bs-popover-end>.popover-arrow::after { - left: 1px; - border-width: .5rem .5rem .5rem 0; - border-right-color: #fff -} - -.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow, -.bs-popover-bottom>.popover-arrow { - top: calc(-.5rem - 1px) -} - -.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before, -.bs-popover-bottom>.popover-arrow::before { - top: 0; - border-width: 0 .5rem .5rem .5rem; - border-bottom-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after, -.bs-popover-bottom>.popover-arrow::after { - top: 1px; - border-width: 0 .5rem .5rem .5rem; - border-bottom-color: #fff -} - -.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: 1rem; - margin-left: -.5rem; - content: ""; - border-bottom: 1px solid #f0f0f0 -} - -.bs-popover-auto[data-popper-placement^=left]>.popover-arrow, -.bs-popover-start>.popover-arrow { - right: calc(-.5rem - 1px); - width: .5rem; - height: 1rem -} - -.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before, -.bs-popover-start>.popover-arrow::before { - right: 0; - border-width: .5rem 0 .5rem .5rem; - border-left-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after, -.bs-popover-start>.popover-arrow::after { - right: 1px; - border-width: .5rem 0 .5rem .5rem; - border-left-color: #fff -} - -.popover-header { - padding: .5rem 1rem; - margin-bottom: 0; - font-size: 1rem; - background-color: #f0f0f0; - border-bottom: 1px solid rgba(0, 0, 0, .2); - border-top-left-radius: calc(.3rem - 1px); - border-top-right-radius: calc(.3rem - 1px) -} - -.popover-header:empty { - display: none -} - -.popover-body { - padding: 1rem 1rem; - color: #212529 -} - -.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 -} - -@-webkit-keyframes spinner-border { - to { - transform: rotate(360deg) - } -} - -@keyframes spinner-border { - to { - transform: rotate(360deg) - } -} - -.spinner-border { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: -.125em; - border: .25em solid currentColor; - border-right-color: transparent; - border-radius: 50%; - -webkit-animation: .75s linear infinite spinner-border; - animation: .75s linear infinite spinner-border -} - -.spinner-border-sm { - width: 1rem; - height: 1rem; - border-width: .2em -} - -@-webkit-keyframes spinner-grow { - 0% { - transform: scale(0) - } - 50% { - opacity: 1; - transform: none - } -} - -@keyframes spinner-grow { - 0% { - transform: scale(0) - } - 50% { - opacity: 1; - transform: none - } -} - -.spinner-grow { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: -.125em; - background-color: currentColor; - border-radius: 50%; - opacity: 0; - -webkit-animation: .75s linear infinite spinner-grow; - animation: .75s linear infinite spinner-grow -} - -.spinner-grow-sm { - width: 1rem; - height: 1rem -} - -@media (prefers-reduced-motion:reduce) { - .spinner-border, - .spinner-grow { - -webkit-animation-duration: 1.5s; - animation-duration: 1.5s - } -} - -.offcanvas { - position: fixed; - bottom: 0; - z-index: 1045; - display: flex; - flex-direction: column; - max-width: 100%; - visibility: hidden; - background-color: #fff; - background-clip: padding-box; - outline: 0; - transition: transform .3s ease-in-out -} - -@media (prefers-reduced-motion:reduce) { - .offcanvas { - transition: none - } -} - -.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: 1rem 1rem -} - -.offcanvas-header .btn-close { - padding: .5rem .5rem; - margin-top: -.5rem; - margin-right: -.5rem; - margin-bottom: -.5rem -} - -.offcanvas-title { - margin-bottom: 0; - line-height: 1.5 -} - -.offcanvas-body { - flex-grow: 1; - padding: 1rem 1rem; - overflow-y: auto -} - -.offcanvas-start { - top: 0; - left: 0; - width: 400px; - border-right: 1px solid rgba(0, 0, 0, .2); - transform: translateX(-100%) -} - -.offcanvas-end { - top: 0; - right: 0; - width: 400px; - border-left: 1px solid rgba(0, 0, 0, .2); - transform: translateX(100%) -} - -.offcanvas-top { - top: 0; - right: 0; - left: 0; - height: 30vh; - max-height: 100%; - border-bottom: 1px solid rgba(0, 0, 0, .2); - transform: translateY(-100%) -} - -.offcanvas-bottom { - right: 0; - left: 0; - height: 30vh; - max-height: 100%; - border-top: 1px solid rgba(0, 0, 0, .2); - transform: translateY(100%) -} - -.offcanvas.show { - transform: none -} - -.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 { - -webkit-animation: placeholder-glow 2s ease-in-out infinite; - animation: placeholder-glow 2s ease-in-out infinite -} - -@-webkit-keyframes placeholder-glow { - 50% { - opacity: .2 - } -} - -@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%; - -webkit-animation: placeholder-wave 2s linear infinite; - animation: placeholder-wave 2s linear infinite -} - -@-webkit-keyframes placeholder-wave { - 100% { - -webkit-mask-position: -200% 0%; - mask-position: -200% 0% - } -} - -@keyframes placeholder-wave { - 100% { - -webkit-mask-position: -200% 0%; - mask-position: -200% 0% - } -} - -.clearfix::after { - display: block; - clear: both; - content: "" -} - -.link-primary { - color: #0d6efd -} - -.link-primary:focus, -.link-primary:hover { - color: #0a58ca -} - -.link-secondary { - color: #6c757d -} - -.link-secondary:focus, -.link-secondary:hover { - color: #565e64 -} - -.link-success { - color: #198754 -} - -.link-success:focus, -.link-success:hover { - color: #146c43 -} - -.link-info { - color: #0dcaf0 -} - -.link-info:focus, -.link-info:hover { - color: #3dd5f3 -} - -.link-warning { - color: #ffc107 -} - -.link-warning:focus, -.link-warning:hover { - color: #ffcd39 -} - -.link-danger { - color: #dc3545 -} - -.link-danger:focus, -.link-danger:hover { - color: #b02a37 -} - -.link-light { - color: #f8f9fa -} - -.link-light:focus, -.link-light:hover { - color: #f9fafb -} - -.link-dark { - color: #212529 -} - -.link-dark:focus, -.link-dark:hover { - color: #1a1e21 -} - -.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: calc(3 / 4 * 100%) -} - -.ratio-16x9 { - --bs-aspect-ratio: calc(9 / 16 * 100%) -} - -.ratio-21x9 { - --bs-aspect-ratio: calc(9 / 21 * 100%) -} - -.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 -} - -@media (min-width:576px) { - .sticky-sm-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020 - } -} - -@media (min-width:768px) { - .sticky-md-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020 - } -} - -@media (min-width:992px) { - .sticky-lg-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020 - } -} - -@media (min-width:1200px) { - .sticky-xl-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020 - } -} - -@media (min-width:1400px) { - .sticky-xxl-top { - position: -webkit-sticky; - position: sticky; - top: 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: 1px solid #dee2e6!important -} - -.border-0 { - border: 0!important -} - -.border-top { - border-top: 1px solid #dee2e6!important -} - -.border-top-0 { - border-top: 0!important -} - -.border-end { - border-right: 1px solid #dee2e6!important -} - -.border-end-0 { - border-right: 0!important -} - -.border-bottom { - border-bottom: 1px solid #dee2e6!important -} - -.border-bottom-0 { - border-bottom: 0!important -} - -.border-start { - border-left: 1px solid #dee2e6!important -} - -.border-start-0 { - border-left: 0!important -} - -.border-primary { - border-color: #0d6efd!important -} - -.border-secondary { - border-color: #6c757d!important -} - -.border-success { - border-color: #198754!important -} - -.border-info { - border-color: #0dcaf0!important -} - -.border-warning { - border-color: #ffc107!important -} - -.border-danger { - border-color: #dc3545!important -} - -.border-light { - border-color: #f8f9fa!important -} - -.border-dark { - border-color: #212529!important -} - -.border-white { - border-color: #fff!important -} - -.border-1 { - border-width: 1px!important -} - -.border-2 { - border-width: 2px!important -} - -.border-3 { - border-width: 3px!important -} - -.border-4 { - border-width: 4px!important -} - -.border-5 { - border-width: 5px!important -} - -.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 -} - -.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 -} - -.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 -} - -.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-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-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-gradient-primary { - background-color: #4e73df; - background-image: linear-gradient(180deg, #4e73df 10%, #224abe); - background-size: cover -} - -.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-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: .25rem!important -} - -.rounded-0 { - border-radius: 0!important -} - -.rounded-1 { - border-radius: .2rem!important -} - -.rounded-2 { - border-radius: .25rem!important -} - -.rounded-3 { - border-radius: .3rem!important -} - -.rounded-circle { - border-radius: 50%!important -} - -.rounded-pill { - border-radius: 50rem!important -} - -.rounded-top { - border-top-left-radius: .25rem!important; - border-top-right-radius: .25rem!important -} - -.rounded-end { - border-top-right-radius: .25rem!important; - border-bottom-right-radius: .25rem!important -} - -.rounded-bottom { - border-bottom-right-radius: .25rem!important; - border-bottom-left-radius: .25rem!important -} - -.rounded-start { - border-bottom-left-radius: .25rem!important; - border-top-left-radius: .25rem!important -} - -.visible { - visibility: visible!important -} - -.invisible { - visibility: hidden!important -} - -@media (min-width:576px) { - .float-sm-start { - float: left!important - } - .float-sm-end { - float: right!important - } - .float-sm-none { - float: none!important - } - .d-sm-inline { - display: inline!important - } - .d-sm-inline-block { - display: inline-block!important - } - .d-sm-block { - display: block!important - } - .d-sm-grid { - display: grid!important - } - .d-sm-table { - display: table!important - } - .d-sm-table-row { - display: table-row!important - } - .d-sm-table-cell { - display: table-cell!important - } - .d-sm-flex { - display: flex!important - } - .d-sm-inline-flex { - display: inline-flex!important - } - .d-sm-none { - display: none!important - } - .flex-sm-fill { - flex: 1 1 auto!important - } - .flex-sm-row { - flex-direction: row!important - } - .flex-sm-column { - flex-direction: column!important - } - .flex-sm-row-reverse { - flex-direction: row-reverse!important - } - .flex-sm-column-reverse { - flex-direction: column-reverse!important - } - .flex-sm-grow-0 { - flex-grow: 0!important - } - .flex-sm-grow-1 { - flex-grow: 1!important - } - .flex-sm-shrink-0 { - flex-shrink: 0!important - } - .flex-sm-shrink-1 { - flex-shrink: 1!important - } - .flex-sm-wrap { - flex-wrap: wrap!important - } - .flex-sm-nowrap { - flex-wrap: nowrap!important - } - .flex-sm-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .gap-sm-0 { - gap: 0!important - } - .gap-sm-1 { - gap: .25rem!important - } - .gap-sm-2 { - gap: .5rem!important - } - .gap-sm-3 { - gap: 1rem!important - } - .gap-sm-4 { - gap: 1.5rem!important - } - .gap-sm-5 { - gap: 3rem!important - } - .justify-content-sm-start { - justify-content: flex-start!important - } - .justify-content-sm-end { - justify-content: flex-end!important - } - .justify-content-sm-center { - justify-content: center!important - } - .justify-content-sm-between { - justify-content: space-between!important - } - .justify-content-sm-around { - justify-content: space-around!important - } - .justify-content-sm-evenly { - justify-content: space-evenly!important - } - .align-items-sm-start { - align-items: flex-start!important - } - .align-items-sm-end { - align-items: flex-end!important - } - .align-items-sm-center { - align-items: center!important - } - .align-items-sm-baseline { - align-items: baseline!important - } - .align-items-sm-stretch { - align-items: stretch!important - } - .align-content-sm-start { - align-content: flex-start!important - } - .align-content-sm-end { - align-content: flex-end!important - } - .align-content-sm-center { - align-content: center!important - } - .align-content-sm-between { - align-content: space-between!important - } - .align-content-sm-around { - align-content: space-around!important - } - .align-content-sm-stretch { - align-content: stretch!important - } - .align-self-sm-auto { - align-self: auto!important - } - .align-self-sm-start { - align-self: flex-start!important - } - .align-self-sm-end { - align-self: flex-end!important - } - .align-self-sm-center { - align-self: center!important - } - .align-self-sm-baseline { - align-self: baseline!important - } - .align-self-sm-stretch { - align-self: stretch!important - } - .order-sm-first { - order: -1!important - } - .order-sm-0 { - order: 0!important - } - .order-sm-1 { - order: 1!important - } - .order-sm-2 { - order: 2!important - } - .order-sm-3 { - order: 3!important - } - .order-sm-4 { - order: 4!important - } - .order-sm-5 { - order: 5!important - } - .order-sm-last { - order: 6!important - } - .m-sm-0 { - margin: 0!important - } - .m-sm-1 { - margin: .25rem!important - } - .m-sm-2 { - margin: .5rem!important - } - .m-sm-3 { - margin: 1rem!important - } - .m-sm-4 { - margin: 1.5rem!important - } - .m-sm-5 { - margin: 3rem!important - } - .m-sm-auto { - margin: auto!important - } - .mx-sm-0 { - margin-right: 0!important; - margin-left: 0!important - } - .mx-sm-1 { - margin-right: .25rem!important; - margin-left: .25rem!important - } - .mx-sm-2 { - margin-right: .5rem!important; - margin-left: .5rem!important - } - .mx-sm-3 { - margin-right: 1rem!important; - margin-left: 1rem!important - } - .mx-sm-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important - } - .mx-sm-5 { - margin-right: 3rem!important; - margin-left: 3rem!important - } - .mx-sm-auto { - margin-right: auto!important; - margin-left: auto!important - } - .my-sm-0 { - margin-top: 0!important; - margin-bottom: 0!important - } - .my-sm-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important - } - .my-sm-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important - } - .my-sm-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important - } - .my-sm-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important - } - .my-sm-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important - } - .my-sm-auto { - margin-top: auto!important; - margin-bottom: auto!important - } - .mt-sm-0 { - margin-top: 0!important - } - .mt-sm-1 { - margin-top: .25rem!important - } - .mt-sm-2 { - margin-top: .5rem!important - } - .mt-sm-3 { - margin-top: 1rem!important - } - .mt-sm-4 { - margin-top: 1.5rem!important - } - .mt-sm-5 { - margin-top: 3rem!important - } - .mt-sm-auto { - margin-top: auto!important - } - .me-sm-0 { - margin-right: 0!important - } - .me-sm-1 { - margin-right: .25rem!important - } - .me-sm-2 { - margin-right: .5rem!important - } - .me-sm-3 { - margin-right: 1rem!important - } - .me-sm-4 { - margin-right: 1.5rem!important - } - .me-sm-5 { - margin-right: 3rem!important - } - .me-sm-auto { - margin-right: auto!important - } - .mb-sm-0 { - margin-bottom: 0!important - } - .mb-sm-1 { - margin-bottom: .25rem!important - } - .mb-sm-2 { - margin-bottom: .5rem!important - } - .mb-sm-3 { - margin-bottom: 1rem!important - } - .mb-sm-4 { - margin-bottom: 1.5rem!important - } - .mb-sm-5 { - margin-bottom: 3rem!important - } - .mb-sm-auto { - margin-bottom: auto!important - } - .ms-sm-0 { - margin-left: 0!important - } - .ms-sm-1 { - margin-left: .25rem!important - } - .ms-sm-2 { - margin-left: .5rem!important - } - .ms-sm-3 { - margin-left: 1rem!important - } - .ms-sm-4 { - margin-left: 1.5rem!important - } - .ms-sm-5 { - margin-left: 3rem!important - } - .ms-sm-auto { - margin-left: auto!important - } - .p-sm-0 { - padding: 0!important - } - .p-sm-1 { - padding: .25rem!important - } - .p-sm-2 { - padding: .5rem!important - } - .p-sm-3 { - padding: 1rem!important - } - .p-sm-4 { - padding: 1.5rem!important - } - .p-sm-5 { - padding: 3rem!important - } - .px-sm-0 { - padding-right: 0!important; - padding-left: 0!important - } - .px-sm-1 { - padding-right: .25rem!important; - padding-left: .25rem!important - } - .px-sm-2 { - padding-right: .5rem!important; - padding-left: .5rem!important - } - .px-sm-3 { - padding-right: 1rem!important; - padding-left: 1rem!important - } - .px-sm-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important - } - .px-sm-5 { - padding-right: 3rem!important; - padding-left: 3rem!important - } - .py-sm-0 { - padding-top: 0!important; - padding-bottom: 0!important - } - .py-sm-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important - } - .py-sm-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important - } - .py-sm-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important - } - .py-sm-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important - } - .py-sm-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important - } - .pt-sm-0 { - padding-top: 0!important - } - .pt-sm-1 { - padding-top: .25rem!important - } - .pt-sm-2 { - padding-top: .5rem!important - } - .pt-sm-3 { - padding-top: 1rem!important - } - .pt-sm-4 { - padding-top: 1.5rem!important - } - .pt-sm-5 { - padding-top: 3rem!important - } - .pe-sm-0 { - padding-right: 0!important - } - .pe-sm-1 { - padding-right: .25rem!important - } - .pe-sm-2 { - padding-right: .5rem!important - } - .pe-sm-3 { - padding-right: 1rem!important - } - .pe-sm-4 { - padding-right: 1.5rem!important - } - .pe-sm-5 { - padding-right: 3rem!important - } - .pb-sm-0 { - padding-bottom: 0!important - } - .pb-sm-1 { - padding-bottom: .25rem!important - } - .pb-sm-2 { - padding-bottom: .5rem!important - } - .pb-sm-3 { - padding-bottom: 1rem!important - } - .pb-sm-4 { - padding-bottom: 1.5rem!important - } - .pb-sm-5 { - padding-bottom: 3rem!important - } - .ps-sm-0 { - padding-left: 0!important - } - .ps-sm-1 { - padding-left: .25rem!important - } - .ps-sm-2 { - padding-left: .5rem!important - } - .ps-sm-3 { - padding-left: 1rem!important - } - .ps-sm-4 { - padding-left: 1.5rem!important - } - .ps-sm-5 { - padding-left: 3rem!important - } - .text-sm-start { - text-align: left!important - } - .text-sm-end { - text-align: right!important - } - .text-sm-center { - text-align: center!important - } -} - -@media (min-width:768px) { - .float-md-start { - float: left!important - } - .float-md-end { - float: right!important - } - .float-md-none { - float: none!important - } - .d-md-inline { - display: inline!important - } - .d-md-inline-block { - display: inline-block!important - } - .d-md-block { - display: block!important - } - .d-md-grid { - display: grid!important - } - .d-md-table { - display: table!important - } - .d-md-table-row { - display: table-row!important - } - .d-md-table-cell { - display: table-cell!important - } - .d-md-flex { - display: flex!important - } - .d-md-inline-flex { - display: inline-flex!important - } - .d-md-none { - display: none!important - } - .flex-md-fill { - flex: 1 1 auto!important - } - .flex-md-row { - flex-direction: row!important - } - .flex-md-column { - flex-direction: column!important - } - .flex-md-row-reverse { - flex-direction: row-reverse!important - } - .flex-md-column-reverse { - flex-direction: column-reverse!important - } - .flex-md-grow-0 { - flex-grow: 0!important - } - .flex-md-grow-1 { - flex-grow: 1!important - } - .flex-md-shrink-0 { - flex-shrink: 0!important - } - .flex-md-shrink-1 { - flex-shrink: 1!important - } - .flex-md-wrap { - flex-wrap: wrap!important - } - .flex-md-nowrap { - flex-wrap: nowrap!important - } - .flex-md-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .gap-md-0 { - gap: 0!important - } - .gap-md-1 { - gap: .25rem!important - } - .gap-md-2 { - gap: .5rem!important - } - .gap-md-3 { - gap: 1rem!important - } - .gap-md-4 { - gap: 1.5rem!important - } - .gap-md-5 { - gap: 3rem!important - } - .justify-content-md-start { - justify-content: flex-start!important - } - .justify-content-md-end { - justify-content: flex-end!important - } - .justify-content-md-center { - justify-content: center!important - } - .justify-content-md-between { - justify-content: space-between!important - } - .justify-content-md-around { - justify-content: space-around!important - } - .justify-content-md-evenly { - justify-content: space-evenly!important - } - .align-items-md-start { - align-items: flex-start!important - } - .align-items-md-end { - align-items: flex-end!important - } - .align-items-md-center { - align-items: center!important - } - .align-items-md-baseline { - align-items: baseline!important - } - .align-items-md-stretch { - align-items: stretch!important - } - .align-content-md-start { - align-content: flex-start!important - } - .align-content-md-end { - align-content: flex-end!important - } - .align-content-md-center { - align-content: center!important - } - .align-content-md-between { - align-content: space-between!important - } - .align-content-md-around { - align-content: space-around!important - } - .align-content-md-stretch { - align-content: stretch!important - } - .align-self-md-auto { - align-self: auto!important - } - .align-self-md-start { - align-self: flex-start!important - } - .align-self-md-end { - align-self: flex-end!important - } - .align-self-md-center { - align-self: center!important - } - .align-self-md-baseline { - align-self: baseline!important - } - .align-self-md-stretch { - align-self: stretch!important - } - .order-md-first { - order: -1!important - } - .order-md-0 { - order: 0!important - } - .order-md-1 { - order: 1!important - } - .order-md-2 { - order: 2!important - } - .order-md-3 { - order: 3!important - } - .order-md-4 { - order: 4!important - } - .order-md-5 { - order: 5!important - } - .order-md-last { - order: 6!important - } - .m-md-0 { - margin: 0!important - } - .m-md-1 { - margin: .25rem!important - } - .m-md-2 { - margin: .5rem!important - } - .m-md-3 { - margin: 1rem!important - } - .m-md-4 { - margin: 1.5rem!important - } - .m-md-5 { - margin: 3rem!important - } - .m-md-auto { - margin: auto!important - } - .mx-md-0 { - margin-right: 0!important; - margin-left: 0!important - } - .mx-md-1 { - margin-right: .25rem!important; - margin-left: .25rem!important - } - .mx-md-2 { - margin-right: .5rem!important; - margin-left: .5rem!important - } - .mx-md-3 { - margin-right: 1rem!important; - margin-left: 1rem!important - } - .mx-md-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important - } - .mx-md-5 { - margin-right: 3rem!important; - margin-left: 3rem!important - } - .mx-md-auto { - margin-right: auto!important; - margin-left: auto!important - } - .my-md-0 { - margin-top: 0!important; - margin-bottom: 0!important - } - .my-md-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important - } - .my-md-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important - } - .my-md-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important - } - .my-md-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important - } - .my-md-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important - } - .my-md-auto { - margin-top: auto!important; - margin-bottom: auto!important - } - .mt-md-0 { - margin-top: 0!important - } - .mt-md-1 { - margin-top: .25rem!important - } - .mt-md-2 { - margin-top: .5rem!important - } - .mt-md-3 { - margin-top: 1rem!important - } - .mt-md-4 { - margin-top: 1.5rem!important - } - .mt-md-5 { - margin-top: 3rem!important - } - .mt-md-auto { - margin-top: auto!important - } - .me-md-0 { - margin-right: 0!important - } - .me-md-1 { - margin-right: .25rem!important - } - .me-md-2 { - margin-right: .5rem!important - } - .me-md-3 { - margin-right: 1rem!important - } - .me-md-4 { - margin-right: 1.5rem!important - } - .me-md-5 { - margin-right: 3rem!important - } - .me-md-auto { - margin-right: auto!important - } - .mb-md-0 { - margin-bottom: 0!important - } - .mb-md-1 { - margin-bottom: .25rem!important - } - .mb-md-2 { - margin-bottom: .5rem!important - } - .mb-md-3 { - margin-bottom: 1rem!important - } - .mb-md-4 { - margin-bottom: 1.5rem!important - } - .mb-md-5 { - margin-bottom: 3rem!important - } - .mb-md-auto { - margin-bottom: auto!important - } - .ms-md-0 { - margin-left: 0!important - } - .ms-md-1 { - margin-left: .25rem!important - } - .ms-md-2 { - margin-left: .5rem!important - } - .ms-md-3 { - margin-left: 1rem!important - } - .ms-md-4 { - margin-left: 1.5rem!important - } - .ms-md-5 { - margin-left: 3rem!important - } - .ms-md-auto { - margin-left: auto!important - } - .p-md-0 { - padding: 0!important - } - .p-md-1 { - padding: .25rem!important - } - .p-md-2 { - padding: .5rem!important - } - .p-md-3 { - padding: 1rem!important - } - .p-md-4 { - padding: 1.5rem!important - } - .p-md-5 { - padding: 3rem!important - } - .px-md-0 { - padding-right: 0!important; - padding-left: 0!important - } - .px-md-1 { - padding-right: .25rem!important; - padding-left: .25rem!important - } - .px-md-2 { - padding-right: .5rem!important; - padding-left: .5rem!important - } - .px-md-3 { - padding-right: 1rem!important; - padding-left: 1rem!important - } - .px-md-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important - } - .px-md-5 { - padding-right: 3rem!important; - padding-left: 3rem!important - } - .py-md-0 { - padding-top: 0!important; - padding-bottom: 0!important - } - .py-md-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important - } - .py-md-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important - } - .py-md-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important - } - .py-md-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important - } - .py-md-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important - } - .pt-md-0 { - padding-top: 0!important - } - .pt-md-1 { - padding-top: .25rem!important - } - .pt-md-2 { - padding-top: .5rem!important - } - .pt-md-3 { - padding-top: 1rem!important - } - .pt-md-4 { - padding-top: 1.5rem!important - } - .pt-md-5 { - padding-top: 3rem!important - } - .pe-md-0 { - padding-right: 0!important - } - .pe-md-1 { - padding-right: .25rem!important - } - .pe-md-2 { - padding-right: .5rem!important - } - .pe-md-3 { - padding-right: 1rem!important - } - .pe-md-4 { - padding-right: 1.5rem!important - } - .pe-md-5 { - padding-right: 3rem!important - } - .pb-md-0 { - padding-bottom: 0!important - } - .pb-md-1 { - padding-bottom: .25rem!important - } - .pb-md-2 { - padding-bottom: .5rem!important - } - .pb-md-3 { - padding-bottom: 1rem!important - } - .pb-md-4 { - padding-bottom: 1.5rem!important - } - .pb-md-5 { - padding-bottom: 3rem!important - } - .ps-md-0 { - padding-left: 0!important - } - .ps-md-1 { - padding-left: .25rem!important - } - .ps-md-2 { - padding-left: .5rem!important - } - .ps-md-3 { - padding-left: 1rem!important - } - .ps-md-4 { - padding-left: 1.5rem!important - } - .ps-md-5 { - padding-left: 3rem!important - } - .text-md-start { - text-align: left!important - } - .text-md-end { - text-align: right!important - } - .text-md-center { - text-align: center!important - } -} - -@media (min-width:992px) { - .float-lg-start { - float: left!important - } - .float-lg-end { - float: right!important - } - .float-lg-none { - float: none!important - } - .d-lg-inline { - display: inline!important - } - .d-lg-inline-block { - display: inline-block!important - } - .d-lg-block { - display: block!important - } - .d-lg-grid { - display: grid!important - } - .d-lg-table { - display: table!important - } - .d-lg-table-row { - display: table-row!important - } - .d-lg-table-cell { - display: table-cell!important - } - .d-lg-flex { - display: flex!important - } - .d-lg-inline-flex { - display: inline-flex!important - } - .d-lg-none { - display: none!important - } - .flex-lg-fill { - flex: 1 1 auto!important - } - .flex-lg-row { - flex-direction: row!important - } - .flex-lg-column { - flex-direction: column!important - } - .flex-lg-row-reverse { - flex-direction: row-reverse!important - } - .flex-lg-column-reverse { - flex-direction: column-reverse!important - } - .flex-lg-grow-0 { - flex-grow: 0!important - } - .flex-lg-grow-1 { - flex-grow: 1!important - } - .flex-lg-shrink-0 { - flex-shrink: 0!important - } - .flex-lg-shrink-1 { - flex-shrink: 1!important - } - .flex-lg-wrap { - flex-wrap: wrap!important - } - .flex-lg-nowrap { - flex-wrap: nowrap!important - } - .flex-lg-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .gap-lg-0 { - gap: 0!important - } - .gap-lg-1 { - gap: .25rem!important - } - .gap-lg-2 { - gap: .5rem!important - } - .gap-lg-3 { - gap: 1rem!important - } - .gap-lg-4 { - gap: 1.5rem!important - } - .gap-lg-5 { - gap: 3rem!important - } - .justify-content-lg-start { - justify-content: flex-start!important - } - .justify-content-lg-end { - justify-content: flex-end!important - } - .justify-content-lg-center { - justify-content: center!important - } - .justify-content-lg-between { - justify-content: space-between!important - } - .justify-content-lg-around { - justify-content: space-around!important - } - .justify-content-lg-evenly { - justify-content: space-evenly!important - } - .align-items-lg-start { - align-items: flex-start!important - } - .align-items-lg-end { - align-items: flex-end!important - } - .align-items-lg-center { - align-items: center!important - } - .align-items-lg-baseline { - align-items: baseline!important - } - .align-items-lg-stretch { - align-items: stretch!important - } - .align-content-lg-start { - align-content: flex-start!important - } - .align-content-lg-end { - align-content: flex-end!important - } - .align-content-lg-center { - align-content: center!important - } - .align-content-lg-between { - align-content: space-between!important - } - .align-content-lg-around { - align-content: space-around!important - } - .align-content-lg-stretch { - align-content: stretch!important - } - .align-self-lg-auto { - align-self: auto!important - } - .align-self-lg-start { - align-self: flex-start!important - } - .align-self-lg-end { - align-self: flex-end!important - } - .align-self-lg-center { - align-self: center!important - } - .align-self-lg-baseline { - align-self: baseline!important - } - .align-self-lg-stretch { - align-self: stretch!important - } - .order-lg-first { - order: -1!important - } - .order-lg-0 { - order: 0!important - } - .order-lg-1 { - order: 1!important - } - .order-lg-2 { - order: 2!important - } - .order-lg-3 { - order: 3!important - } - .order-lg-4 { - order: 4!important - } - .order-lg-5 { - order: 5!important - } - .order-lg-last { - order: 6!important - } - .m-lg-0 { - margin: 0!important - } - .m-lg-1 { - margin: .25rem!important - } - .m-lg-2 { - margin: .5rem!important - } - .m-lg-3 { - margin: 1rem!important - } - .m-lg-4 { - margin: 1.5rem!important - } - .m-lg-5 { - margin: 3rem!important - } - .m-lg-auto { - margin: auto!important - } - .mx-lg-0 { - margin-right: 0!important; - margin-left: 0!important - } - .mx-lg-1 { - margin-right: .25rem!important; - margin-left: .25rem!important - } - .mx-lg-2 { - margin-right: .5rem!important; - margin-left: .5rem!important - } - .mx-lg-3 { - margin-right: 1rem!important; - margin-left: 1rem!important - } - .mx-lg-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important - } - .mx-lg-5 { - margin-right: 3rem!important; - margin-left: 3rem!important - } - .mx-lg-auto { - margin-right: auto!important; - margin-left: auto!important - } - .my-lg-0 { - margin-top: 0!important; - margin-bottom: 0!important - } - .my-lg-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important - } - .my-lg-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important - } - .my-lg-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important - } - .my-lg-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important - } - .my-lg-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important - } - .my-lg-auto { - margin-top: auto!important; - margin-bottom: auto!important - } - .mt-lg-0 { - margin-top: 0!important - } - .mt-lg-1 { - margin-top: .25rem!important - } - .mt-lg-2 { - margin-top: .5rem!important - } - .mt-lg-3 { - margin-top: 1rem!important - } - .mt-lg-4 { - margin-top: 1.5rem!important - } - .mt-lg-5 { - margin-top: 3rem!important - } - .mt-lg-auto { - margin-top: auto!important - } - .me-lg-0 { - margin-right: 0!important - } - .me-lg-1 { - margin-right: .25rem!important - } - .me-lg-2 { - margin-right: .5rem!important - } - .me-lg-3 { - margin-right: 1rem!important - } - .me-lg-4 { - margin-right: 1.5rem!important - } - .me-lg-5 { - margin-right: 3rem!important - } - .me-lg-auto { - margin-right: auto!important - } - .mb-lg-0 { - margin-bottom: 0!important - } - .mb-lg-1 { - margin-bottom: .25rem!important - } - .mb-lg-2 { - margin-bottom: .5rem!important - } - .mb-lg-3 { - margin-bottom: 1rem!important - } - .mb-lg-4 { - margin-bottom: 1.5rem!important - } - .mb-lg-5 { - margin-bottom: 3rem!important - } - .mb-lg-auto { - margin-bottom: auto!important - } - .ms-lg-0 { - margin-left: 0!important - } - .ms-lg-1 { - margin-left: .25rem!important - } - .ms-lg-2 { - margin-left: .5rem!important - } - .ms-lg-3 { - margin-left: 1rem!important - } - .ms-lg-4 { - margin-left: 1.5rem!important - } - .ms-lg-5 { - margin-left: 3rem!important - } - .ms-lg-auto { - margin-left: auto!important - } - .p-lg-0 { - padding: 0!important - } - .p-lg-1 { - padding: .25rem!important - } - .p-lg-2 { - padding: .5rem!important - } - .p-lg-3 { - padding: 1rem!important - } - .p-lg-4 { - padding: 1.5rem!important - } - .p-lg-5 { - padding: 3rem!important - } - .px-lg-0 { - padding-right: 0!important; - padding-left: 0!important - } - .px-lg-1 { - padding-right: .25rem!important; - padding-left: .25rem!important - } - .px-lg-2 { - padding-right: .5rem!important; - padding-left: .5rem!important - } - .px-lg-3 { - padding-right: 1rem!important; - padding-left: 1rem!important - } - .px-lg-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important - } - .px-lg-5 { - padding-right: 3rem!important; - padding-left: 3rem!important - } - .py-lg-0 { - padding-top: 0!important; - padding-bottom: 0!important - } - .py-lg-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important - } - .py-lg-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important - } - .py-lg-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important - } - .py-lg-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important - } - .py-lg-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important - } - .pt-lg-0 { - padding-top: 0!important - } - .pt-lg-1 { - padding-top: .25rem!important - } - .pt-lg-2 { - padding-top: .5rem!important - } - .pt-lg-3 { - padding-top: 1rem!important - } - .pt-lg-4 { - padding-top: 1.5rem!important - } - .pt-lg-5 { - padding-top: 3rem!important - } - .pe-lg-0 { - padding-right: 0!important - } - .pe-lg-1 { - padding-right: .25rem!important - } - .pe-lg-2 { - padding-right: .5rem!important - } - .pe-lg-3 { - padding-right: 1rem!important - } - .pe-lg-4 { - padding-right: 1.5rem!important - } - .pe-lg-5 { - padding-right: 3rem!important - } - .pb-lg-0 { - padding-bottom: 0!important - } - .pb-lg-1 { - padding-bottom: .25rem!important - } - .pb-lg-2 { - padding-bottom: .5rem!important - } - .pb-lg-3 { - padding-bottom: 1rem!important - } - .pb-lg-4 { - padding-bottom: 1.5rem!important - } - .pb-lg-5 { - padding-bottom: 3rem!important - } - .ps-lg-0 { - padding-left: 0!important - } - .ps-lg-1 { - padding-left: .25rem!important - } - .ps-lg-2 { - padding-left: .5rem!important - } - .ps-lg-3 { - padding-left: 1rem!important - } - .ps-lg-4 { - padding-left: 1.5rem!important - } - .ps-lg-5 { - padding-left: 3rem!important - } - .text-lg-start { - text-align: left!important - } - .text-lg-end { - text-align: right!important - } - .text-lg-center { - text-align: center!important - } -} - -@media (min-width:1200px) { - .float-xl-start { - float: left!important - } - .float-xl-end { - float: right!important - } - .float-xl-none { - float: none!important - } - .d-xl-inline { - display: inline!important - } - .d-xl-inline-block { - display: inline-block!important - } - .d-xl-block { - display: block!important - } - .d-xl-grid { - display: grid!important - } - .d-xl-table { - display: table!important - } - .d-xl-table-row { - display: table-row!important - } - .d-xl-table-cell { - display: table-cell!important - } - .d-xl-flex { - display: flex!important - } - .d-xl-inline-flex { - display: inline-flex!important - } - .d-xl-none { - display: none!important - } - .flex-xl-fill { - flex: 1 1 auto!important - } - .flex-xl-row { - flex-direction: row!important - } - .flex-xl-column { - flex-direction: column!important - } - .flex-xl-row-reverse { - flex-direction: row-reverse!important - } - .flex-xl-column-reverse { - flex-direction: column-reverse!important - } - .flex-xl-grow-0 { - flex-grow: 0!important - } - .flex-xl-grow-1 { - flex-grow: 1!important - } - .flex-xl-shrink-0 { - flex-shrink: 0!important - } - .flex-xl-shrink-1 { - flex-shrink: 1!important - } - .flex-xl-wrap { - flex-wrap: wrap!important - } - .flex-xl-nowrap { - flex-wrap: nowrap!important - } - .flex-xl-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .gap-xl-0 { - gap: 0!important - } - .gap-xl-1 { - gap: .25rem!important - } - .gap-xl-2 { - gap: .5rem!important - } - .gap-xl-3 { - gap: 1rem!important - } - .gap-xl-4 { - gap: 1.5rem!important - } - .gap-xl-5 { - gap: 3rem!important - } - .justify-content-xl-start { - justify-content: flex-start!important - } - .justify-content-xl-end { - justify-content: flex-end!important - } - .justify-content-xl-center { - justify-content: center!important - } - .justify-content-xl-between { - justify-content: space-between!important - } - .justify-content-xl-around { - justify-content: space-around!important - } - .justify-content-xl-evenly { - justify-content: space-evenly!important - } - .align-items-xl-start { - align-items: flex-start!important - } - .align-items-xl-end { - align-items: flex-end!important - } - .align-items-xl-center { - align-items: center!important - } - .align-items-xl-baseline { - align-items: baseline!important - } - .align-items-xl-stretch { - align-items: stretch!important - } - .align-content-xl-start { - align-content: flex-start!important - } - .align-content-xl-end { - align-content: flex-end!important - } - .align-content-xl-center { - align-content: center!important - } - .align-content-xl-between { - align-content: space-between!important - } - .align-content-xl-around { - align-content: space-around!important - } - .align-content-xl-stretch { - align-content: stretch!important - } - .align-self-xl-auto { - align-self: auto!important - } - .align-self-xl-start { - align-self: flex-start!important - } - .align-self-xl-end { - align-self: flex-end!important - } - .align-self-xl-center { - align-self: center!important - } - .align-self-xl-baseline { - align-self: baseline!important - } - .align-self-xl-stretch { - align-self: stretch!important - } - .order-xl-first { - order: -1!important - } - .order-xl-0 { - order: 0!important - } - .order-xl-1 { - order: 1!important - } - .order-xl-2 { - order: 2!important - } - .order-xl-3 { - order: 3!important - } - .order-xl-4 { - order: 4!important - } - .order-xl-5 { - order: 5!important - } - .order-xl-last { - order: 6!important - } - .m-xl-0 { - margin: 0!important - } - .m-xl-1 { - margin: .25rem!important - } - .m-xl-2 { - margin: .5rem!important - } - .m-xl-3 { - margin: 1rem!important - } - .m-xl-4 { - margin: 1.5rem!important - } - .m-xl-5 { - margin: 3rem!important - } - .m-xl-auto { - margin: auto!important - } - .mx-xl-0 { - margin-right: 0!important; - margin-left: 0!important - } - .mx-xl-1 { - margin-right: .25rem!important; - margin-left: .25rem!important - } - .mx-xl-2 { - margin-right: .5rem!important; - margin-left: .5rem!important - } - .mx-xl-3 { - margin-right: 1rem!important; - margin-left: 1rem!important - } - .mx-xl-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important - } - .mx-xl-5 { - margin-right: 3rem!important; - margin-left: 3rem!important - } - .mx-xl-auto { - margin-right: auto!important; - margin-left: auto!important - } - .my-xl-0 { - margin-top: 0!important; - margin-bottom: 0!important - } - .my-xl-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important - } - .my-xl-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important - } - .my-xl-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important - } - .my-xl-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important - } - .my-xl-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important - } - .my-xl-auto { - margin-top: auto!important; - margin-bottom: auto!important - } - .mt-xl-0 { - margin-top: 0!important - } - .mt-xl-1 { - margin-top: .25rem!important - } - .mt-xl-2 { - margin-top: .5rem!important - } - .mt-xl-3 { - margin-top: 1rem!important - } - .mt-xl-4 { - margin-top: 1.5rem!important - } - .mt-xl-5 { - margin-top: 3rem!important - } - .mt-xl-auto { - margin-top: auto!important - } - .me-xl-0 { - margin-right: 0!important - } - .me-xl-1 { - margin-right: .25rem!important - } - .me-xl-2 { - margin-right: .5rem!important - } - .me-xl-3 { - margin-right: 1rem!important - } - .me-xl-4 { - margin-right: 1.5rem!important - } - .me-xl-5 { - margin-right: 3rem!important - } - .me-xl-auto { - margin-right: auto!important - } - .mb-xl-0 { - margin-bottom: 0!important - } - .mb-xl-1 { - margin-bottom: .25rem!important - } - .mb-xl-2 { - margin-bottom: .5rem!important - } - .mb-xl-3 { - margin-bottom: 1rem!important - } - .mb-xl-4 { - margin-bottom: 1.5rem!important - } - .mb-xl-5 { - margin-bottom: 3rem!important - } - .mb-xl-auto { - margin-bottom: auto!important - } - .ms-xl-0 { - margin-left: 0!important - } - .ms-xl-1 { - margin-left: .25rem!important - } - .ms-xl-2 { - margin-left: .5rem!important - } - .ms-xl-3 { - margin-left: 1rem!important - } - .ms-xl-4 { - margin-left: 1.5rem!important - } - .ms-xl-5 { - margin-left: 3rem!important - } - .ms-xl-auto { - margin-left: auto!important - } - .p-xl-0 { - padding: 0!important - } - .p-xl-1 { - padding: .25rem!important - } - .p-xl-2 { - padding: .5rem!important - } - .p-xl-3 { - padding: 1rem!important - } - .p-xl-4 { - padding: 1.5rem!important - } - .p-xl-5 { - padding: 3rem!important - } - .px-xl-0 { - padding-right: 0!important; - padding-left: 0!important - } - .px-xl-1 { - padding-right: .25rem!important; - padding-left: .25rem!important - } - .px-xl-2 { - padding-right: .5rem!important; - padding-left: .5rem!important - } - .px-xl-3 { - padding-right: 1rem!important; - padding-left: 1rem!important - } - .px-xl-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important - } - .px-xl-5 { - padding-right: 3rem!important; - padding-left: 3rem!important - } - .py-xl-0 { - padding-top: 0!important; - padding-bottom: 0!important - } - .py-xl-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important - } - .py-xl-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important - } - .py-xl-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important - } - .py-xl-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important - } - .py-xl-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important - } - .pt-xl-0 { - padding-top: 0!important - } - .pt-xl-1 { - padding-top: .25rem!important - } - .pt-xl-2 { - padding-top: .5rem!important - } - .pt-xl-3 { - padding-top: 1rem!important - } - .pt-xl-4 { - padding-top: 1.5rem!important - } - .pt-xl-5 { - padding-top: 3rem!important - } - .pe-xl-0 { - padding-right: 0!important - } - .pe-xl-1 { - padding-right: .25rem!important - } - .pe-xl-2 { - padding-right: .5rem!important - } - .pe-xl-3 { - padding-right: 1rem!important - } - .pe-xl-4 { - padding-right: 1.5rem!important - } - .pe-xl-5 { - padding-right: 3rem!important - } - .pb-xl-0 { - padding-bottom: 0!important - } - .pb-xl-1 { - padding-bottom: .25rem!important - } - .pb-xl-2 { - padding-bottom: .5rem!important - } - .pb-xl-3 { - padding-bottom: 1rem!important - } - .pb-xl-4 { - padding-bottom: 1.5rem!important - } - .pb-xl-5 { - padding-bottom: 3rem!important - } - .ps-xl-0 { - padding-left: 0!important - } - .ps-xl-1 { - padding-left: .25rem!important - } - .ps-xl-2 { - padding-left: .5rem!important - } - .ps-xl-3 { - padding-left: 1rem!important - } - .ps-xl-4 { - padding-left: 1.5rem!important - } - .ps-xl-5 { - padding-left: 3rem!important - } - .text-xl-start { - text-align: left!important - } - .text-xl-end { - text-align: right!important - } - .text-xl-center { - text-align: center!important - } -} - -@media (min-width:1400px) { - .float-xxl-start { - float: left!important - } - .float-xxl-end { - float: right!important - } - .float-xxl-none { - float: none!important - } - .d-xxl-inline { - display: inline!important - } - .d-xxl-inline-block { - display: inline-block!important - } - .d-xxl-block { - display: block!important - } - .d-xxl-grid { - display: grid!important - } - .d-xxl-table { - display: table!important - } - .d-xxl-table-row { - display: table-row!important - } - .d-xxl-table-cell { - display: table-cell!important - } - .d-xxl-flex { - display: flex!important - } - .d-xxl-inline-flex { - display: inline-flex!important - } - .d-xxl-none { - display: none!important - } - .flex-xxl-fill { - flex: 1 1 auto!important - } - .flex-xxl-row { - flex-direction: row!important - } - .flex-xxl-column { - flex-direction: column!important - } - .flex-xxl-row-reverse { - flex-direction: row-reverse!important - } - .flex-xxl-column-reverse { - flex-direction: column-reverse!important - } - .flex-xxl-grow-0 { - flex-grow: 0!important - } - .flex-xxl-grow-1 { - flex-grow: 1!important - } - .flex-xxl-shrink-0 { - flex-shrink: 0!important - } - .flex-xxl-shrink-1 { - flex-shrink: 1!important - } - .flex-xxl-wrap { - flex-wrap: wrap!important - } - .flex-xxl-nowrap { - flex-wrap: nowrap!important - } - .flex-xxl-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .gap-xxl-0 { - gap: 0!important - } - .gap-xxl-1 { - gap: .25rem!important - } - .gap-xxl-2 { - gap: .5rem!important - } - .gap-xxl-3 { - gap: 1rem!important - } - .gap-xxl-4 { - gap: 1.5rem!important - } - .gap-xxl-5 { - gap: 3rem!important - } - .justify-content-xxl-start { - justify-content: flex-start!important - } - .justify-content-xxl-end { - justify-content: flex-end!important - } - .justify-content-xxl-center { - justify-content: center!important - } - .justify-content-xxl-between { - justify-content: space-between!important - } - .justify-content-xxl-around { - justify-content: space-around!important - } - .justify-content-xxl-evenly { - justify-content: space-evenly!important - } - .align-items-xxl-start { - align-items: flex-start!important - } - .align-items-xxl-end { - align-items: flex-end!important - } - .align-items-xxl-center { - align-items: center!important - } - .align-items-xxl-baseline { - align-items: baseline!important - } - .align-items-xxl-stretch { - align-items: stretch!important - } - .align-content-xxl-start { - align-content: flex-start!important - } - .align-content-xxl-end { - align-content: flex-end!important - } - .align-content-xxl-center { - align-content: center!important - } - .align-content-xxl-between { - align-content: space-between!important - } - .align-content-xxl-around { - align-content: space-around!important - } - .align-content-xxl-stretch { - align-content: stretch!important - } - .align-self-xxl-auto { - align-self: auto!important - } - .align-self-xxl-start { - align-self: flex-start!important - } - .align-self-xxl-end { - align-self: flex-end!important - } - .align-self-xxl-center { - align-self: center!important - } - .align-self-xxl-baseline { - align-self: baseline!important - } - .align-self-xxl-stretch { - align-self: stretch!important - } - .order-xxl-first { - order: -1!important - } - .order-xxl-0 { - order: 0!important - } - .order-xxl-1 { - order: 1!important - } - .order-xxl-2 { - order: 2!important - } - .order-xxl-3 { - order: 3!important - } - .order-xxl-4 { - order: 4!important - } - .order-xxl-5 { - order: 5!important - } - .order-xxl-last { - order: 6!important - } - .m-xxl-0 { - margin: 0!important - } - .m-xxl-1 { - margin: .25rem!important - } - .m-xxl-2 { - margin: .5rem!important - } - .m-xxl-3 { - margin: 1rem!important - } - .m-xxl-4 { - margin: 1.5rem!important - } - .m-xxl-5 { - margin: 3rem!important - } - .m-xxl-auto { - margin: auto!important - } - .mx-xxl-0 { - margin-right: 0!important; - margin-left: 0!important - } - .mx-xxl-1 { - margin-right: .25rem!important; - margin-left: .25rem!important - } - .mx-xxl-2 { - margin-right: .5rem!important; - margin-left: .5rem!important - } - .mx-xxl-3 { - margin-right: 1rem!important; - margin-left: 1rem!important - } - .mx-xxl-4 { - margin-right: 1.5rem!important; - margin-left: 1.5rem!important - } - .mx-xxl-5 { - margin-right: 3rem!important; - margin-left: 3rem!important - } - .mx-xxl-auto { - margin-right: auto!important; - margin-left: auto!important - } - .my-xxl-0 { - margin-top: 0!important; - margin-bottom: 0!important - } - .my-xxl-1 { - margin-top: .25rem!important; - margin-bottom: .25rem!important - } - .my-xxl-2 { - margin-top: .5rem!important; - margin-bottom: .5rem!important - } - .my-xxl-3 { - margin-top: 1rem!important; - margin-bottom: 1rem!important - } - .my-xxl-4 { - margin-top: 1.5rem!important; - margin-bottom: 1.5rem!important - } - .my-xxl-5 { - margin-top: 3rem!important; - margin-bottom: 3rem!important - } - .my-xxl-auto { - margin-top: auto!important; - margin-bottom: auto!important - } - .mt-xxl-0 { - margin-top: 0!important - } - .mt-xxl-1 { - margin-top: .25rem!important - } - .mt-xxl-2 { - margin-top: .5rem!important - } - .mt-xxl-3 { - margin-top: 1rem!important - } - .mt-xxl-4 { - margin-top: 1.5rem!important - } - .mt-xxl-5 { - margin-top: 3rem!important - } - .mt-xxl-auto { - margin-top: auto!important - } - .me-xxl-0 { - margin-right: 0!important - } - .me-xxl-1 { - margin-right: .25rem!important - } - .me-xxl-2 { - margin-right: .5rem!important - } - .me-xxl-3 { - margin-right: 1rem!important - } - .me-xxl-4 { - margin-right: 1.5rem!important - } - .me-xxl-5 { - margin-right: 3rem!important - } - .me-xxl-auto { - margin-right: auto!important - } - .mb-xxl-0 { - margin-bottom: 0!important - } - .mb-xxl-1 { - margin-bottom: .25rem!important - } - .mb-xxl-2 { - margin-bottom: .5rem!important - } - .mb-xxl-3 { - margin-bottom: 1rem!important - } - .mb-xxl-4 { - margin-bottom: 1.5rem!important - } - .mb-xxl-5 { - margin-bottom: 3rem!important - } - .mb-xxl-auto { - margin-bottom: auto!important - } - .ms-xxl-0 { - margin-left: 0!important - } - .ms-xxl-1 { - margin-left: .25rem!important - } - .ms-xxl-2 { - margin-left: .5rem!important - } - .ms-xxl-3 { - margin-left: 1rem!important - } - .ms-xxl-4 { - margin-left: 1.5rem!important - } - .ms-xxl-5 { - margin-left: 3rem!important - } - .ms-xxl-auto { - margin-left: auto!important - } - .p-xxl-0 { - padding: 0!important - } - .p-xxl-1 { - padding: .25rem!important - } - .p-xxl-2 { - padding: .5rem!important - } - .p-xxl-3 { - padding: 1rem!important - } - .p-xxl-4 { - padding: 1.5rem!important - } - .p-xxl-5 { - padding: 3rem!important - } - .px-xxl-0 { - padding-right: 0!important; - padding-left: 0!important - } - .px-xxl-1 { - padding-right: .25rem!important; - padding-left: .25rem!important - } - .px-xxl-2 { - padding-right: .5rem!important; - padding-left: .5rem!important - } - .px-xxl-3 { - padding-right: 1rem!important; - padding-left: 1rem!important - } - .px-xxl-4 { - padding-right: 1.5rem!important; - padding-left: 1.5rem!important - } - .px-xxl-5 { - padding-right: 3rem!important; - padding-left: 3rem!important - } - .py-xxl-0 { - padding-top: 0!important; - padding-bottom: 0!important - } - .py-xxl-1 { - padding-top: .25rem!important; - padding-bottom: .25rem!important - } - .py-xxl-2 { - padding-top: .5rem!important; - padding-bottom: .5rem!important - } - .py-xxl-3 { - padding-top: 1rem!important; - padding-bottom: 1rem!important - } - .py-xxl-4 { - padding-top: 1.5rem!important; - padding-bottom: 1.5rem!important - } - .py-xxl-5 { - padding-top: 3rem!important; - padding-bottom: 3rem!important - } - .pt-xxl-0 { - padding-top: 0!important - } - .pt-xxl-1 { - padding-top: .25rem!important - } - .pt-xxl-2 { - padding-top: .5rem!important - } - .pt-xxl-3 { - padding-top: 1rem!important - } - .pt-xxl-4 { - padding-top: 1.5rem!important - } - .pt-xxl-5 { - padding-top: 3rem!important - } - .pe-xxl-0 { - padding-right: 0!important - } - .pe-xxl-1 { - padding-right: .25rem!important - } - .pe-xxl-2 { - padding-right: .5rem!important - } - .pe-xxl-3 { - padding-right: 1rem!important - } - .pe-xxl-4 { - padding-right: 1.5rem!important - } - .pe-xxl-5 { - padding-right: 3rem!important - } - .pb-xxl-0 { - padding-bottom: 0!important - } - .pb-xxl-1 { - padding-bottom: .25rem!important - } - .pb-xxl-2 { - padding-bottom: .5rem!important - } - .pb-xxl-3 { - padding-bottom: 1rem!important - } - .pb-xxl-4 { - padding-bottom: 1.5rem!important - } - .pb-xxl-5 { - padding-bottom: 3rem!important - } - .ps-xxl-0 { - padding-left: 0!important - } - .ps-xxl-1 { - padding-left: .25rem!important - } - .ps-xxl-2 { - padding-left: .5rem!important - } - .ps-xxl-3 { - padding-left: 1rem!important - } - .ps-xxl-4 { - padding-left: 1.5rem!important - } - .ps-xxl-5 { - padding-left: 3rem!important - } - .text-xxl-start { - text-align: left!important - } - .text-xxl-end { - text-align: right!important - } - .text-xxl-center { - text-align: center!important - } -} - -@media (min-width:1200px) { - .fs-1 { - font-size: 2.5rem!important - } - .fs-2 { - font-size: 2rem!important - } - .fs-3 { - font-size: 1.75rem!important - } - .fs-4 { - font-size: 1.5rem!important - } -} - -@media print { - .d-print-inline { - display: inline!important - } - .d-print-inline-block { - display: inline-block!important - } - .d-print-block { - display: block!important - } - .d-print-grid { - display: grid!important - } - .d-print-table { - display: table!important - } - .d-print-table-row { - display: table-row!important - } - .d-print-table-cell { - display: table-cell!important - } - .d-print-flex { - display: flex!important - } - .d-print-inline-flex { - display: inline-flex!important - } - .d-print-none { - display: none!important - } -} diff --git a/webapp/app/views/static/index/bootstrap/js/bootstrap.min.js b/webapp/app/views/static/index/bootstrap/js/bootstrap.min.js deleted file mode 100644 index ea36cdd..0000000 --- a/webapp/app/views/static/index/bootstrap/js/bootstrap.min.js +++ /dev/null @@ -1,1657 +0,0 @@ -/*! - * Bootstrap v5.1.0 (https://getbootstrap.com/) - * Copyright 2011-2021 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 = t => { - let e = t.getAttribute("data-bs-target"); - if (!e || "#" === e) { - let i = t.getAttribute("href"); - if (!i || !i.includes("#") && !i.startsWith(".")) return null; - i.includes("#") && !i.startsWith("#") && (i = "#" + i.split("#")[1]), e = i && "#" !== i ? i.trim() : null - } - return e - }, - e = e => { const i = t(e); return i && document.querySelector(i) ? i : null }, - i = e => { const i = t(e); return i ? document.querySelector(i) : null }, - n = t => { t.dispatchEvent(new Event("transitionend")) }, - s = t => !(!t || "object" != typeof t) && (void 0 !== t.jquery && (t = t[0]), void 0 !== t.nodeType), - o = t => s(t) ? t.jquery ? t[0] : t : "string" == typeof t && t.length > 0 ? document.querySelector(t) : null, - r = (t, e, i) => { - Object.keys(i).forEach(n => { - const o = i[n], - r = e[n], - a = r && s(r) ? "element" : null == (l = r) ? "" + l : {}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase(); - var l; - if (!new RegExp(o).test(a)) throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${o}".`) - }) - }, - a = t => !(!s(t) || 0 === t.getClientRects().length) && "visible" === getComputedStyle(t).getPropertyValue("visibility"), - 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 = () => { const { jQuery: t } = window; return t && !document.body.hasAttribute("data-bs-no-jquery") ? t : null }, - f = [], - p = () => "rtl" === document.documentElement.dir, - m = t => { - var e; - e = () => { - const e = u(); - if (e) { - const i = t.NAME, - n = e.fn[i]; - e.fn[i] = t.jQueryInterface, e.fn[i].Constructor = t, e.fn[i].noConflict = () => (e.fn[i] = n, t.jQueryInterface) - } - }, "loading" === document.readyState ? (f.length || document.addEventListener("DOMContentLoaded", () => { f.forEach(t => t()) }), f.push(e)) : e() - }, - g = t => { "function" == typeof t && t() }, - _ = (t, e, i = !0) => { - if (!i) return void g(t); - const s = (t => { - if (!t) return 0; - let { transitionDuration: e, transitionDelay: i } = window.getComputedStyle(t); - const n = Number.parseFloat(e), - s = Number.parseFloat(i); - return n || s ? (e = e.split(",")[0], i = i.split(",")[0], 1e3 * (Number.parseFloat(e) + Number.parseFloat(i))) : 0 - })(e) + 5; - let o = !1; - const r = ({ target: i }) => { i === e && (o = !0, e.removeEventListener("transitionend", r), g(t)) }; - e.addEventListener("transitionend", r), setTimeout(() => { o || n(e) }, s) - }, - b = (t, e, i, n) => { let s = t.indexOf(e); if (-1 === s) return t[!i && n ? t.length - 1 : 0]; const o = t.length; return s += i ? 1 : -1, n && (s = (s + o) % o), t[Math.max(0, Math.min(s, o - 1))] }, - v = /[^.]*(?=\..*)\.|.*/, - y = /\..*/, - w = /::\d+$/, - E = {}; - let A = 1; - const T = { mouseenter: "mouseover", mouseleave: "mouseout" }, - O = /^(mouseenter|mouseleave)/i, - 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 k(t, e) { return e && `${e}::${A++}` || t.uidEvent || A++ } - - function L(t) { const e = k(t); return t.uidEvent = e, E[e] = E[e] || {}, E[e] } - - function x(t, e, i = null) { const n = Object.keys(t); for (let s = 0, o = n.length; s < o; s++) { const o = t[n[s]]; if (o.originalHandler === e && o.delegationSelector === i) return o } return null } - - function D(t, e, i) { - const n = "string" == typeof e, - s = n ? i : e; - let o = I(t); - return C.has(o) || (o = t), [n, s, o] - } - - function S(t, e, i, n, s) { - if ("string" != typeof e || !t) return; - if (i || (i = n, n = null), O.test(e)) { - const t = t => function(e) { if (!e.relatedTarget || e.relatedTarget !== e.delegateTarget && !e.delegateTarget.contains(e.relatedTarget)) return t.call(this, e) }; - n ? n = t(n) : i = t(i) - } - const [o, r, a] = D(e, i, n), l = L(t), c = l[a] || (l[a] = {}), h = x(c, r, o ? i : null); - if (h) return void(h.oneOff = h.oneOff && s); - const d = k(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 (let a = o.length; a--;) - if (o[a] === r) return s.delegateTarget = r, n.oneOff && P.off(t, s.type, e, i), i.apply(r, [s]); - return null - } - }(t, i, n) : function(t, e) { return function i(n) { return n.delegateTarget = t, i.oneOff && P.off(t, n.type, e), e.apply(t, [n]) } }(t, i); - u.delegationSelector = o ? i : null, u.originalHandler = r, u.oneOff = s, u.uidEvent = d, c[d] = u, t.addEventListener(a, u, o) - } - - function N(t, e, i, n, s) { - const o = x(e[i], n, s); - o && (t.removeEventListener(i, o, Boolean(s)), delete e[i][o.uidEvent]) - } - - function I(t) { return t = t.replace(y, ""), T[t] || t } - const P = { - on(t, e, i, n) { S(t, e, i, n, !1) }, - one(t, e, i, n) { S(t, e, i, n, !0) }, - off(t, e, i, n) { - if ("string" != typeof e || !t) return; - const [s, o, r] = D(e, i, n), a = r !== e, l = L(t), c = e.startsWith("."); - if (void 0 !== o) { if (!l || !l[r]) return; return void N(t, l, r, o, s ? i : null) } - c && Object.keys(l).forEach(i => { - ! function(t, e, i, n) { - const s = e[i] || {}; - Object.keys(s).forEach(o => { - if (o.includes(n)) { - const n = s[o]; - N(t, e, i, n.originalHandler, n.delegationSelector) - } - }) - }(t, l, i, e.slice(1)) - }); - const h = l[r] || {}; - Object.keys(h).forEach(i => { - const n = i.replace(w, ""); - if (!a || e.includes(n)) { - const e = h[i]; - N(t, l, r, e.originalHandler, e.delegationSelector) - } - }) - }, - trigger(t, e, i) { - if ("string" != typeof e || !t) return null; - const n = u(), - s = I(e), - o = e !== s, - r = C.has(s); - let a, l = !0, - c = !0, - h = !1, - d = null; - return o && n && (a = n.Event(e, i), n(t).trigger(a), l = !a.isPropagationStopped(), c = !a.isImmediatePropagationStopped(), h = a.isDefaultPrevented()), r ? (d = document.createEvent("HTMLEvents"), d.initEvent(s, l, !0)) : d = new CustomEvent(e, { bubbles: l, cancelable: !0 }), void 0 !== i && Object.keys(i).forEach(t => { Object.defineProperty(d, t, { get: () => i[t] }) }), h && d.preventDefault(), c && t.dispatchEvent(d), d.defaultPrevented && void 0 !== a && a.preventDefault(), d - } - }, - j = new Map; - var M = {set(t, e, i) { - j.has(t) || j.set(t, new Map); - const n = j.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) => j.has(t) && j.get(t).get(e) || null, - remove(t, e) { - if (!j.has(t)) return; - const i = j.get(t); - i.delete(e), 0 === i.size && j.delete(t) - } - }; - class H { - constructor(t) { - (t = o(t)) && (this._element = t, M.set(this._element, this.constructor.DATA_KEY, this)) - } - dispose() { M.remove(this._element, this.constructor.DATA_KEY), P.off(this._element, this.constructor.EVENT_KEY), Object.getOwnPropertyNames(this).forEach(t => { this[t] = null }) } - _queueCallback(t, e, i = !0) { _(t, e, i) } - static getInstance(t) { return M.get(o(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.1.0" } - static get NAME() { throw new Error('You have to implement the static method "NAME", for each component!') } - static get DATA_KEY() { return "bs." + this.NAME } - static get EVENT_KEY() { return "." + this.DATA_KEY } - } - const B = (t, e = "hide") => { - const n = "click.dismiss" + t.EVENT_KEY, - s = t.NAME; - P.on(document, n, `[data-bs-dismiss="${s}"]`, (function(n) { - if (["A", "AREA"].includes(this.tagName) && n.preventDefault(), l(this)) return; - const o = i(this) || this.closest("." + s); - t.getOrCreateInstance(o)[e]() - })) - }; - class R extends H { - 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) - } - })) - } - } - B(R, "close"), m(R); - class W extends H { - 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 = W.getOrCreateInstance(this); "toggle" === t && e[t]() })) } - } - - function z(t) { return "true" === t || "false" !== t && (t === Number(t).toString() ? Number(t) : "" === t || "null" === t ? null : t) } - - function q(t) { return t.replace(/[A-Z]/g, t => "-" + t.toLowerCase()) } - P.on(document, "click.bs.button.data-api", '[data-bs-toggle="button"]', t => { - t.preventDefault(); - const e = t.target.closest('[data-bs-toggle="button"]'); - W.getOrCreateInstance(e).toggle() - }), m(W); - const F = { - setDataAttribute(t, e, i) { t.setAttribute("data-bs-" + q(e), i) }, - removeDataAttribute(t, e) { t.removeAttribute("data-bs-" + q(e)) }, - getDataAttributes(t) { - if (!t) return {}; - const e = {}; - return Object.keys(t.dataset).filter(t => t.startsWith("bs")).forEach(i => { - let n = i.replace(/^bs/, ""); - n = n.charAt(0).toLowerCase() + n.slice(1, n.length), e[n] = z(t.dataset[i]) - }), e - }, - getDataAttribute: (t, e) => z(t.getAttribute("data-bs-" + q(e))), - offset(t) { const e = t.getBoundingClientRect(); return { top: e.top + window.pageYOffset, left: e.left + window.pageXOffset } }, - position: t => ({ top: t.offsetTop, left: t.offsetLeft }) - }, - U = { - 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; for (; n && n.nodeType === Node.ELEMENT_NODE && 3 !== n.nodeType;) n.matches(e) && i.push(n), n = n.parentNode; 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)) } - }, - $ = { interval: 5e3, keyboard: !0, slide: !1, pause: "hover", wrap: !0, touch: !0 }, - V = { interval: "(number|boolean)", keyboard: "boolean", slide: "(boolean|string)", pause: "(string|boolean)", wrap: "boolean", touch: "boolean" }, - K = "next", - X = "prev", - Y = "left", - Q = "right", - G = { ArrowLeft: Q, ArrowRight: Y }; - class Z extends H { - constructor(t, e) { super(t), this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this.touchTimeout = null, this.touchStartX = 0, this.touchDeltaX = 0, this._config = this._getConfig(e), this._indicatorsElement = U.findOne(".carousel-indicators", this._element), this._touchSupported = "ontouchstart" in document.documentElement || navigator.maxTouchPoints > 0, this._pointerEvent = Boolean(window.PointerEvent), this._addEventListeners() } - static get Default() { return $ } - static get NAME() { return "carousel" } - next() { this._slide(K) } - nextWhenVisible() {!document.hidden && a(this._element) && this.next() } - prev() { this._slide(X) } - pause(t) { t || (this._isPaused = !0), U.findOne(".carousel-item-next, .carousel-item-prev", this._element) && (n(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null } - cycle(t) { t || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config && this._config.interval && !this._isPaused && (this._updateInterval(), this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval)) } - to(t) { - this._activeElement = U.findOne(".active.carousel-item", this._element); - const e = this._getItemIndex(this._activeElement); - if (t > this._items.length - 1 || t < 0) return; - if (this._isSliding) return void P.one(this._element, "slid.bs.carousel", () => this.to(t)); - if (e === t) return this.pause(), void this.cycle(); - const i = t > e ? K : X; - this._slide(i, this._items[t]) - } - _getConfig(t) { return t = {...$, ...F.getDataAttributes(this._element), ... "object" == typeof t ? t : {} }, r("carousel", t, V), t } - _handleSwipe() { - const t = Math.abs(this.touchDeltaX); - if (t <= 40) return; - const e = t / this.touchDeltaX; - this.touchDeltaX = 0, e && this._slide(e > 0 ? Q : Y) - } - _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", t => this.pause(t)), P.on(this._element, "mouseleave.bs.carousel", t => this.cycle(t))), this._config.touch && this._touchSupported && this._addTouchEventListeners() } - _addTouchEventListeners() { - const t = t => {!this._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType ? this._pointerEvent || (this.touchStartX = t.touches[0].clientX) : this.touchStartX = t.clientX }, - e = t => { this.touchDeltaX = t.touches && t.touches.length > 1 ? 0 : t.touches[0].clientX - this.touchStartX }, - i = t => {!this._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType || (this.touchDeltaX = t.clientX - this.touchStartX), this._handleSwipe(), "hover" === this._config.pause && (this.pause(), this.touchTimeout && clearTimeout(this.touchTimeout), this.touchTimeout = setTimeout(t => this.cycle(t), 500 + this._config.interval)) }; - U.find(".carousel-item img", this._element).forEach(t => { P.on(t, "dragstart.bs.carousel", t => t.preventDefault()) }), this._pointerEvent ? (P.on(this._element, "pointerdown.bs.carousel", e => t(e)), P.on(this._element, "pointerup.bs.carousel", t => i(t)), this._element.classList.add("pointer-event")) : (P.on(this._element, "touchstart.bs.carousel", e => t(e)), P.on(this._element, "touchmove.bs.carousel", t => e(t)), P.on(this._element, "touchend.bs.carousel", t => i(t))) - } - _keydown(t) { - if (/input|textarea/i.test(t.target.tagName)) return; - const e = G[t.key]; - e && (t.preventDefault(), this._slide(e)) - } - _getItemIndex(t) { return this._items = t && t.parentNode ? U.find(".carousel-item", t.parentNode) : [], this._items.indexOf(t) } - _getItemByOrder(t, e) { const i = t === K; return b(this._items, e, i, this._config.wrap) } - _triggerSlideEvent(t, e) { - const i = this._getItemIndex(t), - n = this._getItemIndex(U.findOne(".active.carousel-item", this._element)); - return P.trigger(this._element, "slide.bs.carousel", { relatedTarget: t, direction: e, from: n, to: i }) - } - _setActiveIndicatorElement(t) { - if (this._indicatorsElement) { - const e = U.findOne(".active", this._indicatorsElement); - e.classList.remove("active"), e.removeAttribute("aria-current"); - const i = U.find("[data-bs-target]", this._indicatorsElement); - for (let e = 0; e < i.length; e++) - if (Number.parseInt(i[e].getAttribute("data-bs-slide-to"), 10) === this._getItemIndex(t)) { i[e].classList.add("active"), i[e].setAttribute("aria-current", "true"); break } - } - } - _updateInterval() { - const t = this._activeElement || U.findOne(".active.carousel-item", this._element); - if (!t) return; - const e = Number.parseInt(t.getAttribute("data-bs-interval"), 10); - e ? (this._config.defaultInterval = this._config.defaultInterval || this._config.interval, this._config.interval = e) : this._config.interval = this._config.defaultInterval || this._config.interval - } - _slide(t, e) { - const i = this._directionToOrder(t), - n = U.findOne(".active.carousel-item", this._element), - s = this._getItemIndex(n), - o = e || this._getItemByOrder(i, n), - r = this._getItemIndex(o), - a = Boolean(this._interval), - l = i === K, - c = l ? "carousel-item-start" : "carousel-item-end", - h = l ? "carousel-item-next" : "carousel-item-prev", - u = this._orderToDirection(i); - if (o && o.classList.contains("active")) return void(this._isSliding = !1); - if (this._isSliding) return; - if (this._triggerSlideEvent(o, u).defaultPrevented) return; - if (!n || !o) return; - this._isSliding = !0, a && this.pause(), this._setActiveIndicatorElement(o), this._activeElement = o; - const f = () => { P.trigger(this._element, "slid.bs.carousel", { relatedTarget: o, direction: u, from: s, to: r }) }; - if (this._element.classList.contains("slide")) { - o.classList.add(h), d(o), n.classList.add(c), o.classList.add(c); - const t = () => { o.classList.remove(c, h), o.classList.add("active"), n.classList.remove("active", h, c), this._isSliding = !1, setTimeout(f, 0) }; - this._queueCallback(t, n, !0) - } else n.classList.remove("active"), o.classList.add("active"), this._isSliding = !1, f(); - a && this.cycle() - } - _directionToOrder(t) { return [Q, Y].includes(t) ? p() ? t === Y ? X : K : t === Y ? K : X : t } - _orderToDirection(t) { return [K, X].includes(t) ? p() ? t === X ? Y : Q : t === X ? Q : Y : t } - static carouselInterface(t, e) { - const i = Z.getOrCreateInstance(t, e); - let { _config: n } = i; - "object" == typeof e && (n = {...n, ...e }); - const s = "string" == typeof e ? e : n.slide; - if ("number" == typeof e) i.to(e); - else if ("string" == typeof s) { - if (void 0 === i[s]) throw new TypeError(`No method named "${s}"`); - i[s]() - } else n.interval && n.ride && (i.pause(), i.cycle()) - } - static jQueryInterface(t) { return this.each((function() { Z.carouselInterface(this, t) })) } - static dataApiClickHandler(t) { - const e = i(this); - if (!e || !e.classList.contains("carousel")) return; - const n = {...F.getDataAttributes(e), ...F.getDataAttributes(this) }, - s = this.getAttribute("data-bs-slide-to"); - s && (n.interval = !1), Z.carouselInterface(e, n), s && Z.getInstance(e).to(s), t.preventDefault() - } - } - P.on(document, "click.bs.carousel.data-api", "[data-bs-slide], [data-bs-slide-to]", Z.dataApiClickHandler), P.on(window, "load.bs.carousel.data-api", () => { const t = U.find('[data-bs-ride="carousel"]'); for (let e = 0, i = t.length; e < i; e++) Z.carouselInterface(t[e], Z.getInstance(t[e])) }), m(Z); - const J = { toggle: !0, parent: null }, - tt = { toggle: "boolean", parent: "(null|element)" }; - class et extends H { - constructor(t, i) { - super(t), this._isTransitioning = !1, this._config = this._getConfig(i), this._triggerArray = []; - const n = U.find('[data-bs-toggle="collapse"]'); - for (let t = 0, i = n.length; t < i; t++) { - const i = n[t], - s = e(i), - o = U.find(s).filter(t => t === this._element); - null !== s && o.length && (this._selector = s, this._triggerArray.push(i)) - } - this._initializeChildren(), this._config.parent || this._addAriaAndCollapsedClass(this._triggerArray, this._isShown()), this._config.toggle && this.toggle() - } - static get Default() { return J } - static get NAME() { return "collapse" } - toggle() { this._isShown() ? this.hide() : this.show() } - show() { - if (this._isTransitioning || this._isShown()) return; - let t, e = []; - if (this._config.parent) { - const t = U.find(".collapse .collapse", this._config.parent); - e = U.find(".show, .collapsing", this._config.parent).filter(e => !t.includes(e)) - } - const i = U.findOne(this._selector); - if (e.length) { const n = e.find(t => i !== t); if (t = n ? et.getInstance(n) : null, t && t._isTransitioning) return } - if (P.trigger(this._element, "show.bs.collapse").defaultPrevented) return; - e.forEach(e => { i !== e && et.getOrCreateInstance(e, { toggle: !1 }).hide(), t || M.set(e, "bs.collapse", null) }); - const n = this._getDimension(); - this._element.classList.remove("collapse"), this._element.classList.add("collapsing"), this._element.style[n] = 0, this._addAriaAndCollapsedClass(this._triggerArray, !0), this._isTransitioning = !0; - const s = "scroll" + (n[0].toUpperCase() + n.slice(1)); - this._queueCallback(() => { this._isTransitioning = !1, this._element.classList.remove("collapsing"), this._element.classList.add("collapse", "show"), this._element.style[n] = "", P.trigger(this._element, "shown.bs.collapse") }, this._element, !0), this._element.style[n] = this._element[s] + "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("collapsing"), this._element.classList.remove("collapse", "show"); - const e = this._triggerArray.length; - for (let t = 0; t < e; t++) { - const e = this._triggerArray[t], - n = i(e); - n && !this._isShown(n) && this._addAriaAndCollapsedClass([e], !1) - } - this._isTransitioning = !0, this._element.style[t] = "", this._queueCallback(() => { this._isTransitioning = !1, this._element.classList.remove("collapsing"), this._element.classList.add("collapse"), P.trigger(this._element, "hidden.bs.collapse") }, this._element, !0) - } - _isShown(t = this._element) { return t.classList.contains("show") } - _getConfig(t) { return (t = {...J, ...F.getDataAttributes(this._element), ...t }).toggle = Boolean(t.toggle), t.parent = o(t.parent), r("collapse", t, tt), t } - _getDimension() { return this._element.classList.contains("collapse-horizontal") ? "width" : "height" } - _initializeChildren() { - if (!this._config.parent) return; - const t = U.find(".collapse .collapse", this._config.parent); - U.find('[data-bs-toggle="collapse"]', this._config.parent).filter(e => !t.includes(e)).forEach(t => { - const e = i(t); - e && this._addAriaAndCollapsedClass([t], this._isShown(e)) - }) - } - _addAriaAndCollapsedClass(t, e) { t.length && t.forEach(t => { e ? t.classList.remove("collapsed") : t.classList.add("collapsed"), t.setAttribute("aria-expanded", e) }) } - static jQueryInterface(t) { - return this.each((function() { - const e = {}; - "string" == typeof t && /show|hide/.test(t) && (e.toggle = !1); - const i = et.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", '[data-bs-toggle="collapse"]', (function(t) { - ("A" === t.target.tagName || t.delegateTarget && "A" === t.delegateTarget.tagName) && t.preventDefault(); - const i = e(this); - U.find(i).forEach(t => { et.getOrCreateInstance(t, { toggle: !1 }).toggle() }) - })), m(et); - var it = "top", - nt = "bottom", - st = "right", - ot = "left", - rt = [it, nt, st, ot], - at = rt.reduce((function(t, e) { return t.concat([e + "-start", e + "-end"]) }), []), - lt = [].concat(rt, ["auto"]).reduce((function(t, e) { return t.concat([e, e + "-start", e + "-end"]) }), []), - ct = ["beforeRead", "read", "afterRead", "beforeMain", "main", "afterMain", "beforeWrite", "write", "afterWrite"]; - - function ht(t) { return t ? (t.nodeName || "").toLowerCase() : null } - - function dt(t) { if (null == t) return window; if ("[object Window]" !== t.toString()) { var e = t.ownerDocument; return e && e.defaultView || window } return t } - - function ut(t) { return t instanceof dt(t).Element || t instanceof Element } - - function ft(t) { return t instanceof dt(t).HTMLElement || t instanceof HTMLElement } - - function pt(t) { return "undefined" != typeof ShadowRoot && (t instanceof dt(t).ShadowRoot || t instanceof ShadowRoot) } - var mt = { - 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]; - ft(s) && ht(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 }), {}); - ft(n) && ht(n) && (Object.assign(n.style, o), Object.keys(s).forEach((function(t) { n.removeAttribute(t) }))) - })) - } - }, - requires: ["computeStyles"] - }; - - function gt(t) { return t.split("-")[0] } - var _t = Math.round; - - function bt(t, e) { - void 0 === e && (e = !1); - var i = t.getBoundingClientRect(), - n = 1, - s = 1; - return ft(t) && e && (n = i.width / t.offsetWidth || 1, s = i.height / t.offsetHeight || 1), { width: _t(i.width / n), height: _t(i.height / s), top: _t(i.top / s), right: _t(i.right / n), bottom: _t(i.bottom / s), left: _t(i.left / n), x: _t(i.left / n), y: _t(i.top / s) } - } - - function vt(t) { - var e = bt(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 yt(t, e) { - var i = e.getRootNode && e.getRootNode(); - if (t.contains(e)) return !0; - if (i && pt(i)) { - var n = e; - do { - if (n && t.isSameNode(n)) return !0; - n = n.parentNode || n.host - } while (n) - } - return !1 - } - - function wt(t) { return dt(t).getComputedStyle(t) } - - function Et(t) { return ["table", "td", "th"].indexOf(ht(t)) >= 0 } - - function At(t) { return ((ut(t) ? t.ownerDocument : t.document) || window.document).documentElement } - - function Tt(t) { return "html" === ht(t) ? t : t.assignedSlot || t.parentNode || (pt(t) ? t.host : null) || At(t) } - - function Ot(t) { return ft(t) && "fixed" !== wt(t).position ? t.offsetParent : null } - - function Ct(t) { - for (var e = dt(t), i = Ot(t); i && Et(i) && "static" === wt(i).position;) i = Ot(i); - return i && ("html" === ht(i) || "body" === ht(i) && "static" === wt(i).position) ? e : i || function(t) { - var e = -1 !== navigator.userAgent.toLowerCase().indexOf("firefox"); - if (-1 !== navigator.userAgent.indexOf("Trident") && ft(t) && "fixed" === wt(t).position) return null; - for (var i = Tt(t); ft(i) && ["html", "body"].indexOf(ht(i)) < 0;) { - var n = wt(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 kt(t) { return ["top", "bottom"].indexOf(t) >= 0 ? "x" : "y" } - var Lt = Math.max, - xt = Math.min, - Dt = Math.round; - - function St(t, e, i) { return Lt(t, xt(e, i)) } - - function Nt(t) { return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, t) } - - function It(t, e) { return e.reduce((function(e, i) { return e[i] = t, e }), {}) } - var Pt = { - 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 = gt(i.placement), - l = kt(a), - c = [ot, st].indexOf(a) >= 0 ? "height" : "width"; - if (o && r) { - var h = function(t, e) { return Nt("number" != typeof(t = "function" == typeof t ? t(Object.assign({}, e.rects, { placement: e.placement })) : t) ? t : It(t, rt)) }(s.padding, i), - d = vt(o), - u = "y" === l ? it : ot, - f = "y" === l ? nt : st, - p = i.rects.reference[c] + i.rects.reference[l] - r[l] - i.rects.popper[c], - m = r[l] - i.rects.reference[l], - g = Ct(o), - _ = g ? "y" === l ? g.clientHeight || 0 : g.clientWidth || 0 : 0, - b = p / 2 - m / 2, - v = h[u], - y = _ - d[c] - h[f], - w = _ / 2 - d[c] / 2 + b, - E = St(v, w, y), - A = l; - i.modifiersData[n] = ((e = {})[A] = E, e.centerOffset = E - 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))) && yt(e.elements.popper, n) && (e.elements.arrow = n) - }, - requires: ["popperOffsets"], - requiresIfExists: ["preventOverflow"] - }, - jt = { top: "auto", right: "auto", bottom: "auto", left: "auto" }; - - function Mt(t) { - var e, i = t.popper, - n = t.popperRect, - s = t.placement, - o = t.offsets, - r = t.position, - a = t.gpuAcceleration, - l = t.adaptive, - c = t.roundOffsets, - h = !0 === c ? function(t) { - var e = t.x, - i = t.y, - n = window.devicePixelRatio || 1; - return { x: Dt(Dt(e * n) / n) || 0, y: Dt(Dt(i * n) / n) || 0 } - }(o) : "function" == typeof c ? c(o) : o, - d = h.x, - u = void 0 === d ? 0 : d, - f = h.y, - p = void 0 === f ? 0 : f, - m = o.hasOwnProperty("x"), - g = o.hasOwnProperty("y"), - _ = ot, - b = it, - v = window; - if (l) { - var y = Ct(i), - w = "clientHeight", - E = "clientWidth"; - y === dt(i) && "static" !== wt(y = At(i)).position && (w = "scrollHeight", E = "scrollWidth"), y = y, s === it && (b = nt, p -= y[w] - n.height, p *= a ? 1 : -1), s === ot && (_ = st, u -= y[E] - n.width, u *= a ? 1 : -1) - } - var A, T = Object.assign({ position: r }, l && jt); - return a ? Object.assign({}, T, ((A = {})[b] = g ? "0" : "", A[_] = m ? "0" : "", A.transform = (v.devicePixelRatio || 1) < 2 ? "translate(" + u + "px, " + p + "px)" : "translate3d(" + u + "px, " + p + "px, 0)", A)) : Object.assign({}, T, ((e = {})[b] = g ? p + "px" : "", e[_] = m ? u + "px" : "", e.transform = "", e)) - } - var Ht = { - 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: gt(e.placement), popper: e.elements.popper, popperRect: e.rects.popper, gpuAcceleration: s }; - null != e.modifiersData.popperOffsets && (e.styles.popper = Object.assign({}, e.styles.popper, Mt(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, Mt(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: {} - }, - Bt = { passive: !0 }, - Rt = { - 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 = dt(e.elements.popper), - c = [].concat(e.scrollParents.reference, e.scrollParents.popper); - return o && c.forEach((function(t) { t.addEventListener("scroll", i.update, Bt) })), a && l.addEventListener("resize", i.update, Bt), - function() { o && c.forEach((function(t) { t.removeEventListener("scroll", i.update, Bt) })), a && l.removeEventListener("resize", i.update, Bt) } - }, - data: {} - }, - Wt = { left: "right", right: "left", bottom: "top", top: "bottom" }; - - function zt(t) { return t.replace(/left|right|bottom|top/g, (function(t) { return Wt[t] })) } - var qt = { start: "end", end: "start" }; - - function Ft(t) { return t.replace(/start|end/g, (function(t) { return qt[t] })) } - - function Ut(t) { var e = dt(t); return { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset } } - - function $t(t) { return bt(At(t)).left + Ut(t).scrollLeft } - - function Vt(t) { - var e = wt(t), - i = e.overflow, - n = e.overflowX, - s = e.overflowY; - return /auto|scroll|overlay|hidden/.test(i + s + n) - } - - function Kt(t, e) { - var i; - void 0 === e && (e = []); - var n = function t(e) { return ["html", "body", "#document"].indexOf(ht(e)) >= 0 ? e.ownerDocument.body : ft(e) && Vt(e) ? e : t(Tt(e)) }(t), - s = n === (null == (i = t.ownerDocument) ? void 0 : i.body), - o = dt(n), - r = s ? [o].concat(o.visualViewport || [], Vt(n) ? n : []) : n, - a = e.concat(r); - return s ? a : a.concat(Kt(Tt(r))) - } - - function Xt(t) { return Object.assign({}, t, { left: t.x, top: t.y, right: t.x + t.width, bottom: t.y + t.height }) } - - function Yt(t, e) { - return "viewport" === e ? Xt(function(t) { - var e = dt(t), - i = At(t), - n = e.visualViewport, - s = i.clientWidth, - o = i.clientHeight, - r = 0, - a = 0; - return n && (s = n.width, o = n.height, /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || (r = n.offsetLeft, a = n.offsetTop)), { width: s, height: o, x: r + $t(t), y: a } - }(t)) : ft(e) ? function(t) { var e = bt(t); return e.top = e.top + t.clientTop, e.left = e.left + t.clientLeft, e.bottom = e.top + t.clientHeight, e.right = e.left + t.clientWidth, e.width = t.clientWidth, e.height = t.clientHeight, e.x = e.left, e.y = e.top, e }(e) : Xt(function(t) { - var e, i = At(t), - n = Ut(t), - s = null == (e = t.ownerDocument) ? void 0 : e.body, - o = Lt(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0), - r = Lt(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0), - a = -n.scrollLeft + $t(t), - l = -n.scrollTop; - return "rtl" === wt(s || i).direction && (a += Lt(i.clientWidth, s ? s.clientWidth : 0) - o), { width: o, height: r, x: a, y: l } - }(At(t))) - } - - function Qt(t) { return t.split("-")[1] } - - function Gt(t) { - var e, i = t.reference, - n = t.element, - s = t.placement, - o = s ? gt(s) : null, - r = s ? Qt(s) : null, - a = i.x + i.width / 2 - n.width / 2, - l = i.y + i.height / 2 - n.height / 2; - switch (o) { - case it: - e = { x: a, y: i.y - n.height }; - break; - case nt: - e = { x: a, y: i.y + i.height }; - break; - case st: - e = { x: i.x + i.width, y: l }; - break; - case ot: - e = { x: i.x - n.width, y: l }; - break; - default: - e = { x: i.x, y: i.y } - } - var c = o ? kt(o) : null; - if (null != c) { - var h = "y" === c ? "height" : "width"; - switch (r) { - case "start": - e[c] = e[c] - (i[h] / 2 - n[h] / 2); - break; - case "end": - e[c] = e[c] + (i[h] / 2 - n[h] / 2) - } - } - return e - } - - function Zt(t, e) { - void 0 === e && (e = {}); - var i = e, - n = i.placement, - s = void 0 === n ? t.placement : n, - o = i.boundary, - r = void 0 === o ? "clippingParents" : o, - a = i.rootBoundary, - l = void 0 === a ? "viewport" : a, - c = i.elementContext, - h = void 0 === c ? "popper" : c, - d = i.altBoundary, - u = void 0 !== d && d, - f = i.padding, - p = void 0 === f ? 0 : f, - m = Nt("number" != typeof p ? p : It(p, rt)), - g = "popper" === h ? "reference" : "popper", - _ = t.elements.reference, - b = t.rects.popper, - v = t.elements[u ? g : h], - y = function(t, e, i) { - var n = "clippingParents" === e ? function(t) { - var e = Kt(Tt(t)), - i = ["absolute", "fixed"].indexOf(wt(t).position) >= 0 && ft(t) ? Ct(t) : t; - return ut(i) ? e.filter((function(t) { return ut(t) && yt(t, i) && "body" !== ht(t) })) : [] - }(t) : [].concat(e), - s = [].concat(n, [i]), - o = s[0], - r = s.reduce((function(e, i) { var n = Yt(t, i); return e.top = Lt(n.top, e.top), e.right = xt(n.right, e.right), e.bottom = xt(n.bottom, e.bottom), e.left = Lt(n.left, e.left), e }), Yt(t, o)); - return r.width = r.right - r.left, r.height = r.bottom - r.top, r.x = r.left, r.y = r.top, r - }(ut(v) ? v : v.contextElement || At(t.elements.popper), r, l), - w = bt(_), - E = Gt({ reference: w, element: b, strategy: "absolute", placement: s }), - A = Xt(Object.assign({}, b, E)), - T = "popper" === h ? A : w, - O = { top: y.top - T.top + m.top, bottom: T.bottom - y.bottom + m.bottom, left: y.left - T.left + m.left, right: T.right - y.right + m.right }, - C = t.modifiersData.offset; - if ("popper" === h && C) { - var k = C[s]; - Object.keys(O).forEach((function(t) { - var e = [st, nt].indexOf(t) >= 0 ? 1 : -1, - i = [it, nt].indexOf(t) >= 0 ? "y" : "x"; - O[t] += k[i] * e - })) - } - return O - } - - function Jt(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 ? lt : l, - h = Qt(n), - d = h ? a ? at : at.filter((function(t) { return Qt(t) === h })) : rt, - 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] = Zt(t, { placement: i, boundary: s, rootBoundary: o, padding: r })[gt(i)], e }), {}); - return Object.keys(f).sort((function(t, e) { return f[t] - f[e] })) - } - var te = { - name: "flip", - enabled: !0, - phase: "main", - fn: function(t) { - var e = t.state, - i = t.options, - n = t.name; - if (!e.modifiersData[n]._skip) { - for (var s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, a = void 0 === r || r, l = i.fallbackPlacements, c = i.padding, h = i.boundary, d = i.rootBoundary, u = i.altBoundary, f = i.flipVariations, p = void 0 === f || f, m = i.allowedAutoPlacements, g = e.options.placement, _ = gt(g), b = l || (_ !== g && p ? function(t) { if ("auto" === gt(t)) return []; var e = zt(t); return [Ft(t), e, Ft(e)] }(g) : [zt(g)]), v = [g].concat(b).reduce((function(t, i) { return t.concat("auto" === gt(i) ? Jt(e, { placement: i, boundary: h, rootBoundary: d, padding: c, flipVariations: p, allowedAutoPlacements: m }) : i) }), []), y = e.rects.reference, w = e.rects.popper, E = new Map, A = !0, T = v[0], O = 0; O < v.length; O++) { - var C = v[O], - k = gt(C), - L = "start" === Qt(C), - x = [it, nt].indexOf(k) >= 0, - D = x ? "width" : "height", - S = Zt(e, { placement: C, boundary: h, rootBoundary: d, altBoundary: u, padding: c }), - N = x ? L ? st : ot : L ? nt : it; - y[D] > w[D] && (N = zt(N)); - var I = zt(N), - P = []; - if (o && P.push(S[k] <= 0), a && P.push(S[N] <= 0, S[I] <= 0), P.every((function(t) { return t }))) { T = C, A = !1; break } - E.set(C, P) - } - if (A) - for (var j = function(t) { var e = v.find((function(e) { var i = E.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 ee(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 ie(t) { return [it, st, nt, ot].some((function(e) { return t[e] >= 0 })) } - var ne = { - 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 = Zt(e, { elementContext: "reference" }), - a = Zt(e, { altBoundary: !0 }), - l = ee(r, n), - c = ee(a, s, o), - h = ie(l), - d = ie(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 }) - } - }, - se = { - 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 = lt.reduce((function(t, i) { - return t[i] = function(t, e, i) { - var n = gt(t), - s = [ot, it].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, [ot, st].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 - } - }, - oe = { - name: "popperOffsets", - enabled: !0, - phase: "read", - fn: function(t) { - var e = t.state, - i = t.name; - e.modifiersData[i] = Gt({ reference: e.rects.reference, element: e.rects.popper, strategy: "absolute", placement: e.placement }) - }, - data: {} - }, - re = { - name: "preventOverflow", - enabled: !0, - phase: "main", - fn: function(t) { - var e = t.state, - i = t.options, - n = t.name, - s = i.mainAxis, - o = void 0 === s || s, - r = i.altAxis, - a = void 0 !== r && r, - l = i.boundary, - c = i.rootBoundary, - h = i.altBoundary, - d = i.padding, - u = i.tether, - f = void 0 === u || u, - p = i.tetherOffset, - m = void 0 === p ? 0 : p, - g = Zt(e, { boundary: l, rootBoundary: c, padding: d, altBoundary: h }), - _ = gt(e.placement), - b = Qt(e.placement), - v = !b, - y = kt(_), - w = "x" === y ? "y" : "x", - E = e.modifiersData.popperOffsets, - A = e.rects.reference, - T = e.rects.popper, - O = "function" == typeof m ? m(Object.assign({}, e.rects, { placement: e.placement })) : m, - C = { x: 0, y: 0 }; - if (E) { - if (o || a) { - var k = "y" === y ? it : ot, - L = "y" === y ? nt : st, - x = "y" === y ? "height" : "width", - D = E[y], - S = E[y] + g[k], - N = E[y] - g[L], - I = f ? -T[x] / 2 : 0, - P = "start" === b ? A[x] : T[x], - j = "start" === b ? -T[x] : -A[x], - M = e.elements.arrow, - H = f && M ? vt(M) : { width: 0, height: 0 }, - B = e.modifiersData["arrow#persistent"] ? e.modifiersData["arrow#persistent"].padding : { top: 0, right: 0, bottom: 0, left: 0 }, - R = B[k], - W = B[L], - z = St(0, A[x], H[x]), - q = v ? A[x] / 2 - I - z - R - O : P - z - R - O, - F = v ? -A[x] / 2 + I + z + W + O : j + z + W + O, - U = e.elements.arrow && Ct(e.elements.arrow), - $ = U ? "y" === y ? U.clientTop || 0 : U.clientLeft || 0 : 0, - V = e.modifiersData.offset ? e.modifiersData.offset[e.placement][y] : 0, - K = E[y] + q - V - $, - X = E[y] + F - V; - if (o) { - var Y = St(f ? xt(S, K) : S, D, f ? Lt(N, X) : N); - E[y] = Y, C[y] = Y - D - } - if (a) { - var Q = "x" === y ? it : ot, - G = "x" === y ? nt : st, - Z = E[w], - J = Z + g[Q], - tt = Z - g[G], - et = St(f ? xt(J, K) : J, Z, f ? Lt(tt, X) : tt); - E[w] = et, C[w] = et - Z - } - } - e.modifiersData[n] = C - } - }, - requiresIfExists: ["offset"] - }; - - function ae(t, e, i) { - void 0 === i && (i = !1); - var n, s, o = ft(e), - r = ft(e) && function(t) { - var e = t.getBoundingClientRect(), - i = e.width / t.offsetWidth || 1, - n = e.height / t.offsetHeight || 1; - return 1 !== i || 1 !== n - }(e), - a = At(e), - l = bt(t, r), - c = { scrollLeft: 0, scrollTop: 0 }, - h = { x: 0, y: 0 }; - return (o || !o && !i) && (("body" !== ht(e) || Vt(a)) && (c = (n = e) !== dt(n) && ft(n) ? { scrollLeft: (s = n).scrollLeft, scrollTop: s.scrollTop } : Ut(n)), ft(e) ? ((h = bt(e, !0)).x += e.clientLeft, h.y += e.clientTop) : a && (h.x = $t(a))), { x: l.left + c.scrollLeft - h.x, y: l.top + c.scrollTop - h.y, width: l.width, height: l.height } - } - var le = { placement: "bottom", modifiers: [], strategy: "absolute" }; - - function ce() { 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 he(t) { - void 0 === t && (t = {}); - var e = t, - i = e.defaultModifiers, - n = void 0 === i ? [] : i, - s = e.defaultOptions, - o = void 0 === s ? le : s; - return function(t, e, i) { - void 0 === i && (i = o); - var s, r, a = { placement: "bottom", orderedModifiers: [], options: Object.assign({}, le, o), modifiersData: {}, elements: { reference: t, popper: e }, attributes: {}, styles: {} }, - l = [], - c = !1, - h = { - state: a, - setOptions: function(i) { - d(), a.options = Object.assign({}, o, a.options, i), a.scrollParents = { reference: ut(t) ? Kt(t) : t.contextElement ? Kt(t.contextElement) : [], popper: Kt(e) }; - var s, r, c = function(t) { - var e = function(t) { - var e = new Map, - i = new Set, - n = []; - return t.forEach((function(t) { e.set(t.name, t) })), t.forEach((function(t) { - i.has(t.name) || function t(s) { - i.add(s.name), [].concat(s.requires || [], s.requiresIfExists || []).forEach((function(n) { - if (!i.has(n)) { - var s = e.get(n); - s && t(s) - } - })), n.push(s) - }(t) - })), n - }(t); - return ct.reduce((function(t, i) { return t.concat(e.filter((function(t) { return t.phase === i }))) }), []) - }((s = [].concat(n, a.options.modifiers), r = s.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(r).map((function(t) { return r[t] })))); - return a.orderedModifiers = c.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 (ce(e, i)) { - a.rects = { reference: ae(e, Ct(i), "fixed" === a.options.strategy), popper: vt(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 (!ce(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 de = he(), - ue = he({ defaultModifiers: [Rt, oe, Ht, mt] }), - fe = he({ defaultModifiers: [Rt, oe, Ht, mt, se, te, re, Pt, ne] }), - pe = Object.freeze({ __proto__: null, popperGenerator: he, detectOverflow: Zt, createPopperBase: de, createPopper: fe, createPopperLite: ue, top: it, bottom: nt, right: st, left: ot, auto: "auto", basePlacements: rt, start: "start", end: "end", clippingParents: "clippingParents", viewport: "viewport", popper: "popper", reference: "reference", variationPlacements: at, placements: lt, beforeRead: "beforeRead", read: "read", afterRead: "afterRead", beforeMain: "beforeMain", main: "main", afterMain: "afterMain", beforeWrite: "beforeWrite", write: "write", afterWrite: "afterWrite", modifierPhases: ct, applyStyles: mt, arrow: Pt, computeStyles: Ht, eventListeners: Rt, flip: te, hide: ne, offset: se, popperOffsets: oe, preventOverflow: re }); - const me = new RegExp("ArrowUp|ArrowDown|Escape"), - ge = p() ? "top-end" : "top-start", - _e = p() ? "top-start" : "top-end", - be = p() ? "bottom-end" : "bottom-start", - ve = p() ? "bottom-start" : "bottom-end", - ye = p() ? "left-start" : "right-start", - we = p() ? "right-start" : "left-start", - Ee = { offset: [0, 2], boundary: "clippingParents", reference: "toggle", display: "dynamic", popperConfig: null, autoClose: !0 }, - Ae = { offset: "(array|string|function)", boundary: "(string|element)", reference: "(string|element|object)", display: "string", popperConfig: "(null|object|function)", autoClose: "(boolean|string)" }; - class Te extends H { - constructor(t, e) { super(t), this._popper = null, this._config = this._getConfig(e), this._menu = this._getMenuElement(), this._inNavbar = this._detectNavbar() } - static get Default() { return Ee } - static get DefaultType() { return Ae } - static get NAME() { return "dropdown" } - toggle() { return this._isShown() ? this.hide() : this.show() } - show() { - if (l(this._element) || this._isShown(this._menu)) return; - const t = { relatedTarget: this._element }; - if (P.trigger(this._element, "show.bs.dropdown", t).defaultPrevented) return; - const e = Te.getParentFromElement(this._element); - this._inNavbar ? F.setDataAttribute(this._menu, "popper", "none") : this._createPopper(e), "ontouchstart" in document.documentElement && !e.closest(".navbar-nav") && [].concat(...document.body.children).forEach(t => P.on(t, "mouseover", h)), this._element.focus(), this._element.setAttribute("aria-expanded", !0), this._menu.classList.add("show"), this._element.classList.add("show"), P.trigger(this._element, "shown.bs.dropdown", t) - } - hide() { - if (l(this._element) || !this._isShown(this._menu)) 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) { P.trigger(this._element, "hide.bs.dropdown", t).defaultPrevented || ("ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => P.off(t, "mouseover", h)), this._popper && this._popper.destroy(), this._menu.classList.remove("show"), this._element.classList.remove("show"), this._element.setAttribute("aria-expanded", "false"), F.removeDataAttribute(this._menu, "popper"), P.trigger(this._element, "hidden.bs.dropdown", t)) } - _getConfig(t) { if (t = {...this.constructor.Default, ...F.getDataAttributes(this._element), ...t }, r("dropdown", t, this.constructor.DefaultType), "object" == typeof t.reference && !s(t.reference) && "function" != typeof t.reference.getBoundingClientRect) throw new TypeError("dropdown".toUpperCase() + ': Option "reference" provided type "object" without a required "getBoundingClientRect" method.'); return t } - _createPopper(t) { - if (void 0 === pe) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)"); - let e = this._element; - "parent" === this._config.reference ? e = t : s(this._config.reference) ? e = o(this._config.reference) : "object" == typeof this._config.reference && (e = this._config.reference); - const i = this._getPopperConfig(), - n = i.modifiers.find(t => "applyStyles" === t.name && !1 === t.enabled); - this._popper = fe(e, this._menu, i), n && F.setDataAttribute(this._menu, "popper", "static") - } - _isShown(t = this._element) { return t.classList.contains("show") } - _getMenuElement() { return U.next(this._element, ".dropdown-menu")[0] } - _getPlacement() { const t = this._element.parentNode; if (t.classList.contains("dropend")) return ye; if (t.classList.contains("dropstart")) return we; const e = "end" === getComputedStyle(this._menu).getPropertyValue("--bs-position").trim(); return t.classList.contains("dropup") ? e ? _e : ge : e ? ve : be } - _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 "static" === this._config.display && (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 = U.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", this._menu).filter(a); - i.length && b(i, e, "ArrowDown" === t, !i.includes(e)).focus() - } - static jQueryInterface(t) { - return this.each((function() { - const e = Te.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 (t && (2 === t.button || "keyup" === t.type && "Tab" !== t.key)) return; - const e = U.find('[data-bs-toggle="dropdown"]'); - for (let i = 0, n = e.length; i < n; i++) { - const n = Te.getInstance(e[i]); - if (!n || !1 === n._config.autoClose) continue; - if (!n._isShown()) continue; - const s = { relatedTarget: n._element }; - if (t) { - const e = t.composedPath(), - i = e.includes(n._menu); - if (e.includes(n._element) || "inside" === n._config.autoClose && !i || "outside" === n._config.autoClose && i) continue; - if (n._menu.contains(t.target) && ("keyup" === t.type && "Tab" === t.key || /input|select|option|textarea|form/i.test(t.target.tagName))) continue; - "click" === t.type && (s.clickEvent = t) - } - n._completeHide(s) - } - } - static getParentFromElement(t) { return i(t) || t.parentNode } - static dataApiKeydownHandler(t) { - if (/input|textarea/i.test(t.target.tagName) ? "Space" === t.key || "Escape" !== t.key && ("ArrowDown" !== t.key && "ArrowUp" !== t.key || t.target.closest(".dropdown-menu")) : !me.test(t.key)) return; - const e = this.classList.contains("show"); - if (!e && "Escape" === t.key) return; - if (t.preventDefault(), t.stopPropagation(), l(this)) return; - const i = this.matches('[data-bs-toggle="dropdown"]') ? this : U.prev(this, '[data-bs-toggle="dropdown"]')[0], - n = Te.getOrCreateInstance(i); - if ("Escape" !== t.key) return "ArrowUp" === t.key || "ArrowDown" === t.key ? (e || n.show(), void n._selectMenuItem(t)) : void(e && "Space" !== t.key || Te.clearMenus()); - n.hide() - } - } - P.on(document, "keydown.bs.dropdown.data-api", '[data-bs-toggle="dropdown"]', Te.dataApiKeydownHandler), P.on(document, "keydown.bs.dropdown.data-api", ".dropdown-menu", Te.dataApiKeydownHandler), P.on(document, "click.bs.dropdown.data-api", Te.clearMenus), P.on(document, "keyup.bs.dropdown.data-api", Te.clearMenus), P.on(document, "click.bs.dropdown.data-api", '[data-bs-toggle="dropdown"]', (function(t) { t.preventDefault(), Te.getOrCreateInstance(this).toggle() })), m(Te); - class Oe { - 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, "paddingRight", e => e + t), this._setElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", "paddingRight", e => e + t), this._setElementAttributes(".sticky-top", "marginRight", e => e - t) - } - _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)[e]; - t.style[e] = i(Number.parseFloat(s)) + "px" - }) - } - reset() { this._resetElementAttributes(this._element, "overflow"), this._resetElementAttributes(this._element, "paddingRight"), this._resetElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", "paddingRight"), this._resetElementAttributes(".sticky-top", "marginRight") } - _saveInitialAttribute(t, e) { - const i = t.style[e]; - i && F.setDataAttribute(t, e, i) - } - _resetElementAttributes(t, e) { - this._applyManipulationCallback(t, t => { - const i = F.getDataAttribute(t, e); - void 0 === i ? t.style.removeProperty(e) : (F.removeDataAttribute(t, e), t.style[e] = i) - }) - } - _applyManipulationCallback(t, e) { s(t) ? e(t) : U.find(t, this._element).forEach(e) } - isOverflowing() { return this.getWidth() > 0 } - } - const Ce = { className: "modal-backdrop", isVisible: !0, isAnimated: !1, rootElement: "body", clickCallback: null }, - ke = { className: "string", isVisible: "boolean", isAnimated: "boolean", rootElement: "(element|string)", clickCallback: "(function|null)" }; - class Le { - constructor(t) { this._config = this._getConfig(t), this._isAppended = !1, this._element = null } - show(t) { this._config.isVisible ? (this._append(), this._config.isAnimated && d(this._getElement()), this._getElement().classList.add("show"), this._emulateAnimation(() => { g(t) })) : g(t) } - hide(t) { this._config.isVisible ? (this._getElement().classList.remove("show"), this._emulateAnimation(() => { this.dispose(), g(t) })) : g(t) } - _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 - } - _getConfig(t) { return (t = {...Ce, ... "object" == typeof t ? t : {} }).rootElement = o(t.rootElement), r("backdrop", t, ke), t } - _append() { this._isAppended || (this._config.rootElement.append(this._getElement()), P.on(this._getElement(), "mousedown.bs.backdrop", () => { g(this._config.clickCallback) }), this._isAppended = !0) } - dispose() { this._isAppended && (P.off(this._element, "mousedown.bs.backdrop"), this._element.remove(), this._isAppended = !1) } - _emulateAnimation(t) { _(t, this._getElement(), this._config.isAnimated) } - } - const xe = { trapElement: null, autofocus: !0 }, - De = { trapElement: "element", autofocus: "boolean" }; - class Se { - constructor(t) { this._config = this._getConfig(t), this._isActive = !1, this._lastTabNavDirection = null } - activate() { - const { trapElement: t, autofocus: e } = this._config; - this._isActive || (e && t.focus(), P.off(document, ".bs.focustrap"), 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, ".bs.focustrap")) } - _handleFocusin(t) { - const { target: e } = t, { trapElement: i } = this._config; - if (e === document || e === i || i.contains(e)) return; - const n = U.focusableChildren(i); - 0 === n.length ? i.focus() : "backward" === this._lastTabNavDirection ? n[n.length - 1].focus() : n[0].focus() - } - _handleKeydown(t) { "Tab" === t.key && (this._lastTabNavDirection = t.shiftKey ? "backward" : "forward") } - _getConfig(t) { return t = {...xe, ... "object" == typeof t ? t : {} }, r("focustrap", t, De), t } - } - const Ne = { backdrop: !0, keyboard: !0, focus: !0 }, - Ie = { backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean" }; - class Pe extends H { - constructor(t, e) { super(t), this._config = this._getConfig(e), this._dialog = U.findOne(".modal-dialog", this._element), this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._isShown = !1, this._ignoreBackdropClick = !1, this._isTransitioning = !1, this._scrollBar = new Oe } - static get Default() { return Ne } - 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, "show.bs.modal", { relatedTarget: t }).defaultPrevented || (this._isShown = !0, this._isAnimated() && (this._isTransitioning = !0), this._scrollBar.hide(), document.body.classList.add("modal-open"), this._adjustDialog(), this._setEscapeEvent(), this._setResizeEvent(), P.on(this._dialog, "mousedown.dismiss.bs.modal", () => { P.one(this._element, "mouseup.dismiss.bs.modal", t => { t.target === this._element && (this._ignoreBackdropClick = !0) }) }), this._showBackdrop(() => this._showElement(t))) } - hide() { - if (!this._isShown || this._isTransitioning) return; - if (P.trigger(this._element, "hide.bs.modal").defaultPrevented) return; - this._isShown = !1; - const t = this._isAnimated(); - t && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), this._focustrap.deactivate(), this._element.classList.remove("show"), P.off(this._element, "click.dismiss.bs.modal"), P.off(this._dialog, "mousedown.dismiss.bs.modal"), this._queueCallback(() => this._hideModal(), this._element, t) - } - dispose() { - [window, this._dialog].forEach(t => P.off(t, ".bs.modal")), this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() - } - handleUpdate() { this._adjustDialog() } - _initializeBackDrop() { return new Le({ isVisible: Boolean(this._config.backdrop), isAnimated: this._isAnimated() }) } - _initializeFocusTrap() { return new Se({ trapElement: this._element }) } - _getConfig(t) { return t = {...Ne, ...F.getDataAttributes(this._element), ... "object" == typeof t ? t : {} }, r("modal", t, Ie), t } - _showElement(t) { - const e = this._isAnimated(), - i = U.findOne(".modal-body", this._dialog); - this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || 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, i && (i.scrollTop = 0), e && d(this._element), this._element.classList.add("show"), this._queueCallback(() => { this._config.focus && this._focustrap.activate(), this._isTransitioning = !1, P.trigger(this._element, "shown.bs.modal", { relatedTarget: t }) }, this._dialog, e) - } - _setEscapeEvent() { this._isShown ? P.on(this._element, "keydown.dismiss.bs.modal", t => { this._config.keyboard && "Escape" === t.key ? (t.preventDefault(), this.hide()) : this._config.keyboard || "Escape" !== t.key || this._triggerBackdropTransition() }) : P.off(this._element, "keydown.dismiss.bs.modal") } - _setResizeEvent() { this._isShown ? P.on(window, "resize.bs.modal", () => this._adjustDialog()) : P.off(window, "resize.bs.modal") } - _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("modal-open"), this._resetAdjustments(), this._scrollBar.reset(), P.trigger(this._element, "hidden.bs.modal") }) } - _showBackdrop(t) { P.on(this._element, "click.dismiss.bs.modal", t => { this._ignoreBackdropClick ? this._ignoreBackdropClick = !1 : t.target === t.currentTarget && (!0 === this._config.backdrop ? this.hide() : "static" === this._config.backdrop && this._triggerBackdropTransition()) }), this._backdrop.show(t) } - _isAnimated() { return this._element.classList.contains("fade") } - _triggerBackdropTransition() { if (P.trigger(this._element, "hidePrevented.bs.modal").defaultPrevented) return; const { classList: t, scrollHeight: e, style: i } = this._element, n = e > document.documentElement.clientHeight;!n && "hidden" === i.overflowY || t.contains("modal-static") || (n || (i.overflowY = "hidden"), t.add("modal-static"), this._queueCallback(() => { t.remove("modal-static"), n || this._queueCallback(() => { i.overflowY = "" }, this._dialog) }, this._dialog), this._element.focus()) } - _adjustDialog() { - const t = this._element.scrollHeight > document.documentElement.clientHeight, - e = this._scrollBar.getWidth(), - i = e > 0; - (!i && t && !p() || i && !t && p()) && (this._element.style.paddingLeft = e + "px"), (i && !t && !p() || !i && t && p()) && (this._element.style.paddingRight = e + "px") - } - _resetAdjustments() { this._element.style.paddingLeft = "", this._element.style.paddingRight = "" } - static jQueryInterface(t, e) { - return this.each((function() { - const i = Pe.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 = i(this); - ["A", "AREA"].includes(this.tagName) && t.preventDefault(), P.one(e, "show.bs.modal", t => { t.defaultPrevented || P.one(e, "hidden.bs.modal", () => { a(this) && this.focus() }) }), Pe.getOrCreateInstance(e).toggle(this) - })), B(Pe), m(Pe); - const je = { backdrop: !0, keyboard: !0, scroll: !1 }, - Me = { backdrop: "boolean", keyboard: "boolean", scroll: "boolean" }; - class He extends H { - constructor(t, e) { super(t), this._config = this._getConfig(e), this._isShown = !1, this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._addEventListeners() } - static get NAME() { return "offcanvas" } - static get Default() { return je } - 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._element.style.visibility = "visible", this._backdrop.show(), this._config.scroll || (new Oe).hide(), this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.classList.add("show"), this._queueCallback(() => { this._config.scroll || this._focustrap.activate(), 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.remove("show"), this._backdrop.hide(), this._queueCallback(() => { this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._element.style.visibility = "hidden", this._config.scroll || (new Oe).reset(), P.trigger(this._element, "hidden.bs.offcanvas") }, this._element, !0))) } - dispose() { this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() } - _getConfig(t) { return t = {...je, ...F.getDataAttributes(this._element), ... "object" == typeof t ? t : {} }, r("offcanvas", t, Me), t } - _initializeBackDrop() { return new Le({ className: "offcanvas-backdrop", isVisible: this._config.backdrop, isAnimated: !0, rootElement: this._element.parentNode, clickCallback: () => this.hide() }) } - _initializeFocusTrap() { return new Se({ trapElement: this._element }) } - _addEventListeners() { P.on(this._element, "keydown.dismiss.bs.offcanvas", t => { this._config.keyboard && "Escape" === t.key && this.hide() }) } - static jQueryInterface(t) { - return this.each((function() { - const e = He.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 = i(this); - if (["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this)) return; - P.one(e, "hidden.bs.offcanvas", () => { a(this) && this.focus() }); - const n = U.findOne(".offcanvas.show"); - n && n !== e && He.getInstance(n).hide(), He.getOrCreateInstance(e).toggle(this) - })), P.on(window, "load.bs.offcanvas.data-api", () => U.find(".offcanvas.show").forEach(t => He.getOrCreateInstance(t).show())), B(He), m(He); - const Be = new Set(["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"]), - Re = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i, - We = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i, - ze = (t, e) => { - const i = t.nodeName.toLowerCase(); - if (e.includes(i)) return !Be.has(i) || Boolean(Re.test(t.nodeValue) || We.test(t.nodeValue)); - const n = e.filter(t => t instanceof RegExp); - for (let t = 0, e = n.length; t < e; t++) - if (n[t].test(i)) return !0; - return !1 - }; - - function qe(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 = Object.keys(e), - o = [].concat(...n.body.querySelectorAll("*")); - for (let t = 0, i = o.length; t < i; t++) { - const i = o[t], - n = i.nodeName.toLowerCase(); - if (!s.includes(n)) { i.remove(); continue } - const r = [].concat(...i.attributes), - a = [].concat(e["*"] || [], e[n] || []); - r.forEach(t => { ze(t, a) || i.removeAttribute(t.nodeName) }) - } - return n.body.innerHTML - } - const Fe = new Set(["sanitize", "allowList", "sanitizeFn"]), - Ue = { animation: "boolean", template: "string", title: "(string|element|function)", trigger: "string", delay: "(number|object)", html: "boolean", selector: "(string|boolean)", placement: "(string|function)", offset: "(array|string|function)", container: "(string|element|boolean)", fallbackPlacements: "array", boundary: "(string|element)", customClass: "(string|function)", sanitize: "boolean", sanitizeFn: "(null|function)", allowList: "object", popperConfig: "(null|object|function)" }, - $e = { AUTO: "auto", TOP: "top", RIGHT: p() ? "left" : "right", BOTTOM: "bottom", LEFT: p() ? "right" : "left" }, - Ve = { animation: !0, template: '', trigger: "hover focus", title: "", delay: 0, html: !1, selector: !1, placement: "top", offset: [0, 0], container: !1, fallbackPlacements: ["top", "right", "bottom", "left"], boundary: "clippingParents", customClass: "", sanitize: !0, sanitizeFn: null, allowList: { "*": ["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: [] }, popperConfig: null }, - Ke = { HIDE: "hide.bs.tooltip", HIDDEN: "hidden.bs.tooltip", SHOW: "show.bs.tooltip", SHOWN: "shown.bs.tooltip", INSERTED: "inserted.bs.tooltip", CLICK: "click.bs.tooltip", FOCUSIN: "focusin.bs.tooltip", FOCUSOUT: "focusout.bs.tooltip", MOUSEENTER: "mouseenter.bs.tooltip", MOUSELEAVE: "mouseleave.bs.tooltip" }; - class Xe extends H { - constructor(t, e) { - if (void 0 === pe) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)"); - super(t), this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._popper = null, this._config = this._getConfig(e), this.tip = null, this._setListeners() - } - static get Default() { return Ve } - static get NAME() { return "tooltip" } - static get Event() { return Ke } - static get DefaultType() { return Ue } - enable() { this._isEnabled = !0 } - disable() { this._isEnabled = !1 } - toggleEnabled() { this._isEnabled = !this._isEnabled } - toggle(t) { - if (this._isEnabled) - if (t) { - const e = this._initializeOnDelegatedTarget(t); - e._activeTrigger.click = !e._activeTrigger.click, e._isWithActiveTrigger() ? e._enter(null, e) : e._leave(null, e) - } else { - if (this.getTipElement().classList.contains("show")) return void this._leave(null, this); - this._enter(null, this) - } - } - dispose() { clearTimeout(this._timeout), P.off(this._element.closest(".modal"), "hide.bs.modal", this._hideModalHandler), this.tip && this.tip.remove(), this._popper && this._popper.destroy(), 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.Event.SHOW), - e = c(this._element), - i = null === e ? this._element.ownerDocument.documentElement.contains(this._element) : e.contains(this._element); - if (t.defaultPrevented || !i) return; - const n = this.getTipElement(), - s = (t => { do { t += Math.floor(1e6 * Math.random()) } while (document.getElementById(t)); return t })(this.constructor.NAME); - n.setAttribute("id", s), this._element.setAttribute("aria-describedby", s), this._config.animation && n.classList.add("fade"); - const o = "function" == typeof this._config.placement ? this._config.placement.call(this, n, this._element) : this._config.placement, - r = this._getAttachment(o); - this._addAttachmentClass(r); - const { container: a } = this._config; - M.set(n, this.constructor.DATA_KEY, this), this._element.ownerDocument.documentElement.contains(this.tip) || (a.append(n), P.trigger(this._element, this.constructor.Event.INSERTED)), this._popper ? this._popper.update() : this._popper = fe(this._element, n, this._getPopperConfig(r)), n.classList.add("show"); - const l = this._resolvePossibleFunction(this._config.customClass); - l && n.classList.add(...l.split(" ")), "ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => { P.on(t, "mouseover", h) }); - const d = this.tip.classList.contains("fade"); - this._queueCallback(() => { - const t = this._hoverState; - this._hoverState = null, P.trigger(this._element, this.constructor.Event.SHOWN), "out" === t && this._leave(null, this) - }, this.tip, d) - } - hide() { - if (!this._popper) return; - const t = this.getTipElement(); - if (P.trigger(this._element, this.constructor.Event.HIDE).defaultPrevented) return; - t.classList.remove("show"), "ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => P.off(t, "mouseover", h)), this._activeTrigger.click = !1, this._activeTrigger.focus = !1, this._activeTrigger.hover = !1; - const e = this.tip.classList.contains("fade"); - this._queueCallback(() => { this._isWithActiveTrigger() || ("show" !== this._hoverState && t.remove(), this._cleanTipClass(), this._element.removeAttribute("aria-describedby"), P.trigger(this._element, this.constructor.Event.HIDDEN), this._popper && (this._popper.destroy(), this._popper = null)) }, this.tip, e), this._hoverState = "" - } - update() { null !== this._popper && this._popper.update() } - isWithContent() { return Boolean(this.getTitle()) } - getTipElement() { - if (this.tip) return this.tip; - const t = document.createElement("div"); - t.innerHTML = this._config.template; - const e = t.children[0]; - return this.setContent(e), e.classList.remove("fade", "show"), this.tip = e, this.tip - } - setContent(t) { this._sanitizeAndSetContent(t, this.getTitle(), ".tooltip-inner") } - _sanitizeAndSetContent(t, e, i) { - const n = U.findOne(i, t); - e || !n ? this.setElementContent(n, e) : n.remove() - } - setElementContent(t, e) { if (null !== t) return s(e) ? (e = o(e), void(this._config.html ? e.parentNode !== t && (t.innerHTML = "", t.append(e)) : t.textContent = e.textContent)) : void(this._config.html ? (this._config.sanitize && (e = qe(e, this._config.allowList, this._config.sanitizeFn)), t.innerHTML = e) : t.textContent = e) } - getTitle() { const t = this._element.getAttribute("data-bs-original-title") || this._config.title; return this._resolvePossibleFunction(t) } - updateAttachment(t) { return "right" === t ? "end" : "left" === t ? "start" : t } - _initializeOnDelegatedTarget(t, e) { return e || this.constructor.getOrCreateInstance(t.delegateTarget, this._getDelegateConfig()) } - _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: "onChange", enabled: !0, phase: "afterWrite", fn: t => this._handlePopperPlacementChange(t) }], onFirstUpdate: t => { t.options.placement !== t.placement && this._handlePopperPlacementChange(t) } }; return {...e, ... "function" == typeof this._config.popperConfig ? this._config.popperConfig(e) : this._config.popperConfig } } - _addAttachmentClass(t) { this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(t)}`) } - _getAttachment(t) { return $e[t.toUpperCase()] } - _setListeners() { - this._config.trigger.split(" ").forEach(t => { - if ("click" === t) P.on(this._element, this.constructor.Event.CLICK, this._config.selector, t => this.toggle(t)); - else if ("manual" !== t) { - const e = "hover" === t ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN, - i = "hover" === t ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; - P.on(this._element, e, this._config.selector, t => this._enter(t)), P.on(this._element, i, this._config.selector, t => this._leave(t)) - } - }), this._hideModalHandler = () => { this._element && this.hide() }, P.on(this._element.closest(".modal"), "hide.bs.modal", this._hideModalHandler), this._config.selector ? this._config = {...this._config, trigger: "manual", selector: "" } : this._fixTitle() - } - _fixTitle() { - const t = this._element.getAttribute("title"), - e = typeof this._element.getAttribute("data-bs-original-title"); - (t || "string" !== e) && (this._element.setAttribute("data-bs-original-title", t || ""), !t || this._element.getAttribute("aria-label") || this._element.textContent || this._element.setAttribute("aria-label", t), this._element.setAttribute("title", "")) - } - _enter(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusin" === t.type ? "focus" : "hover"] = !0), e.getTipElement().classList.contains("show") || "show" === e._hoverState ? e._hoverState = "show" : (clearTimeout(e._timeout), e._hoverState = "show", e._config.delay && e._config.delay.show ? e._timeout = setTimeout(() => { "show" === e._hoverState && e.show() }, e._config.delay.show) : e.show()) } - _leave(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusout" === t.type ? "focus" : "hover"] = e._element.contains(t.relatedTarget)), e._isWithActiveTrigger() || (clearTimeout(e._timeout), e._hoverState = "out", e._config.delay && e._config.delay.hide ? e._timeout = setTimeout(() => { "out" === e._hoverState && e.hide() }, e._config.delay.hide) : e.hide()) } - _isWithActiveTrigger() { - for (const t in this._activeTrigger) - if (this._activeTrigger[t]) return !0; - return !1 - } - _getConfig(t) { const e = F.getDataAttributes(this._element); return Object.keys(e).forEach(t => { Fe.has(t) && delete e[t] }), (t = {...this.constructor.Default, ...e, ... "object" == typeof t && t ? t : {} }).container = !1 === t.container ? document.body : o(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()), r("tooltip", t, this.constructor.DefaultType), t.sanitize && (t.template = qe(t.template, t.allowList, t.sanitizeFn)), t } - _getDelegateConfig() { const t = {}; for (const e in this._config) this.constructor.Default[e] !== this._config[e] && (t[e] = this._config[e]); return t } - _cleanTipClass() { - const t = this.getTipElement(), - e = new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`, "g"), - i = t.getAttribute("class").match(e); - null !== i && i.length > 0 && i.map(t => t.trim()).forEach(e => t.classList.remove(e)) - } - _getBasicClassPrefix() { return "bs-tooltip" } - _handlePopperPlacementChange(t) { - const { state: e } = t; - e && (this.tip = e.elements.popper, this._cleanTipClass(), this._addAttachmentClass(this._getAttachment(e.placement))) - } - static jQueryInterface(t) { - return this.each((function() { - const e = Xe.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - m(Xe); - const Ye = {...Xe.Default, placement: "right", offset: [0, 8], trigger: "click", content: "", template: '' }, - Qe = {...Xe.DefaultType, content: "(string|element|function)" }, - Ge = { HIDE: "hide.bs.popover", HIDDEN: "hidden.bs.popover", SHOW: "show.bs.popover", SHOWN: "shown.bs.popover", INSERTED: "inserted.bs.popover", CLICK: "click.bs.popover", FOCUSIN: "focusin.bs.popover", FOCUSOUT: "focusout.bs.popover", MOUSEENTER: "mouseenter.bs.popover", MOUSELEAVE: "mouseleave.bs.popover" }; - class Ze extends Xe { - static get Default() { return Ye } - static get NAME() { return "popover" } - static get Event() { return Ge } - static get DefaultType() { return Qe } - isWithContent() { return this.getTitle() || this._getContent() } - setContent(t) { this._sanitizeAndSetContent(t, this.getTitle(), ".popover-header"), this._sanitizeAndSetContent(t, this._getContent(), ".popover-body") } - _getContent() { return this._resolvePossibleFunction(this._config.content) } - _getBasicClassPrefix() { return "bs-popover" } - static jQueryInterface(t) { - return this.each((function() { - const e = Ze.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - m(Ze); - const Je = { offset: 10, method: "auto", target: "" }, - ti = { offset: "number", method: "string", target: "(string|element)" }, - ei = ".nav-link, .list-group-item, .dropdown-item"; - class ii extends H { - constructor(t, e) { super(t), this._scrollElement = "BODY" === this._element.tagName ? window : this._element, this._config = this._getConfig(e), this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, P.on(this._scrollElement, "scroll.bs.scrollspy", () => this._process()), this.refresh(), this._process() } - static get Default() { return Je } - static get NAME() { return "scrollspy" } - refresh() { - const t = this._scrollElement === this._scrollElement.window ? "offset" : "position", - i = "auto" === this._config.method ? t : this._config.method, - n = "position" === i ? this._getScrollTop() : 0; - this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), U.find(ei, this._config.target).map(t => { - const s = e(t), - o = s ? U.findOne(s) : null; - if (o) { const t = o.getBoundingClientRect(); if (t.width || t.height) return [F[i](o).top + n, s] } - return null - }).filter(t => t).sort((t, e) => t[0] - e[0]).forEach(t => { this._offsets.push(t[0]), this._targets.push(t[1]) }) - } - dispose() { P.off(this._scrollElement, ".bs.scrollspy"), super.dispose() } - _getConfig(t) { return (t = {...Je, ...F.getDataAttributes(this._element), ... "object" == typeof t && t ? t : {} }).target = o(t.target) || document.documentElement, r("scrollspy", t, ti), t } - _getScrollTop() { return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop } - _getScrollHeight() { return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight) } - _getOffsetHeight() { return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height } - _process() { - const t = this._getScrollTop() + this._config.offset, - e = this._getScrollHeight(), - i = this._config.offset + e - this._getOffsetHeight(); - if (this._scrollHeight !== e && this.refresh(), t >= i) { - const t = this._targets[this._targets.length - 1]; - this._activeTarget !== t && this._activate(t) - } else { if (this._activeTarget && t < this._offsets[0] && this._offsets[0] > 0) return this._activeTarget = null, void this._clear(); for (let e = this._offsets.length; e--;) this._activeTarget !== this._targets[e] && t >= this._offsets[e] && (void 0 === this._offsets[e + 1] || t < this._offsets[e + 1]) && this._activate(this._targets[e]) } - } - _activate(t) { - this._activeTarget = t, this._clear(); - const e = ei.split(",").map(e => `${e}[data-bs-target="${t}"],${e}[href="${t}"]`), - i = U.findOne(e.join(","), this._config.target); - i.classList.add("active"), i.classList.contains("dropdown-item") ? U.findOne(".dropdown-toggle", i.closest(".dropdown")).classList.add("active") : U.parents(i, ".nav, .list-group").forEach(t => { U.prev(t, ".nav-link, .list-group-item").forEach(t => t.classList.add("active")), U.prev(t, ".nav-item").forEach(t => { U.children(t, ".nav-link").forEach(t => t.classList.add("active")) }) }), P.trigger(this._scrollElement, "activate.bs.scrollspy", { relatedTarget: t }) - } - _clear() { U.find(ei, this._config.target).filter(t => t.classList.contains("active")).forEach(t => t.classList.remove("active")) } - static jQueryInterface(t) { - return this.each((function() { - const e = ii.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - P.on(window, "load.bs.scrollspy.data-api", () => { U.find('[data-bs-spy="scroll"]').forEach(t => new ii(t)) }), m(ii); - class ni extends H { - static get NAME() { return "tab" } - show() { - if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains("active")) return; - let t; - const e = i(this._element), - n = this._element.closest(".nav, .list-group"); - if (n) { - const e = "UL" === n.nodeName || "OL" === n.nodeName ? ":scope > li > .active" : ".active"; - t = U.find(e, n), t = t[t.length - 1] - } - const s = t ? P.trigger(t, "hide.bs.tab", { relatedTarget: this._element }) : null; - if (P.trigger(this._element, "show.bs.tab", { relatedTarget: t }).defaultPrevented || null !== s && s.defaultPrevented) return; - this._activate(this._element, n); - const o = () => { P.trigger(t, "hidden.bs.tab", { relatedTarget: this._element }), P.trigger(this._element, "shown.bs.tab", { relatedTarget: t }) }; - e ? this._activate(e, e.parentNode, o) : o() - } - _activate(t, e, i) { - const n = (!e || "UL" !== e.nodeName && "OL" !== e.nodeName ? U.children(e, ".active") : U.find(":scope > li > .active", e))[0], - s = i && n && n.classList.contains("fade"), - o = () => this._transitionComplete(t, n, i); - n && s ? (n.classList.remove("show"), this._queueCallback(o, t, !0)) : o() - } - _transitionComplete(t, e, i) { - if (e) { - e.classList.remove("active"); - const t = U.findOne(":scope > .dropdown-menu .active", e.parentNode); - t && t.classList.remove("active"), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !1) - } - t.classList.add("active"), "tab" === t.getAttribute("role") && t.setAttribute("aria-selected", !0), d(t), t.classList.contains("fade") && t.classList.add("show"); - let n = t.parentNode; - if (n && "LI" === n.nodeName && (n = n.parentNode), n && n.classList.contains("dropdown-menu")) { - const e = t.closest(".dropdown"); - e && U.find(".dropdown-toggle", e).forEach(t => t.classList.add("active")), t.setAttribute("aria-expanded", !0) - } - i && i() - } - static jQueryInterface(t) { - return this.each((function() { - const e = ni.getOrCreateInstance(this); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - P.on(document, "click.bs.tab.data-api", '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]', (function(t) { - ["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this) || ni.getOrCreateInstance(this).show() - })), m(ni); - const si = { animation: "boolean", autohide: "boolean", delay: "number" }, - oi = { animation: !0, autohide: !0, delay: 5e3 }; - class ri extends H { - constructor(t, e) { super(t), this._config = this._getConfig(e), this._timeout = null, this._hasMouseInteraction = !1, this._hasKeyboardInteraction = !1, this._setListeners() } - static get DefaultType() { return si } - static get Default() { return oi } - 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("hide"), d(this._element), this._element.classList.add("show"), this._element.classList.add("showing"), this._queueCallback(() => { this._element.classList.remove("showing"), P.trigger(this._element, "shown.bs.toast"), this._maybeScheduleHide() }, this._element, this._config.animation)) } - hide() { this._element.classList.contains("show") && (P.trigger(this._element, "hide.bs.toast").defaultPrevented || (this._element.classList.add("showing"), this._queueCallback(() => { this._element.classList.add("hide"), this._element.classList.remove("showing"), this._element.classList.remove("show"), P.trigger(this._element, "hidden.bs.toast") }, this._element, this._config.animation))) } - dispose() { this._clearTimeout(), this._element.classList.contains("show") && this._element.classList.remove("show"), super.dispose() } - _getConfig(t) { return t = {...oi, ...F.getDataAttributes(this._element), ... "object" == typeof t && t ? t : {} }, r("toast", t, this.constructor.DefaultType), t } - _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 = ri.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t](this) - } - })) - } - } - return B(ri), m(ri), { Alert: R, Button: W, Carousel: Z, Collapse: et, Dropdown: Te, Modal: Pe, Offcanvas: He, Popover: Ze, ScrollSpy: ii, Tab: ni, Toast: ri, Tooltip: Xe } -})); \ No newline at end of file diff --git a/webapp/app/views/static/login/bootstrap.min.css b/webapp/app/views/static/login/bootstrap.min.css deleted file mode 100644 index 8e06c06..0000000 --- a/webapp/app/views/static/login/bootstrap.min.css +++ /dev/null @@ -1,11557 +0,0 @@ -/* - * Start Bootstrap - SB Admin 2 4.0.5 (https://startbootstrap.com/template-overviews/sb-admin-2) - * Copyright 2013-2021, Start Bootstrap - * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-sb-admin-2/blob/master/LICENSE) - */ - -@import url("https://fonts.googleapis.com/css?family=Nunito:200,200i,300,300i,400,400i,600,600i,700,700i,800,800i,900,900i"); - -/*! - * Bootstrap v4.6.1 (https://getbootstrap.com/) - * Copyright 2011-2021 The Bootstrap Authors - * Copyright 2011-2021 Twitter, Inc. - * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */ - -:root { - --blue: #4e73df; - --indigo: #6610f2; - --purple: #6f42c1; - --pink: #e83e8c; - --red: #e74a3b; - --orange: #fd7e14; - --yellow: #f6c23e; - --green: #1cc88a; - --teal: #20c9a6; - --cyan: #36b9cc; - --white: #fff; - --gray: #858796; - --gray-dark: #5a5c69; - --primary: #4e73df; - --secondary: #858796; - --success: #1cc88a; - --info: #36b9cc; - --warning: #f6c23e; - --danger: #e74a3b; - --light: #f8f9fc; - --dark: #5a5c69; - --breakpoint-xs: 0; - --breakpoint-sm: 576px; - --breakpoint-md: 768px; - --breakpoint-lg: 992px; - --breakpoint-xl: 1200px; - --font-family-sans-serif: "Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; - --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace -} - -*, -:after, -:before { - box-sizing: border-box -} - -html { - font-family: sans-serif; - line-height: 1.15; - -webkit-text-size-adjust: 100%; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0) -} - -article, -aside, -figcaption, -figure, -footer, -header, -hgroup, -main, -nav, -section { - display: block -} - -body { - margin: 0; - font-family: Nunito, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #858796; - text-align: left; - background-color: #fff -} - -[tabindex="-1"]:focus:not(:focus-visible) { - outline: 0!important -} - -hr { - box-sizing: content-box; - height: 0; - overflow: visible -} - -h1, -h2, -h3, -h4, -h5, -h6 { - margin-top: 0; - margin-bottom: .5rem -} - -p { - margin-top: 0; - margin-bottom: 1rem -} - -abbr[data-original-title], -abbr[title] { - text-decoration: underline; - -webkit-text-decoration: underline dotted; - text-decoration: underline dotted; - cursor: help; - border-bottom: 0; - -webkit-text-decoration-skip-ink: none; - text-decoration-skip-ink: none -} - -address { - font-style: normal; - line-height: inherit -} - -address, -dl, -ol, -ul { - margin-bottom: 1rem -} - -dl, -ol, -ul { - margin-top: 0 -} - -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 { - font-size: 80% -} - -sub, -sup { - position: relative; - font-size: 75%; - line-height: 0; - vertical-align: baseline -} - -sub { - bottom: -.25em -} - -sup { - top: -.5em -} - -a { - color: #4e73df; - text-decoration: none; - background-color: transparent -} - -a:hover { - color: #224abe; - text-decoration: underline -} - -a:not([href]):not([class]), -a:not([href]):not([class]):hover { - color: inherit; - text-decoration: none -} - -code, -kbd, -pre, -samp { - font-family: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace; - font-size: 1em -} - -pre { - margin-top: 0; - margin-bottom: 1rem; - overflow: auto; - -ms-overflow-style: scrollbar -} - -figure { - margin: 0 0 1rem -} - -img { - border-style: none -} - -img, -svg { - vertical-align: middle -} - -svg { - overflow: hidden -} - -table { - border-collapse: collapse -} - -caption { - padding-top: .75rem; - padding-bottom: .75rem; - color: #858796; - text-align: left; - caption-side: bottom -} - -th { - text-align: inherit; - text-align: -webkit-match-parent -} - -label { - display: inline-block; - margin-bottom: .5rem -} - -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, -input { - overflow: visible -} - -button, -select { - text-transform: none -} - -[role=button] { - cursor: pointer -} - -select { - word-wrap: normal -} - -[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 -} - -[type=button]::-moz-focus-inner, -[type=reset]::-moz-focus-inner, -[type=submit]::-moz-focus-inner, -button::-moz-focus-inner { - padding: 0; - border-style: none -} - -input[type=checkbox], -input[type=radio] { - box-sizing: border-box; - padding: 0 -} - -textarea { - overflow: auto; - resize: vertical -} - -fieldset { - min-width: 0; - padding: 0; - margin: 0; - border: 0 -} - -legend { - display: block; - width: 100%; - max-width: 100%; - padding: 0; - margin-bottom: .5rem; - font-size: 1.5rem; - line-height: inherit; - color: inherit; - white-space: normal -} - -progress { - vertical-align: baseline -} - -[type=number]::-webkit-inner-spin-button, -[type=number]::-webkit-outer-spin-button { - height: auto -} - -[type=search] { - outline-offset: -2px; - -webkit-appearance: none -} - -[type=search]::-webkit-search-decoration { - -webkit-appearance: none -} - -::-webkit-file-upload-button { - font: inherit; - -webkit-appearance: button -} - -output { - display: inline-block -} - -summary { - display: list-item; - cursor: pointer -} - -template { - display: none -} - -[hidden] { - display: none!important -} - -.h1, -.h2, -.h3, -.h4, -.h5, -.h6, -h1, -h2, -h3, -h4, -h5, -h6 { - margin-bottom: .5rem; - font-weight: 400; - line-height: 1.2 -} - -.h1, -h1 { - font-size: 2.5rem -} - -.h2, -h2 { - font-size: 2rem -} - -.h3, -h3 { - font-size: 1.75rem -} - -.h4, -h4 { - font-size: 1.5rem -} - -.h5, -h5 { - font-size: 1.25rem -} - -.h6, -h6 { - font-size: 1rem -} - -.lead { - font-size: 1.25rem; - font-weight: 300 -} - -.display-1 { - font-size: 6rem -} - -.display-1, -.display-2 { - font-weight: 300; - line-height: 1.2 -} - -.display-2 { - font-size: 5.5rem -} - -.display-3 { - font-size: 4.5rem -} - -.display-3, -.display-4 { - font-weight: 300; - line-height: 1.2 -} - -.display-4 { - font-size: 3.5rem -} - -hr { - margin-top: 1rem; - margin-bottom: 1rem; - border: 0; - border-top: 1px solid rgba(0, 0, 0, .1) -} - -.small, -small { - font-size: 80%; - font-weight: 400 -} - -.mark, -mark { - padding: .2em; - background-color: #fcf8e3 -} - -.list-inline, -.list-unstyled { - padding-left: 0; - list-style: none -} - -.list-inline-item { - display: inline-block -} - -.list-inline-item:not(:last-child) { - margin-right: .5rem -} - -.initialism { - font-size: 90%; - text-transform: uppercase -} - -.blockquote { - margin-bottom: 1rem; - font-size: 1.25rem -} - -.blockquote-footer { - display: block; - font-size: 80%; - color: #858796 -} - -.blockquote-footer:before { - content: "\2014\00A0" -} - -.img-fluid, -.img-thumbnail { - max-width: 100%; - height: auto -} - -.img-thumbnail { - padding: .25rem; - background-color: #fff; - border: 1px solid #dddfeb; - border-radius: .35rem -} - -.figure { - display: inline-block -} - -.figure-img { - margin-bottom: .5rem; - line-height: 1 -} - -.figure-caption { - font-size: 90%; - color: #858796 -} - -code { - font-size: 87.5%; - color: #e83e8c; - word-wrap: break-word -} - -a>code { - color: inherit -} - -kbd { - padding: .2rem .4rem; - font-size: 87.5%; - color: #fff; - background-color: #3a3b45; - border-radius: .2rem -} - -kbd kbd { - padding: 0; - font-size: 100%; - font-weight: 700 -} - -pre { - display: block; - font-size: 87.5%; - color: #3a3b45 -} - -pre code { - font-size: inherit; - color: inherit; - word-break: normal -} - -.pre-scrollable { - max-height: 340px; - overflow-y: scroll -} - -.container, -.container-fluid, -.container-lg, -.container-md, -.container-sm, -.container-xl { - width: 100%; - padding-right: .75rem; - padding-left: .75rem; - 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 - } -} - -.row { - display: flex; - flex-wrap: wrap; - margin-right: -.75rem; - margin-left: -.75rem -} - -.no-gutters { - margin-right: 0; - margin-left: 0 -} - -.no-gutters>.col, -.no-gutters>[class*=col-] { - padding-right: 0; - padding-left: 0 -} - -.col, -.col-1, -.col-2, -.col-3, -.col-4, -.col-5, -.col-6, -.col-7, -.col-8, -.col-9, -.col-10, -.col-11, -.col-12, -.col-auto, -.col-lg, -.col-lg-1, -.col-lg-2, -.col-lg-3, -.col-lg-4, -.col-lg-5, -.col-lg-6, -.col-lg-7, -.col-lg-8, -.col-lg-9, -.col-lg-10, -.col-lg-11, -.col-lg-12, -.col-lg-auto, -.col-md, -.col-md-1, -.col-md-2, -.col-md-3, -.col-md-4, -.col-md-5, -.col-md-6, -.col-md-7, -.col-md-8, -.col-md-9, -.col-md-10, -.col-md-11, -.col-md-12, -.col-md-auto, -.col-sm, -.col-sm-1, -.col-sm-2, -.col-sm-3, -.col-sm-4, -.col-sm-5, -.col-sm-6, -.col-sm-7, -.col-sm-8, -.col-sm-9, -.col-sm-10, -.col-sm-11, -.col-sm-12, -.col-sm-auto, -.col-xl, -.col-xl-1, -.col-xl-2, -.col-xl-3, -.col-xl-4, -.col-xl-5, -.col-xl-6, -.col-xl-7, -.col-xl-8, -.col-xl-9, -.col-xl-10, -.col-xl-11, -.col-xl-12, -.col-xl-auto { - position: relative; - width: 100%; - padding-right: .75rem; - padding-left: .75rem -} - -.col { - flex-basis: 0; - flex-grow: 1; - max-width: 100% -} - -.row-cols-1>* { - flex: 0 0 100%; - max-width: 100% -} - -.row-cols-2>* { - flex: 0 0 50%; - max-width: 50% -} - -.row-cols-3>* { - flex: 0 0 33.33333%; - max-width: 33.33333% -} - -.row-cols-4>* { - flex: 0 0 25%; - max-width: 25% -} - -.row-cols-5>* { - flex: 0 0 20%; - max-width: 20% -} - -.row-cols-6>* { - flex: 0 0 16.66667%; - max-width: 16.66667% -} - -.col-auto { - flex: 0 0 auto; - width: auto; - max-width: 100% -} - -.col-1 { - flex: 0 0 8.33333%; - max-width: 8.33333% -} - -.col-2 { - flex: 0 0 16.66667%; - max-width: 16.66667% -} - -.col-3 { - flex: 0 0 25%; - max-width: 25% -} - -.col-4 { - flex: 0 0 33.33333%; - max-width: 33.33333% -} - -.col-5 { - flex: 0 0 41.66667%; - max-width: 41.66667% -} - -.col-6 { - flex: 0 0 50%; - max-width: 50% -} - -.col-7 { - flex: 0 0 58.33333%; - max-width: 58.33333% -} - -.col-8 { - flex: 0 0 66.66667%; - max-width: 66.66667% -} - -.col-9 { - flex: 0 0 75%; - max-width: 75% -} - -.col-10 { - flex: 0 0 83.33333%; - max-width: 83.33333% -} - -.col-11 { - flex: 0 0 91.66667%; - max-width: 91.66667% -} - -.col-12 { - flex: 0 0 100%; - max-width: 100% -} - -.order-first { - order: -1 -} - -.order-last { - order: 13 -} - -.order-0 { - order: 0 -} - -.order-1 { - order: 1 -} - -.order-2 { - order: 2 -} - -.order-3 { - order: 3 -} - -.order-4 { - order: 4 -} - -.order-5 { - order: 5 -} - -.order-6 { - order: 6 -} - -.order-7 { - order: 7 -} - -.order-8 { - order: 8 -} - -.order-9 { - order: 9 -} - -.order-10 { - order: 10 -} - -.order-11 { - order: 11 -} - -.order-12 { - order: 12 -} - -.offset-1 { - margin-left: 8.33333% -} - -.offset-2 { - margin-left: 16.66667% -} - -.offset-3 { - margin-left: 25% -} - -.offset-4 { - margin-left: 33.33333% -} - -.offset-5 { - margin-left: 41.66667% -} - -.offset-6 { - margin-left: 50% -} - -.offset-7 { - margin-left: 58.33333% -} - -.offset-8 { - margin-left: 66.66667% -} - -.offset-9 { - margin-left: 75% -} - -.offset-10 { - margin-left: 83.33333% -} - -.offset-11 { - margin-left: 91.66667% -} - -@media (min-width:576px) { - .col-sm { - flex-basis: 0; - flex-grow: 1; - max-width: 100% - } - .row-cols-sm-1>* { - flex: 0 0 100%; - max-width: 100% - } - .row-cols-sm-2>* { - flex: 0 0 50%; - max-width: 50% - } - .row-cols-sm-3>* { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .row-cols-sm-4>* { - flex: 0 0 25%; - max-width: 25% - } - .row-cols-sm-5>* { - flex: 0 0 20%; - max-width: 20% - } - .row-cols-sm-6>* { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-sm-auto { - flex: 0 0 auto; - width: auto; - max-width: 100% - } - .col-sm-1 { - flex: 0 0 8.33333%; - max-width: 8.33333% - } - .col-sm-2 { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-sm-3 { - flex: 0 0 25%; - max-width: 25% - } - .col-sm-4 { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .col-sm-5 { - flex: 0 0 41.66667%; - max-width: 41.66667% - } - .col-sm-6 { - flex: 0 0 50%; - max-width: 50% - } - .col-sm-7 { - flex: 0 0 58.33333%; - max-width: 58.33333% - } - .col-sm-8 { - flex: 0 0 66.66667%; - max-width: 66.66667% - } - .col-sm-9 { - flex: 0 0 75%; - max-width: 75% - } - .col-sm-10 { - flex: 0 0 83.33333%; - max-width: 83.33333% - } - .col-sm-11 { - flex: 0 0 91.66667%; - max-width: 91.66667% - } - .col-sm-12 { - flex: 0 0 100%; - max-width: 100% - } - .order-sm-first { - order: -1 - } - .order-sm-last { - order: 13 - } - .order-sm-0 { - order: 0 - } - .order-sm-1 { - order: 1 - } - .order-sm-2 { - order: 2 - } - .order-sm-3 { - order: 3 - } - .order-sm-4 { - order: 4 - } - .order-sm-5 { - order: 5 - } - .order-sm-6 { - order: 6 - } - .order-sm-7 { - order: 7 - } - .order-sm-8 { - order: 8 - } - .order-sm-9 { - order: 9 - } - .order-sm-10 { - order: 10 - } - .order-sm-11 { - order: 11 - } - .order-sm-12 { - order: 12 - } - .offset-sm-0 { - margin-left: 0 - } - .offset-sm-1 { - margin-left: 8.33333% - } - .offset-sm-2 { - margin-left: 16.66667% - } - .offset-sm-3 { - margin-left: 25% - } - .offset-sm-4 { - margin-left: 33.33333% - } - .offset-sm-5 { - margin-left: 41.66667% - } - .offset-sm-6 { - margin-left: 50% - } - .offset-sm-7 { - margin-left: 58.33333% - } - .offset-sm-8 { - margin-left: 66.66667% - } - .offset-sm-9 { - margin-left: 75% - } - .offset-sm-10 { - margin-left: 83.33333% - } - .offset-sm-11 { - margin-left: 91.66667% - } -} - -@media (min-width:768px) { - .col-md { - flex-basis: 0; - flex-grow: 1; - max-width: 100% - } - .row-cols-md-1>* { - flex: 0 0 100%; - max-width: 100% - } - .row-cols-md-2>* { - flex: 0 0 50%; - max-width: 50% - } - .row-cols-md-3>* { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .row-cols-md-4>* { - flex: 0 0 25%; - max-width: 25% - } - .row-cols-md-5>* { - flex: 0 0 20%; - max-width: 20% - } - .row-cols-md-6>* { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-md-auto { - flex: 0 0 auto; - width: auto; - max-width: 100% - } - .col-md-1 { - flex: 0 0 8.33333%; - max-width: 8.33333% - } - .col-md-2 { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-md-3 { - flex: 0 0 25%; - max-width: 25% - } - .col-md-4 { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .col-md-5 { - flex: 0 0 41.66667%; - max-width: 41.66667% - } - .col-md-6 { - flex: 0 0 50%; - max-width: 50% - } - .col-md-7 { - flex: 0 0 58.33333%; - max-width: 58.33333% - } - .col-md-8 { - flex: 0 0 66.66667%; - max-width: 66.66667% - } - .col-md-9 { - flex: 0 0 75%; - max-width: 75% - } - .col-md-10 { - flex: 0 0 83.33333%; - max-width: 83.33333% - } - .col-md-11 { - flex: 0 0 91.66667%; - max-width: 91.66667% - } - .col-md-12 { - flex: 0 0 100%; - max-width: 100% - } - .order-md-first { - order: -1 - } - .order-md-last { - order: 13 - } - .order-md-0 { - order: 0 - } - .order-md-1 { - order: 1 - } - .order-md-2 { - order: 2 - } - .order-md-3 { - order: 3 - } - .order-md-4 { - order: 4 - } - .order-md-5 { - order: 5 - } - .order-md-6 { - order: 6 - } - .order-md-7 { - order: 7 - } - .order-md-8 { - order: 8 - } - .order-md-9 { - order: 9 - } - .order-md-10 { - order: 10 - } - .order-md-11 { - order: 11 - } - .order-md-12 { - order: 12 - } - .offset-md-0 { - margin-left: 0 - } - .offset-md-1 { - margin-left: 8.33333% - } - .offset-md-2 { - margin-left: 16.66667% - } - .offset-md-3 { - margin-left: 25% - } - .offset-md-4 { - margin-left: 33.33333% - } - .offset-md-5 { - margin-left: 41.66667% - } - .offset-md-6 { - margin-left: 50% - } - .offset-md-7 { - margin-left: 58.33333% - } - .offset-md-8 { - margin-left: 66.66667% - } - .offset-md-9 { - margin-left: 75% - } - .offset-md-10 { - margin-left: 83.33333% - } - .offset-md-11 { - margin-left: 91.66667% - } -} - -@media (min-width:992px) { - .col-lg { - flex-basis: 0; - flex-grow: 1; - max-width: 100% - } - .row-cols-lg-1>* { - flex: 0 0 100%; - max-width: 100% - } - .row-cols-lg-2>* { - flex: 0 0 50%; - max-width: 50% - } - .row-cols-lg-3>* { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .row-cols-lg-4>* { - flex: 0 0 25%; - max-width: 25% - } - .row-cols-lg-5>* { - flex: 0 0 20%; - max-width: 20% - } - .row-cols-lg-6>* { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-lg-auto { - flex: 0 0 auto; - width: auto; - max-width: 100% - } - .col-lg-1 { - flex: 0 0 8.33333%; - max-width: 8.33333% - } - .col-lg-2 { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-lg-3 { - flex: 0 0 25%; - max-width: 25% - } - .col-lg-4 { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .col-lg-5 { - flex: 0 0 41.66667%; - max-width: 41.66667% - } - .col-lg-6 { - flex: 0 0 50%; - max-width: 50% - } - .col-lg-7 { - flex: 0 0 58.33333%; - max-width: 58.33333% - } - .col-lg-8 { - flex: 0 0 66.66667%; - max-width: 66.66667% - } - .col-lg-9 { - flex: 0 0 75%; - max-width: 75% - } - .col-lg-10 { - flex: 0 0 83.33333%; - max-width: 83.33333% - } - .col-lg-11 { - flex: 0 0 91.66667%; - max-width: 91.66667% - } - .col-lg-12 { - flex: 0 0 100%; - max-width: 100% - } - .order-lg-first { - order: -1 - } - .order-lg-last { - order: 13 - } - .order-lg-0 { - order: 0 - } - .order-lg-1 { - order: 1 - } - .order-lg-2 { - order: 2 - } - .order-lg-3 { - order: 3 - } - .order-lg-4 { - order: 4 - } - .order-lg-5 { - order: 5 - } - .order-lg-6 { - order: 6 - } - .order-lg-7 { - order: 7 - } - .order-lg-8 { - order: 8 - } - .order-lg-9 { - order: 9 - } - .order-lg-10 { - order: 10 - } - .order-lg-11 { - order: 11 - } - .order-lg-12 { - order: 12 - } - .offset-lg-0 { - margin-left: 0 - } - .offset-lg-1 { - margin-left: 8.33333% - } - .offset-lg-2 { - margin-left: 16.66667% - } - .offset-lg-3 { - margin-left: 25% - } - .offset-lg-4 { - margin-left: 33.33333% - } - .offset-lg-5 { - margin-left: 41.66667% - } - .offset-lg-6 { - margin-left: 50% - } - .offset-lg-7 { - margin-left: 58.33333% - } - .offset-lg-8 { - margin-left: 66.66667% - } - .offset-lg-9 { - margin-left: 75% - } - .offset-lg-10 { - margin-left: 83.33333% - } - .offset-lg-11 { - margin-left: 91.66667% - } -} - -@media (min-width:1200px) { - .col-xl { - flex-basis: 0; - flex-grow: 1; - max-width: 100% - } - .row-cols-xl-1>* { - flex: 0 0 100%; - max-width: 100% - } - .row-cols-xl-2>* { - flex: 0 0 50%; - max-width: 50% - } - .row-cols-xl-3>* { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .row-cols-xl-4>* { - flex: 0 0 25%; - max-width: 25% - } - .row-cols-xl-5>* { - flex: 0 0 20%; - max-width: 20% - } - .row-cols-xl-6>* { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-xl-auto { - flex: 0 0 auto; - width: auto; - max-width: 100% - } - .col-xl-1 { - flex: 0 0 8.33333%; - max-width: 8.33333% - } - .col-xl-2 { - flex: 0 0 16.66667%; - max-width: 16.66667% - } - .col-xl-3 { - flex: 0 0 25%; - max-width: 25% - } - .col-xl-4 { - flex: 0 0 33.33333%; - max-width: 33.33333% - } - .col-xl-5 { - flex: 0 0 41.66667%; - max-width: 41.66667% - } - .col-xl-6 { - flex: 0 0 50%; - max-width: 50% - } - .col-xl-7 { - flex: 0 0 58.33333%; - max-width: 58.33333% - } - .col-xl-8 { - flex: 0 0 66.66667%; - max-width: 66.66667% - } - .col-xl-9 { - flex: 0 0 75%; - max-width: 75% - } - .col-xl-10 { - flex: 0 0 83.33333%; - max-width: 83.33333% - } - .col-xl-11 { - flex: 0 0 91.66667%; - max-width: 91.66667% - } - .col-xl-12 { - flex: 0 0 100%; - max-width: 100% - } - .order-xl-first { - order: -1 - } - .order-xl-last { - order: 13 - } - .order-xl-0 { - order: 0 - } - .order-xl-1 { - order: 1 - } - .order-xl-2 { - order: 2 - } - .order-xl-3 { - order: 3 - } - .order-xl-4 { - order: 4 - } - .order-xl-5 { - order: 5 - } - .order-xl-6 { - order: 6 - } - .order-xl-7 { - order: 7 - } - .order-xl-8 { - order: 8 - } - .order-xl-9 { - order: 9 - } - .order-xl-10 { - order: 10 - } - .order-xl-11 { - order: 11 - } - .order-xl-12 { - order: 12 - } - .offset-xl-0 { - margin-left: 0 - } - .offset-xl-1 { - margin-left: 8.33333% - } - .offset-xl-2 { - margin-left: 16.66667% - } - .offset-xl-3 { - margin-left: 25% - } - .offset-xl-4 { - margin-left: 33.33333% - } - .offset-xl-5 { - margin-left: 41.66667% - } - .offset-xl-6 { - margin-left: 50% - } - .offset-xl-7 { - margin-left: 58.33333% - } - .offset-xl-8 { - margin-left: 66.66667% - } - .offset-xl-9 { - margin-left: 75% - } - .offset-xl-10 { - margin-left: 83.33333% - } - .offset-xl-11 { - margin-left: 91.66667% - } -} - -.table { - width: 100%; - margin-bottom: 1rem; - color: #858796 -} - -.table td, -.table th { - padding: .75rem; - vertical-align: top; - border-top: 1px solid #e3e6f0 -} - -.table thead th { - vertical-align: bottom; - border-bottom: 2px solid #e3e6f0 -} - -.table tbody+tbody { - border-top: 2px solid #e3e6f0 -} - -.table-sm td, -.table-sm th { - padding: .3rem -} - -.table-bordered, -.table-bordered td, -.table-bordered th { - border: 1px solid #e3e6f0 -} - -.table-bordered thead td, -.table-bordered thead th { - border-bottom-width: 2px -} - -.table-borderless tbody+tbody, -.table-borderless td, -.table-borderless th, -.table-borderless thead th { - border: 0 -} - -.table-striped tbody tr:nth-of-type(odd) { - background-color: rgba(0, 0, 0, .05) -} - -.table-hover tbody tr:hover { - color: #858796; - background-color: rgba(0, 0, 0, .075) -} - -.table-primary, -.table-primary>td, -.table-primary>th { - background-color: #cdd8f6 -} - -.table-primary tbody+tbody, -.table-primary td, -.table-primary th, -.table-primary thead th { - border-color: #a3b6ee -} - -.table-hover .table-primary:hover, -.table-hover .table-primary:hover>td, -.table-hover .table-primary:hover>th { - background-color: #b7c7f2 -} - -.table-secondary, -.table-secondary>td, -.table-secondary>th { - background-color: #dddde2 -} - -.table-secondary tbody+tbody, -.table-secondary td, -.table-secondary th, -.table-secondary thead th { - border-color: #c0c1c8 -} - -.table-hover .table-secondary:hover, -.table-hover .table-secondary:hover>td, -.table-hover .table-secondary:hover>th { - background-color: #cfcfd6 -} - -.table-success, -.table-success>td, -.table-success>th { - background-color: #bff0de -} - -.table-success tbody+tbody, -.table-success td, -.table-success th, -.table-success thead th { - border-color: #89e2c2 -} - -.table-hover .table-success:hover, -.table-hover .table-success:hover>td, -.table-hover .table-success:hover>th { - background-color: #aaebd3 -} - -.table-info, -.table-info>td, -.table-info>th { - background-color: #c7ebf1 -} - -.table-info tbody+tbody, -.table-info td, -.table-info th, -.table-info thead th { - border-color: #96dbe4 -} - -.table-hover .table-info:hover, -.table-hover .table-info:hover>td, -.table-hover .table-info:hover>th { - background-color: #b3e4ec -} - -.table-warning, -.table-warning>td, -.table-warning>th { - background-color: #fceec9 -} - -.table-warning tbody+tbody, -.table-warning td, -.table-warning th, -.table-warning thead th { - border-color: #fadf9b -} - -.table-hover .table-warning:hover, -.table-hover .table-warning:hover>td, -.table-hover .table-warning:hover>th { - background-color: #fbe6b1 -} - -.table-danger, -.table-danger>td, -.table-danger>th { - background-color: #f8ccc8 -} - -.table-danger tbody+tbody, -.table-danger td, -.table-danger th, -.table-danger thead th { - border-color: #f3a199 -} - -.table-hover .table-danger:hover, -.table-hover .table-danger:hover>td, -.table-hover .table-danger:hover>th { - background-color: #f5b7b1 -} - -.table-light, -.table-light>td, -.table-light>th { - background-color: #fdfdfe -} - -.table-light tbody+tbody, -.table-light td, -.table-light th, -.table-light thead th { - border-color: #fbfcfd -} - -.table-hover .table-light:hover, -.table-hover .table-light:hover>td, -.table-hover .table-light:hover>th { - background-color: #ececf6 -} - -.table-dark, -.table-dark>td, -.table-dark>th { - background-color: #d1d1d5 -} - -.table-dark tbody+tbody, -.table-dark td, -.table-dark th, -.table-dark thead th { - border-color: #a9aab1 -} - -.table-hover .table-dark:hover, -.table-hover .table-dark:hover>td, -.table-hover .table-dark:hover>th { - background-color: #c4c4c9 -} - -.table-active, -.table-active>td, -.table-active>th, -.table-hover .table-active:hover, -.table-hover .table-active:hover>td, -.table-hover .table-active:hover>th { - background-color: rgba(0, 0, 0, .075) -} - -.table .thead-dark th { - color: #fff; - background-color: #5a5c69; - border-color: #6c6e7e -} - -.table .thead-light th { - color: #6e707e; - background-color: #eaecf4; - border-color: #e3e6f0 -} - -.table-dark { - color: #fff; - background-color: #5a5c69 -} - -.table-dark td, -.table-dark th, -.table-dark thead th { - border-color: #6c6e7e -} - -.table-dark.table-bordered { - border: 0 -} - -.table-dark.table-striped tbody tr:nth-of-type(odd) { - background-color: hsla(0, 0%, 100%, .05) -} - -.table-dark.table-hover tbody tr:hover { - color: #fff; - background-color: hsla(0, 0%, 100%, .075) -} - -@media (max-width:575.98px) { - .table-responsive-sm { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch - } - .table-responsive-sm>.table-bordered { - border: 0 - } -} - -@media (max-width:767.98px) { - .table-responsive-md { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch - } - .table-responsive-md>.table-bordered { - border: 0 - } -} - -@media (max-width:991.98px) { - .table-responsive-lg { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch - } - .table-responsive-lg>.table-bordered { - border: 0 - } -} - -@media (max-width:1199.98px) { - .table-responsive-xl { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch - } - .table-responsive-xl>.table-bordered { - border: 0 - } -} - -.table-responsive { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch -} - -.table-responsive>.table-bordered { - border: 0 -} - -.form-control { - display: block; - width: 100%; - height: calc(1.5em + .75rem + 2px); - padding: .375rem .75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #6e707e; - background-color: #fff; - background-clip: padding-box; - border: 1px solid #d1d3e2; - border-radius: .35rem; - transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out -} - -@media (prefers-reduced-motion:reduce) { - .form-control { - transition: none - } -} - -.form-control::-ms-expand { - background-color: transparent; - border: 0 -} - -.form-control:focus { - color: #6e707e; - background-color: #fff; - border-color: #bac8f3; - outline: 0; - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.form-control::-webkit-input-placeholder { - color: #858796; - opacity: 1 -} - -.form-control::-moz-placeholder { - color: #858796; - opacity: 1 -} - -.form-control:-ms-input-placeholder { - color: #858796; - opacity: 1 -} - -.form-control::-ms-input-placeholder { - color: #858796; - opacity: 1 -} - -.form-control::placeholder { - color: #858796; - opacity: 1 -} - -.form-control:disabled, -.form-control[readonly] { - background-color: #eaecf4; - opacity: 1 -} - -input[type=date].form-control, -input[type=datetime-local].form-control, -input[type=month].form-control, -input[type=time].form-control { - -webkit-appearance: none; - -moz-appearance: none; - appearance: none -} - -select.form-control:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #6e707e -} - -select.form-control:focus::-ms-value { - color: #6e707e; - background-color: #fff -} - -.form-control-file, -.form-control-range { - display: block; - width: 100% -} - -.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; - line-height: 1.5 -} - -.col-form-label-sm { - padding-top: calc(.25rem + 1px); - padding-bottom: calc(.25rem + 1px); - font-size: .875rem; - line-height: 1.5 -} - -.form-control-plaintext { - display: block; - width: 100%; - padding: .375rem 0; - margin-bottom: 0; - font-size: 1rem; - line-height: 1.5; - color: #858796; - background-color: transparent; - border: solid transparent; - border-width: 1px 0 -} - -.form-control-plaintext.form-control-lg, -.form-control-plaintext.form-control-sm { - padding-right: 0; - padding-left: 0 -} - -.form-control-sm { - height: calc(1.5em + .5rem + 2px); - padding: .25rem .5rem; - font-size: .875rem; - line-height: 1.5; - border-radius: .2rem -} - -.form-control-lg { - height: calc(1.5em + 1rem + 2px); - padding: .5rem 1rem; - font-size: 1.25rem; - line-height: 1.5; - border-radius: .3rem -} - -select.form-control[multiple], -select.form-control[size], -textarea.form-control { - height: auto -} - -.form-group { - margin-bottom: 1rem -} - -.form-text { - display: block; - margin-top: .25rem -} - -.form-row { - display: flex; - flex-wrap: wrap; - margin-right: -5px; - margin-left: -5px -} - -.form-row>.col, -.form-row>[class*=col-] { - padding-right: 5px; - padding-left: 5px -} - -.form-check { - position: relative; - display: block; - padding-left: 1.25rem -} - -.form-check-input { - position: absolute; - margin-top: .3rem; - margin-left: -1.25rem -} - -.form-check-input:disabled~.form-check-label, -.form-check-input[disabled]~.form-check-label { - color: #858796 -} - -.form-check-label { - margin-bottom: 0 -} - -.form-check-inline { - display: inline-flex; - align-items: center; - padding-left: 0; - margin-right: .75rem -} - -.form-check-inline .form-check-input { - position: static; - margin-top: 0; - margin-right: .3125rem; - margin-left: 0 -} - -.valid-feedback { - display: none; - width: 100%; - margin-top: .25rem; - font-size: 80%; - color: #1cc88a -} - -.valid-tooltip { - position: absolute; - top: 100%; - left: 0; - z-index: 5; - display: none; - max-width: 100%; - padding: .25rem .5rem; - margin-top: .1rem; - font-size: .875rem; - line-height: 1.5; - color: #fff; - background-color: rgba(28, 200, 138, .9); - border-radius: .35rem -} - -.form-row>.col>.valid-tooltip, -.form-row>[class*=col-]>.valid-tooltip { - left: 5px -} - -.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: #1cc88a; - padding-right: calc(1.5em + .75rem)!important; - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%231cc88a' d='M2.3 6.73L.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: #1cc88a; - box-shadow: 0 0 0 .2rem rgba(28, 200, 138, .25) -} - -.was-validated select.form-control:valid, -select.form-control.is-valid { - padding-right: 3rem!important; - background-position: right 1.5rem center -} - -.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) -} - -.custom-select.is-valid, -.was-validated .custom-select:valid { - border-color: #1cc88a; - padding-right: calc(.75em + 2.3125rem)!important; - background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%235a5c69' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%231cc88a' d='M2.3 6.73L.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") center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem) no-repeat -} - -.custom-select.is-valid:focus, -.was-validated .custom-select:valid:focus { - border-color: #1cc88a; - box-shadow: 0 0 0 .2rem rgba(28, 200, 138, .25) -} - -.form-check-input.is-valid~.form-check-label, -.was-validated .form-check-input:valid~.form-check-label { - color: #1cc88a -} - -.form-check-input.is-valid~.valid-feedback, -.form-check-input.is-valid~.valid-tooltip, -.was-validated .form-check-input:valid~.valid-feedback, -.was-validated .form-check-input:valid~.valid-tooltip { - display: block -} - -.custom-control-input.is-valid~.custom-control-label, -.was-validated .custom-control-input:valid~.custom-control-label { - color: #1cc88a -} - -.custom-control-input.is-valid~.custom-control-label:before, -.was-validated .custom-control-input:valid~.custom-control-label:before { - border-color: #1cc88a -} - -.custom-control-input.is-valid:checked~.custom-control-label:before, -.was-validated .custom-control-input:valid:checked~.custom-control-label:before { - border-color: #34e3a4; - background-color: #34e3a4 -} - -.custom-control-input.is-valid:focus~.custom-control-label:before, -.was-validated .custom-control-input:valid:focus~.custom-control-label:before { - box-shadow: 0 0 0 .2rem rgba(28, 200, 138, .25) -} - -.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before, -.custom-file-input.is-valid~.custom-file-label, -.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before, -.was-validated .custom-file-input:valid~.custom-file-label { - border-color: #1cc88a -} - -.custom-file-input.is-valid:focus~.custom-file-label, -.was-validated .custom-file-input:valid:focus~.custom-file-label { - border-color: #1cc88a; - box-shadow: 0 0 0 .2rem rgba(28, 200, 138, .25) -} - -.invalid-feedback { - display: none; - width: 100%; - margin-top: .25rem; - font-size: 80%; - color: #e74a3b -} - -.invalid-tooltip { - position: absolute; - top: 100%; - left: 0; - z-index: 5; - display: none; - max-width: 100%; - padding: .25rem .5rem; - margin-top: .1rem; - font-size: .875rem; - line-height: 1.5; - color: #fff; - background-color: rgba(231, 74, 59, .9); - border-radius: .35rem -} - -.form-row>.col>.invalid-tooltip, -.form-row>[class*=col-]>.invalid-tooltip { - left: 5px -} - -.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: #e74a3b; - padding-right: calc(1.5em + .75rem)!important; - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e74a3b'%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='%23e74a3b' 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: #e74a3b; - box-shadow: 0 0 0 .2rem rgba(231, 74, 59, .25) -} - -.was-validated select.form-control:invalid, -select.form-control.is-invalid { - padding-right: 3rem!important; - background-position: right 1.5rem center -} - -.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) -} - -.custom-select.is-invalid, -.was-validated .custom-select:invalid { - border-color: #e74a3b; - padding-right: calc(.75em + 2.3125rem)!important; - background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%235a5c69' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e74a3b'%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='%23e74a3b' stroke='none'/%3E%3C/svg%3E") center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem) no-repeat -} - -.custom-select.is-invalid:focus, -.was-validated .custom-select:invalid:focus { - border-color: #e74a3b; - box-shadow: 0 0 0 .2rem rgba(231, 74, 59, .25) -} - -.form-check-input.is-invalid~.form-check-label, -.was-validated .form-check-input:invalid~.form-check-label { - color: #e74a3b -} - -.form-check-input.is-invalid~.invalid-feedback, -.form-check-input.is-invalid~.invalid-tooltip, -.was-validated .form-check-input:invalid~.invalid-feedback, -.was-validated .form-check-input:invalid~.invalid-tooltip { - display: block -} - -.custom-control-input.is-invalid~.custom-control-label, -.was-validated .custom-control-input:invalid~.custom-control-label { - color: #e74a3b -} - -.custom-control-input.is-invalid~.custom-control-label:before, -.was-validated .custom-control-input:invalid~.custom-control-label:before { - border-color: #e74a3b -} - -.custom-control-input.is-invalid:checked~.custom-control-label:before, -.was-validated .custom-control-input:invalid:checked~.custom-control-label:before { - border-color: #ed7468; - background-color: #ed7468 -} - -.custom-control-input.is-invalid:focus~.custom-control-label:before, -.was-validated .custom-control-input:invalid:focus~.custom-control-label:before { - box-shadow: 0 0 0 .2rem rgba(231, 74, 59, .25) -} - -.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before, -.custom-file-input.is-invalid~.custom-file-label, -.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before, -.was-validated .custom-file-input:invalid~.custom-file-label { - border-color: #e74a3b -} - -.custom-file-input.is-invalid:focus~.custom-file-label, -.was-validated .custom-file-input:invalid:focus~.custom-file-label { - border-color: #e74a3b; - box-shadow: 0 0 0 .2rem rgba(231, 74, 59, .25) -} - -.form-inline { - display: flex; - flex-flow: row wrap; - align-items: center -} - -.form-inline .form-check { - width: 100% -} - -@media (min-width:576px) { - .form-inline label { - justify-content: center - } - .form-inline .form-group, - .form-inline label { - display: flex; - align-items: center; - margin-bottom: 0 - } - .form-inline .form-group { - flex: 0 0 auto; - flex-flow: row wrap - } - .form-inline .form-control { - display: inline-block; - width: auto; - vertical-align: middle - } - .form-inline .form-control-plaintext { - display: inline-block - } - .form-inline .custom-select, - .form-inline .input-group { - width: auto - } - .form-inline .form-check { - display: flex; - align-items: center; - justify-content: center; - width: auto; - padding-left: 0 - } - .form-inline .form-check-input { - position: relative; - flex-shrink: 0; - margin-top: 0; - margin-right: .25rem; - margin-left: 0 - } - .form-inline .custom-control { - align-items: center; - justify-content: center - } - .form-inline .custom-control-label { - margin-bottom: 0 - } -} - -.btn { - display: inline-block; - font-weight: 400; - color: #858796; - text-align: center; - vertical-align: middle; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background-color: transparent; - border: 1px solid transparent; - padding: .375rem .75rem; - font-size: 1rem; - line-height: 1.5; - border-radius: .35rem; - 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: #858796; - text-decoration: none -} - -.btn.focus, -.btn:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.btn.disabled, -.btn:disabled { - opacity: .65 -} - -.btn:not(:disabled):not(.disabled) { - cursor: pointer -} - -a.btn.disabled, -fieldset:disabled a.btn { - pointer-events: none -} - -.btn-primary { - color: #fff; - background-color: #4e73df; - border-color: #4e73df -} - -.btn-primary.focus, -.btn-primary:focus, -.btn-primary:hover { - color: #fff; - background-color: #2e59d9; - border-color: #2653d4 -} - -.btn-primary.focus, -.btn-primary:focus { - box-shadow: 0 0 0 .2rem rgba(105, 136, 228, .5) -} - -.btn-primary.disabled, -.btn-primary:disabled { - color: #fff; - background-color: #4e73df; - border-color: #4e73df -} - -.btn-primary:not(:disabled):not(.disabled).active, -.btn-primary:not(:disabled):not(.disabled):active, -.show>.btn-primary.dropdown-toggle { - color: #fff; - background-color: #2653d4; - border-color: #244ec9 -} - -.btn-primary:not(:disabled):not(.disabled).active:focus, -.btn-primary:not(:disabled):not(.disabled):active:focus, -.show>.btn-primary.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(105, 136, 228, .5) -} - -.btn-secondary { - color: #fff; - background-color: #858796; - border-color: #858796 -} - -.btn-secondary.focus, -.btn-secondary:focus, -.btn-secondary:hover { - color: #fff; - background-color: #717384; - border-color: #6b6d7d -} - -.btn-secondary.focus, -.btn-secondary:focus { - box-shadow: 0 0 0 .2rem rgba(151, 153, 166, .5) -} - -.btn-secondary.disabled, -.btn-secondary:disabled { - color: #fff; - background-color: #858796; - border-color: #858796 -} - -.btn-secondary:not(:disabled):not(.disabled).active, -.btn-secondary:not(:disabled):not(.disabled):active, -.show>.btn-secondary.dropdown-toggle { - color: #fff; - background-color: #6b6d7d; - border-color: #656776 -} - -.btn-secondary:not(:disabled):not(.disabled).active:focus, -.btn-secondary:not(:disabled):not(.disabled):active:focus, -.show>.btn-secondary.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(151, 153, 166, .5) -} - -.btn-success { - color: #fff; - background-color: #1cc88a; - border-color: #1cc88a -} - -.btn-success.focus, -.btn-success:focus, -.btn-success:hover { - color: #fff; - background-color: #17a673; - border-color: #169b6b -} - -.btn-success.focus, -.btn-success:focus { - box-shadow: 0 0 0 .2rem rgba(62, 208, 156, .5) -} - -.btn-success.disabled, -.btn-success:disabled { - color: #fff; - background-color: #1cc88a; - border-color: #1cc88a -} - -.btn-success:not(:disabled):not(.disabled).active, -.btn-success:not(:disabled):not(.disabled):active, -.show>.btn-success.dropdown-toggle { - color: #fff; - background-color: #169b6b; - border-color: #149063 -} - -.btn-success:not(:disabled):not(.disabled).active:focus, -.btn-success:not(:disabled):not(.disabled):active:focus, -.show>.btn-success.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(62, 208, 156, .5) -} - -.btn-info { - color: #fff; - background-color: #36b9cc; - border-color: #36b9cc -} - -.btn-info.focus, -.btn-info:focus, -.btn-info:hover { - color: #fff; - background-color: #2c9faf; - border-color: #2a96a5 -} - -.btn-info.focus, -.btn-info:focus { - box-shadow: 0 0 0 .2rem rgba(84, 196, 212, .5) -} - -.btn-info.disabled, -.btn-info:disabled { - color: #fff; - background-color: #36b9cc; - border-color: #36b9cc -} - -.btn-info:not(:disabled):not(.disabled).active, -.btn-info:not(:disabled):not(.disabled):active, -.show>.btn-info.dropdown-toggle { - color: #fff; - background-color: #2a96a5; - border-color: #278c9b -} - -.btn-info:not(:disabled):not(.disabled).active:focus, -.btn-info:not(:disabled):not(.disabled):active:focus, -.show>.btn-info.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(84, 196, 212, .5) -} - -.btn-warning { - color: #fff; - background-color: #f6c23e; - border-color: #f6c23e -} - -.btn-warning.focus, -.btn-warning:focus, -.btn-warning:hover { - color: #fff; - background-color: #f4b619; - border-color: #f4b30d -} - -.btn-warning.focus, -.btn-warning:focus { - box-shadow: 0 0 0 .2rem rgba(247, 203, 91, .5) -} - -.btn-warning.disabled, -.btn-warning:disabled { - color: #fff; - background-color: #f6c23e; - border-color: #f6c23e -} - -.btn-warning:not(:disabled):not(.disabled).active, -.btn-warning:not(:disabled):not(.disabled):active, -.show>.btn-warning.dropdown-toggle { - color: #fff; - background-color: #f4b30d; - border-color: #e9aa0b -} - -.btn-warning:not(:disabled):not(.disabled).active:focus, -.btn-warning:not(:disabled):not(.disabled):active:focus, -.show>.btn-warning.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(247, 203, 91, .5) -} - -.btn-danger { - color: #fff; - background-color: #e74a3b; - border-color: #e74a3b -} - -.btn-danger.focus, -.btn-danger:focus, -.btn-danger:hover { - color: #fff; - background-color: #e02d1b; - border-color: #d52a1a -} - -.btn-danger.focus, -.btn-danger:focus { - box-shadow: 0 0 0 .2rem rgba(235, 101, 88, .5) -} - -.btn-danger.disabled, -.btn-danger:disabled { - color: #fff; - background-color: #e74a3b; - border-color: #e74a3b -} - -.btn-danger:not(:disabled):not(.disabled).active, -.btn-danger:not(:disabled):not(.disabled):active, -.show>.btn-danger.dropdown-toggle { - color: #fff; - background-color: #d52a1a; - border-color: #ca2819 -} - -.btn-danger:not(:disabled):not(.disabled).active:focus, -.btn-danger:not(:disabled):not(.disabled):active:focus, -.show>.btn-danger.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(235, 101, 88, .5) -} - -.btn-light { - color: #3a3b45; - background-color: #f8f9fc; - border-color: #f8f9fc -} - -.btn-light.focus, -.btn-light:focus, -.btn-light:hover { - color: #3a3b45; - background-color: #dde2f1; - border-color: #d4daed -} - -.btn-light.focus, -.btn-light:focus { - box-shadow: 0 0 0 .2rem rgba(220, 221, 225, .5) -} - -.btn-light.disabled, -.btn-light:disabled { - color: #3a3b45; - background-color: #f8f9fc; - border-color: #f8f9fc -} - -.btn-light:not(:disabled):not(.disabled).active, -.btn-light:not(:disabled):not(.disabled):active, -.show>.btn-light.dropdown-toggle { - color: #3a3b45; - background-color: #d4daed; - border-color: #cbd3e9 -} - -.btn-light:not(:disabled):not(.disabled).active:focus, -.btn-light:not(:disabled):not(.disabled):active:focus, -.show>.btn-light.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(220, 221, 225, .5) -} - -.btn-dark { - color: #fff; - background-color: #5a5c69; - border-color: #5a5c69 -} - -.btn-dark.focus, -.btn-dark:focus, -.btn-dark:hover { - color: #fff; - background-color: #484a54; - border-color: #42444e -} - -.btn-dark.focus, -.btn-dark:focus { - box-shadow: 0 0 0 .2rem rgba(115, 116, 128, .5) -} - -.btn-dark.disabled, -.btn-dark:disabled { - color: #fff; - background-color: #5a5c69; - border-color: #5a5c69 -} - -.btn-dark:not(:disabled):not(.disabled).active, -.btn-dark:not(:disabled):not(.disabled):active, -.show>.btn-dark.dropdown-toggle { - color: #fff; - background-color: #42444e; - border-color: #3d3e47 -} - -.btn-dark:not(:disabled):not(.disabled).active:focus, -.btn-dark:not(:disabled):not(.disabled):active:focus, -.show>.btn-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(115, 116, 128, .5) -} - -.btn-outline-primary { - color: #4e73df; - border-color: #4e73df -} - -.btn-outline-primary:hover { - color: #fff; - background-color: #4e73df; - border-color: #4e73df -} - -.btn-outline-primary.focus, -.btn-outline-primary:focus { - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .5) -} - -.btn-outline-primary.disabled, -.btn-outline-primary:disabled { - color: #4e73df; - background-color: transparent -} - -.btn-outline-primary:not(:disabled):not(.disabled).active, -.btn-outline-primary:not(:disabled):not(.disabled):active, -.show>.btn-outline-primary.dropdown-toggle { - color: #fff; - background-color: #4e73df; - border-color: #4e73df -} - -.btn-outline-primary:not(:disabled):not(.disabled).active:focus, -.btn-outline-primary:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-primary.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .5) -} - -.btn-outline-secondary { - color: #858796; - border-color: #858796 -} - -.btn-outline-secondary:hover { - color: #fff; - background-color: #858796; - border-color: #858796 -} - -.btn-outline-secondary.focus, -.btn-outline-secondary:focus { - box-shadow: 0 0 0 .2rem rgba(133, 135, 150, .5) -} - -.btn-outline-secondary.disabled, -.btn-outline-secondary:disabled { - color: #858796; - background-color: transparent -} - -.btn-outline-secondary:not(:disabled):not(.disabled).active, -.btn-outline-secondary:not(:disabled):not(.disabled):active, -.show>.btn-outline-secondary.dropdown-toggle { - color: #fff; - background-color: #858796; - border-color: #858796 -} - -.btn-outline-secondary:not(:disabled):not(.disabled).active:focus, -.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-secondary.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(133, 135, 150, .5) -} - -.btn-outline-success { - color: #1cc88a; - border-color: #1cc88a -} - -.btn-outline-success:hover { - color: #fff; - background-color: #1cc88a; - border-color: #1cc88a -} - -.btn-outline-success.focus, -.btn-outline-success:focus { - box-shadow: 0 0 0 .2rem rgba(28, 200, 138, .5) -} - -.btn-outline-success.disabled, -.btn-outline-success:disabled { - color: #1cc88a; - background-color: transparent -} - -.btn-outline-success:not(:disabled):not(.disabled).active, -.btn-outline-success:not(:disabled):not(.disabled):active, -.show>.btn-outline-success.dropdown-toggle { - color: #fff; - background-color: #1cc88a; - border-color: #1cc88a -} - -.btn-outline-success:not(:disabled):not(.disabled).active:focus, -.btn-outline-success:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-success.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(28, 200, 138, .5) -} - -.btn-outline-info { - color: #36b9cc; - border-color: #36b9cc -} - -.btn-outline-info:hover { - color: #fff; - background-color: #36b9cc; - border-color: #36b9cc -} - -.btn-outline-info.focus, -.btn-outline-info:focus { - box-shadow: 0 0 0 .2rem rgba(54, 185, 204, .5) -} - -.btn-outline-info.disabled, -.btn-outline-info:disabled { - color: #36b9cc; - background-color: transparent -} - -.btn-outline-info:not(:disabled):not(.disabled).active, -.btn-outline-info:not(:disabled):not(.disabled):active, -.show>.btn-outline-info.dropdown-toggle { - color: #fff; - background-color: #36b9cc; - border-color: #36b9cc -} - -.btn-outline-info:not(:disabled):not(.disabled).active:focus, -.btn-outline-info:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-info.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(54, 185, 204, .5) -} - -.btn-outline-warning { - color: #f6c23e; - border-color: #f6c23e -} - -.btn-outline-warning:hover { - color: #fff; - background-color: #f6c23e; - border-color: #f6c23e -} - -.btn-outline-warning.focus, -.btn-outline-warning:focus { - box-shadow: 0 0 0 .2rem rgba(246, 194, 62, .5) -} - -.btn-outline-warning.disabled, -.btn-outline-warning:disabled { - color: #f6c23e; - background-color: transparent -} - -.btn-outline-warning:not(:disabled):not(.disabled).active, -.btn-outline-warning:not(:disabled):not(.disabled):active, -.show>.btn-outline-warning.dropdown-toggle { - color: #fff; - background-color: #f6c23e; - border-color: #f6c23e -} - -.btn-outline-warning:not(:disabled):not(.disabled).active:focus, -.btn-outline-warning:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-warning.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(246, 194, 62, .5) -} - -.btn-outline-danger { - color: #e74a3b; - border-color: #e74a3b -} - -.btn-outline-danger:hover { - color: #fff; - background-color: #e74a3b; - border-color: #e74a3b -} - -.btn-outline-danger.focus, -.btn-outline-danger:focus { - box-shadow: 0 0 0 .2rem rgba(231, 74, 59, .5) -} - -.btn-outline-danger.disabled, -.btn-outline-danger:disabled { - color: #e74a3b; - background-color: transparent -} - -.btn-outline-danger:not(:disabled):not(.disabled).active, -.btn-outline-danger:not(:disabled):not(.disabled):active, -.show>.btn-outline-danger.dropdown-toggle { - color: #fff; - background-color: #e74a3b; - border-color: #e74a3b -} - -.btn-outline-danger:not(:disabled):not(.disabled).active:focus, -.btn-outline-danger:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-danger.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(231, 74, 59, .5) -} - -.btn-outline-light { - color: #f8f9fc; - border-color: #f8f9fc -} - -.btn-outline-light:hover { - color: #3a3b45; - background-color: #f8f9fc; - border-color: #f8f9fc -} - -.btn-outline-light.focus, -.btn-outline-light:focus { - box-shadow: 0 0 0 .2rem rgba(248, 249, 252, .5) -} - -.btn-outline-light.disabled, -.btn-outline-light:disabled { - color: #f8f9fc; - background-color: transparent -} - -.btn-outline-light:not(:disabled):not(.disabled).active, -.btn-outline-light:not(:disabled):not(.disabled):active, -.show>.btn-outline-light.dropdown-toggle { - color: #3a3b45; - background-color: #f8f9fc; - border-color: #f8f9fc -} - -.btn-outline-light:not(:disabled):not(.disabled).active:focus, -.btn-outline-light:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-light.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(248, 249, 252, .5) -} - -.btn-outline-dark { - color: #5a5c69; - border-color: #5a5c69 -} - -.btn-outline-dark:hover { - color: #fff; - background-color: #5a5c69; - border-color: #5a5c69 -} - -.btn-outline-dark.focus, -.btn-outline-dark:focus { - box-shadow: 0 0 0 .2rem rgba(90, 92, 105, .5) -} - -.btn-outline-dark.disabled, -.btn-outline-dark:disabled { - color: #5a5c69; - background-color: transparent -} - -.btn-outline-dark:not(:disabled):not(.disabled).active, -.btn-outline-dark:not(:disabled):not(.disabled):active, -.show>.btn-outline-dark.dropdown-toggle { - color: #fff; - background-color: #5a5c69; - border-color: #5a5c69 -} - -.btn-outline-dark:not(:disabled):not(.disabled).active:focus, -.btn-outline-dark:not(:disabled):not(.disabled):active:focus, -.show>.btn-outline-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem rgba(90, 92, 105, .5) -} - -.btn-link { - font-weight: 400; - color: #4e73df; - text-decoration: none -} - -.btn-link:hover { - color: #224abe -} - -.btn-link.focus, -.btn-link:focus, -.btn-link:hover { - text-decoration: underline -} - -.btn-link.disabled, -.btn-link:disabled { - color: #858796; - pointer-events: none -} - -.btn-group-lg>.btn, -.btn-lg { - padding: .5rem 1rem; - font-size: 1.25rem; - line-height: 1.5; - border-radius: .3rem -} - -.btn-group-sm>.btn, -.btn-sm { - padding: .25rem .5rem; - font-size: .875rem; - line-height: 1.5; - border-radius: .2rem -} - -.btn-block { - display: block; - width: 100% -} - -.btn-block+.btn-block { - margin-top: .5rem -} - -input[type=button].btn-block, -input[type=reset].btn-block, -input[type=submit].btn-block { - width: 100% -} - -.fade { - transition: opacity .15s linear -} - -@media (prefers-reduced-motion:reduce) { - .fade { - transition: none - } -} - -.fade:not(.show) { - opacity: 0 -} - -.collapse:not(.show) { - display: none -} - -.collapsing { - position: relative; - height: 0; - overflow: hidden; - transition: height .15s ease -} - -@media (prefers-reduced-motion:reduce) { - .collapsing { - transition: none - } -} - -.dropdown, -.dropleft, -.dropright, -.dropup { - 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 { - position: absolute; - top: 100%; - left: 0; - z-index: 1000; - display: none; - float: left; - min-width: 10rem; - padding: .5rem 0; - margin: .125rem 0 0; - font-size: .85rem; - color: #858796; - text-align: left; - list-style: none; - background-color: #fff; - background-clip: padding-box; - border: 1px solid #e3e6f0; - border-radius: .35rem -} - -.dropdown-menu-left { - right: auto; - left: 0 -} - -.dropdown-menu-right { - right: 0; - left: auto -} - -@media (min-width:576px) { - .dropdown-menu-sm-left { - right: auto; - left: 0 - } - .dropdown-menu-sm-right { - right: 0; - left: auto - } -} - -@media (min-width:768px) { - .dropdown-menu-md-left { - right: auto; - left: 0 - } - .dropdown-menu-md-right { - right: 0; - left: auto - } -} - -@media (min-width:992px) { - .dropdown-menu-lg-left { - right: auto; - left: 0 - } - .dropdown-menu-lg-right { - right: 0; - left: auto - } -} - -@media (min-width:1200px) { - .dropdown-menu-xl-left { - right: auto; - left: 0 - } - .dropdown-menu-xl-right { - right: 0; - left: auto - } -} - -.dropup .dropdown-menu { - top: auto; - bottom: 100%; - margin-top: 0; - margin-bottom: .125rem -} - -.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 -} - -.dropright .dropdown-menu { - top: 0; - right: auto; - left: 100%; - margin-top: 0; - margin-left: .125rem -} - -.dropright .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 -} - -.dropright .dropdown-toggle:empty:after { - margin-left: 0 -} - -.dropright .dropdown-toggle:after { - vertical-align: 0 -} - -.dropleft .dropdown-menu { - top: 0; - right: 100%; - left: auto; - margin-top: 0; - margin-right: .125rem -} - -.dropleft .dropdown-toggle:after { - display: inline-block; - margin-left: .255em; - vertical-align: .255em; - content: ""; - display: none -} - -.dropleft .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 -} - -.dropleft .dropdown-toggle:empty:after { - margin-left: 0 -} - -.dropleft .dropdown-toggle:before { - vertical-align: 0 -} - -.dropdown-menu[x-placement^=bottom], -.dropdown-menu[x-placement^=left], -.dropdown-menu[x-placement^=right], -.dropdown-menu[x-placement^=top] { - right: auto; - bottom: auto -} - -.dropdown-divider { - height: 0; - margin: .5rem 0; - overflow: hidden; - border-top: 1px solid #eaecf4 -} - -.dropdown-item { - display: block; - width: 100%; - padding: .25rem 1.5rem; - clear: both; - font-weight: 400; - color: #3a3b45; - text-align: inherit; - white-space: nowrap; - background-color: transparent; - border: 0 -} - -.dropdown-item:focus, -.dropdown-item:hover { - color: #2e2f37; - text-decoration: none; - background-color: #eaecf4 -} - -.dropdown-item.active, -.dropdown-item:active { - color: #fff; - text-decoration: none; - background-color: #4e73df -} - -.dropdown-item.disabled, -.dropdown-item:disabled { - color: #b7b9cc; - pointer-events: none; - background-color: transparent -} - -.dropdown-menu.show { - display: block -} - -.dropdown-header { - display: block; - padding: .5rem 1.5rem; - margin-bottom: 0; - font-size: .875rem; - color: #858796; - white-space: nowrap -} - -.dropdown-item-text { - display: block; - padding: .25rem 1.5rem; - color: #3a3b45 -} - -.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.active, -.btn-group-vertical>.btn:active, -.btn-group-vertical>.btn:focus, -.btn-group-vertical>.btn:hover, -.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>.btn-group:not(:first-child), -.btn-group>.btn:not(:first-child) { - margin-left: -1px -} - -.btn-group>.btn-group:not(:last-child)>.btn, -.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:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0 -} - -.dropdown-toggle-split { - padding-right: .5625rem; - padding-left: .5625rem -} - -.dropdown-toggle-split:after, -.dropright .dropdown-toggle-split:after, -.dropup .dropdown-toggle-split:after { - margin-left: 0 -} - -.dropleft .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:not(:first-child) { - border-top-left-radius: 0; - border-top-right-radius: 0 -} - -.btn-group-toggle>.btn, -.btn-group-toggle>.btn-group>.btn { - margin-bottom: 0 -} - -.btn-group-toggle>.btn-group>.btn input[type=checkbox], -.btn-group-toggle>.btn-group>.btn input[type=radio], -.btn-group-toggle>.btn input[type=checkbox], -.btn-group-toggle>.btn input[type=radio] { - position: absolute; - clip: rect(0, 0, 0, 0); - pointer-events: none -} - -.input-group { - position: relative; - display: flex; - flex-wrap: wrap; - align-items: stretch; - width: 100% -} - -.input-group>.custom-file, -.input-group>.custom-select, -.input-group>.form-control, -.input-group>.form-control-plaintext { - position: relative; - flex: 1 1 auto; - width: 1%; - min-width: 0; - margin-bottom: 0 -} - -.input-group>.custom-file+.custom-file, -.input-group>.custom-file+.custom-select, -.input-group>.custom-file+.form-control, -.input-group>.custom-select+.custom-file, -.input-group>.custom-select+.custom-select, -.input-group>.custom-select+.form-control, -.input-group>.form-control+.custom-file, -.input-group>.form-control+.custom-select, -.input-group>.form-control+.form-control, -.input-group>.form-control-plaintext+.custom-file, -.input-group>.form-control-plaintext+.custom-select, -.input-group>.form-control-plaintext+.form-control { - margin-left: -1px -} - -.input-group>.custom-file .custom-file-input:focus~.custom-file-label, -.input-group>.custom-select:focus, -.input-group>.form-control:focus { - z-index: 3 -} - -.input-group>.custom-file .custom-file-input:focus { - z-index: 4 -} - -.input-group>.custom-select:not(:first-child), -.input-group>.form-control:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0 -} - -.input-group>.custom-file { - display: flex; - align-items: center -} - -.input-group>.custom-file:not(:last-child) .custom-file-label, -.input-group>.custom-file:not(:last-child) .custom-file-label:after { - border-top-right-radius: 0; - border-bottom-right-radius: 0 -} - -.input-group>.custom-file:not(:first-child) .custom-file-label { - border-top-left-radius: 0; - border-bottom-left-radius: 0 -} - -.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label, -.input-group.has-validation>.custom-file:nth-last-child(n+3) .custom-file-label:after, -.input-group.has-validation>.custom-select:nth-last-child(n+3), -.input-group.has-validation>.form-control:nth-last-child(n+3), -.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label, -.input-group:not(.has-validation)>.custom-file:not(:last-child) .custom-file-label:after, -.input-group:not(.has-validation)>.custom-select:not(:last-child), -.input-group:not(.has-validation)>.form-control:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0 -} - -.input-group-append, -.input-group-prepend { - display: flex -} - -.input-group-append .btn, -.input-group-prepend .btn { - position: relative; - z-index: 2 -} - -.input-group-append .btn:focus, -.input-group-prepend .btn:focus { - z-index: 3 -} - -.input-group-append .btn+.btn, -.input-group-append .btn+.input-group-text, -.input-group-append .input-group-text+.btn, -.input-group-append .input-group-text+.input-group-text, -.input-group-prepend .btn+.btn, -.input-group-prepend .btn+.input-group-text, -.input-group-prepend .input-group-text+.btn, -.input-group-prepend .input-group-text+.input-group-text { - margin-left: -1px -} - -.input-group-prepend { - margin-right: -1px -} - -.input-group-append { - margin-left: -1px -} - -.input-group-text { - display: flex; - align-items: center; - padding: .375rem .75rem; - margin-bottom: 0; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #6e707e; - text-align: center; - white-space: nowrap; - background-color: #eaecf4; - border: 1px solid #d1d3e2; - border-radius: .35rem -} - -.input-group-text input[type=checkbox], -.input-group-text input[type=radio] { - margin-top: 0 -} - -.input-group-lg>.custom-select, -.input-group-lg>.form-control:not(textarea) { - height: calc(1.5em + 1rem + 2px) -} - -.input-group-lg>.custom-select, -.input-group-lg>.form-control, -.input-group-lg>.input-group-append>.btn, -.input-group-lg>.input-group-append>.input-group-text, -.input-group-lg>.input-group-prepend>.btn, -.input-group-lg>.input-group-prepend>.input-group-text { - padding: .5rem 1rem; - font-size: 1.25rem; - line-height: 1.5; - border-radius: .3rem -} - -.input-group-sm>.custom-select, -.input-group-sm>.form-control:not(textarea) { - height: calc(1.5em + .5rem + 2px) -} - -.input-group-sm>.custom-select, -.input-group-sm>.form-control, -.input-group-sm>.input-group-append>.btn, -.input-group-sm>.input-group-append>.input-group-text, -.input-group-sm>.input-group-prepend>.btn, -.input-group-sm>.input-group-prepend>.input-group-text { - padding: .25rem .5rem; - font-size: .875rem; - line-height: 1.5; - border-radius: .2rem -} - -.input-group-lg>.custom-select, -.input-group-sm>.custom-select { - padding-right: 1.75rem -} - -.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.btn, -.input-group.has-validation>.input-group-append:nth-last-child(n+3)>.input-group-text, -.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.btn, -.input-group:not(.has-validation)>.input-group-append:not(:last-child)>.input-group-text, -.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle), -.input-group>.input-group-append:last-child>.input-group-text:not(:last-child), -.input-group>.input-group-prepend>.btn, -.input-group>.input-group-prepend>.input-group-text { - border-top-right-radius: 0; - border-bottom-right-radius: 0 -} - -.input-group>.input-group-append>.btn, -.input-group>.input-group-append>.input-group-text, -.input-group>.input-group-prepend:first-child>.btn:not(:first-child), -.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child), -.input-group>.input-group-prepend:not(:first-child)>.btn, -.input-group>.input-group-prepend:not(:first-child)>.input-group-text { - border-top-left-radius: 0; - border-bottom-left-radius: 0 -} - -.custom-control { - position: relative; - z-index: 1; - display: block; - min-height: 1.5rem; - padding-left: 1.5rem; - -webkit-print-color-adjust: exact; - color-adjust: exact -} - -.custom-control-inline { - display: inline-flex; - margin-right: 1rem -} - -.custom-control-input { - position: absolute; - left: 0; - z-index: -1; - width: 1rem; - height: 1.25rem; - opacity: 0 -} - -.custom-control-input:checked~.custom-control-label:before { - color: #fff; - border-color: #4e73df; - background-color: #4e73df -} - -.custom-control-input:focus~.custom-control-label:before { - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.custom-control-input:focus:not(:checked)~.custom-control-label:before { - border-color: #bac8f3 -} - -.custom-control-input:not(:disabled):active~.custom-control-label:before { - color: #fff; - background-color: #e5ebfa; - border-color: #e5ebfa -} - -.custom-control-input:disabled~.custom-control-label, -.custom-control-input[disabled]~.custom-control-label { - color: #858796 -} - -.custom-control-input:disabled~.custom-control-label:before, -.custom-control-input[disabled]~.custom-control-label:before { - background-color: #eaecf4 -} - -.custom-control-label { - position: relative; - margin-bottom: 0; - vertical-align: top -} - -.custom-control-label:before { - pointer-events: none; - background-color: #fff; - border: 1px solid #b7b9cc -} - -.custom-control-label:after, -.custom-control-label:before { - position: absolute; - top: .25rem; - left: -1.5rem; - display: block; - width: 1rem; - height: 1rem; - content: "" -} - -.custom-control-label:after { - background: 50%/50% 50% no-repeat -} - -.custom-checkbox .custom-control-label:before { - border-radius: .35rem -} - -.custom-checkbox .custom-control-input:checked~.custom-control-label:after { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3E%3C/svg%3E") -} - -.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before { - border-color: #4e73df; - background-color: #4e73df -} - -.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%23fff' d='M0 2h4'/%3E%3C/svg%3E") -} - -.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before { - background-color: rgba(78, 115, 223, .5) -} - -.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before { - background-color: rgba(78, 115, 223, .5) -} - -.custom-radio .custom-control-label:before { - border-radius: 50% -} - -.custom-radio .custom-control-input:checked~.custom-control-label:after { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='%23fff'/%3E%3C/svg%3E") -} - -.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before { - background-color: rgba(78, 115, 223, .5) -} - -.custom-switch { - padding-left: 2.25rem -} - -.custom-switch .custom-control-label:before { - left: -2.25rem; - width: 1.75rem; - pointer-events: all; - border-radius: .5rem -} - -.custom-switch .custom-control-label:after { - top: calc(.25rem + 2px); - left: calc(-2.25rem + 2px); - width: calc(1rem - 4px); - height: calc(1rem - 4px); - background-color: #b7b9cc; - border-radius: .5rem; - transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-transform .15s ease-in-out; - transition: transform .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; - transition: transform .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, -webkit-transform .15s ease-in-out -} - -@media (prefers-reduced-motion:reduce) { - .custom-switch .custom-control-label:after { - transition: none - } -} - -.custom-switch .custom-control-input:checked~.custom-control-label:after { - background-color: #fff; - -webkit-transform: translateX(.75rem); - transform: translateX(.75rem) -} - -.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before { - background-color: rgba(78, 115, 223, .5) -} - -.custom-select { - display: inline-block; - width: 100%; - height: calc(1.5em + .75rem + 2px); - padding: .375rem 1.75rem .375rem .75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.5; - color: #6e707e; - vertical-align: middle; - background: #fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%235a5c69' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E") right .75rem center/8px 10px no-repeat; - border: 1px solid #d1d3e2; - border-radius: .35rem; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none -} - -.custom-select:focus { - border-color: #bac8f3; - outline: 0; - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.custom-select:focus::-ms-value { - color: #6e707e; - background-color: #fff -} - -.custom-select[multiple], -.custom-select[size]:not([size="1"]) { - height: auto; - padding-right: .75rem; - background-image: none -} - -.custom-select:disabled { - color: #858796; - background-color: #eaecf4 -} - -.custom-select::-ms-expand { - display: none -} - -.custom-select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #6e707e -} - -.custom-select-sm { - height: calc(1.5em + .5rem + 2px); - padding-top: .25rem; - padding-bottom: .25rem; - padding-left: .5rem; - font-size: .875rem -} - -.custom-select-lg { - height: calc(1.5em + 1rem + 2px); - padding-top: .5rem; - padding-bottom: .5rem; - padding-left: 1rem; - font-size: 1.25rem -} - -.custom-file { - display: inline-block; - margin-bottom: 0 -} - -.custom-file, -.custom-file-input { - position: relative; - width: 100%; - height: calc(1.5em + .75rem + 2px) -} - -.custom-file-input { - z-index: 2; - margin: 0; - overflow: hidden; - opacity: 0 -} - -.custom-file-input:focus~.custom-file-label { - border-color: #bac8f3; - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.custom-file-input:disabled~.custom-file-label, -.custom-file-input[disabled]~.custom-file-label { - background-color: #eaecf4 -} - -.custom-file-input:lang(en)~.custom-file-label:after { - content: "Browse" -} - -.custom-file-input~.custom-file-label[data-browse]:after { - content: attr(data-browse) -} - -.custom-file-label { - left: 0; - z-index: 1; - height: calc(1.5em + .75rem + 2px); - overflow: hidden; - font-weight: 400; - background-color: #fff; - border: 1px solid #d1d3e2; - border-radius: .35rem -} - -.custom-file-label, -.custom-file-label:after { - position: absolute; - top: 0; - right: 0; - padding: .375rem .75rem; - line-height: 1.5; - color: #6e707e -} - -.custom-file-label:after { - bottom: 0; - z-index: 3; - display: block; - height: calc(1.5em + .75rem); - content: "Browse"; - background-color: #eaecf4; - border-left: inherit; - border-radius: 0 .35rem .35rem 0 -} - -.custom-range { - width: 100%; - height: 1.4rem; - padding: 0; - background-color: transparent; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none -} - -.custom-range:focus { - outline: 0 -} - -.custom-range:focus::-webkit-slider-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.custom-range:focus::-moz-range-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.custom-range:focus::-ms-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.custom-range::-moz-focus-outer { - border: 0 -} - -.custom-range::-webkit-slider-thumb { - width: 1rem; - height: 1rem; - margin-top: -.25rem; - background-color: #4e73df; - border: 0; - border-radius: 1rem; - 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) { - .custom-range::-webkit-slider-thumb { - transition: none - } -} - -.custom-range::-webkit-slider-thumb:active { - background-color: #e5ebfa -} - -.custom-range::-webkit-slider-runnable-track { - width: 100%; - height: .5rem; - color: transparent; - cursor: pointer; - background-color: #dddfeb; - border-color: transparent; - border-radius: 1rem -} - -.custom-range::-moz-range-thumb { - width: 1rem; - height: 1rem; - background-color: #4e73df; - border: 0; - border-radius: 1rem; - 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) { - .custom-range::-moz-range-thumb { - transition: none - } -} - -.custom-range::-moz-range-thumb:active { - background-color: #e5ebfa -} - -.custom-range::-moz-range-track { - width: 100%; - height: .5rem; - color: transparent; - cursor: pointer; - background-color: #dddfeb; - border-color: transparent; - border-radius: 1rem -} - -.custom-range::-ms-thumb { - width: 1rem; - height: 1rem; - margin-top: 0; - margin-right: .2rem; - margin-left: .2rem; - background-color: #4e73df; - border: 0; - border-radius: 1rem; - transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; - appearance: none -} - -@media (prefers-reduced-motion:reduce) { - .custom-range::-ms-thumb { - transition: none - } -} - -.custom-range::-ms-thumb:active { - background-color: #e5ebfa -} - -.custom-range::-ms-track { - width: 100%; - height: .5rem; - color: transparent; - cursor: pointer; - background-color: transparent; - border-color: transparent; - border-width: .5rem -} - -.custom-range::-ms-fill-lower, -.custom-range::-ms-fill-upper { - background-color: #dddfeb; - border-radius: 1rem -} - -.custom-range::-ms-fill-upper { - margin-right: 15px -} - -.custom-range:disabled::-webkit-slider-thumb { - background-color: #b7b9cc -} - -.custom-range:disabled::-webkit-slider-runnable-track { - cursor: default -} - -.custom-range:disabled::-moz-range-thumb { - background-color: #b7b9cc -} - -.custom-range:disabled::-moz-range-track { - cursor: default -} - -.custom-range:disabled::-ms-thumb { - background-color: #b7b9cc -} - -.custom-control-label:before, -.custom-file-label, -.custom-select { - transition: background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out -} - -@media (prefers-reduced-motion:reduce) { - .custom-control-label:before, - .custom-file-label, - .custom-select { - transition: none - } -} - -.nav { - display: flex; - flex-wrap: wrap; - padding-left: 0; - margin-bottom: 0; - list-style: none -} - -.nav-link { - display: block; - padding: .5rem 1rem -} - -.nav-link:focus, -.nav-link:hover { - text-decoration: none -} - -.nav-link.disabled { - color: #858796; - pointer-events: none; - cursor: default -} - -.nav-tabs { - border-bottom: 1px solid #dddfeb -} - -.nav-tabs .nav-link { - margin-bottom: -1px; - border: 1px solid transparent; - border-top-left-radius: .35rem; - border-top-right-radius: .35rem -} - -.nav-tabs .nav-link:focus, -.nav-tabs .nav-link:hover { - border-color: #eaecf4 #eaecf4 #dddfeb -} - -.nav-tabs .nav-link.disabled { - color: #858796; - background-color: transparent; - border-color: transparent -} - -.nav-tabs .nav-item.show .nav-link, -.nav-tabs .nav-link.active { - color: #6e707e; - background-color: #fff; - border-color: #dddfeb #dddfeb #fff -} - -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-left-radius: 0; - border-top-right-radius: 0 -} - -.nav-pills .nav-link { - border-radius: .35rem -} - -.nav-pills .nav-link.active, -.nav-pills .show>.nav-link { - color: #fff; - background-color: #4e73df -} - -.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 -} - -.tab-content>.tab-pane { - display: none -} - -.tab-content>.active { - display: block -} - -.navbar { - position: relative; - padding: .5rem 1rem -} - -.navbar, -.navbar .container, -.navbar .container-fluid, -.navbar .container-lg, -.navbar .container-md, -.navbar .container-sm, -.navbar .container-xl { - display: flex; - flex-wrap: wrap; - align-items: center; - justify-content: space-between -} - -.navbar-brand { - display: inline-block; - padding-top: .3125rem; - padding-bottom: .3125rem; - margin-right: 1rem; - font-size: 1.25rem; - line-height: inherit; - white-space: nowrap -} - -.navbar-brand:focus, -.navbar-brand:hover { - text-decoration: none -} - -.navbar-nav { - display: flex; - flex-direction: column; - padding-left: 0; - margin-bottom: 0; - list-style: none -} - -.navbar-nav .nav-link { - padding-right: 0; - padding-left: 0 -} - -.navbar-nav .dropdown-menu { - position: static; - float: none -} - -.navbar-text { - display: inline-block; - padding-top: .5rem; - padding-bottom: .5rem -} - -.navbar-collapse { - flex-basis: 100%; - flex-grow: 1; - align-items: center -} - -.navbar-toggler { - padding: .25rem .75rem; - font-size: 1.25rem; - line-height: 1; - background-color: transparent; - border: 1px solid transparent; - border-radius: .35rem -} - -.navbar-toggler:focus, -.navbar-toggler:hover { - text-decoration: none -} - -.navbar-toggler-icon { - display: inline-block; - width: 1.5em; - height: 1.5em; - vertical-align: middle; - content: ""; - background: 50%/100% 100% no-repeat -} - -.navbar-nav-scroll { - max-height: 75vh; - overflow-y: auto -} - -@media (max-width:575.98px) { - .navbar-expand-sm>.container, - .navbar-expand-sm>.container-fluid, - .navbar-expand-sm>.container-lg, - .navbar-expand-sm>.container-md, - .navbar-expand-sm>.container-sm, - .navbar-expand-sm>.container-xl { - padding-right: 0; - padding-left: 0 - } -} - -@media (min-width:576px) { - .navbar-expand-sm { - flex-flow: row nowrap; - justify-content: flex-start - } - .navbar-expand-sm .navbar-nav { - flex-direction: row - } - .navbar-expand-sm .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-sm .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-sm>.container, - .navbar-expand-sm>.container-fluid, - .navbar-expand-sm>.container-lg, - .navbar-expand-sm>.container-md, - .navbar-expand-sm>.container-sm, - .navbar-expand-sm>.container-xl { - flex-wrap: nowrap - } - .navbar-expand-sm .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-sm .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-sm .navbar-toggler { - display: none - } -} - -@media (max-width:767.98px) { - .navbar-expand-md>.container, - .navbar-expand-md>.container-fluid, - .navbar-expand-md>.container-lg, - .navbar-expand-md>.container-md, - .navbar-expand-md>.container-sm, - .navbar-expand-md>.container-xl { - padding-right: 0; - padding-left: 0 - } -} - -@media (min-width:768px) { - .navbar-expand-md { - flex-flow: row nowrap; - justify-content: flex-start - } - .navbar-expand-md .navbar-nav { - flex-direction: row - } - .navbar-expand-md .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-md .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-md>.container, - .navbar-expand-md>.container-fluid, - .navbar-expand-md>.container-lg, - .navbar-expand-md>.container-md, - .navbar-expand-md>.container-sm, - .navbar-expand-md>.container-xl { - flex-wrap: nowrap - } - .navbar-expand-md .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-md .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-md .navbar-toggler { - display: none - } -} - -@media (max-width:991.98px) { - .navbar-expand-lg>.container, - .navbar-expand-lg>.container-fluid, - .navbar-expand-lg>.container-lg, - .navbar-expand-lg>.container-md, - .navbar-expand-lg>.container-sm, - .navbar-expand-lg>.container-xl { - padding-right: 0; - padding-left: 0 - } -} - -@media (min-width:992px) { - .navbar-expand-lg { - flex-flow: row nowrap; - justify-content: flex-start - } - .navbar-expand-lg .navbar-nav { - flex-direction: row - } - .navbar-expand-lg .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-lg .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-lg>.container, - .navbar-expand-lg>.container-fluid, - .navbar-expand-lg>.container-lg, - .navbar-expand-lg>.container-md, - .navbar-expand-lg>.container-sm, - .navbar-expand-lg>.container-xl { - flex-wrap: nowrap - } - .navbar-expand-lg .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-lg .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-lg .navbar-toggler { - display: none - } -} - -@media (max-width:1199.98px) { - .navbar-expand-xl>.container, - .navbar-expand-xl>.container-fluid, - .navbar-expand-xl>.container-lg, - .navbar-expand-xl>.container-md, - .navbar-expand-xl>.container-sm, - .navbar-expand-xl>.container-xl { - padding-right: 0; - padding-left: 0 - } -} - -@media (min-width:1200px) { - .navbar-expand-xl { - flex-flow: row nowrap; - justify-content: flex-start - } - .navbar-expand-xl .navbar-nav { - flex-direction: row - } - .navbar-expand-xl .navbar-nav .dropdown-menu { - position: absolute - } - .navbar-expand-xl .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem - } - .navbar-expand-xl>.container, - .navbar-expand-xl>.container-fluid, - .navbar-expand-xl>.container-lg, - .navbar-expand-xl>.container-md, - .navbar-expand-xl>.container-sm, - .navbar-expand-xl>.container-xl { - flex-wrap: nowrap - } - .navbar-expand-xl .navbar-nav-scroll { - overflow: visible - } - .navbar-expand-xl .navbar-collapse { - display: flex!important; - flex-basis: auto - } - .navbar-expand-xl .navbar-toggler { - display: none - } -} - -.navbar-expand { - flex-flow: row nowrap; - justify-content: flex-start -} - -.navbar-expand>.container, -.navbar-expand>.container-fluid, -.navbar-expand>.container-lg, -.navbar-expand>.container-md, -.navbar-expand>.container-sm, -.navbar-expand>.container-xl { - padding-right: 0; - padding-left: 0 -} - -.navbar-expand .navbar-nav { - flex-direction: row -} - -.navbar-expand .navbar-nav .dropdown-menu { - position: absolute -} - -.navbar-expand .navbar-nav .nav-link { - padding-right: .5rem; - padding-left: .5rem -} - -.navbar-expand>.container, -.navbar-expand>.container-fluid, -.navbar-expand>.container-lg, -.navbar-expand>.container-md, -.navbar-expand>.container-sm, -.navbar-expand>.container-xl { - flex-wrap: nowrap -} - -.navbar-expand .navbar-nav-scroll { - overflow: visible -} - -.navbar-expand .navbar-collapse { - display: flex!important; - flex-basis: auto -} - -.navbar-expand .navbar-toggler { - display: none -} - -.navbar-light .navbar-brand, -.navbar-light .navbar-brand:focus, -.navbar-light .navbar-brand:hover { - color: rgba(0, 0, 0, .9) -} - -.navbar-light .navbar-nav .nav-link { - color: rgba(0, 0, 0, .5) -} - -.navbar-light .navbar-nav .nav-link:focus, -.navbar-light .navbar-nav .nav-link:hover { - color: rgba(0, 0, 0, .7) -} - -.navbar-light .navbar-nav .nav-link.disabled { - color: rgba(0, 0, 0, .3) -} - -.navbar-light .navbar-nav .active>.nav-link, -.navbar-light .navbar-nav .nav-link.active, -.navbar-light .navbar-nav .nav-link.show, -.navbar-light .navbar-nav .show>.nav-link { - color: rgba(0, 0, 0, .9) -} - -.navbar-light .navbar-toggler { - color: rgba(0, 0, 0, .5); - border-color: rgba(0, 0, 0, .1) -} - -.navbar-light .navbar-toggler-icon { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(0, 0, 0, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") -} - -.navbar-light .navbar-text { - color: rgba(0, 0, 0, .5) -} - -.navbar-light .navbar-text a, -.navbar-light .navbar-text a:focus, -.navbar-light .navbar-text a:hover { - color: rgba(0, 0, 0, .9) -} - -.navbar-dark .navbar-brand, -.navbar-dark .navbar-brand:focus, -.navbar-dark .navbar-brand:hover { - color: #fff -} - -.navbar-dark .navbar-nav .nav-link { - color: hsla(0, 0%, 100%, .5) -} - -.navbar-dark .navbar-nav .nav-link:focus, -.navbar-dark .navbar-nav .nav-link:hover { - color: hsla(0, 0%, 100%, .75) -} - -.navbar-dark .navbar-nav .nav-link.disabled { - color: hsla(0, 0%, 100%, .25) -} - -.navbar-dark .navbar-nav .active>.nav-link, -.navbar-dark .navbar-nav .nav-link.active, -.navbar-dark .navbar-nav .nav-link.show, -.navbar-dark .navbar-nav .show>.nav-link { - color: #fff -} - -.navbar-dark .navbar-toggler { - color: hsla(0, 0%, 100%, .5); - border-color: hsla(0, 0%, 100%, .1) -} - -.navbar-dark .navbar-toggler-icon { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") -} - -.navbar-dark .navbar-text { - color: hsla(0, 0%, 100%, .5) -} - -.navbar-dark .navbar-text a, -.navbar-dark .navbar-text a:focus, -.navbar-dark .navbar-text a:hover { - color: #fff -} - -.card { - position: relative; - display: flex; - flex-direction: column; - min-width: 0; - word-wrap: break-word; - background-color: #fff; - background-clip: border-box; - border: 1px solid #e3e6f0; - border-radius: .35rem -} - -.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: calc(.35rem - 1px); - border-top-right-radius: calc(.35rem - 1px) -} - -.card>.list-group:last-child { - border-bottom-width: 0; - border-bottom-right-radius: calc(.35rem - 1px); - border-bottom-left-radius: calc(.35rem - 1px) -} - -.card>.card-header+.list-group, -.card>.list-group+.card-footer { - border-top: 0 -} - -.card-body { - flex: 1 1 auto; - min-height: 1px; - padding: 1.25rem -} - -.card-title { - margin-bottom: .75rem -} - -.card-subtitle { - margin-top: -.375rem -} - -.card-subtitle, -.card-text:last-child { - margin-bottom: 0 -} - -.card-link:hover { - text-decoration: none -} - -.card-link+.card-link { - margin-left: 1.25rem -} - -.card-header { - padding: .75rem 1.25rem; - margin-bottom: 0; - background-color: #f8f9fc; - border-bottom: 1px solid #e3e6f0 -} - -.card-header:first-child { - border-radius: calc(.35rem - 1px) calc(.35rem - 1px) 0 0 -} - -.card-footer { - padding: .75rem 1.25rem; - background-color: #f8f9fc; - border-top: 1px solid #e3e6f0 -} - -.card-footer:last-child { - border-radius: 0 0 calc(.35rem - 1px) calc(.35rem - 1px) -} - -.card-header-tabs { - margin-bottom: -.75rem; - border-bottom: 0 -} - -.card-header-pills, -.card-header-tabs { - margin-right: -.625rem; - margin-left: -.625rem -} - -.card-img-overlay { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - padding: 1.25rem; - border-radius: calc(.35rem - 1px) -} - -.card-img, -.card-img-bottom, -.card-img-top { - flex-shrink: 0; - width: 100% -} - -.card-img, -.card-img-top { - border-top-left-radius: calc(.35rem - 1px); - border-top-right-radius: calc(.35rem - 1px) -} - -.card-img, -.card-img-bottom { - border-bottom-right-radius: calc(.35rem - 1px); - border-bottom-left-radius: calc(.35rem - 1px) -} - -.card-deck .card { - margin-bottom: .75rem -} - -@media (min-width:576px) { - .card-deck { - display: flex; - flex-flow: row wrap; - margin-right: -.75rem; - margin-left: -.75rem - } - .card-deck .card { - flex: 1 0 0%; - margin-right: .75rem; - margin-bottom: 0; - margin-left: .75rem - } -} - -.card-group>.card { - margin-bottom: .75rem -} - -@media (min-width:576px) { - .card-group { - display: flex; - flex-flow: row wrap - } - .card-group>.card { - flex: 1 0 0%; - margin-bottom: 0 - } - .card-group>.card+.card { - margin-left: 0; - border-left: 0 - } - .card-group>.card:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0 - } - .card-group>.card:not(:last-child) .card-header, - .card-group>.card:not(:last-child) .card-img-top { - border-top-right-radius: 0 - } - .card-group>.card:not(:last-child) .card-footer, - .card-group>.card:not(:last-child) .card-img-bottom { - border-bottom-right-radius: 0 - } - .card-group>.card:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0 - } - .card-group>.card:not(:first-child) .card-header, - .card-group>.card:not(:first-child) .card-img-top { - border-top-left-radius: 0 - } - .card-group>.card:not(:first-child) .card-footer, - .card-group>.card:not(:first-child) .card-img-bottom { - border-bottom-left-radius: 0 - } -} - -.card-columns .card { - margin-bottom: .75rem -} - -@media (min-width:576px) { - .card-columns { - -webkit-column-count: 3; - -moz-column-count: 3; - column-count: 3; - -webkit-column-gap: 1.25rem; - -moz-column-gap: 1.25rem; - column-gap: 1.25rem; - orphans: 1; - widows: 1 - } - .card-columns .card { - display: inline-block; - width: 100% - } -} - -.accordion { - overflow-anchor: none -} - -.accordion>.card { - overflow: hidden -} - -.accordion>.card:not(:last-of-type) { - border-bottom: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0 -} - -.accordion>.card:not(:first-of-type) { - border-top-left-radius: 0; - border-top-right-radius: 0 -} - -.accordion>.card>.card-header { - border-radius: 0; - margin-bottom: -1px -} - -.breadcrumb { - display: flex; - flex-wrap: wrap; - padding: .75rem 1rem; - margin-bottom: 1rem; - list-style: none; - background-color: #eaecf4; - border-radius: .35rem -} - -.breadcrumb-item+.breadcrumb-item { - padding-left: .5rem -} - -.breadcrumb-item+.breadcrumb-item:before { - float: left; - padding-right: .5rem; - color: #858796; - content: "/" -} - -.breadcrumb-item+.breadcrumb-item:hover:before { - text-decoration: underline; - text-decoration: none -} - -.breadcrumb-item.active { - color: #858796 -} - -.pagination { - display: flex; - padding-left: 0; - list-style: none; - border-radius: .35rem -} - -.page-link { - position: relative; - display: block; - padding: .5rem .75rem; - margin-left: -1px; - line-height: 1.25; - color: #4e73df; - background-color: #fff; - border: 1px solid #dddfeb -} - -.page-link:hover { - z-index: 2; - color: #224abe; - text-decoration: none; - background-color: #eaecf4; - border-color: #dddfeb -} - -.page-link:focus { - z-index: 3; - outline: 0; - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .25) -} - -.page-item:first-child .page-link { - margin-left: 0; - border-top-left-radius: .35rem; - border-bottom-left-radius: .35rem -} - -.page-item:last-child .page-link { - border-top-right-radius: .35rem; - border-bottom-right-radius: .35rem -} - -.page-item.active .page-link { - z-index: 3; - color: #fff; - background-color: #4e73df; - border-color: #4e73df -} - -.page-item.disabled .page-link { - color: #858796; - pointer-events: none; - cursor: auto; - background-color: #fff; - border-color: #dddfeb -} - -.pagination-lg .page-link { - padding: .75rem 1.5rem; - font-size: 1.25rem; - line-height: 1.5 -} - -.pagination-lg .page-item:first-child .page-link { - border-top-left-radius: .3rem; - border-bottom-left-radius: .3rem -} - -.pagination-lg .page-item:last-child .page-link { - border-top-right-radius: .3rem; - border-bottom-right-radius: .3rem -} - -.pagination-sm .page-link { - padding: .25rem .5rem; - font-size: .875rem; - line-height: 1.5 -} - -.pagination-sm .page-item:first-child .page-link { - border-top-left-radius: .2rem; - border-bottom-left-radius: .2rem -} - -.pagination-sm .page-item:last-child .page-link { - border-top-right-radius: .2rem; - border-bottom-right-radius: .2rem -} - -.badge { - display: inline-block; - padding: .25em .4em; - font-size: 75%; - font-weight: 700; - line-height: 1; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: .35rem; - 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) { - .badge { - transition: none - } -} - -a.badge:focus, -a.badge:hover { - text-decoration: none -} - -.badge:empty { - display: none -} - -.btn .badge { - position: relative; - top: -1px -} - -.badge-pill { - padding-right: .6em; - padding-left: .6em; - border-radius: 10rem -} - -.badge-primary { - color: #fff; - background-color: #4e73df -} - -a.badge-primary:focus, -a.badge-primary:hover { - color: #fff; - background-color: #2653d4 -} - -a.badge-primary.focus, -a.badge-primary:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(78, 115, 223, .5) -} - -.badge-secondary { - color: #fff; - background-color: #858796 -} - -a.badge-secondary:focus, -a.badge-secondary:hover { - color: #fff; - background-color: #6b6d7d -} - -a.badge-secondary.focus, -a.badge-secondary:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(133, 135, 150, .5) -} - -.badge-success { - color: #fff; - background-color: #1cc88a -} - -a.badge-success:focus, -a.badge-success:hover { - color: #fff; - background-color: #169b6b -} - -a.badge-success.focus, -a.badge-success:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(28, 200, 138, .5) -} - -.badge-info { - color: #fff; - background-color: #36b9cc -} - -a.badge-info:focus, -a.badge-info:hover { - color: #fff; - background-color: #2a96a5 -} - -a.badge-info.focus, -a.badge-info:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(54, 185, 204, .5) -} - -.badge-warning { - color: #fff; - background-color: #f6c23e -} - -a.badge-warning:focus, -a.badge-warning:hover { - color: #fff; - background-color: #f4b30d -} - -a.badge-warning.focus, -a.badge-warning:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(246, 194, 62, .5) -} - -.badge-danger { - color: #fff; - background-color: #e74a3b -} - -a.badge-danger:focus, -a.badge-danger:hover { - color: #fff; - background-color: #d52a1a -} - -a.badge-danger.focus, -a.badge-danger:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(231, 74, 59, .5) -} - -.badge-light { - color: #3a3b45; - background-color: #f8f9fc -} - -a.badge-light:focus, -a.badge-light:hover { - color: #3a3b45; - background-color: #d4daed -} - -a.badge-light.focus, -a.badge-light:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(248, 249, 252, .5) -} - -.badge-dark { - color: #fff; - background-color: #5a5c69 -} - -a.badge-dark:focus, -a.badge-dark:hover { - color: #fff; - background-color: #42444e -} - -a.badge-dark.focus, -a.badge-dark:focus { - outline: 0; - box-shadow: 0 0 0 .2rem rgba(90, 92, 105, .5) -} - -.jumbotron { - padding: 2rem 1rem; - margin-bottom: 2rem; - background-color: #eaecf4; - border-radius: .3rem -} - -@media (min-width:576px) { - .jumbotron { - padding: 4rem 2rem - } -} - -.jumbotron-fluid { - padding-right: 0; - padding-left: 0; - border-radius: 0 -} - -.alert { - position: relative; - padding: .75rem 1.25rem; - margin-bottom: 1rem; - border: 1px solid transparent; - border-radius: .35rem -} - -.alert-heading { - color: inherit -} - -.alert-link { - font-weight: 700 -} - -.alert-dismissible { - padding-right: 4rem -} - -.alert-dismissible .close { - position: absolute; - top: 0; - right: 0; - z-index: 2; - padding: .75rem 1.25rem; - color: inherit -} - -.alert-primary { - color: #293c74; - background-color: #dce3f9; - border-color: #cdd8f6 -} - -.alert-primary hr { - border-top-color: #b7c7f2 -} - -.alert-primary .alert-link { - color: #1c294e -} - -.alert-secondary { - color: #45464e; - background-color: #e7e7ea; - border-color: #dddde2 -} - -.alert-secondary hr { - border-top-color: #cfcfd6 -} - -.alert-secondary .alert-link { - color: #2d2e33 -} - -.alert-success { - color: #0f6848; - background-color: #d2f4e8; - border-color: #bff0de -} - -.alert-success hr { - border-top-color: #aaebd3 -} - -.alert-success .alert-link { - color: #093b29 -} - -.alert-info { - color: #1c606a; - background-color: #d7f1f5; - border-color: #c7ebf1 -} - -.alert-info hr { - border-top-color: #b3e4ec -} - -.alert-info .alert-link { - color: #113b42 -} - -.alert-warning { - color: #806520; - background-color: #fdf3d8; - border-color: #fceec9 -} - -.alert-warning hr { - border-top-color: #fbe6b1 -} - -.alert-warning .alert-link { - color: #574516 -} - -.alert-danger { - color: #78261f; - background-color: #fadbd8; - border-color: #f8ccc8 -} - -.alert-danger hr { - border-top-color: #f5b7b1 -} - -.alert-danger .alert-link { - color: #4f1915 -} - -.alert-light { - color: #818183; - background-color: #fefefe; - border-color: #fdfdfe -} - -.alert-light hr { - border-top-color: #ececf6 -} - -.alert-light .alert-link { - color: #686869 -} - -.alert-dark { - color: #2f3037; - background-color: #dedee1; - border-color: #d1d1d5 -} - -.alert-dark hr { - border-top-color: #c4c4c9 -} - -.alert-dark .alert-link { - color: #18181c -} - -@-webkit-keyframes progress-bar-stripes { - 0% { - background-position: 1rem 0 - } - to { - background-position: 0 0 - } -} - -@keyframes progress-bar-stripes { - 0% { - background-position: 1rem 0 - } - to { - background-position: 0 0 - } -} - -.progress { - height: 1rem; - line-height: 0; - font-size: .75rem; - background-color: #eaecf4; - border-radius: .35rem -} - -.progress, -.progress-bar { - display: flex; - overflow: hidden -} - -.progress-bar { - flex-direction: column; - justify-content: center; - color: #fff; - text-align: center; - white-space: nowrap; - background-color: #4e73df; - transition: width .6s ease -} - -@media (prefers-reduced-motion:reduce) { - .progress-bar { - transition: none - } -} - -.progress-bar-striped { - background-image: linear-gradient(45deg, hsla(0, 0%, 100%, .15) 25%, transparent 0, transparent 50%, hsla(0, 0%, 100%, .15) 0, hsla(0, 0%, 100%, .15) 75%, transparent 0, transparent); - background-size: 1rem 1rem -} - -.progress-bar-animated { - -webkit-animation: progress-bar-stripes 1s linear infinite; - animation: progress-bar-stripes 1s linear infinite -} - -@media (prefers-reduced-motion:reduce) { - .progress-bar-animated { - -webkit-animation: none; - animation: none - } -} - -.media { - display: flex; - align-items: flex-start -} - -.media-body { - flex: 1 -} - -.list-group { - display: flex; - flex-direction: column; - padding-left: 0; - margin-bottom: 0; - border-radius: .35rem -} - -.list-group-item-action { - width: 100%; - color: #6e707e; - text-align: inherit -} - -.list-group-item-action:focus, -.list-group-item-action:hover { - z-index: 1; - color: #6e707e; - text-decoration: none; - background-color: #f8f9fc -} - -.list-group-item-action:active { - color: #858796; - background-color: #eaecf4 -} - -.list-group-item { - position: relative; - display: block; - padding: .75rem 1.25rem; - background-color: #fff; - border: 1px solid rgba(0, 0, 0, .125) -} - -.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: #858796; - pointer-events: none; - background-color: #fff -} - -.list-group-item.active { - z-index: 2; - color: #fff; - background-color: #4e73df; - border-color: #4e73df -} - -.list-group-item+.list-group-item { - border-top-width: 0 -} - -.list-group-item+.list-group-item.active { - margin-top: -1px; - border-top-width: 1px -} - -.list-group-horizontal { - flex-direction: row -} - -.list-group-horizontal>.list-group-item:first-child { - border-bottom-left-radius: .35rem; - border-top-right-radius: 0 -} - -.list-group-horizontal>.list-group-item:last-child { - border-top-right-radius: .35rem; - 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: 1px; - border-left-width: 0 -} - -.list-group-horizontal>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px -} - -@media (min-width:576px) { - .list-group-horizontal-sm { - flex-direction: row - } - .list-group-horizontal-sm>.list-group-item:first-child { - border-bottom-left-radius: .35rem; - border-top-right-radius: 0 - } - .list-group-horizontal-sm>.list-group-item:last-child { - border-top-right-radius: .35rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-sm>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-sm>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-sm>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -@media (min-width:768px) { - .list-group-horizontal-md { - flex-direction: row - } - .list-group-horizontal-md>.list-group-item:first-child { - border-bottom-left-radius: .35rem; - border-top-right-radius: 0 - } - .list-group-horizontal-md>.list-group-item:last-child { - border-top-right-radius: .35rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-md>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-md>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-md>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -@media (min-width:992px) { - .list-group-horizontal-lg { - flex-direction: row - } - .list-group-horizontal-lg>.list-group-item:first-child { - border-bottom-left-radius: .35rem; - border-top-right-radius: 0 - } - .list-group-horizontal-lg>.list-group-item:last-child { - border-top-right-radius: .35rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-lg>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-lg>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-lg>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -@media (min-width:1200px) { - .list-group-horizontal-xl { - flex-direction: row - } - .list-group-horizontal-xl>.list-group-item:first-child { - border-bottom-left-radius: .35rem; - border-top-right-radius: 0 - } - .list-group-horizontal-xl>.list-group-item:last-child { - border-top-right-radius: .35rem; - border-bottom-left-radius: 0 - } - .list-group-horizontal-xl>.list-group-item.active { - margin-top: 0 - } - .list-group-horizontal-xl>.list-group-item+.list-group-item { - border-top-width: 1px; - border-left-width: 0 - } - .list-group-horizontal-xl>.list-group-item+.list-group-item.active { - margin-left: -1px; - border-left-width: 1px - } -} - -.list-group-flush { - border-radius: 0 -} - -.list-group-flush>.list-group-item { - border-width: 0 0 1px -} - -.list-group-flush>.list-group-item:last-child { - border-bottom-width: 0 -} - -.list-group-item-primary { - color: #293c74; - background-color: #cdd8f6 -} - -.list-group-item-primary.list-group-item-action:focus, -.list-group-item-primary.list-group-item-action:hover { - color: #293c74; - background-color: #b7c7f2 -} - -.list-group-item-primary.list-group-item-action.active { - color: #fff; - background-color: #293c74; - border-color: #293c74 -} - -.list-group-item-secondary { - color: #45464e; - background-color: #dddde2 -} - -.list-group-item-secondary.list-group-item-action:focus, -.list-group-item-secondary.list-group-item-action:hover { - color: #45464e; - background-color: #cfcfd6 -} - -.list-group-item-secondary.list-group-item-action.active { - color: #fff; - background-color: #45464e; - border-color: #45464e -} - -.list-group-item-success { - color: #0f6848; - background-color: #bff0de -} - -.list-group-item-success.list-group-item-action:focus, -.list-group-item-success.list-group-item-action:hover { - color: #0f6848; - background-color: #aaebd3 -} - -.list-group-item-success.list-group-item-action.active { - color: #fff; - background-color: #0f6848; - border-color: #0f6848 -} - -.list-group-item-info { - color: #1c606a; - background-color: #c7ebf1 -} - -.list-group-item-info.list-group-item-action:focus, -.list-group-item-info.list-group-item-action:hover { - color: #1c606a; - background-color: #b3e4ec -} - -.list-group-item-info.list-group-item-action.active { - color: #fff; - background-color: #1c606a; - border-color: #1c606a -} - -.list-group-item-warning { - color: #806520; - background-color: #fceec9 -} - -.list-group-item-warning.list-group-item-action:focus, -.list-group-item-warning.list-group-item-action:hover { - color: #806520; - background-color: #fbe6b1 -} - -.list-group-item-warning.list-group-item-action.active { - color: #fff; - background-color: #806520; - border-color: #806520 -} - -.list-group-item-danger { - color: #78261f; - background-color: #f8ccc8 -} - -.list-group-item-danger.list-group-item-action:focus, -.list-group-item-danger.list-group-item-action:hover { - color: #78261f; - background-color: #f5b7b1 -} - -.list-group-item-danger.list-group-item-action.active { - color: #fff; - background-color: #78261f; - border-color: #78261f -} - -.list-group-item-light { - color: #818183; - background-color: #fdfdfe -} - -.list-group-item-light.list-group-item-action:focus, -.list-group-item-light.list-group-item-action:hover { - color: #818183; - background-color: #ececf6 -} - -.list-group-item-light.list-group-item-action.active { - color: #fff; - background-color: #818183; - border-color: #818183 -} - -.list-group-item-dark { - color: #2f3037; - background-color: #d1d1d5 -} - -.list-group-item-dark.list-group-item-action:focus, -.list-group-item-dark.list-group-item-action:hover { - color: #2f3037; - background-color: #c4c4c9 -} - -.list-group-item-dark.list-group-item-action.active { - color: #fff; - background-color: #2f3037; - border-color: #2f3037 -} - -.close { - float: right; - font-size: 1.5rem; - font-weight: 700; - line-height: 1; - color: #000; - text-shadow: 0 1px 0 #fff; - opacity: .5 -} - -.close:hover { - color: #000; - text-decoration: none -} - -.close:not(:disabled):not(.disabled):focus, -.close:not(:disabled):not(.disabled):hover { - opacity: .75 -} - -button.close { - padding: 0; - background-color: transparent; - border: 0 -} - -a.close.disabled { - pointer-events: none -} - -.toast { - flex-basis: 350px; - max-width: 350px; - font-size: .875rem; - background-color: hsla(0, 0%, 100%, .85); - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .1); - box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .1); - opacity: 0; - border-radius: .25rem -} - -.toast:not(:last-child) { - margin-bottom: .75rem -} - -.toast.showing { - opacity: 1 -} - -.toast.show { - display: block; - opacity: 1 -} - -.toast.hide { - display: none -} - -.toast-header { - display: flex; - align-items: center; - padding: .25rem .75rem; - color: #858796; - background-color: hsla(0, 0%, 100%, .85); - background-clip: padding-box; - border-bottom: 1px solid rgba(0, 0, 0, .05); - border-top-left-radius: calc(.25rem - 1px); - border-top-right-radius: calc(.25rem - 1px) -} - -.toast-body { - padding: .75rem -} - -.modal-open { - overflow: hidden -} - -.modal-open .modal { - overflow-x: hidden; - overflow-y: auto -} - -.modal { - position: fixed; - top: 0; - left: 0; - z-index: 1050; - display: none; - width: 100%; - height: 100%; - overflow: hidden; - outline: 0 -} - -.modal-dialog { - position: relative; - width: auto; - margin: .5rem; - pointer-events: none -} - -.modal.fade .modal-dialog { - transition: -webkit-transform .3s ease-out; - transition: transform .3s ease-out; - transition: transform .3s ease-out, -webkit-transform .3s ease-out; - -webkit-transform: translateY(-50px); - transform: translateY(-50px) -} - -@media (prefers-reduced-motion:reduce) { - .modal.fade .modal-dialog { - transition: none - } -} - -.modal.show .modal-dialog { - -webkit-transform: none; - transform: none -} - -.modal.modal-static .modal-dialog { - -webkit-transform: scale(1.02); - transform: scale(1.02) -} - -.modal-dialog-scrollable { - display: flex; - max-height: calc(100% - 1rem) -} - -.modal-dialog-scrollable .modal-content { - max-height: calc(100vh - 1rem); - overflow: hidden -} - -.modal-dialog-scrollable .modal-footer, -.modal-dialog-scrollable .modal-header { - flex-shrink: 0 -} - -.modal-dialog-scrollable .modal-body { - overflow-y: auto -} - -.modal-dialog-centered { - display: flex; - align-items: center; - min-height: calc(100% - 1rem) -} - -.modal-dialog-centered:before { - display: block; - height: calc(100vh - 1rem); - height: -webkit-min-content; - height: -moz-min-content; - height: min-content; - content: "" -} - -.modal-dialog-centered.modal-dialog-scrollable { - flex-direction: column; - justify-content: center; - height: 100% -} - -.modal-dialog-centered.modal-dialog-scrollable .modal-content { - max-height: none -} - -.modal-dialog-centered.modal-dialog-scrollable:before { - content: none -} - -.modal-content { - position: relative; - display: flex; - flex-direction: column; - width: 100%; - pointer-events: auto; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: .3rem; - outline: 0 -} - -.modal-backdrop { - position: fixed; - top: 0; - left: 0; - z-index: 1040; - width: 100vw; - height: 100vh; - background-color: #000 -} - -.modal-backdrop.fade { - opacity: 0 -} - -.modal-backdrop.show { - opacity: .5 -} - -.modal-header { - display: flex; - align-items: flex-start; - justify-content: space-between; - padding: 1rem; - border-bottom: 1px solid #e3e6f0; - border-top-left-radius: calc(.3rem - 1px); - border-top-right-radius: calc(.3rem - 1px) -} - -.modal-header .close { - padding: 1rem; - margin: -1rem -1rem -1rem auto -} - -.modal-title { - margin-bottom: 0; - line-height: 1.5 -} - -.modal-body { - position: relative; - flex: 1 1 auto; - padding: 1rem -} - -.modal-footer { - display: flex; - flex-wrap: wrap; - align-items: center; - justify-content: flex-end; - padding: .75rem; - border-top: 1px solid #e3e6f0; - border-bottom-right-radius: calc(.3rem - 1px); - border-bottom-left-radius: calc(.3rem - 1px) -} - -.modal-footer>* { - margin: .25rem -} - -.modal-scrollbar-measure { - position: absolute; - top: -9999px; - width: 50px; - height: 50px; - overflow: scroll -} - -@media (min-width:576px) { - .modal-dialog { - max-width: 500px; - margin: 1.75rem auto - } - .modal-dialog-scrollable { - max-height: calc(100% - 3.5rem) - } - .modal-dialog-scrollable .modal-content { - max-height: calc(100vh - 3.5rem) - } - .modal-dialog-centered { - min-height: calc(100% - 3.5rem) - } - .modal-dialog-centered:before { - height: calc(100vh - 3.5rem); - height: -webkit-min-content; - height: -moz-min-content; - height: min-content - } - .modal-sm { - max-width: 300px - } -} - -@media (min-width:992px) { - .modal-lg, - .modal-xl { - max-width: 800px - } -} - -@media (min-width:1200px) { - .modal-xl { - max-width: 1140px - } -} - -.tooltip { - position: absolute; - z-index: 1070; - display: block; - margin: 0; - font-family: Nunito, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; - 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; - word-spacing: normal; - white-space: normal; - line-break: auto; - font-size: .875rem; - word-wrap: break-word; - opacity: 0 -} - -.tooltip.show { - opacity: .9 -} - -.tooltip .arrow { - position: absolute; - display: block; - width: .8rem; - height: .4rem -} - -.tooltip .arrow:before { - position: absolute; - content: ""; - border-color: transparent; - border-style: solid -} - -.bs-tooltip-auto[x-placement^=top], -.bs-tooltip-top { - padding: .4rem 0 -} - -.bs-tooltip-auto[x-placement^=top] .arrow, -.bs-tooltip-top .arrow { - bottom: 0 -} - -.bs-tooltip-auto[x-placement^=top] .arrow:before, -.bs-tooltip-top .arrow:before { - top: 0; - border-width: .4rem .4rem 0; - border-top-color: #000 -} - -.bs-tooltip-auto[x-placement^=right], -.bs-tooltip-right { - padding: 0 .4rem -} - -.bs-tooltip-auto[x-placement^=right] .arrow, -.bs-tooltip-right .arrow { - left: 0; - width: .4rem; - height: .8rem -} - -.bs-tooltip-auto[x-placement^=right] .arrow:before, -.bs-tooltip-right .arrow:before { - right: 0; - border-width: .4rem .4rem .4rem 0; - border-right-color: #000 -} - -.bs-tooltip-auto[x-placement^=bottom], -.bs-tooltip-bottom { - padding: .4rem 0 -} - -.bs-tooltip-auto[x-placement^=bottom] .arrow, -.bs-tooltip-bottom .arrow { - top: 0 -} - -.bs-tooltip-auto[x-placement^=bottom] .arrow:before, -.bs-tooltip-bottom .arrow:before { - bottom: 0; - border-width: 0 .4rem .4rem; - border-bottom-color: #000 -} - -.bs-tooltip-auto[x-placement^=left], -.bs-tooltip-left { - padding: 0 .4rem -} - -.bs-tooltip-auto[x-placement^=left] .arrow, -.bs-tooltip-left .arrow { - right: 0; - width: .4rem; - height: .8rem -} - -.bs-tooltip-auto[x-placement^=left] .arrow:before, -.bs-tooltip-left .arrow:before { - left: 0; - border-width: .4rem 0 .4rem .4rem; - border-left-color: #000 -} - -.tooltip-inner { - max-width: 200px; - padding: .25rem .5rem; - color: #fff; - text-align: center; - background-color: #000; - border-radius: .35rem -} - -.popover { - top: 0; - left: 0; - z-index: 1060; - max-width: 276px; - font-family: Nunito, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji; - 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; - word-spacing: normal; - white-space: normal; - line-break: auto; - font-size: .875rem; - word-wrap: break-word; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, .2); - border-radius: .3rem -} - -.popover, -.popover .arrow { - position: absolute; - display: block -} - -.popover .arrow { - width: 1rem; - height: .5rem; - margin: 0 .3rem -} - -.popover .arrow:after, -.popover .arrow:before { - position: absolute; - display: block; - content: ""; - border-color: transparent; - border-style: solid -} - -.bs-popover-auto[x-placement^=top], -.bs-popover-top { - margin-bottom: .5rem -} - -.bs-popover-auto[x-placement^=top]>.arrow, -.bs-popover-top>.arrow { - bottom: calc(-.5rem - 1px) -} - -.bs-popover-auto[x-placement^=top]>.arrow:before, -.bs-popover-top>.arrow:before { - bottom: 0; - border-width: .5rem .5rem 0; - border-top-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[x-placement^=top]>.arrow:after, -.bs-popover-top>.arrow:after { - bottom: 1px; - border-width: .5rem .5rem 0; - border-top-color: #fff -} - -.bs-popover-auto[x-placement^=right], -.bs-popover-right { - margin-left: .5rem -} - -.bs-popover-auto[x-placement^=right]>.arrow, -.bs-popover-right>.arrow { - left: calc(-.5rem - 1px); - width: .5rem; - height: 1rem; - margin: .3rem 0 -} - -.bs-popover-auto[x-placement^=right]>.arrow:before, -.bs-popover-right>.arrow:before { - left: 0; - border-width: .5rem .5rem .5rem 0; - border-right-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[x-placement^=right]>.arrow:after, -.bs-popover-right>.arrow:after { - left: 1px; - border-width: .5rem .5rem .5rem 0; - border-right-color: #fff -} - -.bs-popover-auto[x-placement^=bottom], -.bs-popover-bottom { - margin-top: .5rem -} - -.bs-popover-auto[x-placement^=bottom]>.arrow, -.bs-popover-bottom>.arrow { - top: calc(-.5rem - 1px) -} - -.bs-popover-auto[x-placement^=bottom]>.arrow:before, -.bs-popover-bottom>.arrow:before { - top: 0; - border-width: 0 .5rem .5rem; - border-bottom-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[x-placement^=bottom]>.arrow:after, -.bs-popover-bottom>.arrow:after { - top: 1px; - border-width: 0 .5rem .5rem; - border-bottom-color: #fff -} - -.bs-popover-auto[x-placement^=bottom] .popover-header:before, -.bs-popover-bottom .popover-header:before { - position: absolute; - top: 0; - left: 50%; - display: block; - width: 1rem; - margin-left: -.5rem; - content: ""; - border-bottom: 1px solid #f7f7f7 -} - -.bs-popover-auto[x-placement^=left], -.bs-popover-left { - margin-right: .5rem -} - -.bs-popover-auto[x-placement^=left]>.arrow, -.bs-popover-left>.arrow { - right: calc(-.5rem - 1px); - width: .5rem; - height: 1rem; - margin: .3rem 0 -} - -.bs-popover-auto[x-placement^=left]>.arrow:before, -.bs-popover-left>.arrow:before { - right: 0; - border-width: .5rem 0 .5rem .5rem; - border-left-color: rgba(0, 0, 0, .25) -} - -.bs-popover-auto[x-placement^=left]>.arrow:after, -.bs-popover-left>.arrow:after { - right: 1px; - border-width: .5rem 0 .5rem .5rem; - border-left-color: #fff -} - -.popover-header { - padding: .5rem .75rem; - margin-bottom: 0; - font-size: 1rem; - background-color: #f7f7f7; - border-bottom: 1px solid #ebebeb; - border-top-left-radius: calc(.3rem - 1px); - border-top-right-radius: calc(.3rem - 1px) -} - -.popover-header:empty { - display: none -} - -.popover-body { - padding: .5rem .75rem; - color: #858796 -} - -.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: -webkit-transform .6s ease-in-out; - transition: transform .6s ease-in-out; - transition: transform .6s ease-in-out, -webkit-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-right, -.carousel-item-next:not(.carousel-item-left) { - -webkit-transform: translateX(100%); - transform: translateX(100%) -} - -.active.carousel-item-left, -.carousel-item-prev:not(.carousel-item-right) { - -webkit-transform: translateX(-100%); - transform: translateX(-100%) -} - -.carousel-fade .carousel-item { - opacity: 0; - transition-property: opacity; - -webkit-transform: none; - transform: none -} - -.carousel-fade .carousel-item-next.carousel-item-left, -.carousel-fade .carousel-item-prev.carousel-item-right, -.carousel-fade .carousel-item.active { - z-index: 1; - opacity: 1 -} - -.carousel-fade .active.carousel-item-left, -.carousel-fade .active.carousel-item-right { - z-index: 0; - opacity: 0; - transition: opacity 0s .6s -} - -@media (prefers-reduced-motion:reduce) { - .carousel-fade .active.carousel-item-left, - .carousel-fade .active.carousel-item-right { - 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: none; - 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: 20px; - height: 20px; - background: 50%/100% 100% no-repeat -} - -.carousel-control-prev-icon { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3E%3C/svg%3E") -} - -.carousel-control-next-icon { - background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8'%3E%3Cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3E%3C/svg%3E") -} - -.carousel-indicators { - position: absolute; - right: 0; - bottom: 0; - left: 0; - z-index: 15; - display: flex; - justify-content: center; - padding-left: 0; - margin-right: 15%; - margin-left: 15%; - list-style: none -} - -.carousel-indicators li { - box-sizing: content-box; - flex: 0 1 auto; - width: 30px; - height: 3px; - margin-right: 3px; - margin-left: 3px; - text-indent: -999px; - cursor: pointer; - background-color: #fff; - background-clip: padding-box; - border-top: 10px solid transparent; - border-bottom: 10px solid transparent; - opacity: .5; - transition: opacity .6s ease -} - -@media (prefers-reduced-motion:reduce) { - .carousel-indicators li { - transition: none - } -} - -.carousel-indicators .active { - opacity: 1 -} - -.carousel-caption { - position: absolute; - right: 15%; - bottom: 20px; - left: 15%; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: #fff; - text-align: center -} - -@-webkit-keyframes spinner-border { - to { - -webkit-transform: rotate(1turn); - transform: rotate(1turn) - } -} - -@keyframes spinner-border { - to { - -webkit-transform: rotate(1turn); - transform: rotate(1turn) - } -} - -.spinner-border { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: -.125em; - border: .25em solid; - border-right: .25em solid transparent; - border-radius: 50%; - -webkit-animation: spinner-border .75s linear infinite; - animation: spinner-border .75s linear infinite -} - -.spinner-border-sm { - width: 1rem; - height: 1rem; - border-width: .2em -} - -@-webkit-keyframes spinner-grow { - 0% { - -webkit-transform: scale(0); - transform: scale(0) - } - 50% { - opacity: 1; - -webkit-transform: none; - transform: none - } -} - -@keyframes spinner-grow { - 0% { - -webkit-transform: scale(0); - transform: scale(0) - } - 50% { - opacity: 1; - -webkit-transform: none; - transform: none - } -} - -.spinner-grow { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: -.125em; - background-color: currentColor; - border-radius: 50%; - opacity: 0; - -webkit-animation: spinner-grow .75s linear infinite; - animation: spinner-grow .75s linear infinite -} - -.spinner-grow-sm { - width: 1rem; - height: 1rem -} - -@media (prefers-reduced-motion:reduce) { - .spinner-border, - .spinner-grow { - -webkit-animation-duration: 1.5s; - animation-duration: 1.5s - } -} - -.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 -} - -.bg-primary { - background-color: #4e73df!important -} - -a.bg-primary:focus, -a.bg-primary:hover, -button.bg-primary:focus, -button.bg-primary:hover { - background-color: #2653d4!important -} - -.bg-secondary { - background-color: #858796!important -} - -a.bg-secondary:focus, -a.bg-secondary:hover, -button.bg-secondary:focus, -button.bg-secondary:hover { - background-color: #6b6d7d!important -} - -.bg-success { - background-color: #1cc88a!important -} - -a.bg-success:focus, -a.bg-success:hover, -button.bg-success:focus, -button.bg-success:hover { - background-color: #169b6b!important -} - -.bg-info { - background-color: #36b9cc!important -} - -a.bg-info:focus, -a.bg-info:hover, -button.bg-info:focus, -button.bg-info:hover { - background-color: #2a96a5!important -} - -.bg-warning { - background-color: #f6c23e!important -} - -a.bg-warning:focus, -a.bg-warning:hover, -button.bg-warning:focus, -button.bg-warning:hover { - background-color: #f4b30d!important -} - -.bg-danger { - background-color: #e74a3b!important -} - -a.bg-danger:focus, -a.bg-danger:hover, -button.bg-danger:focus, -button.bg-danger:hover { - background-color: #d52a1a!important -} - -.bg-light { - background-color: #f8f9fc!important -} - -a.bg-light:focus, -a.bg-light:hover, -button.bg-light:focus, -button.bg-light:hover { - background-color: #d4daed!important -} - -.bg-dark { - background-color: #5a5c69!important -} - -a.bg-dark:focus, -a.bg-dark:hover, -button.bg-dark:focus, -button.bg-dark:hover { - background-color: #42444e!important -} - -.bg-white { - background-color: #fff!important -} - -.bg-transparent { - background-color: transparent!important -} - -.border { - border: 1px solid #e3e6f0!important -} - -.border-top { - border-top: 1px solid #e3e6f0!important -} - -.border-right { - border-right: 1px solid #e3e6f0!important -} - -.border-bottom { - border-bottom: 1px solid #e3e6f0!important -} - -.border-left { - border-left: 1px solid #e3e6f0!important -} - -.border-0 { - border: 0!important -} - -.border-top-0 { - border-top: 0!important -} - -.border-right-0 { - border-right: 0!important -} - -.border-bottom-0 { - border-bottom: 0!important -} - -.border-left-0 { - border-left: 0!important -} - -.border-primary { - border-color: #4e73df!important -} - -.border-secondary { - border-color: #858796!important -} - -.border-success { - border-color: #1cc88a!important -} - -.border-info { - border-color: #36b9cc!important -} - -.border-warning { - border-color: #f6c23e!important -} - -.border-danger { - border-color: #e74a3b!important -} - -.border-light { - border-color: #f8f9fc!important -} - -.border-dark { - border-color: #5a5c69!important -} - -.border-white { - border-color: #fff!important -} - -.rounded-sm { - border-radius: .2rem!important -} - -.rounded { - border-radius: .35rem!important -} - -.rounded-top { - border-top-left-radius: .35rem!important -} - -.rounded-right, -.rounded-top { - border-top-right-radius: .35rem!important -} - -.rounded-bottom, -.rounded-right { - border-bottom-right-radius: .35rem!important -} - -.rounded-bottom, -.rounded-left { - border-bottom-left-radius: .35rem!important -} - -.rounded-left { - border-top-left-radius: .35rem!important -} - -.rounded-lg { - border-radius: .3rem!important -} - -.rounded-circle { - border-radius: 50%!important -} - -.rounded-pill { - border-radius: 50rem!important -} - -.rounded-0 { - border-radius: 0!important -} - -.clearfix:after { - display: block; - clear: both; - content: "" -} - -.d-none { - display: none!important -} - -.d-inline { - display: inline!important -} - -.d-inline-block { - display: inline-block!important -} - -.d-block { - display: block!important -} - -.d-table { - display: table!important -} - -.d-table-row { - display: table-row!important -} - -.d-table-cell { - display: table-cell!important -} - -.d-flex { - display: flex!important -} - -.d-inline-flex { - display: inline-flex!important -} - -@media (min-width:576px) { - .d-sm-none { - display: none!important - } - .d-sm-inline { - display: inline!important - } - .d-sm-inline-block { - display: inline-block!important - } - .d-sm-block { - display: block!important - } - .d-sm-table { - display: table!important - } - .d-sm-table-row { - display: table-row!important - } - .d-sm-table-cell { - display: table-cell!important - } - .d-sm-flex { - display: flex!important - } - .d-sm-inline-flex { - display: inline-flex!important - } -} - -@media (min-width:768px) { - .d-md-none { - display: none!important - } - .d-md-inline { - display: inline!important - } - .d-md-inline-block { - display: inline-block!important - } - .d-md-block { - display: block!important - } - .d-md-table { - display: table!important - } - .d-md-table-row { - display: table-row!important - } - .d-md-table-cell { - display: table-cell!important - } - .d-md-flex { - display: flex!important - } - .d-md-inline-flex { - display: inline-flex!important - } -} - -@media (min-width:992px) { - .d-lg-none { - display: none!important - } - .d-lg-inline { - display: inline!important - } - .d-lg-inline-block { - display: inline-block!important - } - .d-lg-block { - display: block!important - } - .d-lg-table { - display: table!important - } - .d-lg-table-row { - display: table-row!important - } - .d-lg-table-cell { - display: table-cell!important - } - .d-lg-flex { - display: flex!important - } - .d-lg-inline-flex { - display: inline-flex!important - } -} - -@media (min-width:1200px) { - .d-xl-none { - display: none!important - } - .d-xl-inline { - display: inline!important - } - .d-xl-inline-block { - display: inline-block!important - } - .d-xl-block { - display: block!important - } - .d-xl-table { - display: table!important - } - .d-xl-table-row { - display: table-row!important - } - .d-xl-table-cell { - display: table-cell!important - } - .d-xl-flex { - display: flex!important - } - .d-xl-inline-flex { - display: inline-flex!important - } -} - -@media print { - .d-print-none { - display: none!important - } - .d-print-inline { - display: inline!important - } - .d-print-inline-block { - display: inline-block!important - } - .d-print-block { - display: block!important - } - .d-print-table { - display: table!important - } - .d-print-table-row { - display: table-row!important - } - .d-print-table-cell { - display: table-cell!important - } - .d-print-flex { - display: flex!important - } - .d-print-inline-flex { - display: inline-flex!important - } -} - -.embed-responsive { - position: relative; - display: block; - width: 100%; - padding: 0; - overflow: hidden -} - -.embed-responsive:before { - display: block; - content: "" -} - -.embed-responsive .embed-responsive-item, -.embed-responsive embed, -.embed-responsive iframe, -.embed-responsive object, -.embed-responsive video { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 100%; - height: 100%; - border: 0 -} - -.embed-responsive-21by9:before { - padding-top: 42.85714% -} - -.embed-responsive-16by9:before { - padding-top: 56.25% -} - -.embed-responsive-4by3:before { - padding-top: 75% -} - -.embed-responsive-1by1:before { - padding-top: 100% -} - -.flex-row { - flex-direction: row!important -} - -.flex-column { - flex-direction: column!important -} - -.flex-row-reverse { - flex-direction: row-reverse!important -} - -.flex-column-reverse { - flex-direction: column-reverse!important -} - -.flex-wrap { - flex-wrap: wrap!important -} - -.flex-nowrap { - flex-wrap: nowrap!important -} - -.flex-wrap-reverse { - flex-wrap: wrap-reverse!important -} - -.flex-fill { - flex: 1 1 auto!important -} - -.flex-grow-0 { - flex-grow: 0!important -} - -.flex-grow-1 { - flex-grow: 1!important -} - -.flex-shrink-0 { - flex-shrink: 0!important -} - -.flex-shrink-1 { - flex-shrink: 1!important -} - -.justify-content-start { - justify-content: flex-start!important -} - -.justify-content-end { - justify-content: flex-end!important -} - -.justify-content-center { - justify-content: center!important -} - -.justify-content-between { - justify-content: space-between!important -} - -.justify-content-around { - justify-content: space-around!important -} - -.align-items-start { - align-items: flex-start!important -} - -.align-items-end { - align-items: flex-end!important -} - -.align-items-center { - align-items: center!important -} - -.align-items-baseline { - align-items: baseline!important -} - -.align-items-stretch { - align-items: stretch!important -} - -.align-content-start { - align-content: flex-start!important -} - -.align-content-end { - align-content: flex-end!important -} - -.align-content-center { - align-content: center!important -} - -.align-content-between { - align-content: space-between!important -} - -.align-content-around { - align-content: space-around!important -} - -.align-content-stretch { - align-content: stretch!important -} - -.align-self-auto { - align-self: auto!important -} - -.align-self-start { - align-self: flex-start!important -} - -.align-self-end { - align-self: flex-end!important -} - -.align-self-center { - align-self: center!important -} - -.align-self-baseline { - align-self: baseline!important -} - -.align-self-stretch { - align-self: stretch!important -} - -@media (min-width:576px) { - .flex-sm-row { - flex-direction: row!important - } - .flex-sm-column { - flex-direction: column!important - } - .flex-sm-row-reverse { - flex-direction: row-reverse!important - } - .flex-sm-column-reverse { - flex-direction: column-reverse!important - } - .flex-sm-wrap { - flex-wrap: wrap!important - } - .flex-sm-nowrap { - flex-wrap: nowrap!important - } - .flex-sm-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .flex-sm-fill { - flex: 1 1 auto!important - } - .flex-sm-grow-0 { - flex-grow: 0!important - } - .flex-sm-grow-1 { - flex-grow: 1!important - } - .flex-sm-shrink-0 { - flex-shrink: 0!important - } - .flex-sm-shrink-1 { - flex-shrink: 1!important - } - .justify-content-sm-start { - justify-content: flex-start!important - } - .justify-content-sm-end { - justify-content: flex-end!important - } - .justify-content-sm-center { - justify-content: center!important - } - .justify-content-sm-between { - justify-content: space-between!important - } - .justify-content-sm-around { - justify-content: space-around!important - } - .align-items-sm-start { - align-items: flex-start!important - } - .align-items-sm-end { - align-items: flex-end!important - } - .align-items-sm-center { - align-items: center!important - } - .align-items-sm-baseline { - align-items: baseline!important - } - .align-items-sm-stretch { - align-items: stretch!important - } - .align-content-sm-start { - align-content: flex-start!important - } - .align-content-sm-end { - align-content: flex-end!important - } - .align-content-sm-center { - align-content: center!important - } - .align-content-sm-between { - align-content: space-between!important - } - .align-content-sm-around { - align-content: space-around!important - } - .align-content-sm-stretch { - align-content: stretch!important - } - .align-self-sm-auto { - align-self: auto!important - } - .align-self-sm-start { - align-self: flex-start!important - } - .align-self-sm-end { - align-self: flex-end!important - } - .align-self-sm-center { - align-self: center!important - } - .align-self-sm-baseline { - align-self: baseline!important - } - .align-self-sm-stretch { - align-self: stretch!important - } -} - -@media (min-width:768px) { - .flex-md-row { - flex-direction: row!important - } - .flex-md-column { - flex-direction: column!important - } - .flex-md-row-reverse { - flex-direction: row-reverse!important - } - .flex-md-column-reverse { - flex-direction: column-reverse!important - } - .flex-md-wrap { - flex-wrap: wrap!important - } - .flex-md-nowrap { - flex-wrap: nowrap!important - } - .flex-md-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .flex-md-fill { - flex: 1 1 auto!important - } - .flex-md-grow-0 { - flex-grow: 0!important - } - .flex-md-grow-1 { - flex-grow: 1!important - } - .flex-md-shrink-0 { - flex-shrink: 0!important - } - .flex-md-shrink-1 { - flex-shrink: 1!important - } - .justify-content-md-start { - justify-content: flex-start!important - } - .justify-content-md-end { - justify-content: flex-end!important - } - .justify-content-md-center { - justify-content: center!important - } - .justify-content-md-between { - justify-content: space-between!important - } - .justify-content-md-around { - justify-content: space-around!important - } - .align-items-md-start { - align-items: flex-start!important - } - .align-items-md-end { - align-items: flex-end!important - } - .align-items-md-center { - align-items: center!important - } - .align-items-md-baseline { - align-items: baseline!important - } - .align-items-md-stretch { - align-items: stretch!important - } - .align-content-md-start { - align-content: flex-start!important - } - .align-content-md-end { - align-content: flex-end!important - } - .align-content-md-center { - align-content: center!important - } - .align-content-md-between { - align-content: space-between!important - } - .align-content-md-around { - align-content: space-around!important - } - .align-content-md-stretch { - align-content: stretch!important - } - .align-self-md-auto { - align-self: auto!important - } - .align-self-md-start { - align-self: flex-start!important - } - .align-self-md-end { - align-self: flex-end!important - } - .align-self-md-center { - align-self: center!important - } - .align-self-md-baseline { - align-self: baseline!important - } - .align-self-md-stretch { - align-self: stretch!important - } -} - -@media (min-width:992px) { - .flex-lg-row { - flex-direction: row!important - } - .flex-lg-column { - flex-direction: column!important - } - .flex-lg-row-reverse { - flex-direction: row-reverse!important - } - .flex-lg-column-reverse { - flex-direction: column-reverse!important - } - .flex-lg-wrap { - flex-wrap: wrap!important - } - .flex-lg-nowrap { - flex-wrap: nowrap!important - } - .flex-lg-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .flex-lg-fill { - flex: 1 1 auto!important - } - .flex-lg-grow-0 { - flex-grow: 0!important - } - .flex-lg-grow-1 { - flex-grow: 1!important - } - .flex-lg-shrink-0 { - flex-shrink: 0!important - } - .flex-lg-shrink-1 { - flex-shrink: 1!important - } - .justify-content-lg-start { - justify-content: flex-start!important - } - .justify-content-lg-end { - justify-content: flex-end!important - } - .justify-content-lg-center { - justify-content: center!important - } - .justify-content-lg-between { - justify-content: space-between!important - } - .justify-content-lg-around { - justify-content: space-around!important - } - .align-items-lg-start { - align-items: flex-start!important - } - .align-items-lg-end { - align-items: flex-end!important - } - .align-items-lg-center { - align-items: center!important - } - .align-items-lg-baseline { - align-items: baseline!important - } - .align-items-lg-stretch { - align-items: stretch!important - } - .align-content-lg-start { - align-content: flex-start!important - } - .align-content-lg-end { - align-content: flex-end!important - } - .align-content-lg-center { - align-content: center!important - } - .align-content-lg-between { - align-content: space-between!important - } - .align-content-lg-around { - align-content: space-around!important - } - .align-content-lg-stretch { - align-content: stretch!important - } - .align-self-lg-auto { - align-self: auto!important - } - .align-self-lg-start { - align-self: flex-start!important - } - .align-self-lg-end { - align-self: flex-end!important - } - .align-self-lg-center { - align-self: center!important - } - .align-self-lg-baseline { - align-self: baseline!important - } - .align-self-lg-stretch { - align-self: stretch!important - } -} - -@media (min-width:1200px) { - .flex-xl-row { - flex-direction: row!important - } - .flex-xl-column { - flex-direction: column!important - } - .flex-xl-row-reverse { - flex-direction: row-reverse!important - } - .flex-xl-column-reverse { - flex-direction: column-reverse!important - } - .flex-xl-wrap { - flex-wrap: wrap!important - } - .flex-xl-nowrap { - flex-wrap: nowrap!important - } - .flex-xl-wrap-reverse { - flex-wrap: wrap-reverse!important - } - .flex-xl-fill { - flex: 1 1 auto!important - } - .flex-xl-grow-0 { - flex-grow: 0!important - } - .flex-xl-grow-1 { - flex-grow: 1!important - } - .flex-xl-shrink-0 { - flex-shrink: 0!important - } - .flex-xl-shrink-1 { - flex-shrink: 1!important - } - .justify-content-xl-start { - justify-content: flex-start!important - } - .justify-content-xl-end { - justify-content: flex-end!important - } - .justify-content-xl-center { - justify-content: center!important - } - .justify-content-xl-between { - justify-content: space-between!important - } - .justify-content-xl-around { - justify-content: space-around!important - } - .align-items-xl-start { - align-items: flex-start!important - } - .align-items-xl-end { - align-items: flex-end!important - } - .align-items-xl-center { - align-items: center!important - } - .align-items-xl-baseline { - align-items: baseline!important - } - .align-items-xl-stretch { - align-items: stretch!important - } - .align-content-xl-start { - align-content: flex-start!important - } - .align-content-xl-end { - align-content: flex-end!important - } - .align-content-xl-center { - align-content: center!important - } - .align-content-xl-between { - align-content: space-between!important - } - .align-content-xl-around { - align-content: space-around!important - } - .align-content-xl-stretch { - align-content: stretch!important - } - .align-self-xl-auto { - align-self: auto!important - } - .align-self-xl-start { - align-self: flex-start!important - } - .align-self-xl-end { - align-self: flex-end!important - } - .align-self-xl-center { - align-self: center!important - } - .align-self-xl-baseline { - align-self: baseline!important - } - .align-self-xl-stretch { - align-self: stretch!important - } -} - -.float-left { - float: left!important -} - -.float-right { - float: right!important -} - -.float-none { - float: none!important -} - -@media (min-width:576px) { - .float-sm-left { - float: left!important - } - .float-sm-right { - float: right!important - } - .float-sm-none { - float: none!important - } -} - -@media (min-width:768px) { - .float-md-left { - float: left!important - } - .float-md-right { - float: right!important - } - .float-md-none { - float: none!important - } -} - -@media (min-width:992px) { - .float-lg-left { - float: left!important - } - .float-lg-right { - float: right!important - } - .float-lg-none { - float: none!important - } -} - -@media (min-width:1200px) { - .float-xl-left { - float: left!important - } - .float-xl-right { - float: right!important - } - .float-xl-none { - float: none!important - } -} - -.user-select-all { - -webkit-user-select: all!important; - -moz-user-select: all!important; - -ms-user-select: all!important; - user-select: all!important -} - -.user-select-auto { - -webkit-user-select: auto!important; - -moz-user-select: auto!important; - -ms-user-select: auto!important; - user-select: auto!important -} - -.user-select-none { - -webkit-user-select: none!important; - -moz-user-select: none!important; - -ms-user-select: none!important; - user-select: none!important -} - -.overflow-auto { - overflow: auto!important -} - -.overflow-hidden { - overflow: hidden!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 -} - -.fixed-top { - top: 0 -} - -.fixed-bottom, -.fixed-top { - position: fixed; - right: 0; - left: 0; - z-index: 1030 -} - -.fixed-bottom { - bottom: 0 -} - -@supports ((position:-webkit-sticky) or (position:sticky)) { - .sticky-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020 - } -} - -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0, 0, 0, 0); - white-space: nowrap; - border: 0 -} - -.sr-only-focusable:active, -.sr-only-focusable:focus { - position: static; - width: auto; - height: auto; - overflow: visible; - clip: auto; - white-space: normal -} - -.shadow-sm { - box-shadow: 0 .125rem .25rem 0 rgba(58, 59, 69, .2)!important -} - -.shadow { - box-shadow: 0 .15rem 1.75rem 0 rgba(58, 59, 69, .15)!important -} - -.shadow-lg { - box-shadow: 0 1rem 3rem rgba(0, 0, 0, .175)!important -} - -.shadow-none { - box-shadow: none!important -} - -.w-25 { - width: 25%!important -} - -.w-50 { - width: 50%!important -} - -.w-75 { - width: 75%!important -} - -.w-100 { - width: 100%!important -} - -.w-auto { - width: auto!important -} - -.h-25 { - height: 25%!important -} - -.h-50 { - height: 50%!important -} - -.h-75 { - height: 75%!important -} - -.h-100 { - height: 100%!important -} - -.h-auto { - height: auto!important -} - -.mw-100 { - max-width: 100%!important -} - -.mh-100 { - max-height: 100%!important -} - -.min-vw-100 { - min-width: 100vw!important -} - -.min-vh-100 { - min-height: 100vh!important -} - -.vw-100 { - width: 100vw!important -} - -.vh-100 { - height: 100vh!important -} - -.m-0 { - margin: 0!important -} - -.mt-0, -.my-0 { - margin-top: 0!important -} - -.mr-0, -.mx-0 { - margin-right: 0!important -} - -.mb-0, -.my-0 { - margin-bottom: 0!important -} - -.ml-0, -.mx-0 { - margin-left: 0!important -} - -.m-1 { - margin: .25rem!important -} - -.mt-1, -.my-1 { - margin-top: .25rem!important -} - -.mr-1, -.mx-1 { - margin-right: .25rem!important -} - -.mb-1, -.my-1 { - margin-bottom: .25rem!important -} - -.ml-1, -.mx-1 { - margin-left: .25rem!important -} - -.m-2 { - margin: .5rem!important -} - -.mt-2, -.my-2 { - margin-top: .5rem!important -} - -.mr-2, -.mx-2 { - margin-right: .5rem!important -} - -.mb-2, -.my-2 { - margin-bottom: .5rem!important -} - -.ml-2, -.mx-2 { - margin-left: .5rem!important -} - -.m-3 { - margin: 1rem!important -} - -.mt-3, -.my-3 { - margin-top: 1rem!important -} - -.mr-3, -.mx-3 { - margin-right: 1rem!important -} - -.mb-3, -.my-3 { - margin-bottom: 1rem!important -} - -.ml-3, -.mx-3 { - margin-left: 1rem!important -} - -.m-4 { - margin: 1.5rem!important -} - -.mt-4, -.my-4 { - margin-top: 1.5rem!important -} - -.mr-4, -.mx-4 { - margin-right: 1.5rem!important -} - -.mb-4, -.my-4 { - margin-bottom: 1.5rem!important -} - -.ml-4, -.mx-4 { - margin-left: 1.5rem!important -} - -.m-5 { - margin: 3rem!important -} - -.mt-5, -.my-5 { - margin-top: 3rem!important -} - -.mr-5, -.mx-5 { - margin-right: 3rem!important -} - -.mb-5, -.my-5 { - margin-bottom: 3rem!important -} - -.ml-5, -.mx-5 { - margin-left: 3rem!important -} - -.p-0 { - padding: 0!important -} - -.pt-0, -.py-0 { - padding-top: 0!important -} - -.pr-0, -.px-0 { - padding-right: 0!important -} - -.pb-0, -.py-0 { - padding-bottom: 0!important -} - -.pl-0, -.px-0 { - padding-left: 0!important -} - -.p-1 { - padding: .25rem!important -} - -.pt-1, -.py-1 { - padding-top: .25rem!important -} - -.pr-1, -.px-1 { - padding-right: .25rem!important -} - -.pb-1, -.py-1 { - padding-bottom: .25rem!important -} - -.pl-1, -.px-1 { - padding-left: .25rem!important -} - -.p-2 { - padding: .5rem!important -} - -.pt-2, -.py-2 { - padding-top: .5rem!important -} - -.pr-2, -.px-2 { - padding-right: .5rem!important -} - -.pb-2, -.py-2 { - padding-bottom: .5rem!important -} - -.pl-2, -.px-2 { - padding-left: .5rem!important -} - -.p-3 { - padding: 1rem!important -} - -.pt-3, -.py-3 { - padding-top: 1rem!important -} - -.pr-3, -.px-3 { - padding-right: 1rem!important -} - -.pb-3, -.py-3 { - padding-bottom: 1rem!important -} - -.pl-3, -.px-3 { - padding-left: 1rem!important -} - -.p-4 { - padding: 1.5rem!important -} - -.pt-4, -.py-4 { - padding-top: 1.5rem!important -} - -.pr-4, -.px-4 { - padding-right: 1.5rem!important -} - -.pb-4, -.py-4 { - padding-bottom: 1.5rem!important -} - -.pl-4, -.px-4 { - padding-left: 1.5rem!important -} - -.p-5 { - padding: 3rem!important -} - -.pt-5, -.py-5 { - padding-top: 3rem!important -} - -.pr-5, -.px-5 { - padding-right: 3rem!important -} - -.pb-5, -.py-5 { - padding-bottom: 3rem!important -} - -.pl-5, -.px-5 { - padding-left: 3rem!important -} - -.m-n1 { - margin: -.25rem!important -} - -.mt-n1, -.my-n1 { - margin-top: -.25rem!important -} - -.mr-n1, -.mx-n1 { - margin-right: -.25rem!important -} - -.mb-n1, -.my-n1 { - margin-bottom: -.25rem!important -} - -.ml-n1, -.mx-n1 { - margin-left: -.25rem!important -} - -.m-n2 { - margin: -.5rem!important -} - -.mt-n2, -.my-n2 { - margin-top: -.5rem!important -} - -.mr-n2, -.mx-n2 { - margin-right: -.5rem!important -} - -.mb-n2, -.my-n2 { - margin-bottom: -.5rem!important -} - -.ml-n2, -.mx-n2 { - margin-left: -.5rem!important -} - -.m-n3 { - margin: -1rem!important -} - -.mt-n3, -.my-n3 { - margin-top: -1rem!important -} - -.mr-n3, -.mx-n3 { - margin-right: -1rem!important -} - -.mb-n3, -.my-n3 { - margin-bottom: -1rem!important -} - -.ml-n3, -.mx-n3 { - margin-left: -1rem!important -} - -.m-n4 { - margin: -1.5rem!important -} - -.mt-n4, -.my-n4 { - margin-top: -1.5rem!important -} - -.mr-n4, -.mx-n4 { - margin-right: -1.5rem!important -} - -.mb-n4, -.my-n4 { - margin-bottom: -1.5rem!important -} - -.ml-n4, -.mx-n4 { - margin-left: -1.5rem!important -} - -.m-n5 { - margin: -3rem!important -} - -.mt-n5, -.my-n5 { - margin-top: -3rem!important -} - -.mr-n5, -.mx-n5 { - margin-right: -3rem!important -} - -.mb-n5, -.my-n5 { - margin-bottom: -3rem!important -} - -.ml-n5, -.mx-n5 { - margin-left: -3rem!important -} - -.m-auto { - margin: auto!important -} - -.mt-auto, -.my-auto { - margin-top: auto!important -} - -.mr-auto, -.mx-auto { - margin-right: auto!important -} - -.mb-auto, -.my-auto { - margin-bottom: auto!important -} - -.ml-auto, -.mx-auto { - margin-left: auto!important -} - -@media (min-width:576px) { - .m-sm-0 { - margin: 0!important - } - .mt-sm-0, - .my-sm-0 { - margin-top: 0!important - } - .mr-sm-0, - .mx-sm-0 { - margin-right: 0!important - } - .mb-sm-0, - .my-sm-0 { - margin-bottom: 0!important - } - .ml-sm-0, - .mx-sm-0 { - margin-left: 0!important - } - .m-sm-1 { - margin: .25rem!important - } - .mt-sm-1, - .my-sm-1 { - margin-top: .25rem!important - } - .mr-sm-1, - .mx-sm-1 { - margin-right: .25rem!important - } - .mb-sm-1, - .my-sm-1 { - margin-bottom: .25rem!important - } - .ml-sm-1, - .mx-sm-1 { - margin-left: .25rem!important - } - .m-sm-2 { - margin: .5rem!important - } - .mt-sm-2, - .my-sm-2 { - margin-top: .5rem!important - } - .mr-sm-2, - .mx-sm-2 { - margin-right: .5rem!important - } - .mb-sm-2, - .my-sm-2 { - margin-bottom: .5rem!important - } - .ml-sm-2, - .mx-sm-2 { - margin-left: .5rem!important - } - .m-sm-3 { - margin: 1rem!important - } - .mt-sm-3, - .my-sm-3 { - margin-top: 1rem!important - } - .mr-sm-3, - .mx-sm-3 { - margin-right: 1rem!important - } - .mb-sm-3, - .my-sm-3 { - margin-bottom: 1rem!important - } - .ml-sm-3, - .mx-sm-3 { - margin-left: 1rem!important - } - .m-sm-4 { - margin: 1.5rem!important - } - .mt-sm-4, - .my-sm-4 { - margin-top: 1.5rem!important - } - .mr-sm-4, - .mx-sm-4 { - margin-right: 1.5rem!important - } - .mb-sm-4, - .my-sm-4 { - margin-bottom: 1.5rem!important - } - .ml-sm-4, - .mx-sm-4 { - margin-left: 1.5rem!important - } - .m-sm-5 { - margin: 3rem!important - } - .mt-sm-5, - .my-sm-5 { - margin-top: 3rem!important - } - .mr-sm-5, - .mx-sm-5 { - margin-right: 3rem!important - } - .mb-sm-5, - .my-sm-5 { - margin-bottom: 3rem!important - } - .ml-sm-5, - .mx-sm-5 { - margin-left: 3rem!important - } - .p-sm-0 { - padding: 0!important - } - .pt-sm-0, - .py-sm-0 { - padding-top: 0!important - } - .pr-sm-0, - .px-sm-0 { - padding-right: 0!important - } - .pb-sm-0, - .py-sm-0 { - padding-bottom: 0!important - } - .pl-sm-0, - .px-sm-0 { - padding-left: 0!important - } - .p-sm-1 { - padding: .25rem!important - } - .pt-sm-1, - .py-sm-1 { - padding-top: .25rem!important - } - .pr-sm-1, - .px-sm-1 { - padding-right: .25rem!important - } - .pb-sm-1, - .py-sm-1 { - padding-bottom: .25rem!important - } - .pl-sm-1, - .px-sm-1 { - padding-left: .25rem!important - } - .p-sm-2 { - padding: .5rem!important - } - .pt-sm-2, - .py-sm-2 { - padding-top: .5rem!important - } - .pr-sm-2, - .px-sm-2 { - padding-right: .5rem!important - } - .pb-sm-2, - .py-sm-2 { - padding-bottom: .5rem!important - } - .pl-sm-2, - .px-sm-2 { - padding-left: .5rem!important - } - .p-sm-3 { - padding: 1rem!important - } - .pt-sm-3, - .py-sm-3 { - padding-top: 1rem!important - } - .pr-sm-3, - .px-sm-3 { - padding-right: 1rem!important - } - .pb-sm-3, - .py-sm-3 { - padding-bottom: 1rem!important - } - .pl-sm-3, - .px-sm-3 { - padding-left: 1rem!important - } - .p-sm-4 { - padding: 1.5rem!important - } - .pt-sm-4, - .py-sm-4 { - padding-top: 1.5rem!important - } - .pr-sm-4, - .px-sm-4 { - padding-right: 1.5rem!important - } - .pb-sm-4, - .py-sm-4 { - padding-bottom: 1.5rem!important - } - .pl-sm-4, - .px-sm-4 { - padding-left: 1.5rem!important - } - .p-sm-5 { - padding: 3rem!important - } - .pt-sm-5, - .py-sm-5 { - padding-top: 3rem!important - } - .pr-sm-5, - .px-sm-5 { - padding-right: 3rem!important - } - .pb-sm-5, - .py-sm-5 { - padding-bottom: 3rem!important - } - .pl-sm-5, - .px-sm-5 { - padding-left: 3rem!important - } - .m-sm-n1 { - margin: -.25rem!important - } - .mt-sm-n1, - .my-sm-n1 { - margin-top: -.25rem!important - } - .mr-sm-n1, - .mx-sm-n1 { - margin-right: -.25rem!important - } - .mb-sm-n1, - .my-sm-n1 { - margin-bottom: -.25rem!important - } - .ml-sm-n1, - .mx-sm-n1 { - margin-left: -.25rem!important - } - .m-sm-n2 { - margin: -.5rem!important - } - .mt-sm-n2, - .my-sm-n2 { - margin-top: -.5rem!important - } - .mr-sm-n2, - .mx-sm-n2 { - margin-right: -.5rem!important - } - .mb-sm-n2, - .my-sm-n2 { - margin-bottom: -.5rem!important - } - .ml-sm-n2, - .mx-sm-n2 { - margin-left: -.5rem!important - } - .m-sm-n3 { - margin: -1rem!important - } - .mt-sm-n3, - .my-sm-n3 { - margin-top: -1rem!important - } - .mr-sm-n3, - .mx-sm-n3 { - margin-right: -1rem!important - } - .mb-sm-n3, - .my-sm-n3 { - margin-bottom: -1rem!important - } - .ml-sm-n3, - .mx-sm-n3 { - margin-left: -1rem!important - } - .m-sm-n4 { - margin: -1.5rem!important - } - .mt-sm-n4, - .my-sm-n4 { - margin-top: -1.5rem!important - } - .mr-sm-n4, - .mx-sm-n4 { - margin-right: -1.5rem!important - } - .mb-sm-n4, - .my-sm-n4 { - margin-bottom: -1.5rem!important - } - .ml-sm-n4, - .mx-sm-n4 { - margin-left: -1.5rem!important - } - .m-sm-n5 { - margin: -3rem!important - } - .mt-sm-n5, - .my-sm-n5 { - margin-top: -3rem!important - } - .mr-sm-n5, - .mx-sm-n5 { - margin-right: -3rem!important - } - .mb-sm-n5, - .my-sm-n5 { - margin-bottom: -3rem!important - } - .ml-sm-n5, - .mx-sm-n5 { - margin-left: -3rem!important - } - .m-sm-auto { - margin: auto!important - } - .mt-sm-auto, - .my-sm-auto { - margin-top: auto!important - } - .mr-sm-auto, - .mx-sm-auto { - margin-right: auto!important - } - .mb-sm-auto, - .my-sm-auto { - margin-bottom: auto!important - } - .ml-sm-auto, - .mx-sm-auto { - margin-left: auto!important - } -} - -@media (min-width:768px) { - .m-md-0 { - margin: 0!important - } - .mt-md-0, - .my-md-0 { - margin-top: 0!important - } - .mr-md-0, - .mx-md-0 { - margin-right: 0!important - } - .mb-md-0, - .my-md-0 { - margin-bottom: 0!important - } - .ml-md-0, - .mx-md-0 { - margin-left: 0!important - } - .m-md-1 { - margin: .25rem!important - } - .mt-md-1, - .my-md-1 { - margin-top: .25rem!important - } - .mr-md-1, - .mx-md-1 { - margin-right: .25rem!important - } - .mb-md-1, - .my-md-1 { - margin-bottom: .25rem!important - } - .ml-md-1, - .mx-md-1 { - margin-left: .25rem!important - } - .m-md-2 { - margin: .5rem!important - } - .mt-md-2, - .my-md-2 { - margin-top: .5rem!important - } - .mr-md-2, - .mx-md-2 { - margin-right: .5rem!important - } - .mb-md-2, - .my-md-2 { - margin-bottom: .5rem!important - } - .ml-md-2, - .mx-md-2 { - margin-left: .5rem!important - } - .m-md-3 { - margin: 1rem!important - } - .mt-md-3, - .my-md-3 { - margin-top: 1rem!important - } - .mr-md-3, - .mx-md-3 { - margin-right: 1rem!important - } - .mb-md-3, - .my-md-3 { - margin-bottom: 1rem!important - } - .ml-md-3, - .mx-md-3 { - margin-left: 1rem!important - } - .m-md-4 { - margin: 1.5rem!important - } - .mt-md-4, - .my-md-4 { - margin-top: 1.5rem!important - } - .mr-md-4, - .mx-md-4 { - margin-right: 1.5rem!important - } - .mb-md-4, - .my-md-4 { - margin-bottom: 1.5rem!important - } - .ml-md-4, - .mx-md-4 { - margin-left: 1.5rem!important - } - .m-md-5 { - margin: 3rem!important - } - .mt-md-5, - .my-md-5 { - margin-top: 3rem!important - } - .mr-md-5, - .mx-md-5 { - margin-right: 3rem!important - } - .mb-md-5, - .my-md-5 { - margin-bottom: 3rem!important - } - .ml-md-5, - .mx-md-5 { - margin-left: 3rem!important - } - .p-md-0 { - padding: 0!important - } - .pt-md-0, - .py-md-0 { - padding-top: 0!important - } - .pr-md-0, - .px-md-0 { - padding-right: 0!important - } - .pb-md-0, - .py-md-0 { - padding-bottom: 0!important - } - .pl-md-0, - .px-md-0 { - padding-left: 0!important - } - .p-md-1 { - padding: .25rem!important - } - .pt-md-1, - .py-md-1 { - padding-top: .25rem!important - } - .pr-md-1, - .px-md-1 { - padding-right: .25rem!important - } - .pb-md-1, - .py-md-1 { - padding-bottom: .25rem!important - } - .pl-md-1, - .px-md-1 { - padding-left: .25rem!important - } - .p-md-2 { - padding: .5rem!important - } - .pt-md-2, - .py-md-2 { - padding-top: .5rem!important - } - .pr-md-2, - .px-md-2 { - padding-right: .5rem!important - } - .pb-md-2, - .py-md-2 { - padding-bottom: .5rem!important - } - .pl-md-2, - .px-md-2 { - padding-left: .5rem!important - } - .p-md-3 { - padding: 1rem!important - } - .pt-md-3, - .py-md-3 { - padding-top: 1rem!important - } - .pr-md-3, - .px-md-3 { - padding-right: 1rem!important - } - .pb-md-3, - .py-md-3 { - padding-bottom: 1rem!important - } - .pl-md-3, - .px-md-3 { - padding-left: 1rem!important - } - .p-md-4 { - padding: 1.5rem!important - } - .pt-md-4, - .py-md-4 { - padding-top: 1.5rem!important - } - .pr-md-4, - .px-md-4 { - padding-right: 1.5rem!important - } - .pb-md-4, - .py-md-4 { - padding-bottom: 1.5rem!important - } - .pl-md-4, - .px-md-4 { - padding-left: 1.5rem!important - } - .p-md-5 { - padding: 3rem!important - } - .pt-md-5, - .py-md-5 { - padding-top: 3rem!important - } - .pr-md-5, - .px-md-5 { - padding-right: 3rem!important - } - .pb-md-5, - .py-md-5 { - padding-bottom: 3rem!important - } - .pl-md-5, - .px-md-5 { - padding-left: 3rem!important - } - .m-md-n1 { - margin: -.25rem!important - } - .mt-md-n1, - .my-md-n1 { - margin-top: -.25rem!important - } - .mr-md-n1, - .mx-md-n1 { - margin-right: -.25rem!important - } - .mb-md-n1, - .my-md-n1 { - margin-bottom: -.25rem!important - } - .ml-md-n1, - .mx-md-n1 { - margin-left: -.25rem!important - } - .m-md-n2 { - margin: -.5rem!important - } - .mt-md-n2, - .my-md-n2 { - margin-top: -.5rem!important - } - .mr-md-n2, - .mx-md-n2 { - margin-right: -.5rem!important - } - .mb-md-n2, - .my-md-n2 { - margin-bottom: -.5rem!important - } - .ml-md-n2, - .mx-md-n2 { - margin-left: -.5rem!important - } - .m-md-n3 { - margin: -1rem!important - } - .mt-md-n3, - .my-md-n3 { - margin-top: -1rem!important - } - .mr-md-n3, - .mx-md-n3 { - margin-right: -1rem!important - } - .mb-md-n3, - .my-md-n3 { - margin-bottom: -1rem!important - } - .ml-md-n3, - .mx-md-n3 { - margin-left: -1rem!important - } - .m-md-n4 { - margin: -1.5rem!important - } - .mt-md-n4, - .my-md-n4 { - margin-top: -1.5rem!important - } - .mr-md-n4, - .mx-md-n4 { - margin-right: -1.5rem!important - } - .mb-md-n4, - .my-md-n4 { - margin-bottom: -1.5rem!important - } - .ml-md-n4, - .mx-md-n4 { - margin-left: -1.5rem!important - } - .m-md-n5 { - margin: -3rem!important - } - .mt-md-n5, - .my-md-n5 { - margin-top: -3rem!important - } - .mr-md-n5, - .mx-md-n5 { - margin-right: -3rem!important - } - .mb-md-n5, - .my-md-n5 { - margin-bottom: -3rem!important - } - .ml-md-n5, - .mx-md-n5 { - margin-left: -3rem!important - } - .m-md-auto { - margin: auto!important - } - .mt-md-auto, - .my-md-auto { - margin-top: auto!important - } - .mr-md-auto, - .mx-md-auto { - margin-right: auto!important - } - .mb-md-auto, - .my-md-auto { - margin-bottom: auto!important - } - .ml-md-auto, - .mx-md-auto { - margin-left: auto!important - } -} - -@media (min-width:992px) { - .m-lg-0 { - margin: 0!important - } - .mt-lg-0, - .my-lg-0 { - margin-top: 0!important - } - .mr-lg-0, - .mx-lg-0 { - margin-right: 0!important - } - .mb-lg-0, - .my-lg-0 { - margin-bottom: 0!important - } - .ml-lg-0, - .mx-lg-0 { - margin-left: 0!important - } - .m-lg-1 { - margin: .25rem!important - } - .mt-lg-1, - .my-lg-1 { - margin-top: .25rem!important - } - .mr-lg-1, - .mx-lg-1 { - margin-right: .25rem!important - } - .mb-lg-1, - .my-lg-1 { - margin-bottom: .25rem!important - } - .ml-lg-1, - .mx-lg-1 { - margin-left: .25rem!important - } - .m-lg-2 { - margin: .5rem!important - } - .mt-lg-2, - .my-lg-2 { - margin-top: .5rem!important - } - .mr-lg-2, - .mx-lg-2 { - margin-right: .5rem!important - } - .mb-lg-2, - .my-lg-2 { - margin-bottom: .5rem!important - } - .ml-lg-2, - .mx-lg-2 { - margin-left: .5rem!important - } - .m-lg-3 { - margin: 1rem!important - } - .mt-lg-3, - .my-lg-3 { - margin-top: 1rem!important - } - .mr-lg-3, - .mx-lg-3 { - margin-right: 1rem!important - } - .mb-lg-3, - .my-lg-3 { - margin-bottom: 1rem!important - } - .ml-lg-3, - .mx-lg-3 { - margin-left: 1rem!important - } - .m-lg-4 { - margin: 1.5rem!important - } - .mt-lg-4, - .my-lg-4 { - margin-top: 1.5rem!important - } - .mr-lg-4, - .mx-lg-4 { - margin-right: 1.5rem!important - } - .mb-lg-4, - .my-lg-4 { - margin-bottom: 1.5rem!important - } - .ml-lg-4, - .mx-lg-4 { - margin-left: 1.5rem!important - } - .m-lg-5 { - margin: 3rem!important - } - .mt-lg-5, - .my-lg-5 { - margin-top: 3rem!important - } - .mr-lg-5, - .mx-lg-5 { - margin-right: 3rem!important - } - .mb-lg-5, - .my-lg-5 { - margin-bottom: 3rem!important - } - .ml-lg-5, - .mx-lg-5 { - margin-left: 3rem!important - } - .p-lg-0 { - padding: 0!important - } - .pt-lg-0, - .py-lg-0 { - padding-top: 0!important - } - .pr-lg-0, - .px-lg-0 { - padding-right: 0!important - } - .pb-lg-0, - .py-lg-0 { - padding-bottom: 0!important - } - .pl-lg-0, - .px-lg-0 { - padding-left: 0!important - } - .p-lg-1 { - padding: .25rem!important - } - .pt-lg-1, - .py-lg-1 { - padding-top: .25rem!important - } - .pr-lg-1, - .px-lg-1 { - padding-right: .25rem!important - } - .pb-lg-1, - .py-lg-1 { - padding-bottom: .25rem!important - } - .pl-lg-1, - .px-lg-1 { - padding-left: .25rem!important - } - .p-lg-2 { - padding: .5rem!important - } - .pt-lg-2, - .py-lg-2 { - padding-top: .5rem!important - } - .pr-lg-2, - .px-lg-2 { - padding-right: .5rem!important - } - .pb-lg-2, - .py-lg-2 { - padding-bottom: .5rem!important - } - .pl-lg-2, - .px-lg-2 { - padding-left: .5rem!important - } - .p-lg-3 { - padding: 1rem!important - } - .pt-lg-3, - .py-lg-3 { - padding-top: 1rem!important - } - .pr-lg-3, - .px-lg-3 { - padding-right: 1rem!important - } - .pb-lg-3, - .py-lg-3 { - padding-bottom: 1rem!important - } - .pl-lg-3, - .px-lg-3 { - padding-left: 1rem!important - } - .p-lg-4 { - padding: 1.5rem!important - } - .pt-lg-4, - .py-lg-4 { - padding-top: 1.5rem!important - } - .pr-lg-4, - .px-lg-4 { - padding-right: 1.5rem!important - } - .pb-lg-4, - .py-lg-4 { - padding-bottom: 1.5rem!important - } - .pl-lg-4, - .px-lg-4 { - padding-left: 1.5rem!important - } - .p-lg-5 { - padding: 3rem!important - } - .pt-lg-5, - .py-lg-5 { - padding-top: 3rem!important - } - .pr-lg-5, - .px-lg-5 { - padding-right: 3rem!important - } - .pb-lg-5, - .py-lg-5 { - padding-bottom: 3rem!important - } - .pl-lg-5, - .px-lg-5 { - padding-left: 3rem!important - } - .m-lg-n1 { - margin: -.25rem!important - } - .mt-lg-n1, - .my-lg-n1 { - margin-top: -.25rem!important - } - .mr-lg-n1, - .mx-lg-n1 { - margin-right: -.25rem!important - } - .mb-lg-n1, - .my-lg-n1 { - margin-bottom: -.25rem!important - } - .ml-lg-n1, - .mx-lg-n1 { - margin-left: -.25rem!important - } - .m-lg-n2 { - margin: -.5rem!important - } - .mt-lg-n2, - .my-lg-n2 { - margin-top: -.5rem!important - } - .mr-lg-n2, - .mx-lg-n2 { - margin-right: -.5rem!important - } - .mb-lg-n2, - .my-lg-n2 { - margin-bottom: -.5rem!important - } - .ml-lg-n2, - .mx-lg-n2 { - margin-left: -.5rem!important - } - .m-lg-n3 { - margin: -1rem!important - } - .mt-lg-n3, - .my-lg-n3 { - margin-top: -1rem!important - } - .mr-lg-n3, - .mx-lg-n3 { - margin-right: -1rem!important - } - .mb-lg-n3, - .my-lg-n3 { - margin-bottom: -1rem!important - } - .ml-lg-n3, - .mx-lg-n3 { - margin-left: -1rem!important - } - .m-lg-n4 { - margin: -1.5rem!important - } - .mt-lg-n4, - .my-lg-n4 { - margin-top: -1.5rem!important - } - .mr-lg-n4, - .mx-lg-n4 { - margin-right: -1.5rem!important - } - .mb-lg-n4, - .my-lg-n4 { - margin-bottom: -1.5rem!important - } - .ml-lg-n4, - .mx-lg-n4 { - margin-left: -1.5rem!important - } - .m-lg-n5 { - margin: -3rem!important - } - .mt-lg-n5, - .my-lg-n5 { - margin-top: -3rem!important - } - .mr-lg-n5, - .mx-lg-n5 { - margin-right: -3rem!important - } - .mb-lg-n5, - .my-lg-n5 { - margin-bottom: -3rem!important - } - .ml-lg-n5, - .mx-lg-n5 { - margin-left: -3rem!important - } - .m-lg-auto { - margin: auto!important - } - .mt-lg-auto, - .my-lg-auto { - margin-top: auto!important - } - .mr-lg-auto, - .mx-lg-auto { - margin-right: auto!important - } - .mb-lg-auto, - .my-lg-auto { - margin-bottom: auto!important - } - .ml-lg-auto, - .mx-lg-auto { - margin-left: auto!important - } -} - -@media (min-width:1200px) { - .m-xl-0 { - margin: 0!important - } - .mt-xl-0, - .my-xl-0 { - margin-top: 0!important - } - .mr-xl-0, - .mx-xl-0 { - margin-right: 0!important - } - .mb-xl-0, - .my-xl-0 { - margin-bottom: 0!important - } - .ml-xl-0, - .mx-xl-0 { - margin-left: 0!important - } - .m-xl-1 { - margin: .25rem!important - } - .mt-xl-1, - .my-xl-1 { - margin-top: .25rem!important - } - .mr-xl-1, - .mx-xl-1 { - margin-right: .25rem!important - } - .mb-xl-1, - .my-xl-1 { - margin-bottom: .25rem!important - } - .ml-xl-1, - .mx-xl-1 { - margin-left: .25rem!important - } - .m-xl-2 { - margin: .5rem!important - } - .mt-xl-2, - .my-xl-2 { - margin-top: .5rem!important - } - .mr-xl-2, - .mx-xl-2 { - margin-right: .5rem!important - } - .mb-xl-2, - .my-xl-2 { - margin-bottom: .5rem!important - } - .ml-xl-2, - .mx-xl-2 { - margin-left: .5rem!important - } - .m-xl-3 { - margin: 1rem!important - } - .mt-xl-3, - .my-xl-3 { - margin-top: 1rem!important - } - .mr-xl-3, - .mx-xl-3 { - margin-right: 1rem!important - } - .mb-xl-3, - .my-xl-3 { - margin-bottom: 1rem!important - } - .ml-xl-3, - .mx-xl-3 { - margin-left: 1rem!important - } - .m-xl-4 { - margin: 1.5rem!important - } - .mt-xl-4, - .my-xl-4 { - margin-top: 1.5rem!important - } - .mr-xl-4, - .mx-xl-4 { - margin-right: 1.5rem!important - } - .mb-xl-4, - .my-xl-4 { - margin-bottom: 1.5rem!important - } - .ml-xl-4, - .mx-xl-4 { - margin-left: 1.5rem!important - } - .m-xl-5 { - margin: 3rem!important - } - .mt-xl-5, - .my-xl-5 { - margin-top: 3rem!important - } - .mr-xl-5, - .mx-xl-5 { - margin-right: 3rem!important - } - .mb-xl-5, - .my-xl-5 { - margin-bottom: 3rem!important - } - .ml-xl-5, - .mx-xl-5 { - margin-left: 3rem!important - } - .p-xl-0 { - padding: 0!important - } - .pt-xl-0, - .py-xl-0 { - padding-top: 0!important - } - .pr-xl-0, - .px-xl-0 { - padding-right: 0!important - } - .pb-xl-0, - .py-xl-0 { - padding-bottom: 0!important - } - .pl-xl-0, - .px-xl-0 { - padding-left: 0!important - } - .p-xl-1 { - padding: .25rem!important - } - .pt-xl-1, - .py-xl-1 { - padding-top: .25rem!important - } - .pr-xl-1, - .px-xl-1 { - padding-right: .25rem!important - } - .pb-xl-1, - .py-xl-1 { - padding-bottom: .25rem!important - } - .pl-xl-1, - .px-xl-1 { - padding-left: .25rem!important - } - .p-xl-2 { - padding: .5rem!important - } - .pt-xl-2, - .py-xl-2 { - padding-top: .5rem!important - } - .pr-xl-2, - .px-xl-2 { - padding-right: .5rem!important - } - .pb-xl-2, - .py-xl-2 { - padding-bottom: .5rem!important - } - .pl-xl-2, - .px-xl-2 { - padding-left: .5rem!important - } - .p-xl-3 { - padding: 1rem!important - } - .pt-xl-3, - .py-xl-3 { - padding-top: 1rem!important - } - .pr-xl-3, - .px-xl-3 { - padding-right: 1rem!important - } - .pb-xl-3, - .py-xl-3 { - padding-bottom: 1rem!important - } - .pl-xl-3, - .px-xl-3 { - padding-left: 1rem!important - } - .p-xl-4 { - padding: 1.5rem!important - } - .pt-xl-4, - .py-xl-4 { - padding-top: 1.5rem!important - } - .pr-xl-4, - .px-xl-4 { - padding-right: 1.5rem!important - } - .pb-xl-4, - .py-xl-4 { - padding-bottom: 1.5rem!important - } - .pl-xl-4, - .px-xl-4 { - padding-left: 1.5rem!important - } - .p-xl-5 { - padding: 3rem!important - } - .pt-xl-5, - .py-xl-5 { - padding-top: 3rem!important - } - .pr-xl-5, - .px-xl-5 { - padding-right: 3rem!important - } - .pb-xl-5, - .py-xl-5 { - padding-bottom: 3rem!important - } - .pl-xl-5, - .px-xl-5 { - padding-left: 3rem!important - } - .m-xl-n1 { - margin: -.25rem!important - } - .mt-xl-n1, - .my-xl-n1 { - margin-top: -.25rem!important - } - .mr-xl-n1, - .mx-xl-n1 { - margin-right: -.25rem!important - } - .mb-xl-n1, - .my-xl-n1 { - margin-bottom: -.25rem!important - } - .ml-xl-n1, - .mx-xl-n1 { - margin-left: -.25rem!important - } - .m-xl-n2 { - margin: -.5rem!important - } - .mt-xl-n2, - .my-xl-n2 { - margin-top: -.5rem!important - } - .mr-xl-n2, - .mx-xl-n2 { - margin-right: -.5rem!important - } - .mb-xl-n2, - .my-xl-n2 { - margin-bottom: -.5rem!important - } - .ml-xl-n2, - .mx-xl-n2 { - margin-left: -.5rem!important - } - .m-xl-n3 { - margin: -1rem!important - } - .mt-xl-n3, - .my-xl-n3 { - margin-top: -1rem!important - } - .mr-xl-n3, - .mx-xl-n3 { - margin-right: -1rem!important - } - .mb-xl-n3, - .my-xl-n3 { - margin-bottom: -1rem!important - } - .ml-xl-n3, - .mx-xl-n3 { - margin-left: -1rem!important - } - .m-xl-n4 { - margin: -1.5rem!important - } - .mt-xl-n4, - .my-xl-n4 { - margin-top: -1.5rem!important - } - .mr-xl-n4, - .mx-xl-n4 { - margin-right: -1.5rem!important - } - .mb-xl-n4, - .my-xl-n4 { - margin-bottom: -1.5rem!important - } - .ml-xl-n4, - .mx-xl-n4 { - margin-left: -1.5rem!important - } - .m-xl-n5 { - margin: -3rem!important - } - .mt-xl-n5, - .my-xl-n5 { - margin-top: -3rem!important - } - .mr-xl-n5, - .mx-xl-n5 { - margin-right: -3rem!important - } - .mb-xl-n5, - .my-xl-n5 { - margin-bottom: -3rem!important - } - .ml-xl-n5, - .mx-xl-n5 { - margin-left: -3rem!important - } - .m-xl-auto { - margin: auto!important - } - .mt-xl-auto, - .my-xl-auto { - margin-top: auto!important - } - .mr-xl-auto, - .mx-xl-auto { - margin-right: auto!important - } - .mb-xl-auto, - .my-xl-auto { - margin-bottom: auto!important - } - .ml-xl-auto, - .mx-xl-auto { - margin-left: auto!important - } -} - -.stretched-link:after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1; - pointer-events: auto; - content: ""; - background-color: transparent -} - -.text-monospace { - font-family: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace!important -} - -.text-justify { - text-align: justify!important -} - -.text-wrap { - white-space: normal!important -} - -.text-nowrap { - white-space: nowrap!important -} - -.text-truncate { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap -} - -.text-left { - text-align: left!important -} - -.text-right { - text-align: right!important -} - -.text-center { - text-align: center!important -} - -@media (min-width:576px) { - .text-sm-left { - text-align: left!important - } - .text-sm-right { - text-align: right!important - } - .text-sm-center { - text-align: center!important - } -} - -@media (min-width:768px) { - .text-md-left { - text-align: left!important - } - .text-md-right { - text-align: right!important - } - .text-md-center { - text-align: center!important - } -} - -@media (min-width:992px) { - .text-lg-left { - text-align: left!important - } - .text-lg-right { - text-align: right!important - } - .text-lg-center { - text-align: center!important - } -} - -@media (min-width:1200px) { - .text-xl-left { - text-align: left!important - } - .text-xl-right { - text-align: right!important - } - .text-xl-center { - text-align: center!important - } -} - -.text-lowercase { - text-transform: lowercase!important -} - -.dropdown .dropdown-menu .dropdown-header, -.sidebar .sidebar-heading, -.text-uppercase { - text-transform: uppercase!important -} - -.text-capitalize { - text-transform: capitalize!important -} - -.font-weight-light { - font-weight: 300!important -} - -.font-weight-lighter { - font-weight: lighter!important -} - -.font-weight-normal { - font-weight: 400!important -} - -.font-weight-bold { - font-weight: 700!important -} - -.font-weight-bolder { - font-weight: bolder!important -} - -.font-italic { - font-style: italic!important -} - -.text-white { - color: #fff!important -} - -.text-primary { - color: #4e73df!important -} - -a.text-primary:focus, -a.text-primary:hover { - color: #224abe!important -} - -.text-secondary { - color: #858796!important -} - -a.text-secondary:focus, -a.text-secondary:hover { - color: #60616f!important -} - -.text-success { - color: #1cc88a!important -} - -a.text-success:focus, -a.text-success:hover { - color: #13855c!important -} - -.text-info { - color: #36b9cc!important -} - -a.text-info:focus, -a.text-info:hover { - color: #258391!important -} - -.text-warning { - color: #f6c23e!important -} - -a.text-warning:focus, -a.text-warning:hover { - color: #dda20a!important -} - -.text-danger { - color: #e74a3b!important -} - -a.text-danger:focus, -a.text-danger:hover { - color: #be2617!important -} - -.text-light { - color: #f8f9fc!important -} - -a.text-light:focus, -a.text-light:hover { - color: #c2cbe5!important -} - -.text-dark { - color: #5a5c69!important -} - -a.text-dark:focus, -a.text-dark:hover { - color: #373840!important -} - -.text-body, -.text-muted { - color: #858796!important -} - -.text-black-50 { - color: rgba(0, 0, 0, .5)!important -} - -.text-white-50 { - color: hsla(0, 0%, 100%, .5)!important -} - -.text-hide { - font: 0/0 a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0 -} - -.text-decoration-none { - text-decoration: none!important -} - -.text-break { - word-break: break-word!important; - word-wrap: break-word!important -} - -.text-reset { - color: inherit!important -} - -.visible { - visibility: visible!important -} - -.invisible { - visibility: hidden!important -} - -@media print { - *, - :after, - :before { - text-shadow: none!important; - box-shadow: none!important - } - a:not(.btn) { - text-decoration: underline - } - abbr[title]:after { - content: " (" attr(title) ")" - } - pre { - white-space: pre-wrap!important - } - blockquote, - pre { - border: 1px solid #b7b9cc - } - blockquote, - img, - pre, - tr { - page-break-inside: avoid - } - h2, - h3, - p { - orphans: 3; - widows: 3 - } - h2, - h3 { - page-break-after: avoid - } - @page { - size: a3 - } - .container, - body { - min-width: 992px!important - } - .navbar { - display: none - } - .badge { - border: 1px solid #000 - } - .table { - border-collapse: collapse!important - } - .table td, - .table th { - background-color: #fff!important - } - .table-bordered td, - .table-bordered th { - border: 1px solid #dddfeb!important - } - .table-dark { - color: inherit - } - .table-dark tbody+tbody, - .table-dark td, - .table-dark th, - .table-dark thead th { - border-color: #e3e6f0 - } - .table .thead-dark th { - color: inherit; - border-color: #e3e6f0 - } -} - -html { - position: relative; - min-height: 100% -} - -body { - height: 100% -} - -a:focus { - outline: none -} - -#wrapper { - display: flex -} - -#wrapper #content-wrapper { - background-color: #f8f9fc; - width: 100%; - overflow-x: hidden -} - -#wrapper #content-wrapper #content { - flex: 1 0 auto -} - -.container, -.container-fluid, -.container-lg, -.container-md, -.container-sm, -.container-xl { - padding-left: 1.5rem; - padding-right: 1.5rem -} - -.scroll-to-top { - position: fixed; - right: 1rem; - bottom: 1rem; - display: none; - width: 2.75rem; - height: 2.75rem; - text-align: center; - color: #fff; - background: rgba(90, 92, 105, .5); - line-height: 46px -} - -.scroll-to-top:focus, -.scroll-to-top:hover { - color: #fff -} - -.scroll-to-top:hover { - background: #5a5c69 -} - -.scroll-to-top i { - font-weight: 800 -} - -@-webkit-keyframes growIn { - 0% { - -webkit-transform: scale(.9); - transform: scale(.9); - opacity: 0 - } - to { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 1 - } -} - -@keyframes growIn { - 0% { - -webkit-transform: scale(.9); - transform: scale(.9); - opacity: 0 - } - to { - -webkit-transform: scale(1); - transform: scale(1); - opacity: 1 - } -} - -.animated--grow-in, -.sidebar .nav-item .collapse { - -webkit-animation-name: growIn; - animation-name: growIn; - -webkit-animation-duration: .2s; - animation-duration: .2s; - -webkit-animation-timing-function: transform cubic-bezier(.18, 1.25, .4, 1), opacity cubic-bezier(0, 1, .4, 1); - animation-timing-function: transform cubic-bezier(.18, 1.25, .4, 1), opacity cubic-bezier(0, 1, .4, 1) -} - -@-webkit-keyframes fadeIn { - 0% { - opacity: 0 - } - to { - opacity: 1 - } -} - -@keyframes fadeIn { - 0% { - opacity: 0 - } - to { - opacity: 1 - } -} - -.animated--fade-in { - -webkit-animation-name: fadeIn; - animation-name: fadeIn; - -webkit-animation-duration: .2s; - animation-duration: .2s; - -webkit-animation-timing-function: opacity cubic-bezier(0, 1, .4, 1); - animation-timing-function: opacity cubic-bezier(0, 1, .4, 1) -} - -.bg-gradient-primary { - background-color: #4e73df; - background-image: linear-gradient(180deg, #4e73df 10%, #224abe); - background-size: cover -} - -.bg-gradient-secondary { - background-color: #858796; - background-image: linear-gradient(180deg, #858796 10%, #60616f); - background-size: cover -} - -.bg-gradient-success { - background-color: #1cc88a; - background-image: linear-gradient(180deg, #1cc88a 10%, #13855c); - background-size: cover -} - -.bg-gradient-info { - background-color: #36b9cc; - background-image: linear-gradient(180deg, #36b9cc 10%, #258391); - background-size: cover -} - -.bg-gradient-warning { - background-color: #f6c23e; - background-image: linear-gradient(180deg, #f6c23e 10%, #dda20a); - background-size: cover -} - -.bg-gradient-danger { - background-color: #e74a3b; - background-image: linear-gradient(180deg, #e74a3b 10%, #be2617); - background-size: cover -} - -.bg-gradient-light { - background-color: #f8f9fc; - background-image: linear-gradient(180deg, #f8f9fc 10%, #c2cbe5); - background-size: cover -} - -.bg-gradient-dark { - background-color: #5a5c69; - background-image: linear-gradient(180deg, #5a5c69 10%, #373840); - background-size: cover -} - -.bg-gray-100 { - background-color: #f8f9fc!important -} - -.bg-gray-200 { - background-color: #eaecf4!important -} - -.bg-gray-300 { - background-color: #dddfeb!important -} - -.bg-gray-400 { - background-color: #d1d3e2!important -} - -.bg-gray-500 { - background-color: #b7b9cc!important -} - -.bg-gray-600 { - background-color: #858796!important -} - -.bg-gray-700 { - background-color: #6e707e!important -} - -.bg-gray-800 { - background-color: #5a5c69!important -} - -.bg-gray-900 { - background-color: #3a3b45!important -} - -.o-hidden { - overflow: hidden!important -} - -.text-xs { - font-size: .7rem -} - -.text-lg { - font-size: 1.2rem -} - -.text-gray-100 { - color: #f8f9fc!important -} - -.text-gray-200 { - color: #eaecf4!important -} - -.text-gray-300 { - color: #dddfeb!important -} - -.text-gray-400 { - color: #d1d3e2!important -} - -.text-gray-500 { - color: #b7b9cc!important -} - -.text-gray-600 { - color: #858796!important -} - -.text-gray-700 { - color: #6e707e!important -} - -.text-gray-800 { - color: #5a5c69!important -} - -.text-gray-900 { - color: #3a3b45!important -} - -.icon-circle { - height: 2.5rem; - width: 2.5rem; - border-radius: 100%; - display: flex; - align-items: center; - justify-content: center -} - -.border-left-primary { - border-left: .25rem solid #4e73df!important -} - -.border-bottom-primary { - border-bottom: .25rem solid #4e73df!important -} - -.border-left-secondary { - border-left: .25rem solid #858796!important -} - -.border-bottom-secondary { - border-bottom: .25rem solid #858796!important -} - -.border-left-success { - border-left: .25rem solid #1cc88a!important -} - -.border-bottom-success { - border-bottom: .25rem solid #1cc88a!important -} - -.border-left-info { - border-left: .25rem solid #36b9cc!important -} - -.border-bottom-info { - border-bottom: .25rem solid #36b9cc!important -} - -.border-left-warning { - border-left: .25rem solid #f6c23e!important -} - -.border-bottom-warning { - border-bottom: .25rem solid #f6c23e!important -} - -.border-left-danger { - border-left: .25rem solid #e74a3b!important -} - -.border-bottom-danger { - border-bottom: .25rem solid #e74a3b!important -} - -.border-left-light { - border-left: .25rem solid #f8f9fc!important -} - -.border-bottom-light { - border-bottom: .25rem solid #f8f9fc!important -} - -.border-left-dark { - border-left: .25rem solid #5a5c69!important -} - -.border-bottom-dark { - border-bottom: .25rem solid #5a5c69!important -} - -.progress-sm { - height: .5rem -} - -.rotate-15 { - -webkit-transform: rotate(15deg); - transform: rotate(15deg) -} - -.rotate-n-15 { - -webkit-transform: rotate(-15deg); - transform: rotate(-15deg) -} - -.dropdown .dropdown-menu { - font-size: .85rem -} - -.dropdown .dropdown-menu .dropdown-header { - font-weight: 800; - font-size: .65rem; - color: #b7b9cc -} - -.dropdown.no-arrow .dropdown-toggle:after { - display: none -} - -.sidebar .nav-item.dropdown .dropdown-toggle:after, -.topbar .nav-item.dropdown .dropdown-toggle:after { - width: 1rem; - text-align: center; - float: right; - vertical-align: 0; - border: 0; - font-weight: 900; - content: "\f105"; - font-family: Font Awesome\ 5 Free -} - -.sidebar .nav-item.dropdown.show .dropdown-toggle:after, -.topbar .nav-item.dropdown.show .dropdown-toggle:after { - content: "\f107" -} - -.sidebar .nav-item .nav-link, -.topbar .nav-item .nav-link { - position: relative -} - -.sidebar .nav-item .nav-link .badge-counter, -.topbar .nav-item .nav-link .badge-counter { - position: absolute; - -webkit-transform: scale(.7); - transform: scale(.7); - -webkit-transform-origin: top right; - transform-origin: top right; - right: .25rem; - margin-top: -.25rem -} - -.sidebar .nav-item .nav-link .img-profile, -.topbar .nav-item .nav-link .img-profile { - height: 2rem; - width: 2rem -} - -.dropdown .dropdown-toggle { - position: relative -} - -.dropdown .dropdown-toggle .badge-counter { - position: absolute; - -webkit-transform: scale(.7); - transform: scale(.7); - -webkit-transform-origin: top right; - transform-origin: top right; - right: .25rem; - margin-top: .25rem -} - -.topbar { - height: 4.375rem -} - -.topbar #sidebarToggleTop { - height: 2.5rem; - width: 2.5rem -} - -.topbar #sidebarToggleTop:hover { - background-color: #eaecf4 -} - -.topbar #sidebarToggleTop:active { - background-color: #dddfeb -} - -.topbar .navbar-search { - width: 25rem -} - -.topbar .navbar-search input { - font-size: .85rem -} - -.topbar .topbar-divider { - width: 0; - border-right: 1px solid #e3e6f0; - height: 2.375rem; - margin: auto 1rem -} - -.topbar .nav-item .nav-link { - height: 4.375rem; - display: flex; - align-items: center; - padding: 0 .75rem -} - -.topbar .nav-item .nav-link:focus, -.topbar .nav-item:focus { - outline: none -} - -.topbar.navbar-light .navbar-nav .nav-item .nav-link { - color: #d1d3e2 -} - -.topbar.navbar-light .navbar-nav .nav-item .nav-link:hover { - color: #b7b9cc -} - -.topbar.navbar-light .navbar-nav .nav-item .nav-link:active { - color: #858796 -} - -.dropdown { - position: static -} - -.dropdown .dropdown-menu { - width: calc(100% - 1.5rem); - right: .75rem -} - -.dropdown .dropdown-list { - padding: 0; - border: none; - overflow: hidden -} - -.dropdown .dropdown-list .dropdown-header { - background-color: #4e73df; - border: 1px solid #4e73df; - padding-top: .75rem; - padding-bottom: .75rem; - color: #fff -} - -.dropdown .dropdown-list .dropdown-item { - white-space: normal; - padding-top: .5rem; - padding-bottom: .5rem; - border-left: 1px solid #e3e6f0; - border-right: 1px solid #e3e6f0; - border-bottom: 1px solid #e3e6f0; - line-height: 1.3rem -} - -.dropdown .dropdown-list .dropdown-item .dropdown-list-image { - position: relative; - height: 2.5rem; - width: 2.5rem -} - -.dropdown .dropdown-list .dropdown-item .dropdown-list-image img { - height: 2.5rem; - width: 2.5rem -} - -.dropdown .dropdown-list .dropdown-item .dropdown-list-image .status-indicator { - background-color: #eaecf4; - height: .75rem; - width: .75rem; - border-radius: 100%; - position: absolute; - bottom: 0; - right: 0; - border: .125rem solid #fff -} - -.dropdown .dropdown-list .dropdown-item .text-truncate { - max-width: 10rem -} - -.dropdown .dropdown-list .dropdown-item:active { - background-color: #eaecf4; - color: #3a3b45 -} - -@media (min-width:576px) { - .dropdown { - position: relative - } - .dropdown .dropdown-menu { - width: auto; - right: 0 - } - .dropdown-list { - width: 20rem!important - } - .dropdown-list .dropdown-item .text-truncate { - max-width: 13.375rem - } -} - -.sidebar { - width: 6.5rem; - min-height: 100vh -} - -.sidebar .nav-item { - position: relative -} - -.sidebar .nav-item:last-child { - margin-bottom: 1rem -} - -.sidebar .nav-item .nav-link { - text-align: center; - padding: .75rem 1rem; - width: 6.5rem; - font-size: .65rem -} - -.sidebar .nav-item .nav-link span { - display: block -} - -.sidebar .nav-item .nav-link i { - font-size: 1rem -} - -.sidebar .nav-item .nav-link.active { - font-weight: 700 -} - -.sidebar .nav-item .collapse { - position: absolute; - left: 7.25rem; - z-index: 1; - top: 2px -} - -.sidebar .nav-item .collapse .collapse-inner { - border-radius: .35rem; - box-shadow: 0 .15rem 1.75rem 0 rgba(58, 59, 69, .15) -} - -.sidebar .nav-item .collapsing { - display: none; - transition: none -} - -.sidebar .nav-item .collapse .collapse-inner, -.sidebar .nav-item .collapsing .collapse-inner { - padding: .5rem 0; - min-width: 10rem; - font-size: .85rem; - margin: 0 0 1rem -} - -.sidebar .nav-item .collapse .collapse-inner .collapse-header, -.sidebar .nav-item .collapsing .collapse-inner .collapse-header { - margin: 0; - white-space: nowrap; - padding: .5rem 1.5rem; - text-transform: uppercase; - font-weight: 800; - font-size: .65rem; - color: #b7b9cc -} - -.sidebar .nav-item .collapse .collapse-inner .collapse-item, -.sidebar .nav-item .collapsing .collapse-inner .collapse-item { - padding: .5rem 1rem; - margin: 0 .5rem; - display: block; - color: #3a3b45; - text-decoration: none; - border-radius: .35rem; - white-space: nowrap -} - -.sidebar .nav-item .collapse .collapse-inner .collapse-item:hover, -.sidebar .nav-item .collapsing .collapse-inner .collapse-item:hover { - background-color: #eaecf4 -} - -.sidebar .nav-item .collapse .collapse-inner .collapse-item:active, -.sidebar .nav-item .collapsing .collapse-inner .collapse-item:active { - background-color: #dddfeb -} - -.sidebar .nav-item .collapse .collapse-inner .collapse-item.active, -.sidebar .nav-item .collapsing .collapse-inner .collapse-item.active { - color: #4e73df; - font-weight: 700 -} - -.sidebar #sidebarToggle { - width: 2.5rem; - height: 2.5rem; - text-align: center; - margin-bottom: 1rem; - cursor: pointer -} - -.sidebar #sidebarToggle:after { - font-weight: 900; - content: "\f104"; - font-family: Font Awesome\ 5 Free; - margin-right: .1rem -} - -.sidebar #sidebarToggle:hover { - text-decoration: none -} - -.sidebar #sidebarToggle:focus { - outline: none -} - -.sidebar.toggled { - width: 0!important; - overflow: hidden -} - -.sidebar.toggled #sidebarToggle:after { - content: "\f105"; - font-family: Font Awesome\ 5 Free; - margin-left: .25rem -} - -.sidebar .sidebar-brand { - height: 4.375rem; - text-decoration: none; - font-size: 1rem; - font-weight: 800; - padding: 1.5rem 1rem; - text-align: center; - text-transform: uppercase; - letter-spacing: .05rem; - z-index: 1 -} - -.sidebar .sidebar-brand .sidebar-brand-icon i { - font-size: 2rem -} - -.sidebar .sidebar-brand .sidebar-brand-text { - display: none -} - -.sidebar hr.sidebar-divider { - margin: 0 1rem 1rem -} - -.sidebar .sidebar-heading { - text-align: center; - padding: 0 1rem; - font-weight: 800; - font-size: .65rem -} - -@media (min-width:768px) { - .sidebar { - width: 14rem!important - } - .sidebar .nav-item .collapse { - position: relative; - left: 0; - z-index: 1; - top: 0; - -webkit-animation: none; - animation: none - } - .sidebar .nav-item .collapse .collapse-inner { - border-radius: 0; - box-shadow: none - } - .sidebar .nav-item .collapsing { - display: block; - transition: height .15s ease - } - .sidebar .nav-item .collapse, - .sidebar .nav-item .collapsing { - margin: 0 1rem - } - .sidebar .nav-item .nav-link { - display: block; - width: 100%; - text-align: left; - padding: 1rem; - width: 14rem; - font-size: .85rem - } - .sidebar .nav-item .nav-link i { - font-size: .85rem; - margin-right: .25rem - } - .sidebar .nav-item .nav-link span { - display: inline - } - .sidebar .nav-item .nav-link[data-toggle=collapse]:after { - width: 1rem; - text-align: center; - float: right; - vertical-align: 0; - border: 0; - font-weight: 900; - content: "\f107"; - font-family: Font Awesome\ 5 Free - } - .sidebar .nav-item .nav-link[data-toggle=collapse].collapsed:after { - content: "\f105" - } - .sidebar .sidebar-brand .sidebar-brand-icon i { - font-size: 2rem - } - .sidebar .sidebar-brand .sidebar-brand-text { - display: inline - } - .sidebar .sidebar-heading { - text-align: left - } - .sidebar.toggled { - overflow: visible; - width: 6.5rem!important - } - .sidebar.toggled .nav-item .collapse { - position: absolute; - left: 7.25rem; - z-index: 1; - top: 2px; - -webkit-animation-name: growIn; - animation-name: growIn; - -webkit-animation-duration: .2s; - animation-duration: .2s; - -webkit-animation-timing-function: transform cubic-bezier(.18, 1.25, .4, 1), opacity cubic-bezier(0, 1, .4, 1); - animation-timing-function: transform cubic-bezier(.18, 1.25, .4, 1), opacity cubic-bezier(0, 1, .4, 1) - } - .sidebar.toggled .nav-item .collapse .collapse-inner { - box-shadow: 0 .15rem 1.75rem 0 rgba(58, 59, 69, .15); - border-radius: .35rem - } - .sidebar.toggled .nav-item .collapsing { - display: none; - transition: none - } - .sidebar.toggled .nav-item .collapse, - .sidebar.toggled .nav-item .collapsing { - margin: 0 - } - .sidebar.toggled .nav-item:last-child { - margin-bottom: 1rem - } - .sidebar.toggled .nav-item .nav-link { - text-align: center; - padding: .75rem 1rem; - width: 6.5rem; - font-size: .65rem - } - .sidebar.toggled .nav-item .nav-link span { - display: block - } - .sidebar.toggled .nav-item .nav-link i { - margin-right: 0 - } - .sidebar.toggled .nav-item .nav-link[data-toggle=collapse]:after { - display: none - } - .sidebar.toggled .sidebar-brand .sidebar-brand-icon i { - font-size: 2rem - } - .sidebar.toggled .sidebar-brand .sidebar-brand-text { - display: none - } - .sidebar.toggled .sidebar-heading { - text-align: center - } -} - -.sidebar-light .sidebar-brand { - color: #6e707e -} - -.sidebar-light hr.sidebar-divider { - border-top: 1px solid #eaecf4 -} - -.sidebar-light .sidebar-heading { - color: #b7b9cc -} - -.sidebar-light .nav-item .nav-link { - color: #858796 -} - -.sidebar-light .nav-item .nav-link i { - color: #d1d3e2 -} - -.sidebar-light .nav-item .nav-link:active, -.sidebar-light .nav-item .nav-link:active i, -.sidebar-light .nav-item .nav-link:focus, -.sidebar-light .nav-item .nav-link:focus i, -.sidebar-light .nav-item .nav-link:hover, -.sidebar-light .nav-item .nav-link:hover i { - color: #6e707e -} - -.sidebar-light .nav-item .nav-link[data-toggle=collapse]:after { - color: #b7b9cc -} - -.sidebar-light .nav-item.active .nav-link, -.sidebar-light .nav-item.active .nav-link i { - color: #6e707e -} - -.sidebar-light #sidebarToggle { - background-color: #eaecf4 -} - -.sidebar-light #sidebarToggle:after { - color: #b7b9cc -} - -.sidebar-light #sidebarToggle:hover { - background-color: #dddfeb -} - -.sidebar-dark .sidebar-brand { - color: #fff -} - -.sidebar-dark hr.sidebar-divider { - border-top: 1px solid hsla(0, 0%, 100%, .15) -} - -.sidebar-dark .sidebar-heading { - color: hsla(0, 0%, 100%, .4) -} - -.sidebar-dark .nav-item .nav-link { - color: hsla(0, 0%, 100%, .8) -} - -.sidebar-dark .nav-item .nav-link i { - color: hsla(0, 0%, 100%, .3) -} - -.sidebar-dark .nav-item .nav-link.active, -.sidebar-dark .nav-item .nav-link.active i, -.sidebar-dark .nav-item .nav-link:active, -.sidebar-dark .nav-item .nav-link:active i, -.sidebar-dark .nav-item .nav-link:focus, -.sidebar-dark .nav-item .nav-link:focus i, -.sidebar-dark .nav-item .nav-link:hover, -.sidebar-dark .nav-item .nav-link:hover i { - color: #fff -} - -.sidebar-dark .nav-item .nav-link[data-toggle=collapse]:after { - color: hsla(0, 0%, 100%, .5) -} - -.sidebar-dark #sidebarToggle { - background-color: hsla(0, 0%, 100%, .2) -} - -.sidebar-dark #sidebarToggle:after { - color: hsla(0, 0%, 100%, .5) -} - -.sidebar-dark #sidebarToggle:hover { - background-color: hsla(0, 0%, 100%, .25) -} - -.sidebar-dark.toggled #sidebarToggle:after { - color: hsla(0, 0%, 100%, .5) -} - -.btn-circle { - border-radius: 100%; - height: 2.5rem; - width: 2.5rem; - font-size: 1rem; - display: inline-flex; - align-items: center; - justify-content: center -} - -.btn-circle.btn-sm, -.btn-group-sm>.btn-circle.btn { - height: 1.8rem; - width: 1.8rem; - font-size: .75rem -} - -.btn-circle.btn-lg, -.btn-group-lg>.btn-circle.btn { - height: 3.5rem; - width: 3.5rem; - font-size: 1.35rem -} - -.btn-icon-split { - padding: 0; - overflow: hidden; - display: inline-flex; - align-items: stretch; - justify-content: center -} - -.btn-icon-split .icon { - background: rgba(0, 0, 0, .15) -} - -.btn-icon-split .icon, -.btn-icon-split .text { - display: inline-block; - padding: .375rem .75rem -} - -.btn-group-sm>.btn-icon-split.btn .icon, -.btn-group-sm>.btn-icon-split.btn .text, -.btn-icon-split.btn-sm .icon, -.btn-icon-split.btn-sm .text { - padding: .25rem .5rem -} - -.btn-group-lg>.btn-icon-split.btn .icon, -.btn-group-lg>.btn-icon-split.btn .text, -.btn-icon-split.btn-lg .icon, -.btn-icon-split.btn-lg .text { - padding: .5rem 1rem -} - -.card .card-header .dropdown { - line-height: 1 -} - -.card .card-header .dropdown .dropdown-menu { - line-height: 1.5 -} - -.card .card-header[data-toggle=collapse] { - text-decoration: none; - position: relative; - padding: .75rem 3.25rem .75rem 1.25rem -} - -.card .card-header[data-toggle=collapse]:after { - position: absolute; - right: 0; - top: 0; - padding-right: 1.725rem; - line-height: 51px; - font-weight: 900; - content: "\f107"; - font-family: Font Awesome\ 5 Free; - color: #d1d3e2 -} - -.card .card-header[data-toggle=collapse].collapsed { - border-radius: .35rem -} - -.card .card-header[data-toggle=collapse].collapsed:after { - content: "\f105" -} - -.chart-area { - position: relative; - height: 10rem; - width: 100% -} - -@media (min-width:768px) { - .chart-area { - height: 20rem - } -} - -.chart-bar { - position: relative; - height: 10rem; - width: 100% -} - -@media (min-width:768px) { - .chart-bar { - height: 20rem - } -} - -.chart-pie { - position: relative; - height: 15rem; - width: 100% -} - -@media (min-width:768px) { - .chart-pie { - height: calc(20rem - 43px)!important - } -} - -.bg-login-image, -.bg-password-image, -.bg-register-image { - background-position: 50%; - background-size: cover -} - -form.user .custom-checkbox.small label { - line-height: 1.5rem -} - -form.user .form-control-user { - font-size: .8rem; - border-radius: 10rem; - padding: 1.5rem 1rem -} - -form.user .btn-user { - font-size: .8rem; - border-radius: 10rem; - padding: .75rem 1rem -} - -.btn-google { - color: #fff; - background-color: #ea4335; - border-color: #fff -} - -.btn-google.focus, -.btn-google:focus, -.btn-google:hover { - color: #fff; - background-color: #e12717; - border-color: #e6e6e6 -} - -.btn-google.focus, -.btn-google:focus { - box-shadow: 0 0 0 .2rem hsla(0, 0%, 100%, .5) -} - -.btn-google.disabled, -.btn-google:disabled { - color: #fff; - background-color: #ea4335; - border-color: #fff -} - -.btn-google:not(:disabled):not(.disabled).active, -.btn-google:not(:disabled):not(.disabled):active, -.show>.btn-google.dropdown-toggle { - color: #fff; - background-color: #d62516; - border-color: #dfdfdf -} - -.btn-google:not(:disabled):not(.disabled).active:focus, -.btn-google:not(:disabled):not(.disabled):active:focus, -.show>.btn-google.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem hsla(0, 0%, 100%, .5) -} - -.btn-facebook { - color: #fff; - background-color: #3b5998; - border-color: #fff -} - -.btn-facebook.focus, -.btn-facebook:focus, -.btn-facebook:hover { - color: #fff; - background-color: #30497c; - border-color: #e6e6e6 -} - -.btn-facebook.focus, -.btn-facebook:focus { - box-shadow: 0 0 0 .2rem hsla(0, 0%, 100%, .5) -} - -.btn-facebook.disabled, -.btn-facebook:disabled { - color: #fff; - background-color: #3b5998; - border-color: #fff -} - -.btn-facebook:not(:disabled):not(.disabled).active, -.btn-facebook:not(:disabled):not(.disabled):active, -.show>.btn-facebook.dropdown-toggle { - color: #fff; - background-color: #2d4373; - border-color: #dfdfdf -} - -.btn-facebook:not(:disabled):not(.disabled).active:focus, -.btn-facebook:not(:disabled):not(.disabled):active:focus, -.show>.btn-facebook.dropdown-toggle:focus { - box-shadow: 0 0 0 .2rem hsla(0, 0%, 100%, .5) -} - -.error { - color: #5a5c69; - font-size: 7rem; - position: relative; - line-height: 1; - width: 12.5rem -} - -@-webkit-keyframes noise-anim { - 0% { - clip: rect(25px, 9999px, 23px, 0) - } - 5% { - clip: rect(43px, 9999px, 83px, 0) - } - 10% { - clip: rect(45px, 9999px, 27px, 0) - } - 15% { - clip: rect(12px, 9999px, 17px, 0) - } - 20% { - clip: rect(12px, 9999px, 77px, 0) - } - 25% { - clip: rect(54px, 9999px, 69px, 0) - } - 30% { - clip: rect(24px, 9999px, 77px, 0) - } - 35% { - clip: rect(91px, 9999px, 9px, 0) - } - 40% { - clip: rect(43px, 9999px, 81px, 0) - } - 45% { - clip: rect(43px, 9999px, 41px, 0) - } - 50% { - clip: rect(93px, 9999px, 56px, 0) - } - 55% { - clip: rect(72px, 9999px, 38px, 0) - } - 60% { - clip: rect(81px, 9999px, 16px, 0) - } - 65% { - clip: rect(83px, 9999px, 94px, 0) - } - 70% { - clip: rect(45px, 9999px, 59px, 0) - } - 75% { - clip: rect(62px, 9999px, 93px, 0) - } - 80% { - clip: rect(82px, 9999px, 10px, 0) - } - 85% { - clip: rect(97px, 9999px, 36px, 0) - } - 90% { - clip: rect(39px, 9999px, 100px, 0) - } - 95% { - clip: rect(99px, 9999px, 46px, 0) - } - to { - clip: rect(94px, 9999px, 1px, 0) - } -} - -@keyframes noise-anim { - 0% { - clip: rect(25px, 9999px, 23px, 0) - } - 5% { - clip: rect(43px, 9999px, 83px, 0) - } - 10% { - clip: rect(45px, 9999px, 27px, 0) - } - 15% { - clip: rect(12px, 9999px, 17px, 0) - } - 20% { - clip: rect(12px, 9999px, 77px, 0) - } - 25% { - clip: rect(54px, 9999px, 69px, 0) - } - 30% { - clip: rect(24px, 9999px, 77px, 0) - } - 35% { - clip: rect(91px, 9999px, 9px, 0) - } - 40% { - clip: rect(43px, 9999px, 81px, 0) - } - 45% { - clip: rect(43px, 9999px, 41px, 0) - } - 50% { - clip: rect(93px, 9999px, 56px, 0) - } - 55% { - clip: rect(72px, 9999px, 38px, 0) - } - 60% { - clip: rect(81px, 9999px, 16px, 0) - } - 65% { - clip: rect(83px, 9999px, 94px, 0) - } - 70% { - clip: rect(45px, 9999px, 59px, 0) - } - 75% { - clip: rect(62px, 9999px, 93px, 0) - } - 80% { - clip: rect(82px, 9999px, 10px, 0) - } - 85% { - clip: rect(97px, 9999px, 36px, 0) - } - 90% { - clip: rect(39px, 9999px, 100px, 0) - } - 95% { - clip: rect(99px, 9999px, 46px, 0) - } - to { - clip: rect(94px, 9999px, 1px, 0) - } -} - -.error:after { - content: attr(data-text); - position: absolute; - left: 2px; - text-shadow: -1px 0 #e74a3b; - top: 0; - color: #5a5c69; - background: #f8f9fc; - overflow: hidden; - clip: rect(0, 900px, 0, 0); - animation: noise-anim 2s linear infinite alternate-reverse -} - -@-webkit-keyframes noise-anim-2 { - 0% { - clip: rect(61px, 9999px, 20px, 0) - } - 5% { - clip: rect(76px, 9999px, 34px, 0) - } - 10% { - clip: rect(6px, 9999px, 72px, 0) - } - 15% { - clip: rect(59px, 9999px, 75px, 0) - } - 20% { - clip: rect(99px, 9999px, 35px, 0) - } - 25% { - clip: rect(22px, 9999px, 53px, 0) - } - 30% { - clip: rect(59px, 9999px, 64px, 0) - } - 35% { - clip: rect(10px, 9999px, 82px, 0) - } - 40% { - clip: rect(99px, 9999px, 79px, 0) - } - 45% { - clip: rect(29px, 9999px, 45px, 0) - } - 50% { - clip: rect(37px, 9999px, 44px, 0) - } - 55% { - clip: rect(30px, 9999px, 31px, 0) - } - 60% { - clip: rect(24px, 9999px, 43px, 0) - } - 65% { - clip: rect(71px, 9999px, 49px, 0) - } - 70% { - clip: rect(26px, 9999px, 24px, 0) - } - 75% { - clip: rect(41px, 9999px, 71px, 0) - } - 80% { - clip: rect(62px, 9999px, 58px, 0) - } - 85% { - clip: rect(90px, 9999px, 14px, 0) - } - 90% { - clip: rect(68px, 9999px, 56px, 0) - } - 95% { - clip: rect(24px, 9999px, 10px, 0) - } - to { - clip: rect(52px, 9999px, 72px, 0) - } -} - -@keyframes noise-anim-2 { - 0% { - clip: rect(61px, 9999px, 20px, 0) - } - 5% { - clip: rect(76px, 9999px, 34px, 0) - } - 10% { - clip: rect(6px, 9999px, 72px, 0) - } - 15% { - clip: rect(59px, 9999px, 75px, 0) - } - 20% { - clip: rect(99px, 9999px, 35px, 0) - } - 25% { - clip: rect(22px, 9999px, 53px, 0) - } - 30% { - clip: rect(59px, 9999px, 64px, 0) - } - 35% { - clip: rect(10px, 9999px, 82px, 0) - } - 40% { - clip: rect(99px, 9999px, 79px, 0) - } - 45% { - clip: rect(29px, 9999px, 45px, 0) - } - 50% { - clip: rect(37px, 9999px, 44px, 0) - } - 55% { - clip: rect(30px, 9999px, 31px, 0) - } - 60% { - clip: rect(24px, 9999px, 43px, 0) - } - 65% { - clip: rect(71px, 9999px, 49px, 0) - } - 70% { - clip: rect(26px, 9999px, 24px, 0) - } - 75% { - clip: rect(41px, 9999px, 71px, 0) - } - 80% { - clip: rect(62px, 9999px, 58px, 0) - } - 85% { - clip: rect(90px, 9999px, 14px, 0) - } - 90% { - clip: rect(68px, 9999px, 56px, 0) - } - 95% { - clip: rect(24px, 9999px, 10px, 0) - } - to { - clip: rect(52px, 9999px, 72px, 0) - } -} - -.error:before { - content: attr(data-text); - position: absolute; - left: -2px; - text-shadow: 1px 0 #4e73df; - top: 0; - color: #5a5c69; - background: #f8f9fc; - overflow: hidden; - clip: rect(0, 900px, 0, 0); - animation: noise-anim-2 3s linear infinite alternate-reverse -} - -footer.sticky-footer { - padding: 2rem 0; - flex-shrink: 0 -} - -footer.sticky-footer .copyright { - line-height: 1; - font-size: .8rem -} - -body.sidebar-toggled footer.sticky-footer { - width: 100% -} \ No newline at end of file diff --git a/webapp/app/views/static/login/js/bootstrap.min.js b/webapp/app/views/static/login/js/bootstrap.min.js deleted file mode 100644 index 3af2dc3..0000000 --- a/webapp/app/views/static/login/js/bootstrap.min.js +++ /dev/null @@ -1,7 +0,0 @@ -/*! - * Bootstrap v4.6.1 (https://getbootstrap.com/) - * Copyright 2011-2021 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?e(exports,require("jquery")):"function"==typeof define&&define.amd?define(["exports","jquery"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap={},t.jQuery)}(this,(function(t,e){"use strict";function n(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var i=n(e);function o(t,e){for(var n=0;n=4)throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}};u.jQueryDetection(),i.default.fn.emulateTransitionEnd=function(t){var e=this,n=!1;return i.default(this).one(u.TRANSITION_END,(function(){n=!0})),setTimeout((function(){n||u.triggerTransitionEnd(e)}),t),this},i.default.event.special[u.TRANSITION_END]={bindType:l,delegateType:l,handle:function(t){if(i.default(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}};var f="bs.alert",d=i.default.fn.alert,c=function(){function t(t){this._element=t}var e=t.prototype;return e.close=function(t){var e=this._element;t&&(e=this._getRootElement(t)),this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},e.dispose=function(){i.default.removeData(this._element,f),this._element=null},e._getRootElement=function(t){var e=u.getSelectorFromElement(t),n=!1;return e&&(n=document.querySelector(e)),n||(n=i.default(t).closest(".alert")[0]),n},e._triggerCloseEvent=function(t){var e=i.default.Event("close.bs.alert");return i.default(t).trigger(e),e},e._removeElement=function(t){var e=this;if(i.default(t).removeClass("show"),i.default(t).hasClass("fade")){var n=u.getTransitionDurationFromElement(t);i.default(t).one(u.TRANSITION_END,(function(n){return e._destroyElement(t,n)})).emulateTransitionEnd(n)}else this._destroyElement(t)},e._destroyElement=function(t){i.default(t).detach().trigger("closed.bs.alert").remove()},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data(f);o||(o=new t(this),n.data(f,o)),"close"===e&&o[e](this)}))},t._handleDismiss=function(t){return function(e){e&&e.preventDefault(),t.close(this)}},r(t,null,[{key:"VERSION",get:function(){return"4.6.1"}}]),t}();i.default(document).on("click.bs.alert.data-api",'[data-dismiss="alert"]',c._handleDismiss(new c)),i.default.fn.alert=c._jQueryInterface,i.default.fn.alert.Constructor=c,i.default.fn.alert.noConflict=function(){return i.default.fn.alert=d,c._jQueryInterface};var h="bs.button",p=i.default.fn.button,m="active",g='[data-toggle^="button"]',_='input:not([type="hidden"])',v=".btn",b=function(){function t(t){this._element=t,this.shouldAvoidTriggerChange=!1}var e=t.prototype;return e.toggle=function(){var t=!0,e=!0,n=i.default(this._element).closest('[data-toggle="buttons"]')[0];if(n){var o=this._element.querySelector(_);if(o){if("radio"===o.type)if(o.checked&&this._element.classList.contains(m))t=!1;else{var r=n.querySelector(".active");r&&i.default(r).removeClass(m)}t&&("checkbox"!==o.type&&"radio"!==o.type||(o.checked=!this._element.classList.contains(m)),this.shouldAvoidTriggerChange||i.default(o).trigger("change")),o.focus(),e=!1}}this._element.hasAttribute("disabled")||this._element.classList.contains("disabled")||(e&&this._element.setAttribute("aria-pressed",!this._element.classList.contains(m)),t&&i.default(this._element).toggleClass(m))},e.dispose=function(){i.default.removeData(this._element,h),this._element=null},t._jQueryInterface=function(e,n){return this.each((function(){var o=i.default(this),r=o.data(h);r||(r=new t(this),o.data(h,r)),r.shouldAvoidTriggerChange=n,"toggle"===e&&r[e]()}))},r(t,null,[{key:"VERSION",get:function(){return"4.6.1"}}]),t}();i.default(document).on("click.bs.button.data-api",g,(function(t){var e=t.target,n=e;if(i.default(e).hasClass("btn")||(e=i.default(e).closest(v)[0]),!e||e.hasAttribute("disabled")||e.classList.contains("disabled"))t.preventDefault();else{var o=e.querySelector(_);if(o&&(o.hasAttribute("disabled")||o.classList.contains("disabled")))return void t.preventDefault();"INPUT"!==n.tagName&&"LABEL"===e.tagName||b._jQueryInterface.call(i.default(e),"toggle","INPUT"===n.tagName)}})).on("focus.bs.button.data-api blur.bs.button.data-api",g,(function(t){var e=i.default(t.target).closest(v)[0];i.default(e).toggleClass("focus",/^focus(in)?$/.test(t.type))})),i.default(window).on("load.bs.button.data-api",(function(){for(var t=[].slice.call(document.querySelectorAll('[data-toggle="buttons"] .btn')),e=0,n=t.length;e0,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners()}var e=t.prototype;return e.next=function(){this._isSliding||this._slide(C)},e.nextWhenVisible=function(){var t=i.default(this._element);!document.hidden&&t.is(":visible")&&"hidden"!==t.css("visibility")&&this.next()},e.prev=function(){this._isSliding||this._slide(S)},e.pause=function(t){t||(this._isPaused=!0),this._element.querySelector(".carousel-item-next, .carousel-item-prev")&&(u.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},e.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},e.to=function(t){var e=this;this._activeElement=this._element.querySelector(D);var n=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)i.default(this._element).one(N,(function(){return e.to(t)}));else{if(n===t)return this.pause(),void this.cycle();var o=t>n?C:S;this._slide(o,this._items[t])}},e.dispose=function(){i.default(this._element).off(".bs.carousel"),i.default.removeData(this._element,E),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},e._getConfig=function(t){return t=a({},A,t),u.typeCheckConfig(y,t,k),t},e._handleSwipe=function(){var t=Math.abs(this.touchDeltaX);if(!(t<=40)){var e=t/this.touchDeltaX;this.touchDeltaX=0,e>0&&this.prev(),e<0&&this.next()}},e._addEventListeners=function(){var t=this;this._config.keyboard&&i.default(this._element).on("keydown.bs.carousel",(function(e){return t._keydown(e)})),"hover"===this._config.pause&&i.default(this._element).on("mouseenter.bs.carousel",(function(e){return t.pause(e)})).on("mouseleave.bs.carousel",(function(e){return t.cycle(e)})),this._config.touch&&this._addTouchEventListeners()},e._addTouchEventListeners=function(){var t=this;if(this._touchSupported){var e=function(e){t._pointerEvent&&I[e.originalEvent.pointerType.toUpperCase()]?t.touchStartX=e.originalEvent.clientX:t._pointerEvent||(t.touchStartX=e.originalEvent.touches[0].clientX)},n=function(e){t._pointerEvent&&I[e.originalEvent.pointerType.toUpperCase()]&&(t.touchDeltaX=e.originalEvent.clientX-t.touchStartX),t._handleSwipe(),"hover"===t._config.pause&&(t.pause(),t.touchTimeout&&clearTimeout(t.touchTimeout),t.touchTimeout=setTimeout((function(e){return t.cycle(e)}),500+t._config.interval))};i.default(this._element.querySelectorAll(".carousel-item img")).on("dragstart.bs.carousel",(function(t){return t.preventDefault()})),this._pointerEvent?(i.default(this._element).on("pointerdown.bs.carousel",(function(t){return e(t)})),i.default(this._element).on("pointerup.bs.carousel",(function(t){return n(t)})),this._element.classList.add("pointer-event")):(i.default(this._element).on("touchstart.bs.carousel",(function(t){return e(t)})),i.default(this._element).on("touchmove.bs.carousel",(function(e){return function(e){t.touchDeltaX=e.originalEvent.touches&&e.originalEvent.touches.length>1?0:e.originalEvent.touches[0].clientX-t.touchStartX}(e)})),i.default(this._element).on("touchend.bs.carousel",(function(t){return n(t)})))}},e._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next()}},e._getItemIndex=function(t){return this._items=t&&t.parentNode?[].slice.call(t.parentNode.querySelectorAll(".carousel-item")):[],this._items.indexOf(t)},e._getItemByDirection=function(t,e){var n=t===C,i=t===S,o=this._getItemIndex(e),r=this._items.length-1;if((i&&0===o||n&&o===r)&&!this._config.wrap)return e;var a=(o+(t===S?-1:1))%this._items.length;return-1===a?this._items[this._items.length-1]:this._items[a]},e._triggerSlideEvent=function(t,e){var n=this._getItemIndex(t),o=this._getItemIndex(this._element.querySelector(D)),r=i.default.Event("slide.bs.carousel",{relatedTarget:t,direction:e,from:o,to:n});return i.default(this._element).trigger(r),r},e._setActiveIndicatorElement=function(t){if(this._indicatorsElement){var e=[].slice.call(this._indicatorsElement.querySelectorAll(".active"));i.default(e).removeClass(T);var n=this._indicatorsElement.children[this._getItemIndex(t)];n&&i.default(n).addClass(T)}},e._updateInterval=function(){var t=this._activeElement||this._element.querySelector(D);if(t){var e=parseInt(t.getAttribute("data-interval"),10);e?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=e):this._config.interval=this._config.defaultInterval||this._config.interval}},e._slide=function(t,e){var n,o,r,a=this,s=this._element.querySelector(D),l=this._getItemIndex(s),f=e||s&&this._getItemByDirection(t,s),d=this._getItemIndex(f),c=Boolean(this._interval);if(t===C?(n="carousel-item-left",o="carousel-item-next",r="left"):(n="carousel-item-right",o="carousel-item-prev",r="right"),f&&i.default(f).hasClass(T))this._isSliding=!1;else if(!this._triggerSlideEvent(f,r).isDefaultPrevented()&&s&&f){this._isSliding=!0,c&&this.pause(),this._setActiveIndicatorElement(f),this._activeElement=f;var h=i.default.Event(N,{relatedTarget:f,direction:r,from:l,to:d});if(i.default(this._element).hasClass("slide")){i.default(f).addClass(o),u.reflow(f),i.default(s).addClass(n),i.default(f).addClass(n);var p=u.getTransitionDurationFromElement(s);i.default(s).one(u.TRANSITION_END,(function(){i.default(f).removeClass(n+" "+o).addClass(T),i.default(s).removeClass("active "+o+" "+n),a._isSliding=!1,setTimeout((function(){return i.default(a._element).trigger(h)}),0)})).emulateTransitionEnd(p)}else i.default(s).removeClass(T),i.default(f).addClass(T),this._isSliding=!1,i.default(this._element).trigger(h);c&&this.cycle()}},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this).data(E),o=a({},A,i.default(this).data());"object"==typeof e&&(o=a({},o,e));var r="string"==typeof e?e:o.slide;if(n||(n=new t(this,o),i.default(this).data(E,n)),"number"==typeof e)n.to(e);else if("string"==typeof r){if("undefined"==typeof n[r])throw new TypeError('No method named "'+r+'"');n[r]()}else o.interval&&o.ride&&(n.pause(),n.cycle())}))},t._dataApiClickHandler=function(e){var n=u.getSelectorFromElement(this);if(n){var o=i.default(n)[0];if(o&&i.default(o).hasClass("carousel")){var r=a({},i.default(o).data(),i.default(this).data()),s=this.getAttribute("data-slide-to");s&&(r.interval=!1),t._jQueryInterface.call(i.default(o),r),s&&i.default(o).data(E).to(s),e.preventDefault()}}},r(t,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"Default",get:function(){return A}}]),t}();i.default(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",O._dataApiClickHandler),i.default(window).on("load.bs.carousel.data-api",(function(){for(var t=[].slice.call(document.querySelectorAll('[data-ride="carousel"]')),e=0,n=t.length;e0&&(this._selector=a,this._triggerArray.push(r))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var e=t.prototype;return e.toggle=function(){i.default(this._element).hasClass(P)?this.hide():this.show()},e.show=function(){var e,n,o=this;if(!(this._isTransitioning||i.default(this._element).hasClass(P)||(this._parent&&0===(e=[].slice.call(this._parent.querySelectorAll(".show, .collapsing")).filter((function(t){return"string"==typeof o._config.parent?t.getAttribute("data-parent")===o._config.parent:t.classList.contains(F)}))).length&&(e=null),e&&(n=i.default(e).not(this._selector).data(j))&&n._isTransitioning))){var r=i.default.Event("show.bs.collapse");if(i.default(this._element).trigger(r),!r.isDefaultPrevented()){e&&(t._jQueryInterface.call(i.default(e).not(this._selector),"hide"),n||i.default(e).data(j,null));var a=this._getDimension();i.default(this._element).removeClass(F).addClass(R),this._element.style[a]=0,this._triggerArray.length&&i.default(this._triggerArray).removeClass(H).attr("aria-expanded",!0),this.setTransitioning(!0);var s="scroll"+(a[0].toUpperCase()+a.slice(1)),l=u.getTransitionDurationFromElement(this._element);i.default(this._element).one(u.TRANSITION_END,(function(){i.default(o._element).removeClass(R).addClass("collapse show"),o._element.style[a]="",o.setTransitioning(!1),i.default(o._element).trigger("shown.bs.collapse")})).emulateTransitionEnd(l),this._element.style[a]=this._element[s]+"px"}}},e.hide=function(){var t=this;if(!this._isTransitioning&&i.default(this._element).hasClass(P)){var e=i.default.Event("hide.bs.collapse");if(i.default(this._element).trigger(e),!e.isDefaultPrevented()){var n=this._getDimension();this._element.style[n]=this._element.getBoundingClientRect()[n]+"px",u.reflow(this._element),i.default(this._element).addClass(R).removeClass("collapse show");var o=this._triggerArray.length;if(o>0)for(var r=0;r=0)return 1;return 0}(),Y=U&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),V))}};function z(t){return t&&"[object Function]"==={}.toString.call(t)}function K(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function X(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function G(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=K(t),n=e.overflow,i=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+i)?t:G(X(t))}function $(t){return t&&t.referenceNode?t.referenceNode:t}var J=U&&!(!window.MSInputMethodContext||!document.documentMode),Z=U&&/MSIE 10/.test(navigator.userAgent);function tt(t){return 11===t?J:10===t?Z:J||Z}function et(t){if(!t)return document.documentElement;for(var e=tt(10)?document.body:null,n=t.offsetParent||null;n===e&&t.nextElementSibling;)n=(t=t.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&"BODY"!==i&&"HTML"!==i?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===K(n,"position")?et(n):n:t?t.ownerDocument.documentElement:document.documentElement}function nt(t){return null!==t.parentNode?nt(t.parentNode):t}function it(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?t:e,o=n?e:t,r=document.createRange();r.setStart(i,0),r.setEnd(o,0);var a,s,l=r.commonAncestorContainer;if(t!==l&&e!==l||i.contains(o))return"BODY"===(s=(a=l).nodeName)||"HTML"!==s&&et(a.firstElementChild)!==a?et(l):l;var u=nt(t);return u.host?it(u.host,e):it(t,nt(e).host)}function ot(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===e?"scrollTop":"scrollLeft",i=t.nodeName;if("BODY"===i||"HTML"===i){var o=t.ownerDocument.documentElement,r=t.ownerDocument.scrollingElement||o;return r[n]}return t[n]}function rt(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=ot(e,"top"),o=ot(e,"left"),r=n?-1:1;return t.top+=i*r,t.bottom+=i*r,t.left+=o*r,t.right+=o*r,t}function at(t,e){var n="x"===e?"Left":"Top",i="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"])+parseFloat(t["border"+i+"Width"])}function st(t,e,n,i){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],tt(10)?parseInt(n["offset"+t])+parseInt(i["margin"+("Height"===t?"Top":"Left")])+parseInt(i["margin"+("Height"===t?"Bottom":"Right")]):0)}function lt(t){var e=t.body,n=t.documentElement,i=tt(10)&&getComputedStyle(n);return{height:st("Height",e,n,i),width:st("Width",e,n,i)}}var ut=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},ft=function(){function t(t,e){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],i=tt(10),o="HTML"===e.nodeName,r=pt(t),a=pt(e),s=G(t),l=K(e),u=parseFloat(l.borderTopWidth),f=parseFloat(l.borderLeftWidth);n&&o&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var d=ht({top:r.top-a.top-u,left:r.left-a.left-f,width:r.width,height:r.height});if(d.marginTop=0,d.marginLeft=0,!i&&o){var c=parseFloat(l.marginTop),h=parseFloat(l.marginLeft);d.top-=u-c,d.bottom-=u-c,d.left-=f-h,d.right-=f-h,d.marginTop=c,d.marginLeft=h}return(i&&!n?e.contains(s):e===s&&"BODY"!==s.nodeName)&&(d=rt(d,e)),d}function gt(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,i=mt(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),r=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:ot(n),s=e?0:ot(n,"left"),l={top:a-i.top+i.marginTop,left:s-i.left+i.marginLeft,width:o,height:r};return ht(l)}function _t(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===K(t,"position"))return!0;var n=X(t);return!!n&&_t(n)}function vt(t){if(!t||!t.parentElement||tt())return document.documentElement;for(var e=t.parentElement;e&&"none"===K(e,"transform");)e=e.parentElement;return e||document.documentElement}function bt(t,e,n,i){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],r={top:0,left:0},a=o?vt(t):it(t,$(e));if("viewport"===i)r=gt(a,o);else{var s=void 0;"scrollParent"===i?"BODY"===(s=G(X(e))).nodeName&&(s=t.ownerDocument.documentElement):s="window"===i?t.ownerDocument.documentElement:i;var l=mt(s,a,o);if("HTML"!==s.nodeName||_t(a))r=l;else{var u=lt(t.ownerDocument),f=u.height,d=u.width;r.top+=l.top-l.marginTop,r.bottom=f+l.top,r.left+=l.left-l.marginLeft,r.right=d+l.left}}var c="number"==typeof(n=n||0);return r.left+=c?n:n.left||0,r.top+=c?n:n.top||0,r.right-=c?n:n.right||0,r.bottom-=c?n:n.bottom||0,r}function yt(t){return t.width*t.height}function Et(t,e,n,i,o){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var a=bt(n,i,r,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},l=Object.keys(s).map((function(t){return ct({key:t},s[t],{area:yt(s[t])})})).sort((function(t,e){return e.area-t.area})),u=l.filter((function(t){var e=t.width,i=t.height;return e>=n.clientWidth&&i>=n.clientHeight})),f=u.length>0?u[0].key:l[0].key,d=t.split("-")[1];return f+(d?"-"+d:"")}function wt(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=i?vt(e):it(e,$(n));return mt(n,o,i)}function Tt(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),i=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+i,height:t.offsetHeight+n}}function Ct(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function St(t,e,n){n=n.split("-")[0];var i=Tt(t),o={width:i.width,height:i.height},r=-1!==["right","left"].indexOf(n),a=r?"top":"left",s=r?"left":"top",l=r?"height":"width",u=r?"width":"height";return o[a]=e[a]+e[l]/2-i[l]/2,o[s]=n===s?e[s]-i[u]:e[Ct(s)],o}function Nt(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function Dt(t,e,n){return(void 0===n?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex((function(t){return t.name===n}));var i=Nt(t,(function(t){return t.name===n}));return t.indexOf(i)}(t,0,n))).forEach((function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t.function||t.fn;t.enabled&&z(n)&&(e.offsets.popper=ht(e.offsets.popper),e.offsets.reference=ht(e.offsets.reference),e=n(e,t))})),e}function At(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=wt(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=Et(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=St(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=Dt(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function kt(t,e){return t.some((function(t){var n=t.name;return t.enabled&&n===e}))}function It(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),i=0;i1&&void 0!==arguments[1]&&arguments[1],n=Qt.indexOf(t),i=Qt.slice(n+1).concat(Qt.slice(0,n));return e?i.reverse():i}var Ut={placement:"bottom",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],i=e.split("-")[1];if(i){var o=t.offsets,r=o.reference,a=o.popper,s=-1!==["bottom","top"].indexOf(n),l=s?"left":"top",u=s?"width":"height",f={start:dt({},l,r[l]),end:dt({},l,r[l]+r[u]-a[u])};t.offsets.popper=ct({},a,f[i])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n,i=e.offset,o=t.placement,r=t.offsets,a=r.popper,s=r.reference,l=o.split("-")[0];return n=Rt(+i)?[+i,0]:function(t,e,n,i){var o=[0,0],r=-1!==["right","left"].indexOf(i),a=t.split(/(\+|\-)/).map((function(t){return t.trim()})),s=a.indexOf(Nt(a,(function(t){return-1!==t.search(/,|\s/)})));a[s]&&-1===a[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,u=-1!==s?[a.slice(0,s).concat([a[s].split(l)[0]]),[a[s].split(l)[1]].concat(a.slice(s+1))]:[a];return u=u.map((function(t,i){var o=(1===i?!r:r)?"height":"width",a=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)}),[]).map((function(t){return function(t,e,n,i){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),r=+o[1],a=o[2];return r?0===a.indexOf("%")?ht("%p"===a?n:i)[e]/100*r:"vh"===a||"vw"===a?("vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*r:r:t}(t,o,e,n)}))})),u.forEach((function(t,e){t.forEach((function(n,i){Rt(n)&&(o[e]+=n*("-"===t[i-1]?-1:1))}))})),o}(i,a,s,l),"left"===l?(a.top+=n[0],a.left-=n[1]):"right"===l?(a.top+=n[0],a.left+=n[1]):"top"===l?(a.left+=n[0],a.top-=n[1]):"bottom"===l&&(a.left+=n[0],a.top+=n[1]),t.popper=a,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||et(t.instance.popper);t.instance.reference===n&&(n=et(n));var i=It("transform"),o=t.instance.popper.style,r=o.top,a=o.left,s=o[i];o.top="",o.left="",o[i]="";var l=bt(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=r,o.left=a,o[i]=s,e.boundaries=l;var u=e.priority,f=t.offsets.popper,d={primary:function(t){var n=f[t];return f[t]l[t]&&!e.escapeWithReference&&(i=Math.min(f[n],l[t]-("right"===t?f.width:f.height))),dt({},n,i)}};return u.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";f=ct({},f,d[e](t))})),t.offsets.popper=f,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,i=e.reference,o=t.placement.split("-")[0],r=Math.floor,a=-1!==["top","bottom"].indexOf(o),s=a?"right":"bottom",l=a?"left":"top",u=a?"width":"height";return n[s]r(i[s])&&(t.offsets.popper[l]=r(i[s])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!qt(t.instance.modifiers,"arrow","keepTogether"))return t;var i=e.element;if("string"==typeof i){if(!(i=t.instance.popper.querySelector(i)))return t}else if(!t.instance.popper.contains(i))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var o=t.placement.split("-")[0],r=t.offsets,a=r.popper,s=r.reference,l=-1!==["left","right"].indexOf(o),u=l?"height":"width",f=l?"Top":"Left",d=f.toLowerCase(),c=l?"left":"top",h=l?"bottom":"right",p=Tt(i)[u];s[h]-pa[h]&&(t.offsets.popper[d]+=s[d]+p-a[h]),t.offsets.popper=ht(t.offsets.popper);var m=s[d]+s[u]/2-p/2,g=K(t.instance.popper),_=parseFloat(g["margin"+f]),v=parseFloat(g["border"+f+"Width"]),b=m-t.offsets.popper[d]-_-v;return b=Math.max(Math.min(a[u]-p,b),0),t.arrowElement=i,t.offsets.arrow=(dt(n={},d,Math.round(b)),dt(n,c,""),n),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(kt(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=bt(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),i=t.placement.split("-")[0],o=Ct(i),r=t.placement.split("-")[1]||"",a=[];switch(e.behavior){case"flip":a=[i,o];break;case"clockwise":a=Wt(i);break;case"counterclockwise":a=Wt(i,!0);break;default:a=e.behavior}return a.forEach((function(s,l){if(i!==s||a.length===l+1)return t;i=t.placement.split("-")[0],o=Ct(i);var u=t.offsets.popper,f=t.offsets.reference,d=Math.floor,c="left"===i&&d(u.right)>d(f.left)||"right"===i&&d(u.left)d(f.top)||"bottom"===i&&d(u.top)d(n.right),m=d(u.top)d(n.bottom),_="left"===i&&h||"right"===i&&p||"top"===i&&m||"bottom"===i&&g,v=-1!==["top","bottom"].indexOf(i),b=!!e.flipVariations&&(v&&"start"===r&&h||v&&"end"===r&&p||!v&&"start"===r&&m||!v&&"end"===r&&g),y=!!e.flipVariationsByContent&&(v&&"start"===r&&p||v&&"end"===r&&h||!v&&"start"===r&&g||!v&&"end"===r&&m),E=b||y;(c||_||E)&&(t.flipped=!0,(c||_)&&(i=a[l+1]),E&&(r=function(t){return"end"===t?"start":"start"===t?"end":t}(r)),t.placement=i+(r?"-"+r:""),t.offsets.popper=ct({},t.offsets.popper,St(t.instance.popper,t.offsets.reference,t.placement)),t=Dt(t.instance.modifiers,t,"flip"))})),t},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],i=t.offsets,o=i.popper,r=i.reference,a=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return o[a?"left":"top"]=r[n]-(s?o[a?"width":"height"]:0),t.placement=Ct(e),t.offsets.popper=ht(o),t}},hide:{order:800,enabled:!0,fn:function(t){if(!qt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=Nt(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottomn.right||e.top>n.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};ut(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(i.update)},this.update=Y(this.update.bind(this)),this.options=ct({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(ct({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){i.options.modifiers[e]=ct({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return ct({name:t},i.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&z(t.onLoad)&&t.onLoad(i.reference,i.popper,i.options,t,i.state)})),this.update();var r=this.options.eventsEnabled;r&&this.enableEventListeners(),this.state.eventsEnabled=r}return ft(t,[{key:"update",value:function(){return At.call(this)}},{key:"destroy",value:function(){return Ot.call(this)}},{key:"enableEventListeners",value:function(){return Pt.call(this)}},{key:"disableEventListeners",value:function(){return Ft.call(this)}}]),t}();Vt.Utils=("undefined"!=typeof window?window:global).PopperUtils,Vt.placements=Bt,Vt.Defaults=Ut;var Yt=Vt,zt="dropdown",Kt="bs.dropdown",Xt=i.default.fn[zt],Gt=new RegExp("38|40|27"),$t="disabled",Jt="show",Zt="dropdown-menu-right",te="hide.bs.dropdown",ee="hidden.bs.dropdown",ne="click.bs.dropdown.data-api",ie="keydown.bs.dropdown.data-api",oe='[data-toggle="dropdown"]',re=".dropdown-menu",ae={offset:0,flip:!0,boundary:"scrollParent",reference:"toggle",display:"dynamic",popperConfig:null},se={offset:"(number|string|function)",flip:"boolean",boundary:"(string|element)",reference:"(string|element)",display:"string",popperConfig:"(null|object)"},le=function(){function t(t,e){this._element=t,this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}var e=t.prototype;return e.toggle=function(){if(!this._element.disabled&&!i.default(this._element).hasClass($t)){var e=i.default(this._menu).hasClass(Jt);t._clearMenus(),e||this.show(!0)}},e.show=function(e){if(void 0===e&&(e=!1),!(this._element.disabled||i.default(this._element).hasClass($t)||i.default(this._menu).hasClass(Jt))){var n={relatedTarget:this._element},o=i.default.Event("show.bs.dropdown",n),r=t._getParentFromElement(this._element);if(i.default(r).trigger(o),!o.isDefaultPrevented()){if(!this._inNavbar&&e){if("undefined"==typeof Yt)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");var a=this._element;"parent"===this._config.reference?a=r:u.isElement(this._config.reference)&&(a=this._config.reference,"undefined"!=typeof this._config.reference.jquery&&(a=this._config.reference[0])),"scrollParent"!==this._config.boundary&&i.default(r).addClass("position-static"),this._popper=new Yt(a,this._menu,this._getPopperConfig())}"ontouchstart"in document.documentElement&&0===i.default(r).closest(".navbar-nav").length&&i.default(document.body).children().on("mouseover",null,i.default.noop),this._element.focus(),this._element.setAttribute("aria-expanded",!0),i.default(this._menu).toggleClass(Jt),i.default(r).toggleClass(Jt).trigger(i.default.Event("shown.bs.dropdown",n))}}},e.hide=function(){if(!this._element.disabled&&!i.default(this._element).hasClass($t)&&i.default(this._menu).hasClass(Jt)){var e={relatedTarget:this._element},n=i.default.Event(te,e),o=t._getParentFromElement(this._element);i.default(o).trigger(n),n.isDefaultPrevented()||(this._popper&&this._popper.destroy(),i.default(this._menu).toggleClass(Jt),i.default(o).toggleClass(Jt).trigger(i.default.Event(ee,e)))}},e.dispose=function(){i.default.removeData(this._element,Kt),i.default(this._element).off(".bs.dropdown"),this._element=null,this._menu=null,null!==this._popper&&(this._popper.destroy(),this._popper=null)},e.update=function(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()},e._addEventListeners=function(){var t=this;i.default(this._element).on("click.bs.dropdown",(function(e){e.preventDefault(),e.stopPropagation(),t.toggle()}))},e._getConfig=function(t){return t=a({},this.constructor.Default,i.default(this._element).data(),t),u.typeCheckConfig(zt,t,this.constructor.DefaultType),t},e._getMenuElement=function(){if(!this._menu){var e=t._getParentFromElement(this._element);e&&(this._menu=e.querySelector(re))}return this._menu},e._getPlacement=function(){var t=i.default(this._element.parentNode),e="bottom-start";return t.hasClass("dropup")?e=i.default(this._menu).hasClass(Zt)?"top-end":"top-start":t.hasClass("dropright")?e="right-start":t.hasClass("dropleft")?e="left-start":i.default(this._menu).hasClass(Zt)&&(e="bottom-end"),e},e._detectNavbar=function(){return i.default(this._element).closest(".navbar").length>0},e._getOffset=function(){var t=this,e={};return"function"==typeof this._config.offset?e.fn=function(e){return e.offsets=a({},e.offsets,t._config.offset(e.offsets,t._element)),e}:e.offset=this._config.offset,e},e._getPopperConfig=function(){var t={placement:this._getPlacement(),modifiers:{offset:this._getOffset(),flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}};return"static"===this._config.display&&(t.modifiers.applyStyle={enabled:!1}),a({},t,this._config.popperConfig)},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this).data(Kt);if(n||(n=new t(this,"object"==typeof e?e:null),i.default(this).data(Kt,n)),"string"==typeof e){if("undefined"==typeof n[e])throw new TypeError('No method named "'+e+'"');n[e]()}}))},t._clearMenus=function(e){if(!e||3!==e.which&&("keyup"!==e.type||9===e.which))for(var n=[].slice.call(document.querySelectorAll(oe)),o=0,r=n.length;o0&&a--,40===e.which&&adocument.documentElement.clientHeight;n||(this._element.style.overflowY="hidden"),this._element.classList.add(pe);var o=u.getTransitionDurationFromElement(this._dialog);i.default(this._element).off(u.TRANSITION_END),i.default(this._element).one(u.TRANSITION_END,(function(){t._element.classList.remove(pe),n||i.default(t._element).one(u.TRANSITION_END,(function(){t._element.style.overflowY=""})).emulateTransitionEnd(t._element,o)})).emulateTransitionEnd(o),this._element.focus()}},e._showElement=function(t){var e=this,n=i.default(this._element).hasClass(ce),o=this._dialog?this._dialog.querySelector(".modal-body"):null;this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),i.default(this._dialog).hasClass("modal-dialog-scrollable")&&o?o.scrollTop=0:this._element.scrollTop=0,n&&u.reflow(this._element),i.default(this._element).addClass(he),this._config.focus&&this._enforceFocus();var r=i.default.Event("shown.bs.modal",{relatedTarget:t}),a=function(){e._config.focus&&e._element.focus(),e._isTransitioning=!1,i.default(e._element).trigger(r)};if(n){var s=u.getTransitionDurationFromElement(this._dialog);i.default(this._dialog).one(u.TRANSITION_END,a).emulateTransitionEnd(s)}else a()},e._enforceFocus=function(){var t=this;i.default(document).off(_e).on(_e,(function(e){document!==e.target&&t._element!==e.target&&0===i.default(t._element).has(e.target).length&&t._element.focus()}))},e._setEscapeEvent=function(){var t=this;this._isShown?i.default(this._element).on(ye,(function(e){t._config.keyboard&&27===e.which?(e.preventDefault(),t.hide()):t._config.keyboard||27!==e.which||t._triggerBackdropTransition()})):this._isShown||i.default(this._element).off(ye)},e._setResizeEvent=function(){var t=this;this._isShown?i.default(window).on(ve,(function(e){return t.handleUpdate(e)})):i.default(window).off(ve)},e._hideModal=function(){var t=this;this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._showBackdrop((function(){i.default(document.body).removeClass(de),t._resetAdjustments(),t._resetScrollbar(),i.default(t._element).trigger(me)}))},e._removeBackdrop=function(){this._backdrop&&(i.default(this._backdrop).remove(),this._backdrop=null)},e._showBackdrop=function(t){var e=this,n=i.default(this._element).hasClass(ce)?ce:"";if(this._isShown&&this._config.backdrop){if(this._backdrop=document.createElement("div"),this._backdrop.className="modal-backdrop",n&&this._backdrop.classList.add(n),i.default(this._backdrop).appendTo(document.body),i.default(this._element).on(be,(function(t){e._ignoreBackdropClick?e._ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"===e._config.backdrop?e._triggerBackdropTransition():e.hide())})),n&&u.reflow(this._backdrop),i.default(this._backdrop).addClass(he),!t)return;if(!n)return void t();var o=u.getTransitionDurationFromElement(this._backdrop);i.default(this._backdrop).one(u.TRANSITION_END,t).emulateTransitionEnd(o)}else if(!this._isShown&&this._backdrop){i.default(this._backdrop).removeClass(he);var r=function(){e._removeBackdrop(),t&&t()};if(i.default(this._element).hasClass(ce)){var a=u.getTransitionDurationFromElement(this._backdrop);i.default(this._backdrop).one(u.TRANSITION_END,r).emulateTransitionEnd(a)}else r()}else t&&t()},e._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},e._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},e._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=Math.round(t.left+t.right)
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",customClass:"",sanitize:!0,sanitizeFn:null,whiteList:{"*":["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:[]},popperConfig:null},We={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(number|string|function)",container:"(string|element|boolean)",fallbackPlacement:"(string|array)",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",whiteList:"object",popperConfig:"(null|object)"},Ue={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"},Ve=function(){function t(t,e){if("undefined"==typeof Yt)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var e=t.prototype;return e.enable=function(){this._isEnabled=!0},e.disable=function(){this._isEnabled=!1},e.toggleEnabled=function(){this._isEnabled=!this._isEnabled},e.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=i.default(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),i.default(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(i.default(this.getTipElement()).hasClass(Fe))return void this._leave(null,this);this._enter(null,this)}},e.dispose=function(){clearTimeout(this._timeout),i.default.removeData(this.element,this.constructor.DATA_KEY),i.default(this.element).off(this.constructor.EVENT_KEY),i.default(this.element).closest(".modal").off("hide.bs.modal",this._hideModalHandler),this.tip&&i.default(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},e.show=function(){var t=this;if("none"===i.default(this.element).css("display"))throw new Error("Please use show on visible elements");var e=i.default.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){i.default(this.element).trigger(e);var n=u.findShadowRoot(this.element),o=i.default.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(e.isDefaultPrevented()||!o)return;var r=this.getTipElement(),a=u.getUID(this.constructor.NAME);r.setAttribute("id",a),this.element.setAttribute("aria-describedby",a),this.setContent(),this.config.animation&&i.default(r).addClass(Pe);var s="function"==typeof this.config.placement?this.config.placement.call(this,r,this.element):this.config.placement,l=this._getAttachment(s);this.addAttachmentClass(l);var f=this._getContainer();i.default(r).data(this.constructor.DATA_KEY,this),i.default.contains(this.element.ownerDocument.documentElement,this.tip)||i.default(r).appendTo(f),i.default(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new Yt(this.element,r,this._getPopperConfig(l)),i.default(r).addClass(Fe),i.default(r).addClass(this.config.customClass),"ontouchstart"in document.documentElement&&i.default(document.body).children().on("mouseover",null,i.default.noop);var d=function(){t.config.animation&&t._fixTransition();var e=t._hoverState;t._hoverState=null,i.default(t.element).trigger(t.constructor.Event.SHOWN),e===He&&t._leave(null,t)};if(i.default(this.tip).hasClass(Pe)){var c=u.getTransitionDurationFromElement(this.tip);i.default(this.tip).one(u.TRANSITION_END,d).emulateTransitionEnd(c)}else d()}},e.hide=function(t){var e=this,n=this.getTipElement(),o=i.default.Event(this.constructor.Event.HIDE),r=function(){e._hoverState!==Re&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),i.default(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(i.default(this.element).trigger(o),!o.isDefaultPrevented()){if(i.default(n).removeClass(Fe),"ontouchstart"in document.documentElement&&i.default(document.body).children().off("mouseover",null,i.default.noop),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,i.default(this.tip).hasClass(Pe)){var a=u.getTransitionDurationFromElement(n);i.default(n).one(u.TRANSITION_END,r).emulateTransitionEnd(a)}else r();this._hoverState=""}},e.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},e.isWithContent=function(){return Boolean(this.getTitle())},e.addAttachmentClass=function(t){i.default(this.getTipElement()).addClass("bs-tooltip-"+t)},e.getTipElement=function(){return this.tip=this.tip||i.default(this.config.template)[0],this.tip},e.setContent=function(){var t=this.getTipElement();this.setElementContent(i.default(t.querySelectorAll(".tooltip-inner")),this.getTitle()),i.default(t).removeClass("fade show")},e.setElementContent=function(t,e){"object"!=typeof e||!e.nodeType&&!e.jquery?this.config.html?(this.config.sanitize&&(e=ke(e,this.config.whiteList,this.config.sanitizeFn)),t.html(e)):t.text(e):this.config.html?i.default(e).parent().is(t)||t.empty().append(e):t.text(i.default(e).text())},e.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},e._getPopperConfig=function(t){var e=this;return a({},{placement:t,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:".arrow"},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}},this.config.popperConfig)},e._getOffset=function(){var t=this,e={};return"function"==typeof this.config.offset?e.fn=function(e){return e.offsets=a({},e.offsets,t.config.offset(e.offsets,t.element)),e}:e.offset=this.config.offset,e},e._getContainer=function(){return!1===this.config.container?document.body:u.isElement(this.config.container)?i.default(this.config.container):i.default(document).find(this.config.container)},e._getAttachment=function(t){return Be[t.toUpperCase()]},e._setListeners=function(){var t=this;this.config.trigger.split(" ").forEach((function(e){if("click"===e)i.default(t.element).on(t.constructor.Event.CLICK,t.config.selector,(function(e){return t.toggle(e)}));else if("manual"!==e){var n=e===Me?t.constructor.Event.MOUSEENTER:t.constructor.Event.FOCUSIN,o=e===Me?t.constructor.Event.MOUSELEAVE:t.constructor.Event.FOCUSOUT;i.default(t.element).on(n,t.config.selector,(function(e){return t._enter(e)})).on(o,t.config.selector,(function(e){return t._leave(e)}))}})),this._hideModalHandler=function(){t.element&&t.hide()},i.default(this.element).closest(".modal").on("hide.bs.modal",this._hideModalHandler),this.config.selector?this.config=a({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},e._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},e._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||i.default(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),i.default(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?qe:Me]=!0),i.default(e.getTipElement()).hasClass(Fe)||e._hoverState===Re?e._hoverState=Re:(clearTimeout(e._timeout),e._hoverState=Re,e.config.delay&&e.config.delay.show?e._timeout=setTimeout((function(){e._hoverState===Re&&e.show()}),e.config.delay.show):e.show())},e._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||i.default(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),i.default(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?qe:Me]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=He,e.config.delay&&e.config.delay.hide?e._timeout=setTimeout((function(){e._hoverState===He&&e.hide()}),e.config.delay.hide):e.hide())},e._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},e._getConfig=function(t){var e=i.default(this.element).data();return Object.keys(e).forEach((function(t){-1!==Le.indexOf(t)&&delete e[t]})),"number"==typeof(t=a({},this.constructor.Default,e,"object"==typeof t&&t?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()),u.typeCheckConfig(Ie,t,this.constructor.DefaultType),t.sanitize&&(t.template=ke(t.template,t.whiteList,t.sanitizeFn)),t},e._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},e._cleanTipClass=function(){var t=i.default(this.getTipElement()),e=t.attr("class").match(je);null!==e&&e.length&&t.removeClass(e.join(""))},e._handlePopperPlacementChange=function(t){this.tip=t.instance.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},e._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(i.default(t).removeClass(Pe),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data(Oe),r="object"==typeof e&&e;if((o||!/dispose|hide/.test(e))&&(o||(o=new t(this,r),n.data(Oe,o)),"string"==typeof e)){if("undefined"==typeof o[e])throw new TypeError('No method named "'+e+'"');o[e]()}}))},r(t,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"Default",get:function(){return Qe}},{key:"NAME",get:function(){return Ie}},{key:"DATA_KEY",get:function(){return Oe}},{key:"Event",get:function(){return Ue}},{key:"EVENT_KEY",get:function(){return".bs.tooltip"}},{key:"DefaultType",get:function(){return We}}]),t}();i.default.fn.tooltip=Ve._jQueryInterface,i.default.fn.tooltip.Constructor=Ve,i.default.fn.tooltip.noConflict=function(){return i.default.fn.tooltip=xe,Ve._jQueryInterface};var Ye="bs.popover",ze=i.default.fn.popover,Ke=new RegExp("(^|\\s)bs-popover\\S+","g"),Xe=a({},Ve.Default,{placement:"right",trigger:"click",content:"",template:''}),Ge=a({},Ve.DefaultType,{content:"(string|element|function)"}),$e={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"},Je=function(t){var e,n;function o(){return t.apply(this,arguments)||this}n=t,(e=o).prototype=Object.create(n.prototype),e.prototype.constructor=e,s(e,n);var a=o.prototype;return a.isWithContent=function(){return this.getTitle()||this._getContent()},a.addAttachmentClass=function(t){i.default(this.getTipElement()).addClass("bs-popover-"+t)},a.getTipElement=function(){return this.tip=this.tip||i.default(this.config.template)[0],this.tip},a.setContent=function(){var t=i.default(this.getTipElement());this.setElementContent(t.find(".popover-header"),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(".popover-body"),e),t.removeClass("fade show")},a._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},a._cleanTipClass=function(){var t=i.default(this.getTipElement()),e=t.attr("class").match(Ke);null!==e&&e.length>0&&t.removeClass(e.join(""))},o._jQueryInterface=function(t){return this.each((function(){var e=i.default(this).data(Ye),n="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new o(this,n),i.default(this).data(Ye,e)),"string"==typeof t)){if("undefined"==typeof e[t])throw new TypeError('No method named "'+t+'"');e[t]()}}))},r(o,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"Default",get:function(){return Xe}},{key:"NAME",get:function(){return"popover"}},{key:"DATA_KEY",get:function(){return Ye}},{key:"Event",get:function(){return $e}},{key:"EVENT_KEY",get:function(){return".bs.popover"}},{key:"DefaultType",get:function(){return Ge}}]),o}(Ve);i.default.fn.popover=Je._jQueryInterface,i.default.fn.popover.Constructor=Je,i.default.fn.popover.noConflict=function(){return i.default.fn.popover=ze,Je._jQueryInterface};var Ze="scrollspy",tn="bs.scrollspy",en=i.default.fn[Ze],nn="active",on="position",rn=".nav, .list-group",an={offset:10,method:"auto",target:""},sn={offset:"number",method:"string",target:"(string|element)"},ln=function(){function t(t,e){var n=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(e),this._selector=this._config.target+" .nav-link,"+this._config.target+" .list-group-item,"+this._config.target+" .dropdown-item",this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,i.default(this._scrollElement).on("scroll.bs.scrollspy",(function(t){return n._process(t)})),this.refresh(),this._process()}var e=t.prototype;return e.refresh=function(){var t=this,e=this._scrollElement===this._scrollElement.window?"offset":on,n="auto"===this._config.method?e:this._config.method,o=n===on?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),[].slice.call(document.querySelectorAll(this._selector)).map((function(t){var e,r=u.getSelectorFromElement(t);if(r&&(e=document.querySelector(r)),e){var a=e.getBoundingClientRect();if(a.width||a.height)return[i.default(e)[n]().top+o,r]}return null})).filter((function(t){return t})).sort((function(t,e){return t[0]-e[0]})).forEach((function(e){t._offsets.push(e[0]),t._targets.push(e[1])}))},e.dispose=function(){i.default.removeData(this._element,tn),i.default(this._scrollElement).off(".bs.scrollspy"),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},e._getConfig=function(t){if("string"!=typeof(t=a({},an,"object"==typeof t&&t?t:{})).target&&u.isElement(t.target)){var e=i.default(t.target).attr("id");e||(e=u.getUID(Ze),i.default(t.target).attr("id",e)),t.target="#"+e}return u.typeCheckConfig(Ze,t,sn),t},e._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},e._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},e._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},e._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=n){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(var o=this._offsets.length;o--;)this._activeTarget!==this._targets[o]&&t>=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t li > .active",gn=function(){function t(t){this._element=t}var e=t.prototype;return e.show=function(){var t=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&i.default(this._element).hasClass(dn)||i.default(this._element).hasClass("disabled"))){var e,n,o=i.default(this._element).closest(".nav, .list-group")[0],r=u.getSelectorFromElement(this._element);if(o){var a="UL"===o.nodeName||"OL"===o.nodeName?mn:pn;n=(n=i.default.makeArray(i.default(o).find(a)))[n.length-1]}var s=i.default.Event("hide.bs.tab",{relatedTarget:this._element}),l=i.default.Event("show.bs.tab",{relatedTarget:n});if(n&&i.default(n).trigger(s),i.default(this._element).trigger(l),!l.isDefaultPrevented()&&!s.isDefaultPrevented()){r&&(e=document.querySelector(r)),this._activate(this._element,o);var f=function(){var e=i.default.Event("hidden.bs.tab",{relatedTarget:t._element}),o=i.default.Event("shown.bs.tab",{relatedTarget:n});i.default(n).trigger(e),i.default(t._element).trigger(o)};e?this._activate(e,e.parentNode,f):f()}}},e.dispose=function(){i.default.removeData(this._element,un),this._element=null},e._activate=function(t,e,n){var o=this,r=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?i.default(e).children(pn):i.default(e).find(mn))[0],a=n&&r&&i.default(r).hasClass(cn),s=function(){return o._transitionComplete(t,r,n)};if(r&&a){var l=u.getTransitionDurationFromElement(r);i.default(r).removeClass(hn).one(u.TRANSITION_END,s).emulateTransitionEnd(l)}else s()},e._transitionComplete=function(t,e,n){if(e){i.default(e).removeClass(dn);var o=i.default(e.parentNode).find("> .dropdown-menu .active")[0];o&&i.default(o).removeClass(dn),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}i.default(t).addClass(dn),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),u.reflow(t),t.classList.contains(cn)&&t.classList.add(hn);var r=t.parentNode;if(r&&"LI"===r.nodeName&&(r=r.parentNode),r&&i.default(r).hasClass("dropdown-menu")){var a=i.default(t).closest(".dropdown")[0];if(a){var s=[].slice.call(a.querySelectorAll(".dropdown-toggle"));i.default(s).addClass(dn)}t.setAttribute("aria-expanded",!0)}n&&n()},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data(un);if(o||(o=new t(this),n.data(un,o)),"string"==typeof e){if("undefined"==typeof o[e])throw new TypeError('No method named "'+e+'"');o[e]()}}))},r(t,null,[{key:"VERSION",get:function(){return"4.6.1"}}]),t}();i.default(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',(function(t){t.preventDefault(),gn._jQueryInterface.call(i.default(this),"show")})),i.default.fn.tab=gn._jQueryInterface,i.default.fn.tab.Constructor=gn,i.default.fn.tab.noConflict=function(){return i.default.fn.tab=fn,gn._jQueryInterface};var _n="bs.toast",vn=i.default.fn.toast,bn="hide",yn="show",En="showing",wn="click.dismiss.bs.toast",Tn={animation:!0,autohide:!0,delay:500},Cn={animation:"boolean",autohide:"boolean",delay:"number"},Sn=function(){function t(t,e){this._element=t,this._config=this._getConfig(e),this._timeout=null,this._setListeners()}var e=t.prototype;return e.show=function(){var t=this,e=i.default.Event("show.bs.toast");if(i.default(this._element).trigger(e),!e.isDefaultPrevented()){this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");var n=function(){t._element.classList.remove(En),t._element.classList.add(yn),i.default(t._element).trigger("shown.bs.toast"),t._config.autohide&&(t._timeout=setTimeout((function(){t.hide()}),t._config.delay))};if(this._element.classList.remove(bn),u.reflow(this._element),this._element.classList.add(En),this._config.animation){var o=u.getTransitionDurationFromElement(this._element);i.default(this._element).one(u.TRANSITION_END,n).emulateTransitionEnd(o)}else n()}},e.hide=function(){if(this._element.classList.contains(yn)){var t=i.default.Event("hide.bs.toast");i.default(this._element).trigger(t),t.isDefaultPrevented()||this._close()}},e.dispose=function(){this._clearTimeout(),this._element.classList.contains(yn)&&this._element.classList.remove(yn),i.default(this._element).off(wn),i.default.removeData(this._element,_n),this._element=null,this._config=null},e._getConfig=function(t){return t=a({},Tn,i.default(this._element).data(),"object"==typeof t&&t?t:{}),u.typeCheckConfig("toast",t,this.constructor.DefaultType),t},e._setListeners=function(){var t=this;i.default(this._element).on(wn,'[data-dismiss="toast"]',(function(){return t.hide()}))},e._close=function(){var t=this,e=function(){t._element.classList.add(bn),i.default(t._element).trigger("hidden.bs.toast")};if(this._element.classList.remove(yn),this._config.animation){var n=u.getTransitionDurationFromElement(this._element);i.default(this._element).one(u.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},e._clearTimeout=function(){clearTimeout(this._timeout),this._timeout=null},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data(_n);if(o||(o=new t(this,"object"==typeof e&&e),n.data(_n,o)),"string"==typeof e){if("undefined"==typeof o[e])throw new TypeError('No method named "'+e+'"');o[e](this)}}))},r(t,null,[{key:"VERSION",get:function(){return"4.6.1"}},{key:"DefaultType",get:function(){return Cn}},{key:"Default",get:function(){return Tn}}]),t}();i.default.fn.toast=Sn._jQueryInterface,i.default.fn.toast.Constructor=Sn,i.default.fn.toast.noConflict=function(){return i.default.fn.toast=vn,Sn._jQueryInterface},t.Alert=c,t.Button=b,t.Carousel=O,t.Collapse=W,t.Dropdown=le,t.Modal=Se,t.Popover=Je,t.Scrollspy=ln,t.Tab=gn,t.Toast=Sn,t.Tooltip=Ve,t.Util=u,Object.defineProperty(t,"__esModule",{value:!0})})); -//# sourceMappingURL=bootstrap.bundle.min.js.map \ No newline at end of file diff --git a/webapp/app/views/static/login/js/jquery.min.js b/webapp/app/views/static/login/js/jquery.min.js deleted file mode 100644 index d467083..0000000 --- a/webapp/app/views/static/login/js/jquery.min.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0768){var l=e.originalEvent,t=l.wheelDelta||-l.detail;this.scrollTop+=30*(t<0?1:-1),e.preventDefault()}})),o(document).on("scroll",(function(){o(this).scrollTop()>100?o(".scroll-to-top").fadeIn():o(".scroll-to-top").fadeOut()})),o(document).on("click","a.scroll-to-top",(function(e){var l=o(this);o("html, body").stop().animate({scrollTop:o(l.attr("href")).offset().top},1e3,"easeInOutExpo"),e.preventDefault()}))}(jQuery); \ No newline at end of file diff --git a/webapp/app/views/static/login/js/theme.js b/webapp/app/views/static/login/js/theme.js deleted file mode 100644 index 9e96613..0000000 --- a/webapp/app/views/static/login/js/theme.js +++ /dev/null @@ -1,49 +0,0 @@ -(function($) { - "use strict"; // Start of use strict - - // Toggle the side navigation - $("#sidebarToggle, #sidebarToggleTop").on('click', function(e) { - $("body").toggleClass("sidebar-toggled"); - $(".sidebar").toggleClass("toggled"); - if ($(".sidebar").hasClass("toggled")) { - $('.sidebar .collapse').collapse('hide'); - }; - }); - - // Close any open menu accordions when window is resized below 768px - $(window).resize(function() { - if ($(window).width() < 768) { - $('.sidebar .collapse').collapse('hide'); - }; - }); - - // Prevent the content wrapper from scrolling when the fixed side navigation hovered over - $('body.fixed-nav .sidebar').on('mousewheel DOMMouseScroll wheel', function(e) { - if ($(window).width() > 768) { - var e0 = e.originalEvent, - delta = e0.wheelDelta || -e0.detail; - this.scrollTop += (delta < 0 ? 1 : -1) * 30; - e.preventDefault(); - } - }); - - // Scroll to top button appear - $(document).on('scroll', function() { - var scrollDistance = $(this).scrollTop(); - if (scrollDistance > 100) { - $('.scroll-to-top').fadeIn(); - } else { - $('.scroll-to-top').fadeOut(); - } - }); - - // Smooth scrolling using jQuery easing - $(document).on('click', 'a.scroll-to-top', function(e) { - var $anchor = $(this); - $('html, body').stop().animate({ - scrollTop: ($($anchor.attr('href')).offset().top) - }, 1000, 'easeInOutExpo'); - e.preventDefault(); - }); - -})(jQuery); // End of use strict diff --git a/webapp/app/views/static/nav.css b/webapp/app/views/static/nav.css deleted file mode 100644 index 75adea5..0000000 --- a/webapp/app/views/static/nav.css +++ /dev/null @@ -1,175 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap"); -:root { - --header-height: 3rem; - --nav-width: 68px; - --first-color: #616efd; - --first-color-light: #c7c7c7; - --white-color: #F7F6FB; - --body-font: 'Nunito', sans-serif; - --normal-font-size: 1rem; - --z-fixed: 100 -} - -*, -::before, -::after { - box-sizing: border-box -} - -body { - position: relative; - padding: 0 1rem; - font-family: var(--body-font); - font-size: var(--normal-font-size); - transition: .5s -} - -a { - text-decoration: none -} - -.header { - width: 100%; - height: var(--header-height); - position: fixed; - top: 0; - left: 0; - display: flex; - align-items: center; - justify-content: space-between; - padding: 0 1rem; - background-color: var(--white-color); - z-index: var(--z-fixed); - transition: .5s -} - -.header_toggle { - color: var(--first-color); - font-size: 1.5rem; - cursor: pointer -} - -.header_img { - width: 35px; - height: 35px; - display: flex; - justify-content: center; - border-radius: 50%; - overflow: hidden -} - -.header_img img { - width: 40px -} - -.l-navbar { - position: fixed; - top: 0; - left: -30%; - width: var(--nav-width); - height: 100vh; - background-color: var(--first-color); - padding: .5rem 1rem 0 0; - transition: .5s; - z-index: var(--z-fixed) -} - -.nav { - height: 100%; - display: flex; - flex-direction: column; - justify-content: space-between; - overflow: hidden; - width: 100%; -} - -.nav_logo, -.nav_link { - display: grid; - grid-template-columns: max-content max-content; - align-items: center; - column-gap: 1rem; - padding: .5rem 0 .5rem 1.5rem -} - -.nav_logo { - margin-bottom: 2rem -} - -.nav_logo-icon { - font-size: 1.25rem; - color: var(--white-color) -} - -.nav_logo-name { - color: var(--white-color); - font-weight: 700 -} - -.nav_link { - position: relative; - color: var(--first-color-light); - margin-bottom: 1.5rem; - transition: .3s -} - -.nav_link:hover { - color: var(--white-color) -} - -.nav_icon { - font-size: 1.25rem -} - -.show_nav { - left: 0 -} - - -.nav_link.active { - color: var(--white-color) -} - -.nav_link.active::before { - content: ''; - position: absolute; - left: 0; - width: 2px; - height: 32px; - background-color: #ff9edf; -} - -.height-100 { - height: 100vh -} - -@media screen and (min-width: 768px) { - body { - margin: calc(var(--header-height) + 1rem) 0 0 0; - } - .header { - height: calc(var(--header-height) + 1rem); - padding: 0 2rem 0 calc(var(--nav-width) + 2rem) - } - .header_img { - width: 40px; - height: 40px - } - .header_img img { - width: 45px - } - .l-navbar { - left: 0; - padding: 1rem 1rem 0 0 - } - .show_nav { - width: calc(var(--nav-width) + 156px) - } - .body-pd { - padding-left: calc(var(--nav-width) + 188px) - } -} - -.btn-toggle { - cursor: pointer; -} diff --git a/webapp/app/views/static/nav.js b/webapp/app/views/static/nav.js deleted file mode 100644 index 4ef317c..0000000 --- a/webapp/app/views/static/nav.js +++ /dev/null @@ -1,80 +0,0 @@ -document.addEventListener("DOMContentLoaded", function(event) { - - menue_mode = localStorage.getItem("menue") || "maxi" - const showNavbar = (toggleId, navId, bodyId, headerId) => { - const toggle = document.getElementById(toggleId), - nav = document.getElementById(navId), - bodypd = document.getElementById(bodyId), - headerpd = document.getElementById(headerId) - if (menue_mode == "mini"){ - if (nav.classList.contains('show_nav')){ - nav.classList.remove('show_nav') - } - // change icon - if (toggle.classList.contains('bx-chevron-left')){ - toggle.classList.remove('bx-chevron-left') - } - if (!toggle.classList.contains('bx-chevron-right')){ - toggle.classList.add('bx-chevron-right') - } - // add padding to body - if (bodypd.classList.contains('body-pd')){ - bodypd.classList.remove('body-pd') - } - // add padding to header - if (headerpd.classList.contains('body-pd')){ - headerpd.classList.remove('body-pd') - } - - }else if (menue_mode == "maxi"){ - if (!nav.classList.contains('show_nav')){ - nav.classList.add('show_nav') - } - if (!toggle.classList.contains('bx-chevron-left')){ - toggle.classList.add('bx-chevron-left') - } - if (toggle.classList.contains('bx-chevron-right')){ - toggle.classList.remove('bx-chevron-right') - } - if (!bodypd.classList.contains('body-pd')){ - bodypd.classList.add('body-pd') - } - if (!headerpd.classList.contains('body-pd')){ - headerpd.classList.add('body-pd') - } - } - if (toggle && nav && bodypd && headerpd ) { - toggle.addEventListener('click', () => { - nav.classList.toggle('show_nav') - - toggle.classList.toggle('bx-chevron-left') - toggle.classList.toggle('bx-chevron-right') - - bodypd.classList.toggle('body-pd') - - headerpd.classList.toggle('body-pd') - - if (menue_mode == "mini"){ - localStorage.setItem("menue", "maxi"); - }else if (menue_mode == "maxi"){ - localStorage.setItem("menue", "mini"); - } - - }) - } - } - showNavbar('header-toggle', 'nav-bar', 'body-pd', 'header') - - /*===== LINK ACTIVE =====*/ - const linkColor = document.querySelectorAll('.nav_link') - - function colorLink() { - if (linkColor) { - linkColor.forEach(l => l.classList.remove('active')) - this.classList.add('active') - } - } - linkColor.forEach(l => l.addEventListener('click', colorLink)) - - // Your code to run since DOM is loaded and ready -}); diff --git a/webapp/app/views/static/overview/bootstrap/js/bootstrap.min.js b/webapp/app/views/static/overview/bootstrap/js/bootstrap.min.js deleted file mode 100644 index 77faa42..0000000 --- a/webapp/app/views/static/overview/bootstrap/js/bootstrap.min.js +++ /dev/null @@ -1,1658 +0,0 @@ -/*! - * Bootstrap v5.1.0 (https://getbootstrap.com/) - * Copyright 2011-2021 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 = t => { - let e = t.getAttribute("data-bs-target"); - if (!e || "#" === e) { - let i = t.getAttribute("href"); - if (!i || !i.includes("#") && !i.startsWith(".")) return null; - i.includes("#") && !i.startsWith("#") && (i = "#" + i.split("#")[1]), e = i && "#" !== i ? i.trim() : null - } - return e - }, - e = e => { const i = t(e); return i && document.querySelector(i) ? i : null }, - i = e => { const i = t(e); return i ? document.querySelector(i) : null }, - n = t => { t.dispatchEvent(new Event("transitionend")) }, - s = t => !(!t || "object" != typeof t) && (void 0 !== t.jquery && (t = t[0]), void 0 !== t.nodeType), - o = t => s(t) ? t.jquery ? t[0] : t : "string" == typeof t && t.length > 0 ? document.querySelector(t) : null, - r = (t, e, i) => { - Object.keys(i).forEach(n => { - const o = i[n], - r = e[n], - a = r && s(r) ? "element" : null == (l = r) ? "" + l : {}.toString.call(l).match(/\s([a-z]+)/i)[1].toLowerCase(); - var l; - if (!new RegExp(o).test(a)) throw new TypeError(`${t.toUpperCase()}: Option "${n}" provided type "${a}" but expected type "${o}".`) - }) - }, - a = t => !(!s(t) || 0 === t.getClientRects().length) && "visible" === getComputedStyle(t).getPropertyValue("visibility"), - 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 = () => { const { jQuery: t } = window; return t && !document.body.hasAttribute("data-bs-no-jquery") ? t : null }, - f = [], - p = () => "rtl" === document.documentElement.dir, - m = t => { - var e; - e = () => { - const e = u(); - if (e) { - const i = t.NAME, - n = e.fn[i]; - e.fn[i] = t.jQueryInterface, e.fn[i].Constructor = t, e.fn[i].noConflict = () => (e.fn[i] = n, t.jQueryInterface) - } - }, "loading" === document.readyState ? (f.length || document.addEventListener("DOMContentLoaded", () => { f.forEach(t => t()) }), f.push(e)) : e() - }, - g = t => { "function" == typeof t && t() }, - _ = (t, e, i = !0) => { - if (!i) return void g(t); - const s = (t => { - if (!t) return 0; - let { transitionDuration: e, transitionDelay: i } = window.getComputedStyle(t); - const n = Number.parseFloat(e), - s = Number.parseFloat(i); - return n || s ? (e = e.split(",")[0], i = i.split(",")[0], 1e3 * (Number.parseFloat(e) + Number.parseFloat(i))) : 0 - })(e) + 5; - let o = !1; - const r = ({ target: i }) => { i === e && (o = !0, e.removeEventListener("transitionend", r), g(t)) }; - e.addEventListener("transitionend", r), setTimeout(() => { o || n(e) }, s) - }, - b = (t, e, i, n) => { let s = t.indexOf(e); if (-1 === s) return t[!i && n ? t.length - 1 : 0]; const o = t.length; return s += i ? 1 : -1, n && (s = (s + o) % o), t[Math.max(0, Math.min(s, o - 1))] }, - v = /[^.]*(?=\..*)\.|.*/, - y = /\..*/, - w = /::\d+$/, - E = {}; - let A = 1; - const T = { mouseenter: "mouseover", mouseleave: "mouseout" }, - O = /^(mouseenter|mouseleave)/i, - 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 k(t, e) { return e && `${e}::${A++}` || t.uidEvent || A++ } - - function L(t) { const e = k(t); return t.uidEvent = e, E[e] = E[e] || {}, E[e] } - - function x(t, e, i = null) { const n = Object.keys(t); for (let s = 0, o = n.length; s < o; s++) { const o = t[n[s]]; if (o.originalHandler === e && o.delegationSelector === i) return o } return null } - - function D(t, e, i) { - const n = "string" == typeof e, - s = n ? i : e; - let o = I(t); - return C.has(o) || (o = t), [n, s, o] - } - - function S(t, e, i, n, s) { - if ("string" != typeof e || !t) return; - if (i || (i = n, n = null), O.test(e)) { - const t = t => function(e) { if (!e.relatedTarget || e.relatedTarget !== e.delegateTarget && !e.delegateTarget.contains(e.relatedTarget)) return t.call(this, e) }; - n ? n = t(n) : i = t(i) - } - const [o, r, a] = D(e, i, n), l = L(t), c = l[a] || (l[a] = {}), h = x(c, r, o ? i : null); - if (h) return void(h.oneOff = h.oneOff && s); - const d = k(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 (let a = o.length; a--;) - if (o[a] === r) return s.delegateTarget = r, n.oneOff && P.off(t, s.type, e, i), i.apply(r, [s]); - return null - } - }(t, i, n) : function(t, e) { return function i(n) { return n.delegateTarget = t, i.oneOff && P.off(t, n.type, e), e.apply(t, [n]) } }(t, i); - u.delegationSelector = o ? i : null, u.originalHandler = r, u.oneOff = s, u.uidEvent = d, c[d] = u, t.addEventListener(a, u, o) - } - - function N(t, e, i, n, s) { - const o = x(e[i], n, s); - o && (t.removeEventListener(i, o, Boolean(s)), delete e[i][o.uidEvent]) - } - - function I(t) { return t = t.replace(y, ""), T[t] || t } - const P = { - on(t, e, i, n) { S(t, e, i, n, !1) }, - one(t, e, i, n) { S(t, e, i, n, !0) }, - off(t, e, i, n) { - if ("string" != typeof e || !t) return; - const [s, o, r] = D(e, i, n), a = r !== e, l = L(t), c = e.startsWith("."); - if (void 0 !== o) { if (!l || !l[r]) return; return void N(t, l, r, o, s ? i : null) } - c && Object.keys(l).forEach(i => { - ! function(t, e, i, n) { - const s = e[i] || {}; - Object.keys(s).forEach(o => { - if (o.includes(n)) { - const n = s[o]; - N(t, e, i, n.originalHandler, n.delegationSelector) - } - }) - }(t, l, i, e.slice(1)) - }); - const h = l[r] || {}; - Object.keys(h).forEach(i => { - const n = i.replace(w, ""); - if (!a || e.includes(n)) { - const e = h[i]; - N(t, l, r, e.originalHandler, e.delegationSelector) - } - }) - }, - trigger(t, e, i) { - if ("string" != typeof e || !t) return null; - const n = u(), - s = I(e), - o = e !== s, - r = C.has(s); - let a, l = !0, - c = !0, - h = !1, - d = null; - return o && n && (a = n.Event(e, i), n(t).trigger(a), l = !a.isPropagationStopped(), c = !a.isImmediatePropagationStopped(), h = a.isDefaultPrevented()), r ? (d = document.createEvent("HTMLEvents"), d.initEvent(s, l, !0)) : d = new CustomEvent(e, { bubbles: l, cancelable: !0 }), void 0 !== i && Object.keys(i).forEach(t => { Object.defineProperty(d, t, { get: () => i[t] }) }), h && d.preventDefault(), c && t.dispatchEvent(d), d.defaultPrevented && void 0 !== a && a.preventDefault(), d - } - }, - j = new Map; - var M = {set(t, e, i) { - j.has(t) || j.set(t, new Map); - const n = j.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) => j.has(t) && j.get(t).get(e) || null, - remove(t, e) { - if (!j.has(t)) return; - const i = j.get(t); - i.delete(e), 0 === i.size && j.delete(t) - } - }; - class H { - constructor(t) { - (t = o(t)) && (this._element = t, M.set(this._element, this.constructor.DATA_KEY, this)) - } - dispose() { M.remove(this._element, this.constructor.DATA_KEY), P.off(this._element, this.constructor.EVENT_KEY), Object.getOwnPropertyNames(this).forEach(t => { this[t] = null }) } - _queueCallback(t, e, i = !0) { _(t, e, i) } - static getInstance(t) { return M.get(o(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.1.0" } - static get NAME() { throw new Error('You have to implement the static method "NAME", for each component!') } - static get DATA_KEY() { return "bs." + this.NAME } - static get EVENT_KEY() { return "." + this.DATA_KEY } - } - const B = (t, e = "hide") => { - const n = "click.dismiss" + t.EVENT_KEY, - s = t.NAME; - P.on(document, n, `[data-bs-dismiss="${s}"]`, (function(n) { - if (["A", "AREA"].includes(this.tagName) && n.preventDefault(), l(this)) return; - const o = i(this) || this.closest("." + s); - t.getOrCreateInstance(o)[e]() - })) - }; - class R extends H { - 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) - } - })) - } - } - B(R, "close"), m(R); - class W extends H { - 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 = W.getOrCreateInstance(this); "toggle" === t && e[t]() })) } - } - - function z(t) { return "true" === t || "false" !== t && (t === Number(t).toString() ? Number(t) : "" === t || "null" === t ? null : t) } - - function q(t) { return t.replace(/[A-Z]/g, t => "-" + t.toLowerCase()) } - P.on(document, "click.bs.button.data-api", '[data-bs-toggle="button"]', t => { - t.preventDefault(); - const e = t.target.closest('[data-bs-toggle="button"]'); - W.getOrCreateInstance(e).toggle() - }), m(W); - const F = { - setDataAttribute(t, e, i) { t.setAttribute("data-bs-" + q(e), i) }, - removeDataAttribute(t, e) { t.removeAttribute("data-bs-" + q(e)) }, - getDataAttributes(t) { - if (!t) return {}; - const e = {}; - return Object.keys(t.dataset).filter(t => t.startsWith("bs")).forEach(i => { - let n = i.replace(/^bs/, ""); - n = n.charAt(0).toLowerCase() + n.slice(1, n.length), e[n] = z(t.dataset[i]) - }), e - }, - getDataAttribute: (t, e) => z(t.getAttribute("data-bs-" + q(e))), - offset(t) { const e = t.getBoundingClientRect(); return { top: e.top + window.pageYOffset, left: e.left + window.pageXOffset } }, - position: t => ({ top: t.offsetTop, left: t.offsetLeft }) - }, - U = { - 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; for (; n && n.nodeType === Node.ELEMENT_NODE && 3 !== n.nodeType;) n.matches(e) && i.push(n), n = n.parentNode; 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)) } - }, - $ = { interval: 5e3, keyboard: !0, slide: !1, pause: "hover", wrap: !0, touch: !0 }, - V = { interval: "(number|boolean)", keyboard: "boolean", slide: "(boolean|string)", pause: "(string|boolean)", wrap: "boolean", touch: "boolean" }, - K = "next", - X = "prev", - Y = "left", - Q = "right", - G = { ArrowLeft: Q, ArrowRight: Y }; - class Z extends H { - constructor(t, e) { super(t), this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this.touchTimeout = null, this.touchStartX = 0, this.touchDeltaX = 0, this._config = this._getConfig(e), this._indicatorsElement = U.findOne(".carousel-indicators", this._element), this._touchSupported = "ontouchstart" in document.documentElement || navigator.maxTouchPoints > 0, this._pointerEvent = Boolean(window.PointerEvent), this._addEventListeners() } - static get Default() { return $ } - static get NAME() { return "carousel" } - next() { this._slide(K) } - nextWhenVisible() {!document.hidden && a(this._element) && this.next() } - prev() { this._slide(X) } - pause(t) { t || (this._isPaused = !0), U.findOne(".carousel-item-next, .carousel-item-prev", this._element) && (n(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null } - cycle(t) { t || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config && this._config.interval && !this._isPaused && (this._updateInterval(), this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval)) } - to(t) { - this._activeElement = U.findOne(".active.carousel-item", this._element); - const e = this._getItemIndex(this._activeElement); - if (t > this._items.length - 1 || t < 0) return; - if (this._isSliding) return void P.one(this._element, "slid.bs.carousel", () => this.to(t)); - if (e === t) return this.pause(), void this.cycle(); - const i = t > e ? K : X; - this._slide(i, this._items[t]) - } - _getConfig(t) { return t = {...$, ...F.getDataAttributes(this._element), ... "object" == typeof t ? t : {} }, r("carousel", t, V), t } - _handleSwipe() { - const t = Math.abs(this.touchDeltaX); - if (t <= 40) return; - const e = t / this.touchDeltaX; - this.touchDeltaX = 0, e && this._slide(e > 0 ? Q : Y) - } - _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", t => this.pause(t)), P.on(this._element, "mouseleave.bs.carousel", t => this.cycle(t))), this._config.touch && this._touchSupported && this._addTouchEventListeners() } - _addTouchEventListeners() { - const t = t => {!this._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType ? this._pointerEvent || (this.touchStartX = t.touches[0].clientX) : this.touchStartX = t.clientX }, - e = t => { this.touchDeltaX = t.touches && t.touches.length > 1 ? 0 : t.touches[0].clientX - this.touchStartX }, - i = t => {!this._pointerEvent || "pen" !== t.pointerType && "touch" !== t.pointerType || (this.touchDeltaX = t.clientX - this.touchStartX), this._handleSwipe(), "hover" === this._config.pause && (this.pause(), this.touchTimeout && clearTimeout(this.touchTimeout), this.touchTimeout = setTimeout(t => this.cycle(t), 500 + this._config.interval)) }; - U.find(".carousel-item img", this._element).forEach(t => { P.on(t, "dragstart.bs.carousel", t => t.preventDefault()) }), this._pointerEvent ? (P.on(this._element, "pointerdown.bs.carousel", e => t(e)), P.on(this._element, "pointerup.bs.carousel", t => i(t)), this._element.classList.add("pointer-event")) : (P.on(this._element, "touchstart.bs.carousel", e => t(e)), P.on(this._element, "touchmove.bs.carousel", t => e(t)), P.on(this._element, "touchend.bs.carousel", t => i(t))) - } - _keydown(t) { - if (/input|textarea/i.test(t.target.tagName)) return; - const e = G[t.key]; - e && (t.preventDefault(), this._slide(e)) - } - _getItemIndex(t) { return this._items = t && t.parentNode ? U.find(".carousel-item", t.parentNode) : [], this._items.indexOf(t) } - _getItemByOrder(t, e) { const i = t === K; return b(this._items, e, i, this._config.wrap) } - _triggerSlideEvent(t, e) { - const i = this._getItemIndex(t), - n = this._getItemIndex(U.findOne(".active.carousel-item", this._element)); - return P.trigger(this._element, "slide.bs.carousel", { relatedTarget: t, direction: e, from: n, to: i }) - } - _setActiveIndicatorElement(t) { - if (this._indicatorsElement) { - const e = U.findOne(".active", this._indicatorsElement); - e.classList.remove("active"), e.removeAttribute("aria-current"); - const i = U.find("[data-bs-target]", this._indicatorsElement); - for (let e = 0; e < i.length; e++) - if (Number.parseInt(i[e].getAttribute("data-bs-slide-to"), 10) === this._getItemIndex(t)) { i[e].classList.add("active"), i[e].setAttribute("aria-current", "true"); break } - } - } - _updateInterval() { - const t = this._activeElement || U.findOne(".active.carousel-item", this._element); - if (!t) return; - const e = Number.parseInt(t.getAttribute("data-bs-interval"), 10); - e ? (this._config.defaultInterval = this._config.defaultInterval || this._config.interval, this._config.interval = e) : this._config.interval = this._config.defaultInterval || this._config.interval - } - _slide(t, e) { - const i = this._directionToOrder(t), - n = U.findOne(".active.carousel-item", this._element), - s = this._getItemIndex(n), - o = e || this._getItemByOrder(i, n), - r = this._getItemIndex(o), - a = Boolean(this._interval), - l = i === K, - c = l ? "carousel-item-start" : "carousel-item-end", - h = l ? "carousel-item-next" : "carousel-item-prev", - u = this._orderToDirection(i); - if (o && o.classList.contains("active")) return void(this._isSliding = !1); - if (this._isSliding) return; - if (this._triggerSlideEvent(o, u).defaultPrevented) return; - if (!n || !o) return; - this._isSliding = !0, a && this.pause(), this._setActiveIndicatorElement(o), this._activeElement = o; - const f = () => { P.trigger(this._element, "slid.bs.carousel", { relatedTarget: o, direction: u, from: s, to: r }) }; - if (this._element.classList.contains("slide")) { - o.classList.add(h), d(o), n.classList.add(c), o.classList.add(c); - const t = () => { o.classList.remove(c, h), o.classList.add("active"), n.classList.remove("active", h, c), this._isSliding = !1, setTimeout(f, 0) }; - this._queueCallback(t, n, !0) - } else n.classList.remove("active"), o.classList.add("active"), this._isSliding = !1, f(); - a && this.cycle() - } - _directionToOrder(t) { return [Q, Y].includes(t) ? p() ? t === Y ? X : K : t === Y ? K : X : t } - _orderToDirection(t) { return [K, X].includes(t) ? p() ? t === X ? Y : Q : t === X ? Q : Y : t } - static carouselInterface(t, e) { - const i = Z.getOrCreateInstance(t, e); - let { _config: n } = i; - "object" == typeof e && (n = {...n, ...e }); - const s = "string" == typeof e ? e : n.slide; - if ("number" == typeof e) i.to(e); - else if ("string" == typeof s) { - if (void 0 === i[s]) throw new TypeError(`No method named "${s}"`); - i[s]() - } else n.interval && n.ride && (i.pause(), i.cycle()) - } - static jQueryInterface(t) { return this.each((function() { Z.carouselInterface(this, t) })) } - static dataApiClickHandler(t) { - const e = i(this); - if (!e || !e.classList.contains("carousel")) return; - const n = {...F.getDataAttributes(e), ...F.getDataAttributes(this) }, - s = this.getAttribute("data-bs-slide-to"); - s && (n.interval = !1), Z.carouselInterface(e, n), s && Z.getInstance(e).to(s), t.preventDefault() - } - } - P.on(document, "click.bs.carousel.data-api", "[data-bs-slide], [data-bs-slide-to]", Z.dataApiClickHandler), P.on(window, "load.bs.carousel.data-api", () => { const t = U.find('[data-bs-ride="carousel"]'); for (let e = 0, i = t.length; e < i; e++) Z.carouselInterface(t[e], Z.getInstance(t[e])) }), m(Z); - const J = { toggle: !0, parent: null }, - tt = { toggle: "boolean", parent: "(null|element)" }; - class et extends H { - constructor(t, i) { - super(t), this._isTransitioning = !1, this._config = this._getConfig(i), this._triggerArray = []; - const n = U.find('[data-bs-toggle="collapse"]'); - for (let t = 0, i = n.length; t < i; t++) { - const i = n[t], - s = e(i), - o = U.find(s).filter(t => t === this._element); - null !== s && o.length && (this._selector = s, this._triggerArray.push(i)) - } - this._initializeChildren(), this._config.parent || this._addAriaAndCollapsedClass(this._triggerArray, this._isShown()), this._config.toggle && this.toggle() - } - static get Default() { return J } - static get NAME() { return "collapse" } - toggle() { this._isShown() ? this.hide() : this.show() } - show() { - if (this._isTransitioning || this._isShown()) return; - let t, e = []; - if (this._config.parent) { - const t = U.find(".collapse .collapse", this._config.parent); - e = U.find(".show, .collapsing", this._config.parent).filter(e => !t.includes(e)) - } - const i = U.findOne(this._selector); - if (e.length) { const n = e.find(t => i !== t); if (t = n ? et.getInstance(n) : null, t && t._isTransitioning) return } - if (P.trigger(this._element, "show.bs.collapse").defaultPrevented) return; - e.forEach(e => { i !== e && et.getOrCreateInstance(e, { toggle: !1 }).hide(), t || M.set(e, "bs.collapse", null) }); - const n = this._getDimension(); - this._element.classList.remove("collapse"), this._element.classList.add("collapsing"), this._element.style[n] = 0, this._addAriaAndCollapsedClass(this._triggerArray, !0), this._isTransitioning = !0; - const s = "scroll" + (n[0].toUpperCase() + n.slice(1)); - this._queueCallback(() => { this._isTransitioning = !1, this._element.classList.remove("collapsing"), this._element.classList.add("collapse", "show"), this._element.style[n] = "", P.trigger(this._element, "shown.bs.collapse") }, this._element, !0), this._element.style[n] = this._element[s] + "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("collapsing"), this._element.classList.remove("collapse", "show"); - const e = this._triggerArray.length; - for (let t = 0; t < e; t++) { - const e = this._triggerArray[t], - n = i(e); - n && !this._isShown(n) && this._addAriaAndCollapsedClass([e], !1) - } - this._isTransitioning = !0, this._element.style[t] = "", this._queueCallback(() => { this._isTransitioning = !1, this._element.classList.remove("collapsing"), this._element.classList.add("collapse"), P.trigger(this._element, "hidden.bs.collapse") }, this._element, !0) - } - _isShown(t = this._element) { return t.classList.contains("show") } - _getConfig(t) { return (t = {...J, ...F.getDataAttributes(this._element), ...t }).toggle = Boolean(t.toggle), t.parent = o(t.parent), r("collapse", t, tt), t } - _getDimension() { return this._element.classList.contains("collapse-horizontal") ? "width" : "height" } - _initializeChildren() { - if (!this._config.parent) return; - const t = U.find(".collapse .collapse", this._config.parent); - U.find('[data-bs-toggle="collapse"]', this._config.parent).filter(e => !t.includes(e)).forEach(t => { - const e = i(t); - e && this._addAriaAndCollapsedClass([t], this._isShown(e)) - }) - } - _addAriaAndCollapsedClass(t, e) { t.length && t.forEach(t => { e ? t.classList.remove("collapsed") : t.classList.add("collapsed"), t.setAttribute("aria-expanded", e) }) } - static jQueryInterface(t) { - return this.each((function() { - const e = {}; - "string" == typeof t && /show|hide/.test(t) && (e.toggle = !1); - const i = et.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", '[data-bs-toggle="collapse"]', (function(t) { - ("A" === t.target.tagName || t.delegateTarget && "A" === t.delegateTarget.tagName) && t.preventDefault(); - const i = e(this); - U.find(i).forEach(t => { et.getOrCreateInstance(t, { toggle: !1 }).toggle() }) - })), m(et); - var it = "top", - nt = "bottom", - st = "right", - ot = "left", - rt = [it, nt, st, ot], - at = rt.reduce((function(t, e) { return t.concat([e + "-start", e + "-end"]) }), []), - lt = [].concat(rt, ["auto"]).reduce((function(t, e) { return t.concat([e, e + "-start", e + "-end"]) }), []), - ct = ["beforeRead", "read", "afterRead", "beforeMain", "main", "afterMain", "beforeWrite", "write", "afterWrite"]; - - function ht(t) { return t ? (t.nodeName || "").toLowerCase() : null } - - function dt(t) { if (null == t) return window; if ("[object Window]" !== t.toString()) { var e = t.ownerDocument; return e && e.defaultView || window } return t } - - function ut(t) { return t instanceof dt(t).Element || t instanceof Element } - - function ft(t) { return t instanceof dt(t).HTMLElement || t instanceof HTMLElement } - - function pt(t) { return "undefined" != typeof ShadowRoot && (t instanceof dt(t).ShadowRoot || t instanceof ShadowRoot) } - var mt = { - 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]; - ft(s) && ht(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 }), {}); - ft(n) && ht(n) && (Object.assign(n.style, o), Object.keys(s).forEach((function(t) { n.removeAttribute(t) }))) - })) - } - }, - requires: ["computeStyles"] - }; - - function gt(t) { return t.split("-")[0] } - var _t = Math.round; - - function bt(t, e) { - void 0 === e && (e = !1); - var i = t.getBoundingClientRect(), - n = 1, - s = 1; - return ft(t) && e && (n = i.width / t.offsetWidth || 1, s = i.height / t.offsetHeight || 1), { width: _t(i.width / n), height: _t(i.height / s), top: _t(i.top / s), right: _t(i.right / n), bottom: _t(i.bottom / s), left: _t(i.left / n), x: _t(i.left / n), y: _t(i.top / s) } - } - - function vt(t) { - var e = bt(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 yt(t, e) { - var i = e.getRootNode && e.getRootNode(); - if (t.contains(e)) return !0; - if (i && pt(i)) { - var n = e; - do { - if (n && t.isSameNode(n)) return !0; - n = n.parentNode || n.host - } while (n) - } - return !1 - } - - function wt(t) { return dt(t).getComputedStyle(t) } - - function Et(t) { return ["table", "td", "th"].indexOf(ht(t)) >= 0 } - - function At(t) { return ((ut(t) ? t.ownerDocument : t.document) || window.document).documentElement } - - function Tt(t) { return "html" === ht(t) ? t : t.assignedSlot || t.parentNode || (pt(t) ? t.host : null) || At(t) } - - function Ot(t) { return ft(t) && "fixed" !== wt(t).position ? t.offsetParent : null } - - function Ct(t) { - for (var e = dt(t), i = Ot(t); i && Et(i) && "static" === wt(i).position;) i = Ot(i); - return i && ("html" === ht(i) || "body" === ht(i) && "static" === wt(i).position) ? e : i || function(t) { - var e = -1 !== navigator.userAgent.toLowerCase().indexOf("firefox"); - if (-1 !== navigator.userAgent.indexOf("Trident") && ft(t) && "fixed" === wt(t).position) return null; - for (var i = Tt(t); ft(i) && ["html", "body"].indexOf(ht(i)) < 0;) { - var n = wt(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 kt(t) { return ["top", "bottom"].indexOf(t) >= 0 ? "x" : "y" } - var Lt = Math.max, - xt = Math.min, - Dt = Math.round; - - function St(t, e, i) { return Lt(t, xt(e, i)) } - - function Nt(t) { return Object.assign({}, { top: 0, right: 0, bottom: 0, left: 0 }, t) } - - function It(t, e) { return e.reduce((function(e, i) { return e[i] = t, e }), {}) } - var Pt = { - 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 = gt(i.placement), - l = kt(a), - c = [ot, st].indexOf(a) >= 0 ? "height" : "width"; - if (o && r) { - var h = function(t, e) { return Nt("number" != typeof(t = "function" == typeof t ? t(Object.assign({}, e.rects, { placement: e.placement })) : t) ? t : It(t, rt)) }(s.padding, i), - d = vt(o), - u = "y" === l ? it : ot, - f = "y" === l ? nt : st, - p = i.rects.reference[c] + i.rects.reference[l] - r[l] - i.rects.popper[c], - m = r[l] - i.rects.reference[l], - g = Ct(o), - _ = g ? "y" === l ? g.clientHeight || 0 : g.clientWidth || 0 : 0, - b = p / 2 - m / 2, - v = h[u], - y = _ - d[c] - h[f], - w = _ / 2 - d[c] / 2 + b, - E = St(v, w, y), - A = l; - i.modifiersData[n] = ((e = {})[A] = E, e.centerOffset = E - 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))) && yt(e.elements.popper, n) && (e.elements.arrow = n) - }, - requires: ["popperOffsets"], - requiresIfExists: ["preventOverflow"] - }, - jt = { top: "auto", right: "auto", bottom: "auto", left: "auto" }; - - function Mt(t) { - var e, i = t.popper, - n = t.popperRect, - s = t.placement, - o = t.offsets, - r = t.position, - a = t.gpuAcceleration, - l = t.adaptive, - c = t.roundOffsets, - h = !0 === c ? function(t) { - var e = t.x, - i = t.y, - n = window.devicePixelRatio || 1; - return { x: Dt(Dt(e * n) / n) || 0, y: Dt(Dt(i * n) / n) || 0 } - }(o) : "function" == typeof c ? c(o) : o, - d = h.x, - u = void 0 === d ? 0 : d, - f = h.y, - p = void 0 === f ? 0 : f, - m = o.hasOwnProperty("x"), - g = o.hasOwnProperty("y"), - _ = ot, - b = it, - v = window; - if (l) { - var y = Ct(i), - w = "clientHeight", - E = "clientWidth"; - y === dt(i) && "static" !== wt(y = At(i)).position && (w = "scrollHeight", E = "scrollWidth"), y = y, s === it && (b = nt, p -= y[w] - n.height, p *= a ? 1 : -1), s === ot && (_ = st, u -= y[E] - n.width, u *= a ? 1 : -1) - } - var A, T = Object.assign({ position: r }, l && jt); - return a ? Object.assign({}, T, ((A = {})[b] = g ? "0" : "", A[_] = m ? "0" : "", A.transform = (v.devicePixelRatio || 1) < 2 ? "translate(" + u + "px, " + p + "px)" : "translate3d(" + u + "px, " + p + "px, 0)", A)) : Object.assign({}, T, ((e = {})[b] = g ? p + "px" : "", e[_] = m ? u + "px" : "", e.transform = "", e)) - } - var Ht = { - 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: gt(e.placement), popper: e.elements.popper, popperRect: e.rects.popper, gpuAcceleration: s }; - null != e.modifiersData.popperOffsets && (e.styles.popper = Object.assign({}, e.styles.popper, Mt(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, Mt(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: {} - }, - Bt = { passive: !0 }, - Rt = { - 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 = dt(e.elements.popper), - c = [].concat(e.scrollParents.reference, e.scrollParents.popper); - return o && c.forEach((function(t) { t.addEventListener("scroll", i.update, Bt) })), a && l.addEventListener("resize", i.update, Bt), - function() { o && c.forEach((function(t) { t.removeEventListener("scroll", i.update, Bt) })), a && l.removeEventListener("resize", i.update, Bt) } - }, - data: {} - }, - Wt = { left: "right", right: "left", bottom: "top", top: "bottom" }; - - function zt(t) { return t.replace(/left|right|bottom|top/g, (function(t) { return Wt[t] })) } - var qt = { start: "end", end: "start" }; - - function Ft(t) { return t.replace(/start|end/g, (function(t) { return qt[t] })) } - - function Ut(t) { var e = dt(t); return { scrollLeft: e.pageXOffset, scrollTop: e.pageYOffset } } - - function $t(t) { return bt(At(t)).left + Ut(t).scrollLeft } - - function Vt(t) { - var e = wt(t), - i = e.overflow, - n = e.overflowX, - s = e.overflowY; - return /auto|scroll|overlay|hidden/.test(i + s + n) - } - - function Kt(t, e) { - var i; - void 0 === e && (e = []); - var n = function t(e) { return ["html", "body", "#document"].indexOf(ht(e)) >= 0 ? e.ownerDocument.body : ft(e) && Vt(e) ? e : t(Tt(e)) }(t), - s = n === (null == (i = t.ownerDocument) ? void 0 : i.body), - o = dt(n), - r = s ? [o].concat(o.visualViewport || [], Vt(n) ? n : []) : n, - a = e.concat(r); - return s ? a : a.concat(Kt(Tt(r))) - } - - function Xt(t) { return Object.assign({}, t, { left: t.x, top: t.y, right: t.x + t.width, bottom: t.y + t.height }) } - - function Yt(t, e) { - return "viewport" === e ? Xt(function(t) { - var e = dt(t), - i = At(t), - n = e.visualViewport, - s = i.clientWidth, - o = i.clientHeight, - r = 0, - a = 0; - return n && (s = n.width, o = n.height, /^((?!chrome|android).)*safari/i.test(navigator.userAgent) || (r = n.offsetLeft, a = n.offsetTop)), { width: s, height: o, x: r + $t(t), y: a } - }(t)) : ft(e) ? function(t) { var e = bt(t); return e.top = e.top + t.clientTop, e.left = e.left + t.clientLeft, e.bottom = e.top + t.clientHeight, e.right = e.left + t.clientWidth, e.width = t.clientWidth, e.height = t.clientHeight, e.x = e.left, e.y = e.top, e }(e) : Xt(function(t) { - var e, i = At(t), - n = Ut(t), - s = null == (e = t.ownerDocument) ? void 0 : e.body, - o = Lt(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0), - r = Lt(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0), - a = -n.scrollLeft + $t(t), - l = -n.scrollTop; - return "rtl" === wt(s || i).direction && (a += Lt(i.clientWidth, s ? s.clientWidth : 0) - o), { width: o, height: r, x: a, y: l } - }(At(t))) - } - - function Qt(t) { return t.split("-")[1] } - - function Gt(t) { - var e, i = t.reference, - n = t.element, - s = t.placement, - o = s ? gt(s) : null, - r = s ? Qt(s) : null, - a = i.x + i.width / 2 - n.width / 2, - l = i.y + i.height / 2 - n.height / 2; - switch (o) { - case it: - e = { x: a, y: i.y - n.height }; - break; - case nt: - e = { x: a, y: i.y + i.height }; - break; - case st: - e = { x: i.x + i.width, y: l }; - break; - case ot: - e = { x: i.x - n.width, y: l }; - break; - default: - e = { x: i.x, y: i.y } - } - var c = o ? kt(o) : null; - if (null != c) { - var h = "y" === c ? "height" : "width"; - switch (r) { - case "start": - e[c] = e[c] - (i[h] / 2 - n[h] / 2); - break; - case "end": - e[c] = e[c] + (i[h] / 2 - n[h] / 2) - } - } - return e - } - - function Zt(t, e) { - void 0 === e && (e = {}); - var i = e, - n = i.placement, - s = void 0 === n ? t.placement : n, - o = i.boundary, - r = void 0 === o ? "clippingParents" : o, - a = i.rootBoundary, - l = void 0 === a ? "viewport" : a, - c = i.elementContext, - h = void 0 === c ? "popper" : c, - d = i.altBoundary, - u = void 0 !== d && d, - f = i.padding, - p = void 0 === f ? 0 : f, - m = Nt("number" != typeof p ? p : It(p, rt)), - g = "popper" === h ? "reference" : "popper", - _ = t.elements.reference, - b = t.rects.popper, - v = t.elements[u ? g : h], - y = function(t, e, i) { - var n = "clippingParents" === e ? function(t) { - var e = Kt(Tt(t)), - i = ["absolute", "fixed"].indexOf(wt(t).position) >= 0 && ft(t) ? Ct(t) : t; - return ut(i) ? e.filter((function(t) { return ut(t) && yt(t, i) && "body" !== ht(t) })) : [] - }(t) : [].concat(e), - s = [].concat(n, [i]), - o = s[0], - r = s.reduce((function(e, i) { var n = Yt(t, i); return e.top = Lt(n.top, e.top), e.right = xt(n.right, e.right), e.bottom = xt(n.bottom, e.bottom), e.left = Lt(n.left, e.left), e }), Yt(t, o)); - return r.width = r.right - r.left, r.height = r.bottom - r.top, r.x = r.left, r.y = r.top, r - }(ut(v) ? v : v.contextElement || At(t.elements.popper), r, l), - w = bt(_), - E = Gt({ reference: w, element: b, strategy: "absolute", placement: s }), - A = Xt(Object.assign({}, b, E)), - T = "popper" === h ? A : w, - O = { top: y.top - T.top + m.top, bottom: T.bottom - y.bottom + m.bottom, left: y.left - T.left + m.left, right: T.right - y.right + m.right }, - C = t.modifiersData.offset; - if ("popper" === h && C) { - var k = C[s]; - Object.keys(O).forEach((function(t) { - var e = [st, nt].indexOf(t) >= 0 ? 1 : -1, - i = [it, nt].indexOf(t) >= 0 ? "y" : "x"; - O[t] += k[i] * e - })) - } - return O - } - - function Jt(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 ? lt : l, - h = Qt(n), - d = h ? a ? at : at.filter((function(t) { return Qt(t) === h })) : rt, - 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] = Zt(t, { placement: i, boundary: s, rootBoundary: o, padding: r })[gt(i)], e }), {}); - return Object.keys(f).sort((function(t, e) { return f[t] - f[e] })) - } - var te = { - name: "flip", - enabled: !0, - phase: "main", - fn: function(t) { - var e = t.state, - i = t.options, - n = t.name; - if (!e.modifiersData[n]._skip) { - for (var s = i.mainAxis, o = void 0 === s || s, r = i.altAxis, a = void 0 === r || r, l = i.fallbackPlacements, c = i.padding, h = i.boundary, d = i.rootBoundary, u = i.altBoundary, f = i.flipVariations, p = void 0 === f || f, m = i.allowedAutoPlacements, g = e.options.placement, _ = gt(g), b = l || (_ !== g && p ? function(t) { if ("auto" === gt(t)) return []; var e = zt(t); return [Ft(t), e, Ft(e)] }(g) : [zt(g)]), v = [g].concat(b).reduce((function(t, i) { return t.concat("auto" === gt(i) ? Jt(e, { placement: i, boundary: h, rootBoundary: d, padding: c, flipVariations: p, allowedAutoPlacements: m }) : i) }), []), y = e.rects.reference, w = e.rects.popper, E = new Map, A = !0, T = v[0], O = 0; O < v.length; O++) { - var C = v[O], - k = gt(C), - L = "start" === Qt(C), - x = [it, nt].indexOf(k) >= 0, - D = x ? "width" : "height", - S = Zt(e, { placement: C, boundary: h, rootBoundary: d, altBoundary: u, padding: c }), - N = x ? L ? st : ot : L ? nt : it; - y[D] > w[D] && (N = zt(N)); - var I = zt(N), - P = []; - if (o && P.push(S[k] <= 0), a && P.push(S[N] <= 0, S[I] <= 0), P.every((function(t) { return t }))) { T = C, A = !1; break } - E.set(C, P) - } - if (A) - for (var j = function(t) { var e = v.find((function(e) { var i = E.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 ee(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 ie(t) { return [it, st, nt, ot].some((function(e) { return t[e] >= 0 })) } - var ne = { - 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 = Zt(e, { elementContext: "reference" }), - a = Zt(e, { altBoundary: !0 }), - l = ee(r, n), - c = ee(a, s, o), - h = ie(l), - d = ie(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 }) - } - }, - se = { - 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 = lt.reduce((function(t, i) { - return t[i] = function(t, e, i) { - var n = gt(t), - s = [ot, it].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, [ot, st].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 - } - }, - oe = { - name: "popperOffsets", - enabled: !0, - phase: "read", - fn: function(t) { - var e = t.state, - i = t.name; - e.modifiersData[i] = Gt({ reference: e.rects.reference, element: e.rects.popper, strategy: "absolute", placement: e.placement }) - }, - data: {} - }, - re = { - name: "preventOverflow", - enabled: !0, - phase: "main", - fn: function(t) { - var e = t.state, - i = t.options, - n = t.name, - s = i.mainAxis, - o = void 0 === s || s, - r = i.altAxis, - a = void 0 !== r && r, - l = i.boundary, - c = i.rootBoundary, - h = i.altBoundary, - d = i.padding, - u = i.tether, - f = void 0 === u || u, - p = i.tetherOffset, - m = void 0 === p ? 0 : p, - g = Zt(e, { boundary: l, rootBoundary: c, padding: d, altBoundary: h }), - _ = gt(e.placement), - b = Qt(e.placement), - v = !b, - y = kt(_), - w = "x" === y ? "y" : "x", - E = e.modifiersData.popperOffsets, - A = e.rects.reference, - T = e.rects.popper, - O = "function" == typeof m ? m(Object.assign({}, e.rects, { placement: e.placement })) : m, - C = { x: 0, y: 0 }; - if (E) { - if (o || a) { - var k = "y" === y ? it : ot, - L = "y" === y ? nt : st, - x = "y" === y ? "height" : "width", - D = E[y], - S = E[y] + g[k], - N = E[y] - g[L], - I = f ? -T[x] / 2 : 0, - P = "start" === b ? A[x] : T[x], - j = "start" === b ? -T[x] : -A[x], - M = e.elements.arrow, - H = f && M ? vt(M) : { width: 0, height: 0 }, - B = e.modifiersData["arrow#persistent"] ? e.modifiersData["arrow#persistent"].padding : { top: 0, right: 0, bottom: 0, left: 0 }, - R = B[k], - W = B[L], - z = St(0, A[x], H[x]), - q = v ? A[x] / 2 - I - z - R - O : P - z - R - O, - F = v ? -A[x] / 2 + I + z + W + O : j + z + W + O, - U = e.elements.arrow && Ct(e.elements.arrow), - $ = U ? "y" === y ? U.clientTop || 0 : U.clientLeft || 0 : 0, - V = e.modifiersData.offset ? e.modifiersData.offset[e.placement][y] : 0, - K = E[y] + q - V - $, - X = E[y] + F - V; - if (o) { - var Y = St(f ? xt(S, K) : S, D, f ? Lt(N, X) : N); - E[y] = Y, C[y] = Y - D - } - if (a) { - var Q = "x" === y ? it : ot, - G = "x" === y ? nt : st, - Z = E[w], - J = Z + g[Q], - tt = Z - g[G], - et = St(f ? xt(J, K) : J, Z, f ? Lt(tt, X) : tt); - E[w] = et, C[w] = et - Z - } - } - e.modifiersData[n] = C - } - }, - requiresIfExists: ["offset"] - }; - - function ae(t, e, i) { - void 0 === i && (i = !1); - var n, s, o = ft(e), - r = ft(e) && function(t) { - var e = t.getBoundingClientRect(), - i = e.width / t.offsetWidth || 1, - n = e.height / t.offsetHeight || 1; - return 1 !== i || 1 !== n - }(e), - a = At(e), - l = bt(t, r), - c = { scrollLeft: 0, scrollTop: 0 }, - h = { x: 0, y: 0 }; - return (o || !o && !i) && (("body" !== ht(e) || Vt(a)) && (c = (n = e) !== dt(n) && ft(n) ? { scrollLeft: (s = n).scrollLeft, scrollTop: s.scrollTop } : Ut(n)), ft(e) ? ((h = bt(e, !0)).x += e.clientLeft, h.y += e.clientTop) : a && (h.x = $t(a))), { x: l.left + c.scrollLeft - h.x, y: l.top + c.scrollTop - h.y, width: l.width, height: l.height } - } - var le = { placement: "bottom", modifiers: [], strategy: "absolute" }; - - function ce() { 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 he(t) { - void 0 === t && (t = {}); - var e = t, - i = e.defaultModifiers, - n = void 0 === i ? [] : i, - s = e.defaultOptions, - o = void 0 === s ? le : s; - return function(t, e, i) { - void 0 === i && (i = o); - var s, r, a = { placement: "bottom", orderedModifiers: [], options: Object.assign({}, le, o), modifiersData: {}, elements: { reference: t, popper: e }, attributes: {}, styles: {} }, - l = [], - c = !1, - h = { - state: a, - setOptions: function(i) { - d(), a.options = Object.assign({}, o, a.options, i), a.scrollParents = { reference: ut(t) ? Kt(t) : t.contextElement ? Kt(t.contextElement) : [], popper: Kt(e) }; - var s, r, c = function(t) { - var e = function(t) { - var e = new Map, - i = new Set, - n = []; - return t.forEach((function(t) { e.set(t.name, t) })), t.forEach((function(t) { - i.has(t.name) || function t(s) { - i.add(s.name), [].concat(s.requires || [], s.requiresIfExists || []).forEach((function(n) { - if (!i.has(n)) { - var s = e.get(n); - s && t(s) - } - })), n.push(s) - }(t) - })), n - }(t); - return ct.reduce((function(t, i) { return t.concat(e.filter((function(t) { return t.phase === i }))) }), []) - }((s = [].concat(n, a.options.modifiers), r = s.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(r).map((function(t) { return r[t] })))); - return a.orderedModifiers = c.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 (ce(e, i)) { - a.rects = { reference: ae(e, Ct(i), "fixed" === a.options.strategy), popper: vt(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 (!ce(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 de = he(), - ue = he({ defaultModifiers: [Rt, oe, Ht, mt] }), - fe = he({ defaultModifiers: [Rt, oe, Ht, mt, se, te, re, Pt, ne] }), - pe = Object.freeze({ __proto__: null, popperGenerator: he, detectOverflow: Zt, createPopperBase: de, createPopper: fe, createPopperLite: ue, top: it, bottom: nt, right: st, left: ot, auto: "auto", basePlacements: rt, start: "start", end: "end", clippingParents: "clippingParents", viewport: "viewport", popper: "popper", reference: "reference", variationPlacements: at, placements: lt, beforeRead: "beforeRead", read: "read", afterRead: "afterRead", beforeMain: "beforeMain", main: "main", afterMain: "afterMain", beforeWrite: "beforeWrite", write: "write", afterWrite: "afterWrite", modifierPhases: ct, applyStyles: mt, arrow: Pt, computeStyles: Ht, eventListeners: Rt, flip: te, hide: ne, offset: se, popperOffsets: oe, preventOverflow: re }); - const me = new RegExp("ArrowUp|ArrowDown|Escape"), - ge = p() ? "top-end" : "top-start", - _e = p() ? "top-start" : "top-end", - be = p() ? "bottom-end" : "bottom-start", - ve = p() ? "bottom-start" : "bottom-end", - ye = p() ? "left-start" : "right-start", - we = p() ? "right-start" : "left-start", - Ee = { offset: [0, 2], boundary: "clippingParents", reference: "toggle", display: "dynamic", popperConfig: null, autoClose: !0 }, - Ae = { offset: "(array|string|function)", boundary: "(string|element)", reference: "(string|element|object)", display: "string", popperConfig: "(null|object|function)", autoClose: "(boolean|string)" }; - class Te extends H { - constructor(t, e) { super(t), this._popper = null, this._config = this._getConfig(e), this._menu = this._getMenuElement(), this._inNavbar = this._detectNavbar() } - static get Default() { return Ee } - static get DefaultType() { return Ae } - static get NAME() { return "dropdown" } - toggle() { return this._isShown() ? this.hide() : this.show() } - show() { - if (l(this._element) || this._isShown(this._menu)) return; - const t = { relatedTarget: this._element }; - if (P.trigger(this._element, "show.bs.dropdown", t).defaultPrevented) return; - const e = Te.getParentFromElement(this._element); - this._inNavbar ? F.setDataAttribute(this._menu, "popper", "none") : this._createPopper(e), "ontouchstart" in document.documentElement && !e.closest(".navbar-nav") && [].concat(...document.body.children).forEach(t => P.on(t, "mouseover", h)), this._element.focus(), this._element.setAttribute("aria-expanded", !0), this._menu.classList.add("show"), this._element.classList.add("show"), P.trigger(this._element, "shown.bs.dropdown", t) - } - hide() { - if (l(this._element) || !this._isShown(this._menu)) 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) { P.trigger(this._element, "hide.bs.dropdown", t).defaultPrevented || ("ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => P.off(t, "mouseover", h)), this._popper && this._popper.destroy(), this._menu.classList.remove("show"), this._element.classList.remove("show"), this._element.setAttribute("aria-expanded", "false"), F.removeDataAttribute(this._menu, "popper"), P.trigger(this._element, "hidden.bs.dropdown", t)) } - _getConfig(t) { if (t = {...this.constructor.Default, ...F.getDataAttributes(this._element), ...t }, r("dropdown", t, this.constructor.DefaultType), "object" == typeof t.reference && !s(t.reference) && "function" != typeof t.reference.getBoundingClientRect) throw new TypeError("dropdown".toUpperCase() + ': Option "reference" provided type "object" without a required "getBoundingClientRect" method.'); return t } - _createPopper(t) { - if (void 0 === pe) throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)"); - let e = this._element; - "parent" === this._config.reference ? e = t : s(this._config.reference) ? e = o(this._config.reference) : "object" == typeof this._config.reference && (e = this._config.reference); - const i = this._getPopperConfig(), - n = i.modifiers.find(t => "applyStyles" === t.name && !1 === t.enabled); - this._popper = fe(e, this._menu, i), n && F.setDataAttribute(this._menu, "popper", "static") - } - _isShown(t = this._element) { return t.classList.contains("show") } - _getMenuElement() { return U.next(this._element, ".dropdown-menu")[0] } - _getPlacement() { const t = this._element.parentNode; if (t.classList.contains("dropend")) return ye; if (t.classList.contains("dropstart")) return we; const e = "end" === getComputedStyle(this._menu).getPropertyValue("--bs-position").trim(); return t.classList.contains("dropup") ? e ? _e : ge : e ? ve : be } - _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 "static" === this._config.display && (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 = U.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", this._menu).filter(a); - i.length && b(i, e, "ArrowDown" === t, !i.includes(e)).focus() - } - static jQueryInterface(t) { - return this.each((function() { - const e = Te.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 (t && (2 === t.button || "keyup" === t.type && "Tab" !== t.key)) return; - const e = U.find('[data-bs-toggle="dropdown"]'); - for (let i = 0, n = e.length; i < n; i++) { - const n = Te.getInstance(e[i]); - if (!n || !1 === n._config.autoClose) continue; - if (!n._isShown()) continue; - const s = { relatedTarget: n._element }; - if (t) { - const e = t.composedPath(), - i = e.includes(n._menu); - if (e.includes(n._element) || "inside" === n._config.autoClose && !i || "outside" === n._config.autoClose && i) continue; - if (n._menu.contains(t.target) && ("keyup" === t.type && "Tab" === t.key || /input|select|option|textarea|form/i.test(t.target.tagName))) continue; - "click" === t.type && (s.clickEvent = t) - } - n._completeHide(s) - } - } - static getParentFromElement(t) { return i(t) || t.parentNode } - static dataApiKeydownHandler(t) { - if (/input|textarea/i.test(t.target.tagName) ? "Space" === t.key || "Escape" !== t.key && ("ArrowDown" !== t.key && "ArrowUp" !== t.key || t.target.closest(".dropdown-menu")) : !me.test(t.key)) return; - const e = this.classList.contains("show"); - if (!e && "Escape" === t.key) return; - if (t.preventDefault(), t.stopPropagation(), l(this)) return; - const i = this.matches('[data-bs-toggle="dropdown"]') ? this : U.prev(this, '[data-bs-toggle="dropdown"]')[0], - n = Te.getOrCreateInstance(i); - if ("Escape" !== t.key) return "ArrowUp" === t.key || "ArrowDown" === t.key ? (e || n.show(), void n._selectMenuItem(t)) : void(e && "Space" !== t.key || Te.clearMenus()); - n.hide() - } - } - P.on(document, "keydown.bs.dropdown.data-api", '[data-bs-toggle="dropdown"]', Te.dataApiKeydownHandler), P.on(document, "keydown.bs.dropdown.data-api", ".dropdown-menu", Te.dataApiKeydownHandler), P.on(document, "click.bs.dropdown.data-api", Te.clearMenus), P.on(document, "keyup.bs.dropdown.data-api", Te.clearMenus), P.on(document, "click.bs.dropdown.data-api", '[data-bs-toggle="dropdown"]', (function(t) { t.preventDefault(), Te.getOrCreateInstance(this).toggle() })), m(Te); - class Oe { - 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, "paddingRight", e => e + t), this._setElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", "paddingRight", e => e + t), this._setElementAttributes(".sticky-top", "marginRight", e => e - t) - } - _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)[e]; - t.style[e] = i(Number.parseFloat(s)) + "px" - }) - } - reset() { this._resetElementAttributes(this._element, "overflow"), this._resetElementAttributes(this._element, "paddingRight"), this._resetElementAttributes(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", "paddingRight"), this._resetElementAttributes(".sticky-top", "marginRight") } - _saveInitialAttribute(t, e) { - const i = t.style[e]; - i && F.setDataAttribute(t, e, i) - } - _resetElementAttributes(t, e) { - this._applyManipulationCallback(t, t => { - const i = F.getDataAttribute(t, e); - void 0 === i ? t.style.removeProperty(e) : (F.removeDataAttribute(t, e), t.style[e] = i) - }) - } - _applyManipulationCallback(t, e) { s(t) ? e(t) : U.find(t, this._element).forEach(e) } - isOverflowing() { return this.getWidth() > 0 } - } - const Ce = { className: "modal-backdrop", isVisible: !0, isAnimated: !1, rootElement: "body", clickCallback: null }, - ke = { className: "string", isVisible: "boolean", isAnimated: "boolean", rootElement: "(element|string)", clickCallback: "(function|null)" }; - class Le { - constructor(t) { this._config = this._getConfig(t), this._isAppended = !1, this._element = null } - show(t) { this._config.isVisible ? (this._append(), this._config.isAnimated && d(this._getElement()), this._getElement().classList.add("show"), this._emulateAnimation(() => { g(t) })) : g(t) } - hide(t) { this._config.isVisible ? (this._getElement().classList.remove("show"), this._emulateAnimation(() => { this.dispose(), g(t) })) : g(t) } - _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 - } - _getConfig(t) { return (t = {...Ce, ... "object" == typeof t ? t : {} }).rootElement = o(t.rootElement), r("backdrop", t, ke), t } - _append() { this._isAppended || (this._config.rootElement.append(this._getElement()), P.on(this._getElement(), "mousedown.bs.backdrop", () => { g(this._config.clickCallback) }), this._isAppended = !0) } - dispose() { this._isAppended && (P.off(this._element, "mousedown.bs.backdrop"), this._element.remove(), this._isAppended = !1) } - _emulateAnimation(t) { _(t, this._getElement(), this._config.isAnimated) } - } - const xe = { trapElement: null, autofocus: !0 }, - De = { trapElement: "element", autofocus: "boolean" }; - class Se { - constructor(t) { this._config = this._getConfig(t), this._isActive = !1, this._lastTabNavDirection = null } - activate() { - const { trapElement: t, autofocus: e } = this._config; - this._isActive || (e && t.focus(), P.off(document, ".bs.focustrap"), 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, ".bs.focustrap")) } - _handleFocusin(t) { - const { target: e } = t, { trapElement: i } = this._config; - if (e === document || e === i || i.contains(e)) return; - const n = U.focusableChildren(i); - 0 === n.length ? i.focus() : "backward" === this._lastTabNavDirection ? n[n.length - 1].focus() : n[0].focus() - } - _handleKeydown(t) { "Tab" === t.key && (this._lastTabNavDirection = t.shiftKey ? "backward" : "forward") } - _getConfig(t) { return t = {...xe, ... "object" == typeof t ? t : {} }, r("focustrap", t, De), t } - } - const Ne = { backdrop: !0, keyboard: !0, focus: !0 }, - Ie = { backdrop: "(boolean|string)", keyboard: "boolean", focus: "boolean" }; - class Pe extends H { - constructor(t, e) { super(t), this._config = this._getConfig(e), this._dialog = U.findOne(".modal-dialog", this._element), this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._isShown = !1, this._ignoreBackdropClick = !1, this._isTransitioning = !1, this._scrollBar = new Oe } - static get Default() { return Ne } - 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, "show.bs.modal", { relatedTarget: t }).defaultPrevented || (this._isShown = !0, this._isAnimated() && (this._isTransitioning = !0), this._scrollBar.hide(), document.body.classList.add("modal-open"), this._adjustDialog(), this._setEscapeEvent(), this._setResizeEvent(), P.on(this._dialog, "mousedown.dismiss.bs.modal", () => { P.one(this._element, "mouseup.dismiss.bs.modal", t => { t.target === this._element && (this._ignoreBackdropClick = !0) }) }), this._showBackdrop(() => this._showElement(t))) } - hide() { - if (!this._isShown || this._isTransitioning) return; - if (P.trigger(this._element, "hide.bs.modal").defaultPrevented) return; - this._isShown = !1; - const t = this._isAnimated(); - t && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), this._focustrap.deactivate(), this._element.classList.remove("show"), P.off(this._element, "click.dismiss.bs.modal"), P.off(this._dialog, "mousedown.dismiss.bs.modal"), this._queueCallback(() => this._hideModal(), this._element, t) - } - dispose() { - [window, this._dialog].forEach(t => P.off(t, ".bs.modal")), this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() - } - handleUpdate() { this._adjustDialog() } - _initializeBackDrop() { return new Le({ isVisible: Boolean(this._config.backdrop), isAnimated: this._isAnimated() }) } - _initializeFocusTrap() { return new Se({ trapElement: this._element }) } - _getConfig(t) { return t = {...Ne, ...F.getDataAttributes(this._element), ... "object" == typeof t ? t : {} }, r("modal", t, Ie), t } - _showElement(t) { - const e = this._isAnimated(), - i = U.findOne(".modal-body", this._dialog); - this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || 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, i && (i.scrollTop = 0), e && d(this._element), this._element.classList.add("show"), this._queueCallback(() => { this._config.focus && this._focustrap.activate(), this._isTransitioning = !1, P.trigger(this._element, "shown.bs.modal", { relatedTarget: t }) }, this._dialog, e) - } - _setEscapeEvent() { this._isShown ? P.on(this._element, "keydown.dismiss.bs.modal", t => { this._config.keyboard && "Escape" === t.key ? (t.preventDefault(), this.hide()) : this._config.keyboard || "Escape" !== t.key || this._triggerBackdropTransition() }) : P.off(this._element, "keydown.dismiss.bs.modal") } - _setResizeEvent() { this._isShown ? P.on(window, "resize.bs.modal", () => this._adjustDialog()) : P.off(window, "resize.bs.modal") } - _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("modal-open"), this._resetAdjustments(), this._scrollBar.reset(), P.trigger(this._element, "hidden.bs.modal") }) } - _showBackdrop(t) { P.on(this._element, "click.dismiss.bs.modal", t => { this._ignoreBackdropClick ? this._ignoreBackdropClick = !1 : t.target === t.currentTarget && (!0 === this._config.backdrop ? this.hide() : "static" === this._config.backdrop && this._triggerBackdropTransition()) }), this._backdrop.show(t) } - _isAnimated() { return this._element.classList.contains("fade") } - _triggerBackdropTransition() { if (P.trigger(this._element, "hidePrevented.bs.modal").defaultPrevented) return; const { classList: t, scrollHeight: e, style: i } = this._element, n = e > document.documentElement.clientHeight;!n && "hidden" === i.overflowY || t.contains("modal-static") || (n || (i.overflowY = "hidden"), t.add("modal-static"), this._queueCallback(() => { t.remove("modal-static"), n || this._queueCallback(() => { i.overflowY = "" }, this._dialog) }, this._dialog), this._element.focus()) } - _adjustDialog() { - const t = this._element.scrollHeight > document.documentElement.clientHeight, - e = this._scrollBar.getWidth(), - i = e > 0; - (!i && t && !p() || i && !t && p()) && (this._element.style.paddingLeft = e + "px"), (i && !t && !p() || !i && t && p()) && (this._element.style.paddingRight = e + "px") - } - _resetAdjustments() { this._element.style.paddingLeft = "", this._element.style.paddingRight = "" } - static jQueryInterface(t, e) { - return this.each((function() { - const i = Pe.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 = i(this); - ["A", "AREA"].includes(this.tagName) && t.preventDefault(), P.one(e, "show.bs.modal", t => { t.defaultPrevented || P.one(e, "hidden.bs.modal", () => { a(this) && this.focus() }) }), Pe.getOrCreateInstance(e).toggle(this) - })), B(Pe), m(Pe); - const je = { backdrop: !0, keyboard: !0, scroll: !1 }, - Me = { backdrop: "boolean", keyboard: "boolean", scroll: "boolean" }; - class He extends H { - constructor(t, e) { super(t), this._config = this._getConfig(e), this._isShown = !1, this._backdrop = this._initializeBackDrop(), this._focustrap = this._initializeFocusTrap(), this._addEventListeners() } - static get NAME() { return "offcanvas" } - static get Default() { return je } - 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._element.style.visibility = "visible", this._backdrop.show(), this._config.scroll || (new Oe).hide(), this._element.removeAttribute("aria-hidden"), this._element.setAttribute("aria-modal", !0), this._element.setAttribute("role", "dialog"), this._element.classList.add("show"), this._queueCallback(() => { this._config.scroll || this._focustrap.activate(), 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.remove("show"), this._backdrop.hide(), this._queueCallback(() => { this._element.setAttribute("aria-hidden", !0), this._element.removeAttribute("aria-modal"), this._element.removeAttribute("role"), this._element.style.visibility = "hidden", this._config.scroll || (new Oe).reset(), P.trigger(this._element, "hidden.bs.offcanvas") }, this._element, !0))) } - dispose() { this._backdrop.dispose(), this._focustrap.deactivate(), super.dispose() } - _getConfig(t) { return t = {...je, ...F.getDataAttributes(this._element), ... "object" == typeof t ? t : {} }, r("offcanvas", t, Me), t } - _initializeBackDrop() { return new Le({ className: "offcanvas-backdrop", isVisible: this._config.backdrop, isAnimated: !0, rootElement: this._element.parentNode, clickCallback: () => this.hide() }) } - _initializeFocusTrap() { return new Se({ trapElement: this._element }) } - _addEventListeners() { P.on(this._element, "keydown.dismiss.bs.offcanvas", t => { this._config.keyboard && "Escape" === t.key && this.hide() }) } - static jQueryInterface(t) { - return this.each((function() { - const e = He.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 = i(this); - if (["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this)) return; - P.one(e, "hidden.bs.offcanvas", () => { a(this) && this.focus() }); - const n = U.findOne(".offcanvas.show"); - n && n !== e && He.getInstance(n).hide(), He.getOrCreateInstance(e).toggle(this) - })), P.on(window, "load.bs.offcanvas.data-api", () => U.find(".offcanvas.show").forEach(t => He.getOrCreateInstance(t).show())), B(He), m(He); - const Be = new Set(["background", "cite", "href", "itemtype", "longdesc", "poster", "src", "xlink:href"]), - Re = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i, - We = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i, - ze = (t, e) => { - const i = t.nodeName.toLowerCase(); - if (e.includes(i)) return !Be.has(i) || Boolean(Re.test(t.nodeValue) || We.test(t.nodeValue)); - const n = e.filter(t => t instanceof RegExp); - for (let t = 0, e = n.length; t < e; t++) - if (n[t].test(i)) return !0; - return !1 - }; - - function qe(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 = Object.keys(e), - o = [].concat(...n.body.querySelectorAll("*")); - for (let t = 0, i = o.length; t < i; t++) { - const i = o[t], - n = i.nodeName.toLowerCase(); - if (!s.includes(n)) { i.remove(); continue } - const r = [].concat(...i.attributes), - a = [].concat(e["*"] || [], e[n] || []); - r.forEach(t => { ze(t, a) || i.removeAttribute(t.nodeName) }) - } - return n.body.innerHTML - } - const Fe = new Set(["sanitize", "allowList", "sanitizeFn"]), - Ue = { animation: "boolean", template: "string", title: "(string|element|function)", trigger: "string", delay: "(number|object)", html: "boolean", selector: "(string|boolean)", placement: "(string|function)", offset: "(array|string|function)", container: "(string|element|boolean)", fallbackPlacements: "array", boundary: "(string|element)", customClass: "(string|function)", sanitize: "boolean", sanitizeFn: "(null|function)", allowList: "object", popperConfig: "(null|object|function)" }, - $e = { AUTO: "auto", TOP: "top", RIGHT: p() ? "left" : "right", BOTTOM: "bottom", LEFT: p() ? "right" : "left" }, - Ve = { animation: !0, template: '', trigger: "hover focus", title: "", delay: 0, html: !1, selector: !1, placement: "top", offset: [0, 0], container: !1, fallbackPlacements: ["top", "right", "bottom", "left"], boundary: "clippingParents", customClass: "", sanitize: !0, sanitizeFn: null, allowList: { "*": ["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: [] }, popperConfig: null }, - Ke = { HIDE: "hide.bs.tooltip", HIDDEN: "hidden.bs.tooltip", SHOW: "show.bs.tooltip", SHOWN: "shown.bs.tooltip", INSERTED: "inserted.bs.tooltip", CLICK: "click.bs.tooltip", FOCUSIN: "focusin.bs.tooltip", FOCUSOUT: "focusout.bs.tooltip", MOUSEENTER: "mouseenter.bs.tooltip", MOUSELEAVE: "mouseleave.bs.tooltip" }; - class Xe extends H { - constructor(t, e) { - if (void 0 === pe) throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)"); - super(t), this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._popper = null, this._config = this._getConfig(e), this.tip = null, this._setListeners() - } - static get Default() { return Ve } - static get NAME() { return "tooltip" } - static get Event() { return Ke } - static get DefaultType() { return Ue } - enable() { this._isEnabled = !0 } - disable() { this._isEnabled = !1 } - toggleEnabled() { this._isEnabled = !this._isEnabled } - toggle(t) { - if (this._isEnabled) - if (t) { - const e = this._initializeOnDelegatedTarget(t); - e._activeTrigger.click = !e._activeTrigger.click, e._isWithActiveTrigger() ? e._enter(null, e) : e._leave(null, e) - } else { - if (this.getTipElement().classList.contains("show")) return void this._leave(null, this); - this._enter(null, this) - } - } - dispose() { clearTimeout(this._timeout), P.off(this._element.closest(".modal"), "hide.bs.modal", this._hideModalHandler), this.tip && this.tip.remove(), this._popper && this._popper.destroy(), 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.Event.SHOW), - e = c(this._element), - i = null === e ? this._element.ownerDocument.documentElement.contains(this._element) : e.contains(this._element); - if (t.defaultPrevented || !i) return; - const n = this.getTipElement(), - s = (t => { do { t += Math.floor(1e6 * Math.random()) } while (document.getElementById(t)); return t })(this.constructor.NAME); - n.setAttribute("id", s), this._element.setAttribute("aria-describedby", s), this._config.animation && n.classList.add("fade"); - const o = "function" == typeof this._config.placement ? this._config.placement.call(this, n, this._element) : this._config.placement, - r = this._getAttachment(o); - this._addAttachmentClass(r); - const { container: a } = this._config; - M.set(n, this.constructor.DATA_KEY, this), this._element.ownerDocument.documentElement.contains(this.tip) || (a.append(n), P.trigger(this._element, this.constructor.Event.INSERTED)), this._popper ? this._popper.update() : this._popper = fe(this._element, n, this._getPopperConfig(r)), n.classList.add("show"); - const l = this._resolvePossibleFunction(this._config.customClass); - l && n.classList.add(...l.split(" ")), "ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => { P.on(t, "mouseover", h) }); - const d = this.tip.classList.contains("fade"); - this._queueCallback(() => { - const t = this._hoverState; - this._hoverState = null, P.trigger(this._element, this.constructor.Event.SHOWN), "out" === t && this._leave(null, this) - }, this.tip, d) - } - hide() { - if (!this._popper) return; - const t = this.getTipElement(); - if (P.trigger(this._element, this.constructor.Event.HIDE).defaultPrevented) return; - t.classList.remove("show"), "ontouchstart" in document.documentElement && [].concat(...document.body.children).forEach(t => P.off(t, "mouseover", h)), this._activeTrigger.click = !1, this._activeTrigger.focus = !1, this._activeTrigger.hover = !1; - const e = this.tip.classList.contains("fade"); - this._queueCallback(() => { this._isWithActiveTrigger() || ("show" !== this._hoverState && t.remove(), this._cleanTipClass(), this._element.removeAttribute("aria-describedby"), P.trigger(this._element, this.constructor.Event.HIDDEN), this._popper && (this._popper.destroy(), this._popper = null)) }, this.tip, e), this._hoverState = "" - } - update() { null !== this._popper && this._popper.update() } - isWithContent() { return Boolean(this.getTitle()) } - getTipElement() { - if (this.tip) return this.tip; - const t = document.createElement("div"); - t.innerHTML = this._config.template; - const e = t.children[0]; - return this.setContent(e), e.classList.remove("fade", "show"), this.tip = e, this.tip - } - setContent(t) { this._sanitizeAndSetContent(t, this.getTitle(), ".tooltip-inner") } - _sanitizeAndSetContent(t, e, i) { - const n = U.findOne(i, t); - e || !n ? this.setElementContent(n, e) : n.remove() - } - setElementContent(t, e) { if (null !== t) return s(e) ? (e = o(e), void(this._config.html ? e.parentNode !== t && (t.innerHTML = "", t.append(e)) : t.textContent = e.textContent)) : void(this._config.html ? (this._config.sanitize && (e = qe(e, this._config.allowList, this._config.sanitizeFn)), t.innerHTML = e) : t.textContent = e) } - getTitle() { const t = this._element.getAttribute("data-bs-original-title") || this._config.title; return this._resolvePossibleFunction(t) } - updateAttachment(t) { return "right" === t ? "end" : "left" === t ? "start" : t } - _initializeOnDelegatedTarget(t, e) { return e || this.constructor.getOrCreateInstance(t.delegateTarget, this._getDelegateConfig()) } - _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: "onChange", enabled: !0, phase: "afterWrite", fn: t => this._handlePopperPlacementChange(t) }], onFirstUpdate: t => { t.options.placement !== t.placement && this._handlePopperPlacementChange(t) } }; return {...e, ... "function" == typeof this._config.popperConfig ? this._config.popperConfig(e) : this._config.popperConfig } } - _addAttachmentClass(t) { this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(t)}`) } - _getAttachment(t) { return $e[t.toUpperCase()] } - _setListeners() { - this._config.trigger.split(" ").forEach(t => { - if ("click" === t) P.on(this._element, this.constructor.Event.CLICK, this._config.selector, t => this.toggle(t)); - else if ("manual" !== t) { - const e = "hover" === t ? this.constructor.Event.MOUSEENTER : this.constructor.Event.FOCUSIN, - i = "hover" === t ? this.constructor.Event.MOUSELEAVE : this.constructor.Event.FOCUSOUT; - P.on(this._element, e, this._config.selector, t => this._enter(t)), P.on(this._element, i, this._config.selector, t => this._leave(t)) - } - }), this._hideModalHandler = () => { this._element && this.hide() }, P.on(this._element.closest(".modal"), "hide.bs.modal", this._hideModalHandler), this._config.selector ? this._config = {...this._config, trigger: "manual", selector: "" } : this._fixTitle() - } - _fixTitle() { - const t = this._element.getAttribute("title"), - e = typeof this._element.getAttribute("data-bs-original-title"); - (t || "string" !== e) && (this._element.setAttribute("data-bs-original-title", t || ""), !t || this._element.getAttribute("aria-label") || this._element.textContent || this._element.setAttribute("aria-label", t), this._element.setAttribute("title", "")) - } - _enter(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusin" === t.type ? "focus" : "hover"] = !0), e.getTipElement().classList.contains("show") || "show" === e._hoverState ? e._hoverState = "show" : (clearTimeout(e._timeout), e._hoverState = "show", e._config.delay && e._config.delay.show ? e._timeout = setTimeout(() => { "show" === e._hoverState && e.show() }, e._config.delay.show) : e.show()) } - _leave(t, e) { e = this._initializeOnDelegatedTarget(t, e), t && (e._activeTrigger["focusout" === t.type ? "focus" : "hover"] = e._element.contains(t.relatedTarget)), e._isWithActiveTrigger() || (clearTimeout(e._timeout), e._hoverState = "out", e._config.delay && e._config.delay.hide ? e._timeout = setTimeout(() => { "out" === e._hoverState && e.hide() }, e._config.delay.hide) : e.hide()) } - _isWithActiveTrigger() { - for (const t in this._activeTrigger) - if (this._activeTrigger[t]) return !0; - return !1 - } - _getConfig(t) { const e = F.getDataAttributes(this._element); return Object.keys(e).forEach(t => { Fe.has(t) && delete e[t] }), (t = {...this.constructor.Default, ...e, ... "object" == typeof t && t ? t : {} }).container = !1 === t.container ? document.body : o(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()), r("tooltip", t, this.constructor.DefaultType), t.sanitize && (t.template = qe(t.template, t.allowList, t.sanitizeFn)), t } - _getDelegateConfig() { const t = {}; for (const e in this._config) this.constructor.Default[e] !== this._config[e] && (t[e] = this._config[e]); return t } - _cleanTipClass() { - const t = this.getTipElement(), - e = new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`, "g"), - i = t.getAttribute("class").match(e); - null !== i && i.length > 0 && i.map(t => t.trim()).forEach(e => t.classList.remove(e)) - } - _getBasicClassPrefix() { return "bs-tooltip" } - _handlePopperPlacementChange(t) { - const { state: e } = t; - e && (this.tip = e.elements.popper, this._cleanTipClass(), this._addAttachmentClass(this._getAttachment(e.placement))) - } - static jQueryInterface(t) { - return this.each((function() { - const e = Xe.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - m(Xe); - const Ye = {...Xe.Default, placement: "right", offset: [0, 8], trigger: "click", content: "", template: '' }, - Qe = {...Xe.DefaultType, content: "(string|element|function)" }, - Ge = { HIDE: "hide.bs.popover", HIDDEN: "hidden.bs.popover", SHOW: "show.bs.popover", SHOWN: "shown.bs.popover", INSERTED: "inserted.bs.popover", CLICK: "click.bs.popover", FOCUSIN: "focusin.bs.popover", FOCUSOUT: "focusout.bs.popover", MOUSEENTER: "mouseenter.bs.popover", MOUSELEAVE: "mouseleave.bs.popover" }; - class Ze extends Xe { - static get Default() { return Ye } - static get NAME() { return "popover" } - static get Event() { return Ge } - static get DefaultType() { return Qe } - isWithContent() { return this.getTitle() || this._getContent() } - setContent(t) { this._sanitizeAndSetContent(t, this.getTitle(), ".popover-header"), this._sanitizeAndSetContent(t, this._getContent(), ".popover-body") } - _getContent() { return this._resolvePossibleFunction(this._config.content) } - _getBasicClassPrefix() { return "bs-popover" } - static jQueryInterface(t) { - return this.each((function() { - const e = Ze.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - m(Ze); - const Je = { offset: 10, method: "auto", target: "" }, - ti = { offset: "number", method: "string", target: "(string|element)" }, - ei = ".nav-link, .list-group-item, .dropdown-item"; - class ii extends H { - constructor(t, e) { super(t), this._scrollElement = "BODY" === this._element.tagName ? window : this._element, this._config = this._getConfig(e), this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, P.on(this._scrollElement, "scroll.bs.scrollspy", () => this._process()), this.refresh(), this._process() } - static get Default() { return Je } - static get NAME() { return "scrollspy" } - refresh() { - const t = this._scrollElement === this._scrollElement.window ? "offset" : "position", - i = "auto" === this._config.method ? t : this._config.method, - n = "position" === i ? this._getScrollTop() : 0; - this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), U.find(ei, this._config.target).map(t => { - const s = e(t), - o = s ? U.findOne(s) : null; - if (o) { const t = o.getBoundingClientRect(); if (t.width || t.height) return [F[i](o).top + n, s] } - return null - }).filter(t => t).sort((t, e) => t[0] - e[0]).forEach(t => { this._offsets.push(t[0]), this._targets.push(t[1]) }) - } - dispose() { P.off(this._scrollElement, ".bs.scrollspy"), super.dispose() } - _getConfig(t) { return (t = {...Je, ...F.getDataAttributes(this._element), ... "object" == typeof t && t ? t : {} }).target = o(t.target) || document.documentElement, r("scrollspy", t, ti), t } - _getScrollTop() { return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop } - _getScrollHeight() { return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight) } - _getOffsetHeight() { return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height } - _process() { - const t = this._getScrollTop() + this._config.offset, - e = this._getScrollHeight(), - i = this._config.offset + e - this._getOffsetHeight(); - if (this._scrollHeight !== e && this.refresh(), t >= i) { - const t = this._targets[this._targets.length - 1]; - this._activeTarget !== t && this._activate(t) - } else { if (this._activeTarget && t < this._offsets[0] && this._offsets[0] > 0) return this._activeTarget = null, void this._clear(); for (let e = this._offsets.length; e--;) this._activeTarget !== this._targets[e] && t >= this._offsets[e] && (void 0 === this._offsets[e + 1] || t < this._offsets[e + 1]) && this._activate(this._targets[e]) } - } - _activate(t) { - this._activeTarget = t, this._clear(); - const e = ei.split(",").map(e => `${e}[data-bs-target="${t}"],${e}[href="${t}"]`), - i = U.findOne(e.join(","), this._config.target); - i.classList.add("active"), i.classList.contains("dropdown-item") ? U.findOne(".dropdown-toggle", i.closest(".dropdown")).classList.add("active") : U.parents(i, ".nav, .list-group").forEach(t => { U.prev(t, ".nav-link, .list-group-item").forEach(t => t.classList.add("active")), U.prev(t, ".nav-item").forEach(t => { U.children(t, ".nav-link").forEach(t => t.classList.add("active")) }) }), P.trigger(this._scrollElement, "activate.bs.scrollspy", { relatedTarget: t }) - } - _clear() { U.find(ei, this._config.target).filter(t => t.classList.contains("active")).forEach(t => t.classList.remove("active")) } - static jQueryInterface(t) { - return this.each((function() { - const e = ii.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - P.on(window, "load.bs.scrollspy.data-api", () => { U.find('[data-bs-spy="scroll"]').forEach(t => new ii(t)) }), m(ii); - class ni extends H { - static get NAME() { return "tab" } - show() { - if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && this._element.classList.contains("active")) return; - let t; - const e = i(this._element), - n = this._element.closest(".nav, .list-group"); - if (n) { - const e = "UL" === n.nodeName || "OL" === n.nodeName ? ":scope > li > .active" : ".active"; - t = U.find(e, n), t = t[t.length - 1] - } - const s = t ? P.trigger(t, "hide.bs.tab", { relatedTarget: this._element }) : null; - if (P.trigger(this._element, "show.bs.tab", { relatedTarget: t }).defaultPrevented || null !== s && s.defaultPrevented) return; - this._activate(this._element, n); - const o = () => { P.trigger(t, "hidden.bs.tab", { relatedTarget: this._element }), P.trigger(this._element, "shown.bs.tab", { relatedTarget: t }) }; - e ? this._activate(e, e.parentNode, o) : o() - } - _activate(t, e, i) { - const n = (!e || "UL" !== e.nodeName && "OL" !== e.nodeName ? U.children(e, ".active") : U.find(":scope > li > .active", e))[0], - s = i && n && n.classList.contains("fade"), - o = () => this._transitionComplete(t, n, i); - n && s ? (n.classList.remove("show"), this._queueCallback(o, t, !0)) : o() - } - _transitionComplete(t, e, i) { - if (e) { - e.classList.remove("active"); - const t = U.findOne(":scope > .dropdown-menu .active", e.parentNode); - t && t.classList.remove("active"), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !1) - } - t.classList.add("active"), "tab" === t.getAttribute("role") && t.setAttribute("aria-selected", !0), d(t), t.classList.contains("fade") && t.classList.add("show"); - let n = t.parentNode; - if (n && "LI" === n.nodeName && (n = n.parentNode), n && n.classList.contains("dropdown-menu")) { - const e = t.closest(".dropdown"); - e && U.find(".dropdown-toggle", e).forEach(t => t.classList.add("active")), t.setAttribute("aria-expanded", !0) - } - i && i() - } - static jQueryInterface(t) { - return this.each((function() { - const e = ni.getOrCreateInstance(this); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t]() - } - })) - } - } - P.on(document, "click.bs.tab.data-api", '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]', (function(t) { - ["A", "AREA"].includes(this.tagName) && t.preventDefault(), l(this) || ni.getOrCreateInstance(this).show() - })), m(ni); - const si = { animation: "boolean", autohide: "boolean", delay: "number" }, - oi = { animation: !0, autohide: !0, delay: 5e3 }; - class ri extends H { - constructor(t, e) { super(t), this._config = this._getConfig(e), this._timeout = null, this._hasMouseInteraction = !1, this._hasKeyboardInteraction = !1, this._setListeners() } - static get DefaultType() { return si } - static get Default() { return oi } - 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("hide"), d(this._element), this._element.classList.add("show"), this._element.classList.add("showing"), this._queueCallback(() => { this._element.classList.remove("showing"), P.trigger(this._element, "shown.bs.toast"), this._maybeScheduleHide() }, this._element, this._config.animation)) } - hide() { this._element.classList.contains("show") && (P.trigger(this._element, "hide.bs.toast").defaultPrevented || (this._element.classList.add("showing"), this._queueCallback(() => { this._element.classList.add("hide"), this._element.classList.remove("showing"), this._element.classList.remove("show"), P.trigger(this._element, "hidden.bs.toast") }, this._element, this._config.animation))) } - dispose() { this._clearTimeout(), this._element.classList.contains("show") && this._element.classList.remove("show"), super.dispose() } - _getConfig(t) { return t = {...oi, ...F.getDataAttributes(this._element), ... "object" == typeof t && t ? t : {} }, r("toast", t, this.constructor.DefaultType), t } - _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 = ri.getOrCreateInstance(this, t); - if ("string" == typeof t) { - if (void 0 === e[t]) throw new TypeError(`No method named "${t}"`); - e[t](this) - } - })) - } - } - return B(ri), m(ri), { Alert: R, Button: W, Carousel: Z, Collapse: et, Dropdown: Te, Modal: Pe, Offcanvas: He, Popover: Ze, ScrollSpy: ii, Tab: ni, Toast: ri, Tooltip: Xe } -})); -//# sourceMappingURL=bootstrap.bundle.min.js.map \ No newline at end of file diff --git a/webapp/app/views/static/overview/fonts/fa-brands-400.eot b/webapp/app/views/static/overview/fonts/fa-brands-400.eot deleted file mode 100644 index baf4057..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-brands-400.eot and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-brands-400.svg b/webapp/app/views/static/overview/fonts/fa-brands-400.svg deleted file mode 100644 index 843c1c7..0000000 --- a/webapp/app/views/static/overview/fonts/fa-brands-400.svg +++ /dev/null @@ -1,3535 +0,0 @@ - - - - - -Created by FontForge 20190801 at Tue Dec 10 16:09:21 2019 - By Robert Madole -Copyright (c) Font Awesome - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/webapp/app/views/static/overview/fonts/fa-brands-400.ttf b/webapp/app/views/static/overview/fonts/fa-brands-400.ttf deleted file mode 100644 index 9916328..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-brands-400.ttf and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-brands-400.woff b/webapp/app/views/static/overview/fonts/fa-brands-400.woff deleted file mode 100644 index f9e3bcd..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-brands-400.woff and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-brands-400.woff2 b/webapp/app/views/static/overview/fonts/fa-brands-400.woff2 deleted file mode 100644 index 51c07ae..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-brands-400.woff2 and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-regular-400.eot b/webapp/app/views/static/overview/fonts/fa-regular-400.eot deleted file mode 100644 index 04e25cb..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-regular-400.eot and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-regular-400.svg b/webapp/app/views/static/overview/fonts/fa-regular-400.svg deleted file mode 100644 index f1f7e6c..0000000 --- a/webapp/app/views/static/overview/fonts/fa-regular-400.svg +++ /dev/null @@ -1,803 +0,0 @@ - - - - - -Created by FontForge 20190801 at Tue Dec 10 16:09:21 2019 - By Robert Madole -Copyright (c) Font Awesome - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/webapp/app/views/static/overview/fonts/fa-regular-400.ttf b/webapp/app/views/static/overview/fonts/fa-regular-400.ttf deleted file mode 100644 index 9c6249c..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-regular-400.ttf and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-regular-400.woff b/webapp/app/views/static/overview/fonts/fa-regular-400.woff deleted file mode 100644 index 2873e43..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-regular-400.woff and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-regular-400.woff2 b/webapp/app/views/static/overview/fonts/fa-regular-400.woff2 deleted file mode 100644 index a34bd65..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-regular-400.woff2 and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-solid-900.eot b/webapp/app/views/static/overview/fonts/fa-solid-900.eot deleted file mode 100644 index 39716a7..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-solid-900.eot and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-solid-900.svg b/webapp/app/views/static/overview/fonts/fa-solid-900.svg deleted file mode 100644 index cfd0e2f..0000000 --- a/webapp/app/views/static/overview/fonts/fa-solid-900.svg +++ /dev/null @@ -1,4700 +0,0 @@ - - - - - -Created by FontForge 20190801 at Tue Dec 10 16:09:21 2019 - By Robert Madole -Copyright (c) Font Awesome - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/webapp/app/views/static/overview/fonts/fa-solid-900.ttf b/webapp/app/views/static/overview/fonts/fa-solid-900.ttf deleted file mode 100644 index ac4baa2..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-solid-900.ttf and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-solid-900.woff b/webapp/app/views/static/overview/fonts/fa-solid-900.woff deleted file mode 100644 index 23002f8..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-solid-900.woff and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fa-solid-900.woff2 b/webapp/app/views/static/overview/fonts/fa-solid-900.woff2 deleted file mode 100644 index b37f209..0000000 Binary files a/webapp/app/views/static/overview/fonts/fa-solid-900.woff2 and /dev/null differ diff --git a/webapp/app/views/static/overview/fonts/fontawesome-all.min.css b/webapp/app/views/static/overview/fonts/fontawesome-all.min.css deleted file mode 100644 index 6be6a24..0000000 --- a/webapp/app/views/static/overview/fonts/fontawesome-all.min.css +++ /dev/null @@ -1,5917 +0,0 @@ -/*! - * Font Awesome Free 5.12.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ - -.fa, -.fab, -.fad, -.fal, -.far, -.fas { - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - display: inline-block; - font-style: normal; - font-variant: normal; - text-rendering: auto; - line-height: 1 -} - -.fa-lg { - font-size: 1.33333em; - line-height: .75em; - vertical-align: -.0667em -} - -.fa-xs { - font-size: .75em -} - -.fa-sm { - font-size: .875em -} - -.fa-1x { - font-size: 1em -} - -.fa-2x { - font-size: 2em -} - -.fa-3x { - font-size: 3em -} - -.fa-4x { - font-size: 4em -} - -.fa-5x { - font-size: 5em -} - -.fa-6x { - font-size: 6em -} - -.fa-7x { - font-size: 7em -} - -.fa-8x { - font-size: 8em -} - -.fa-9x { - font-size: 9em -} - -.fa-10x { - font-size: 10em -} - -.fa-fw { - text-align: center; - width: 1.25em -} - -.fa-ul { - list-style-type: none; - margin-left: 2.5em; - padding-left: 0 -} - -.fa-ul>li { - position: relative -} - -.fa-li { - left: -2em; - position: absolute; - text-align: center; - width: 2em; - line-height: inherit -} - -.fa-border { - border: .08em solid #eee; - border-radius: .1em; - padding: .2em .25em .15em -} - -.fa-pull-left { - float: left -} - -.fa-pull-right { - float: right -} - -.fa.fa-pull-left, -.fab.fa-pull-left, -.fal.fa-pull-left, -.far.fa-pull-left, -.fas.fa-pull-left { - margin-right: .3em -} - -.fa.fa-pull-right, -.fab.fa-pull-right, -.fal.fa-pull-right, -.far.fa-pull-right, -.fas.fa-pull-right { - margin-left: .3em -} - -.fa-spin { - -webkit-animation: fa-spin 2s linear infinite; - animation: fa-spin 2s linear infinite -} - -.fa-pulse { - -webkit-animation: fa-spin 1s steps(8) infinite; - animation: fa-spin 1s steps(8) infinite -} - -@-webkit-keyframes fa-spin { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg) - } - to { - -webkit-transform: rotate(1turn); - transform: rotate(1turn) - } -} - -@keyframes fa-spin { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg) - } - to { - -webkit-transform: rotate(1turn); - transform: rotate(1turn) - } -} - -.fa-rotate-90 { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; - -webkit-transform: rotate(90deg); - transform: rotate(90deg) -} - -.fa-rotate-180 { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; - -webkit-transform: rotate(180deg); - transform: rotate(180deg) -} - -.fa-rotate-270 { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; - -webkit-transform: rotate(270deg); - transform: rotate(270deg) -} - -.fa-flip-horizontal { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; - -webkit-transform: scaleX(-1); - transform: scaleX(-1) -} - -.fa-flip-vertical { - -webkit-transform: scaleY(-1); - transform: scaleY(-1) -} - -.fa-flip-both, -.fa-flip-horizontal.fa-flip-vertical, -.fa-flip-vertical { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)" -} - -.fa-flip-both, -.fa-flip-horizontal.fa-flip-vertical { - -webkit-transform: scale(-1); - transform: scale(-1) -} - -:root .fa-flip-both, -:root .fa-flip-horizontal, -:root .fa-flip-vertical, -:root .fa-rotate-90, -:root .fa-rotate-180, -:root .fa-rotate-270 { - -webkit-filter: none; - filter: none -} - -.fa-stack { - display: inline-block; - height: 2em; - line-height: 2em; - position: relative; - vertical-align: middle; - width: 2.5em -} - -.fa-stack-1x, -.fa-stack-2x { - left: 0; - position: absolute; - text-align: center; - width: 100% -} - -.fa-stack-1x { - line-height: inherit -} - -.fa-stack-2x { - font-size: 2em -} - -.fa-inverse { - color: #fff -} - -.fa-500px:before { - content: "\f26e" -} - -.fa-accessible-icon:before { - content: "\f368" -} - -.fa-accusoft:before { - content: "\f369" -} - -.fa-acquisitions-incorporated:before { - content: "\f6af" -} - -.fa-ad:before { - content: "\f641" -} - -.fa-address-book:before { - content: "\f2b9" -} - -.fa-address-card:before { - content: "\f2bb" -} - -.fa-adjust:before { - content: "\f042" -} - -.fa-adn:before { - content: "\f170" -} - -.fa-adobe:before { - content: "\f778" -} - -.fa-adversal:before { - content: "\f36a" -} - -.fa-affiliatetheme:before { - content: "\f36b" -} - -.fa-air-freshener:before { - content: "\f5d0" -} - -.fa-airbnb:before { - content: "\f834" -} - -.fa-algolia:before { - content: "\f36c" -} - -.fa-align-center:before { - content: "\f037" -} - -.fa-align-justify:before { - content: "\f039" -} - -.fa-align-left:before { - content: "\f036" -} - -.fa-align-right:before { - content: "\f038" -} - -.fa-alipay:before { - content: "\f642" -} - -.fa-allergies:before { - content: "\f461" -} - -.fa-amazon:before { - content: "\f270" -} - -.fa-amazon-pay:before { - content: "\f42c" -} - -.fa-ambulance:before { - content: "\f0f9" -} - -.fa-american-sign-language-interpreting:before { - content: "\f2a3" -} - -.fa-amilia:before { - content: "\f36d" -} - -.fa-anchor:before { - content: "\f13d" -} - -.fa-android:before { - content: "\f17b" -} - -.fa-angellist:before { - content: "\f209" -} - -.fa-angle-double-down:before { - content: "\f103" -} - -.fa-angle-double-left:before { - content: "\f100" -} - -.fa-angle-double-right:before { - content: "\f101" -} - -.fa-angle-double-up:before { - content: "\f102" -} - -.fa-angle-down:before { - content: "\f107" -} - -.fa-angle-left:before { - content: "\f104" -} - -.fa-angle-right:before { - content: "\f105" -} - -.fa-angle-up:before { - content: "\f106" -} - -.fa-angry:before { - content: "\f556" -} - -.fa-angrycreative:before { - content: "\f36e" -} - -.fa-angular:before { - content: "\f420" -} - -.fa-ankh:before { - content: "\f644" -} - -.fa-app-store:before { - content: "\f36f" -} - -.fa-app-store-ios:before { - content: "\f370" -} - -.fa-apper:before { - content: "\f371" -} - -.fa-apple:before { - content: "\f179" -} - -.fa-apple-alt:before { - content: "\f5d1" -} - -.fa-apple-pay:before { - content: "\f415" -} - -.fa-archive:before { - content: "\f187" -} - -.fa-archway:before { - content: "\f557" -} - -.fa-arrow-alt-circle-down:before { - content: "\f358" -} - -.fa-arrow-alt-circle-left:before { - content: "\f359" -} - -.fa-arrow-alt-circle-right:before { - content: "\f35a" -} - -.fa-arrow-alt-circle-up:before { - content: "\f35b" -} - -.fa-arrow-circle-down:before { - content: "\f0ab" -} - -.fa-arrow-circle-left:before { - content: "\f0a8" -} - -.fa-arrow-circle-right:before { - content: "\f0a9" -} - -.fa-arrow-circle-up:before { - content: "\f0aa" -} - -.fa-arrow-down:before { - content: "\f063" -} - -.fa-arrow-left:before { - content: "\f060" -} - -.fa-arrow-right:before { - content: "\f061" -} - -.fa-arrow-up:before { - content: "\f062" -} - -.fa-arrows-alt:before { - content: "\f0b2" -} - -.fa-arrows-alt-h:before { - content: "\f337" -} - -.fa-arrows-alt-v:before { - content: "\f338" -} - -.fa-artstation:before { - content: "\f77a" -} - -.fa-assistive-listening-systems:before { - content: "\f2a2" -} - -.fa-asterisk:before { - content: "\f069" -} - -.fa-asymmetrik:before { - content: "\f372" -} - -.fa-at:before { - content: "\f1fa" -} - -.fa-atlas:before { - content: "\f558" -} - -.fa-atlassian:before { - content: "\f77b" -} - -.fa-atom:before { - content: "\f5d2" -} - -.fa-audible:before { - content: "\f373" -} - -.fa-audio-description:before { - content: "\f29e" -} - -.fa-autoprefixer:before { - content: "\f41c" -} - -.fa-avianex:before { - content: "\f374" -} - -.fa-aviato:before { - content: "\f421" -} - -.fa-award:before { - content: "\f559" -} - -.fa-aws:before { - content: "\f375" -} - -.fa-baby:before { - content: "\f77c" -} - -.fa-baby-carriage:before { - content: "\f77d" -} - -.fa-backspace:before { - content: "\f55a" -} - -.fa-backward:before { - content: "\f04a" -} - -.fa-bacon:before { - content: "\f7e5" -} - -.fa-bahai:before { - content: "\f666" -} - -.fa-balance-scale:before { - content: "\f24e" -} - -.fa-balance-scale-left:before { - content: "\f515" -} - -.fa-balance-scale-right:before { - content: "\f516" -} - -.fa-ban:before { - content: "\f05e" -} - -.fa-band-aid:before { - content: "\f462" -} - -.fa-bandcamp:before { - content: "\f2d5" -} - -.fa-barcode:before { - content: "\f02a" -} - -.fa-bars:before { - content: "\f0c9" -} - -.fa-baseball-ball:before { - content: "\f433" -} - -.fa-basketball-ball:before { - content: "\f434" -} - -.fa-bath:before { - content: "\f2cd" -} - -.fa-battery-empty:before { - content: "\f244" -} - -.fa-battery-full:before { - content: "\f240" -} - -.fa-battery-half:before { - content: "\f242" -} - -.fa-battery-quarter:before { - content: "\f243" -} - -.fa-battery-three-quarters:before { - content: "\f241" -} - -.fa-battle-net:before { - content: "\f835" -} - -.fa-bed:before { - content: "\f236" -} - -.fa-beer:before { - content: "\f0fc" -} - -.fa-behance:before { - content: "\f1b4" -} - -.fa-behance-square:before { - content: "\f1b5" -} - -.fa-bell:before { - content: "\f0f3" -} - -.fa-bell-slash:before { - content: "\f1f6" -} - -.fa-bezier-curve:before { - content: "\f55b" -} - -.fa-bible:before { - content: "\f647" -} - -.fa-bicycle:before { - content: "\f206" -} - -.fa-biking:before { - content: "\f84a" -} - -.fa-bimobject:before { - content: "\f378" -} - -.fa-binoculars:before { - content: "\f1e5" -} - -.fa-biohazard:before { - content: "\f780" -} - -.fa-birthday-cake:before { - content: "\f1fd" -} - -.fa-bitbucket:before { - content: "\f171" -} - -.fa-bitcoin:before { - content: "\f379" -} - -.fa-bity:before { - content: "\f37a" -} - -.fa-black-tie:before { - content: "\f27e" -} - -.fa-blackberry:before { - content: "\f37b" -} - -.fa-blender:before { - content: "\f517" -} - -.fa-blender-phone:before { - content: "\f6b6" -} - -.fa-blind:before { - content: "\f29d" -} - -.fa-blog:before { - content: "\f781" -} - -.fa-blogger:before { - content: "\f37c" -} - -.fa-blogger-b:before { - content: "\f37d" -} - -.fa-bluetooth:before { - content: "\f293" -} - -.fa-bluetooth-b:before { - content: "\f294" -} - -.fa-bold:before { - content: "\f032" -} - -.fa-bolt:before { - content: "\f0e7" -} - -.fa-bomb:before { - content: "\f1e2" -} - -.fa-bone:before { - content: "\f5d7" -} - -.fa-bong:before { - content: "\f55c" -} - -.fa-book:before { - content: "\f02d" -} - -.fa-book-dead:before { - content: "\f6b7" -} - -.fa-book-medical:before { - content: "\f7e6" -} - -.fa-book-open:before { - content: "\f518" -} - -.fa-book-reader:before { - content: "\f5da" -} - -.fa-bookmark:before { - content: "\f02e" -} - -.fa-bootstrap:before { - content: "\f836" -} - -.fa-border-all:before { - content: "\f84c" -} - -.fa-border-none:before { - content: "\f850" -} - -.fa-border-style:before { - content: "\f853" -} - -.fa-bowling-ball:before { - content: "\f436" -} - -.fa-box:before { - content: "\f466" -} - -.fa-box-open:before { - content: "\f49e" -} - -.fa-boxes:before { - content: "\f468" -} - -.fa-braille:before { - content: "\f2a1" -} - -.fa-brain:before { - content: "\f5dc" -} - -.fa-bread-slice:before { - content: "\f7ec" -} - -.fa-briefcase:before { - content: "\f0b1" -} - -.fa-briefcase-medical:before { - content: "\f469" -} - -.fa-broadcast-tower:before { - content: "\f519" -} - -.fa-broom:before { - content: "\f51a" -} - -.fa-brush:before { - content: "\f55d" -} - -.fa-btc:before { - content: "\f15a" -} - -.fa-buffer:before { - content: "\f837" -} - -.fa-bug:before { - content: "\f188" -} - -.fa-building:before { - content: "\f1ad" -} - -.fa-bullhorn:before { - content: "\f0a1" -} - -.fa-bullseye:before { - content: "\f140" -} - -.fa-burn:before { - content: "\f46a" -} - -.fa-buromobelexperte:before { - content: "\f37f" -} - -.fa-bus:before { - content: "\f207" -} - -.fa-bus-alt:before { - content: "\f55e" -} - -.fa-business-time:before { - content: "\f64a" -} - -.fa-buy-n-large:before { - content: "\f8a6" -} - -.fa-buysellads:before { - content: "\f20d" -} - -.fa-calculator:before { - content: "\f1ec" -} - -.fa-calendar:before { - content: "\f133" -} - -.fa-calendar-alt:before { - content: "\f073" -} - -.fa-calendar-check:before { - content: "\f274" -} - -.fa-calendar-day:before { - content: "\f783" -} - -.fa-calendar-minus:before { - content: "\f272" -} - -.fa-calendar-plus:before { - content: "\f271" -} - -.fa-calendar-times:before { - content: "\f273" -} - -.fa-calendar-week:before { - content: "\f784" -} - -.fa-camera:before { - content: "\f030" -} - -.fa-camera-retro:before { - content: "\f083" -} - -.fa-campground:before { - content: "\f6bb" -} - -.fa-canadian-maple-leaf:before { - content: "\f785" -} - -.fa-candy-cane:before { - content: "\f786" -} - -.fa-cannabis:before { - content: "\f55f" -} - -.fa-capsules:before { - content: "\f46b" -} - -.fa-car:before { - content: "\f1b9" -} - -.fa-car-alt:before { - content: "\f5de" -} - -.fa-car-battery:before { - content: "\f5df" -} - -.fa-car-crash:before { - content: "\f5e1" -} - -.fa-car-side:before { - content: "\f5e4" -} - -.fa-caravan:before { - content: "\f8ff" -} - -.fa-caret-down:before { - content: "\f0d7" -} - -.fa-caret-left:before { - content: "\f0d9" -} - -.fa-caret-right:before { - content: "\f0da" -} - -.fa-caret-square-down:before { - content: "\f150" -} - -.fa-caret-square-left:before { - content: "\f191" -} - -.fa-caret-square-right:before { - content: "\f152" -} - -.fa-caret-square-up:before { - content: "\f151" -} - -.fa-caret-up:before { - content: "\f0d8" -} - -.fa-carrot:before { - content: "\f787" -} - -.fa-cart-arrow-down:before { - content: "\f218" -} - -.fa-cart-plus:before { - content: "\f217" -} - -.fa-cash-register:before { - content: "\f788" -} - -.fa-cat:before { - content: "\f6be" -} - -.fa-cc-amazon-pay:before { - content: "\f42d" -} - -.fa-cc-amex:before { - content: "\f1f3" -} - -.fa-cc-apple-pay:before { - content: "\f416" -} - -.fa-cc-diners-club:before { - content: "\f24c" -} - -.fa-cc-discover:before { - content: "\f1f2" -} - -.fa-cc-jcb:before { - content: "\f24b" -} - -.fa-cc-mastercard:before { - content: "\f1f1" -} - -.fa-cc-paypal:before { - content: "\f1f4" -} - -.fa-cc-stripe:before { - content: "\f1f5" -} - -.fa-cc-visa:before { - content: "\f1f0" -} - -.fa-centercode:before { - content: "\f380" -} - -.fa-centos:before { - content: "\f789" -} - -.fa-certificate:before { - content: "\f0a3" -} - -.fa-chair:before { - content: "\f6c0" -} - -.fa-chalkboard:before { - content: "\f51b" -} - -.fa-chalkboard-teacher:before { - content: "\f51c" -} - -.fa-charging-station:before { - content: "\f5e7" -} - -.fa-chart-area:before { - content: "\f1fe" -} - -.fa-chart-bar:before { - content: "\f080" -} - -.fa-chart-line:before { - content: "\f201" -} - -.fa-chart-pie:before { - content: "\f200" -} - -.fa-check:before { - content: "\f00c" -} - -.fa-check-circle:before { - content: "\f058" -} - -.fa-check-double:before { - content: "\f560" -} - -.fa-check-square:before { - content: "\f14a" -} - -.fa-cheese:before { - content: "\f7ef" -} - -.fa-chess:before { - content: "\f439" -} - -.fa-chess-bishop:before { - content: "\f43a" -} - -.fa-chess-board:before { - content: "\f43c" -} - -.fa-chess-king:before { - content: "\f43f" -} - -.fa-chess-knight:before { - content: "\f441" -} - -.fa-chess-pawn:before { - content: "\f443" -} - -.fa-chess-queen:before { - content: "\f445" -} - -.fa-chess-rook:before { - content: "\f447" -} - -.fa-chevron-circle-down:before { - content: "\f13a" -} - -.fa-chevron-circle-left:before { - content: "\f137" -} - -.fa-chevron-circle-right:before { - content: "\f138" -} - -.fa-chevron-circle-up:before { - content: "\f139" -} - -.fa-chevron-down:before { - content: "\f078" -} - -.fa-chevron-left:before { - content: "\f053" -} - -.fa-chevron-right:before { - content: "\f054" -} - -.fa-chevron-up:before { - content: "\f077" -} - -.fa-child:before { - content: "\f1ae" -} - -.fa-chrome:before { - content: "\f268" -} - -.fa-chromecast:before { - content: "\f838" -} - -.fa-church:before { - content: "\f51d" -} - -.fa-circle:before { - content: "\f111" -} - -.fa-circle-notch:before { - content: "\f1ce" -} - -.fa-city:before { - content: "\f64f" -} - -.fa-clinic-medical:before { - content: "\f7f2" -} - -.fa-clipboard:before { - content: "\f328" -} - -.fa-clipboard-check:before { - content: "\f46c" -} - -.fa-clipboard-list:before { - content: "\f46d" -} - -.fa-clock:before { - content: "\f017" -} - -.fa-clone:before { - content: "\f24d" -} - -.fa-closed-captioning:before { - content: "\f20a" -} - -.fa-cloud:before { - content: "\f0c2" -} - -.fa-cloud-download-alt:before { - content: "\f381" -} - -.fa-cloud-meatball:before { - content: "\f73b" -} - -.fa-cloud-moon:before { - content: "\f6c3" -} - -.fa-cloud-moon-rain:before { - content: "\f73c" -} - -.fa-cloud-rain:before { - content: "\f73d" -} - -.fa-cloud-showers-heavy:before { - content: "\f740" -} - -.fa-cloud-sun:before { - content: "\f6c4" -} - -.fa-cloud-sun-rain:before { - content: "\f743" -} - -.fa-cloud-upload-alt:before { - content: "\f382" -} - -.fa-cloudscale:before { - content: "\f383" -} - -.fa-cloudsmith:before { - content: "\f384" -} - -.fa-cloudversify:before { - content: "\f385" -} - -.fa-cocktail:before { - content: "\f561" -} - -.fa-code:before { - content: "\f121" -} - -.fa-code-branch:before { - content: "\f126" -} - -.fa-codepen:before { - content: "\f1cb" -} - -.fa-codiepie:before { - content: "\f284" -} - -.fa-coffee:before { - content: "\f0f4" -} - -.fa-cog:before { - content: "\f013" -} - -.fa-cogs:before { - content: "\f085" -} - -.fa-coins:before { - content: "\f51e" -} - -.fa-columns:before { - content: "\f0db" -} - -.fa-comment:before { - content: "\f075" -} - -.fa-comment-alt:before { - content: "\f27a" -} - -.fa-comment-dollar:before { - content: "\f651" -} - -.fa-comment-dots:before { - content: "\f4ad" -} - -.fa-comment-medical:before { - content: "\f7f5" -} - -.fa-comment-slash:before { - content: "\f4b3" -} - -.fa-comments:before { - content: "\f086" -} - -.fa-comments-dollar:before { - content: "\f653" -} - -.fa-compact-disc:before { - content: "\f51f" -} - -.fa-compass:before { - content: "\f14e" -} - -.fa-compress:before { - content: "\f066" -} - -.fa-compress-alt:before { - content: "\f422" -} - -.fa-compress-arrows-alt:before { - content: "\f78c" -} - -.fa-concierge-bell:before { - content: "\f562" -} - -.fa-confluence:before { - content: "\f78d" -} - -.fa-connectdevelop:before { - content: "\f20e" -} - -.fa-contao:before { - content: "\f26d" -} - -.fa-cookie:before { - content: "\f563" -} - -.fa-cookie-bite:before { - content: "\f564" -} - -.fa-copy:before { - content: "\f0c5" -} - -.fa-copyright:before { - content: "\f1f9" -} - -.fa-cotton-bureau:before { - content: "\f89e" -} - -.fa-couch:before { - content: "\f4b8" -} - -.fa-cpanel:before { - content: "\f388" -} - -.fa-creative-commons:before { - content: "\f25e" -} - -.fa-creative-commons-by:before { - content: "\f4e7" -} - -.fa-creative-commons-nc:before { - content: "\f4e8" -} - -.fa-creative-commons-nc-eu:before { - content: "\f4e9" -} - -.fa-creative-commons-nc-jp:before { - content: "\f4ea" -} - -.fa-creative-commons-nd:before { - content: "\f4eb" -} - -.fa-creative-commons-pd:before { - content: "\f4ec" -} - -.fa-creative-commons-pd-alt:before { - content: "\f4ed" -} - -.fa-creative-commons-remix:before { - content: "\f4ee" -} - -.fa-creative-commons-sa:before { - content: "\f4ef" -} - -.fa-creative-commons-sampling:before { - content: "\f4f0" -} - -.fa-creative-commons-sampling-plus:before { - content: "\f4f1" -} - -.fa-creative-commons-share:before { - content: "\f4f2" -} - -.fa-creative-commons-zero:before { - content: "\f4f3" -} - -.fa-credit-card:before { - content: "\f09d" -} - -.fa-critical-role:before { - content: "\f6c9" -} - -.fa-crop:before { - content: "\f125" -} - -.fa-crop-alt:before { - content: "\f565" -} - -.fa-cross:before { - content: "\f654" -} - -.fa-crosshairs:before { - content: "\f05b" -} - -.fa-crow:before { - content: "\f520" -} - -.fa-crown:before { - content: "\f521" -} - -.fa-crutch:before { - content: "\f7f7" -} - -.fa-css3:before { - content: "\f13c" -} - -.fa-css3-alt:before { - content: "\f38b" -} - -.fa-cube:before { - content: "\f1b2" -} - -.fa-cubes:before { - content: "\f1b3" -} - -.fa-cut:before { - content: "\f0c4" -} - -.fa-cuttlefish:before { - content: "\f38c" -} - -.fa-d-and-d:before { - content: "\f38d" -} - -.fa-d-and-d-beyond:before { - content: "\f6ca" -} - -.fa-dashcube:before { - content: "\f210" -} - -.fa-database:before { - content: "\f1c0" -} - -.fa-deaf:before { - content: "\f2a4" -} - -.fa-delicious:before { - content: "\f1a5" -} - -.fa-democrat:before { - content: "\f747" -} - -.fa-deploydog:before { - content: "\f38e" -} - -.fa-deskpro:before { - content: "\f38f" -} - -.fa-desktop:before { - content: "\f108" -} - -.fa-dev:before { - content: "\f6cc" -} - -.fa-deviantart:before { - content: "\f1bd" -} - -.fa-dharmachakra:before { - content: "\f655" -} - -.fa-dhl:before { - content: "\f790" -} - -.fa-diagnoses:before { - content: "\f470" -} - -.fa-diaspora:before { - content: "\f791" -} - -.fa-dice:before { - content: "\f522" -} - -.fa-dice-d20:before { - content: "\f6cf" -} - -.fa-dice-d6:before { - content: "\f6d1" -} - -.fa-dice-five:before { - content: "\f523" -} - -.fa-dice-four:before { - content: "\f524" -} - -.fa-dice-one:before { - content: "\f525" -} - -.fa-dice-six:before { - content: "\f526" -} - -.fa-dice-three:before { - content: "\f527" -} - -.fa-dice-two:before { - content: "\f528" -} - -.fa-digg:before { - content: "\f1a6" -} - -.fa-digital-ocean:before { - content: "\f391" -} - -.fa-digital-tachograph:before { - content: "\f566" -} - -.fa-directions:before { - content: "\f5eb" -} - -.fa-discord:before { - content: "\f392" -} - -.fa-discourse:before { - content: "\f393" -} - -.fa-divide:before { - content: "\f529" -} - -.fa-dizzy:before { - content: "\f567" -} - -.fa-dna:before { - content: "\f471" -} - -.fa-dochub:before { - content: "\f394" -} - -.fa-docker:before { - content: "\f395" -} - -.fa-dog:before { - content: "\f6d3" -} - -.fa-dollar-sign:before { - content: "\f155" -} - -.fa-dolly:before { - content: "\f472" -} - -.fa-dolly-flatbed:before { - content: "\f474" -} - -.fa-donate:before { - content: "\f4b9" -} - -.fa-door-closed:before { - content: "\f52a" -} - -.fa-door-open:before { - content: "\f52b" -} - -.fa-dot-circle:before { - content: "\f192" -} - -.fa-dove:before { - content: "\f4ba" -} - -.fa-download:before { - content: "\f019" -} - -.fa-draft2digital:before { - content: "\f396" -} - -.fa-drafting-compass:before { - content: "\f568" -} - -.fa-dragon:before { - content: "\f6d5" -} - -.fa-draw-polygon:before { - content: "\f5ee" -} - -.fa-dribbble:before { - content: "\f17d" -} - -.fa-dribbble-square:before { - content: "\f397" -} - -.fa-dropbox:before { - content: "\f16b" -} - -.fa-drum:before { - content: "\f569" -} - -.fa-drum-steelpan:before { - content: "\f56a" -} - -.fa-drumstick-bite:before { - content: "\f6d7" -} - -.fa-drupal:before { - content: "\f1a9" -} - -.fa-dumbbell:before { - content: "\f44b" -} - -.fa-dumpster:before { - content: "\f793" -} - -.fa-dumpster-fire:before { - content: "\f794" -} - -.fa-dungeon:before { - content: "\f6d9" -} - -.fa-dyalog:before { - content: "\f399" -} - -.fa-earlybirds:before { - content: "\f39a" -} - -.fa-ebay:before { - content: "\f4f4" -} - -.fa-edge:before { - content: "\f282" -} - -.fa-edit:before { - content: "\f044" -} - -.fa-egg:before { - content: "\f7fb" -} - -.fa-eject:before { - content: "\f052" -} - -.fa-elementor:before { - content: "\f430" -} - -.fa-ellipsis-h:before { - content: "\f141" -} - -.fa-ellipsis-v:before { - content: "\f142" -} - -.fa-ello:before { - content: "\f5f1" -} - -.fa-ember:before { - content: "\f423" -} - -.fa-empire:before { - content: "\f1d1" -} - -.fa-envelope:before { - content: "\f0e0" -} - -.fa-envelope-open:before { - content: "\f2b6" -} - -.fa-envelope-open-text:before { - content: "\f658" -} - -.fa-envelope-square:before { - content: "\f199" -} - -.fa-envira:before { - content: "\f299" -} - -.fa-equals:before { - content: "\f52c" -} - -.fa-eraser:before { - content: "\f12d" -} - -.fa-erlang:before { - content: "\f39d" -} - -.fa-ethereum:before { - content: "\f42e" -} - -.fa-ethernet:before { - content: "\f796" -} - -.fa-etsy:before { - content: "\f2d7" -} - -.fa-euro-sign:before { - content: "\f153" -} - -.fa-evernote:before { - content: "\f839" -} - -.fa-exchange-alt:before { - content: "\f362" -} - -.fa-exclamation:before { - content: "\f12a" -} - -.fa-exclamation-circle:before { - content: "\f06a" -} - -.fa-exclamation-triangle:before { - content: "\f071" -} - -.fa-expand:before { - content: "\f065" -} - -.fa-expand-alt:before { - content: "\f424" -} - -.fa-expand-arrows-alt:before { - content: "\f31e" -} - -.fa-expeditedssl:before { - content: "\f23e" -} - -.fa-external-link-alt:before { - content: "\f35d" -} - -.fa-external-link-square-alt:before { - content: "\f360" -} - -.fa-eye:before { - content: "\f06e" -} - -.fa-eye-dropper:before { - content: "\f1fb" -} - -.fa-eye-slash:before { - content: "\f070" -} - -.fa-facebook:before { - content: "\f09a" -} - -.fa-facebook-f:before { - content: "\f39e" -} - -.fa-facebook-messenger:before { - content: "\f39f" -} - -.fa-facebook-square:before { - content: "\f082" -} - -.fa-fan:before { - content: "\f863" -} - -.fa-fantasy-flight-games:before { - content: "\f6dc" -} - -.fa-fast-backward:before { - content: "\f049" -} - -.fa-fast-forward:before { - content: "\f050" -} - -.fa-fax:before { - content: "\f1ac" -} - -.fa-feather:before { - content: "\f52d" -} - -.fa-feather-alt:before { - content: "\f56b" -} - -.fa-fedex:before { - content: "\f797" -} - -.fa-fedora:before { - content: "\f798" -} - -.fa-female:before { - content: "\f182" -} - -.fa-fighter-jet:before { - content: "\f0fb" -} - -.fa-figma:before { - content: "\f799" -} - -.fa-file:before { - content: "\f15b" -} - -.fa-file-alt:before { - content: "\f15c" -} - -.fa-file-archive:before { - content: "\f1c6" -} - -.fa-file-audio:before { - content: "\f1c7" -} - -.fa-file-code:before { - content: "\f1c9" -} - -.fa-file-contract:before { - content: "\f56c" -} - -.fa-file-csv:before { - content: "\f6dd" -} - -.fa-file-download:before { - content: "\f56d" -} - -.fa-file-excel:before { - content: "\f1c3" -} - -.fa-file-export:before { - content: "\f56e" -} - -.fa-file-image:before { - content: "\f1c5" -} - -.fa-file-import:before { - content: "\f56f" -} - -.fa-file-invoice:before { - content: "\f570" -} - -.fa-file-invoice-dollar:before { - content: "\f571" -} - -.fa-file-medical:before { - content: "\f477" -} - -.fa-file-medical-alt:before { - content: "\f478" -} - -.fa-file-pdf:before { - content: "\f1c1" -} - -.fa-file-powerpoint:before { - content: "\f1c4" -} - -.fa-file-prescription:before { - content: "\f572" -} - -.fa-file-signature:before { - content: "\f573" -} - -.fa-file-upload:before { - content: "\f574" -} - -.fa-file-video:before { - content: "\f1c8" -} - -.fa-file-word:before { - content: "\f1c2" -} - -.fa-fill:before { - content: "\f575" -} - -.fa-fill-drip:before { - content: "\f576" -} - -.fa-film:before { - content: "\f008" -} - -.fa-filter:before { - content: "\f0b0" -} - -.fa-fingerprint:before { - content: "\f577" -} - -.fa-fire:before { - content: "\f06d" -} - -.fa-fire-alt:before { - content: "\f7e4" -} - -.fa-fire-extinguisher:before { - content: "\f134" -} - -.fa-firefox:before { - content: "\f269" -} - -.fa-firefox-browser:before { - content: "\f907" -} - -.fa-first-aid:before { - content: "\f479" -} - -.fa-first-order:before { - content: "\f2b0" -} - -.fa-first-order-alt:before { - content: "\f50a" -} - -.fa-firstdraft:before { - content: "\f3a1" -} - -.fa-fish:before { - content: "\f578" -} - -.fa-fist-raised:before { - content: "\f6de" -} - -.fa-flag:before { - content: "\f024" -} - -.fa-flag-checkered:before { - content: "\f11e" -} - -.fa-flag-usa:before { - content: "\f74d" -} - -.fa-flask:before { - content: "\f0c3" -} - -.fa-flickr:before { - content: "\f16e" -} - -.fa-flipboard:before { - content: "\f44d" -} - -.fa-flushed:before { - content: "\f579" -} - -.fa-fly:before { - content: "\f417" -} - -.fa-folder:before { - content: "\f07b" -} - -.fa-folder-minus:before { - content: "\f65d" -} - -.fa-folder-open:before { - content: "\f07c" -} - -.fa-folder-plus:before { - content: "\f65e" -} - -.fa-font:before { - content: "\f031" -} - -.fa-font-awesome:before { - content: "\f2b4" -} - -.fa-font-awesome-alt:before { - content: "\f35c" -} - -.fa-font-awesome-flag:before { - content: "\f425" -} - -.fa-font-awesome-logo-full:before { - content: "\f4e6" -} - -.fa-fonticons:before { - content: "\f280" -} - -.fa-fonticons-fi:before { - content: "\f3a2" -} - -.fa-football-ball:before { - content: "\f44e" -} - -.fa-fort-awesome:before { - content: "\f286" -} - -.fa-fort-awesome-alt:before { - content: "\f3a3" -} - -.fa-forumbee:before { - content: "\f211" -} - -.fa-forward:before { - content: "\f04e" -} - -.fa-foursquare:before { - content: "\f180" -} - -.fa-free-code-camp:before { - content: "\f2c5" -} - -.fa-freebsd:before { - content: "\f3a4" -} - -.fa-frog:before { - content: "\f52e" -} - -.fa-frown:before { - content: "\f119" -} - -.fa-frown-open:before { - content: "\f57a" -} - -.fa-fulcrum:before { - content: "\f50b" -} - -.fa-funnel-dollar:before { - content: "\f662" -} - -.fa-futbol:before { - content: "\f1e3" -} - -.fa-galactic-republic:before { - content: "\f50c" -} - -.fa-galactic-senate:before { - content: "\f50d" -} - -.fa-gamepad:before { - content: "\f11b" -} - -.fa-gas-pump:before { - content: "\f52f" -} - -.fa-gavel:before { - content: "\f0e3" -} - -.fa-gem:before { - content: "\f3a5" -} - -.fa-genderless:before { - content: "\f22d" -} - -.fa-get-pocket:before { - content: "\f265" -} - -.fa-gg:before { - content: "\f260" -} - -.fa-gg-circle:before { - content: "\f261" -} - -.fa-ghost:before { - content: "\f6e2" -} - -.fa-gift:before { - content: "\f06b" -} - -.fa-gifts:before { - content: "\f79c" -} - -.fa-git:before { - content: "\f1d3" -} - -.fa-git-alt:before { - content: "\f841" -} - -.fa-git-square:before { - content: "\f1d2" -} - -.fa-github:before { - content: "\f09b" -} - -.fa-github-alt:before { - content: "\f113" -} - -.fa-github-square:before { - content: "\f092" -} - -.fa-gitkraken:before { - content: "\f3a6" -} - -.fa-gitlab:before { - content: "\f296" -} - -.fa-gitter:before { - content: "\f426" -} - -.fa-glass-cheers:before { - content: "\f79f" -} - -.fa-glass-martini:before { - content: "\f000" -} - -.fa-glass-martini-alt:before { - content: "\f57b" -} - -.fa-glass-whiskey:before { - content: "\f7a0" -} - -.fa-glasses:before { - content: "\f530" -} - -.fa-glide:before { - content: "\f2a5" -} - -.fa-glide-g:before { - content: "\f2a6" -} - -.fa-globe:before { - content: "\f0ac" -} - -.fa-globe-africa:before { - content: "\f57c" -} - -.fa-globe-americas:before { - content: "\f57d" -} - -.fa-globe-asia:before { - content: "\f57e" -} - -.fa-globe-europe:before { - content: "\f7a2" -} - -.fa-gofore:before { - content: "\f3a7" -} - -.fa-golf-ball:before { - content: "\f450" -} - -.fa-goodreads:before { - content: "\f3a8" -} - -.fa-goodreads-g:before { - content: "\f3a9" -} - -.fa-google:before { - content: "\f1a0" -} - -.fa-google-drive:before { - content: "\f3aa" -} - -.fa-google-play:before { - content: "\f3ab" -} - -.fa-google-plus:before { - content: "\f2b3" -} - -.fa-google-plus-g:before { - content: "\f0d5" -} - -.fa-google-plus-square:before { - content: "\f0d4" -} - -.fa-google-wallet:before { - content: "\f1ee" -} - -.fa-gopuram:before { - content: "\f664" -} - -.fa-graduation-cap:before { - content: "\f19d" -} - -.fa-gratipay:before { - content: "\f184" -} - -.fa-grav:before { - content: "\f2d6" -} - -.fa-greater-than:before { - content: "\f531" -} - -.fa-greater-than-equal:before { - content: "\f532" -} - -.fa-grimace:before { - content: "\f57f" -} - -.fa-grin:before { - content: "\f580" -} - -.fa-grin-alt:before { - content: "\f581" -} - -.fa-grin-beam:before { - content: "\f582" -} - -.fa-grin-beam-sweat:before { - content: "\f583" -} - -.fa-grin-hearts:before { - content: "\f584" -} - -.fa-grin-squint:before { - content: "\f585" -} - -.fa-grin-squint-tears:before { - content: "\f586" -} - -.fa-grin-stars:before { - content: "\f587" -} - -.fa-grin-tears:before { - content: "\f588" -} - -.fa-grin-tongue:before { - content: "\f589" -} - -.fa-grin-tongue-squint:before { - content: "\f58a" -} - -.fa-grin-tongue-wink:before { - content: "\f58b" -} - -.fa-grin-wink:before { - content: "\f58c" -} - -.fa-grip-horizontal:before { - content: "\f58d" -} - -.fa-grip-lines:before { - content: "\f7a4" -} - -.fa-grip-lines-vertical:before { - content: "\f7a5" -} - -.fa-grip-vertical:before { - content: "\f58e" -} - -.fa-gripfire:before { - content: "\f3ac" -} - -.fa-grunt:before { - content: "\f3ad" -} - -.fa-guitar:before { - content: "\f7a6" -} - -.fa-gulp:before { - content: "\f3ae" -} - -.fa-h-square:before { - content: "\f0fd" -} - -.fa-hacker-news:before { - content: "\f1d4" -} - -.fa-hacker-news-square:before { - content: "\f3af" -} - -.fa-hackerrank:before { - content: "\f5f7" -} - -.fa-hamburger:before { - content: "\f805" -} - -.fa-hammer:before { - content: "\f6e3" -} - -.fa-hamsa:before { - content: "\f665" -} - -.fa-hand-holding:before { - content: "\f4bd" -} - -.fa-hand-holding-heart:before { - content: "\f4be" -} - -.fa-hand-holding-usd:before { - content: "\f4c0" -} - -.fa-hand-lizard:before { - content: "\f258" -} - -.fa-hand-middle-finger:before { - content: "\f806" -} - -.fa-hand-paper:before { - content: "\f256" -} - -.fa-hand-peace:before { - content: "\f25b" -} - -.fa-hand-point-down:before { - content: "\f0a7" -} - -.fa-hand-point-left:before { - content: "\f0a5" -} - -.fa-hand-point-right:before { - content: "\f0a4" -} - -.fa-hand-point-up:before { - content: "\f0a6" -} - -.fa-hand-pointer:before { - content: "\f25a" -} - -.fa-hand-rock:before { - content: "\f255" -} - -.fa-hand-scissors:before { - content: "\f257" -} - -.fa-hand-spock:before { - content: "\f259" -} - -.fa-hands:before { - content: "\f4c2" -} - -.fa-hands-helping:before { - content: "\f4c4" -} - -.fa-handshake:before { - content: "\f2b5" -} - -.fa-hanukiah:before { - content: "\f6e6" -} - -.fa-hard-hat:before { - content: "\f807" -} - -.fa-hashtag:before { - content: "\f292" -} - -.fa-hat-cowboy:before { - content: "\f8c0" -} - -.fa-hat-cowboy-side:before { - content: "\f8c1" -} - -.fa-hat-wizard:before { - content: "\f6e8" -} - -.fa-hdd:before { - content: "\f0a0" -} - -.fa-heading:before { - content: "\f1dc" -} - -.fa-headphones:before { - content: "\f025" -} - -.fa-headphones-alt:before { - content: "\f58f" -} - -.fa-headset:before { - content: "\f590" -} - -.fa-heart:before { - content: "\f004" -} - -.fa-heart-broken:before { - content: "\f7a9" -} - -.fa-heartbeat:before { - content: "\f21e" -} - -.fa-helicopter:before { - content: "\f533" -} - -.fa-highlighter:before { - content: "\f591" -} - -.fa-hiking:before { - content: "\f6ec" -} - -.fa-hippo:before { - content: "\f6ed" -} - -.fa-hips:before { - content: "\f452" -} - -.fa-hire-a-helper:before { - content: "\f3b0" -} - -.fa-history:before { - content: "\f1da" -} - -.fa-hockey-puck:before { - content: "\f453" -} - -.fa-holly-berry:before { - content: "\f7aa" -} - -.fa-home:before { - content: "\f015" -} - -.fa-hooli:before { - content: "\f427" -} - -.fa-hornbill:before { - content: "\f592" -} - -.fa-horse:before { - content: "\f6f0" -} - -.fa-horse-head:before { - content: "\f7ab" -} - -.fa-hospital:before { - content: "\f0f8" -} - -.fa-hospital-alt:before { - content: "\f47d" -} - -.fa-hospital-symbol:before { - content: "\f47e" -} - -.fa-hot-tub:before { - content: "\f593" -} - -.fa-hotdog:before { - content: "\f80f" -} - -.fa-hotel:before { - content: "\f594" -} - -.fa-hotjar:before { - content: "\f3b1" -} - -.fa-hourglass:before { - content: "\f254" -} - -.fa-hourglass-end:before { - content: "\f253" -} - -.fa-hourglass-half:before { - content: "\f252" -} - -.fa-hourglass-start:before { - content: "\f251" -} - -.fa-house-damage:before { - content: "\f6f1" -} - -.fa-houzz:before { - content: "\f27c" -} - -.fa-hryvnia:before { - content: "\f6f2" -} - -.fa-html5:before { - content: "\f13b" -} - -.fa-hubspot:before { - content: "\f3b2" -} - -.fa-i-cursor:before { - content: "\f246" -} - -.fa-ice-cream:before { - content: "\f810" -} - -.fa-icicles:before { - content: "\f7ad" -} - -.fa-icons:before { - content: "\f86d" -} - -.fa-id-badge:before { - content: "\f2c1" -} - -.fa-id-card:before { - content: "\f2c2" -} - -.fa-id-card-alt:before { - content: "\f47f" -} - -.fa-ideal:before { - content: "\f913" -} - -.fa-igloo:before { - content: "\f7ae" -} - -.fa-image:before { - content: "\f03e" -} - -.fa-images:before { - content: "\f302" -} - -.fa-imdb:before { - content: "\f2d8" -} - -.fa-inbox:before { - content: "\f01c" -} - -.fa-indent:before { - content: "\f03c" -} - -.fa-industry:before { - content: "\f275" -} - -.fa-infinity:before { - content: "\f534" -} - -.fa-info:before { - content: "\f129" -} - -.fa-info-circle:before { - content: "\f05a" -} - -.fa-instagram:before { - content: "\f16d" -} - -.fa-intercom:before { - content: "\f7af" -} - -.fa-internet-explorer:before { - content: "\f26b" -} - -.fa-invision:before { - content: "\f7b0" -} - -.fa-ioxhost:before { - content: "\f208" -} - -.fa-italic:before { - content: "\f033" -} - -.fa-itch-io:before { - content: "\f83a" -} - -.fa-itunes:before { - content: "\f3b4" -} - -.fa-itunes-note:before { - content: "\f3b5" -} - -.fa-java:before { - content: "\f4e4" -} - -.fa-jedi:before { - content: "\f669" -} - -.fa-jedi-order:before { - content: "\f50e" -} - -.fa-jenkins:before { - content: "\f3b6" -} - -.fa-jira:before { - content: "\f7b1" -} - -.fa-joget:before { - content: "\f3b7" -} - -.fa-joint:before { - content: "\f595" -} - -.fa-joomla:before { - content: "\f1aa" -} - -.fa-journal-whills:before { - content: "\f66a" -} - -.fa-js:before { - content: "\f3b8" -} - -.fa-js-square:before { - content: "\f3b9" -} - -.fa-jsfiddle:before { - content: "\f1cc" -} - -.fa-kaaba:before { - content: "\f66b" -} - -.fa-kaggle:before { - content: "\f5fa" -} - -.fa-key:before { - content: "\f084" -} - -.fa-keybase:before { - content: "\f4f5" -} - -.fa-keyboard:before { - content: "\f11c" -} - -.fa-keycdn:before { - content: "\f3ba" -} - -.fa-khanda:before { - content: "\f66d" -} - -.fa-kickstarter:before { - content: "\f3bb" -} - -.fa-kickstarter-k:before { - content: "\f3bc" -} - -.fa-kiss:before { - content: "\f596" -} - -.fa-kiss-beam:before { - content: "\f597" -} - -.fa-kiss-wink-heart:before { - content: "\f598" -} - -.fa-kiwi-bird:before { - content: "\f535" -} - -.fa-korvue:before { - content: "\f42f" -} - -.fa-landmark:before { - content: "\f66f" -} - -.fa-language:before { - content: "\f1ab" -} - -.fa-laptop:before { - content: "\f109" -} - -.fa-laptop-code:before { - content: "\f5fc" -} - -.fa-laptop-medical:before { - content: "\f812" -} - -.fa-laravel:before { - content: "\f3bd" -} - -.fa-lastfm:before { - content: "\f202" -} - -.fa-lastfm-square:before { - content: "\f203" -} - -.fa-laugh:before { - content: "\f599" -} - -.fa-laugh-beam:before { - content: "\f59a" -} - -.fa-laugh-squint:before { - content: "\f59b" -} - -.fa-laugh-wink:before { - content: "\f59c" -} - -.fa-layer-group:before { - content: "\f5fd" -} - -.fa-leaf:before { - content: "\f06c" -} - -.fa-leanpub:before { - content: "\f212" -} - -.fa-lemon:before { - content: "\f094" -} - -.fa-less:before { - content: "\f41d" -} - -.fa-less-than:before { - content: "\f536" -} - -.fa-less-than-equal:before { - content: "\f537" -} - -.fa-level-down-alt:before { - content: "\f3be" -} - -.fa-level-up-alt:before { - content: "\f3bf" -} - -.fa-life-ring:before { - content: "\f1cd" -} - -.fa-lightbulb:before { - content: "\f0eb" -} - -.fa-line:before { - content: "\f3c0" -} - -.fa-link:before { - content: "\f0c1" -} - -.fa-linkedin:before { - content: "\f08c" -} - -.fa-linkedin-in:before { - content: "\f0e1" -} - -.fa-linode:before { - content: "\f2b8" -} - -.fa-linux:before { - content: "\f17c" -} - -.fa-lira-sign:before { - content: "\f195" -} - -.fa-list:before { - content: "\f03a" -} - -.fa-list-alt:before { - content: "\f022" -} - -.fa-list-ol:before { - content: "\f0cb" -} - -.fa-list-ul:before { - content: "\f0ca" -} - -.fa-location-arrow:before { - content: "\f124" -} - -.fa-lock:before { - content: "\f023" -} - -.fa-lock-open:before { - content: "\f3c1" -} - -.fa-long-arrow-alt-down:before { - content: "\f309" -} - -.fa-long-arrow-alt-left:before { - content: "\f30a" -} - -.fa-long-arrow-alt-right:before { - content: "\f30b" -} - -.fa-long-arrow-alt-up:before { - content: "\f30c" -} - -.fa-low-vision:before { - content: "\f2a8" -} - -.fa-luggage-cart:before { - content: "\f59d" -} - -.fa-lyft:before { - content: "\f3c3" -} - -.fa-magento:before { - content: "\f3c4" -} - -.fa-magic:before { - content: "\f0d0" -} - -.fa-magnet:before { - content: "\f076" -} - -.fa-mail-bulk:before { - content: "\f674" -} - -.fa-mailchimp:before { - content: "\f59e" -} - -.fa-male:before { - content: "\f183" -} - -.fa-mandalorian:before { - content: "\f50f" -} - -.fa-map:before { - content: "\f279" -} - -.fa-map-marked:before { - content: "\f59f" -} - -.fa-map-marked-alt:before { - content: "\f5a0" -} - -.fa-map-marker:before { - content: "\f041" -} - -.fa-map-marker-alt:before { - content: "\f3c5" -} - -.fa-map-pin:before { - content: "\f276" -} - -.fa-map-signs:before { - content: "\f277" -} - -.fa-markdown:before { - content: "\f60f" -} - -.fa-marker:before { - content: "\f5a1" -} - -.fa-mars:before { - content: "\f222" -} - -.fa-mars-double:before { - content: "\f227" -} - -.fa-mars-stroke:before { - content: "\f229" -} - -.fa-mars-stroke-h:before { - content: "\f22b" -} - -.fa-mars-stroke-v:before { - content: "\f22a" -} - -.fa-mask:before { - content: "\f6fa" -} - -.fa-mastodon:before { - content: "\f4f6" -} - -.fa-maxcdn:before { - content: "\f136" -} - -.fa-mdb:before { - content: "\f8ca" -} - -.fa-medal:before { - content: "\f5a2" -} - -.fa-medapps:before { - content: "\f3c6" -} - -.fa-medium:before { - content: "\f23a" -} - -.fa-medium-m:before { - content: "\f3c7" -} - -.fa-medkit:before { - content: "\f0fa" -} - -.fa-medrt:before { - content: "\f3c8" -} - -.fa-meetup:before { - content: "\f2e0" -} - -.fa-megaport:before { - content: "\f5a3" -} - -.fa-meh:before { - content: "\f11a" -} - -.fa-meh-blank:before { - content: "\f5a4" -} - -.fa-meh-rolling-eyes:before { - content: "\f5a5" -} - -.fa-memory:before { - content: "\f538" -} - -.fa-mendeley:before { - content: "\f7b3" -} - -.fa-menorah:before { - content: "\f676" -} - -.fa-mercury:before { - content: "\f223" -} - -.fa-meteor:before { - content: "\f753" -} - -.fa-microblog:before { - content: "\f91a" -} - -.fa-microchip:before { - content: "\f2db" -} - -.fa-microphone:before { - content: "\f130" -} - -.fa-microphone-alt:before { - content: "\f3c9" -} - -.fa-microphone-alt-slash:before { - content: "\f539" -} - -.fa-microphone-slash:before { - content: "\f131" -} - -.fa-microscope:before { - content: "\f610" -} - -.fa-microsoft:before { - content: "\f3ca" -} - -.fa-minus:before { - content: "\f068" -} - -.fa-minus-circle:before { - content: "\f056" -} - -.fa-minus-square:before { - content: "\f146" -} - -.fa-mitten:before { - content: "\f7b5" -} - -.fa-mix:before { - content: "\f3cb" -} - -.fa-mixcloud:before { - content: "\f289" -} - -.fa-mizuni:before { - content: "\f3cc" -} - -.fa-mobile:before { - content: "\f10b" -} - -.fa-mobile-alt:before { - content: "\f3cd" -} - -.fa-modx:before { - content: "\f285" -} - -.fa-monero:before { - content: "\f3d0" -} - -.fa-money-bill:before { - content: "\f0d6" -} - -.fa-money-bill-alt:before { - content: "\f3d1" -} - -.fa-money-bill-wave:before { - content: "\f53a" -} - -.fa-money-bill-wave-alt:before { - content: "\f53b" -} - -.fa-money-check:before { - content: "\f53c" -} - -.fa-money-check-alt:before { - content: "\f53d" -} - -.fa-monument:before { - content: "\f5a6" -} - -.fa-moon:before { - content: "\f186" -} - -.fa-mortar-pestle:before { - content: "\f5a7" -} - -.fa-mosque:before { - content: "\f678" -} - -.fa-motorcycle:before { - content: "\f21c" -} - -.fa-mountain:before { - content: "\f6fc" -} - -.fa-mouse:before { - content: "\f8cc" -} - -.fa-mouse-pointer:before { - content: "\f245" -} - -.fa-mug-hot:before { - content: "\f7b6" -} - -.fa-music:before { - content: "\f001" -} - -.fa-napster:before { - content: "\f3d2" -} - -.fa-neos:before { - content: "\f612" -} - -.fa-network-wired:before { - content: "\f6ff" -} - -.fa-neuter:before { - content: "\f22c" -} - -.fa-newspaper:before { - content: "\f1ea" -} - -.fa-nimblr:before { - content: "\f5a8" -} - -.fa-node:before { - content: "\f419" -} - -.fa-node-js:before { - content: "\f3d3" -} - -.fa-not-equal:before { - content: "\f53e" -} - -.fa-notes-medical:before { - content: "\f481" -} - -.fa-npm:before { - content: "\f3d4" -} - -.fa-ns8:before { - content: "\f3d5" -} - -.fa-nutritionix:before { - content: "\f3d6" -} - -.fa-object-group:before { - content: "\f247" -} - -.fa-object-ungroup:before { - content: "\f248" -} - -.fa-odnoklassniki:before { - content: "\f263" -} - -.fa-odnoklassniki-square:before { - content: "\f264" -} - -.fa-oil-can:before { - content: "\f613" -} - -.fa-old-republic:before { - content: "\f510" -} - -.fa-om:before { - content: "\f679" -} - -.fa-opencart:before { - content: "\f23d" -} - -.fa-openid:before { - content: "\f19b" -} - -.fa-opera:before { - content: "\f26a" -} - -.fa-optin-monster:before { - content: "\f23c" -} - -.fa-orcid:before { - content: "\f8d2" -} - -.fa-osi:before { - content: "\f41a" -} - -.fa-otter:before { - content: "\f700" -} - -.fa-outdent:before { - content: "\f03b" -} - -.fa-page4:before { - content: "\f3d7" -} - -.fa-pagelines:before { - content: "\f18c" -} - -.fa-pager:before { - content: "\f815" -} - -.fa-paint-brush:before { - content: "\f1fc" -} - -.fa-paint-roller:before { - content: "\f5aa" -} - -.fa-palette:before { - content: "\f53f" -} - -.fa-palfed:before { - content: "\f3d8" -} - -.fa-pallet:before { - content: "\f482" -} - -.fa-paper-plane:before { - content: "\f1d8" -} - -.fa-paperclip:before { - content: "\f0c6" -} - -.fa-parachute-box:before { - content: "\f4cd" -} - -.fa-paragraph:before { - content: "\f1dd" -} - -.fa-parking:before { - content: "\f540" -} - -.fa-passport:before { - content: "\f5ab" -} - -.fa-pastafarianism:before { - content: "\f67b" -} - -.fa-paste:before { - content: "\f0ea" -} - -.fa-patreon:before { - content: "\f3d9" -} - -.fa-pause:before { - content: "\f04c" -} - -.fa-pause-circle:before { - content: "\f28b" -} - -.fa-paw:before { - content: "\f1b0" -} - -.fa-paypal:before { - content: "\f1ed" -} - -.fa-peace:before { - content: "\f67c" -} - -.fa-pen:before { - content: "\f304" -} - -.fa-pen-alt:before { - content: "\f305" -} - -.fa-pen-fancy:before { - content: "\f5ac" -} - -.fa-pen-nib:before { - content: "\f5ad" -} - -.fa-pen-square:before { - content: "\f14b" -} - -.fa-pencil-alt:before { - content: "\f303" -} - -.fa-pencil-ruler:before { - content: "\f5ae" -} - -.fa-penny-arcade:before { - content: "\f704" -} - -.fa-people-carry:before { - content: "\f4ce" -} - -.fa-pepper-hot:before { - content: "\f816" -} - -.fa-percent:before { - content: "\f295" -} - -.fa-percentage:before { - content: "\f541" -} - -.fa-periscope:before { - content: "\f3da" -} - -.fa-person-booth:before { - content: "\f756" -} - -.fa-phabricator:before { - content: "\f3db" -} - -.fa-phoenix-framework:before { - content: "\f3dc" -} - -.fa-phoenix-squadron:before { - content: "\f511" -} - -.fa-phone:before { - content: "\f095" -} - -.fa-phone-alt:before { - content: "\f879" -} - -.fa-phone-slash:before { - content: "\f3dd" -} - -.fa-phone-square:before { - content: "\f098" -} - -.fa-phone-square-alt:before { - content: "\f87b" -} - -.fa-phone-volume:before { - content: "\f2a0" -} - -.fa-photo-video:before { - content: "\f87c" -} - -.fa-php:before { - content: "\f457" -} - -.fa-pied-piper:before { - content: "\f2ae" -} - -.fa-pied-piper-alt:before { - content: "\f1a8" -} - -.fa-pied-piper-hat:before { - content: "\f4e5" -} - -.fa-pied-piper-pp:before { - content: "\f1a7" -} - -.fa-pied-piper-square:before { - content: "\f91e" -} - -.fa-piggy-bank:before { - content: "\f4d3" -} - -.fa-pills:before { - content: "\f484" -} - -.fa-pinterest:before { - content: "\f0d2" -} - -.fa-pinterest-p:before { - content: "\f231" -} - -.fa-pinterest-square:before { - content: "\f0d3" -} - -.fa-pizza-slice:before { - content: "\f818" -} - -.fa-place-of-worship:before { - content: "\f67f" -} - -.fa-plane:before { - content: "\f072" -} - -.fa-plane-arrival:before { - content: "\f5af" -} - -.fa-plane-departure:before { - content: "\f5b0" -} - -.fa-play:before { - content: "\f04b" -} - -.fa-play-circle:before { - content: "\f144" -} - -.fa-playstation:before { - content: "\f3df" -} - -.fa-plug:before { - content: "\f1e6" -} - -.fa-plus:before { - content: "\f067" -} - -.fa-plus-circle:before { - content: "\f055" -} - -.fa-plus-square:before { - content: "\f0fe" -} - -.fa-podcast:before { - content: "\f2ce" -} - -.fa-poll:before { - content: "\f681" -} - -.fa-poll-h:before { - content: "\f682" -} - -.fa-poo:before { - content: "\f2fe" -} - -.fa-poo-storm:before { - content: "\f75a" -} - -.fa-poop:before { - content: "\f619" -} - -.fa-portrait:before { - content: "\f3e0" -} - -.fa-pound-sign:before { - content: "\f154" -} - -.fa-power-off:before { - content: "\f011" -} - -.fa-pray:before { - content: "\f683" -} - -.fa-praying-hands:before { - content: "\f684" -} - -.fa-prescription:before { - content: "\f5b1" -} - -.fa-prescription-bottle:before { - content: "\f485" -} - -.fa-prescription-bottle-alt:before { - content: "\f486" -} - -.fa-print:before { - content: "\f02f" -} - -.fa-procedures:before { - content: "\f487" -} - -.fa-product-hunt:before { - content: "\f288" -} - -.fa-project-diagram:before { - content: "\f542" -} - -.fa-pushed:before { - content: "\f3e1" -} - -.fa-puzzle-piece:before { - content: "\f12e" -} - -.fa-python:before { - content: "\f3e2" -} - -.fa-qq:before { - content: "\f1d6" -} - -.fa-qrcode:before { - content: "\f029" -} - -.fa-question:before { - content: "\f128" -} - -.fa-question-circle:before { - content: "\f059" -} - -.fa-quidditch:before { - content: "\f458" -} - -.fa-quinscape:before { - content: "\f459" -} - -.fa-quora:before { - content: "\f2c4" -} - -.fa-quote-left:before { - content: "\f10d" -} - -.fa-quote-right:before { - content: "\f10e" -} - -.fa-quran:before { - content: "\f687" -} - -.fa-r-project:before { - content: "\f4f7" -} - -.fa-radiation:before { - content: "\f7b9" -} - -.fa-radiation-alt:before { - content: "\f7ba" -} - -.fa-rainbow:before { - content: "\f75b" -} - -.fa-random:before { - content: "\f074" -} - -.fa-raspberry-pi:before { - content: "\f7bb" -} - -.fa-ravelry:before { - content: "\f2d9" -} - -.fa-react:before { - content: "\f41b" -} - -.fa-reacteurope:before { - content: "\f75d" -} - -.fa-readme:before { - content: "\f4d5" -} - -.fa-rebel:before { - content: "\f1d0" -} - -.fa-receipt:before { - content: "\f543" -} - -.fa-record-vinyl:before { - content: "\f8d9" -} - -.fa-recycle:before { - content: "\f1b8" -} - -.fa-red-river:before { - content: "\f3e3" -} - -.fa-reddit:before { - content: "\f1a1" -} - -.fa-reddit-alien:before { - content: "\f281" -} - -.fa-reddit-square:before { - content: "\f1a2" -} - -.fa-redhat:before { - content: "\f7bc" -} - -.fa-redo:before { - content: "\f01e" -} - -.fa-redo-alt:before { - content: "\f2f9" -} - -.fa-registered:before { - content: "\f25d" -} - -.fa-remove-format:before { - content: "\f87d" -} - -.fa-renren:before { - content: "\f18b" -} - -.fa-reply:before { - content: "\f3e5" -} - -.fa-reply-all:before { - content: "\f122" -} - -.fa-replyd:before { - content: "\f3e6" -} - -.fa-republican:before { - content: "\f75e" -} - -.fa-researchgate:before { - content: "\f4f8" -} - -.fa-resolving:before { - content: "\f3e7" -} - -.fa-restroom:before { - content: "\f7bd" -} - -.fa-retweet:before { - content: "\f079" -} - -.fa-rev:before { - content: "\f5b2" -} - -.fa-ribbon:before { - content: "\f4d6" -} - -.fa-ring:before { - content: "\f70b" -} - -.fa-road:before { - content: "\f018" -} - -.fa-robot:before { - content: "\f544" -} - -.fa-rocket:before { - content: "\f135" -} - -.fa-rocketchat:before { - content: "\f3e8" -} - -.fa-rockrms:before { - content: "\f3e9" -} - -.fa-route:before { - content: "\f4d7" -} - -.fa-rss:before { - content: "\f09e" -} - -.fa-rss-square:before { - content: "\f143" -} - -.fa-ruble-sign:before { - content: "\f158" -} - -.fa-ruler:before { - content: "\f545" -} - -.fa-ruler-combined:before { - content: "\f546" -} - -.fa-ruler-horizontal:before { - content: "\f547" -} - -.fa-ruler-vertical:before { - content: "\f548" -} - -.fa-running:before { - content: "\f70c" -} - -.fa-rupee-sign:before { - content: "\f156" -} - -.fa-sad-cry:before { - content: "\f5b3" -} - -.fa-sad-tear:before { - content: "\f5b4" -} - -.fa-safari:before { - content: "\f267" -} - -.fa-salesforce:before { - content: "\f83b" -} - -.fa-sass:before { - content: "\f41e" -} - -.fa-satellite:before { - content: "\f7bf" -} - -.fa-satellite-dish:before { - content: "\f7c0" -} - -.fa-save:before { - content: "\f0c7" -} - -.fa-schlix:before { - content: "\f3ea" -} - -.fa-school:before { - content: "\f549" -} - -.fa-screwdriver:before { - content: "\f54a" -} - -.fa-scribd:before { - content: "\f28a" -} - -.fa-scroll:before { - content: "\f70e" -} - -.fa-sd-card:before { - content: "\f7c2" -} - -.fa-search:before { - content: "\f002" -} - -.fa-search-dollar:before { - content: "\f688" -} - -.fa-search-location:before { - content: "\f689" -} - -.fa-search-minus:before { - content: "\f010" -} - -.fa-search-plus:before { - content: "\f00e" -} - -.fa-searchengin:before { - content: "\f3eb" -} - -.fa-seedling:before { - content: "\f4d8" -} - -.fa-sellcast:before { - content: "\f2da" -} - -.fa-sellsy:before { - content: "\f213" -} - -.fa-server:before { - content: "\f233" -} - -.fa-servicestack:before { - content: "\f3ec" -} - -.fa-shapes:before { - content: "\f61f" -} - -.fa-share:before { - content: "\f064" -} - -.fa-share-alt:before { - content: "\f1e0" -} - -.fa-share-alt-square:before { - content: "\f1e1" -} - -.fa-share-square:before { - content: "\f14d" -} - -.fa-shekel-sign:before { - content: "\f20b" -} - -.fa-shield-alt:before { - content: "\f3ed" -} - -.fa-ship:before { - content: "\f21a" -} - -.fa-shipping-fast:before { - content: "\f48b" -} - -.fa-shirtsinbulk:before { - content: "\f214" -} - -.fa-shoe-prints:before { - content: "\f54b" -} - -.fa-shopping-bag:before { - content: "\f290" -} - -.fa-shopping-basket:before { - content: "\f291" -} - -.fa-shopping-cart:before { - content: "\f07a" -} - -.fa-shopware:before { - content: "\f5b5" -} - -.fa-shower:before { - content: "\f2cc" -} - -.fa-shuttle-van:before { - content: "\f5b6" -} - -.fa-sign:before { - content: "\f4d9" -} - -.fa-sign-in-alt:before { - content: "\f2f6" -} - -.fa-sign-language:before { - content: "\f2a7" -} - -.fa-sign-out-alt:before { - content: "\f2f5" -} - -.fa-signal:before { - content: "\f012" -} - -.fa-signature:before { - content: "\f5b7" -} - -.fa-sim-card:before { - content: "\f7c4" -} - -.fa-simplybuilt:before { - content: "\f215" -} - -.fa-sistrix:before { - content: "\f3ee" -} - -.fa-sitemap:before { - content: "\f0e8" -} - -.fa-sith:before { - content: "\f512" -} - -.fa-skating:before { - content: "\f7c5" -} - -.fa-sketch:before { - content: "\f7c6" -} - -.fa-skiing:before { - content: "\f7c9" -} - -.fa-skiing-nordic:before { - content: "\f7ca" -} - -.fa-skull:before { - content: "\f54c" -} - -.fa-skull-crossbones:before { - content: "\f714" -} - -.fa-skyatlas:before { - content: "\f216" -} - -.fa-skype:before { - content: "\f17e" -} - -.fa-slack:before { - content: "\f198" -} - -.fa-slack-hash:before { - content: "\f3ef" -} - -.fa-slash:before { - content: "\f715" -} - -.fa-sleigh:before { - content: "\f7cc" -} - -.fa-sliders-h:before { - content: "\f1de" -} - -.fa-slideshare:before { - content: "\f1e7" -} - -.fa-smile:before { - content: "\f118" -} - -.fa-smile-beam:before { - content: "\f5b8" -} - -.fa-smile-wink:before { - content: "\f4da" -} - -.fa-smog:before { - content: "\f75f" -} - -.fa-smoking:before { - content: "\f48d" -} - -.fa-smoking-ban:before { - content: "\f54d" -} - -.fa-sms:before { - content: "\f7cd" -} - -.fa-snapchat:before { - content: "\f2ab" -} - -.fa-snapchat-ghost:before { - content: "\f2ac" -} - -.fa-snapchat-square:before { - content: "\f2ad" -} - -.fa-snowboarding:before { - content: "\f7ce" -} - -.fa-snowflake:before { - content: "\f2dc" -} - -.fa-snowman:before { - content: "\f7d0" -} - -.fa-snowplow:before { - content: "\f7d2" -} - -.fa-socks:before { - content: "\f696" -} - -.fa-solar-panel:before { - content: "\f5ba" -} - -.fa-sort:before { - content: "\f0dc" -} - -.fa-sort-alpha-down:before { - content: "\f15d" -} - -.fa-sort-alpha-down-alt:before { - content: "\f881" -} - -.fa-sort-alpha-up:before { - content: "\f15e" -} - -.fa-sort-alpha-up-alt:before { - content: "\f882" -} - -.fa-sort-amount-down:before { - content: "\f160" -} - -.fa-sort-amount-down-alt:before { - content: "\f884" -} - -.fa-sort-amount-up:before { - content: "\f161" -} - -.fa-sort-amount-up-alt:before { - content: "\f885" -} - -.fa-sort-down:before { - content: "\f0dd" -} - -.fa-sort-numeric-down:before { - content: "\f162" -} - -.fa-sort-numeric-down-alt:before { - content: "\f886" -} - -.fa-sort-numeric-up:before { - content: "\f163" -} - -.fa-sort-numeric-up-alt:before { - content: "\f887" -} - -.fa-sort-up:before { - content: "\f0de" -} - -.fa-soundcloud:before { - content: "\f1be" -} - -.fa-sourcetree:before { - content: "\f7d3" -} - -.fa-spa:before { - content: "\f5bb" -} - -.fa-space-shuttle:before { - content: "\f197" -} - -.fa-speakap:before { - content: "\f3f3" -} - -.fa-speaker-deck:before { - content: "\f83c" -} - -.fa-spell-check:before { - content: "\f891" -} - -.fa-spider:before { - content: "\f717" -} - -.fa-spinner:before { - content: "\f110" -} - -.fa-splotch:before { - content: "\f5bc" -} - -.fa-spotify:before { - content: "\f1bc" -} - -.fa-spray-can:before { - content: "\f5bd" -} - -.fa-square:before { - content: "\f0c8" -} - -.fa-square-full:before { - content: "\f45c" -} - -.fa-square-root-alt:before { - content: "\f698" -} - -.fa-squarespace:before { - content: "\f5be" -} - -.fa-stack-exchange:before { - content: "\f18d" -} - -.fa-stack-overflow:before { - content: "\f16c" -} - -.fa-stackpath:before { - content: "\f842" -} - -.fa-stamp:before { - content: "\f5bf" -} - -.fa-star:before { - content: "\f005" -} - -.fa-star-and-crescent:before { - content: "\f699" -} - -.fa-star-half:before { - content: "\f089" -} - -.fa-star-half-alt:before { - content: "\f5c0" -} - -.fa-star-of-david:before { - content: "\f69a" -} - -.fa-star-of-life:before { - content: "\f621" -} - -.fa-staylinked:before { - content: "\f3f5" -} - -.fa-steam:before { - content: "\f1b6" -} - -.fa-steam-square:before { - content: "\f1b7" -} - -.fa-steam-symbol:before { - content: "\f3f6" -} - -.fa-step-backward:before { - content: "\f048" -} - -.fa-step-forward:before { - content: "\f051" -} - -.fa-stethoscope:before { - content: "\f0f1" -} - -.fa-sticker-mule:before { - content: "\f3f7" -} - -.fa-sticky-note:before { - content: "\f249" -} - -.fa-stop:before { - content: "\f04d" -} - -.fa-stop-circle:before { - content: "\f28d" -} - -.fa-stopwatch:before { - content: "\f2f2" -} - -.fa-store:before { - content: "\f54e" -} - -.fa-store-alt:before { - content: "\f54f" -} - -.fa-strava:before { - content: "\f428" -} - -.fa-stream:before { - content: "\f550" -} - -.fa-street-view:before { - content: "\f21d" -} - -.fa-strikethrough:before { - content: "\f0cc" -} - -.fa-stripe:before { - content: "\f429" -} - -.fa-stripe-s:before { - content: "\f42a" -} - -.fa-stroopwafel:before { - content: "\f551" -} - -.fa-studiovinari:before { - content: "\f3f8" -} - -.fa-stumbleupon:before { - content: "\f1a4" -} - -.fa-stumbleupon-circle:before { - content: "\f1a3" -} - -.fa-subscript:before { - content: "\f12c" -} - -.fa-subway:before { - content: "\f239" -} - -.fa-suitcase:before { - content: "\f0f2" -} - -.fa-suitcase-rolling:before { - content: "\f5c1" -} - -.fa-sun:before { - content: "\f185" -} - -.fa-superpowers:before { - content: "\f2dd" -} - -.fa-superscript:before { - content: "\f12b" -} - -.fa-supple:before { - content: "\f3f9" -} - -.fa-surprise:before { - content: "\f5c2" -} - -.fa-suse:before { - content: "\f7d6" -} - -.fa-swatchbook:before { - content: "\f5c3" -} - -.fa-swift:before { - content: "\f8e1" -} - -.fa-swimmer:before { - content: "\f5c4" -} - -.fa-swimming-pool:before { - content: "\f5c5" -} - -.fa-symfony:before { - content: "\f83d" -} - -.fa-synagogue:before { - content: "\f69b" -} - -.fa-sync:before { - content: "\f021" -} - -.fa-sync-alt:before { - content: "\f2f1" -} - -.fa-syringe:before { - content: "\f48e" -} - -.fa-table:before { - content: "\f0ce" -} - -.fa-table-tennis:before { - content: "\f45d" -} - -.fa-tablet:before { - content: "\f10a" -} - -.fa-tablet-alt:before { - content: "\f3fa" -} - -.fa-tablets:before { - content: "\f490" -} - -.fa-tachometer-alt:before { - content: "\f3fd" -} - -.fa-tag:before { - content: "\f02b" -} - -.fa-tags:before { - content: "\f02c" -} - -.fa-tape:before { - content: "\f4db" -} - -.fa-tasks:before { - content: "\f0ae" -} - -.fa-taxi:before { - content: "\f1ba" -} - -.fa-teamspeak:before { - content: "\f4f9" -} - -.fa-teeth:before { - content: "\f62e" -} - -.fa-teeth-open:before { - content: "\f62f" -} - -.fa-telegram:before { - content: "\f2c6" -} - -.fa-telegram-plane:before { - content: "\f3fe" -} - -.fa-temperature-high:before { - content: "\f769" -} - -.fa-temperature-low:before { - content: "\f76b" -} - -.fa-tencent-weibo:before { - content: "\f1d5" -} - -.fa-tenge:before { - content: "\f7d7" -} - -.fa-terminal:before { - content: "\f120" -} - -.fa-text-height:before { - content: "\f034" -} - -.fa-text-width:before { - content: "\f035" -} - -.fa-th:before { - content: "\f00a" -} - -.fa-th-large:before { - content: "\f009" -} - -.fa-th-list:before { - content: "\f00b" -} - -.fa-the-red-yeti:before { - content: "\f69d" -} - -.fa-theater-masks:before { - content: "\f630" -} - -.fa-themeco:before { - content: "\f5c6" -} - -.fa-themeisle:before { - content: "\f2b2" -} - -.fa-thermometer:before { - content: "\f491" -} - -.fa-thermometer-empty:before { - content: "\f2cb" -} - -.fa-thermometer-full:before { - content: "\f2c7" -} - -.fa-thermometer-half:before { - content: "\f2c9" -} - -.fa-thermometer-quarter:before { - content: "\f2ca" -} - -.fa-thermometer-three-quarters:before { - content: "\f2c8" -} - -.fa-think-peaks:before { - content: "\f731" -} - -.fa-thumbs-down:before { - content: "\f165" -} - -.fa-thumbs-up:before { - content: "\f164" -} - -.fa-thumbtack:before { - content: "\f08d" -} - -.fa-ticket-alt:before { - content: "\f3ff" -} - -.fa-times:before { - content: "\f00d" -} - -.fa-times-circle:before { - content: "\f057" -} - -.fa-tint:before { - content: "\f043" -} - -.fa-tint-slash:before { - content: "\f5c7" -} - -.fa-tired:before { - content: "\f5c8" -} - -.fa-toggle-off:before { - content: "\f204" -} - -.fa-toggle-on:before { - content: "\f205" -} - -.fa-toilet:before { - content: "\f7d8" -} - -.fa-toilet-paper:before { - content: "\f71e" -} - -.fa-toolbox:before { - content: "\f552" -} - -.fa-tools:before { - content: "\f7d9" -} - -.fa-tooth:before { - content: "\f5c9" -} - -.fa-torah:before { - content: "\f6a0" -} - -.fa-torii-gate:before { - content: "\f6a1" -} - -.fa-tractor:before { - content: "\f722" -} - -.fa-trade-federation:before { - content: "\f513" -} - -.fa-trademark:before { - content: "\f25c" -} - -.fa-traffic-light:before { - content: "\f637" -} - -.fa-trailer:before { - content: "\f941" -} - -.fa-train:before { - content: "\f238" -} - -.fa-tram:before { - content: "\f7da" -} - -.fa-transgender:before { - content: "\f224" -} - -.fa-transgender-alt:before { - content: "\f225" -} - -.fa-trash:before { - content: "\f1f8" -} - -.fa-trash-alt:before { - content: "\f2ed" -} - -.fa-trash-restore:before { - content: "\f829" -} - -.fa-trash-restore-alt:before { - content: "\f82a" -} - -.fa-tree:before { - content: "\f1bb" -} - -.fa-trello:before { - content: "\f181" -} - -.fa-tripadvisor:before { - content: "\f262" -} - -.fa-trophy:before { - content: "\f091" -} - -.fa-truck:before { - content: "\f0d1" -} - -.fa-truck-loading:before { - content: "\f4de" -} - -.fa-truck-monster:before { - content: "\f63b" -} - -.fa-truck-moving:before { - content: "\f4df" -} - -.fa-truck-pickup:before { - content: "\f63c" -} - -.fa-tshirt:before { - content: "\f553" -} - -.fa-tty:before { - content: "\f1e4" -} - -.fa-tumblr:before { - content: "\f173" -} - -.fa-tumblr-square:before { - content: "\f174" -} - -.fa-tv:before { - content: "\f26c" -} - -.fa-twitch:before { - content: "\f1e8" -} - -.fa-twitter:before { - content: "\f099" -} - -.fa-twitter-square:before { - content: "\f081" -} - -.fa-typo3:before { - content: "\f42b" -} - -.fa-uber:before { - content: "\f402" -} - -.fa-ubuntu:before { - content: "\f7df" -} - -.fa-uikit:before { - content: "\f403" -} - -.fa-umbraco:before { - content: "\f8e8" -} - -.fa-umbrella:before { - content: "\f0e9" -} - -.fa-umbrella-beach:before { - content: "\f5ca" -} - -.fa-underline:before { - content: "\f0cd" -} - -.fa-undo:before { - content: "\f0e2" -} - -.fa-undo-alt:before { - content: "\f2ea" -} - -.fa-uniregistry:before { - content: "\f404" -} - -.fa-unity:before { - content: "\f949" -} - -.fa-universal-access:before { - content: "\f29a" -} - -.fa-university:before { - content: "\f19c" -} - -.fa-unlink:before { - content: "\f127" -} - -.fa-unlock:before { - content: "\f09c" -} - -.fa-unlock-alt:before { - content: "\f13e" -} - -.fa-untappd:before { - content: "\f405" -} - -.fa-upload:before { - content: "\f093" -} - -.fa-ups:before { - content: "\f7e0" -} - -.fa-usb:before { - content: "\f287" -} - -.fa-user:before { - content: "\f007" -} - -.fa-user-alt:before { - content: "\f406" -} - -.fa-user-alt-slash:before { - content: "\f4fa" -} - -.fa-user-astronaut:before { - content: "\f4fb" -} - -.fa-user-check:before { - content: "\f4fc" -} - -.fa-user-circle:before { - content: "\f2bd" -} - -.fa-user-clock:before { - content: "\f4fd" -} - -.fa-user-cog:before { - content: "\f4fe" -} - -.fa-user-edit:before { - content: "\f4ff" -} - -.fa-user-friends:before { - content: "\f500" -} - -.fa-user-graduate:before { - content: "\f501" -} - -.fa-user-injured:before { - content: "\f728" -} - -.fa-user-lock:before { - content: "\f502" -} - -.fa-user-md:before { - content: "\f0f0" -} - -.fa-user-minus:before { - content: "\f503" -} - -.fa-user-ninja:before { - content: "\f504" -} - -.fa-user-nurse:before { - content: "\f82f" -} - -.fa-user-plus:before { - content: "\f234" -} - -.fa-user-secret:before { - content: "\f21b" -} - -.fa-user-shield:before { - content: "\f505" -} - -.fa-user-slash:before { - content: "\f506" -} - -.fa-user-tag:before { - content: "\f507" -} - -.fa-user-tie:before { - content: "\f508" -} - -.fa-user-times:before { - content: "\f235" -} - -.fa-users:before { - content: "\f0c0" -} - -.fa-users-cog:before { - content: "\f509" -} - -.fa-usps:before { - content: "\f7e1" -} - -.fa-ussunnah:before { - content: "\f407" -} - -.fa-utensil-spoon:before { - content: "\f2e5" -} - -.fa-utensils:before { - content: "\f2e7" -} - -.fa-vaadin:before { - content: "\f408" -} - -.fa-vector-square:before { - content: "\f5cb" -} - -.fa-venus:before { - content: "\f221" -} - -.fa-venus-double:before { - content: "\f226" -} - -.fa-venus-mars:before { - content: "\f228" -} - -.fa-viacoin:before { - content: "\f237" -} - -.fa-viadeo:before { - content: "\f2a9" -} - -.fa-viadeo-square:before { - content: "\f2aa" -} - -.fa-vial:before { - content: "\f492" -} - -.fa-vials:before { - content: "\f493" -} - -.fa-viber:before { - content: "\f409" -} - -.fa-video:before { - content: "\f03d" -} - -.fa-video-slash:before { - content: "\f4e2" -} - -.fa-vihara:before { - content: "\f6a7" -} - -.fa-vimeo:before { - content: "\f40a" -} - -.fa-vimeo-square:before { - content: "\f194" -} - -.fa-vimeo-v:before { - content: "\f27d" -} - -.fa-vine:before { - content: "\f1ca" -} - -.fa-vk:before { - content: "\f189" -} - -.fa-vnv:before { - content: "\f40b" -} - -.fa-voicemail:before { - content: "\f897" -} - -.fa-volleyball-ball:before { - content: "\f45f" -} - -.fa-volume-down:before { - content: "\f027" -} - -.fa-volume-mute:before { - content: "\f6a9" -} - -.fa-volume-off:before { - content: "\f026" -} - -.fa-volume-up:before { - content: "\f028" -} - -.fa-vote-yea:before { - content: "\f772" -} - -.fa-vr-cardboard:before { - content: "\f729" -} - -.fa-vuejs:before { - content: "\f41f" -} - -.fa-walking:before { - content: "\f554" -} - -.fa-wallet:before { - content: "\f555" -} - -.fa-warehouse:before { - content: "\f494" -} - -.fa-water:before { - content: "\f773" -} - -.fa-wave-square:before { - content: "\f83e" -} - -.fa-waze:before { - content: "\f83f" -} - -.fa-weebly:before { - content: "\f5cc" -} - -.fa-weibo:before { - content: "\f18a" -} - -.fa-weight:before { - content: "\f496" -} - -.fa-weight-hanging:before { - content: "\f5cd" -} - -.fa-weixin:before { - content: "\f1d7" -} - -.fa-whatsapp:before { - content: "\f232" -} - -.fa-whatsapp-square:before { - content: "\f40c" -} - -.fa-wheelchair:before { - content: "\f193" -} - -.fa-whmcs:before { - content: "\f40d" -} - -.fa-wifi:before { - content: "\f1eb" -} - -.fa-wikipedia-w:before { - content: "\f266" -} - -.fa-wind:before { - content: "\f72e" -} - -.fa-window-close:before { - content: "\f410" -} - -.fa-window-maximize:before { - content: "\f2d0" -} - -.fa-window-minimize:before { - content: "\f2d1" -} - -.fa-window-restore:before { - content: "\f2d2" -} - -.fa-windows:before { - content: "\f17a" -} - -.fa-wine-bottle:before { - content: "\f72f" -} - -.fa-wine-glass:before { - content: "\f4e3" -} - -.fa-wine-glass-alt:before { - content: "\f5ce" -} - -.fa-wix:before { - content: "\f5cf" -} - -.fa-wizards-of-the-coast:before { - content: "\f730" -} - -.fa-wolf-pack-battalion:before { - content: "\f514" -} - -.fa-won-sign:before { - content: "\f159" -} - -.fa-wordpress:before { - content: "\f19a" -} - -.fa-wordpress-simple:before { - content: "\f411" -} - -.fa-wpbeginner:before { - content: "\f297" -} - -.fa-wpexplorer:before { - content: "\f2de" -} - -.fa-wpforms:before { - content: "\f298" -} - -.fa-wpressr:before { - content: "\f3e4" -} - -.fa-wrench:before { - content: "\f0ad" -} - -.fa-x-ray:before { - content: "\f497" -} - -.fa-xbox:before { - content: "\f412" -} - -.fa-xing:before { - content: "\f168" -} - -.fa-xing-square:before { - content: "\f169" -} - -.fa-y-combinator:before { - content: "\f23b" -} - -.fa-yahoo:before { - content: "\f19e" -} - -.fa-yammer:before { - content: "\f840" -} - -.fa-yandex:before { - content: "\f413" -} - -.fa-yandex-international:before { - content: "\f414" -} - -.fa-yarn:before { - content: "\f7e3" -} - -.fa-yelp:before { - content: "\f1e9" -} - -.fa-yen-sign:before { - content: "\f157" -} - -.fa-yin-yang:before { - content: "\f6ad" -} - -.fa-yoast:before { - content: "\f2b1" -} - -.fa-youtube:before { - content: "\f167" -} - -.fa-youtube-square:before { - content: "\f431" -} - -.fa-zhihu:before { - content: "\f63f" -} - -.sr-only { - border: 0; - clip: rect(0, 0, 0, 0); - height: 1px; - margin: -1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px -} - -.sr-only-focusable:active, -.sr-only-focusable:focus { - clip: auto; - height: auto; - margin: 0; - overflow: visible; - position: static; - width: auto -} - -@font-face { - font-family: "Font Awesome 5 Brands"; - font-style: normal; - font-weight: normal; - font-display: auto; - src: url(../fonts/fa-brands-400.eot); - src: url(../fonts/fa-brands-400.eot?#iefix) format("embedded-opentype"), url(../fonts/fa-brands-400.woff2) format("woff2"), url(../fonts/fa-brands-400.woff) format("woff"), url(../fonts/fa-brands-400.ttf) format("truetype"), url(../fonts/fa-brands-400.svg#fontawesome) format("svg") -} - -.fab { - font-family: "Font Awesome 5 Brands" -} - -@font-face { - font-family: "Font Awesome 5 Free"; - font-style: normal; - font-weight: 400; - font-display: auto; - src: url(../fonts/fa-regular-400.eot); - src: url(../fonts/fa-regular-400.eot?#iefix) format("embedded-opentype"), url(../fonts/fa-regular-400.woff2) format("woff2"), url(../fonts/fa-regular-400.woff) format("woff"), url(../fonts/fa-regular-400.ttf) format("truetype"), url(../fonts/fa-regular-400.svg#fontawesome) format("svg") -} - -.far { - font-weight: 400 -} - -@font-face { - font-family: "Font Awesome 5 Free"; - font-style: normal; - font-weight: 900; - font-display: auto; - src: url(../fonts/fa-solid-900.eot); - src: url(../fonts/fa-solid-900.eot?#iefix) format("embedded-opentype"), url(../fonts/fa-solid-900.woff2) format("woff2"), url(../fonts/fa-solid-900.woff) format("woff"), url(../fonts/fa-solid-900.ttf) format("truetype"), url(../fonts/fa-solid-900.svg#fontawesome) format("svg") -} - -.fa, -.far, -.fas { - font-family: "Font Awesome 5 Free" -} - -.fa, -.fas { - font-weight: 900 -} \ No newline at end of file diff --git a/webapp/app/views/static/overview/js/chart.min.js b/webapp/app/views/static/overview/js/chart.min.js deleted file mode 100644 index f249afa..0000000 --- a/webapp/app/views/static/overview/js/chart.min.js +++ /dev/null @@ -1,4743 +0,0 @@ -/*! - * Chart.js v2.8.0 - * https://www.chartjs.org - * (c) 2019 Chart.js Contributors - * Released under the MIT License - */ -! function(t, e) { "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : t.Chart = e() }(this, function() { - "use strict"; - var t = { - rgb2hsl: e, - rgb2hsv: i, - rgb2hwb: n, - rgb2cmyk: a, - rgb2keyword: o, - rgb2xyz: s, - rgb2lab: l, - rgb2lch: function(t) { return v(l(t)) }, - hsl2rgb: u, - hsl2hsv: function(t) { - var e = t[0], - i = t[1] / 100, - n = t[2] / 100; - if (0 === n) return [0, 0, 0]; - return [e, 100 * (2 * (i *= (n *= 2) <= 1 ? n : 2 - n) / (n + i)), 100 * ((n + i) / 2)] - }, - hsl2hwb: function(t) { return n(u(t)) }, - hsl2cmyk: function(t) { return a(u(t)) }, - hsl2keyword: function(t) { return o(u(t)) }, - hsv2rgb: d, - hsv2hsl: function(t) { - var e, i, n = t[0], - a = t[1] / 100, - r = t[2] / 100; - return e = a * r, [n, 100 * (e = (e /= (i = (2 - a) * r) <= 1 ? i : 2 - i) || 0), 100 * (i /= 2)] - }, - hsv2hwb: function(t) { return n(d(t)) }, - hsv2cmyk: function(t) { return a(d(t)) }, - hsv2keyword: function(t) { return o(d(t)) }, - hwb2rgb: h, - hwb2hsl: function(t) { return e(h(t)) }, - hwb2hsv: function(t) { return i(h(t)) }, - hwb2cmyk: function(t) { return a(h(t)) }, - hwb2keyword: function(t) { return o(h(t)) }, - cmyk2rgb: c, - cmyk2hsl: function(t) { return e(c(t)) }, - cmyk2hsv: function(t) { return i(c(t)) }, - cmyk2hwb: function(t) { return n(c(t)) }, - cmyk2keyword: function(t) { return o(c(t)) }, - keyword2rgb: _, - keyword2hsl: function(t) { return e(_(t)) }, - keyword2hsv: function(t) { return i(_(t)) }, - keyword2hwb: function(t) { return n(_(t)) }, - keyword2cmyk: function(t) { return a(_(t)) }, - keyword2lab: function(t) { return l(_(t)) }, - keyword2xyz: function(t) { return s(_(t)) }, - xyz2rgb: f, - xyz2lab: m, - xyz2lch: function(t) { return v(m(t)) }, - lab2xyz: p, - lab2rgb: y, - lab2lch: v, - lch2lab: x, - lch2xyz: function(t) { return p(x(t)) }, - lch2rgb: function(t) { return y(x(t)) } - }; - - function e(t) { - var e, i, n = t[0] / 255, - a = t[1] / 255, - r = t[2] / 255, - o = Math.min(n, a, r), - s = Math.max(n, a, r), - l = s - o; - return s == o ? e = 0 : n == s ? e = (a - r) / l : a == s ? e = 2 + (r - n) / l : r == s && (e = 4 + (n - a) / l), (e = Math.min(60 * e, 360)) < 0 && (e += 360), i = (o + s) / 2, [e, 100 * (s == o ? 0 : i <= .5 ? l / (s + o) : l / (2 - s - o)), 100 * i] - } - - function i(t) { - var e, i, n = t[0], - a = t[1], - r = t[2], - o = Math.min(n, a, r), - s = Math.max(n, a, r), - l = s - o; - return i = 0 == s ? 0 : l / s * 1e3 / 10, s == o ? e = 0 : n == s ? e = (a - r) / l : a == s ? e = 2 + (r - n) / l : r == s && (e = 4 + (n - a) / l), (e = Math.min(60 * e, 360)) < 0 && (e += 360), [e, i, s / 255 * 1e3 / 10] - } - - function n(t) { - var i = t[0], - n = t[1], - a = t[2]; - return [e(t)[0], 100 * (1 / 255 * Math.min(i, Math.min(n, a))), 100 * (a = 1 - 1 / 255 * Math.max(i, Math.max(n, a)))] - } - - function a(t) { - var e, i = t[0] / 255, - n = t[1] / 255, - a = t[2] / 255; - return [100 * ((1 - i - (e = Math.min(1 - i, 1 - n, 1 - a))) / (1 - e) || 0), 100 * ((1 - n - e) / (1 - e) || 0), 100 * ((1 - a - e) / (1 - e) || 0), 100 * e] - } - - function o(t) { return w[JSON.stringify(t)] } - - function s(t) { - var e = t[0] / 255, - i = t[1] / 255, - n = t[2] / 255; - return [100 * (.4124 * (e = e > .04045 ? Math.pow((e + .055) / 1.055, 2.4) : e / 12.92) + .3576 * (i = i > .04045 ? Math.pow((i + .055) / 1.055, 2.4) : i / 12.92) + .1805 * (n = n > .04045 ? Math.pow((n + .055) / 1.055, 2.4) : n / 12.92)), 100 * (.2126 * e + .7152 * i + .0722 * n), 100 * (.0193 * e + .1192 * i + .9505 * n)] - } - - function l(t) { - var e = s(t), - i = e[0], - n = e[1], - a = e[2]; - return n /= 100, a /= 108.883, i = (i /= 95.047) > .008856 ? Math.pow(i, 1 / 3) : 7.787 * i + 16 / 116, [116 * (n = n > .008856 ? Math.pow(n, 1 / 3) : 7.787 * n + 16 / 116) - 16, 500 * (i - n), 200 * (n - (a = a > .008856 ? Math.pow(a, 1 / 3) : 7.787 * a + 16 / 116))] - } - - function u(t) { - var e, i, n, a, r, o = t[0] / 360, - s = t[1] / 100, - l = t[2] / 100; - if (0 == s) return [r = 255 * l, r, r]; - e = 2 * l - (i = l < .5 ? l * (1 + s) : l + s - l * s), a = [0, 0, 0]; - for (var u = 0; u < 3; u++)(n = o + 1 / 3 * -(u - 1)) < 0 && n++, n > 1 && n--, r = 6 * n < 1 ? e + 6 * (i - e) * n : 2 * n < 1 ? i : 3 * n < 2 ? e + (i - e) * (2 / 3 - n) * 6 : e, a[u] = 255 * r; - return a - } - - function d(t) { - var e = t[0] / 60, - i = t[1] / 100, - n = t[2] / 100, - a = Math.floor(e) % 6, - r = e - Math.floor(e), - o = 255 * n * (1 - i), - s = 255 * n * (1 - i * r), - l = 255 * n * (1 - i * (1 - r)); - n *= 255; - switch (a) { - case 0: - return [n, l, o]; - case 1: - return [s, n, o]; - case 2: - return [o, n, l]; - case 3: - return [o, s, n]; - case 4: - return [l, o, n]; - case 5: - return [n, o, s] - } - } - - function h(t) { - var e, i, n, a, o = t[0] / 360, - s = t[1] / 100, - l = t[2] / 100, - u = s + l; - switch (u > 1 && (s /= u, l /= u), n = 6 * o - (e = Math.floor(6 * o)), 0 != (1 & e) && (n = 1 - n), a = s + n * ((i = 1 - l) - s), e) { - default: - case 6: - case 0: - r = i, - g = a, - b = s; - break; - case 1: - r = a, - g = i, - b = s; - break; - case 2: - r = s, - g = i, - b = a; - break; - case 3: - r = s, - g = a, - b = i; - break; - case 4: - r = a, - g = s, - b = i; - break; - case 5: - r = i, - g = s, - b = a - } - return [255 * r, 255 * g, 255 * b] - } - - function c(t) { - var e = t[0] / 100, - i = t[1] / 100, - n = t[2] / 100, - a = t[3] / 100; - return [255 * (1 - Math.min(1, e * (1 - a) + a)), 255 * (1 - Math.min(1, i * (1 - a) + a)), 255 * (1 - Math.min(1, n * (1 - a) + a))] - } - - function f(t) { - var e, i, n, a = t[0] / 100, - r = t[1] / 100, - o = t[2] / 100; - return i = -.9689 * a + 1.8758 * r + .0415 * o, n = .0557 * a + -.204 * r + 1.057 * o, e = (e = 3.2406 * a + -1.5372 * r + -.4986 * o) > .0031308 ? 1.055 * Math.pow(e, 1 / 2.4) - .055 : e *= 12.92, i = i > .0031308 ? 1.055 * Math.pow(i, 1 / 2.4) - .055 : i *= 12.92, n = n > .0031308 ? 1.055 * Math.pow(n, 1 / 2.4) - .055 : n *= 12.92, [255 * (e = Math.min(Math.max(0, e), 1)), 255 * (i = Math.min(Math.max(0, i), 1)), 255 * (n = Math.min(Math.max(0, n), 1))] - } - - function m(t) { - var e = t[0], - i = t[1], - n = t[2]; - return i /= 100, n /= 108.883, e = (e /= 95.047) > .008856 ? Math.pow(e, 1 / 3) : 7.787 * e + 16 / 116, [116 * (i = i > .008856 ? Math.pow(i, 1 / 3) : 7.787 * i + 16 / 116) - 16, 500 * (e - i), 200 * (i - (n = n > .008856 ? Math.pow(n, 1 / 3) : 7.787 * n + 16 / 116))] - } - - function p(t) { - var e, i, n, a, r = t[0], - o = t[1], - s = t[2]; - return r <= 8 ? a = (i = 100 * r / 903.3) / 100 * 7.787 + 16 / 116 : (i = 100 * Math.pow((r + 16) / 116, 3), a = Math.pow(i / 100, 1 / 3)), [e = e / 95.047 <= .008856 ? e = 95.047 * (o / 500 + a - 16 / 116) / 7.787 : 95.047 * Math.pow(o / 500 + a, 3), i, n = n / 108.883 <= .008859 ? n = 108.883 * (a - s / 200 - 16 / 116) / 7.787 : 108.883 * Math.pow(a - s / 200, 3)] - } - - function v(t) { - var e, i = t[0], - n = t[1], - a = t[2]; - return (e = 360 * Math.atan2(a, n) / 2 / Math.PI) < 0 && (e += 360), [i, Math.sqrt(n * n + a * a), e] - } - - function y(t) { return f(p(t)) } - - function x(t) { - var e, i = t[0], - n = t[1]; - return e = t[2] / 360 * 2 * Math.PI, [i, n * Math.cos(e), n * Math.sin(e)] - } - - function _(t) { return k[t] } - var k = { aliceblue: [240, 248, 255], antiquewhite: [250, 235, 215], aqua: [0, 255, 255], aquamarine: [127, 255, 212], azure: [240, 255, 255], beige: [245, 245, 220], bisque: [255, 228, 196], black: [0, 0, 0], blanchedalmond: [255, 235, 205], blue: [0, 0, 255], blueviolet: [138, 43, 226], brown: [165, 42, 42], burlywood: [222, 184, 135], cadetblue: [95, 158, 160], chartreuse: [127, 255, 0], chocolate: [210, 105, 30], coral: [255, 127, 80], cornflowerblue: [100, 149, 237], cornsilk: [255, 248, 220], crimson: [220, 20, 60], cyan: [0, 255, 255], darkblue: [0, 0, 139], darkcyan: [0, 139, 139], darkgoldenrod: [184, 134, 11], darkgray: [169, 169, 169], darkgreen: [0, 100, 0], darkgrey: [169, 169, 169], darkkhaki: [189, 183, 107], darkmagenta: [139, 0, 139], darkolivegreen: [85, 107, 47], darkorange: [255, 140, 0], darkorchid: [153, 50, 204], darkred: [139, 0, 0], darksalmon: [233, 150, 122], darkseagreen: [143, 188, 143], darkslateblue: [72, 61, 139], darkslategray: [47, 79, 79], darkslategrey: [47, 79, 79], darkturquoise: [0, 206, 209], darkviolet: [148, 0, 211], deeppink: [255, 20, 147], deepskyblue: [0, 191, 255], dimgray: [105, 105, 105], dimgrey: [105, 105, 105], dodgerblue: [30, 144, 255], firebrick: [178, 34, 34], floralwhite: [255, 250, 240], forestgreen: [34, 139, 34], fuchsia: [255, 0, 255], gainsboro: [220, 220, 220], ghostwhite: [248, 248, 255], gold: [255, 215, 0], goldenrod: [218, 165, 32], gray: [128, 128, 128], green: [0, 128, 0], greenyellow: [173, 255, 47], grey: [128, 128, 128], honeydew: [240, 255, 240], hotpink: [255, 105, 180], indianred: [205, 92, 92], indigo: [75, 0, 130], ivory: [255, 255, 240], khaki: [240, 230, 140], lavender: [230, 230, 250], lavenderblush: [255, 240, 245], lawngreen: [124, 252, 0], lemonchiffon: [255, 250, 205], lightblue: [173, 216, 230], lightcoral: [240, 128, 128], lightcyan: [224, 255, 255], lightgoldenrodyellow: [250, 250, 210], lightgray: [211, 211, 211], lightgreen: [144, 238, 144], lightgrey: [211, 211, 211], lightpink: [255, 182, 193], lightsalmon: [255, 160, 122], lightseagreen: [32, 178, 170], lightskyblue: [135, 206, 250], lightslategray: [119, 136, 153], lightslategrey: [119, 136, 153], lightsteelblue: [176, 196, 222], lightyellow: [255, 255, 224], lime: [0, 255, 0], limegreen: [50, 205, 50], linen: [250, 240, 230], magenta: [255, 0, 255], maroon: [128, 0, 0], mediumaquamarine: [102, 205, 170], mediumblue: [0, 0, 205], mediumorchid: [186, 85, 211], mediumpurple: [147, 112, 219], mediumseagreen: [60, 179, 113], mediumslateblue: [123, 104, 238], mediumspringgreen: [0, 250, 154], mediumturquoise: [72, 209, 204], mediumvioletred: [199, 21, 133], midnightblue: [25, 25, 112], mintcream: [245, 255, 250], mistyrose: [255, 228, 225], moccasin: [255, 228, 181], navajowhite: [255, 222, 173], navy: [0, 0, 128], oldlace: [253, 245, 230], olive: [128, 128, 0], olivedrab: [107, 142, 35], orange: [255, 165, 0], orangered: [255, 69, 0], orchid: [218, 112, 214], palegoldenrod: [238, 232, 170], palegreen: [152, 251, 152], paleturquoise: [175, 238, 238], palevioletred: [219, 112, 147], papayawhip: [255, 239, 213], peachpuff: [255, 218, 185], peru: [205, 133, 63], pink: [255, 192, 203], plum: [221, 160, 221], powderblue: [176, 224, 230], purple: [128, 0, 128], rebeccapurple: [102, 51, 153], red: [255, 0, 0], rosybrown: [188, 143, 143], royalblue: [65, 105, 225], saddlebrown: [139, 69, 19], salmon: [250, 128, 114], sandybrown: [244, 164, 96], seagreen: [46, 139, 87], seashell: [255, 245, 238], sienna: [160, 82, 45], silver: [192, 192, 192], skyblue: [135, 206, 235], slateblue: [106, 90, 205], slategray: [112, 128, 144], slategrey: [112, 128, 144], snow: [255, 250, 250], springgreen: [0, 255, 127], steelblue: [70, 130, 180], tan: [210, 180, 140], teal: [0, 128, 128], thistle: [216, 191, 216], tomato: [255, 99, 71], turquoise: [64, 224, 208], violet: [238, 130, 238], wheat: [245, 222, 179], white: [255, 255, 255], whitesmoke: [245, 245, 245], yellow: [255, 255, 0], yellowgreen: [154, 205, 50] }, - w = {}; - for (var M in k) w[JSON.stringify(k[M])] = M; - var S = function() { return new O }; - for (var D in t) { - S[D + "Raw"] = function(e) { return function(i) { return "number" == typeof i && (i = Array.prototype.slice.call(arguments)), t[e](i) } }(D); - var C = /(\w+)2(\w+)/.exec(D), - P = C[1], - T = C[2]; - (S[P] = S[P] || {})[T] = S[D] = function(e) { return function(i) { "number" == typeof i && (i = Array.prototype.slice.call(arguments)); var n = t[e](i); if ("string" == typeof n || void 0 === n) return n; for (var a = 0; a < n.length; a++) n[a] = Math.round(n[a]); return n } }(D) - } - var O = function() { this.convs = {} }; - O.prototype.routeSpace = function(t, e) { var i = e[0]; return void 0 === i ? this.getValues(t) : ("number" == typeof i && (i = Array.prototype.slice.call(e)), this.setValues(t, i)) }, O.prototype.setValues = function(t, e) { return this.space = t, this.convs = {}, this.convs[t] = e, this }, O.prototype.getValues = function(t) { - var e = this.convs[t]; - if (!e) { - var i = this.space, - n = this.convs[i]; - e = S[i][t](n), this.convs[t] = e - } - return e - }, ["rgb", "hsl", "hsv", "cmyk", "keyword"].forEach(function(t) { O.prototype[t] = function(e) { return this.routeSpace(t, arguments) } }); - var I = S, - A = { aliceblue: [240, 248, 255], antiquewhite: [250, 235, 215], aqua: [0, 255, 255], aquamarine: [127, 255, 212], azure: [240, 255, 255], beige: [245, 245, 220], bisque: [255, 228, 196], black: [0, 0, 0], blanchedalmond: [255, 235, 205], blue: [0, 0, 255], blueviolet: [138, 43, 226], brown: [165, 42, 42], burlywood: [222, 184, 135], cadetblue: [95, 158, 160], chartreuse: [127, 255, 0], chocolate: [210, 105, 30], coral: [255, 127, 80], cornflowerblue: [100, 149, 237], cornsilk: [255, 248, 220], crimson: [220, 20, 60], cyan: [0, 255, 255], darkblue: [0, 0, 139], darkcyan: [0, 139, 139], darkgoldenrod: [184, 134, 11], darkgray: [169, 169, 169], darkgreen: [0, 100, 0], darkgrey: [169, 169, 169], darkkhaki: [189, 183, 107], darkmagenta: [139, 0, 139], darkolivegreen: [85, 107, 47], darkorange: [255, 140, 0], darkorchid: [153, 50, 204], darkred: [139, 0, 0], darksalmon: [233, 150, 122], darkseagreen: [143, 188, 143], darkslateblue: [72, 61, 139], darkslategray: [47, 79, 79], darkslategrey: [47, 79, 79], darkturquoise: [0, 206, 209], darkviolet: [148, 0, 211], deeppink: [255, 20, 147], deepskyblue: [0, 191, 255], dimgray: [105, 105, 105], dimgrey: [105, 105, 105], dodgerblue: [30, 144, 255], firebrick: [178, 34, 34], floralwhite: [255, 250, 240], forestgreen: [34, 139, 34], fuchsia: [255, 0, 255], gainsboro: [220, 220, 220], ghostwhite: [248, 248, 255], gold: [255, 215, 0], goldenrod: [218, 165, 32], gray: [128, 128, 128], green: [0, 128, 0], greenyellow: [173, 255, 47], grey: [128, 128, 128], honeydew: [240, 255, 240], hotpink: [255, 105, 180], indianred: [205, 92, 92], indigo: [75, 0, 130], ivory: [255, 255, 240], khaki: [240, 230, 140], lavender: [230, 230, 250], lavenderblush: [255, 240, 245], lawngreen: [124, 252, 0], lemonchiffon: [255, 250, 205], lightblue: [173, 216, 230], lightcoral: [240, 128, 128], lightcyan: [224, 255, 255], lightgoldenrodyellow: [250, 250, 210], lightgray: [211, 211, 211], lightgreen: [144, 238, 144], lightgrey: [211, 211, 211], lightpink: [255, 182, 193], lightsalmon: [255, 160, 122], lightseagreen: [32, 178, 170], lightskyblue: [135, 206, 250], lightslategray: [119, 136, 153], lightslategrey: [119, 136, 153], lightsteelblue: [176, 196, 222], lightyellow: [255, 255, 224], lime: [0, 255, 0], limegreen: [50, 205, 50], linen: [250, 240, 230], magenta: [255, 0, 255], maroon: [128, 0, 0], mediumaquamarine: [102, 205, 170], mediumblue: [0, 0, 205], mediumorchid: [186, 85, 211], mediumpurple: [147, 112, 219], mediumseagreen: [60, 179, 113], mediumslateblue: [123, 104, 238], mediumspringgreen: [0, 250, 154], mediumturquoise: [72, 209, 204], mediumvioletred: [199, 21, 133], midnightblue: [25, 25, 112], mintcream: [245, 255, 250], mistyrose: [255, 228, 225], moccasin: [255, 228, 181], navajowhite: [255, 222, 173], navy: [0, 0, 128], oldlace: [253, 245, 230], olive: [128, 128, 0], olivedrab: [107, 142, 35], orange: [255, 165, 0], orangered: [255, 69, 0], orchid: [218, 112, 214], palegoldenrod: [238, 232, 170], palegreen: [152, 251, 152], paleturquoise: [175, 238, 238], palevioletred: [219, 112, 147], papayawhip: [255, 239, 213], peachpuff: [255, 218, 185], peru: [205, 133, 63], pink: [255, 192, 203], plum: [221, 160, 221], powderblue: [176, 224, 230], purple: [128, 0, 128], rebeccapurple: [102, 51, 153], red: [255, 0, 0], rosybrown: [188, 143, 143], royalblue: [65, 105, 225], saddlebrown: [139, 69, 19], salmon: [250, 128, 114], sandybrown: [244, 164, 96], seagreen: [46, 139, 87], seashell: [255, 245, 238], sienna: [160, 82, 45], silver: [192, 192, 192], skyblue: [135, 206, 235], slateblue: [106, 90, 205], slategray: [112, 128, 144], slategrey: [112, 128, 144], snow: [255, 250, 250], springgreen: [0, 255, 127], steelblue: [70, 130, 180], tan: [210, 180, 140], teal: [0, 128, 128], thistle: [216, 191, 216], tomato: [255, 99, 71], turquoise: [64, 224, 208], violet: [238, 130, 238], wheat: [245, 222, 179], white: [255, 255, 255], whitesmoke: [245, 245, 245], yellow: [255, 255, 0], yellowgreen: [154, 205, 50] }, - F = { - getRgba: R, - getHsla: L, - getRgb: function(t) { var e = R(t); return e && e.slice(0, 3) }, - getHsl: function(t) { var e = L(t); return e && e.slice(0, 3) }, - getHwb: W, - getAlpha: function(t) { var e = R(t); if (e) return e[3]; if (e = L(t)) return e[3]; if (e = W(t)) return e[3] }, - hexString: function(t, e) { var e = void 0 !== e && 3 === t.length ? e : t[3]; return "#" + H(t[0]) + H(t[1]) + H(t[2]) + (e >= 0 && e < 1 ? H(Math.round(255 * e)) : "") }, - rgbString: function(t, e) { if (e < 1 || t[3] && t[3] < 1) return Y(t, e); return "rgb(" + t[0] + ", " + t[1] + ", " + t[2] + ")" }, - rgbaString: Y, - percentString: function(t, e) { - if (e < 1 || t[3] && t[3] < 1) return N(t, e); - var i = Math.round(t[0] / 255 * 100), - n = Math.round(t[1] / 255 * 100), - a = Math.round(t[2] / 255 * 100); - return "rgb(" + i + "%, " + n + "%, " + a + "%)" - }, - percentaString: N, - hslString: function(t, e) { if (e < 1 || t[3] && t[3] < 1) return z(t, e); return "hsl(" + t[0] + ", " + t[1] + "%, " + t[2] + "%)" }, - hslaString: z, - hwbString: function(t, e) { void 0 === e && (e = void 0 !== t[3] ? t[3] : 1); return "hwb(" + t[0] + ", " + t[1] + "%, " + t[2] + "%" + (void 0 !== e && 1 !== e ? ", " + e : "") + ")" }, - keyword: function(t) { return E[t.slice(0, 3)] } - }; - - function R(t) { - if (t) { - var e = [0, 0, 0], - i = 1, - n = t.match(/^#([a-fA-F0-9]{3,4})$/i), - a = ""; - if (n) { - a = (n = n[1])[3]; - for (var r = 0; r < e.length; r++) e[r] = parseInt(n[r] + n[r], 16); - a && (i = Math.round(parseInt(a + a, 16) / 255 * 100) / 100) - } else if (n = t.match(/^#([a-fA-F0-9]{6}([a-fA-F0-9]{2})?)$/i)) { - a = n[2], n = n[1]; - for (r = 0; r < e.length; r++) e[r] = parseInt(n.slice(2 * r, 2 * r + 2), 16); - a && (i = Math.round(parseInt(a, 16) / 255 * 100) / 100) - } else if (n = t.match(/^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)) { - for (r = 0; r < e.length; r++) e[r] = parseInt(n[r + 1]); - i = parseFloat(n[4]) - } else if (n = t.match(/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/i)) { - for (r = 0; r < e.length; r++) e[r] = Math.round(2.55 * parseFloat(n[r + 1])); - i = parseFloat(n[4]) - } else if (n = t.match(/(\w+)/)) { if ("transparent" == n[1]) return [0, 0, 0, 0]; if (!(e = A[n[1]])) return } - for (r = 0; r < e.length; r++) e[r] = V(e[r], 0, 255); - return i = i || 0 == i ? V(i, 0, 1) : 1, e[3] = i, e - } - } - - function L(t) { if (t) { var e = t.match(/^hsla?\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/); if (e) { var i = parseFloat(e[4]); return [V(parseInt(e[1]), 0, 360), V(parseFloat(e[2]), 0, 100), V(parseFloat(e[3]), 0, 100), V(isNaN(i) ? 1 : i, 0, 1)] } } } - - function W(t) { if (t) { var e = t.match(/^hwb\(\s*([+-]?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)/); if (e) { var i = parseFloat(e[4]); return [V(parseInt(e[1]), 0, 360), V(parseFloat(e[2]), 0, 100), V(parseFloat(e[3]), 0, 100), V(isNaN(i) ? 1 : i, 0, 1)] } } } - - function Y(t, e) { return void 0 === e && (e = void 0 !== t[3] ? t[3] : 1), "rgba(" + t[0] + ", " + t[1] + ", " + t[2] + ", " + e + ")" } - - function N(t, e) { return "rgba(" + Math.round(t[0] / 255 * 100) + "%, " + Math.round(t[1] / 255 * 100) + "%, " + Math.round(t[2] / 255 * 100) + "%, " + (e || t[3] || 1) + ")" } - - function z(t, e) { return void 0 === e && (e = void 0 !== t[3] ? t[3] : 1), "hsla(" + t[0] + ", " + t[1] + "%, " + t[2] + "%, " + e + ")" } - - function V(t, e, i) { return Math.min(Math.max(e, t), i) } - - function H(t) { var e = t.toString(16).toUpperCase(); return e.length < 2 ? "0" + e : e } - var E = {}; - for (var B in A) E[A[B]] = B; - var j = function(t) { return t instanceof j ? t : this instanceof j ? (this.valid = !1, this.values = { rgb: [0, 0, 0], hsl: [0, 0, 0], hsv: [0, 0, 0], hwb: [0, 0, 0], cmyk: [0, 0, 0, 0], alpha: 1 }, void("string" == typeof t ? (e = F.getRgba(t)) ? this.setValues("rgb", e) : (e = F.getHsla(t)) ? this.setValues("hsl", e) : (e = F.getHwb(t)) && this.setValues("hwb", e) : "object" == typeof t && (void 0 !== (e = t).r || void 0 !== e.red ? this.setValues("rgb", e) : void 0 !== e.l || void 0 !== e.lightness ? this.setValues("hsl", e) : void 0 !== e.v || void 0 !== e.value ? this.setValues("hsv", e) : void 0 !== e.w || void 0 !== e.whiteness ? this.setValues("hwb", e) : void 0 === e.c && void 0 === e.cyan || this.setValues("cmyk", e)))) : new j(t); var e }; - j.prototype = { - isValid: function() { return this.valid }, - rgb: function() { return this.setSpace("rgb", arguments) }, - hsl: function() { return this.setSpace("hsl", arguments) }, - hsv: function() { return this.setSpace("hsv", arguments) }, - hwb: function() { return this.setSpace("hwb", arguments) }, - cmyk: function() { return this.setSpace("cmyk", arguments) }, - rgbArray: function() { return this.values.rgb }, - hslArray: function() { return this.values.hsl }, - hsvArray: function() { return this.values.hsv }, - hwbArray: function() { var t = this.values; return 1 !== t.alpha ? t.hwb.concat([t.alpha]) : t.hwb }, - cmykArray: function() { return this.values.cmyk }, - rgbaArray: function() { var t = this.values; return t.rgb.concat([t.alpha]) }, - hslaArray: function() { var t = this.values; return t.hsl.concat([t.alpha]) }, - alpha: function(t) { return void 0 === t ? this.values.alpha : (this.setValues("alpha", t), this) }, - red: function(t) { return this.setChannel("rgb", 0, t) }, - green: function(t) { return this.setChannel("rgb", 1, t) }, - blue: function(t) { return this.setChannel("rgb", 2, t) }, - hue: function(t) { return t && (t = (t %= 360) < 0 ? 360 + t : t), this.setChannel("hsl", 0, t) }, - saturation: function(t) { return this.setChannel("hsl", 1, t) }, - lightness: function(t) { return this.setChannel("hsl", 2, t) }, - saturationv: function(t) { return this.setChannel("hsv", 1, t) }, - whiteness: function(t) { return this.setChannel("hwb", 1, t) }, - blackness: function(t) { return this.setChannel("hwb", 2, t) }, - value: function(t) { return this.setChannel("hsv", 2, t) }, - cyan: function(t) { return this.setChannel("cmyk", 0, t) }, - magenta: function(t) { return this.setChannel("cmyk", 1, t) }, - yellow: function(t) { return this.setChannel("cmyk", 2, t) }, - black: function(t) { return this.setChannel("cmyk", 3, t) }, - hexString: function() { return F.hexString(this.values.rgb) }, - rgbString: function() { return F.rgbString(this.values.rgb, this.values.alpha) }, - rgbaString: function() { return F.rgbaString(this.values.rgb, this.values.alpha) }, - percentString: function() { return F.percentString(this.values.rgb, this.values.alpha) }, - hslString: function() { return F.hslString(this.values.hsl, this.values.alpha) }, - hslaString: function() { return F.hslaString(this.values.hsl, this.values.alpha) }, - hwbString: function() { return F.hwbString(this.values.hwb, this.values.alpha) }, - keyword: function() { return F.keyword(this.values.rgb, this.values.alpha) }, - rgbNumber: function() { var t = this.values.rgb; return t[0] << 16 | t[1] << 8 | t[2] }, - luminosity: function() { - for (var t = this.values.rgb, e = [], i = 0; i < t.length; i++) { - var n = t[i] / 255; - e[i] = n <= .03928 ? n / 12.92 : Math.pow((n + .055) / 1.055, 2.4) - } - return .2126 * e[0] + .7152 * e[1] + .0722 * e[2] - }, - contrast: function(t) { - var e = this.luminosity(), - i = t.luminosity(); - return e > i ? (e + .05) / (i + .05) : (i + .05) / (e + .05) - }, - level: function(t) { var e = this.contrast(t); return e >= 7.1 ? "AAA" : e >= 4.5 ? "AA" : "" }, - dark: function() { var t = this.values.rgb; return (299 * t[0] + 587 * t[1] + 114 * t[2]) / 1e3 < 128 }, - light: function() { return !this.dark() }, - negate: function() { for (var t = [], e = 0; e < 3; e++) t[e] = 255 - this.values.rgb[e]; return this.setValues("rgb", t), this }, - lighten: function(t) { var e = this.values.hsl; return e[2] += e[2] * t, this.setValues("hsl", e), this }, - darken: function(t) { var e = this.values.hsl; return e[2] -= e[2] * t, this.setValues("hsl", e), this }, - saturate: function(t) { var e = this.values.hsl; return e[1] += e[1] * t, this.setValues("hsl", e), this }, - desaturate: function(t) { var e = this.values.hsl; return e[1] -= e[1] * t, this.setValues("hsl", e), this }, - whiten: function(t) { var e = this.values.hwb; return e[1] += e[1] * t, this.setValues("hwb", e), this }, - blacken: function(t) { var e = this.values.hwb; return e[2] += e[2] * t, this.setValues("hwb", e), this }, - greyscale: function() { - var t = this.values.rgb, - e = .3 * t[0] + .59 * t[1] + .11 * t[2]; - return this.setValues("rgb", [e, e, e]), this - }, - clearer: function(t) { var e = this.values.alpha; return this.setValues("alpha", e - e * t), this }, - opaquer: function(t) { var e = this.values.alpha; return this.setValues("alpha", e + e * t), this }, - rotate: function(t) { - var e = this.values.hsl, - i = (e[0] + t) % 360; - return e[0] = i < 0 ? 360 + i : i, this.setValues("hsl", e), this - }, - mix: function(t, e) { - var i = t, - n = void 0 === e ? .5 : e, - a = 2 * n - 1, - r = this.alpha() - i.alpha(), - o = ((a * r == -1 ? a : (a + r) / (1 + a * r)) + 1) / 2, - s = 1 - o; - return this.rgb(o * this.red() + s * i.red(), o * this.green() + s * i.green(), o * this.blue() + s * i.blue()).alpha(this.alpha() * n + i.alpha() * (1 - n)) - }, - toJSON: function() { return this.rgb() }, - clone: function() { - var t, e, i = new j, - n = this.values, - a = i.values; - for (var r in n) n.hasOwnProperty(r) && (t = n[r], "[object Array]" === (e = {}.toString.call(t)) ? a[r] = t.slice(0) : "[object Number]" === e ? a[r] = t : console.error("unexpected color value:", t)); - return i - } - }, j.prototype.spaces = { rgb: ["red", "green", "blue"], hsl: ["hue", "saturation", "lightness"], hsv: ["hue", "saturation", "value"], hwb: ["hue", "whiteness", "blackness"], cmyk: ["cyan", "magenta", "yellow", "black"] }, j.prototype.maxes = { rgb: [255, 255, 255], hsl: [360, 100, 100], hsv: [360, 100, 100], hwb: [360, 100, 100], cmyk: [100, 100, 100, 100] }, j.prototype.getValues = function(t) { for (var e = this.values, i = {}, n = 0; n < t.length; n++) i[t.charAt(n)] = e[t][n]; return 1 !== e.alpha && (i.a = e.alpha), i }, j.prototype.setValues = function(t, e) { - var i, n, a = this.values, - r = this.spaces, - o = this.maxes, - s = 1; - if (this.valid = !0, "alpha" === t) s = e; - else if (e.length) a[t] = e.slice(0, t.length), s = e[t.length]; - else if (void 0 !== e[t.charAt(0)]) { - for (i = 0; i < t.length; i++) a[t][i] = e[t.charAt(i)]; - s = e.a - } else if (void 0 !== e[r[t][0]]) { - var l = r[t]; - for (i = 0; i < t.length; i++) a[t][i] = e[l[i]]; - s = e.alpha - } - if (a.alpha = Math.max(0, Math.min(1, void 0 === s ? a.alpha : s)), "alpha" === t) return !1; - for (i = 0; i < t.length; i++) n = Math.max(0, Math.min(o[t][i], a[t][i])), a[t][i] = Math.round(n); - for (var u in r) u !== t && (a[u] = I[t][u](a[t])); - return !0 - }, j.prototype.setSpace = function(t, e) { var i = e[0]; return void 0 === i ? this.getValues(t) : ("number" == typeof i && (i = Array.prototype.slice.call(e)), this.setValues(t, i), this) }, j.prototype.setChannel = function(t, e, i) { var n = this.values[t]; return void 0 === i ? n[e] : i === n[e] ? this : (n[e] = i, this.setValues(t, n), this) }, "undefined" != typeof window && (window.Color = j); - var U, G = j, - q = { - noop: function() {}, - uid: (U = 0, function() { return U++ }), - isNullOrUndef: function(t) { return null == t }, - isArray: function(t) { if (Array.isArray && Array.isArray(t)) return !0; var e = Object.prototype.toString.call(t); return "[object" === e.substr(0, 7) && "Array]" === e.substr(-6) }, - isObject: function(t) { return null !== t && "[object Object]" === Object.prototype.toString.call(t) }, - isFinite: function(t) { return ("number" == typeof t || t instanceof Number) && isFinite(t) }, - valueOrDefault: function(t, e) { return void 0 === t ? e : t }, - valueAtIndexOrDefault: function(t, e, i) { return q.valueOrDefault(q.isArray(t) ? t[e] : t, i) }, - callback: function(t, e, i) { if (t && "function" == typeof t.call) return t.apply(i, e) }, - each: function(t, e, i, n) { - var a, r, o; - if (q.isArray(t)) - if (r = t.length, n) - for (a = r - 1; a >= 0; a--) e.call(i, t[a], a); - else - for (a = 0; a < r; a++) e.call(i, t[a], a); - else if (q.isObject(t)) - for (r = (o = Object.keys(t)).length, a = 0; a < r; a++) e.call(i, t[o[a]], o[a]) - }, - arrayEquals: function(t, e) { - var i, n, a, r; - if (!t || !e || t.length !== e.length) return !1; - for (i = 0, n = t.length; i < n; ++i) - if (a = t[i], r = e[i], a instanceof Array && r instanceof Array) { if (!q.arrayEquals(a, r)) return !1 } else if (a !== r) return !1; - return !0 - }, - clone: function(t) { if (q.isArray(t)) return t.map(q.clone); if (q.isObject(t)) { for (var e = {}, i = Object.keys(t), n = i.length, a = 0; a < n; ++a) e[i[a]] = q.clone(t[i[a]]); return e } return t }, - _merger: function(t, e, i, n) { - var a = e[t], - r = i[t]; - q.isObject(a) && q.isObject(r) ? q.merge(a, r, n) : e[t] = q.clone(r) - }, - _mergerIf: function(t, e, i) { - var n = e[t], - a = i[t]; - q.isObject(n) && q.isObject(a) ? q.mergeIf(n, a) : e.hasOwnProperty(t) || (e[t] = q.clone(a)) - }, - merge: function(t, e, i) { - var n, a, r, o, s, l = q.isArray(e) ? e : [e], - u = l.length; - if (!q.isObject(t)) return t; - for (n = (i = i || {}).merger || q._merger, a = 0; a < u; ++a) - if (e = l[a], q.isObject(e)) - for (s = 0, o = (r = Object.keys(e)).length; s < o; ++s) n(r[s], t, e, i); - return t - }, - mergeIf: function(t, e) { return q.merge(t, e, { merger: q._mergerIf }) }, - extend: function(t) { for (var e = function(e, i) { t[i] = e }, i = 1, n = arguments.length; i < n; ++i) q.each(arguments[i], e); return t }, - inherits: function(t) { - var e = this, - i = t && t.hasOwnProperty("constructor") ? t.constructor : function() { return e.apply(this, arguments) }, - n = function() { this.constructor = i }; - return n.prototype = e.prototype, i.prototype = new n, i.extend = q.inherits, t && q.extend(i.prototype, t), i.__super__ = e.prototype, i - } - }, - Z = q; - q.callCallback = q.callback, q.indexOf = function(t, e, i) { return Array.prototype.indexOf.call(t, e, i) }, q.getValueOrDefault = q.valueOrDefault, q.getValueAtIndexOrDefault = q.valueAtIndexOrDefault; - var $ = { - linear: function(t) { return t }, - easeInQuad: function(t) { return t * t }, - easeOutQuad: function(t) { return -t * (t - 2) }, - easeInOutQuad: function(t) { return (t /= .5) < 1 ? .5 * t * t : -.5 * (--t * (t - 2) - 1) }, - easeInCubic: function(t) { return t * t * t }, - easeOutCubic: function(t) { return (t -= 1) * t * t + 1 }, - easeInOutCubic: function(t) { return (t /= .5) < 1 ? .5 * t * t * t : .5 * ((t -= 2) * t * t + 2) }, - easeInQuart: function(t) { return t * t * t * t }, - easeOutQuart: function(t) { return -((t -= 1) * t * t * t - 1) }, - easeInOutQuart: function(t) { return (t /= .5) < 1 ? .5 * t * t * t * t : -.5 * ((t -= 2) * t * t * t - 2) }, - easeInQuint: function(t) { return t * t * t * t * t }, - easeOutQuint: function(t) { return (t -= 1) * t * t * t * t + 1 }, - easeInOutQuint: function(t) { return (t /= .5) < 1 ? .5 * t * t * t * t * t : .5 * ((t -= 2) * t * t * t * t + 2) }, - easeInSine: function(t) { return 1 - Math.cos(t * (Math.PI / 2)) }, - easeOutSine: function(t) { return Math.sin(t * (Math.PI / 2)) }, - easeInOutSine: function(t) { return -.5 * (Math.cos(Math.PI * t) - 1) }, - easeInExpo: function(t) { return 0 === t ? 0 : Math.pow(2, 10 * (t - 1)) }, - easeOutExpo: function(t) { return 1 === t ? 1 : 1 - Math.pow(2, -10 * t) }, - easeInOutExpo: function(t) { return 0 === t ? 0 : 1 === t ? 1 : (t /= .5) < 1 ? .5 * Math.pow(2, 10 * (t - 1)) : .5 * (2 - Math.pow(2, -10 * --t)) }, - easeInCirc: function(t) { return t >= 1 ? t : -(Math.sqrt(1 - t * t) - 1) }, - easeOutCirc: function(t) { return Math.sqrt(1 - (t -= 1) * t) }, - easeInOutCirc: function(t) { return (t /= .5) < 1 ? -.5 * (Math.sqrt(1 - t * t) - 1) : .5 * (Math.sqrt(1 - (t -= 2) * t) + 1) }, - easeInElastic: function(t) { - var e = 1.70158, - i = 0, - n = 1; - return 0 === t ? 0 : 1 === t ? 1 : (i || (i = .3), n < 1 ? (n = 1, e = i / 4) : e = i / (2 * Math.PI) * Math.asin(1 / n), -n * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - e) * (2 * Math.PI) / i)) - }, - easeOutElastic: function(t) { - var e = 1.70158, - i = 0, - n = 1; - return 0 === t ? 0 : 1 === t ? 1 : (i || (i = .3), n < 1 ? (n = 1, e = i / 4) : e = i / (2 * Math.PI) * Math.asin(1 / n), n * Math.pow(2, -10 * t) * Math.sin((t - e) * (2 * Math.PI) / i) + 1) - }, - easeInOutElastic: function(t) { - var e = 1.70158, - i = 0, - n = 1; - return 0 === t ? 0 : 2 == (t /= .5) ? 1 : (i || (i = .45), n < 1 ? (n = 1, e = i / 4) : e = i / (2 * Math.PI) * Math.asin(1 / n), t < 1 ? n * Math.pow(2, 10 * (t -= 1)) * Math.sin((t - e) * (2 * Math.PI) / i) * -.5 : n * Math.pow(2, -10 * (t -= 1)) * Math.sin((t - e) * (2 * Math.PI) / i) * .5 + 1) - }, - easeInBack: function(t) { var e = 1.70158; return t * t * ((e + 1) * t - e) }, - easeOutBack: function(t) { var e = 1.70158; return (t -= 1) * t * ((e + 1) * t + e) + 1 }, - easeInOutBack: function(t) { var e = 1.70158; return (t /= .5) < 1 ? t * t * ((1 + (e *= 1.525)) * t - e) * .5 : .5 * ((t -= 2) * t * ((1 + (e *= 1.525)) * t + e) + 2) }, - easeInBounce: function(t) { return 1 - $.easeOutBounce(1 - t) }, - easeOutBounce: function(t) { return t < 1 / 2.75 ? 7.5625 * t * t : t < 2 / 2.75 ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : t < 2.5 / 2.75 ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375 }, - easeInOutBounce: function(t) { return t < .5 ? .5 * $.easeInBounce(2 * t) : .5 * $.easeOutBounce(2 * t - 1) + .5 } - }, - X = { effects: $ }; - Z.easingEffects = $; - var K = Math.PI, - J = K / 180, - Q = 2 * K, - tt = K / 2, - et = K / 4, - it = 2 * K / 3, - nt = { - clear: function(t) { t.ctx.clearRect(0, 0, t.width, t.height) }, - roundedRect: function(t, e, i, n, a, r) { - if (r) { - var o = Math.min(r, a / 2, n / 2), - s = e + o, - l = i + o, - u = e + n - o, - d = i + a - o; - t.moveTo(e, l), s < u && l < d ? (t.arc(s, l, o, -K, -tt), t.arc(u, l, o, -tt, 0), t.arc(u, d, o, 0, tt), t.arc(s, d, o, tt, K)) : s < u ? (t.moveTo(s, i), t.arc(u, l, o, -tt, tt), t.arc(s, l, o, tt, K + tt)) : l < d ? (t.arc(s, l, o, -K, 0), t.arc(s, d, o, 0, K)) : t.arc(s, l, o, -K, K), t.closePath(), t.moveTo(e, i) - } else t.rect(e, i, n, a) - }, - drawPoint: function(t, e, i, n, a, r) { - var o, s, l, u, d, h = (r || 0) * J; - if (!e || "object" != typeof e || "[object HTMLImageElement]" !== (o = e.toString()) && "[object HTMLCanvasElement]" !== o) { - if (!(isNaN(i) || i <= 0)) { - switch (t.beginPath(), e) { - default: t.arc(n, a, i, 0, Q), - t.closePath(); - break; - case "triangle": - t.moveTo(n + Math.sin(h) * i, a - Math.cos(h) * i), - h += it, - t.lineTo(n + Math.sin(h) * i, a - Math.cos(h) * i), - h += it, - t.lineTo(n + Math.sin(h) * i, a - Math.cos(h) * i), - t.closePath(); - break; - case "rectRounded": - u = i - (d = .516 * i), - s = Math.cos(h + et) * u, - l = Math.sin(h + et) * u, - t.arc(n - s, a - l, d, h - K, h - tt), - t.arc(n + l, a - s, d, h - tt, h), - t.arc(n + s, a + l, d, h, h + tt), - t.arc(n - l, a + s, d, h + tt, h + K), - t.closePath(); - break; - case "rect": - if (!r) { u = Math.SQRT1_2 * i, t.rect(n - u, a - u, 2 * u, 2 * u); break }h += et; - case "rectRot": - s = Math.cos(h) * i, - l = Math.sin(h) * i, - t.moveTo(n - s, a - l), - t.lineTo(n + l, a - s), - t.lineTo(n + s, a + l), - t.lineTo(n - l, a + s), - t.closePath(); - break; - case "crossRot": - h += et; - case "cross": - s = Math.cos(h) * i, - l = Math.sin(h) * i, - t.moveTo(n - s, a - l), - t.lineTo(n + s, a + l), - t.moveTo(n + l, a - s), - t.lineTo(n - l, a + s); - break; - case "star": - s = Math.cos(h) * i, - l = Math.sin(h) * i, - t.moveTo(n - s, a - l), - t.lineTo(n + s, a + l), - t.moveTo(n + l, a - s), - t.lineTo(n - l, a + s), - h += et, - s = Math.cos(h) * i, - l = Math.sin(h) * i, - t.moveTo(n - s, a - l), - t.lineTo(n + s, a + l), - t.moveTo(n + l, a - s), - t.lineTo(n - l, a + s); - break; - case "line": - s = Math.cos(h) * i, - l = Math.sin(h) * i, - t.moveTo(n - s, a - l), - t.lineTo(n + s, a + l); - break; - case "dash": - t.moveTo(n, a), - t.lineTo(n + Math.cos(h) * i, a + Math.sin(h) * i) - } - t.fill(), t.stroke() - } - } else t.drawImage(e, n - e.width / 2, a - e.height / 2, e.width, e.height) - }, - _isPointInArea: function(t, e) { return t.x > e.left - 1e-6 && t.x < e.right + 1e-6 && t.y > e.top - 1e-6 && t.y < e.bottom + 1e-6 }, - clipArea: function(t, e) { t.save(), t.beginPath(), t.rect(e.left, e.top, e.right - e.left, e.bottom - e.top), t.clip() }, - unclipArea: function(t) { t.restore() }, - lineTo: function(t, e, i, n) { - var a = i.steppedLine; - if (a) { - if ("middle" === a) { - var r = (e.x + i.x) / 2; - t.lineTo(r, n ? i.y : e.y), t.lineTo(r, n ? e.y : i.y) - } else "after" === a && !n || "after" !== a && n ? t.lineTo(e.x, i.y) : t.lineTo(i.x, e.y); - t.lineTo(i.x, i.y) - } else i.tension ? t.bezierCurveTo(n ? e.controlPointPreviousX : e.controlPointNextX, n ? e.controlPointPreviousY : e.controlPointNextY, n ? i.controlPointNextX : i.controlPointPreviousX, n ? i.controlPointNextY : i.controlPointPreviousY, i.x, i.y) : t.lineTo(i.x, i.y) - } - }, - at = nt; - Z.clear = nt.clear, Z.drawRoundedRectangle = function(t) { t.beginPath(), nt.roundedRect.apply(nt, arguments) }; - var rt = { _set: function(t, e) { return Z.merge(this[t] || (this[t] = {}), e) } }; - rt._set("global", { defaultColor: "rgba(0,0,0,0.1)", defaultFontColor: "#666", defaultFontFamily: "'Helvetica Neue', 'Helvetica', 'Arial', sans-serif", defaultFontSize: 12, defaultFontStyle: "normal", defaultLineHeight: 1.2, showLines: !0 }); - var ot = rt, - st = Z.valueOrDefault; - var lt = { - toLineHeight: function(t, e) { - var i = ("" + t).match(/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/); - if (!i || "normal" === i[1]) return 1.2 * e; - switch (t = +i[2], i[3]) { - case "px": - return t; - case "%": - t /= 100 - } - return e * t - }, - toPadding: function(t) { var e, i, n, a; return Z.isObject(t) ? (e = +t.top || 0, i = +t.right || 0, n = +t.bottom || 0, a = +t.left || 0) : e = i = n = a = +t || 0, { top: e, right: i, bottom: n, left: a, height: e + n, width: a + i } }, - _parseFont: function(t) { - var e = ot.global, - i = st(t.fontSize, e.defaultFontSize), - n = { family: st(t.fontFamily, e.defaultFontFamily), lineHeight: Z.options.toLineHeight(st(t.lineHeight, e.defaultLineHeight), i), size: i, style: st(t.fontStyle, e.defaultFontStyle), weight: null, string: "" }; - return n.string = function(t) { return !t || Z.isNullOrUndef(t.size) || Z.isNullOrUndef(t.family) ? null : (t.style ? t.style + " " : "") + (t.weight ? t.weight + " " : "") + t.size + "px " + t.family }(n), n - }, - resolve: function(t, e, i) { - var n, a, r; - for (n = 0, a = t.length; n < a; ++n) - if (void 0 !== (r = t[n]) && (void 0 !== e && "function" == typeof r && (r = r(e)), void 0 !== i && Z.isArray(r) && (r = r[i]), void 0 !== r)) return r - } - }, - ut = Z, - dt = X, - ht = at, - ct = lt; - ut.easing = dt, ut.canvas = ht, ut.options = ct; - var ft = function(t) { ut.extend(this, t), this.initialize.apply(this, arguments) }; - ut.extend(ft.prototype, { - initialize: function() { this.hidden = !1 }, - pivot: function() { var t = this; return t._view || (t._view = ut.clone(t._model)), t._start = {}, t }, - transition: function(t) { - var e = this, - i = e._model, - n = e._start, - a = e._view; - return i && 1 !== t ? (a || (a = e._view = {}), n || (n = e._start = {}), function(t, e, i, n) { - var a, r, o, s, l, u, d, h, c, f = Object.keys(i); - for (a = 0, r = f.length; a < r; ++a) - if (u = i[o = f[a]], e.hasOwnProperty(o) || (e[o] = u), (s = e[o]) !== u && "_" !== o[0]) { - if (t.hasOwnProperty(o) || (t[o] = s), (d = typeof u) == typeof(l = t[o])) - if ("string" === d) { if ((h = G(l)).valid && (c = G(u)).valid) { e[o] = c.mix(h, n).rgbString(); continue } } else if (ut.isFinite(l) && ut.isFinite(u)) { e[o] = l + (u - l) * n; continue } - e[o] = u - } - }(n, a, i, t), e) : (e._view = i, e._start = null, e) - }, - tooltipPosition: function() { return { x: this._model.x, y: this._model.y } }, - hasValue: function() { return ut.isNumber(this._model.x) && ut.isNumber(this._model.y) } - }), ft.extend = ut.inherits; - var gt = ft, - mt = gt.extend({ chart: null, currentStep: 0, numSteps: 60, easing: "", render: null, onAnimationProgress: null, onAnimationComplete: null }), - pt = mt; - Object.defineProperty(mt.prototype, "animationObject", { get: function() { return this } }), Object.defineProperty(mt.prototype, "chartInstance", { get: function() { return this.chart }, set: function(t) { this.chart = t } }), ot._set("global", { animation: { duration: 1e3, easing: "easeOutQuart", onProgress: ut.noop, onComplete: ut.noop } }); - var vt = { - animations: [], - request: null, - addAnimation: function(t, e, i, n) { - var a, r, o = this.animations; - for (e.chart = t, e.startTime = Date.now(), e.duration = i, n || (t.animating = !0), a = 0, r = o.length; a < r; ++a) - if (o[a].chart === t) return void(o[a] = e); - o.push(e), 1 === o.length && this.requestAnimationFrame() - }, - cancelAnimation: function(t) { var e = ut.findIndex(this.animations, function(e) { return e.chart === t }); - 1 !== e && (this.animations.splice(e, 1), t.animating = !1) }, - requestAnimationFrame: function() { - var t = this; - null === t.request && (t.request = ut.requestAnimFrame.call(window, function() { t.request = null, t.startDigest() })) - }, - startDigest: function() { this.advance(), this.animations.length > 0 && this.requestAnimationFrame() }, - advance: function() { for (var t, e, i, n, a = this.animations, r = 0; r < a.length;) e = (t = a[r]).chart, i = t.numSteps, n = Math.floor((Date.now() - t.startTime) / t.duration * i) + 1, t.currentStep = Math.min(n, i), ut.callback(t.render, [e, t], e), ut.callback(t.onAnimationProgress, [t], e), t.currentStep >= i ? (ut.callback(t.onAnimationComplete, [t], e), e.animating = !1, a.splice(r, 1)) : ++r } - }, - yt = ut.options.resolve, - bt = ["push", "pop", "shift", "splice", "unshift"]; - - function xt(t, e) { - var i = t._chartjs; - if (i) { - var n = i.listeners, - a = n.indexOf(e); - 1 !== a && n.splice(a, 1), n.length > 0 || (bt.forEach(function(e) { delete t[e] }), delete t._chartjs) - } - } - var _t = function(t, e) { this.initialize(t, e) }; - ut.extend(_t.prototype, { - datasetElementType: null, - dataElementType: null, - initialize: function(t, e) { this.chart = t, this.index = e, this.linkScales(), this.addElements() }, - updateIndex: function(t) { this.index = t }, - linkScales: function() { - var t = this, - e = t.getMeta(), - i = t.getDataset(); - null !== e.xAxisID && e.xAxisID in t.chart.scales || (e.xAxisID = i.xAxisID || t.chart.options.scales.xAxes[0].id), null !== e.yAxisID && e.yAxisID in t.chart.scales || (e.yAxisID = i.yAxisID || t.chart.options.scales.yAxes[0].id) - }, - getDataset: function() { return this.chart.data.datasets[this.index] }, - getMeta: function() { return this.chart.getDatasetMeta(this.index) }, - getScaleForId: function(t) { return this.chart.scales[t] }, - _getValueScaleId: function() { return this.getMeta().yAxisID }, - _getIndexScaleId: function() { return this.getMeta().xAxisID }, - _getValueScale: function() { return this.getScaleForId(this._getValueScaleId()) }, - _getIndexScale: function() { return this.getScaleForId(this._getIndexScaleId()) }, - reset: function() { this.update(!0) }, - destroy: function() { this._data && xt(this._data, this) }, - createMetaDataset: function() { var t = this.datasetElementType; return t && new t({ _chart: this.chart, _datasetIndex: this.index }) }, - createMetaData: function(t) { var e = this.dataElementType; return e && new e({ _chart: this.chart, _datasetIndex: this.index, _index: t }) }, - addElements: function() { - var t, e, i = this.getMeta(), - n = this.getDataset().data || [], - a = i.data; - for (t = 0, e = n.length; t < e; ++t) a[t] = a[t] || this.createMetaData(t); - i.dataset = i.dataset || this.createMetaDataset() - }, - addElementAndReset: function(t) { - var e = this.createMetaData(t); - this.getMeta().data.splice(t, 0, e), this.updateElement(e, t, !0) - }, - buildOrUpdateElements: function() { - var t, e, i = this, - n = i.getDataset(), - a = n.data || (n.data = []); - i._data !== a && (i._data && xt(i._data, i), a && Object.isExtensible(a) && (e = i, (t = a)._chartjs ? t._chartjs.listeners.push(e) : (Object.defineProperty(t, "_chartjs", { configurable: !0, enumerable: !1, value: { listeners: [e] } }), bt.forEach(function(e) { - var i = "onData" + e.charAt(0).toUpperCase() + e.slice(1), - n = t[e]; - Object.defineProperty(t, e, { - configurable: !0, - enumerable: !1, - value: function() { - var e = Array.prototype.slice.call(arguments), - a = n.apply(this, e); - return ut.each(t._chartjs.listeners, function(t) { "function" == typeof t[i] && t[i].apply(t, e) }), a - } - }) - }))), i._data = a), i.resyncElements() - }, - update: ut.noop, - transition: function(t) { - for (var e = this.getMeta(), i = e.data || [], n = i.length, a = 0; a < n; ++a) i[a].transition(t); - e.dataset && e.dataset.transition(t) - }, - draw: function() { - var t = this.getMeta(), - e = t.data || [], - i = e.length, - n = 0; - for (t.dataset && t.dataset.draw(); n < i; ++n) e[n].draw() - }, - removeHoverStyle: function(t) { ut.merge(t._model, t.$previousStyle || {}), delete t.$previousStyle }, - setHoverStyle: function(t) { - var e = this.chart.data.datasets[t._datasetIndex], - i = t._index, - n = t.custom || {}, - a = t._model, - r = ut.getHoverColor; - t.$previousStyle = { backgroundColor: a.backgroundColor, borderColor: a.borderColor, borderWidth: a.borderWidth }, a.backgroundColor = yt([n.hoverBackgroundColor, e.hoverBackgroundColor, r(a.backgroundColor)], void 0, i), a.borderColor = yt([n.hoverBorderColor, e.hoverBorderColor, r(a.borderColor)], void 0, i), a.borderWidth = yt([n.hoverBorderWidth, e.hoverBorderWidth, a.borderWidth], void 0, i) - }, - resyncElements: function() { - var t = this.getMeta(), - e = this.getDataset().data, - i = t.data.length, - n = e.length; - n < i ? t.data.splice(n, i - n) : n > i && this.insertElements(i, n - i) - }, - insertElements: function(t, e) { for (var i = 0; i < e; ++i) this.addElementAndReset(t + i) }, - onDataPush: function() { - var t = arguments.length; - this.insertElements(this.getDataset().data.length - t, t) - }, - onDataPop: function() { this.getMeta().data.pop() }, - onDataShift: function() { this.getMeta().data.shift() }, - onDataSplice: function(t, e) { this.getMeta().data.splice(t, e), this.insertElements(t, arguments.length - 2) }, - onDataUnshift: function() { this.insertElements(0, arguments.length) } - }), _t.extend = ut.inherits; - var kt = _t; - ot._set("global", { elements: { arc: { backgroundColor: ot.global.defaultColor, borderColor: "#fff", borderWidth: 2, borderAlign: "center" } } }); - var wt = gt.extend({ - inLabelRange: function(t) { var e = this._view; return !!e && Math.pow(t - e.x, 2) < Math.pow(e.radius + e.hoverRadius, 2) }, - inRange: function(t, e) { - var i = this._view; - if (i) { - for (var n = ut.getAngleFromPoint(i, { x: t, y: e }), a = n.angle, r = n.distance, o = i.startAngle, s = i.endAngle; s < o;) s += 2 * Math.PI; - for (; a > s;) a -= 2 * Math.PI; - for (; a < o;) a += 2 * Math.PI; - var l = a >= o && a <= s, - u = r >= i.innerRadius && r <= i.outerRadius; - return l && u - } - return !1 - }, - getCenterPoint: function() { - var t = this._view, - e = (t.startAngle + t.endAngle) / 2, - i = (t.innerRadius + t.outerRadius) / 2; - return { x: t.x + Math.cos(e) * i, y: t.y + Math.sin(e) * i } - }, - getArea: function() { var t = this._view; return Math.PI * ((t.endAngle - t.startAngle) / (2 * Math.PI)) * (Math.pow(t.outerRadius, 2) - Math.pow(t.innerRadius, 2)) }, - tooltipPosition: function() { - var t = this._view, - e = t.startAngle + (t.endAngle - t.startAngle) / 2, - i = (t.outerRadius - t.innerRadius) / 2 + t.innerRadius; - return { x: t.x + Math.cos(e) * i, y: t.y + Math.sin(e) * i } - }, - draw: function() { - var t, e = this._chart.ctx, - i = this._view, - n = i.startAngle, - a = i.endAngle, - r = "inner" === i.borderAlign ? .33 : 0; - e.save(), e.beginPath(), e.arc(i.x, i.y, Math.max(i.outerRadius - r, 0), n, a), e.arc(i.x, i.y, i.innerRadius, a, n, !0), e.closePath(), e.fillStyle = i.backgroundColor, e.fill(), i.borderWidth && ("inner" === i.borderAlign ? (e.beginPath(), t = r / i.outerRadius, e.arc(i.x, i.y, i.outerRadius, n - t, a + t), i.innerRadius > r ? (t = r / i.innerRadius, e.arc(i.x, i.y, i.innerRadius - r, a + t, n - t, !0)) : e.arc(i.x, i.y, r, a + Math.PI / 2, n - Math.PI / 2), e.closePath(), e.clip(), e.beginPath(), e.arc(i.x, i.y, i.outerRadius, n, a), e.arc(i.x, i.y, i.innerRadius, a, n, !0), e.closePath(), e.lineWidth = 2 * i.borderWidth, e.lineJoin = "round") : (e.lineWidth = i.borderWidth, e.lineJoin = "bevel"), e.strokeStyle = i.borderColor, e.stroke()), e.restore() - } - }), - Mt = ut.valueOrDefault, - St = ot.global.defaultColor; - ot._set("global", { elements: { line: { tension: .4, backgroundColor: St, borderWidth: 3, borderColor: St, borderCapStyle: "butt", borderDash: [], borderDashOffset: 0, borderJoinStyle: "miter", capBezierPoints: !0, fill: !0 } } }); - var Dt = gt.extend({ - draw: function() { - var t, e, i, n, a = this._view, - r = this._chart.ctx, - o = a.spanGaps, - s = this._children.slice(), - l = ot.global, - u = l.elements.line, - d = -1; - for (this._loop && s.length && s.push(s[0]), r.save(), r.lineCap = a.borderCapStyle || u.borderCapStyle, r.setLineDash && r.setLineDash(a.borderDash || u.borderDash), r.lineDashOffset = Mt(a.borderDashOffset, u.borderDashOffset), r.lineJoin = a.borderJoinStyle || u.borderJoinStyle, r.lineWidth = Mt(a.borderWidth, u.borderWidth), r.strokeStyle = a.borderColor || l.defaultColor, r.beginPath(), d = -1, t = 0; t < s.length; ++t) e = s[t], i = ut.previousItem(s, t), n = e._view, 0 === t ? n.skip || (r.moveTo(n.x, n.y), d = t) : (i = -1 === d ? i : s[d], n.skip || (d !== t - 1 && !o || -1 === d ? r.moveTo(n.x, n.y) : ut.canvas.lineTo(r, i._view, e._view), d = t)); - r.stroke(), r.restore() - } - }), - Ct = ut.valueOrDefault, - Pt = ot.global.defaultColor; - - function Tt(t) { var e = this._view; return !!e && Math.abs(t - e.x) < e.radius + e.hitRadius } - ot._set("global", { elements: { point: { radius: 3, pointStyle: "circle", backgroundColor: Pt, borderColor: Pt, borderWidth: 1, hitRadius: 1, hoverRadius: 4, hoverBorderWidth: 1 } } }); - var Ot = gt.extend({ - inRange: function(t, e) { var i = this._view; return !!i && Math.pow(t - i.x, 2) + Math.pow(e - i.y, 2) < Math.pow(i.hitRadius + i.radius, 2) }, - inLabelRange: Tt, - inXRange: Tt, - inYRange: function(t) { var e = this._view; return !!e && Math.abs(t - e.y) < e.radius + e.hitRadius }, - getCenterPoint: function() { var t = this._view; return { x: t.x, y: t.y } }, - getArea: function() { return Math.PI * Math.pow(this._view.radius, 2) }, - tooltipPosition: function() { var t = this._view; return { x: t.x, y: t.y, padding: t.radius + t.borderWidth } }, - draw: function(t) { - var e = this._view, - i = this._chart.ctx, - n = e.pointStyle, - a = e.rotation, - r = e.radius, - o = e.x, - s = e.y, - l = ot.global, - u = l.defaultColor; - e.skip || (void 0 === t || ut.canvas._isPointInArea(e, t)) && (i.strokeStyle = e.borderColor || u, i.lineWidth = Ct(e.borderWidth, l.elements.point.borderWidth), i.fillStyle = e.backgroundColor || u, ut.canvas.drawPoint(i, n, r, o, s, a)) - } - }), - It = ot.global.defaultColor; - - function At(t) { return t && void 0 !== t.width } - - function Ft(t) { var e, i, n, a, r; return At(t) ? (r = t.width / 2, e = t.x - r, i = t.x + r, n = Math.min(t.y, t.base), a = Math.max(t.y, t.base)) : (r = t.height / 2, e = Math.min(t.x, t.base), i = Math.max(t.x, t.base), n = t.y - r, a = t.y + r), { left: e, top: n, right: i, bottom: a } } - - function Rt(t, e, i) { return t === e ? i : t === i ? e : t } - - function Lt(t, e, i) { - var n, a, r, o, s = t.borderWidth, - l = function(t) { - var e = t.borderSkipped, - i = {}; - return e ? (t.horizontal ? t.base > t.x && (e = Rt(e, "left", "right")) : t.base < t.y && (e = Rt(e, "bottom", "top")), i[e] = !0, i) : i - }(t); - return ut.isObject(s) ? (n = +s.top || 0, a = +s.right || 0, r = +s.bottom || 0, o = +s.left || 0) : n = a = r = o = +s || 0, { t: l.top || n < 0 ? 0 : n > i ? i : n, r: l.right || a < 0 ? 0 : a > e ? e : a, b: l.bottom || r < 0 ? 0 : r > i ? i : r, l: l.left || o < 0 ? 0 : o > e ? e : o } - } - - function Wt(t, e, i) { - var n = null === e, - a = null === i, - r = !(!t || n && a) && Ft(t); - return r && (n || e >= r.left && e <= r.right) && (a || i >= r.top && i <= r.bottom) - } - ot._set("global", { elements: { rectangle: { backgroundColor: It, borderColor: It, borderSkipped: "bottom", borderWidth: 0 } } }); - var Yt = gt.extend({ - draw: function() { - var t = this._chart.ctx, - e = this._view, - i = function(t) { - var e = Ft(t), - i = e.right - e.left, - n = e.bottom - e.top, - a = Lt(t, i / 2, n / 2); - return { outer: { x: e.left, y: e.top, w: i, h: n }, inner: { x: e.left + a.l, y: e.top + a.t, w: i - a.l - a.r, h: n - a.t - a.b } } - }(e), - n = i.outer, - a = i.inner; - t.fillStyle = e.backgroundColor, t.fillRect(n.x, n.y, n.w, n.h), n.w === a.w && n.h === a.h || (t.save(), t.beginPath(), t.rect(n.x, n.y, n.w, n.h), t.clip(), t.fillStyle = e.borderColor, t.rect(a.x, a.y, a.w, a.h), t.fill("evenodd"), t.restore()) - }, - height: function() { var t = this._view; return t.base - t.y }, - inRange: function(t, e) { return Wt(this._view, t, e) }, - inLabelRange: function(t, e) { var i = this._view; return At(i) ? Wt(i, t, null) : Wt(i, null, e) }, - inXRange: function(t) { return Wt(this._view, t, null) }, - inYRange: function(t) { return Wt(this._view, null, t) }, - getCenterPoint: function() { var t, e, i = this._view; return At(i) ? (t = i.x, e = (i.y + i.base) / 2) : (t = (i.x + i.base) / 2, e = i.y), { x: t, y: e } }, - getArea: function() { var t = this._view; return At(t) ? t.width * Math.abs(t.y - t.base) : t.height * Math.abs(t.x - t.base) }, - tooltipPosition: function() { var t = this._view; return { x: t.x, y: t.y } } - }), - Nt = {}, - zt = wt, - Vt = Dt, - Ht = Ot, - Et = Yt; - Nt.Arc = zt, Nt.Line = Vt, Nt.Point = Ht, Nt.Rectangle = Et; - var Bt = ut.options.resolve; - ot._set("bar", { hover: { mode: "label" }, scales: { xAxes: [{ type: "category", categoryPercentage: .8, barPercentage: .9, offset: !0, gridLines: { offsetGridLines: !0 } }], yAxes: [{ type: "linear" }] } }); - var jt = kt.extend({ - dataElementType: Nt.Rectangle, - initialize: function() { - var t; - kt.prototype.initialize.apply(this, arguments), (t = this.getMeta()).stack = this.getDataset().stack, t.bar = !0 - }, - update: function(t) { var e, i, n = this.getMeta().data; for (this._ruler = this.getRuler(), e = 0, i = n.length; e < i; ++e) this.updateElement(n[e], e, t) }, - updateElement: function(t, e, i) { - var n = this, - a = n.getMeta(), - r = n.getDataset(), - o = n._resolveElementOptions(t, e); - t._xScale = n.getScaleForId(a.xAxisID), t._yScale = n.getScaleForId(a.yAxisID), t._datasetIndex = n.index, t._index = e, t._model = { backgroundColor: o.backgroundColor, borderColor: o.borderColor, borderSkipped: o.borderSkipped, borderWidth: o.borderWidth, datasetLabel: r.label, label: n.chart.data.labels[e] }, n._updateElementGeometry(t, e, i), t.pivot() - }, - _updateElementGeometry: function(t, e, i) { - var n = this, - a = t._model, - r = n._getValueScale(), - o = r.getBasePixel(), - s = r.isHorizontal(), - l = n._ruler || n.getRuler(), - u = n.calculateBarValuePixels(n.index, e), - d = n.calculateBarIndexPixels(n.index, e, l); - a.horizontal = s, a.base = i ? o : u.base, a.x = s ? i ? o : u.head : d.center, a.y = s ? d.center : i ? o : u.head, a.height = s ? d.size : void 0, a.width = s ? void 0 : d.size - }, - _getStacks: function(t) { - var e, i, n = this.chart, - a = this._getIndexScale().options.stacked, - r = void 0 === t ? n.data.datasets.length : t + 1, - o = []; - for (e = 0; e < r; ++e)(i = n.getDatasetMeta(e)).bar && n.isDatasetVisible(e) && (!1 === a || !0 === a && -1 === o.indexOf(i.stack) || void 0 === a && (void 0 === i.stack || -1 === o.indexOf(i.stack))) && o.push(i.stack); - return o - }, - getStackCount: function() { return this._getStacks().length }, - getStackIndex: function(t, e) { - var i = this._getStacks(t), - n = void 0 !== e ? i.indexOf(e) : -1; - return -1 === n ? i.length - 1 : n - }, - getRuler: function() { - var t, e, i = this._getIndexScale(), - n = this.getStackCount(), - a = this.index, - r = i.isHorizontal(), - o = r ? i.left : i.top, - s = o + (r ? i.width : i.height), - l = []; - for (t = 0, e = this.getMeta().data.length; t < e; ++t) l.push(i.getPixelForValue(null, t, a)); - return { - min: ut.isNullOrUndef(i.options.barThickness) ? function(t, e) { - var i, n, a, r, o = t.isHorizontal() ? t.width : t.height, - s = t.getTicks(); - for (a = 1, r = e.length; a < r; ++a) o = Math.min(o, Math.abs(e[a] - e[a - 1])); - for (a = 0, r = s.length; a < r; ++a) n = t.getPixelForTick(a), o = a > 0 ? Math.min(o, n - i) : o, i = n; - return o - }(i, l) : -1, - pixels: l, - start: o, - end: s, - stackCount: n, - scale: i - } - }, - calculateBarValuePixels: function(t, e) { - var i, n, a, r, o, s, l = this.chart, - u = this.getMeta(), - d = this._getValueScale(), - h = d.isHorizontal(), - c = l.data.datasets, - f = +d.getRightValue(c[t].data[e]), - g = d.options.minBarLength, - m = d.options.stacked, - p = u.stack, - v = 0; - if (m || void 0 === m && void 0 !== p) - for (i = 0; i < t; ++i)(n = l.getDatasetMeta(i)).bar && n.stack === p && n.controller._getValueScaleId() === d.id && l.isDatasetVisible(i) && (a = +d.getRightValue(c[i].data[e]), (f < 0 && a < 0 || f >= 0 && a > 0) && (v += a)); - return r = d.getPixelForValue(v), s = (o = d.getPixelForValue(v + f)) - r, void 0 !== g && Math.abs(s) < g && (s = g, o = f >= 0 && !h || f < 0 && h ? r - g : r + g), { size: s, base: r, head: o, center: o + s / 2 } - }, - calculateBarIndexPixels: function(t, e, i) { - var n = i.scale.options, - a = "flex" === n.barThickness ? function(t, e, i) { - var n, a = e.pixels, - r = a[t], - o = t > 0 ? a[t - 1] : null, - s = t < a.length - 1 ? a[t + 1] : null, - l = i.categoryPercentage; - return null === o && (o = r - (null === s ? e.end - e.start : s - r)), null === s && (s = r + r - o), n = r - (r - Math.min(o, s)) / 2 * l, { chunk: Math.abs(s - o) / 2 * l / e.stackCount, ratio: i.barPercentage, start: n } - }(e, i, n) : function(t, e, i) { - var n, a, r = i.barThickness, - o = e.stackCount, - s = e.pixels[t]; - return ut.isNullOrUndef(r) ? (n = e.min * i.categoryPercentage, a = i.barPercentage) : (n = r * o, a = 1), { chunk: n / o, ratio: a, start: s - n / 2 } - }(e, i, n), - r = this.getStackIndex(t, this.getMeta().stack), - o = a.start + a.chunk * r + a.chunk / 2, - s = Math.min(ut.valueOrDefault(n.maxBarThickness, 1 / 0), a.chunk * a.ratio); - return { base: o - s / 2, head: o + s / 2, center: o, size: s } - }, - draw: function() { - var t = this.chart, - e = this._getValueScale(), - i = this.getMeta().data, - n = this.getDataset(), - a = i.length, - r = 0; - for (ut.canvas.clipArea(t.ctx, t.chartArea); r < a; ++r) isNaN(e.getRightValue(n.data[r])) || i[r].draw(); - ut.canvas.unclipArea(t.ctx) - }, - _resolveElementOptions: function(t, e) { - var i, n, a, r = this.chart, - o = r.data.datasets[this.index], - s = t.custom || {}, - l = r.options.elements.rectangle, - u = {}, - d = { chart: r, dataIndex: e, dataset: o, datasetIndex: this.index }, - h = ["backgroundColor", "borderColor", "borderSkipped", "borderWidth"]; - for (i = 0, n = h.length; i < n; ++i) u[a = h[i]] = Bt([s[a], o[a], l[a]], d, e); - return u - } - }), - Ut = ut.valueOrDefault, - Gt = ut.options.resolve; - ot._set("bubble", { - hover: { mode: "single" }, - scales: { xAxes: [{ type: "linear", position: "bottom", id: "x-axis-0" }], yAxes: [{ type: "linear", position: "left", id: "y-axis-0" }] }, - tooltips: { - callbacks: { - title: function() { return "" }, - label: function(t, e) { - var i = e.datasets[t.datasetIndex].label || "", - n = e.datasets[t.datasetIndex].data[t.index]; - return i + ": (" + t.xLabel + ", " + t.yLabel + ", " + n.r + ")" - } - } - } - }); - var qt = kt.extend({ - dataElementType: Nt.Point, - update: function(t) { - var e = this, - i = e.getMeta().data; - ut.each(i, function(i, n) { e.updateElement(i, n, t) }) - }, - updateElement: function(t, e, i) { - var n = this, - a = n.getMeta(), - r = t.custom || {}, - o = n.getScaleForId(a.xAxisID), - s = n.getScaleForId(a.yAxisID), - l = n._resolveElementOptions(t, e), - u = n.getDataset().data[e], - d = n.index, - h = i ? o.getPixelForDecimal(.5) : o.getPixelForValue("object" == typeof u ? u : NaN, e, d), - c = i ? s.getBasePixel() : s.getPixelForValue(u, e, d); - t._xScale = o, t._yScale = s, t._options = l, t._datasetIndex = d, t._index = e, t._model = { backgroundColor: l.backgroundColor, borderColor: l.borderColor, borderWidth: l.borderWidth, hitRadius: l.hitRadius, pointStyle: l.pointStyle, rotation: l.rotation, radius: i ? 0 : l.radius, skip: r.skip || isNaN(h) || isNaN(c), x: h, y: c }, t.pivot() - }, - setHoverStyle: function(t) { - var e = t._model, - i = t._options, - n = ut.getHoverColor; - t.$previousStyle = { backgroundColor: e.backgroundColor, borderColor: e.borderColor, borderWidth: e.borderWidth, radius: e.radius }, e.backgroundColor = Ut(i.hoverBackgroundColor, n(i.backgroundColor)), e.borderColor = Ut(i.hoverBorderColor, n(i.borderColor)), e.borderWidth = Ut(i.hoverBorderWidth, i.borderWidth), e.radius = i.radius + i.hoverRadius - }, - _resolveElementOptions: function(t, e) { - var i, n, a, r = this.chart, - o = r.data.datasets[this.index], - s = t.custom || {}, - l = r.options.elements.point, - u = o.data[e], - d = {}, - h = { chart: r, dataIndex: e, dataset: o, datasetIndex: this.index }, - c = ["backgroundColor", "borderColor", "borderWidth", "hoverBackgroundColor", "hoverBorderColor", "hoverBorderWidth", "hoverRadius", "hitRadius", "pointStyle", "rotation"]; - for (i = 0, n = c.length; i < n; ++i) d[a = c[i]] = Gt([s[a], o[a], l[a]], h, e); - return d.radius = Gt([s.radius, u ? u.r : void 0, o.radius, l.radius], h, e), d - } - }), - Zt = ut.options.resolve, - $t = ut.valueOrDefault; - ot._set("doughnut", { - animation: { animateRotate: !0, animateScale: !1 }, - hover: { mode: "single" }, - legendCallback: function(t) { - var e = []; - e.push('
    '); - var i = t.data, - n = i.datasets, - a = i.labels; - if (n.length) - for (var r = 0; r < n[0].data.length; ++r) e.push('
  • '), a[r] && e.push(a[r]), e.push("
  • "); - return e.push("
"), e.join("") - }, - legend: { - labels: { - generateLabels: function(t) { - var e = t.data; - return e.labels.length && e.datasets.length ? e.labels.map(function(i, n) { - var a = t.getDatasetMeta(0), - r = e.datasets[0], - o = a.data[n], - s = o && o.custom || {}, - l = t.options.elements.arc; - return { text: i, fillStyle: Zt([s.backgroundColor, r.backgroundColor, l.backgroundColor], void 0, n), strokeStyle: Zt([s.borderColor, r.borderColor, l.borderColor], void 0, n), lineWidth: Zt([s.borderWidth, r.borderWidth, l.borderWidth], void 0, n), hidden: isNaN(r.data[n]) || a.data[n].hidden, index: n } - }) : [] - } - }, - onClick: function(t, e) { - var i, n, a, r = e.index, - o = this.chart; - for (i = 0, n = (o.data.datasets || []).length; i < n; ++i)(a = o.getDatasetMeta(i)).data[r] && (a.data[r].hidden = !a.data[r].hidden); - o.update() - } - }, - cutoutPercentage: 50, - rotation: -.5 * Math.PI, - circumference: 2 * Math.PI, - tooltips: { - callbacks: { - title: function() { return "" }, - label: function(t, e) { - var i = e.labels[t.index], - n = ": " + e.datasets[t.datasetIndex].data[t.index]; - return ut.isArray(i) ? (i = i.slice())[0] += n : i += n, i - } - } - } - }); - var Xt = kt.extend({ - dataElementType: Nt.Arc, - linkScales: ut.noop, - getRingIndex: function(t) { for (var e = 0, i = 0; i < t; ++i) this.chart.isDatasetVisible(i) && ++e; return e }, - update: function(t) { - var e, i, n = this, - a = n.chart, - r = a.chartArea, - o = a.options, - s = r.right - r.left, - l = r.bottom - r.top, - u = Math.min(s, l), - d = { x: 0, y: 0 }, - h = n.getMeta(), - c = h.data, - f = o.cutoutPercentage, - g = o.circumference, - m = n._getRingWeight(n.index); - if (g < 2 * Math.PI) { - var p = o.rotation % (2 * Math.PI), - v = (p += 2 * Math.PI * (p >= Math.PI ? -1 : p < -Math.PI ? 1 : 0)) + g, - y = { x: Math.cos(p), y: Math.sin(p) }, - b = { x: Math.cos(v), y: Math.sin(v) }, - x = p <= 0 && v >= 0 || p <= 2 * Math.PI && 2 * Math.PI <= v, - _ = p <= .5 * Math.PI && .5 * Math.PI <= v || p <= 2.5 * Math.PI && 2.5 * Math.PI <= v, - k = p <= -Math.PI && -Math.PI <= v || p <= Math.PI && Math.PI <= v, - w = p <= .5 * -Math.PI && .5 * -Math.PI <= v || p <= 1.5 * Math.PI && 1.5 * Math.PI <= v, - M = f / 100, - S = { x: k ? -1 : Math.min(y.x * (y.x < 0 ? 1 : M), b.x * (b.x < 0 ? 1 : M)), y: w ? -1 : Math.min(y.y * (y.y < 0 ? 1 : M), b.y * (b.y < 0 ? 1 : M)) }, - D = { x: x ? 1 : Math.max(y.x * (y.x > 0 ? 1 : M), b.x * (b.x > 0 ? 1 : M)), y: _ ? 1 : Math.max(y.y * (y.y > 0 ? 1 : M), b.y * (b.y > 0 ? 1 : M)) }, - C = { width: .5 * (D.x - S.x), height: .5 * (D.y - S.y) }; - u = Math.min(s / C.width, l / C.height), d = { x: -.5 * (D.x + S.x), y: -.5 * (D.y + S.y) } - } - for (e = 0, i = c.length; e < i; ++e) c[e]._options = n._resolveElementOptions(c[e], e); - for (a.borderWidth = n.getMaxBorderWidth(), a.outerRadius = Math.max((u - a.borderWidth) / 2, 0), a.innerRadius = Math.max(f ? a.outerRadius / 100 * f : 0, 0), a.radiusLength = (a.outerRadius - a.innerRadius) / (n._getVisibleDatasetWeightTotal() || 1), a.offsetX = d.x * a.outerRadius, a.offsetY = d.y * a.outerRadius, h.total = n.calculateTotal(), n.outerRadius = a.outerRadius - a.radiusLength * n._getRingWeightOffset(n.index), n.innerRadius = Math.max(n.outerRadius - a.radiusLength * m, 0), e = 0, i = c.length; e < i; ++e) n.updateElement(c[e], e, t) - }, - updateElement: function(t, e, i) { - var n = this, - a = n.chart, - r = a.chartArea, - o = a.options, - s = o.animation, - l = (r.left + r.right) / 2, - u = (r.top + r.bottom) / 2, - d = o.rotation, - h = o.rotation, - c = n.getDataset(), - f = i && s.animateRotate ? 0 : t.hidden ? 0 : n.calculateCircumference(c.data[e]) * (o.circumference / (2 * Math.PI)), - g = i && s.animateScale ? 0 : n.innerRadius, - m = i && s.animateScale ? 0 : n.outerRadius, - p = t._options || {}; - ut.extend(t, { _datasetIndex: n.index, _index: e, _model: { backgroundColor: p.backgroundColor, borderColor: p.borderColor, borderWidth: p.borderWidth, borderAlign: p.borderAlign, x: l + a.offsetX, y: u + a.offsetY, startAngle: d, endAngle: h, circumference: f, outerRadius: m, innerRadius: g, label: ut.valueAtIndexOrDefault(c.label, e, a.data.labels[e]) } }); - var v = t._model; - i && s.animateRotate || (v.startAngle = 0 === e ? o.rotation : n.getMeta().data[e - 1]._model.endAngle, v.endAngle = v.startAngle + v.circumference), t.pivot() - }, - calculateTotal: function() { - var t, e = this.getDataset(), - i = this.getMeta(), - n = 0; - return ut.each(i.data, function(i, a) { t = e.data[a], isNaN(t) || i.hidden || (n += Math.abs(t)) }), n - }, - calculateCircumference: function(t) { var e = this.getMeta().total; return e > 0 && !isNaN(t) ? 2 * Math.PI * (Math.abs(t) / e) : 0 }, - getMaxBorderWidth: function(t) { - var e, i, n, a, r, o, s, l, u = 0, - d = this.chart; - if (!t) - for (e = 0, i = d.data.datasets.length; e < i; ++e) - if (d.isDatasetVisible(e)) { t = (n = d.getDatasetMeta(e)).data, e !== this.index && (r = n.controller); break } - if (!t) return 0; - for (e = 0, i = t.length; e < i; ++e) a = t[e], "inner" !== (o = r ? r._resolveElementOptions(a, e) : a._options).borderAlign && (s = o.borderWidth, u = (l = o.hoverBorderWidth) > (u = s > u ? s : u) ? l : u); - return u - }, - setHoverStyle: function(t) { - var e = t._model, - i = t._options, - n = ut.getHoverColor; - t.$previousStyle = { backgroundColor: e.backgroundColor, borderColor: e.borderColor, borderWidth: e.borderWidth }, e.backgroundColor = $t(i.hoverBackgroundColor, n(i.backgroundColor)), e.borderColor = $t(i.hoverBorderColor, n(i.borderColor)), e.borderWidth = $t(i.hoverBorderWidth, i.borderWidth) - }, - _resolveElementOptions: function(t, e) { - var i, n, a, r = this.chart, - o = this.getDataset(), - s = t.custom || {}, - l = r.options.elements.arc, - u = {}, - d = { chart: r, dataIndex: e, dataset: o, datasetIndex: this.index }, - h = ["backgroundColor", "borderColor", "borderWidth", "borderAlign", "hoverBackgroundColor", "hoverBorderColor", "hoverBorderWidth"]; - for (i = 0, n = h.length; i < n; ++i) u[a = h[i]] = Zt([s[a], o[a], l[a]], d, e); - return u - }, - _getRingWeightOffset: function(t) { for (var e = 0, i = 0; i < t; ++i) this.chart.isDatasetVisible(i) && (e += this._getRingWeight(i)); return e }, - _getRingWeight: function(t) { return Math.max($t(this.chart.data.datasets[t].weight, 1), 0) }, - _getVisibleDatasetWeightTotal: function() { return this._getRingWeightOffset(this.chart.data.datasets.length) } - }); - ot._set("horizontalBar", { hover: { mode: "index", axis: "y" }, scales: { xAxes: [{ type: "linear", position: "bottom" }], yAxes: [{ type: "category", position: "left", categoryPercentage: .8, barPercentage: .9, offset: !0, gridLines: { offsetGridLines: !0 } }] }, elements: { rectangle: { borderSkipped: "left" } }, tooltips: { mode: "index", axis: "y" } }); - var Kt = jt.extend({ _getValueScaleId: function() { return this.getMeta().xAxisID }, _getIndexScaleId: function() { return this.getMeta().yAxisID } }), - Jt = ut.valueOrDefault, - Qt = ut.options.resolve, - te = ut.canvas._isPointInArea; - - function ee(t, e) { return Jt(t.showLine, e.showLines) } - ot._set("line", { showLines: !0, spanGaps: !1, hover: { mode: "label" }, scales: { xAxes: [{ type: "category", id: "x-axis-0" }], yAxes: [{ type: "linear", id: "y-axis-0" }] } }); - var ie = kt.extend({ - datasetElementType: Nt.Line, - dataElementType: Nt.Point, - update: function(t) { - var e, i, n = this, - a = n.getMeta(), - r = a.dataset, - o = a.data || [], - s = n.getScaleForId(a.yAxisID), - l = n.getDataset(), - u = ee(l, n.chart.options); - for (u && (void 0 !== l.tension && void 0 === l.lineTension && (l.lineTension = l.tension), r._scale = s, r._datasetIndex = n.index, r._children = o, r._model = n._resolveLineOptions(r), r.pivot()), e = 0, i = o.length; e < i; ++e) n.updateElement(o[e], e, t); - for (u && 0 !== r._model.tension && n.updateBezierControlPoints(), e = 0, i = o.length; e < i; ++e) o[e].pivot() - }, - updateElement: function(t, e, i) { - var n, a, r = this, - o = r.getMeta(), - s = t.custom || {}, - l = r.getDataset(), - u = r.index, - d = l.data[e], - h = r.getScaleForId(o.yAxisID), - c = r.getScaleForId(o.xAxisID), - f = o.dataset._model, - g = r._resolvePointOptions(t, e); - n = c.getPixelForValue("object" == typeof d ? d : NaN, e, u), a = i ? h.getBasePixel() : r.calculatePointY(d, e, u), t._xScale = c, t._yScale = h, t._options = g, t._datasetIndex = u, t._index = e, t._model = { x: n, y: a, skip: s.skip || isNaN(n) || isNaN(a), radius: g.radius, pointStyle: g.pointStyle, rotation: g.rotation, backgroundColor: g.backgroundColor, borderColor: g.borderColor, borderWidth: g.borderWidth, tension: Jt(s.tension, f ? f.tension : 0), steppedLine: !!f && f.steppedLine, hitRadius: g.hitRadius } - }, - _resolvePointOptions: function(t, e) { - var i, n, a, r = this.chart, - o = r.data.datasets[this.index], - s = t.custom || {}, - l = r.options.elements.point, - u = {}, - d = { chart: r, dataIndex: e, dataset: o, datasetIndex: this.index }, - h = { backgroundColor: "pointBackgroundColor", borderColor: "pointBorderColor", borderWidth: "pointBorderWidth", hitRadius: "pointHitRadius", hoverBackgroundColor: "pointHoverBackgroundColor", hoverBorderColor: "pointHoverBorderColor", hoverBorderWidth: "pointHoverBorderWidth", hoverRadius: "pointHoverRadius", pointStyle: "pointStyle", radius: "pointRadius", rotation: "pointRotation" }, - c = Object.keys(h); - for (i = 0, n = c.length; i < n; ++i) u[a = c[i]] = Qt([s[a], o[h[a]], o[a], l[a]], d, e); - return u - }, - _resolveLineOptions: function(t) { - var e, i, n, a = this.chart, - r = a.data.datasets[this.index], - o = t.custom || {}, - s = a.options, - l = s.elements.line, - u = {}, - d = ["backgroundColor", "borderWidth", "borderColor", "borderCapStyle", "borderDash", "borderDashOffset", "borderJoinStyle", "fill", "cubicInterpolationMode"]; - for (e = 0, i = d.length; e < i; ++e) u[n = d[e]] = Qt([o[n], r[n], l[n]]); - return u.spanGaps = Jt(r.spanGaps, s.spanGaps), u.tension = Jt(r.lineTension, l.tension), u.steppedLine = Qt([o.steppedLine, r.steppedLine, l.stepped]), u - }, - calculatePointY: function(t, e, i) { - var n, a, r, o = this.chart, - s = this.getMeta(), - l = this.getScaleForId(s.yAxisID), - u = 0, - d = 0; - if (l.options.stacked) { - for (n = 0; n < i; n++) - if (a = o.data.datasets[n], "line" === (r = o.getDatasetMeta(n)).type && r.yAxisID === l.id && o.isDatasetVisible(n)) { - var h = Number(l.getRightValue(a.data[e])); - h < 0 ? d += h || 0 : u += h || 0 - } - var c = Number(l.getRightValue(t)); - return c < 0 ? l.getPixelForValue(d + c) : l.getPixelForValue(u + c) - } - return l.getPixelForValue(t) - }, - updateBezierControlPoints: function() { - var t, e, i, n, a = this.chart, - r = this.getMeta(), - o = r.dataset._model, - s = a.chartArea, - l = r.data || []; - - function u(t, e, i) { return Math.max(Math.min(t, i), e) } - if (o.spanGaps && (l = l.filter(function(t) { return !t._model.skip })), "monotone" === o.cubicInterpolationMode) ut.splineCurveMonotone(l); - else - for (t = 0, e = l.length; t < e; ++t) i = l[t]._model, n = ut.splineCurve(ut.previousItem(l, t)._model, i, ut.nextItem(l, t)._model, o.tension), i.controlPointPreviousX = n.previous.x, i.controlPointPreviousY = n.previous.y, i.controlPointNextX = n.next.x, i.controlPointNextY = n.next.y; - if (a.options.elements.line.capBezierPoints) - for (t = 0, e = l.length; t < e; ++t) i = l[t]._model, te(i, s) && (t > 0 && te(l[t - 1]._model, s) && (i.controlPointPreviousX = u(i.controlPointPreviousX, s.left, s.right), i.controlPointPreviousY = u(i.controlPointPreviousY, s.top, s.bottom)), t < l.length - 1 && te(l[t + 1]._model, s) && (i.controlPointNextX = u(i.controlPointNextX, s.left, s.right), i.controlPointNextY = u(i.controlPointNextY, s.top, s.bottom))) - }, - draw: function() { - var t, e = this.chart, - i = this.getMeta(), - n = i.data || [], - a = e.chartArea, - r = n.length, - o = 0; - for (ee(this.getDataset(), e.options) && (t = (i.dataset._model.borderWidth || 0) / 2, ut.canvas.clipArea(e.ctx, { left: a.left, right: a.right, top: a.top - t, bottom: a.bottom + t }), i.dataset.draw(), ut.canvas.unclipArea(e.ctx)); o < r; ++o) n[o].draw(a) - }, - setHoverStyle: function(t) { - var e = t._model, - i = t._options, - n = ut.getHoverColor; - t.$previousStyle = { backgroundColor: e.backgroundColor, borderColor: e.borderColor, borderWidth: e.borderWidth, radius: e.radius }, e.backgroundColor = Jt(i.hoverBackgroundColor, n(i.backgroundColor)), e.borderColor = Jt(i.hoverBorderColor, n(i.borderColor)), e.borderWidth = Jt(i.hoverBorderWidth, i.borderWidth), e.radius = Jt(i.hoverRadius, i.radius) - } - }), - ne = ut.options.resolve; - ot._set("polarArea", { - scale: { type: "radialLinear", angleLines: { display: !1 }, gridLines: { circular: !0 }, pointLabels: { display: !1 }, ticks: { beginAtZero: !0 } }, - animation: { animateRotate: !0, animateScale: !0 }, - startAngle: -.5 * Math.PI, - legendCallback: function(t) { - var e = []; - e.push('
    '); - var i = t.data, - n = i.datasets, - a = i.labels; - if (n.length) - for (var r = 0; r < n[0].data.length; ++r) e.push('
  • '), a[r] && e.push(a[r]), e.push("
  • "); - return e.push("
"), e.join("") - }, - legend: { - labels: { - generateLabels: function(t) { - var e = t.data; - return e.labels.length && e.datasets.length ? e.labels.map(function(i, n) { - var a = t.getDatasetMeta(0), - r = e.datasets[0], - o = a.data[n].custom || {}, - s = t.options.elements.arc; - return { text: i, fillStyle: ne([o.backgroundColor, r.backgroundColor, s.backgroundColor], void 0, n), strokeStyle: ne([o.borderColor, r.borderColor, s.borderColor], void 0, n), lineWidth: ne([o.borderWidth, r.borderWidth, s.borderWidth], void 0, n), hidden: isNaN(r.data[n]) || a.data[n].hidden, index: n } - }) : [] - } - }, - onClick: function(t, e) { - var i, n, a, r = e.index, - o = this.chart; - for (i = 0, n = (o.data.datasets || []).length; i < n; ++i)(a = o.getDatasetMeta(i)).data[r].hidden = !a.data[r].hidden; - o.update() - } - }, - tooltips: { callbacks: { title: function() { return "" }, label: function(t, e) { return e.labels[t.index] + ": " + t.yLabel } } } - }); - var ae = kt.extend({ - dataElementType: Nt.Arc, - linkScales: ut.noop, - update: function(t) { - var e, i, n, a = this, - r = a.getDataset(), - o = a.getMeta(), - s = a.chart.options.startAngle || 0, - l = a._starts = [], - u = a._angles = [], - d = o.data; - for (a._updateRadius(), o.count = a.countVisibleElements(), e = 0, i = r.data.length; e < i; e++) l[e] = s, n = a._computeAngle(e), u[e] = n, s += n; - for (e = 0, i = d.length; e < i; ++e) d[e]._options = a._resolveElementOptions(d[e], e), a.updateElement(d[e], e, t) - }, - _updateRadius: function() { - var t = this, - e = t.chart, - i = e.chartArea, - n = e.options, - a = Math.min(i.right - i.left, i.bottom - i.top); - e.outerRadius = Math.max(a / 2, 0), e.innerRadius = Math.max(n.cutoutPercentage ? e.outerRadius / 100 * n.cutoutPercentage : 1, 0), e.radiusLength = (e.outerRadius - e.innerRadius) / e.getVisibleDatasetCount(), t.outerRadius = e.outerRadius - e.radiusLength * t.index, t.innerRadius = t.outerRadius - e.radiusLength - }, - updateElement: function(t, e, i) { - var n = this, - a = n.chart, - r = n.getDataset(), - o = a.options, - s = o.animation, - l = a.scale, - u = a.data.labels, - d = l.xCenter, - h = l.yCenter, - c = o.startAngle, - f = t.hidden ? 0 : l.getDistanceFromCenterForValue(r.data[e]), - g = n._starts[e], - m = g + (t.hidden ? 0 : n._angles[e]), - p = s.animateScale ? 0 : l.getDistanceFromCenterForValue(r.data[e]), - v = t._options || {}; - ut.extend(t, { _datasetIndex: n.index, _index: e, _scale: l, _model: { backgroundColor: v.backgroundColor, borderColor: v.borderColor, borderWidth: v.borderWidth, borderAlign: v.borderAlign, x: d, y: h, innerRadius: 0, outerRadius: i ? p : f, startAngle: i && s.animateRotate ? c : g, endAngle: i && s.animateRotate ? c : m, label: ut.valueAtIndexOrDefault(u, e, u[e]) } }), t.pivot() - }, - countVisibleElements: function() { - var t = this.getDataset(), - e = this.getMeta(), - i = 0; - return ut.each(e.data, function(e, n) { isNaN(t.data[n]) || e.hidden || i++ }), i - }, - setHoverStyle: function(t) { - var e = t._model, - i = t._options, - n = ut.getHoverColor, - a = ut.valueOrDefault; - t.$previousStyle = { backgroundColor: e.backgroundColor, borderColor: e.borderColor, borderWidth: e.borderWidth }, e.backgroundColor = a(i.hoverBackgroundColor, n(i.backgroundColor)), e.borderColor = a(i.hoverBorderColor, n(i.borderColor)), e.borderWidth = a(i.hoverBorderWidth, i.borderWidth) - }, - _resolveElementOptions: function(t, e) { - var i, n, a, r = this.chart, - o = this.getDataset(), - s = t.custom || {}, - l = r.options.elements.arc, - u = {}, - d = { chart: r, dataIndex: e, dataset: o, datasetIndex: this.index }, - h = ["backgroundColor", "borderColor", "borderWidth", "borderAlign", "hoverBackgroundColor", "hoverBorderColor", "hoverBorderWidth"]; - for (i = 0, n = h.length; i < n; ++i) u[a = h[i]] = ne([s[a], o[a], l[a]], d, e); - return u - }, - _computeAngle: function(t) { - var e = this, - i = this.getMeta().count, - n = e.getDataset(), - a = e.getMeta(); - if (isNaN(n.data[t]) || a.data[t].hidden) return 0; - var r = { chart: e.chart, dataIndex: t, dataset: n, datasetIndex: e.index }; - return ne([e.chart.options.elements.arc.angle, 2 * Math.PI / i], r, t) - } - }); - ot._set("pie", ut.clone(ot.doughnut)), ot._set("pie", { cutoutPercentage: 0 }); - var re = Xt, - oe = ut.valueOrDefault, - se = ut.options.resolve; - ot._set("radar", { scale: { type: "radialLinear" }, elements: { line: { tension: 0 } } }); - var le = kt.extend({ - datasetElementType: Nt.Line, - dataElementType: Nt.Point, - linkScales: ut.noop, - update: function(t) { - var e, i, n = this, - a = n.getMeta(), - r = a.dataset, - o = a.data || [], - s = n.chart.scale, - l = n.getDataset(); - for (void 0 !== l.tension && void 0 === l.lineTension && (l.lineTension = l.tension), r._scale = s, r._datasetIndex = n.index, r._children = o, r._loop = !0, r._model = n._resolveLineOptions(r), r.pivot(), e = 0, i = o.length; e < i; ++e) n.updateElement(o[e], e, t); - for (n.updateBezierControlPoints(), e = 0, i = o.length; e < i; ++e) o[e].pivot() - }, - updateElement: function(t, e, i) { - var n = this, - a = t.custom || {}, - r = n.getDataset(), - o = n.chart.scale, - s = o.getPointPositionForValue(e, r.data[e]), - l = n._resolvePointOptions(t, e), - u = n.getMeta().dataset._model, - d = i ? o.xCenter : s.x, - h = i ? o.yCenter : s.y; - t._scale = o, t._options = l, t._datasetIndex = n.index, t._index = e, t._model = { x: d, y: h, skip: a.skip || isNaN(d) || isNaN(h), radius: l.radius, pointStyle: l.pointStyle, rotation: l.rotation, backgroundColor: l.backgroundColor, borderColor: l.borderColor, borderWidth: l.borderWidth, tension: oe(a.tension, u ? u.tension : 0), hitRadius: l.hitRadius } - }, - _resolvePointOptions: function(t, e) { - var i, n, a, r = this.chart, - o = r.data.datasets[this.index], - s = t.custom || {}, - l = r.options.elements.point, - u = {}, - d = { chart: r, dataIndex: e, dataset: o, datasetIndex: this.index }, - h = { backgroundColor: "pointBackgroundColor", borderColor: "pointBorderColor", borderWidth: "pointBorderWidth", hitRadius: "pointHitRadius", hoverBackgroundColor: "pointHoverBackgroundColor", hoverBorderColor: "pointHoverBorderColor", hoverBorderWidth: "pointHoverBorderWidth", hoverRadius: "pointHoverRadius", pointStyle: "pointStyle", radius: "pointRadius", rotation: "pointRotation" }, - c = Object.keys(h); - for (i = 0, n = c.length; i < n; ++i) u[a = c[i]] = se([s[a], o[h[a]], o[a], l[a]], d, e); - return u - }, - _resolveLineOptions: function(t) { - var e, i, n, a = this.chart, - r = a.data.datasets[this.index], - o = t.custom || {}, - s = a.options.elements.line, - l = {}, - u = ["backgroundColor", "borderWidth", "borderColor", "borderCapStyle", "borderDash", "borderDashOffset", "borderJoinStyle", "fill"]; - for (e = 0, i = u.length; e < i; ++e) l[n = u[e]] = se([o[n], r[n], s[n]]); - return l.tension = oe(r.lineTension, s.tension), l - }, - updateBezierControlPoints: function() { - var t, e, i, n, a = this.getMeta(), - r = this.chart.chartArea, - o = a.data || []; - - function s(t, e, i) { return Math.max(Math.min(t, i), e) } - for (t = 0, e = o.length; t < e; ++t) i = o[t]._model, n = ut.splineCurve(ut.previousItem(o, t, !0)._model, i, ut.nextItem(o, t, !0)._model, i.tension), i.controlPointPreviousX = s(n.previous.x, r.left, r.right), i.controlPointPreviousY = s(n.previous.y, r.top, r.bottom), i.controlPointNextX = s(n.next.x, r.left, r.right), i.controlPointNextY = s(n.next.y, r.top, r.bottom) - }, - setHoverStyle: function(t) { - var e = t._model, - i = t._options, - n = ut.getHoverColor; - t.$previousStyle = { backgroundColor: e.backgroundColor, borderColor: e.borderColor, borderWidth: e.borderWidth, radius: e.radius }, e.backgroundColor = oe(i.hoverBackgroundColor, n(i.backgroundColor)), e.borderColor = oe(i.hoverBorderColor, n(i.borderColor)), e.borderWidth = oe(i.hoverBorderWidth, i.borderWidth), e.radius = oe(i.hoverRadius, i.radius) - } - }); - ot._set("scatter", { hover: { mode: "single" }, scales: { xAxes: [{ id: "x-axis-1", type: "linear", position: "bottom" }], yAxes: [{ id: "y-axis-1", type: "linear", position: "left" }] }, showLines: !1, tooltips: { callbacks: { title: function() { return "" }, label: function(t) { return "(" + t.xLabel + ", " + t.yLabel + ")" } } } }); - var ue = { bar: jt, bubble: qt, doughnut: Xt, horizontalBar: Kt, line: ie, polarArea: ae, pie: re, radar: le, scatter: ie }; - - function de(t, e) { return t.native ? { x: t.x, y: t.y } : ut.getRelativePosition(t, e) } - - function he(t, e) { - var i, n, a, r, o; - for (n = 0, r = t.data.datasets.length; n < r; ++n) - if (t.isDatasetVisible(n)) - for (a = 0, o = (i = t.getDatasetMeta(n)).data.length; a < o; ++a) { - var s = i.data[a]; - s._view.skip || e(s) - } - } - - function ce(t, e) { var i = []; return he(t, function(t) { t.inRange(e.x, e.y) && i.push(t) }), i } - - function fe(t, e, i, n) { - var a = Number.POSITIVE_INFINITY, - r = []; - return he(t, function(t) { - if (!i || t.inRange(e.x, e.y)) { - var o = t.getCenterPoint(), - s = n(e, o); - s < a ? (r = [t], a = s) : s === a && r.push(t) - } - }), r - } - - function ge(t) { - var e = -1 !== t.indexOf("x"), - i = -1 !== t.indexOf("y"); - return function(t, n) { - var a = e ? Math.abs(t.x - n.x) : 0, - r = i ? Math.abs(t.y - n.y) : 0; - return Math.sqrt(Math.pow(a, 2) + Math.pow(r, 2)) - } - } - - function me(t, e, i) { - var n = de(e, t); - i.axis = i.axis || "x"; - var a = ge(i.axis), - r = i.intersect ? ce(t, n) : fe(t, n, !1, a), - o = []; - return r.length ? (t.data.datasets.forEach(function(e, i) { - if (t.isDatasetVisible(i)) { - var n = t.getDatasetMeta(i).data[r[0]._index]; - n && !n._view.skip && o.push(n) - } - }), o) : [] - } - var pe = { - modes: { - single: function(t, e) { - var i = de(e, t), - n = []; - return he(t, function(t) { if (t.inRange(i.x, i.y)) return n.push(t), n }), n.slice(0, 1) - }, - label: me, - index: me, - dataset: function(t, e, i) { - var n = de(e, t); - i.axis = i.axis || "xy"; - var a = ge(i.axis), - r = i.intersect ? ce(t, n) : fe(t, n, !1, a); - return r.length > 0 && (r = t.getDatasetMeta(r[0]._datasetIndex).data), r - }, - "x-axis": function(t, e) { return me(t, e, { intersect: !1 }) }, - point: function(t, e) { return ce(t, de(e, t)) }, - nearest: function(t, e, i) { - var n = de(e, t); - i.axis = i.axis || "xy"; - var a = ge(i.axis); - return fe(t, n, i.intersect, a) - }, - x: function(t, e, i) { - var n = de(e, t), - a = [], - r = !1; - return he(t, function(t) { t.inXRange(n.x) && a.push(t), t.inRange(n.x, n.y) && (r = !0) }), i.intersect && !r && (a = []), a - }, - y: function(t, e, i) { - var n = de(e, t), - a = [], - r = !1; - return he(t, function(t) { t.inYRange(n.y) && a.push(t), t.inRange(n.x, n.y) && (r = !0) }), i.intersect && !r && (a = []), a - } - } - }; - - function ve(t, e) { return ut.where(t, function(t) { return t.position === e }) } - - function ye(t, e) { - t.forEach(function(t, e) { return t._tmpIndex_ = e, t }), t.sort(function(t, i) { - var n = e ? i : t, - a = e ? t : i; - return n.weight === a.weight ? n._tmpIndex_ - a._tmpIndex_ : n.weight - a.weight - }), t.forEach(function(t) { delete t._tmpIndex_ }) - } - - function be(t, e) { ut.each(t, function(t) { e[t.position] += t.isHorizontal() ? t.height : t.width }) } - ot._set("global", { layout: { padding: { top: 0, right: 0, bottom: 0, left: 0 } } }); - var xe = { - defaults: {}, - addBox: function(t, e) { t.boxes || (t.boxes = []), e.fullWidth = e.fullWidth || !1, e.position = e.position || "top", e.weight = e.weight || 0, t.boxes.push(e) }, - removeBox: function(t, e) { var i = t.boxes ? t.boxes.indexOf(e) : -1; - 1 !== i && t.boxes.splice(i, 1) }, - configure: function(t, e, i) { for (var n, a = ["fullWidth", "position", "weight"], r = a.length, o = 0; o < r; ++o) n = a[o], i.hasOwnProperty(n) && (e[n] = i[n]) }, - update: function(t, e, i) { - if (t) { - var n = t.options.layout || {}, - a = ut.options.toPadding(n.padding), - r = a.left, - o = a.right, - s = a.top, - l = a.bottom, - u = ve(t.boxes, "left"), - d = ve(t.boxes, "right"), - h = ve(t.boxes, "top"), - c = ve(t.boxes, "bottom"), - f = ve(t.boxes, "chartArea"); - ye(u, !0), ye(d, !1), ye(h, !0), ye(c, !1); - var g, m = u.concat(d), - p = h.concat(c), - v = m.concat(p), - y = e - r - o, - b = i - s - l, - x = (e - y / 2) / m.length, - _ = y, - k = b, - w = { top: s, left: r, bottom: l, right: o }, - M = []; - ut.each(v, function(t) { - var e, i = t.isHorizontal(); - i ? (e = t.update(t.fullWidth ? y : _, b / 2), k -= e.height) : (e = t.update(x, k), _ -= e.width), M.push({ horizontal: i, width: e.width, box: t }) - }), g = function(t) { - var e = 0, - i = 0, - n = 0, - a = 0; - return ut.each(t, function(t) { - if (t.getPadding) { - var r = t.getPadding(); - e = Math.max(e, r.top), i = Math.max(i, r.left), n = Math.max(n, r.bottom), a = Math.max(a, r.right) - } - }), { top: e, left: i, bottom: n, right: a } - }(v), ut.each(m, I), be(m, w), ut.each(p, I), be(p, w), ut.each(m, function(t) { - var e = ut.findNextWhere(M, function(e) { return e.box === t }), - i = { left: 0, right: 0, top: w.top, bottom: w.bottom }; - e && t.update(e.width, k, i) - }), be(v, w = { top: s, left: r, bottom: l, right: o }); - var S = Math.max(g.left - w.left, 0); - w.left += S, w.right += Math.max(g.right - w.right, 0); - var D = Math.max(g.top - w.top, 0); - w.top += D, w.bottom += Math.max(g.bottom - w.bottom, 0); - var C = i - w.top - w.bottom, - P = e - w.left - w.right; - P === _ && C === k || (ut.each(m, function(t) { t.height = C }), ut.each(p, function(t) { t.fullWidth || (t.width = P) }), k = C, _ = P); - var T = r + S, - O = s + D; - ut.each(u.concat(h), A), T += _, O += k, ut.each(d, A), ut.each(c, A), t.chartArea = { left: w.left, top: w.top, right: w.left + _, bottom: w.top + k }, ut.each(f, function(e) { e.left = t.chartArea.left, e.top = t.chartArea.top, e.right = t.chartArea.right, e.bottom = t.chartArea.bottom, e.update(_, k) }) - } - - function I(t) { - var e = ut.findNextWhere(M, function(e) { return e.box === t }); - if (e) - if (e.horizontal) { - var i = { left: Math.max(w.left, g.left), right: Math.max(w.right, g.right), top: 0, bottom: 0 }; - t.update(t.fullWidth ? y : _, b / 2, i) - } else t.update(e.width, k) - } - - function A(t) { t.isHorizontal() ? (t.left = t.fullWidth ? r : w.left, t.right = t.fullWidth ? e - o : w.left + _, t.top = O, t.bottom = O + t.height, O = t.bottom) : (t.left = T, t.right = T + t.width, t.top = w.top, t.bottom = w.top + k, T = t.right) } - } - }; - "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self && self; - - function _e() { throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs") } - var ke, we = (ke = Object.freeze({ default: "@keyframes chartjs-render-animation{from{opacity:.99}to{opacity:1}}.chartjs-render-monitor{animation:chartjs-render-animation 1ms}.chartjs-size-monitor,.chartjs-size-monitor-expand,.chartjs-size-monitor-shrink{position:absolute;direction:ltr;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1}.chartjs-size-monitor-expand>div{position:absolute;width:1000000px;height:1000000px;left:0;top:0}.chartjs-size-monitor-shrink>div{position:absolute;width:200%;height:200%;left:0;top:0}" })) && ke.default || ke, - Me = "$chartjs", - Se = "chartjs-size-monitor", - De = "chartjs-render-monitor", - Ce = "chartjs-render-animation", - Pe = ["animationstart", "webkitAnimationStart"], - Te = { touchstart: "mousedown", touchmove: "mousemove", touchend: "mouseup", pointerenter: "mouseenter", pointerdown: "mousedown", pointermove: "mousemove", pointerup: "mouseup", pointerleave: "mouseout", pointerout: "mouseout" }; - - function Oe(t, e) { - var i = ut.getStyle(t, e), - n = i && i.match(/^(\d+)(\.\d+)?px$/); - return n ? Number(n[1]) : void 0 - } - var Ie = !! function() { - var t = !1; - try { - var e = Object.defineProperty({}, "passive", { get: function() { t = !0 } }); - window.addEventListener("e", null, e) - } catch (t) {} - return t - }() && { passive: !0 }; - - function Ae(t, e, i) { t.addEventListener(e, i, Ie) } - - function Fe(t, e, i) { t.removeEventListener(e, i, Ie) } - - function Re(t, e, i, n, a) { return { type: t, chart: e, native: a || null, x: void 0 !== i ? i : null, y: void 0 !== n ? n : null } } - - function Le(t) { var e = document.createElement("div"); return e.className = t || "", e } - - function We(t, e, i) { - var n, a, r, o, s = t[Me] || (t[Me] = {}), - l = s.resizer = function(t) { - var e = Le(Se), - i = Le(Se + "-expand"), - n = Le(Se + "-shrink"); - i.appendChild(Le()), n.appendChild(Le()), e.appendChild(i), e.appendChild(n), e._reset = function() { i.scrollLeft = 1e6, i.scrollTop = 1e6, n.scrollLeft = 1e6, n.scrollTop = 1e6 }; - var a = function() { e._reset(), t() }; - return Ae(i, "scroll", a.bind(i, "expand")), Ae(n, "scroll", a.bind(n, "shrink")), e - }((n = function() { - if (s.resizer) { - var n = i.options.maintainAspectRatio && t.parentNode, - a = n ? n.clientWidth : 0; - e(Re("resize", i)), n && n.clientWidth < a && i.canvas && e(Re("resize", i)) - } - }, r = !1, o = [], function() { o = Array.prototype.slice.call(arguments), a = a || this, r || (r = !0, ut.requestAnimFrame.call(window, function() { r = !1, n.apply(a, o) })) })); - ! function(t, e) { - var i = t[Me] || (t[Me] = {}), - n = i.renderProxy = function(t) { t.animationName === Ce && e() }; - ut.each(Pe, function(e) { Ae(t, e, n) }), i.reflow = !!t.offsetParent, t.classList.add(De) - }(t, function() { - if (s.resizer) { - var e = t.parentNode; - e && e !== l.parentNode && e.insertBefore(l, e.firstChild), l._reset() - } - }) - } - - function Ye(t) { - var e = t[Me] || {}, - i = e.resizer; - delete e.resizer, - function(t) { - var e = t[Me] || {}, - i = e.renderProxy; - i && (ut.each(Pe, function(e) { Fe(t, e, i) }), delete e.renderProxy), t.classList.remove(De) - }(t), i && i.parentNode && i.parentNode.removeChild(i) - } - var Ne = { - disableCSSInjection: !1, - _enabled: "undefined" != typeof window && "undefined" != typeof document, - _ensureLoaded: function() { - var t, e, i; - this._loaded || (this._loaded = !0, this.disableCSSInjection || (e = we, i = (t = this)._style || document.createElement("style"), t._style || (t._style = i, e = "/* Chart.js */\n" + e, i.setAttribute("type", "text/css"), document.getElementsByTagName("head")[0].appendChild(i)), i.appendChild(document.createTextNode(e)))) - }, - acquireContext: function(t, e) { - "string" == typeof t ? t = document.getElementById(t) : t.length && (t = t[0]), t && t.canvas && (t = t.canvas); - var i = t && t.getContext && t.getContext("2d"); - return this._ensureLoaded(), i && i.canvas === t ? (function(t, e) { - var i = t.style, - n = t.getAttribute("height"), - a = t.getAttribute("width"); - if (t[Me] = { initial: { height: n, width: a, style: { display: i.display, height: i.height, width: i.width } } }, i.display = i.display || "block", null === a || "" === a) { - var r = Oe(t, "width"); - void 0 !== r && (t.width = r) - } - if (null === n || "" === n) - if ("" === t.style.height) t.height = t.width / (e.options.aspectRatio || 2); - else { - var o = Oe(t, "height"); - void 0 !== r && (t.height = o) - } - }(t, e), i) : null - }, - releaseContext: function(t) { - var e = t.canvas; - if (e[Me]) { - var i = e[Me].initial; - ["height", "width"].forEach(function(t) { - var n = i[t]; - ut.isNullOrUndef(n) ? e.removeAttribute(t) : e.setAttribute(t, n) - }), ut.each(i.style || {}, function(t, i) { e.style[i] = t }), e.width = e.width, delete e[Me] - } - }, - addEventListener: function(t, e, i) { - var n = t.canvas; - if ("resize" !== e) { - var a = i[Me] || (i[Me] = {}); - Ae(n, e, (a.proxies || (a.proxies = {}))[t.id + "_" + e] = function(e) { - i(function(t, e) { - var i = Te[t.type] || t.type, - n = ut.getRelativePosition(t, e); - return Re(i, e, n.x, n.y, t) - }(e, t)) - }) - } else We(n, i, t) - }, - removeEventListener: function(t, e, i) { - var n = t.canvas; - if ("resize" !== e) { - var a = ((i[Me] || {}).proxies || {})[t.id + "_" + e]; - a && Fe(n, e, a) - } else Ye(n) - } - }; - ut.addEvent = Ae, ut.removeEvent = Fe; - var ze = Ne._enabled ? Ne : { acquireContext: function(t) { return t && t.canvas && (t = t.canvas), t && t.getContext("2d") || null } }, - Ve = ut.extend({ initialize: function() {}, acquireContext: function() {}, releaseContext: function() {}, addEventListener: function() {}, removeEventListener: function() {} }, ze); - ot._set("global", { plugins: {} }); - var He = { - _plugins: [], - _cacheId: 0, - register: function(t) { - var e = this._plugins; - [].concat(t).forEach(function(t) {-1 === e.indexOf(t) && e.push(t) }), this._cacheId++ - }, - unregister: function(t) { - var e = this._plugins; - [].concat(t).forEach(function(t) { var i = e.indexOf(t); - 1 !== i && e.splice(i, 1) }), this._cacheId++ - }, - clear: function() { this._plugins = [], this._cacheId++ }, - count: function() { return this._plugins.length }, - getAll: function() { return this._plugins }, - notify: function(t, e, i) { - var n, a, r, o, s, l = this.descriptors(t), - u = l.length; - for (n = 0; n < u; ++n) - if ("function" == typeof(s = (r = (a = l[n]).plugin)[e]) && ((o = [t].concat(i || [])).push(a.options), !1 === s.apply(r, o))) return !1; - return !0 - }, - descriptors: function(t) { - var e = t.$plugins || (t.$plugins = {}); - if (e.id === this._cacheId) return e.descriptors; - var i = [], - n = [], - a = t && t.config || {}, - r = a.options && a.options.plugins || {}; - return this._plugins.concat(a.plugins || []).forEach(function(t) { - if (-1 === i.indexOf(t)) { - var e = t.id, - a = r[e]; - !1 !== a && (!0 === a && (a = ut.clone(ot.global.plugins[e])), i.push(t), n.push({ plugin: t, options: a || {} })) - } - }), e.descriptors = n, e.id = this._cacheId, n - }, - _invalidate: function(t) { delete t.$plugins } - }, - Ee = { constructors: {}, defaults: {}, registerScaleType: function(t, e, i) { this.constructors[t] = e, this.defaults[t] = ut.clone(i) }, getScaleConstructor: function(t) { return this.constructors.hasOwnProperty(t) ? this.constructors[t] : void 0 }, getScaleDefaults: function(t) { return this.defaults.hasOwnProperty(t) ? ut.merge({}, [ot.scale, this.defaults[t]]) : {} }, updateScaleDefaults: function(t, e) { this.defaults.hasOwnProperty(t) && (this.defaults[t] = ut.extend(this.defaults[t], e)) }, addScalesToLayout: function(t) { ut.each(t.scales, function(e) { e.fullWidth = e.options.fullWidth, e.position = e.options.position, e.weight = e.options.weight, xe.addBox(t, e) }) } }, - Be = ut.valueOrDefault; - ot._set("global", { - tooltips: { - enabled: !0, - custom: null, - mode: "nearest", - position: "average", - intersect: !0, - backgroundColor: "rgba(0,0,0,0.8)", - titleFontStyle: "bold", - titleSpacing: 2, - titleMarginBottom: 6, - titleFontColor: "#fff", - titleAlign: "left", - bodySpacing: 2, - bodyFontColor: "#fff", - bodyAlign: "left", - footerFontStyle: "bold", - footerSpacing: 2, - footerMarginTop: 6, - footerFontColor: "#fff", - footerAlign: "left", - yPadding: 6, - xPadding: 6, - caretPadding: 2, - caretSize: 5, - cornerRadius: 6, - multiKeyBackground: "#fff", - displayColors: !0, - borderColor: "rgba(0,0,0,0)", - borderWidth: 0, - callbacks: { - beforeTitle: ut.noop, - title: function(t, e) { - var i = "", - n = e.labels, - a = n ? n.length : 0; - if (t.length > 0) { - var r = t[0]; - r.label ? i = r.label : r.xLabel ? i = r.xLabel : a > 0 && r.index < a && (i = n[r.index]) - } - return i - }, - afterTitle: ut.noop, - beforeBody: ut.noop, - beforeLabel: ut.noop, - label: function(t, e) { var i = e.datasets[t.datasetIndex].label || ""; return i && (i += ": "), ut.isNullOrUndef(t.value) ? i += t.yLabel : i += t.value, i }, - labelColor: function(t, e) { var i = e.getDatasetMeta(t.datasetIndex).data[t.index]._view; return { borderColor: i.borderColor, backgroundColor: i.backgroundColor } }, - labelTextColor: function() { return this._options.bodyFontColor }, - afterLabel: ut.noop, - afterBody: ut.noop, - beforeFooter: ut.noop, - footer: ut.noop, - afterFooter: ut.noop - } - } - }); - var je = { - average: function(t) { - if (!t.length) return !1; - var e, i, n = 0, - a = 0, - r = 0; - for (e = 0, i = t.length; e < i; ++e) { - var o = t[e]; - if (o && o.hasValue()) { - var s = o.tooltipPosition(); - n += s.x, a += s.y, ++r - } - } - return { x: n / r, y: a / r } - }, - nearest: function(t, e) { - var i, n, a, r = e.x, - o = e.y, - s = Number.POSITIVE_INFINITY; - for (i = 0, n = t.length; i < n; ++i) { - var l = t[i]; - if (l && l.hasValue()) { - var u = l.getCenterPoint(), - d = ut.distanceBetweenPoints(e, u); - d < s && (s = d, a = l) - } - } - if (a) { - var h = a.tooltipPosition(); - r = h.x, o = h.y - } - return { x: r, y: o } - } - }; - - function Ue(t, e) { return e && (ut.isArray(e) ? Array.prototype.push.apply(t, e) : t.push(e)), t } - - function Ge(t) { return ("string" == typeof t || t instanceof String) && t.indexOf("\n") > -1 ? t.split("\n") : t } - - function qe(t) { var e = ot.global; return { xPadding: t.xPadding, yPadding: t.yPadding, xAlign: t.xAlign, yAlign: t.yAlign, bodyFontColor: t.bodyFontColor, _bodyFontFamily: Be(t.bodyFontFamily, e.defaultFontFamily), _bodyFontStyle: Be(t.bodyFontStyle, e.defaultFontStyle), _bodyAlign: t.bodyAlign, bodyFontSize: Be(t.bodyFontSize, e.defaultFontSize), bodySpacing: t.bodySpacing, titleFontColor: t.titleFontColor, _titleFontFamily: Be(t.titleFontFamily, e.defaultFontFamily), _titleFontStyle: Be(t.titleFontStyle, e.defaultFontStyle), titleFontSize: Be(t.titleFontSize, e.defaultFontSize), _titleAlign: t.titleAlign, titleSpacing: t.titleSpacing, titleMarginBottom: t.titleMarginBottom, footerFontColor: t.footerFontColor, _footerFontFamily: Be(t.footerFontFamily, e.defaultFontFamily), _footerFontStyle: Be(t.footerFontStyle, e.defaultFontStyle), footerFontSize: Be(t.footerFontSize, e.defaultFontSize), _footerAlign: t.footerAlign, footerSpacing: t.footerSpacing, footerMarginTop: t.footerMarginTop, caretSize: t.caretSize, cornerRadius: t.cornerRadius, backgroundColor: t.backgroundColor, opacity: 0, legendColorBackground: t.multiKeyBackground, displayColors: t.displayColors, borderColor: t.borderColor, borderWidth: t.borderWidth } } - - function Ze(t, e) { return "center" === e ? t.x + t.width / 2 : "right" === e ? t.x + t.width - t.xPadding : t.x + t.xPadding } - - function $e(t) { return Ue([], Ge(t)) } - var Xe = gt.extend({ - initialize: function() { this._model = qe(this._options), this._lastActive = [] }, - getTitle: function() { - var t = this._options.callbacks, - e = t.beforeTitle.apply(this, arguments), - i = t.title.apply(this, arguments), - n = t.afterTitle.apply(this, arguments), - a = []; - return a = Ue(a, Ge(e)), a = Ue(a, Ge(i)), a = Ue(a, Ge(n)) - }, - getBeforeBody: function() { return $e(this._options.callbacks.beforeBody.apply(this, arguments)) }, - getBody: function(t, e) { - var i = this, - n = i._options.callbacks, - a = []; - return ut.each(t, function(t) { - var r = { before: [], lines: [], after: [] }; - Ue(r.before, Ge(n.beforeLabel.call(i, t, e))), Ue(r.lines, n.label.call(i, t, e)), Ue(r.after, Ge(n.afterLabel.call(i, t, e))), a.push(r) - }), a - }, - getAfterBody: function() { return $e(this._options.callbacks.afterBody.apply(this, arguments)) }, - getFooter: function() { - var t = this._options.callbacks, - e = t.beforeFooter.apply(this, arguments), - i = t.footer.apply(this, arguments), - n = t.afterFooter.apply(this, arguments), - a = []; - return a = Ue(a, Ge(e)), a = Ue(a, Ge(i)), a = Ue(a, Ge(n)) - }, - update: function(t) { - var e, i, n, a, r, o, s, l, u, d, h = this, - c = h._options, - f = h._model, - g = h._model = qe(c), - m = h._active, - p = h._data, - v = { xAlign: f.xAlign, yAlign: f.yAlign }, - y = { x: f.x, y: f.y }, - b = { width: f.width, height: f.height }, - x = { x: f.caretX, y: f.caretY }; - if (m.length) { - g.opacity = 1; - var _ = [], - k = []; - x = je[c.position].call(h, m, h._eventPosition); - var w = []; - for (e = 0, i = m.length; e < i; ++e) w.push((n = m[e], a = void 0, r = void 0, o = void 0, s = void 0, l = void 0, u = void 0, d = void 0, a = n._xScale, r = n._yScale || n._scale, o = n._index, s = n._datasetIndex, l = n._chart.getDatasetMeta(s).controller, u = l._getIndexScale(), d = l._getValueScale(), { xLabel: a ? a.getLabelForIndex(o, s) : "", yLabel: r ? r.getLabelForIndex(o, s) : "", label: u ? "" + u.getLabelForIndex(o, s) : "", value: d ? "" + d.getLabelForIndex(o, s) : "", index: o, datasetIndex: s, x: n._model.x, y: n._model.y })); - c.filter && (w = w.filter(function(t) { return c.filter(t, p) })), c.itemSort && (w = w.sort(function(t, e) { return c.itemSort(t, e, p) })), ut.each(w, function(t) { _.push(c.callbacks.labelColor.call(h, t, h._chart)), k.push(c.callbacks.labelTextColor.call(h, t, h._chart)) }), g.title = h.getTitle(w, p), g.beforeBody = h.getBeforeBody(w, p), g.body = h.getBody(w, p), g.afterBody = h.getAfterBody(w, p), g.footer = h.getFooter(w, p), g.x = x.x, g.y = x.y, g.caretPadding = c.caretPadding, g.labelColors = _, g.labelTextColors = k, g.dataPoints = w, b = function(t, e) { - var i = t._chart.ctx, - n = 2 * e.yPadding, - a = 0, - r = e.body, - o = r.reduce(function(t, e) { return t + e.before.length + e.lines.length + e.after.length }, 0); - o += e.beforeBody.length + e.afterBody.length; - var s = e.title.length, - l = e.footer.length, - u = e.titleFontSize, - d = e.bodyFontSize, - h = e.footerFontSize; - n += s * u, n += s ? (s - 1) * e.titleSpacing : 0, n += s ? e.titleMarginBottom : 0, n += o * d, n += o ? (o - 1) * e.bodySpacing : 0, n += l ? e.footerMarginTop : 0, n += l * h, n += l ? (l - 1) * e.footerSpacing : 0; - var c = 0, - f = function(t) { a = Math.max(a, i.measureText(t).width + c) }; - return i.font = ut.fontString(u, e._titleFontStyle, e._titleFontFamily), ut.each(e.title, f), i.font = ut.fontString(d, e._bodyFontStyle, e._bodyFontFamily), ut.each(e.beforeBody.concat(e.afterBody), f), c = e.displayColors ? d + 2 : 0, ut.each(r, function(t) { ut.each(t.before, f), ut.each(t.lines, f), ut.each(t.after, f) }), c = 0, i.font = ut.fontString(h, e._footerFontStyle, e._footerFontFamily), ut.each(e.footer, f), { width: a += 2 * e.xPadding, height: n } - }(this, g), y = function(t, e, i, n) { - var a = t.x, - r = t.y, - o = t.caretSize, - s = t.caretPadding, - l = t.cornerRadius, - u = i.xAlign, - d = i.yAlign, - h = o + s, - c = l + s; - return "right" === u ? a -= e.width : "center" === u && ((a -= e.width / 2) + e.width > n.width && (a = n.width - e.width), a < 0 && (a = 0)), "top" === d ? r += h : r -= "bottom" === d ? e.height + h : e.height / 2, "center" === d ? "left" === u ? a += h : "right" === u && (a -= h) : "left" === u ? a -= c : "right" === u && (a += c), { x: a, y: r } - }(g, b, v = function(t, e) { - var i, n, a, r, o, s = t._model, - l = t._chart, - u = t._chart.chartArea, - d = "center", - h = "center"; - s.y < e.height ? h = "top" : s.y > l.height - e.height && (h = "bottom"); - var c = (u.left + u.right) / 2, - f = (u.top + u.bottom) / 2; - "center" === h ? (i = function(t) { return t <= c }, n = function(t) { return t > c }) : (i = function(t) { return t <= e.width / 2 }, n = function(t) { return t >= l.width - e.width / 2 }), a = function(t) { return t + e.width + s.caretSize + s.caretPadding > l.width }, r = function(t) { return t - e.width - s.caretSize - s.caretPadding < 0 }, o = function(t) { return t <= f ? "top" : "bottom" }, i(s.x) ? (d = "left", a(s.x) && (d = "center", h = o(s.y))) : n(s.x) && (d = "right", r(s.x) && (d = "center", h = o(s.y))); - var g = t._options; - return { xAlign: g.xAlign ? g.xAlign : d, yAlign: g.yAlign ? g.yAlign : h } - }(this, b), h._chart) - } else g.opacity = 0; - return g.xAlign = v.xAlign, g.yAlign = v.yAlign, g.x = y.x, g.y = y.y, g.width = b.width, g.height = b.height, g.caretX = x.x, g.caretY = x.y, h._model = g, t && c.custom && c.custom.call(h, g), h - }, - drawCaret: function(t, e) { - var i = this._chart.ctx, - n = this._view, - a = this.getCaretPosition(t, e, n); - i.lineTo(a.x1, a.y1), i.lineTo(a.x2, a.y2), i.lineTo(a.x3, a.y3) - }, - getCaretPosition: function(t, e, i) { - var n, a, r, o, s, l, u = i.caretSize, - d = i.cornerRadius, - h = i.xAlign, - c = i.yAlign, - f = t.x, - g = t.y, - m = e.width, - p = e.height; - if ("center" === c) s = g + p / 2, "left" === h ? (a = (n = f) - u, r = n, o = s + u, l = s - u) : (a = (n = f + m) + u, r = n, o = s - u, l = s + u); - else if ("left" === h ? (n = (a = f + d + u) - u, r = a + u) : "right" === h ? (n = (a = f + m - d - u) - u, r = a + u) : (n = (a = i.caretX) - u, r = a + u), "top" === c) s = (o = g) - u, l = o; - else { - s = (o = g + p) + u, l = o; - var v = r; - r = n, n = v - } - return { x1: n, x2: a, x3: r, y1: o, y2: s, y3: l } - }, - drawTitle: function(t, e, i) { - var n = e.title; - if (n.length) { - t.x = Ze(e, e._titleAlign), i.textAlign = e._titleAlign, i.textBaseline = "top"; - var a, r, o = e.titleFontSize, - s = e.titleSpacing; - for (i.fillStyle = e.titleFontColor, i.font = ut.fontString(o, e._titleFontStyle, e._titleFontFamily), a = 0, r = n.length; a < r; ++a) i.fillText(n[a], t.x, t.y), t.y += o + s, a + 1 === n.length && (t.y += e.titleMarginBottom - s) - } - }, - drawBody: function(t, e, i) { - var n, a = e.bodyFontSize, - r = e.bodySpacing, - o = e._bodyAlign, - s = e.body, - l = e.displayColors, - u = e.labelColors, - d = 0, - h = l ? Ze(e, "left") : 0; - i.textAlign = o, i.textBaseline = "top", i.font = ut.fontString(a, e._bodyFontStyle, e._bodyFontFamily), t.x = Ze(e, o); - var c = function(e) { i.fillText(e, t.x + d, t.y), t.y += a + r }; - i.fillStyle = e.bodyFontColor, ut.each(e.beforeBody, c), d = l && "right" !== o ? "center" === o ? a / 2 + 1 : a + 2 : 0, ut.each(s, function(r, o) { n = e.labelTextColors[o], i.fillStyle = n, ut.each(r.before, c), ut.each(r.lines, function(r) { l && (i.fillStyle = e.legendColorBackground, i.fillRect(h, t.y, a, a), i.lineWidth = 1, i.strokeStyle = u[o].borderColor, i.strokeRect(h, t.y, a, a), i.fillStyle = u[o].backgroundColor, i.fillRect(h + 1, t.y + 1, a - 2, a - 2), i.fillStyle = n), c(r) }), ut.each(r.after, c) }), d = 0, ut.each(e.afterBody, c), t.y -= r - }, - drawFooter: function(t, e, i) { - var n = e.footer; - n.length && (t.x = Ze(e, e._footerAlign), t.y += e.footerMarginTop, i.textAlign = e._footerAlign, i.textBaseline = "top", i.fillStyle = e.footerFontColor, i.font = ut.fontString(e.footerFontSize, e._footerFontStyle, e._footerFontFamily), ut.each(n, function(n) { i.fillText(n, t.x, t.y), t.y += e.footerFontSize + e.footerSpacing })) - }, - drawBackground: function(t, e, i, n) { - i.fillStyle = e.backgroundColor, i.strokeStyle = e.borderColor, i.lineWidth = e.borderWidth; - var a = e.xAlign, - r = e.yAlign, - o = t.x, - s = t.y, - l = n.width, - u = n.height, - d = e.cornerRadius; - i.beginPath(), i.moveTo(o + d, s), "top" === r && this.drawCaret(t, n), i.lineTo(o + l - d, s), i.quadraticCurveTo(o + l, s, o + l, s + d), "center" === r && "right" === a && this.drawCaret(t, n), i.lineTo(o + l, s + u - d), i.quadraticCurveTo(o + l, s + u, o + l - d, s + u), "bottom" === r && this.drawCaret(t, n), i.lineTo(o + d, s + u), i.quadraticCurveTo(o, s + u, o, s + u - d), "center" === r && "left" === a && this.drawCaret(t, n), i.lineTo(o, s + d), i.quadraticCurveTo(o, s, o + d, s), i.closePath(), i.fill(), e.borderWidth > 0 && i.stroke() - }, - draw: function() { - var t = this._chart.ctx, - e = this._view; - if (0 !== e.opacity) { - var i = { width: e.width, height: e.height }, - n = { x: e.x, y: e.y }, - a = Math.abs(e.opacity < .001) ? 0 : e.opacity, - r = e.title.length || e.beforeBody.length || e.body.length || e.afterBody.length || e.footer.length; - this._options.enabled && r && (t.save(), t.globalAlpha = a, this.drawBackground(n, e, t, i), n.y += e.yPadding, this.drawTitle(n, e, t), this.drawBody(n, e, t), this.drawFooter(n, e, t), t.restore()) - } - }, - handleEvent: function(t) { - var e, i = this, - n = i._options; - return i._lastActive = i._lastActive || [], "mouseout" === t.type ? i._active = [] : i._active = i._chart.getElementsAtEventForMode(t, n.mode, n), (e = !ut.arrayEquals(i._active, i._lastActive)) && (i._lastActive = i._active, (n.enabled || n.custom) && (i._eventPosition = { x: t.x, y: t.y }, i.update(!0), i.pivot())), e - } - }), - Ke = je, - Je = Xe; - Je.positioners = Ke; - var Qe = ut.valueOrDefault; - - function ti() { return ut.merge({}, [].slice.call(arguments), { merger: function(t, e, i, n) { if ("xAxes" === t || "yAxes" === t) { var a, r, o, s = i[t].length; for (e[t] || (e[t] = []), a = 0; a < s; ++a) o = i[t][a], r = Qe(o.type, "xAxes" === t ? "category" : "linear"), a >= e[t].length && e[t].push({}), !e[t][a].type || o.type && o.type !== e[t][a].type ? ut.merge(e[t][a], [Ee.getScaleDefaults(r), o]) : ut.merge(e[t][a], o) } else ut._merger(t, e, i, n) } }) } - - function ei() { - return ut.merge({}, [].slice.call(arguments), { - merger: function(t, e, i, n) { - var a = e[t] || {}, - r = i[t]; - "scales" === t ? e[t] = ti(a, r) : "scale" === t ? e[t] = ut.merge(a, [Ee.getScaleDefaults(r.type), r]) : ut._merger(t, e, i, n) - } - }) - } - - function ii(t) { return "top" === t || "bottom" === t } - ot._set("global", { elements: {}, events: ["mousemove", "mouseout", "click", "touchstart", "touchmove"], hover: { onHover: null, mode: "nearest", intersect: !0, animationDuration: 400 }, onClick: null, maintainAspectRatio: !0, responsive: !0, responsiveAnimationDuration: 0 }); - var ni = function(t, e) { return this.construct(t, e), this }; - ut.extend(ni.prototype, { - construct: function(t, e) { - var i = this; - e = function(t) { var e = (t = t || {}).data = t.data || {}; return e.datasets = e.datasets || [], e.labels = e.labels || [], t.options = ei(ot.global, ot[t.type], t.options || {}), t }(e); - var n = Ve.acquireContext(t, e), - a = n && n.canvas, - r = a && a.height, - o = a && a.width; - i.id = ut.uid(), i.ctx = n, i.canvas = a, i.config = e, i.width = o, i.height = r, i.aspectRatio = r ? o / r : null, i.options = e.options, i._bufferedRender = !1, i.chart = i, i.controller = i, ni.instances[i.id] = i, Object.defineProperty(i, "data", { get: function() { return i.config.data }, set: function(t) { i.config.data = t } }), n && a ? (i.initialize(), i.update()) : console.error("Failed to create chart: can't acquire context from the given item") - }, - initialize: function() { var t = this; return He.notify(t, "beforeInit"), ut.retinaScale(t, t.options.devicePixelRatio), t.bindEvents(), t.options.responsive && t.resize(!0), t.ensureScalesHaveIDs(), t.buildOrUpdateScales(), t.initToolTip(), He.notify(t, "afterInit"), t }, - clear: function() { return ut.canvas.clear(this), this }, - stop: function() { return vt.cancelAnimation(this), this }, - resize: function(t) { - var e = this, - i = e.options, - n = e.canvas, - a = i.maintainAspectRatio && e.aspectRatio || null, - r = Math.max(0, Math.floor(ut.getMaximumWidth(n))), - o = Math.max(0, Math.floor(a ? r / a : ut.getMaximumHeight(n))); - if ((e.width !== r || e.height !== o) && (n.width = e.width = r, n.height = e.height = o, n.style.width = r + "px", n.style.height = o + "px", ut.retinaScale(e, i.devicePixelRatio), !t)) { - var s = { width: r, height: o }; - He.notify(e, "resize", [s]), i.onResize && i.onResize(e, s), e.stop(), e.update({ duration: i.responsiveAnimationDuration }) - } - }, - ensureScalesHaveIDs: function() { - var t = this.options, - e = t.scales || {}, - i = t.scale; - ut.each(e.xAxes, function(t, e) { t.id = t.id || "x-axis-" + e }), ut.each(e.yAxes, function(t, e) { t.id = t.id || "y-axis-" + e }), i && (i.id = i.id || "scale") - }, - buildOrUpdateScales: function() { - var t = this, - e = t.options, - i = t.scales || {}, - n = [], - a = Object.keys(i).reduce(function(t, e) { return t[e] = !1, t }, {}); - e.scales && (n = n.concat((e.scales.xAxes || []).map(function(t) { return { options: t, dtype: "category", dposition: "bottom" } }), (e.scales.yAxes || []).map(function(t) { return { options: t, dtype: "linear", dposition: "left" } }))), e.scale && n.push({ options: e.scale, dtype: "radialLinear", isDefault: !0, dposition: "chartArea" }), ut.each(n, function(e) { - var n = e.options, - r = n.id, - o = Qe(n.type, e.dtype); - ii(n.position) !== ii(e.dposition) && (n.position = e.dposition), a[r] = !0; - var s = null; - if (r in i && i[r].type === o)(s = i[r]).options = n, s.ctx = t.ctx, s.chart = t; - else { - var l = Ee.getScaleConstructor(o); - if (!l) return; - s = new l({ id: r, type: o, options: n, ctx: t.ctx, chart: t }), i[s.id] = s - } - s.mergeTicksOptions(), e.isDefault && (t.scale = s) - }), ut.each(a, function(t, e) { t || delete i[e] }), t.scales = i, Ee.addScalesToLayout(this) - }, - buildOrUpdateControllers: function() { - var t = this, - e = []; - return ut.each(t.data.datasets, function(i, n) { - var a = t.getDatasetMeta(n), - r = i.type || t.config.type; - if (a.type && a.type !== r && (t.destroyDatasetMeta(n), a = t.getDatasetMeta(n)), a.type = r, a.controller) a.controller.updateIndex(n), a.controller.linkScales(); - else { - var o = ue[a.type]; - if (void 0 === o) throw new Error('"' + a.type + '" is not a chart type.'); - a.controller = new o(t, n), e.push(a.controller) - } - }, t), e - }, - resetElements: function() { - var t = this; - ut.each(t.data.datasets, function(e, i) { t.getDatasetMeta(i).controller.reset() }, t) - }, - reset: function() { this.resetElements(), this.tooltip.initialize() }, - update: function(t) { - var e, i, n = this; - if (t && "object" == typeof t || (t = { duration: t, lazy: arguments[1] }), i = (e = n).options, ut.each(e.scales, function(t) { xe.removeBox(e, t) }), i = ei(ot.global, ot[e.config.type], i), e.options = e.config.options = i, e.ensureScalesHaveIDs(), e.buildOrUpdateScales(), e.tooltip._options = i.tooltips, e.tooltip.initialize(), He._invalidate(n), !1 !== He.notify(n, "beforeUpdate")) { - n.tooltip._data = n.data; - var a = n.buildOrUpdateControllers(); - ut.each(n.data.datasets, function(t, e) { n.getDatasetMeta(e).controller.buildOrUpdateElements() }, n), n.updateLayout(), n.options.animation && n.options.animation.duration && ut.each(a, function(t) { t.reset() }), n.updateDatasets(), n.tooltip.initialize(), n.lastActive = [], He.notify(n, "afterUpdate"), n._bufferedRender ? n._bufferedRequest = { duration: t.duration, easing: t.easing, lazy: t.lazy } : n.render(t) - } - }, - updateLayout: function() {!1 !== He.notify(this, "beforeLayout") && (xe.update(this, this.width, this.height), He.notify(this, "afterScaleUpdate"), He.notify(this, "afterLayout")) }, - updateDatasets: function() { - if (!1 !== He.notify(this, "beforeDatasetsUpdate")) { - for (var t = 0, e = this.data.datasets.length; t < e; ++t) this.updateDataset(t); - He.notify(this, "afterDatasetsUpdate") - } - }, - updateDataset: function(t) { - var e = this.getDatasetMeta(t), - i = { meta: e, index: t }; - !1 !== He.notify(this, "beforeDatasetUpdate", [i]) && (e.controller.update(), He.notify(this, "afterDatasetUpdate", [i])) - }, - render: function(t) { - var e = this; - t && "object" == typeof t || (t = { duration: t, lazy: arguments[1] }); - var i = e.options.animation, - n = Qe(t.duration, i && i.duration), - a = t.lazy; - if (!1 !== He.notify(e, "beforeRender")) { - var r = function(t) { He.notify(e, "afterRender"), ut.callback(i && i.onComplete, [t], e) }; - if (i && n) { - var o = new pt({ - numSteps: n / 16.66, - easing: t.easing || i.easing, - render: function(t, e) { - var i = ut.easing.effects[e.easing], - n = e.currentStep, - a = n / e.numSteps; - t.draw(i(a), a, n) - }, - onAnimationProgress: i.onProgress, - onAnimationComplete: r - }); - vt.addAnimation(e, o, n, a) - } else e.draw(), r(new pt({ numSteps: 0, chart: e })); - return e - } - }, - draw: function(t) { - var e = this; - e.clear(), ut.isNullOrUndef(t) && (t = 1), e.transition(t), e.width <= 0 || e.height <= 0 || !1 !== He.notify(e, "beforeDraw", [t]) && (ut.each(e.boxes, function(t) { t.draw(e.chartArea) }, e), e.drawDatasets(t), e._drawTooltip(t), He.notify(e, "afterDraw", [t])) - }, - transition: function(t) { - for (var e = 0, i = (this.data.datasets || []).length; e < i; ++e) this.isDatasetVisible(e) && this.getDatasetMeta(e).controller.transition(t); - this.tooltip.transition(t) - }, - drawDatasets: function(t) { - var e = this; - if (!1 !== He.notify(e, "beforeDatasetsDraw", [t])) { - for (var i = (e.data.datasets || []).length - 1; i >= 0; --i) e.isDatasetVisible(i) && e.drawDataset(i, t); - He.notify(e, "afterDatasetsDraw", [t]) - } - }, - drawDataset: function(t, e) { - var i = this.getDatasetMeta(t), - n = { meta: i, index: t, easingValue: e }; - !1 !== He.notify(this, "beforeDatasetDraw", [n]) && (i.controller.draw(e), He.notify(this, "afterDatasetDraw", [n])) - }, - _drawTooltip: function(t) { - var e = this.tooltip, - i = { tooltip: e, easingValue: t }; - !1 !== He.notify(this, "beforeTooltipDraw", [i]) && (e.draw(), He.notify(this, "afterTooltipDraw", [i])) - }, - getElementAtEvent: function(t) { return pe.modes.single(this, t) }, - getElementsAtEvent: function(t) { return pe.modes.label(this, t, { intersect: !0 }) }, - getElementsAtXAxis: function(t) { return pe.modes["x-axis"](this, t, { intersect: !0 }) }, - getElementsAtEventForMode: function(t, e, i) { var n = pe.modes[e]; return "function" == typeof n ? n(this, t, i) : [] }, - getDatasetAtEvent: function(t) { return pe.modes.dataset(this, t, { intersect: !0 }) }, - getDatasetMeta: function(t) { - var e = this.data.datasets[t]; - e._meta || (e._meta = {}); - var i = e._meta[this.id]; - return i || (i = e._meta[this.id] = { type: null, data: [], dataset: null, controller: null, hidden: null, xAxisID: null, yAxisID: null }), i - }, - getVisibleDatasetCount: function() { for (var t = 0, e = 0, i = this.data.datasets.length; e < i; ++e) this.isDatasetVisible(e) && t++; return t }, - isDatasetVisible: function(t) { var e = this.getDatasetMeta(t); return "boolean" == typeof e.hidden ? !e.hidden : !this.data.datasets[t].hidden }, - generateLegend: function() { return this.options.legendCallback(this) }, - destroyDatasetMeta: function(t) { - var e = this.id, - i = this.data.datasets[t], - n = i._meta && i._meta[e]; - n && (n.controller.destroy(), delete i._meta[e]) - }, - destroy: function() { - var t, e, i = this, - n = i.canvas; - for (i.stop(), t = 0, e = i.data.datasets.length; t < e; ++t) i.destroyDatasetMeta(t); - n && (i.unbindEvents(), ut.canvas.clear(i), Ve.releaseContext(i.ctx), i.canvas = null, i.ctx = null), He.notify(i, "destroy"), delete ni.instances[i.id] - }, - toBase64Image: function() { return this.canvas.toDataURL.apply(this.canvas, arguments) }, - initToolTip: function() { - var t = this; - t.tooltip = new Je({ _chart: t, _chartInstance: t, _data: t.data, _options: t.options.tooltips }, t) - }, - bindEvents: function() { - var t = this, - e = t._listeners = {}, - i = function() { t.eventHandler.apply(t, arguments) }; - ut.each(t.options.events, function(n) { Ve.addEventListener(t, n, i), e[n] = i }), t.options.responsive && (i = function() { t.resize() }, Ve.addEventListener(t, "resize", i), e.resize = i) - }, - unbindEvents: function() { - var t = this, - e = t._listeners; - e && (delete t._listeners, ut.each(e, function(e, i) { Ve.removeEventListener(t, i, e) })) - }, - updateHoverStyle: function(t, e, i) { var n, a, r, o = i ? "setHoverStyle" : "removeHoverStyle"; for (a = 0, r = t.length; a < r; ++a)(n = t[a]) && this.getDatasetMeta(n._datasetIndex).controller[o](n) }, - eventHandler: function(t) { - var e = this, - i = e.tooltip; - if (!1 !== He.notify(e, "beforeEvent", [t])) { - e._bufferedRender = !0, e._bufferedRequest = null; - var n = e.handleEvent(t); - i && (n = i._start ? i.handleEvent(t) : n | i.handleEvent(t)), He.notify(e, "afterEvent", [t]); - var a = e._bufferedRequest; - return a ? e.render(a) : n && !e.animating && (e.stop(), e.render({ duration: e.options.hover.animationDuration, lazy: !0 })), e._bufferedRender = !1, e._bufferedRequest = null, e - } - }, - handleEvent: function(t) { - var e, i = this, - n = i.options || {}, - a = n.hover; - return i.lastActive = i.lastActive || [], "mouseout" === t.type ? i.active = [] : i.active = i.getElementsAtEventForMode(t, a.mode, a), ut.callback(n.onHover || n.hover.onHover, [t.native, i.active], i), "mouseup" !== t.type && "click" !== t.type || n.onClick && n.onClick.call(i, t.native, i.active), i.lastActive.length && i.updateHoverStyle(i.lastActive, a.mode, !1), i.active.length && a.mode && i.updateHoverStyle(i.active, a.mode, !0), e = !ut.arrayEquals(i.active, i.lastActive), i.lastActive = i.active, e - } - }), ni.instances = {}; - var ai = ni; - ni.Controller = ni, ni.types = {}, ut.configMerge = ei, ut.scaleMerge = ti; - - function ri() { throw new Error("This method is not implemented: either no adapter can be found or an incomplete integration was provided.") } - - function oi(t) { this.options = t || {} } - ut.extend(oi.prototype, { formats: ri, parse: ri, format: ri, add: ri, diff: ri, startOf: ri, endOf: ri, _create: function(t) { return t } }), oi.override = function(t) { ut.extend(oi.prototype, t) }; - var si = { _date: oi }, - li = { - formatters: { - values: function(t) { return ut.isArray(t) ? t : "" + t }, - linear: function(t, e, i) { - var n = i.length > 3 ? i[2] - i[1] : i[1] - i[0]; - Math.abs(n) > 1 && t !== Math.floor(t) && (n = t - Math.floor(t)); - var a = ut.log10(Math.abs(n)), - r = ""; - if (0 !== t) - if (Math.max(Math.abs(i[0]), Math.abs(i[i.length - 1])) < 1e-4) { - var o = ut.log10(Math.abs(t)); - r = t.toExponential(Math.floor(o) - Math.floor(a)) - } else { - var s = -1 * Math.floor(a); - s = Math.max(Math.min(s, 20), 0), r = t.toFixed(s) - } - else r = "0"; - return r - }, - logarithmic: function(t, e, i) { var n = t / Math.pow(10, Math.floor(ut.log10(t))); return 0 === t ? "0" : 1 === n || 2 === n || 5 === n || 0 === e || e === i.length - 1 ? t.toExponential() : "" } - } - }, - ui = ut.valueOrDefault, - di = ut.valueAtIndexOrDefault; - - function hi(t) { var e, i, n = []; for (e = 0, i = t.length; e < i; ++e) n.push(t[e].label); return n } - - function ci(t, e, i) { return ut.isArray(e) ? ut.longestText(t, i, e) : t.measureText(e).width } - ot._set("scale", { display: !0, position: "left", offset: !1, gridLines: { display: !0, color: "rgba(0, 0, 0, 0.1)", lineWidth: 1, drawBorder: !0, drawOnChartArea: !0, drawTicks: !0, tickMarkLength: 10, zeroLineWidth: 1, zeroLineColor: "rgba(0,0,0,0.25)", zeroLineBorderDash: [], zeroLineBorderDashOffset: 0, offsetGridLines: !1, borderDash: [], borderDashOffset: 0 }, scaleLabel: { display: !1, labelString: "", padding: { top: 4, bottom: 4 } }, ticks: { beginAtZero: !1, minRotation: 0, maxRotation: 50, mirror: !1, padding: 0, reverse: !1, display: !0, autoSkip: !0, autoSkipPadding: 0, labelOffset: 0, callback: li.formatters.values, minor: {}, major: {} } }); - var fi = gt.extend({ - getPadding: function() { return { left: this.paddingLeft || 0, top: this.paddingTop || 0, right: this.paddingRight || 0, bottom: this.paddingBottom || 0 } }, - getTicks: function() { return this._ticks }, - mergeTicksOptions: function() { var t = this.options.ticks; for (var e in !1 === t.minor && (t.minor = { display: !1 }), !1 === t.major && (t.major = { display: !1 }), t) "major" !== e && "minor" !== e && (void 0 === t.minor[e] && (t.minor[e] = t[e]), void 0 === t.major[e] && (t.major[e] = t[e])) }, - beforeUpdate: function() { ut.callback(this.options.beforeUpdate, [this]) }, - update: function(t, e, i) { var n, a, r, o, s, l, u = this; for (u.beforeUpdate(), u.maxWidth = t, u.maxHeight = e, u.margins = ut.extend({ left: 0, right: 0, top: 0, bottom: 0 }, i), u._maxLabelLines = 0, u.longestLabelWidth = 0, u.longestTextCache = u.longestTextCache || {}, u.beforeSetDimensions(), u.setDimensions(), u.afterSetDimensions(), u.beforeDataLimits(), u.determineDataLimits(), u.afterDataLimits(), u.beforeBuildTicks(), s = u.buildTicks() || [], s = u.afterBuildTicks(s) || s, u.beforeTickToLabelConversion(), r = u.convertTicksToLabels(s) || u.ticks, u.afterTickToLabelConversion(), u.ticks = r, n = 0, a = r.length; n < a; ++n) o = r[n], (l = s[n]) ? l.label = o : s.push(l = { label: o, major: !1 }); return u._ticks = s, u.beforeCalculateTickRotation(), u.calculateTickRotation(), u.afterCalculateTickRotation(), u.beforeFit(), u.fit(), u.afterFit(), u.afterUpdate(), u.minSize }, - afterUpdate: function() { ut.callback(this.options.afterUpdate, [this]) }, - beforeSetDimensions: function() { ut.callback(this.options.beforeSetDimensions, [this]) }, - setDimensions: function() { - var t = this; - t.isHorizontal() ? (t.width = t.maxWidth, t.left = 0, t.right = t.width) : (t.height = t.maxHeight, t.top = 0, t.bottom = t.height), t.paddingLeft = 0, t.paddingTop = 0, t.paddingRight = 0, t.paddingBottom = 0 - }, - afterSetDimensions: function() { ut.callback(this.options.afterSetDimensions, [this]) }, - beforeDataLimits: function() { ut.callback(this.options.beforeDataLimits, [this]) }, - determineDataLimits: ut.noop, - afterDataLimits: function() { ut.callback(this.options.afterDataLimits, [this]) }, - beforeBuildTicks: function() { ut.callback(this.options.beforeBuildTicks, [this]) }, - buildTicks: ut.noop, - afterBuildTicks: function(t) { var e = this; return ut.isArray(t) && t.length ? ut.callback(e.options.afterBuildTicks, [e, t]) : (e.ticks = ut.callback(e.options.afterBuildTicks, [e, e.ticks]) || e.ticks, t) }, - beforeTickToLabelConversion: function() { ut.callback(this.options.beforeTickToLabelConversion, [this]) }, - convertTicksToLabels: function() { - var t = this.options.ticks; - this.ticks = this.ticks.map(t.userCallback || t.callback, this) - }, - afterTickToLabelConversion: function() { ut.callback(this.options.afterTickToLabelConversion, [this]) }, - beforeCalculateTickRotation: function() { ut.callback(this.options.beforeCalculateTickRotation, [this]) }, - calculateTickRotation: function() { - var t = this, - e = t.ctx, - i = t.options.ticks, - n = hi(t._ticks), - a = ut.options._parseFont(i); - e.font = a.string; - var r = i.minRotation || 0; - if (n.length && t.options.display && t.isHorizontal()) - for (var o, s = ut.longestText(e, a.string, n, t.longestTextCache), l = s, u = t.getPixelForTick(1) - t.getPixelForTick(0) - 6; l > u && r < i.maxRotation;) { - var d = ut.toRadians(r); - if (o = Math.cos(d), Math.sin(d) * s > t.maxHeight) { r--; break } - r++, l = o * s - } - t.labelRotation = r - }, - afterCalculateTickRotation: function() { ut.callback(this.options.afterCalculateTickRotation, [this]) }, - beforeFit: function() { ut.callback(this.options.beforeFit, [this]) }, - fit: function() { - var t = this, - e = t.minSize = { width: 0, height: 0 }, - i = hi(t._ticks), - n = t.options, - a = n.ticks, - r = n.scaleLabel, - o = n.gridLines, - s = t._isVisible(), - l = n.position, - u = t.isHorizontal(), - d = ut.options._parseFont, - h = d(a), - c = n.gridLines.tickMarkLength; - if (e.width = u ? t.isFullWidth() ? t.maxWidth - t.margins.left - t.margins.right : t.maxWidth : s && o.drawTicks ? c : 0, e.height = u ? s && o.drawTicks ? c : 0 : t.maxHeight, r.display && s) { - var f = d(r), - g = ut.options.toPadding(r.padding), - m = f.lineHeight + g.height; - u ? e.height += m : e.width += m - } - if (a.display && s) { - var p = ut.longestText(t.ctx, h.string, i, t.longestTextCache), - v = ut.numberOfLabelLines(i), - y = .5 * h.size, - b = t.options.ticks.padding; - if (t._maxLabelLines = v, t.longestLabelWidth = p, u) { - var x = ut.toRadians(t.labelRotation), - _ = Math.cos(x), - k = Math.sin(x) * p + h.lineHeight * v + y; - e.height = Math.min(t.maxHeight, e.height + k + b), t.ctx.font = h.string; - var w, M, S = ci(t.ctx, i[0], h.string), - D = ci(t.ctx, i[i.length - 1], h.string), - C = t.getPixelForTick(0) - t.left, - P = t.right - t.getPixelForTick(i.length - 1); - 0 !== t.labelRotation ? (w = "bottom" === l ? _ * S : _ * y, M = "bottom" === l ? _ * y : _ * D) : (w = S / 2, M = D / 2), t.paddingLeft = Math.max(w - C, 0) + 3, t.paddingRight = Math.max(M - P, 0) + 3 - } else a.mirror ? p = 0 : p += b + y, e.width = Math.min(t.maxWidth, e.width + p), t.paddingTop = h.size / 2, t.paddingBottom = h.size / 2 - } - t.handleMargins(), t.width = e.width, t.height = e.height - }, - handleMargins: function() { - var t = this; - t.margins && (t.paddingLeft = Math.max(t.paddingLeft - t.margins.left, 0), t.paddingTop = Math.max(t.paddingTop - t.margins.top, 0), t.paddingRight = Math.max(t.paddingRight - t.margins.right, 0), t.paddingBottom = Math.max(t.paddingBottom - t.margins.bottom, 0)) - }, - afterFit: function() { ut.callback(this.options.afterFit, [this]) }, - isHorizontal: function() { return "top" === this.options.position || "bottom" === this.options.position }, - isFullWidth: function() { return this.options.fullWidth }, - getRightValue: function(t) { - if (ut.isNullOrUndef(t)) return NaN; - if (("number" == typeof t || t instanceof Number) && !isFinite(t)) return NaN; - if (t) - if (this.isHorizontal()) { if (void 0 !== t.x) return this.getRightValue(t.x) } else if (void 0 !== t.y) return this.getRightValue(t.y); - return t - }, - getLabelForIndex: ut.noop, - getPixelForValue: ut.noop, - getValueForPixel: ut.noop, - getPixelForTick: function(t) { - var e = this, - i = e.options.offset; - if (e.isHorizontal()) { - var n = (e.width - (e.paddingLeft + e.paddingRight)) / Math.max(e._ticks.length - (i ? 0 : 1), 1), - a = n * t + e.paddingLeft; - i && (a += n / 2); - var r = e.left + a; - return r += e.isFullWidth() ? e.margins.left : 0 - } - var o = e.height - (e.paddingTop + e.paddingBottom); - return e.top + t * (o / (e._ticks.length - 1)) - }, - getPixelForDecimal: function(t) { - var e = this; - if (e.isHorizontal()) { - var i = (e.width - (e.paddingLeft + e.paddingRight)) * t + e.paddingLeft, - n = e.left + i; - return n += e.isFullWidth() ? e.margins.left : 0 - } - return e.top + t * e.height - }, - getBasePixel: function() { return this.getPixelForValue(this.getBaseValue()) }, - getBaseValue: function() { - var t = this.min, - e = this.max; - return this.beginAtZero ? 0 : t < 0 && e < 0 ? e : t > 0 && e > 0 ? t : 0 - }, - _autoSkip: function(t) { - var e, i, n = this, - a = n.isHorizontal(), - r = n.options.ticks.minor, - o = t.length, - s = !1, - l = r.maxTicksLimit, - u = n._tickSize() * (o - 1), - d = a ? n.width - (n.paddingLeft + n.paddingRight) : n.height - (n.paddingTop + n.PaddingBottom), - h = []; - for (u > d && (s = 1 + Math.floor(u / d)), o > l && (s = Math.max(s, 1 + Math.floor(o / l))), e = 0; e < o; e++) i = t[e], s > 1 && e % s > 0 && delete i.label, h.push(i); - return h - }, - _tickSize: function() { - var t = this, - e = t.isHorizontal(), - i = t.options.ticks.minor, - n = ut.toRadians(t.labelRotation), - a = Math.abs(Math.cos(n)), - r = Math.abs(Math.sin(n)), - o = i.autoSkipPadding || 0, - s = t.longestLabelWidth + o || 0, - l = ut.options._parseFont(i), - u = t._maxLabelLines * l.lineHeight + o || 0; - return e ? u * a > s * r ? s / a : u / r : u * r < s * a ? u / a : s / r - }, - _isVisible: function() { - var t, e, i, n = this.chart, - a = this.options.display; - if ("auto" !== a) return !!a; - for (t = 0, e = n.data.datasets.length; t < e; ++t) - if (n.isDatasetVisible(t) && ((i = n.getDatasetMeta(t)).xAxisID === this.id || i.yAxisID === this.id)) return !0; - return !1 - }, - draw: function(t) { - var e = this, - i = e.options; - if (e._isVisible()) { - var n, a, r, o = e.chart, - s = e.ctx, - l = ot.global.defaultFontColor, - u = i.ticks.minor, - d = i.ticks.major || u, - h = i.gridLines, - c = i.scaleLabel, - f = i.position, - g = 0 !== e.labelRotation, - m = u.mirror, - p = e.isHorizontal(), - v = ut.options._parseFont, - y = u.display && u.autoSkip ? e._autoSkip(e.getTicks()) : e.getTicks(), - b = ui(u.fontColor, l), - x = v(u), - _ = x.lineHeight, - k = ui(d.fontColor, l), - w = v(d), - M = u.padding, - S = u.labelOffset, - D = h.drawTicks ? h.tickMarkLength : 0, - C = ui(c.fontColor, l), - P = v(c), - T = ut.options.toPadding(c.padding), - O = ut.toRadians(e.labelRotation), - I = [], - A = h.drawBorder ? di(h.lineWidth, 0, 0) : 0, - F = ut._alignPixel; - "top" === f ? (n = F(o, e.bottom, A), a = e.bottom - D, r = n - A / 2) : "bottom" === f ? (n = F(o, e.top, A), a = n + A / 2, r = e.top + D) : "left" === f ? (n = F(o, e.right, A), a = e.right - D, r = n - A / 2) : (n = F(o, e.left, A), a = n + A / 2, r = e.left + D); - if (ut.each(y, function(n, s) { - if (!ut.isNullOrUndef(n.label)) { - var l, u, d, c, v, y, b, x, k, w, C, P, T, R, L, W, Y = n.label; - s === e.zeroLineIndex && i.offset === h.offsetGridLines ? (l = h.zeroLineWidth, u = h.zeroLineColor, d = h.zeroLineBorderDash || [], c = h.zeroLineBorderDashOffset || 0) : (l = di(h.lineWidth, s), u = di(h.color, s), d = h.borderDash || [], c = h.borderDashOffset || 0); - var N = ut.isArray(Y) ? Y.length : 1, - z = function(t, e, i) { var n = t.getPixelForTick(e); return i && (1 === t.getTicks().length ? n -= t.isHorizontal() ? Math.max(n - t.left, t.right - n) : Math.max(n - t.top, t.bottom - n) : n -= 0 === e ? (t.getPixelForTick(1) - n) / 2 : (n - t.getPixelForTick(e - 1)) / 2), n }(e, s, h.offsetGridLines); - if (p) { - var V = D + M; - z < e.left - 1e-7 && (u = "rgba(0,0,0,0)"), v = b = k = C = F(o, z, l), y = a, x = r, T = e.getPixelForTick(s) + S, "top" === f ? (w = F(o, t.top, A) + A / 2, P = t.bottom, L = ((g ? 1 : .5) - N) * _, W = g ? "left" : "center", R = e.bottom - V) : (w = t.top, P = F(o, t.bottom, A) - A / 2, L = (g ? 0 : .5) * _, W = g ? "right" : "center", R = e.top + V) - } else { - var H = (m ? 0 : D) + M; - z < e.top - 1e-7 && (u = "rgba(0,0,0,0)"), v = a, b = r, y = x = w = P = F(o, z, l), R = e.getPixelForTick(s) + S, L = (1 - N) * _ / 2, "left" === f ? (k = F(o, t.left, A) + A / 2, C = t.right, W = m ? "left" : "right", T = e.right - H) : (k = t.left, C = F(o, t.right, A) - A / 2, W = m ? "right" : "left", T = e.left + H) - } - I.push({ tx1: v, ty1: y, tx2: b, ty2: x, x1: k, y1: w, x2: C, y2: P, labelX: T, labelY: R, glWidth: l, glColor: u, glBorderDash: d, glBorderDashOffset: c, rotation: -1 * O, label: Y, major: n.major, textOffset: L, textAlign: W }) - } - }), ut.each(I, function(t) { - var e = t.glWidth, - i = t.glColor; - if (h.display && e && i && (s.save(), s.lineWidth = e, s.strokeStyle = i, s.setLineDash && (s.setLineDash(t.glBorderDash), s.lineDashOffset = t.glBorderDashOffset), s.beginPath(), h.drawTicks && (s.moveTo(t.tx1, t.ty1), s.lineTo(t.tx2, t.ty2)), h.drawOnChartArea && (s.moveTo(t.x1, t.y1), s.lineTo(t.x2, t.y2)), s.stroke(), s.restore()), u.display) { - s.save(), s.translate(t.labelX, t.labelY), s.rotate(t.rotation), s.font = t.major ? w.string : x.string, s.fillStyle = t.major ? k : b, s.textBaseline = "middle", s.textAlign = t.textAlign; - var n = t.label, - a = t.textOffset; - if (ut.isArray(n)) - for (var r = 0; r < n.length; ++r) s.fillText("" + n[r], 0, a), a += _; - else s.fillText(n, 0, a); - s.restore() - } - }), c.display) { - var R, L, W = 0, - Y = P.lineHeight / 2; - if (p) R = e.left + (e.right - e.left) / 2, L = "bottom" === f ? e.bottom - Y - T.bottom : e.top + Y + T.top; - else { - var N = "left" === f; - R = N ? e.left + Y + T.top : e.right - Y - T.top, L = e.top + (e.bottom - e.top) / 2, W = N ? -.5 * Math.PI : .5 * Math.PI - } - s.save(), s.translate(R, L), s.rotate(W), s.textAlign = "center", s.textBaseline = "middle", s.fillStyle = C, s.font = P.string, s.fillText(c.labelString, 0, 0), s.restore() - } - if (A) { - var z, V, H, E, B = A, - j = di(h.lineWidth, y.length - 1, 0); - p ? (z = F(o, e.left, B) - B / 2, V = F(o, e.right, j) + j / 2, H = E = n) : (H = F(o, e.top, B) - B / 2, E = F(o, e.bottom, j) + j / 2, z = V = n), s.lineWidth = A, s.strokeStyle = di(h.color, 0), s.beginPath(), s.moveTo(z, H), s.lineTo(V, E), s.stroke() - } - } - } - }), - gi = fi.extend({ - getLabels: function() { var t = this.chart.data; return this.options.labels || (this.isHorizontal() ? t.xLabels : t.yLabels) || t.labels }, - determineDataLimits: function() { - var t, e = this, - i = e.getLabels(); - e.minIndex = 0, e.maxIndex = i.length - 1, void 0 !== e.options.ticks.min && (t = i.indexOf(e.options.ticks.min), e.minIndex = -1 !== t ? t : e.minIndex), void 0 !== e.options.ticks.max && (t = i.indexOf(e.options.ticks.max), e.maxIndex = -1 !== t ? t : e.maxIndex), e.min = i[e.minIndex], e.max = i[e.maxIndex] - }, - buildTicks: function() { - var t = this, - e = t.getLabels(); - t.ticks = 0 === t.minIndex && t.maxIndex === e.length - 1 ? e : e.slice(t.minIndex, t.maxIndex + 1) - }, - getLabelForIndex: function(t, e) { - var i = this, - n = i.chart; - return n.getDatasetMeta(e).controller._getValueScaleId() === i.id ? i.getRightValue(n.data.datasets[e].data[t]) : i.ticks[t - i.minIndex] - }, - getPixelForValue: function(t, e) { - var i, n = this, - a = n.options.offset, - r = Math.max(n.maxIndex + 1 - n.minIndex - (a ? 0 : 1), 1); - if (null != t && (i = n.isHorizontal() ? t.x : t.y), void 0 !== i || void 0 !== t && isNaN(e)) { - t = i || t; - var o = n.getLabels().indexOf(t); - e = -1 !== o ? o : e - } - if (n.isHorizontal()) { - var s = n.width / r, - l = s * (e - n.minIndex); - return a && (l += s / 2), n.left + l - } - var u = n.height / r, - d = u * (e - n.minIndex); - return a && (d += u / 2), n.top + d - }, - getPixelForTick: function(t) { return this.getPixelForValue(this.ticks[t], t + this.minIndex, null) }, - getValueForPixel: function(t) { - var e = this, - i = e.options.offset, - n = Math.max(e._ticks.length - (i ? 0 : 1), 1), - a = e.isHorizontal(), - r = (a ? e.width : e.height) / n; - return t -= a ? e.left : e.top, i && (t -= r / 2), (t <= 0 ? 0 : Math.round(t / r)) + e.minIndex - }, - getBasePixel: function() { return this.bottom } - }), - mi = { position: "bottom" }; - gi._defaults = mi; - var pi = ut.noop, - vi = ut.isNullOrUndef; - var yi = fi.extend({ - getRightValue: function(t) { return "string" == typeof t ? +t : fi.prototype.getRightValue.call(this, t) }, - handleTickRangeOptions: function() { - var t = this, - e = t.options.ticks; - if (e.beginAtZero) { - var i = ut.sign(t.min), - n = ut.sign(t.max); - i < 0 && n < 0 ? t.max = 0 : i > 0 && n > 0 && (t.min = 0) - } - var a = void 0 !== e.min || void 0 !== e.suggestedMin, - r = void 0 !== e.max || void 0 !== e.suggestedMax; - void 0 !== e.min ? t.min = e.min : void 0 !== e.suggestedMin && (null === t.min ? t.min = e.suggestedMin : t.min = Math.min(t.min, e.suggestedMin)), void 0 !== e.max ? t.max = e.max : void 0 !== e.suggestedMax && (null === t.max ? t.max = e.suggestedMax : t.max = Math.max(t.max, e.suggestedMax)), a !== r && t.min >= t.max && (a ? t.max = t.min + 1 : t.min = t.max - 1), t.min === t.max && (t.max++, e.beginAtZero || t.min--) - }, - getTickLimit: function() { - var t, e = this.options.ticks, - i = e.stepSize, - n = e.maxTicksLimit; - return i ? t = Math.ceil(this.max / i) - Math.floor(this.min / i) + 1 : (t = this._computeTickLimit(), n = n || 11), n && (t = Math.min(n, t)), t - }, - _computeTickLimit: function() { return Number.POSITIVE_INFINITY }, - handleDirectionalChanges: pi, - buildTicks: function() { - var t = this, - e = t.options.ticks, - i = t.getTickLimit(), - n = { maxTicks: i = Math.max(2, i), min: e.min, max: e.max, precision: e.precision, stepSize: ut.valueOrDefault(e.fixedStepSize, e.stepSize) }, - a = t.ticks = function(t, e) { - var i, n, a, r, o = [], - s = t.stepSize, - l = s || 1, - u = t.maxTicks - 1, - d = t.min, - h = t.max, - c = t.precision, - f = e.min, - g = e.max, - m = ut.niceNum((g - f) / u / l) * l; - if (m < 1e-14 && vi(d) && vi(h)) return [f, g]; - (r = Math.ceil(g / m) - Math.floor(f / m)) > u && (m = ut.niceNum(r * m / u / l) * l), s || vi(c) ? i = Math.pow(10, ut._decimalPlaces(m)) : (i = Math.pow(10, c), m = Math.ceil(m * i) / i), n = Math.floor(f / m) * m, a = Math.ceil(g / m) * m, s && (!vi(d) && ut.almostWhole(d / m, m / 1e3) && (n = d), !vi(h) && ut.almostWhole(h / m, m / 1e3) && (a = h)), r = (a - n) / m, r = ut.almostEquals(r, Math.round(r), m / 1e3) ? Math.round(r) : Math.ceil(r), n = Math.round(n * i) / i, a = Math.round(a * i) / i, o.push(vi(d) ? n : d); - for (var p = 1; p < r; ++p) o.push(Math.round((n + p * m) * i) / i); - return o.push(vi(h) ? a : h), o - }(n, t); - t.handleDirectionalChanges(), t.max = ut.max(a), t.min = ut.min(a), e.reverse ? (a.reverse(), t.start = t.max, t.end = t.min) : (t.start = t.min, t.end = t.max) - }, - convertTicksToLabels: function() { - var t = this; - t.ticksAsNumbers = t.ticks.slice(), t.zeroLineIndex = t.ticks.indexOf(0), fi.prototype.convertTicksToLabels.call(t) - } - }), - bi = { position: "left", ticks: { callback: li.formatters.linear } }, - xi = yi.extend({ - determineDataLimits: function() { - var t = this, - e = t.options, - i = t.chart, - n = i.data.datasets, - a = t.isHorizontal(); - - function r(e) { return a ? e.xAxisID === t.id : e.yAxisID === t.id } - t.min = null, t.max = null; - var o = e.stacked; - if (void 0 === o && ut.each(n, function(t, e) { - if (!o) { - var n = i.getDatasetMeta(e); - i.isDatasetVisible(e) && r(n) && void 0 !== n.stack && (o = !0) - } - }), e.stacked || o) { - var s = {}; - ut.each(n, function(n, a) { - var o = i.getDatasetMeta(a), - l = [o.type, void 0 === e.stacked && void 0 === o.stack ? a : "", o.stack].join("."); - void 0 === s[l] && (s[l] = { positiveValues: [], negativeValues: [] }); - var u = s[l].positiveValues, - d = s[l].negativeValues; - i.isDatasetVisible(a) && r(o) && ut.each(n.data, function(i, n) { - var a = +t.getRightValue(i); - isNaN(a) || o.data[n].hidden || (u[n] = u[n] || 0, d[n] = d[n] || 0, e.relativePoints ? u[n] = 100 : a < 0 ? d[n] += a : u[n] += a) - }) - }), ut.each(s, function(e) { - var i = e.positiveValues.concat(e.negativeValues), - n = ut.min(i), - a = ut.max(i); - t.min = null === t.min ? n : Math.min(t.min, n), t.max = null === t.max ? a : Math.max(t.max, a) - }) - } else ut.each(n, function(e, n) { - var a = i.getDatasetMeta(n); - i.isDatasetVisible(n) && r(a) && ut.each(e.data, function(e, i) { - var n = +t.getRightValue(e); - isNaN(n) || a.data[i].hidden || (null === t.min ? t.min = n : n < t.min && (t.min = n), null === t.max ? t.max = n : n > t.max && (t.max = n)) - }) - }); - t.min = isFinite(t.min) && !isNaN(t.min) ? t.min : 0, t.max = isFinite(t.max) && !isNaN(t.max) ? t.max : 1, this.handleTickRangeOptions() - }, - _computeTickLimit: function() { var t; return this.isHorizontal() ? Math.ceil(this.width / 40) : (t = ut.options._parseFont(this.options.ticks), Math.ceil(this.height / t.lineHeight)) }, - handleDirectionalChanges: function() { this.isHorizontal() || this.ticks.reverse() }, - getLabelForIndex: function(t, e) { return +this.getRightValue(this.chart.data.datasets[e].data[t]) }, - getPixelForValue: function(t) { - var e = this, - i = e.start, - n = +e.getRightValue(t), - a = e.end - i; - return e.isHorizontal() ? e.left + e.width / a * (n - i) : e.bottom - e.height / a * (n - i) - }, - getValueForPixel: function(t) { - var e = this, - i = e.isHorizontal(), - n = i ? e.width : e.height, - a = (i ? t - e.left : e.bottom - t) / n; - return e.start + (e.end - e.start) * a - }, - getPixelForTick: function(t) { return this.getPixelForValue(this.ticksAsNumbers[t]) } - }), - _i = bi; - xi._defaults = _i; - var ki = ut.valueOrDefault; - var wi = { position: "left", ticks: { callback: li.formatters.logarithmic } }; - - function Mi(t, e) { return ut.isFinite(t) && t >= 0 ? t : e } - var Si = fi.extend({ - determineDataLimits: function() { - var t = this, - e = t.options, - i = t.chart, - n = i.data.datasets, - a = t.isHorizontal(); - - function r(e) { return a ? e.xAxisID === t.id : e.yAxisID === t.id } - t.min = null, t.max = null, t.minNotZero = null; - var o = e.stacked; - if (void 0 === o && ut.each(n, function(t, e) { - if (!o) { - var n = i.getDatasetMeta(e); - i.isDatasetVisible(e) && r(n) && void 0 !== n.stack && (o = !0) - } - }), e.stacked || o) { - var s = {}; - ut.each(n, function(n, a) { - var o = i.getDatasetMeta(a), - l = [o.type, void 0 === e.stacked && void 0 === o.stack ? a : "", o.stack].join("."); - i.isDatasetVisible(a) && r(o) && (void 0 === s[l] && (s[l] = []), ut.each(n.data, function(e, i) { - var n = s[l], - a = +t.getRightValue(e); - isNaN(a) || o.data[i].hidden || a < 0 || (n[i] = n[i] || 0, n[i] += a) - })) - }), ut.each(s, function(e) { - if (e.length > 0) { - var i = ut.min(e), - n = ut.max(e); - t.min = null === t.min ? i : Math.min(t.min, i), t.max = null === t.max ? n : Math.max(t.max, n) - } - }) - } else ut.each(n, function(e, n) { - var a = i.getDatasetMeta(n); - i.isDatasetVisible(n) && r(a) && ut.each(e.data, function(e, i) { - var n = +t.getRightValue(e); - isNaN(n) || a.data[i].hidden || n < 0 || (null === t.min ? t.min = n : n < t.min && (t.min = n), null === t.max ? t.max = n : n > t.max && (t.max = n), 0 !== n && (null === t.minNotZero || n < t.minNotZero) && (t.minNotZero = n)) - }) - }); - this.handleTickRangeOptions() - }, - handleTickRangeOptions: function() { - var t = this, - e = t.options.ticks; - t.min = Mi(e.min, t.min), t.max = Mi(e.max, t.max), t.min === t.max && (0 !== t.min && null !== t.min ? (t.min = Math.pow(10, Math.floor(ut.log10(t.min)) - 1), t.max = Math.pow(10, Math.floor(ut.log10(t.max)) + 1)) : (t.min = 1, t.max = 10)), null === t.min && (t.min = Math.pow(10, Math.floor(ut.log10(t.max)) - 1)), null === t.max && (t.max = 0 !== t.min ? Math.pow(10, Math.floor(ut.log10(t.min)) + 1) : 10), null === t.minNotZero && (t.min > 0 ? t.minNotZero = t.min : t.max < 1 ? t.minNotZero = Math.pow(10, Math.floor(ut.log10(t.max))) : t.minNotZero = 1) - }, - buildTicks: function() { - var t = this, - e = t.options.ticks, - i = !t.isHorizontal(), - n = { min: Mi(e.min), max: Mi(e.max) }, - a = t.ticks = function(t, e) { - var i, n, a = [], - r = ki(t.min, Math.pow(10, Math.floor(ut.log10(e.min)))), - o = Math.floor(ut.log10(e.max)), - s = Math.ceil(e.max / Math.pow(10, o)); - 0 === r ? (i = Math.floor(ut.log10(e.minNotZero)), n = Math.floor(e.minNotZero / Math.pow(10, i)), a.push(r), r = n * Math.pow(10, i)) : (i = Math.floor(ut.log10(r)), n = Math.floor(r / Math.pow(10, i))); - var l = i < 0 ? Math.pow(10, Math.abs(i)) : 1; - do { a.push(r), 10 == ++n && (n = 1, l = ++i >= 0 ? 1 : l), r = Math.round(n * Math.pow(10, i) * l) / l } while (i < o || i === o && n < s); - var u = ki(t.max, r); - return a.push(u), a - }(n, t); - t.max = ut.max(a), t.min = ut.min(a), e.reverse ? (i = !i, t.start = t.max, t.end = t.min) : (t.start = t.min, t.end = t.max), i && a.reverse() - }, - convertTicksToLabels: function() { this.tickValues = this.ticks.slice(), fi.prototype.convertTicksToLabels.call(this) }, - getLabelForIndex: function(t, e) { return +this.getRightValue(this.chart.data.datasets[e].data[t]) }, - getPixelForTick: function(t) { return this.getPixelForValue(this.tickValues[t]) }, - _getFirstTickValue: function(t) { var e = Math.floor(ut.log10(t)); return Math.floor(t / Math.pow(10, e)) * Math.pow(10, e) }, - getPixelForValue: function(t) { - var e, i, n, a, r, o = this, - s = o.options.ticks, - l = s.reverse, - u = ut.log10, - d = o._getFirstTickValue(o.minNotZero), - h = 0; - return t = +o.getRightValue(t), l ? (n = o.end, a = o.start, r = -1) : (n = o.start, a = o.end, r = 1), o.isHorizontal() ? (e = o.width, i = l ? o.right : o.left) : (e = o.height, r *= -1, i = l ? o.top : o.bottom), t !== n && (0 === n && (e -= h = ki(s.fontSize, ot.global.defaultFontSize), n = d), 0 !== t && (h += e / (u(a) - u(n)) * (u(t) - u(n))), i += r * h), i - }, - getValueForPixel: function(t) { - var e, i, n, a, r = this, - o = r.options.ticks, - s = o.reverse, - l = ut.log10, - u = r._getFirstTickValue(r.minNotZero); - if (s ? (i = r.end, n = r.start) : (i = r.start, n = r.end), r.isHorizontal() ? (e = r.width, a = s ? r.right - t : t - r.left) : (e = r.height, a = s ? t - r.top : r.bottom - t), a !== i) { - if (0 === i) { - var d = ki(o.fontSize, ot.global.defaultFontSize); - a -= d, e -= d, i = u - } - a *= l(n) - l(i), a /= e, a = Math.pow(10, l(i) + a) - } - return a - } - }), - Di = wi; - Si._defaults = Di; - var Ci = ut.valueOrDefault, - Pi = ut.valueAtIndexOrDefault, - Ti = ut.options.resolve, - Oi = { display: !0, animate: !0, position: "chartArea", angleLines: { display: !0, color: "rgba(0, 0, 0, 0.1)", lineWidth: 1, borderDash: [], borderDashOffset: 0 }, gridLines: { circular: !1 }, ticks: { showLabelBackdrop: !0, backdropColor: "rgba(255,255,255,0.75)", backdropPaddingY: 2, backdropPaddingX: 2, callback: li.formatters.linear }, pointLabels: { display: !0, fontSize: 10, callback: function(t) { return t } } }; - - function Ii(t) { var e = t.options; return e.angleLines.display || e.pointLabels.display ? t.chart.data.labels.length : 0 } - - function Ai(t) { var e = t.ticks; return e.display && t.display ? Ci(e.fontSize, ot.global.defaultFontSize) + 2 * e.backdropPaddingY : 0 } - - function Fi(t, e, i, n, a) { return t === n || t === a ? { start: e - i / 2, end: e + i / 2 } : t < n || t > a ? { start: e - i, end: e } : { start: e, end: e + i } } - - function Ri(t) { return 0 === t || 180 === t ? "center" : t < 180 ? "left" : "right" } - - function Li(t, e, i, n) { - var a, r, o = i.y + n / 2; - if (ut.isArray(e)) - for (a = 0, r = e.length; a < r; ++a) t.fillText(e[a], i.x, o), o += n; - else t.fillText(e, i.x, o) - } - - function Wi(t, e, i) { 90 === t || 270 === t ? i.y -= e.h / 2 : (t > 270 || t < 90) && (i.y -= e.h) } - - function Yi(t) { return ut.isNumber(t) ? t : 0 } - var Ni = yi.extend({ - setDimensions: function() { - var t = this; - t.width = t.maxWidth, t.height = t.maxHeight, t.paddingTop = Ai(t.options) / 2, t.xCenter = Math.floor(t.width / 2), t.yCenter = Math.floor((t.height - t.paddingTop) / 2), t.drawingArea = Math.min(t.height - t.paddingTop, t.width) / 2 - }, - determineDataLimits: function() { - var t = this, - e = t.chart, - i = Number.POSITIVE_INFINITY, - n = Number.NEGATIVE_INFINITY; - ut.each(e.data.datasets, function(a, r) { - if (e.isDatasetVisible(r)) { - var o = e.getDatasetMeta(r); - ut.each(a.data, function(e, a) { - var r = +t.getRightValue(e); - isNaN(r) || o.data[a].hidden || (i = Math.min(r, i), n = Math.max(r, n)) - }) - } - }), t.min = i === Number.POSITIVE_INFINITY ? 0 : i, t.max = n === Number.NEGATIVE_INFINITY ? 0 : n, t.handleTickRangeOptions() - }, - _computeTickLimit: function() { return Math.ceil(this.drawingArea / Ai(this.options)) }, - convertTicksToLabels: function() { - var t = this; - yi.prototype.convertTicksToLabels.call(t), t.pointLabels = t.chart.data.labels.map(t.options.pointLabels.callback, t) - }, - getLabelForIndex: function(t, e) { return +this.getRightValue(this.chart.data.datasets[e].data[t]) }, - fit: function() { - var t = this.options; - t.display && t.pointLabels.display ? function(t) { - var e, i, n, a = ut.options._parseFont(t.options.pointLabels), - r = { l: 0, r: t.width, t: 0, b: t.height - t.paddingTop }, - o = {}; - t.ctx.font = a.string, t._pointLabelSizes = []; - var s, l, u, d = Ii(t); - for (e = 0; e < d; e++) { - n = t.getPointPosition(e, t.drawingArea + 5), s = t.ctx, l = a.lineHeight, u = t.pointLabels[e] || "", i = ut.isArray(u) ? { w: ut.longestText(s, s.font, u), h: u.length * l } : { w: s.measureText(u).width, h: l }, t._pointLabelSizes[e] = i; - var h = t.getIndexAngle(e), - c = ut.toDegrees(h) % 360, - f = Fi(c, n.x, i.w, 0, 180), - g = Fi(c, n.y, i.h, 90, 270); - f.start < r.l && (r.l = f.start, o.l = h), f.end > r.r && (r.r = f.end, o.r = h), g.start < r.t && (r.t = g.start, o.t = h), g.end > r.b && (r.b = g.end, o.b = h) - } - t.setReductions(t.drawingArea, r, o) - }(this) : this.setCenterPoint(0, 0, 0, 0) - }, - setReductions: function(t, e, i) { - var n = this, - a = e.l / Math.sin(i.l), - r = Math.max(e.r - n.width, 0) / Math.sin(i.r), - o = -e.t / Math.cos(i.t), - s = -Math.max(e.b - (n.height - n.paddingTop), 0) / Math.cos(i.b); - a = Yi(a), r = Yi(r), o = Yi(o), s = Yi(s), n.drawingArea = Math.min(Math.floor(t - (a + r) / 2), Math.floor(t - (o + s) / 2)), n.setCenterPoint(a, r, o, s) - }, - setCenterPoint: function(t, e, i, n) { - var a = this, - r = a.width - e - a.drawingArea, - o = t + a.drawingArea, - s = i + a.drawingArea, - l = a.height - a.paddingTop - n - a.drawingArea; - a.xCenter = Math.floor((o + r) / 2 + a.left), a.yCenter = Math.floor((s + l) / 2 + a.top + a.paddingTop) - }, - getIndexAngle: function(t) { return t * (2 * Math.PI / Ii(this)) + (this.chart.options && this.chart.options.startAngle ? this.chart.options.startAngle : 0) * Math.PI * 2 / 360 }, - getDistanceFromCenterForValue: function(t) { var e = this; if (null === t) return 0; var i = e.drawingArea / (e.max - e.min); return e.options.ticks.reverse ? (e.max - t) * i : (t - e.min) * i }, - getPointPosition: function(t, e) { var i = this.getIndexAngle(t) - Math.PI / 2; return { x: Math.cos(i) * e + this.xCenter, y: Math.sin(i) * e + this.yCenter } }, - getPointPositionForValue: function(t, e) { return this.getPointPosition(t, this.getDistanceFromCenterForValue(e)) }, - getBasePosition: function() { - var t = this.min, - e = this.max; - return this.getPointPositionForValue(0, this.beginAtZero ? 0 : t < 0 && e < 0 ? e : t > 0 && e > 0 ? t : 0) - }, - draw: function() { - var t = this, - e = t.options, - i = e.gridLines, - n = e.ticks; - if (e.display) { - var a = t.ctx, - r = this.getIndexAngle(0), - o = ut.options._parseFont(n); - (e.angleLines.display || e.pointLabels.display) && function(t) { - var e = t.ctx, - i = t.options, - n = i.angleLines, - a = i.gridLines, - r = i.pointLabels, - o = Ci(n.lineWidth, a.lineWidth), - s = Ci(n.color, a.color), - l = Ai(i); - e.save(), e.lineWidth = o, e.strokeStyle = s, e.setLineDash && (e.setLineDash(Ti([n.borderDash, a.borderDash, []])), e.lineDashOffset = Ti([n.borderDashOffset, a.borderDashOffset, 0])); - var u = t.getDistanceFromCenterForValue(i.ticks.reverse ? t.min : t.max), - d = ut.options._parseFont(r); - e.font = d.string, e.textBaseline = "middle"; - for (var h = Ii(t) - 1; h >= 0; h--) { - if (n.display && o && s) { - var c = t.getPointPosition(h, u); - e.beginPath(), e.moveTo(t.xCenter, t.yCenter), e.lineTo(c.x, c.y), e.stroke() - } - if (r.display) { - var f = 0 === h ? l / 2 : 0, - g = t.getPointPosition(h, u + f + 5), - m = Pi(r.fontColor, h, ot.global.defaultFontColor); - e.fillStyle = m; - var p = t.getIndexAngle(h), - v = ut.toDegrees(p); - e.textAlign = Ri(v), Wi(v, t._pointLabelSizes[h], g), Li(e, t.pointLabels[h] || "", g, d.lineHeight) - } - } - e.restore() - }(t), ut.each(t.ticks, function(e, s) { - if (s > 0 || n.reverse) { - var l = t.getDistanceFromCenterForValue(t.ticksAsNumbers[s]); - if (i.display && 0 !== s && function(t, e, i, n) { - var a, r = t.ctx, - o = e.circular, - s = Ii(t), - l = Pi(e.color, n - 1), - u = Pi(e.lineWidth, n - 1); - if ((o || s) && l && u) { - if (r.save(), r.strokeStyle = l, r.lineWidth = u, r.setLineDash && (r.setLineDash(e.borderDash || []), r.lineDashOffset = e.borderDashOffset || 0), r.beginPath(), o) r.arc(t.xCenter, t.yCenter, i, 0, 2 * Math.PI); - else { a = t.getPointPosition(0, i), r.moveTo(a.x, a.y); for (var d = 1; d < s; d++) a = t.getPointPosition(d, i), r.lineTo(a.x, a.y) } - r.closePath(), r.stroke(), r.restore() - } - }(t, i, l, s), n.display) { - var u = Ci(n.fontColor, ot.global.defaultFontColor); - if (a.font = o.string, a.save(), a.translate(t.xCenter, t.yCenter), a.rotate(r), n.showLabelBackdrop) { - var d = a.measureText(e).width; - a.fillStyle = n.backdropColor, a.fillRect(-d / 2 - n.backdropPaddingX, -l - o.size / 2 - n.backdropPaddingY, d + 2 * n.backdropPaddingX, o.size + 2 * n.backdropPaddingY) - } - a.textAlign = "center", a.textBaseline = "middle", a.fillStyle = u, a.fillText(e, 0, -l), a.restore() - } - } - }) - } - } - }), - zi = Oi; - Ni._defaults = zi; - var Vi = ut.valueOrDefault, - Hi = Number.MIN_SAFE_INTEGER || -9007199254740991, - Ei = Number.MAX_SAFE_INTEGER || 9007199254740991, - Bi = { millisecond: { common: !0, size: 1, steps: [1, 2, 5, 10, 20, 50, 100, 250, 500] }, second: { common: !0, size: 1e3, steps: [1, 2, 5, 10, 15, 30] }, minute: { common: !0, size: 6e4, steps: [1, 2, 5, 10, 15, 30] }, hour: { common: !0, size: 36e5, steps: [1, 2, 3, 6, 12] }, day: { common: !0, size: 864e5, steps: [1, 2, 5] }, week: { common: !1, size: 6048e5, steps: [1, 2, 3, 4] }, month: { common: !0, size: 2628e6, steps: [1, 2, 3] }, quarter: { common: !1, size: 7884e6, steps: [1, 2, 3, 4] }, year: { common: !0, size: 3154e7 } }, - ji = Object.keys(Bi); - - function Ui(t, e) { return t - e } - - function Gi(t) { - var e, i, n, a = {}, - r = []; - for (e = 0, i = t.length; e < i; ++e) a[n = t[e]] || (a[n] = !0, r.push(n)); - return r - } - - function qi(t, e, i, n) { - var a = function(t, e, i) { - for (var n, a, r, o = 0, s = t.length - 1; o >= 0 && o <= s;) { - if (a = t[(n = o + s >> 1) - 1] || null, r = t[n], !a) return { lo: null, hi: r }; - if (r[e] < i) o = n + 1; - else { - if (!(a[e] > i)) return { lo: a, hi: r }; - s = n - 1 - } - } - return { lo: r, hi: null } - }(t, e, i), - r = a.lo ? a.hi ? a.lo : t[t.length - 2] : t[0], - o = a.lo ? a.hi ? a.hi : t[t.length - 1] : t[1], - s = o[e] - r[e], - l = s ? (i - r[e]) / s : 0, - u = (o[n] - r[n]) * l; - return r[n] + u - } - - function Zi(t, e) { - var i = t._adapter, - n = t.options.time, - a = n.parser, - r = a || n.format, - o = e; - return "function" == typeof a && (o = a(o)), ut.isFinite(o) || (o = "string" == typeof r ? i.parse(o, r) : i.parse(o)), null !== o ? +o : (a || "function" != typeof r || (o = r(e), ut.isFinite(o) || (o = i.parse(o))), o) - } - - function $i(t, e) { - if (ut.isNullOrUndef(e)) return null; - var i = t.options.time, - n = Zi(t, t.getRightValue(e)); - return null === n ? n : (i.round && (n = +t._adapter.startOf(n, i.round)), n) - } - - function Xi(t) { - for (var e = ji.indexOf(t) + 1, i = ji.length; e < i; ++e) - if (Bi[ji[e]].common) return ji[e] - } - - function Ki(t, e, i, n) { - var a, r = t._adapter, - o = t.options, - s = o.time, - l = s.unit || function(t, e, i, n) { - var a, r, o, s = ji.length; - for (a = ji.indexOf(t); a < s - 1; ++a) - if (o = (r = Bi[ji[a]]).steps ? r.steps[r.steps.length - 1] : Ei, r.common && Math.ceil((i - e) / (o * r.size)) <= n) return ji[a]; - return ji[s - 1] - }(s.minUnit, e, i, n), - u = Xi(l), - d = Vi(s.stepSize, s.unitStepSize), - h = "week" === l && s.isoWeekday, - c = o.ticks.major.enabled, - f = Bi[l], - g = e, - m = i, - p = []; - for (d || (d = function(t, e, i, n) { - var a, r, o, s = e - t, - l = Bi[i], - u = l.size, - d = l.steps; - if (!d) return Math.ceil(s / (n * u)); - for (a = 0, r = d.length; a < r && (o = d[a], !(Math.ceil(s / (u * o)) <= n)); ++a); - return o - }(e, i, l, n)), h && (g = +r.startOf(g, "isoWeek", h), m = +r.startOf(m, "isoWeek", h)), g = +r.startOf(g, h ? "day" : l), (m = +r.startOf(m, h ? "day" : l)) < i && (m = +r.add(m, 1, l)), a = g, c && u && !h && !s.round && (a = +r.startOf(a, u), a = +r.add(a, ~~((g - a) / (f.size * d)) * d, l)); a < m; a = +r.add(a, d, l)) p.push(+a); - return p.push(+a), p - } - var Ji = fi.extend({ - initialize: function() { this.mergeTicksOptions(), fi.prototype.initialize.call(this) }, - update: function() { - var t = this.options, - e = t.time || (t.time = {}), - i = this._adapter = new si._date(t.adapters.date); - return e.format && console.warn("options.time.format is deprecated and replaced by options.time.parser."), ut.mergeIf(e.displayFormats, i.formats()), fi.prototype.update.apply(this, arguments) - }, - getRightValue: function(t) { return t && void 0 !== t.t && (t = t.t), fi.prototype.getRightValue.call(this, t) }, - determineDataLimits: function() { - var t, e, i, n, a, r, o = this, - s = o.chart, - l = o._adapter, - u = o.options.time, - d = u.unit || "day", - h = Ei, - c = Hi, - f = [], - g = [], - m = [], - p = s.data.labels || []; - for (t = 0, i = p.length; t < i; ++t) m.push($i(o, p[t])); - for (t = 0, i = (s.data.datasets || []).length; t < i; ++t) - if (s.isDatasetVisible(t)) - if (a = s.data.datasets[t].data, ut.isObject(a[0])) - for (g[t] = [], e = 0, n = a.length; e < n; ++e) r = $i(o, a[e]), f.push(r), g[t][e] = r; - else { - for (e = 0, n = m.length; e < n; ++e) f.push(m[e]); - g[t] = m.slice(0) - } - else g[t] = []; - m.length && (m = Gi(m).sort(Ui), h = Math.min(h, m[0]), c = Math.max(c, m[m.length - 1])), f.length && (f = Gi(f).sort(Ui), h = Math.min(h, f[0]), c = Math.max(c, f[f.length - 1])), h = $i(o, u.min) || h, c = $i(o, u.max) || c, h = h === Ei ? +l.startOf(Date.now(), d) : h, c = c === Hi ? +l.endOf(Date.now(), d) + 1 : c, o.min = Math.min(h, c), o.max = Math.max(h + 1, c), o._horizontal = o.isHorizontal(), o._table = [], o._timestamps = { data: f, datasets: g, labels: m } - }, - buildTicks: function() { - var t, e, i, n = this, - a = n.min, - r = n.max, - o = n.options, - s = o.time, - l = [], - u = []; - switch (o.ticks.source) { - case "data": - l = n._timestamps.data; - break; - case "labels": - l = n._timestamps.labels; - break; - case "auto": - default: - l = Ki(n, a, r, n.getLabelCapacity(a)) - } - for ("ticks" === o.bounds && l.length && (a = l[0], r = l[l.length - 1]), a = $i(n, s.min) || a, r = $i(n, s.max) || r, t = 0, e = l.length; t < e; ++t)(i = l[t]) >= a && i <= r && u.push(i); - return n.min = a, n.max = r, n._unit = s.unit || function(t, e, i, n, a) { - var r, o; - for (r = ji.length - 1; r >= ji.indexOf(i); r--) - if (o = ji[r], Bi[o].common && t._adapter.diff(a, n, o) >= e.length) return o; - return ji[i ? ji.indexOf(i) : 0] - }(n, u, s.minUnit, n.min, n.max), n._majorUnit = Xi(n._unit), n._table = function(t, e, i, n) { - if ("linear" === n || !t.length) return [{ time: e, pos: 0 }, { time: i, pos: 1 }]; - var a, r, o, s, l, u = [], - d = [e]; - for (a = 0, r = t.length; a < r; ++a)(s = t[a]) > e && s < i && d.push(s); - for (d.push(i), a = 0, r = d.length; a < r; ++a) l = d[a + 1], o = d[a - 1], s = d[a], void 0 !== o && void 0 !== l && Math.round((l + o) / 2) === s || u.push({ time: s, pos: a / (r - 1) }); - return u - }(n._timestamps.data, a, r, o.distribution), n._offsets = function(t, e, i, n, a) { - var r, o, s = 0, - l = 0; - return a.offset && e.length && (a.time.min || (r = qi(t, "time", e[0], "pos"), s = 1 === e.length ? 1 - r : (qi(t, "time", e[1], "pos") - r) / 2), a.time.max || (o = qi(t, "time", e[e.length - 1], "pos"), l = 1 === e.length ? o : (o - qi(t, "time", e[e.length - 2], "pos")) / 2)), { start: s, end: l } - }(n._table, u, 0, 0, o), o.ticks.reverse && u.reverse(), - function(t, e, i) { var n, a, r, o, s = []; for (n = 0, a = e.length; n < a; ++n) r = e[n], o = !!i && r === +t._adapter.startOf(r, i), s.push({ value: r, major: o }); return s }(n, u, n._majorUnit) - }, - getLabelForIndex: function(t, e) { - var i = this, - n = i._adapter, - a = i.chart.data, - r = i.options.time, - o = a.labels && t < a.labels.length ? a.labels[t] : "", - s = a.datasets[e].data[t]; - return ut.isObject(s) && (o = i.getRightValue(s)), r.tooltipFormat ? n.format(Zi(i, o), r.tooltipFormat) : "string" == typeof o ? o : n.format(Zi(i, o), r.displayFormats.datetime) - }, - tickFormatFunction: function(t, e, i, n) { - var a = this._adapter, - r = this.options, - o = r.time.displayFormats, - s = o[this._unit], - l = this._majorUnit, - u = o[l], - d = +a.startOf(t, l), - h = r.ticks.major, - c = h.enabled && l && u && t === d, - f = a.format(t, n || (c ? u : s)), - g = c ? h : r.ticks.minor, - m = Vi(g.callback, g.userCallback); - return m ? m(f, e, i) : f - }, - convertTicksToLabels: function(t) { var e, i, n = []; for (e = 0, i = t.length; e < i; ++e) n.push(this.tickFormatFunction(t[e].value, e, t)); return n }, - getPixelForOffset: function(t) { - var e = this, - i = e.options.ticks.reverse, - n = e._horizontal ? e.width : e.height, - a = e._horizontal ? i ? e.right : e.left : i ? e.bottom : e.top, - r = qi(e._table, "time", t, "pos"), - o = n * (e._offsets.start + r) / (e._offsets.start + 1 + e._offsets.end); - return i ? a - o : a + o - }, - getPixelForValue: function(t, e, i) { var n = null; if (void 0 !== e && void 0 !== i && (n = this._timestamps.datasets[i][e]), null === n && (n = $i(this, t)), null !== n) return this.getPixelForOffset(n) }, - getPixelForTick: function(t) { var e = this.getTicks(); return t >= 0 && t < e.length ? this.getPixelForOffset(e[t].value) : null }, - getValueForPixel: function(t) { - var e = this, - i = e._horizontal ? e.width : e.height, - n = e._horizontal ? e.left : e.top, - a = (i ? (t - n) / i : 0) * (e._offsets.start + 1 + e._offsets.start) - e._offsets.end, - r = qi(e._table, "pos", a, "time"); - return e._adapter._create(r) - }, - getLabelWidth: function(t) { - var e = this.options.ticks, - i = this.ctx.measureText(t).width, - n = ut.toRadians(e.maxRotation), - a = Math.cos(n), - r = Math.sin(n); - return i * a + Vi(e.fontSize, ot.global.defaultFontSize) * r - }, - getLabelCapacity: function(t) { - var e = this, - i = e.options.time.displayFormats.millisecond, - n = e.tickFormatFunction(t, 0, [], i), - a = e.getLabelWidth(n), - r = e.isHorizontal() ? e.width : e.height, - o = Math.floor(r / a); - return o > 0 ? o : 1 - } - }), - Qi = { position: "bottom", distribution: "linear", bounds: "data", adapters: {}, time: { parser: !1, format: !1, unit: !1, round: !1, displayFormat: !1, isoWeekday: !1, minUnit: "millisecond", displayFormats: {} }, ticks: { autoSkip: !1, source: "auto", major: { enabled: !1 } } }; - Ji._defaults = Qi; - var tn, en = { category: gi, linear: xi, logarithmic: Si, radialLinear: Ni, time: Ji }, - nn = (function(t, e) { - t.exports = function() { - var e, i; - - function n() { return e.apply(null, arguments) } - - function a(t) { return t instanceof Array || "[object Array]" === Object.prototype.toString.call(t) } - - function r(t) { return null != t && "[object Object]" === Object.prototype.toString.call(t) } - - function o(t) { return void 0 === t } - - function s(t) { return "number" == typeof t || "[object Number]" === Object.prototype.toString.call(t) } - - function l(t) { return t instanceof Date || "[object Date]" === Object.prototype.toString.call(t) } - - function u(t, e) { var i, n = []; for (i = 0; i < t.length; ++i) n.push(e(t[i], i)); return n } - - function d(t, e) { return Object.prototype.hasOwnProperty.call(t, e) } - - function h(t, e) { for (var i in e) d(e, i) && (t[i] = e[i]); return d(e, "toString") && (t.toString = e.toString), d(e, "valueOf") && (t.valueOf = e.valueOf), t } - - function c(t, e, i, n) { return Oe(t, e, i, n, !0).utc() } - - function f(t) { return null == t._pf && (t._pf = { empty: !1, unusedTokens: [], unusedInput: [], overflow: -2, charsLeftOver: 0, nullInput: !1, invalidMonth: null, invalidFormat: !1, userInvalidated: !1, iso: !1, parsedDateParts: [], meridiem: null, rfc2822: !1, weekdayMismatch: !1 }), t._pf } - - function g(t) { - if (null == t._isValid) { - var e = f(t), - n = i.call(e.parsedDateParts, function(t) { return null != t }), - a = !isNaN(t._d.getTime()) && e.overflow < 0 && !e.empty && !e.invalidMonth && !e.invalidWeekday && !e.weekdayMismatch && !e.nullInput && !e.invalidFormat && !e.userInvalidated && (!e.meridiem || e.meridiem && n); - if (t._strict && (a = a && 0 === e.charsLeftOver && 0 === e.unusedTokens.length && void 0 === e.bigHour), null != Object.isFrozen && Object.isFrozen(t)) return a; - t._isValid = a - } - return t._isValid - } - - function m(t) { var e = c(NaN); return null != t ? h(f(e), t) : f(e).userInvalidated = !0, e } - i = Array.prototype.some ? Array.prototype.some : function(t) { - for (var e = Object(this), i = e.length >>> 0, n = 0; n < i; n++) - if (n in e && t.call(this, e[n], n, e)) return !0; - return !1 - }; - var p = n.momentProperties = []; - - function v(t, e) { - var i, n, a; - if (o(e._isAMomentObject) || (t._isAMomentObject = e._isAMomentObject), o(e._i) || (t._i = e._i), o(e._f) || (t._f = e._f), o(e._l) || (t._l = e._l), o(e._strict) || (t._strict = e._strict), o(e._tzm) || (t._tzm = e._tzm), o(e._isUTC) || (t._isUTC = e._isUTC), o(e._offset) || (t._offset = e._offset), o(e._pf) || (t._pf = f(e)), o(e._locale) || (t._locale = e._locale), p.length > 0) - for (i = 0; i < p.length; i++) n = p[i], o(a = e[n]) || (t[n] = a); - return t - } - var y = !1; - - function b(t) { v(this, t), this._d = new Date(null != t._d ? t._d.getTime() : NaN), this.isValid() || (this._d = new Date(NaN)), !1 === y && (y = !0, n.updateOffset(this), y = !1) } - - function x(t) { return t instanceof b || null != t && null != t._isAMomentObject } - - function _(t) { return t < 0 ? Math.ceil(t) || 0 : Math.floor(t) } - - function k(t) { - var e = +t, - i = 0; - return 0 !== e && isFinite(e) && (i = _(e)), i - } - - function w(t, e, i) { - var n, a = Math.min(t.length, e.length), - r = Math.abs(t.length - e.length), - o = 0; - for (n = 0; n < a; n++)(i && t[n] !== e[n] || !i && k(t[n]) !== k(e[n])) && o++; - return o + r - } - - function M(t) {!1 === n.suppressDeprecationWarnings && "undefined" != typeof console && console.warn && console.warn("Deprecation warning: " + t) } - - function S(t, e) { - var i = !0; - return h(function() { - if (null != n.deprecationHandler && n.deprecationHandler(null, t), i) { - for (var a, r = [], o = 0; o < arguments.length; o++) { - if (a = "", "object" == typeof arguments[o]) { - for (var s in a += "\n[" + o + "] ", arguments[0]) a += s + ": " + arguments[0][s] + ", "; - a = a.slice(0, -2) - } else a = arguments[o]; - r.push(a) - } - M(t + "\nArguments: " + Array.prototype.slice.call(r).join("") + "\n" + (new Error).stack), i = !1 - } - return e.apply(this, arguments) - }, e) - } - var D, C = {}; - - function P(t, e) { null != n.deprecationHandler && n.deprecationHandler(t, e), C[t] || (M(e), C[t] = !0) } - - function T(t) { return t instanceof Function || "[object Function]" === Object.prototype.toString.call(t) } - - function O(t, e) { var i, n = h({}, t); for (i in e) d(e, i) && (r(t[i]) && r(e[i]) ? (n[i] = {}, h(n[i], t[i]), h(n[i], e[i])) : null != e[i] ? n[i] = e[i] : delete n[i]); for (i in t) d(t, i) && !d(e, i) && r(t[i]) && (n[i] = h({}, n[i])); return n } - - function I(t) { null != t && this.set(t) } - n.suppressDeprecationWarnings = !1, n.deprecationHandler = null, D = Object.keys ? Object.keys : function(t) { var e, i = []; for (e in t) d(t, e) && i.push(e); return i }; - var A = {}; - - function F(t, e) { - var i = t.toLowerCase(); - A[i] = A[i + "s"] = A[e] = t - } - - function R(t) { return "string" == typeof t ? A[t] || A[t.toLowerCase()] : void 0 } - - function L(t) { var e, i, n = {}; for (i in t) d(t, i) && (e = R(i)) && (n[e] = t[i]); return n } - var W = {}; - - function Y(t, e) { W[t] = e } - - function N(t, e, i) { - var n = "" + Math.abs(t), - a = e - n.length, - r = t >= 0; - return (r ? i ? "+" : "" : "-") + Math.pow(10, Math.max(0, a)).toString().substr(1) + n - } - var z = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, - V = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, - H = {}, - E = {}; - - function B(t, e, i, n) { var a = n; "string" == typeof n && (a = function() { return this[n]() }), t && (E[t] = a), e && (E[e[0]] = function() { return N(a.apply(this, arguments), e[1], e[2]) }), i && (E[i] = function() { return this.localeData().ordinal(a.apply(this, arguments), t) }) } - - function j(t, e) { return t.isValid() ? (e = U(e, t.localeData()), H[e] = H[e] || function(t) { var e, i, n, a = t.match(z); for (e = 0, i = a.length; e < i; e++) E[a[e]] ? a[e] = E[a[e]] : a[e] = (n = a[e]).match(/\[[\s\S]/) ? n.replace(/^\[|\]$/g, "") : n.replace(/\\/g, ""); return function(e) { var n, r = ""; for (n = 0; n < i; n++) r += T(a[n]) ? a[n].call(e, t) : a[n]; return r } }(e), H[e](t)) : t.localeData().invalidDate() } - - function U(t, e) { - var i = 5; - - function n(t) { return e.longDateFormat(t) || t } - for (V.lastIndex = 0; i >= 0 && V.test(t);) t = t.replace(V, n), V.lastIndex = 0, i -= 1; - return t - } - var G = /\d/, - q = /\d\d/, - Z = /\d{3}/, - $ = /\d{4}/, - X = /[+-]?\d{6}/, - K = /\d\d?/, - J = /\d\d\d\d?/, - Q = /\d\d\d\d\d\d?/, - tt = /\d{1,3}/, - et = /\d{1,4}/, - it = /[+-]?\d{1,6}/, - nt = /\d+/, - at = /[+-]?\d+/, - rt = /Z|[+-]\d\d:?\d\d/gi, - ot = /Z|[+-]\d\d(?::?\d\d)?/gi, - st = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i, - lt = {}; - - function ut(t, e, i) { lt[t] = T(e) ? e : function(t, n) { return t && i ? i : e } } - - function dt(t, e) { return d(lt, t) ? lt[t](e._strict, e._locale) : new RegExp(ht(t.replace("\\", "").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function(t, e, i, n, a) { return e || i || n || a }))) } - - function ht(t) { return t.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&") } - var ct = {}; - - function ft(t, e) { var i, n = e; for ("string" == typeof t && (t = [t]), s(e) && (n = function(t, i) { i[e] = k(t) }), i = 0; i < t.length; i++) ct[t[i]] = n } - - function gt(t, e) { ft(t, function(t, i, n, a) { n._w = n._w || {}, e(t, n._w, n, a) }) } - - function mt(t, e, i) { null != e && d(ct, t) && ct[t](e, i._a, i, t) } - var pt = 0, - vt = 1, - yt = 2, - bt = 3, - xt = 4, - _t = 5, - kt = 6, - wt = 7, - Mt = 8; - - function St(t) { return Dt(t) ? 366 : 365 } - - function Dt(t) { return t % 4 == 0 && t % 100 != 0 || t % 400 == 0 } - B("Y", 0, 0, function() { var t = this.year(); return t <= 9999 ? "" + t : "+" + t }), B(0, ["YY", 2], 0, function() { return this.year() % 100 }), B(0, ["YYYY", 4], 0, "year"), B(0, ["YYYYY", 5], 0, "year"), B(0, ["YYYYYY", 6, !0], 0, "year"), F("year", "y"), Y("year", 1), ut("Y", at), ut("YY", K, q), ut("YYYY", et, $), ut("YYYYY", it, X), ut("YYYYYY", it, X), ft(["YYYYY", "YYYYYY"], pt), ft("YYYY", function(t, e) { e[pt] = 2 === t.length ? n.parseTwoDigitYear(t) : k(t) }), ft("YY", function(t, e) { e[pt] = n.parseTwoDigitYear(t) }), ft("Y", function(t, e) { e[pt] = parseInt(t, 10) }), n.parseTwoDigitYear = function(t) { return k(t) + (k(t) > 68 ? 1900 : 2e3) }; - var Ct, Pt = Tt("FullYear", !0); - - function Tt(t, e) { return function(i) { return null != i ? (It(this, t, i), n.updateOffset(this, e), this) : Ot(this, t) } } - - function Ot(t, e) { return t.isValid() ? t._d["get" + (t._isUTC ? "UTC" : "") + e]() : NaN } - - function It(t, e, i) { t.isValid() && !isNaN(i) && ("FullYear" === e && Dt(t.year()) && 1 === t.month() && 29 === t.date() ? t._d["set" + (t._isUTC ? "UTC" : "") + e](i, t.month(), At(i, t.month())) : t._d["set" + (t._isUTC ? "UTC" : "") + e](i)) } - - function At(t, e) { if (isNaN(t) || isNaN(e)) return NaN; var i, n = (e % (i = 12) + i) % i; return t += (e - n) / 12, 1 === n ? Dt(t) ? 29 : 28 : 31 - n % 7 % 2 } - Ct = Array.prototype.indexOf ? Array.prototype.indexOf : function(t) { - var e; - for (e = 0; e < this.length; ++e) - if (this[e] === t) return e; - return -1 - }, B("M", ["MM", 2], "Mo", function() { return this.month() + 1 }), B("MMM", 0, 0, function(t) { return this.localeData().monthsShort(this, t) }), B("MMMM", 0, 0, function(t) { return this.localeData().months(this, t) }), F("month", "M"), Y("month", 8), ut("M", K), ut("MM", K, q), ut("MMM", function(t, e) { return e.monthsShortRegex(t) }), ut("MMMM", function(t, e) { return e.monthsRegex(t) }), ft(["M", "MM"], function(t, e) { e[vt] = k(t) - 1 }), ft(["MMM", "MMMM"], function(t, e, i, n) { - var a = i._locale.monthsParse(t, n, i._strict); - null != a ? e[vt] = a : f(i).invalidMonth = t - }); - var Ft = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, - Rt = "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), - Lt = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"); - - function Wt(t, e) { - var i; - if (!t.isValid()) return t; - if ("string" == typeof e) - if (/^\d+$/.test(e)) e = k(e); - else if (!s(e = t.localeData().monthsParse(e))) return t; - return i = Math.min(t.date(), At(t.year(), e)), t._d["set" + (t._isUTC ? "UTC" : "") + "Month"](e, i), t - } - - function Yt(t) { return null != t ? (Wt(this, t), n.updateOffset(this, !0), this) : Ot(this, "Month") } - var Nt = st, - zt = st; - - function Vt() { - function t(t, e) { return e.length - t.length } - var e, i, n = [], - a = [], - r = []; - for (e = 0; e < 12; e++) i = c([2e3, e]), n.push(this.monthsShort(i, "")), a.push(this.months(i, "")), r.push(this.months(i, "")), r.push(this.monthsShort(i, "")); - for (n.sort(t), a.sort(t), r.sort(t), e = 0; e < 12; e++) n[e] = ht(n[e]), a[e] = ht(a[e]); - for (e = 0; e < 24; e++) r[e] = ht(r[e]); - this._monthsRegex = new RegExp("^(" + r.join("|") + ")", "i"), this._monthsShortRegex = this._monthsRegex, this._monthsStrictRegex = new RegExp("^(" + a.join("|") + ")", "i"), this._monthsShortStrictRegex = new RegExp("^(" + n.join("|") + ")", "i") - } - - function Ht(t) { - var e; - if (t < 100 && t >= 0) { - var i = Array.prototype.slice.call(arguments); - i[0] = t + 400, e = new Date(Date.UTC.apply(null, i)), isFinite(e.getUTCFullYear()) && e.setUTCFullYear(t) - } else e = new Date(Date.UTC.apply(null, arguments)); - return e - } - - function Et(t, e, i) { - var n = 7 + e - i, - a = (7 + Ht(t, 0, n).getUTCDay() - e) % 7; - return -a + n - 1 - } - - function Bt(t, e, i, n, a) { - var r, o, s = (7 + i - n) % 7, - l = Et(t, n, a), - u = 1 + 7 * (e - 1) + s + l; - return u <= 0 ? o = St(r = t - 1) + u : u > St(t) ? (r = t + 1, o = u - St(t)) : (r = t, o = u), { year: r, dayOfYear: o } - } - - function jt(t, e, i) { - var n, a, r = Et(t.year(), e, i), - o = Math.floor((t.dayOfYear() - r - 1) / 7) + 1; - return o < 1 ? (a = t.year() - 1, n = o + Ut(a, e, i)) : o > Ut(t.year(), e, i) ? (n = o - Ut(t.year(), e, i), a = t.year() + 1) : (a = t.year(), n = o), { week: n, year: a } - } - - function Ut(t, e, i) { - var n = Et(t, e, i), - a = Et(t + 1, e, i); - return (St(t) - n + a) / 7 - } - - function Gt(t, e) { return t.slice(e, 7).concat(t.slice(0, e)) } - B("w", ["ww", 2], "wo", "week"), B("W", ["WW", 2], "Wo", "isoWeek"), F("week", "w"), F("isoWeek", "W"), Y("week", 5), Y("isoWeek", 5), ut("w", K), ut("ww", K, q), ut("W", K), ut("WW", K, q), gt(["w", "ww", "W", "WW"], function(t, e, i, n) { e[n.substr(0, 1)] = k(t) }), B("d", 0, "do", "day"), B("dd", 0, 0, function(t) { return this.localeData().weekdaysMin(this, t) }), B("ddd", 0, 0, function(t) { return this.localeData().weekdaysShort(this, t) }), B("dddd", 0, 0, function(t) { return this.localeData().weekdays(this, t) }), B("e", 0, 0, "weekday"), B("E", 0, 0, "isoWeekday"), F("day", "d"), F("weekday", "e"), F("isoWeekday", "E"), Y("day", 11), Y("weekday", 11), Y("isoWeekday", 11), ut("d", K), ut("e", K), ut("E", K), ut("dd", function(t, e) { return e.weekdaysMinRegex(t) }), ut("ddd", function(t, e) { return e.weekdaysShortRegex(t) }), ut("dddd", function(t, e) { return e.weekdaysRegex(t) }), gt(["dd", "ddd", "dddd"], function(t, e, i, n) { - var a = i._locale.weekdaysParse(t, n, i._strict); - null != a ? e.d = a : f(i).invalidWeekday = t - }), gt(["d", "e", "E"], function(t, e, i, n) { e[n] = k(t) }); - var qt = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), - Zt = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), - $t = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), - Xt = st, - Kt = st, - Jt = st; - - function Qt() { - function t(t, e) { return e.length - t.length } - var e, i, n, a, r, o = [], - s = [], - l = [], - u = []; - for (e = 0; e < 7; e++) i = c([2e3, 1]).day(e), n = this.weekdaysMin(i, ""), a = this.weekdaysShort(i, ""), r = this.weekdays(i, ""), o.push(n), s.push(a), l.push(r), u.push(n), u.push(a), u.push(r); - for (o.sort(t), s.sort(t), l.sort(t), u.sort(t), e = 0; e < 7; e++) s[e] = ht(s[e]), l[e] = ht(l[e]), u[e] = ht(u[e]); - this._weekdaysRegex = new RegExp("^(" + u.join("|") + ")", "i"), this._weekdaysShortRegex = this._weekdaysRegex, this._weekdaysMinRegex = this._weekdaysRegex, this._weekdaysStrictRegex = new RegExp("^(" + l.join("|") + ")", "i"), this._weekdaysShortStrictRegex = new RegExp("^(" + s.join("|") + ")", "i"), this._weekdaysMinStrictRegex = new RegExp("^(" + o.join("|") + ")", "i") - } - - function te() { return this.hours() % 12 || 12 } - - function ee(t, e) { B(t, 0, 0, function() { return this.localeData().meridiem(this.hours(), this.minutes(), e) }) } - - function ie(t, e) { return e._meridiemParse } - B("H", ["HH", 2], 0, "hour"), B("h", ["hh", 2], 0, te), B("k", ["kk", 2], 0, function() { return this.hours() || 24 }), B("hmm", 0, 0, function() { return "" + te.apply(this) + N(this.minutes(), 2) }), B("hmmss", 0, 0, function() { return "" + te.apply(this) + N(this.minutes(), 2) + N(this.seconds(), 2) }), B("Hmm", 0, 0, function() { return "" + this.hours() + N(this.minutes(), 2) }), B("Hmmss", 0, 0, function() { return "" + this.hours() + N(this.minutes(), 2) + N(this.seconds(), 2) }), ee("a", !0), ee("A", !1), F("hour", "h"), Y("hour", 13), ut("a", ie), ut("A", ie), ut("H", K), ut("h", K), ut("k", K), ut("HH", K, q), ut("hh", K, q), ut("kk", K, q), ut("hmm", J), ut("hmmss", Q), ut("Hmm", J), ut("Hmmss", Q), ft(["H", "HH"], bt), ft(["k", "kk"], function(t, e, i) { - var n = k(t); - e[bt] = 24 === n ? 0 : n - }), ft(["a", "A"], function(t, e, i) { i._isPm = i._locale.isPM(t), i._meridiem = t }), ft(["h", "hh"], function(t, e, i) { e[bt] = k(t), f(i).bigHour = !0 }), ft("hmm", function(t, e, i) { - var n = t.length - 2; - e[bt] = k(t.substr(0, n)), e[xt] = k(t.substr(n)), f(i).bigHour = !0 - }), ft("hmmss", function(t, e, i) { - var n = t.length - 4, - a = t.length - 2; - e[bt] = k(t.substr(0, n)), e[xt] = k(t.substr(n, 2)), e[_t] = k(t.substr(a)), f(i).bigHour = !0 - }), ft("Hmm", function(t, e, i) { - var n = t.length - 2; - e[bt] = k(t.substr(0, n)), e[xt] = k(t.substr(n)) - }), ft("Hmmss", function(t, e, i) { - var n = t.length - 4, - a = t.length - 2; - e[bt] = k(t.substr(0, n)), e[xt] = k(t.substr(n, 2)), e[_t] = k(t.substr(a)) - }); - var ne, ae = Tt("Hours", !0), - re = { calendar: { sameDay: "[Today at] LT", nextDay: "[Tomorrow at] LT", nextWeek: "dddd [at] LT", lastDay: "[Yesterday at] LT", lastWeek: "[Last] dddd [at] LT", sameElse: "L" }, longDateFormat: { LTS: "h:mm:ss A", LT: "h:mm A", L: "MM/DD/YYYY", LL: "MMMM D, YYYY", LLL: "MMMM D, YYYY h:mm A", LLLL: "dddd, MMMM D, YYYY h:mm A" }, invalidDate: "Invalid date", ordinal: "%d", dayOfMonthOrdinalParse: /\d{1,2}/, relativeTime: { future: "in %s", past: "%s ago", s: "a few seconds", ss: "%d seconds", m: "a minute", mm: "%d minutes", h: "an hour", hh: "%d hours", d: "a day", dd: "%d days", M: "a month", MM: "%d months", y: "a year", yy: "%d years" }, months: Rt, monthsShort: Lt, week: { dow: 0, doy: 6 }, weekdays: qt, weekdaysMin: $t, weekdaysShort: Zt, meridiemParse: /[ap]\.?m?\.?/i }, - oe = {}, - se = {}; - - function le(t) { return t ? t.toLowerCase().replace("_", "-") : t } - - function ue(e) { - var i = null; - if (!oe[e] && t && t.exports) try { - i = ne._abbr; - var n = _e; - n("./locale/" + e), de(i) - } catch (t) {} - return oe[e] - } - - function de(t, e) { var i; return t && ((i = o(e) ? ce(t) : he(t, e)) ? ne = i : "undefined" != typeof console && console.warn && console.warn("Locale " + t + " not found. Did you forget to load it?")), ne._abbr } - - function he(t, e) { - if (null !== e) { - var i, n = re; - if (e.abbr = t, null != oe[t]) P("defineLocaleOverride", "use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."), n = oe[t]._config; - else if (null != e.parentLocale) - if (null != oe[e.parentLocale]) n = oe[e.parentLocale]._config; - else { - if (null == (i = ue(e.parentLocale))) return se[e.parentLocale] || (se[e.parentLocale] = []), se[e.parentLocale].push({ name: t, config: e }), null; - n = i._config - } - return oe[t] = new I(O(n, e)), se[t] && se[t].forEach(function(t) { he(t.name, t.config) }), de(t), oe[t] - } - return delete oe[t], null - } - - function ce(t) { - var e; - if (t && t._locale && t._locale._abbr && (t = t._locale._abbr), !t) return ne; - if (!a(t)) { - if (e = ue(t)) return e; - t = [t] - } - return function(t) { - for (var e, i, n, a, r = 0; r < t.length;) { - for (a = le(t[r]).split("-"), e = a.length, i = (i = le(t[r + 1])) ? i.split("-") : null; e > 0;) { - if (n = ue(a.slice(0, e).join("-"))) return n; - if (i && i.length >= e && w(a, i, !0) >= e - 1) break; - e-- - } - r++ - } - return ne - }(t) - } - - function fe(t) { var e, i = t._a; return i && -2 === f(t).overflow && (e = i[vt] < 0 || i[vt] > 11 ? vt : i[yt] < 1 || i[yt] > At(i[pt], i[vt]) ? yt : i[bt] < 0 || i[bt] > 24 || 24 === i[bt] && (0 !== i[xt] || 0 !== i[_t] || 0 !== i[kt]) ? bt : i[xt] < 0 || i[xt] > 59 ? xt : i[_t] < 0 || i[_t] > 59 ? _t : i[kt] < 0 || i[kt] > 999 ? kt : -1, f(t)._overflowDayOfYear && (e < pt || e > yt) && (e = yt), f(t)._overflowWeeks && -1 === e && (e = wt), f(t)._overflowWeekday && -1 === e && (e = Mt), f(t).overflow = e), t } - - function ge(t, e, i) { return null != t ? t : null != e ? e : i } - - function me(t) { - var e, i, a, r, o, s = []; - if (!t._d) { - for (a = function(t) { var e = new Date(n.now()); return t._useUTC ? [e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate()] : [e.getFullYear(), e.getMonth(), e.getDate()] }(t), t._w && null == t._a[yt] && null == t._a[vt] && function(t) { - var e, i, n, a, r, o, s, l; - if (null != (e = t._w).GG || null != e.W || null != e.E) r = 1, o = 4, i = ge(e.GG, t._a[pt], jt(Ie(), 1, 4).year), n = ge(e.W, 1), ((a = ge(e.E, 1)) < 1 || a > 7) && (l = !0); - else { - r = t._locale._week.dow, o = t._locale._week.doy; - var u = jt(Ie(), r, o); - i = ge(e.gg, t._a[pt], u.year), n = ge(e.w, u.week), null != e.d ? ((a = e.d) < 0 || a > 6) && (l = !0) : null != e.e ? (a = e.e + r, (e.e < 0 || e.e > 6) && (l = !0)) : a = r - } - n < 1 || n > Ut(i, r, o) ? f(t)._overflowWeeks = !0 : null != l ? f(t)._overflowWeekday = !0 : (s = Bt(i, n, a, r, o), t._a[pt] = s.year, t._dayOfYear = s.dayOfYear) - }(t), null != t._dayOfYear && (o = ge(t._a[pt], a[pt]), (t._dayOfYear > St(o) || 0 === t._dayOfYear) && (f(t)._overflowDayOfYear = !0), i = Ht(o, 0, t._dayOfYear), t._a[vt] = i.getUTCMonth(), t._a[yt] = i.getUTCDate()), e = 0; e < 3 && null == t._a[e]; ++e) t._a[e] = s[e] = a[e]; - for (; e < 7; e++) t._a[e] = s[e] = null == t._a[e] ? 2 === e ? 1 : 0 : t._a[e]; - 24 === t._a[bt] && 0 === t._a[xt] && 0 === t._a[_t] && 0 === t._a[kt] && (t._nextDay = !0, t._a[bt] = 0), t._d = (t._useUTC ? Ht : function(t, e, i, n, a, r, o) { var s; return t < 100 && t >= 0 ? (s = new Date(t + 400, e, i, n, a, r, o), isFinite(s.getFullYear()) && s.setFullYear(t)) : s = new Date(t, e, i, n, a, r, o), s }).apply(null, s), r = t._useUTC ? t._d.getUTCDay() : t._d.getDay(), null != t._tzm && t._d.setUTCMinutes(t._d.getUTCMinutes() - t._tzm), t._nextDay && (t._a[bt] = 24), t._w && void 0 !== t._w.d && t._w.d !== r && (f(t).weekdayMismatch = !0) - } - } - var pe = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/, - ve = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/, - ye = /Z|[+-]\d\d(?::?\d\d)?/, - be = [ - ["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/], - ["YYYY-MM-DD", /\d{4}-\d\d-\d\d/], - ["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/], - ["GGGG-[W]WW", /\d{4}-W\d\d/, !1], - ["YYYY-DDD", /\d{4}-\d{3}/], - ["YYYY-MM", /\d{4}-\d\d/, !1], - ["YYYYYYMMDD", /[+-]\d{10}/], - ["YYYYMMDD", /\d{8}/], - ["GGGG[W]WWE", /\d{4}W\d{3}/], - ["GGGG[W]WW", /\d{4}W\d{2}/, !1], - ["YYYYDDD", /\d{7}/] - ], - xe = [ - ["HH:mm:ss.SSSS", /\d\d:\d\d:\d\d\.\d+/], - ["HH:mm:ss,SSSS", /\d\d:\d\d:\d\d,\d+/], - ["HH:mm:ss", /\d\d:\d\d:\d\d/], - ["HH:mm", /\d\d:\d\d/], - ["HHmmss.SSSS", /\d\d\d\d\d\d\.\d+/], - ["HHmmss,SSSS", /\d\d\d\d\d\d,\d+/], - ["HHmmss", /\d\d\d\d\d\d/], - ["HHmm", /\d\d\d\d/], - ["HH", /\d\d/] - ], - ke = /^\/?Date\((\-?\d+)/i; - - function we(t) { - var e, i, n, a, r, o, s = t._i, - l = pe.exec(s) || ve.exec(s); - if (l) { - for (f(t).iso = !0, e = 0, i = be.length; e < i; e++) - if (be[e][1].exec(l[1])) { a = be[e][0], n = !1 !== be[e][2]; break } - if (null == a) return void(t._isValid = !1); - if (l[3]) { - for (e = 0, i = xe.length; e < i; e++) - if (xe[e][1].exec(l[3])) { r = (l[2] || " ") + xe[e][0]; break } - if (null == r) return void(t._isValid = !1) - } - if (!n && null != r) return void(t._isValid = !1); - if (l[4]) { - if (!ye.exec(l[4])) return void(t._isValid = !1); - o = "Z" - } - t._f = a + (r || "") + (o || ""), Pe(t) - } else t._isValid = !1 - } - var Me = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/; - - function Se(t) { var e = parseInt(t, 10); return e <= 49 ? 2e3 + e : e <= 999 ? 1900 + e : e } - var De = { UT: 0, GMT: 0, EDT: -240, EST: -300, CDT: -300, CST: -360, MDT: -360, MST: -420, PDT: -420, PST: -480 }; - - function Ce(t) { - var e, i, n, a, r, o, s, l = Me.exec(t._i.replace(/\([^)]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").replace(/^\s\s*/, "").replace(/\s\s*$/, "")); - if (l) { - var u = (e = l[4], i = l[3], n = l[2], a = l[5], r = l[6], o = l[7], s = [Se(e), Lt.indexOf(i), parseInt(n, 10), parseInt(a, 10), parseInt(r, 10)], o && s.push(parseInt(o, 10)), s); - if (! function(t, e, i) { - if (t) { - var n = Zt.indexOf(t), - a = new Date(e[0], e[1], e[2]).getDay(); - if (n !== a) return f(i).weekdayMismatch = !0, i._isValid = !1, !1 - } - return !0 - }(l[1], u, t)) return; - t._a = u, t._tzm = function(t, e, i) { - if (t) return De[t]; - if (e) return 0; - var n = parseInt(i, 10), - a = n % 100, - r = (n - a) / 100; - return 60 * r + a - }(l[8], l[9], l[10]), t._d = Ht.apply(null, t._a), t._d.setUTCMinutes(t._d.getUTCMinutes() - t._tzm), f(t).rfc2822 = !0 - } else t._isValid = !1 - } - - function Pe(t) { - if (t._f !== n.ISO_8601) - if (t._f !== n.RFC_2822) { - t._a = [], f(t).empty = !0; - var e, i, a, r, o, s = "" + t._i, - l = s.length, - u = 0; - for (a = U(t._f, t._locale).match(z) || [], e = 0; e < a.length; e++) r = a[e], (i = (s.match(dt(r, t)) || [])[0]) && ((o = s.substr(0, s.indexOf(i))).length > 0 && f(t).unusedInput.push(o), s = s.slice(s.indexOf(i) + i.length), u += i.length), E[r] ? (i ? f(t).empty = !1 : f(t).unusedTokens.push(r), mt(r, i, t)) : t._strict && !i && f(t).unusedTokens.push(r); - f(t).charsLeftOver = l - u, s.length > 0 && f(t).unusedInput.push(s), t._a[bt] <= 12 && !0 === f(t).bigHour && t._a[bt] > 0 && (f(t).bigHour = void 0), f(t).parsedDateParts = t._a.slice(0), f(t).meridiem = t._meridiem, t._a[bt] = (d = t._locale, h = t._a[bt], null == (c = t._meridiem) ? h : null != d.meridiemHour ? d.meridiemHour(h, c) : null != d.isPM ? ((g = d.isPM(c)) && h < 12 && (h += 12), g || 12 !== h || (h = 0), h) : h), me(t), fe(t) - } else Ce(t); - else we(t); - var d, h, c, g - } - - function Te(t) { - var e = t._i, - i = t._f; - return t._locale = t._locale || ce(t._l), null === e || void 0 === i && "" === e ? m({ nullInput: !0 }) : ("string" == typeof e && (t._i = e = t._locale.preparse(e)), x(e) ? new b(fe(e)) : (l(e) ? t._d = e : a(i) ? function(t) { - var e, i, n, a, r; - if (0 === t._f.length) return f(t).invalidFormat = !0, void(t._d = new Date(NaN)); - for (a = 0; a < t._f.length; a++) r = 0, e = v({}, t), null != t._useUTC && (e._useUTC = t._useUTC), e._f = t._f[a], Pe(e), g(e) && (r += f(e).charsLeftOver, r += 10 * f(e).unusedTokens.length, f(e).score = r, (null == n || r < n) && (n = r, i = e)); - h(t, i || e) - }(t) : i ? Pe(t) : function(t) { - var e = t._i; - o(e) ? t._d = new Date(n.now()) : l(e) ? t._d = new Date(e.valueOf()) : "string" == typeof e ? function(t) { - var e = ke.exec(t._i); - null === e ? (we(t), !1 === t._isValid && (delete t._isValid, Ce(t), !1 === t._isValid && (delete t._isValid, n.createFromInputFallback(t)))) : t._d = new Date(+e[1]) - }(t) : a(e) ? (t._a = u(e.slice(0), function(t) { return parseInt(t, 10) }), me(t)) : r(e) ? function(t) { - if (!t._d) { - var e = L(t._i); - t._a = u([e.year, e.month, e.day || e.date, e.hour, e.minute, e.second, e.millisecond], function(t) { return t && parseInt(t, 10) }), me(t) - } - }(t) : s(e) ? t._d = new Date(e) : n.createFromInputFallback(t) - }(t), g(t) || (t._d = null), t)) - } - - function Oe(t, e, i, n, o) { - var s, l = {}; - return !0 !== i && !1 !== i || (n = i, i = void 0), (r(t) && function(t) { - if (Object.getOwnPropertyNames) return 0 === Object.getOwnPropertyNames(t).length; - var e; - for (e in t) - if (t.hasOwnProperty(e)) return !1; - return !0 - }(t) || a(t) && 0 === t.length) && (t = void 0), l._isAMomentObject = !0, l._useUTC = l._isUTC = o, l._l = i, l._i = t, l._f = e, l._strict = n, (s = new b(fe(Te(l))))._nextDay && (s.add(1, "d"), s._nextDay = void 0), s - } - - function Ie(t, e, i, n) { return Oe(t, e, i, n, !1) } - n.createFromInputFallback = S("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", function(t) { t._d = new Date(t._i + (t._useUTC ? " UTC" : "")) }), n.ISO_8601 = function() {}, n.RFC_2822 = function() {}; - var Ae = S("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", function() { var t = Ie.apply(null, arguments); return this.isValid() && t.isValid() ? t < this ? this : t : m() }), - Fe = S("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", function() { var t = Ie.apply(null, arguments); return this.isValid() && t.isValid() ? t > this ? this : t : m() }); - - function Re(t, e) { var i, n; if (1 === e.length && a(e[0]) && (e = e[0]), !e.length) return Ie(); for (i = e[0], n = 1; n < e.length; ++n) e[n].isValid() && !e[n][t](i) || (i = e[n]); return i } - var Le = ["year", "quarter", "month", "week", "day", "hour", "minute", "second", "millisecond"]; - - function We(t) { - var e = L(t), - i = e.year || 0, - n = e.quarter || 0, - a = e.month || 0, - r = e.week || e.isoWeek || 0, - o = e.day || 0, - s = e.hour || 0, - l = e.minute || 0, - u = e.second || 0, - d = e.millisecond || 0; - this._isValid = function(t) { - for (var e in t) - if (-1 === Ct.call(Le, e) || null != t[e] && isNaN(t[e])) return !1; - for (var i = !1, n = 0; n < Le.length; ++n) - if (t[Le[n]]) { - if (i) return !1; - parseFloat(t[Le[n]]) !== k(t[Le[n]]) && (i = !0) - } - return !0 - }(e), this._milliseconds = +d + 1e3 * u + 6e4 * l + 1e3 * s * 60 * 60, this._days = +o + 7 * r, this._months = +a + 3 * n + 12 * i, this._data = {}, this._locale = ce(), this._bubble() - } - - function Ye(t) { return t instanceof We } - - function Ne(t) { return t < 0 ? -1 * Math.round(-1 * t) : Math.round(t) } - - function ze(t, e) { - B(t, 0, 0, function() { - var t = this.utcOffset(), - i = "+"; - return t < 0 && (t = -t, i = "-"), i + N(~~(t / 60), 2) + e + N(~~t % 60, 2) - }) - } - ze("Z", ":"), ze("ZZ", ""), ut("Z", ot), ut("ZZ", ot), ft(["Z", "ZZ"], function(t, e, i) { i._useUTC = !0, i._tzm = He(ot, t) }); - var Ve = /([\+\-]|\d\d)/gi; - - function He(t, e) { - var i = (e || "").match(t); - if (null === i) return null; - var n = i[i.length - 1] || [], - a = (n + "").match(Ve) || ["-", 0, 0], - r = 60 * a[1] + k(a[2]); - return 0 === r ? 0 : "+" === a[0] ? r : -r - } - - function Ee(t, e) { var i, a; return e._isUTC ? (i = e.clone(), a = (x(t) || l(t) ? t.valueOf() : Ie(t).valueOf()) - i.valueOf(), i._d.setTime(i._d.valueOf() + a), n.updateOffset(i, !1), i) : Ie(t).local() } - - function Be(t) { return 15 * -Math.round(t._d.getTimezoneOffset() / 15) } - - function je() { return !!this.isValid() && this._isUTC && 0 === this._offset } - n.updateOffset = function() {}; - var Ue = /^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/, - Ge = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; - - function qe(t, e) { - var i, n, a, r, o, l, u = t, - h = null; - return Ye(t) ? u = { ms: t._milliseconds, d: t._days, M: t._months } : s(t) ? (u = {}, e ? u[e] = t : u.milliseconds = t) : (h = Ue.exec(t)) ? (i = "-" === h[1] ? -1 : 1, u = { y: 0, d: k(h[yt]) * i, h: k(h[bt]) * i, m: k(h[xt]) * i, s: k(h[_t]) * i, ms: k(Ne(1e3 * h[kt])) * i }) : (h = Ge.exec(t)) ? (i = "-" === h[1] ? -1 : 1, u = { y: Ze(h[2], i), M: Ze(h[3], i), w: Ze(h[4], i), d: Ze(h[5], i), h: Ze(h[6], i), m: Ze(h[7], i), s: Ze(h[8], i) }) : null == u ? u = {} : "object" == typeof u && ("from" in u || "to" in u) && (r = Ie(u.from), o = Ie(u.to), a = r.isValid() && o.isValid() ? (o = Ee(o, r), r.isBefore(o) ? l = $e(r, o) : ((l = $e(o, r)).milliseconds = -l.milliseconds, l.months = -l.months), l) : { milliseconds: 0, months: 0 }, (u = {}).ms = a.milliseconds, u.M = a.months), n = new We(u), Ye(t) && d(t, "_locale") && (n._locale = t._locale), n - } - - function Ze(t, e) { var i = t && parseFloat(t.replace(",", ".")); return (isNaN(i) ? 0 : i) * e } - - function $e(t, e) { var i = {}; return i.months = e.month() - t.month() + 12 * (e.year() - t.year()), t.clone().add(i.months, "M").isAfter(e) && --i.months, i.milliseconds = +e - +t.clone().add(i.months, "M"), i } - - function Xe(t, e) { return function(i, n) { var a; return null === n || isNaN(+n) || (P(e, "moment()." + e + "(period, number) is deprecated. Please use moment()." + e + "(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."), a = i, i = n, n = a), Ke(this, qe(i = "string" == typeof i ? +i : i, n), t), this } } - - function Ke(t, e, i, a) { - var r = e._milliseconds, - o = Ne(e._days), - s = Ne(e._months); - t.isValid() && (a = null == a || a, s && Wt(t, Ot(t, "Month") + s * i), o && It(t, "Date", Ot(t, "Date") + o * i), r && t._d.setTime(t._d.valueOf() + r * i), a && n.updateOffset(t, o || s)) - } - qe.fn = We.prototype, qe.invalid = function() { return qe(NaN) }; - var Je = Xe(1, "add"), - Qe = Xe(-1, "subtract"); - - function ti(t, e) { - var i, n, a = 12 * (e.year() - t.year()) + (e.month() - t.month()), - r = t.clone().add(a, "months"); - return e - r < 0 ? (i = t.clone().add(a - 1, "months"), n = (e - r) / (r - i)) : (i = t.clone().add(a + 1, "months"), n = (e - r) / (i - r)), -(a + n) || 0 - } - - function ei(t) { var e; return void 0 === t ? this._locale._abbr : (null != (e = ce(t)) && (this._locale = e), this) } - n.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ", n.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]"; - var ii = S("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", function(t) { return void 0 === t ? this.localeData() : this.locale(t) }); - - function ni() { return this._locale } - var ai = 1e3, - ri = 60 * ai, - oi = 60 * ri, - si = 3506328 * oi; - - function li(t, e) { return (t % e + e) % e } - - function ui(t, e, i) { return t < 100 && t >= 0 ? new Date(t + 400, e, i) - si : new Date(t, e, i).valueOf() } - - function di(t, e, i) { return t < 100 && t >= 0 ? Date.UTC(t + 400, e, i) - si : Date.UTC(t, e, i) } - - function hi(t, e) { B(0, [t, t.length], 0, e) } - - function ci(t, e, i, n, a) { - var r; - return null == t ? jt(this, n, a).year : (r = Ut(t, n, a), e > r && (e = r), function(t, e, i, n, a) { - var r = Bt(t, e, i, n, a), - o = Ht(r.year, 0, r.dayOfYear); - return this.year(o.getUTCFullYear()), this.month(o.getUTCMonth()), this.date(o.getUTCDate()), this - }.call(this, t, e, i, n, a)) - } - B(0, ["gg", 2], 0, function() { return this.weekYear() % 100 }), B(0, ["GG", 2], 0, function() { return this.isoWeekYear() % 100 }), hi("gggg", "weekYear"), hi("ggggg", "weekYear"), hi("GGGG", "isoWeekYear"), hi("GGGGG", "isoWeekYear"), F("weekYear", "gg"), F("isoWeekYear", "GG"), Y("weekYear", 1), Y("isoWeekYear", 1), ut("G", at), ut("g", at), ut("GG", K, q), ut("gg", K, q), ut("GGGG", et, $), ut("gggg", et, $), ut("GGGGG", it, X), ut("ggggg", it, X), gt(["gggg", "ggggg", "GGGG", "GGGGG"], function(t, e, i, n) { e[n.substr(0, 2)] = k(t) }), gt(["gg", "GG"], function(t, e, i, a) { e[a] = n.parseTwoDigitYear(t) }), B("Q", 0, "Qo", "quarter"), F("quarter", "Q"), Y("quarter", 7), ut("Q", G), ft("Q", function(t, e) { e[vt] = 3 * (k(t) - 1) }), B("D", ["DD", 2], "Do", "date"), F("date", "D"), Y("date", 9), ut("D", K), ut("DD", K, q), ut("Do", function(t, e) { return t ? e._dayOfMonthOrdinalParse || e._ordinalParse : e._dayOfMonthOrdinalParseLenient }), ft(["D", "DD"], yt), ft("Do", function(t, e) { e[yt] = k(t.match(K)[0]) }); - var fi = Tt("Date", !0); - B("DDD", ["DDDD", 3], "DDDo", "dayOfYear"), F("dayOfYear", "DDD"), Y("dayOfYear", 4), ut("DDD", tt), ut("DDDD", Z), ft(["DDD", "DDDD"], function(t, e, i) { i._dayOfYear = k(t) }), B("m", ["mm", 2], 0, "minute"), F("minute", "m"), Y("minute", 14), ut("m", K), ut("mm", K, q), ft(["m", "mm"], xt); - var gi = Tt("Minutes", !1); - B("s", ["ss", 2], 0, "second"), F("second", "s"), Y("second", 15), ut("s", K), ut("ss", K, q), ft(["s", "ss"], _t); - var mi, pi = Tt("Seconds", !1); - for (B("S", 0, 0, function() { return ~~(this.millisecond() / 100) }), B(0, ["SS", 2], 0, function() { return ~~(this.millisecond() / 10) }), B(0, ["SSS", 3], 0, "millisecond"), B(0, ["SSSS", 4], 0, function() { return 10 * this.millisecond() }), B(0, ["SSSSS", 5], 0, function() { return 100 * this.millisecond() }), B(0, ["SSSSSS", 6], 0, function() { return 1e3 * this.millisecond() }), B(0, ["SSSSSSS", 7], 0, function() { return 1e4 * this.millisecond() }), B(0, ["SSSSSSSS", 8], 0, function() { return 1e5 * this.millisecond() }), B(0, ["SSSSSSSSS", 9], 0, function() { return 1e6 * this.millisecond() }), F("millisecond", "ms"), Y("millisecond", 16), ut("S", tt, G), ut("SS", tt, q), ut("SSS", tt, Z), mi = "SSSS"; mi.length <= 9; mi += "S") ut(mi, nt); - - function vi(t, e) { e[kt] = k(1e3 * ("0." + t)) } - for (mi = "S"; mi.length <= 9; mi += "S") ft(mi, vi); - var yi = Tt("Milliseconds", !1); - B("z", 0, 0, "zoneAbbr"), B("zz", 0, 0, "zoneName"); - var bi = b.prototype; - - function xi(t) { return t } - bi.add = Je, bi.calendar = function(t, e) { - var i = t || Ie(), - a = Ee(i, this).startOf("day"), - r = n.calendarFormat(this, a) || "sameElse", - o = e && (T(e[r]) ? e[r].call(this, i) : e[r]); - return this.format(o || this.localeData().calendar(r, this, Ie(i))) - }, bi.clone = function() { return new b(this) }, bi.diff = function(t, e, i) { - var n, a, r; - if (!this.isValid()) return NaN; - if (!(n = Ee(t, this)).isValid()) return NaN; - switch (a = 6e4 * (n.utcOffset() - this.utcOffset()), e = R(e)) { - case "year": - r = ti(this, n) / 12; - break; - case "month": - r = ti(this, n); - break; - case "quarter": - r = ti(this, n) / 3; - break; - case "second": - r = (this - n) / 1e3; - break; - case "minute": - r = (this - n) / 6e4; - break; - case "hour": - r = (this - n) / 36e5; - break; - case "day": - r = (this - n - a) / 864e5; - break; - case "week": - r = (this - n - a) / 6048e5; - break; - default: - r = this - n - } - return i ? r : _(r) - }, bi.endOf = function(t) { - var e; - if (void 0 === (t = R(t)) || "millisecond" === t || !this.isValid()) return this; - var i = this._isUTC ? di : ui; - switch (t) { - case "year": - e = i(this.year() + 1, 0, 1) - 1; - break; - case "quarter": - e = i(this.year(), this.month() - this.month() % 3 + 3, 1) - 1; - break; - case "month": - e = i(this.year(), this.month() + 1, 1) - 1; - break; - case "week": - e = i(this.year(), this.month(), this.date() - this.weekday() + 7) - 1; - break; - case "isoWeek": - e = i(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1; - break; - case "day": - case "date": - e = i(this.year(), this.month(), this.date() + 1) - 1; - break; - case "hour": - e = this._d.valueOf(), e += oi - li(e + (this._isUTC ? 0 : this.utcOffset() * ri), oi) - 1; - break; - case "minute": - e = this._d.valueOf(), e += ri - li(e, ri) - 1; - break; - case "second": - e = this._d.valueOf(), e += ai - li(e, ai) - 1 - } - return this._d.setTime(e), n.updateOffset(this, !0), this - }, bi.format = function(t) { t || (t = this.isUtc() ? n.defaultFormatUtc : n.defaultFormat); var e = j(this, t); return this.localeData().postformat(e) }, bi.from = function(t, e) { return this.isValid() && (x(t) && t.isValid() || Ie(t).isValid()) ? qe({ to: this, from: t }).locale(this.locale()).humanize(!e) : this.localeData().invalidDate() }, bi.fromNow = function(t) { return this.from(Ie(), t) }, bi.to = function(t, e) { return this.isValid() && (x(t) && t.isValid() || Ie(t).isValid()) ? qe({ from: this, to: t }).locale(this.locale()).humanize(!e) : this.localeData().invalidDate() }, bi.toNow = function(t) { return this.to(Ie(), t) }, bi.get = function(t) { return T(this[t = R(t)]) ? this[t]() : this }, bi.invalidAt = function() { return f(this).overflow }, bi.isAfter = function(t, e) { var i = x(t) ? t : Ie(t); return !(!this.isValid() || !i.isValid()) && ("millisecond" === (e = R(e) || "millisecond") ? this.valueOf() > i.valueOf() : i.valueOf() < this.clone().startOf(e).valueOf()) }, bi.isBefore = function(t, e) { var i = x(t) ? t : Ie(t); return !(!this.isValid() || !i.isValid()) && ("millisecond" === (e = R(e) || "millisecond") ? this.valueOf() < i.valueOf() : this.clone().endOf(e).valueOf() < i.valueOf()) }, bi.isBetween = function(t, e, i, n) { - var a = x(t) ? t : Ie(t), - r = x(e) ? e : Ie(e); - return !!(this.isValid() && a.isValid() && r.isValid()) && (("(" === (n = n || "()")[0] ? this.isAfter(a, i) : !this.isBefore(a, i)) && (")" === n[1] ? this.isBefore(r, i) : !this.isAfter(r, i))) - }, bi.isSame = function(t, e) { var i, n = x(t) ? t : Ie(t); return !(!this.isValid() || !n.isValid()) && ("millisecond" === (e = R(e) || "millisecond") ? this.valueOf() === n.valueOf() : (i = n.valueOf(), this.clone().startOf(e).valueOf() <= i && i <= this.clone().endOf(e).valueOf())) }, bi.isSameOrAfter = function(t, e) { return this.isSame(t, e) || this.isAfter(t, e) }, bi.isSameOrBefore = function(t, e) { return this.isSame(t, e) || this.isBefore(t, e) }, bi.isValid = function() { return g(this) }, bi.lang = ii, bi.locale = ei, bi.localeData = ni, bi.max = Fe, bi.min = Ae, bi.parsingFlags = function() { return h({}, f(this)) }, bi.set = function(t, e) { - if ("object" == typeof t) - for (var i = function(t) { var e = []; for (var i in t) e.push({ unit: i, priority: W[i] }); return e.sort(function(t, e) { return t.priority - e.priority }), e }(t = L(t)), n = 0; n < i.length; n++) this[i[n].unit](t[i[n].unit]); - else if (T(this[t = R(t)])) return this[t](e); - return this - }, bi.startOf = function(t) { - var e; - if (void 0 === (t = R(t)) || "millisecond" === t || !this.isValid()) return this; - var i = this._isUTC ? di : ui; - switch (t) { - case "year": - e = i(this.year(), 0, 1); - break; - case "quarter": - e = i(this.year(), this.month() - this.month() % 3, 1); - break; - case "month": - e = i(this.year(), this.month(), 1); - break; - case "week": - e = i(this.year(), this.month(), this.date() - this.weekday()); - break; - case "isoWeek": - e = i(this.year(), this.month(), this.date() - (this.isoWeekday() - 1)); - break; - case "day": - case "date": - e = i(this.year(), this.month(), this.date()); - break; - case "hour": - e = this._d.valueOf(), e -= li(e + (this._isUTC ? 0 : this.utcOffset() * ri), oi); - break; - case "minute": - e = this._d.valueOf(), e -= li(e, ri); - break; - case "second": - e = this._d.valueOf(), e -= li(e, ai) - } - return this._d.setTime(e), n.updateOffset(this, !0), this - }, bi.subtract = Qe, bi.toArray = function() { var t = this; return [t.year(), t.month(), t.date(), t.hour(), t.minute(), t.second(), t.millisecond()] }, bi.toObject = function() { var t = this; return { years: t.year(), months: t.month(), date: t.date(), hours: t.hours(), minutes: t.minutes(), seconds: t.seconds(), milliseconds: t.milliseconds() } }, bi.toDate = function() { return new Date(this.valueOf()) }, bi.toISOString = function(t) { - if (!this.isValid()) return null; - var e = !0 !== t, - i = e ? this.clone().utc() : this; - return i.year() < 0 || i.year() > 9999 ? j(i, e ? "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYYYY-MM-DD[T]HH:mm:ss.SSSZ") : T(Date.prototype.toISOString) ? e ? this.toDate().toISOString() : new Date(this.valueOf() + 60 * this.utcOffset() * 1e3).toISOString().replace("Z", j(i, "Z")) : j(i, e ? "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYY-MM-DD[T]HH:mm:ss.SSSZ") - }, bi.inspect = function() { - if (!this.isValid()) return "moment.invalid(/* " + this._i + " */)"; - var t = "moment", - e = ""; - this.isLocal() || (t = 0 === this.utcOffset() ? "moment.utc" : "moment.parseZone", e = "Z"); - var i = "[" + t + '("]', - n = 0 <= this.year() && this.year() <= 9999 ? "YYYY" : "YYYYYY", - a = e + '[")]'; - return this.format(i + n + "-MM-DD[T]HH:mm:ss.SSS" + a) - }, bi.toJSON = function() { return this.isValid() ? this.toISOString() : null }, bi.toString = function() { return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ") }, bi.unix = function() { return Math.floor(this.valueOf() / 1e3) }, bi.valueOf = function() { return this._d.valueOf() - 6e4 * (this._offset || 0) }, bi.creationData = function() { return { input: this._i, format: this._f, locale: this._locale, isUTC: this._isUTC, strict: this._strict } }, bi.year = Pt, bi.isLeapYear = function() { return Dt(this.year()) }, bi.weekYear = function(t) { return ci.call(this, t, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy) }, bi.isoWeekYear = function(t) { return ci.call(this, t, this.isoWeek(), this.isoWeekday(), 1, 4) }, bi.quarter = bi.quarters = function(t) { return null == t ? Math.ceil((this.month() + 1) / 3) : this.month(3 * (t - 1) + this.month() % 3) }, bi.month = Yt, bi.daysInMonth = function() { return At(this.year(), this.month()) }, bi.week = bi.weeks = function(t) { var e = this.localeData().week(this); return null == t ? e : this.add(7 * (t - e), "d") }, bi.isoWeek = bi.isoWeeks = function(t) { var e = jt(this, 1, 4).week; return null == t ? e : this.add(7 * (t - e), "d") }, bi.weeksInYear = function() { var t = this.localeData()._week; return Ut(this.year(), t.dow, t.doy) }, bi.isoWeeksInYear = function() { return Ut(this.year(), 1, 4) }, bi.date = fi, bi.day = bi.days = function(t) { if (!this.isValid()) return null != t ? this : NaN; var e = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); return null != t ? (t = function(t, e) { return "string" != typeof t ? t : isNaN(t) ? "number" == typeof(t = e.weekdaysParse(t)) ? t : null : parseInt(t, 10) }(t, this.localeData()), this.add(t - e, "d")) : e }, bi.weekday = function(t) { if (!this.isValid()) return null != t ? this : NaN; var e = (this.day() + 7 - this.localeData()._week.dow) % 7; return null == t ? e : this.add(t - e, "d") }, bi.isoWeekday = function(t) { if (!this.isValid()) return null != t ? this : NaN; if (null != t) { var e = function(t, e) { return "string" == typeof t ? e.weekdaysParse(t) % 7 || 7 : isNaN(t) ? null : t }(t, this.localeData()); return this.day(this.day() % 7 ? e : e - 7) } return this.day() || 7 }, bi.dayOfYear = function(t) { var e = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1; return null == t ? e : this.add(t - e, "d") }, bi.hour = bi.hours = ae, bi.minute = bi.minutes = gi, bi.second = bi.seconds = pi, bi.millisecond = bi.milliseconds = yi, bi.utcOffset = function(t, e, i) { var a, r = this._offset || 0; if (!this.isValid()) return null != t ? this : NaN; if (null != t) { if ("string" == typeof t) { if (null === (t = He(ot, t))) return this } else Math.abs(t) < 16 && !i && (t *= 60); return !this._isUTC && e && (a = Be(this)), this._offset = t, this._isUTC = !0, null != a && this.add(a, "m"), r !== t && (!e || this._changeInProgress ? Ke(this, qe(t - r, "m"), 1, !1) : this._changeInProgress || (this._changeInProgress = !0, n.updateOffset(this, !0), this._changeInProgress = null)), this } return this._isUTC ? r : Be(this) }, bi.utc = function(t) { return this.utcOffset(0, t) }, bi.local = function(t) { return this._isUTC && (this.utcOffset(0, t), this._isUTC = !1, t && this.subtract(Be(this), "m")), this }, bi.parseZone = function() { - if (null != this._tzm) this.utcOffset(this._tzm, !1, !0); - else if ("string" == typeof this._i) { - var t = He(rt, this._i); - null != t ? this.utcOffset(t) : this.utcOffset(0, !0) - } - return this - }, bi.hasAlignedHourOffset = function(t) { return !!this.isValid() && (t = t ? Ie(t).utcOffset() : 0, (this.utcOffset() - t) % 60 == 0) }, bi.isDST = function() { return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset() }, bi.isLocal = function() { return !!this.isValid() && !this._isUTC }, bi.isUtcOffset = function() { return !!this.isValid() && this._isUTC }, bi.isUtc = je, bi.isUTC = je, bi.zoneAbbr = function() { return this._isUTC ? "UTC" : "" }, bi.zoneName = function() { return this._isUTC ? "Coordinated Universal Time" : "" }, bi.dates = S("dates accessor is deprecated. Use date instead.", fi), bi.months = S("months accessor is deprecated. Use month instead", Yt), bi.years = S("years accessor is deprecated. Use year instead", Pt), bi.zone = S("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", function(t, e) { return null != t ? ("string" != typeof t && (t = -t), this.utcOffset(t, e), this) : -this.utcOffset() }), bi.isDSTShifted = S("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", function() { - if (!o(this._isDSTShifted)) return this._isDSTShifted; - var t = {}; - if (v(t, this), (t = Te(t))._a) { - var e = t._isUTC ? c(t._a) : Ie(t._a); - this._isDSTShifted = this.isValid() && w(t._a, e.toArray()) > 0 - } else this._isDSTShifted = !1; - return this._isDSTShifted - }); - var _i = I.prototype; - - function ki(t, e, i, n) { - var a = ce(), - r = c().set(n, e); - return a[i](r, t) - } - - function wi(t, e, i) { if (s(t) && (e = t, t = void 0), t = t || "", null != e) return ki(t, e, i, "month"); var n, a = []; for (n = 0; n < 12; n++) a[n] = ki(t, n, i, "month"); return a } - - function Mi(t, e, i, n) { - "boolean" == typeof t ? (s(e) && (i = e, e = void 0), e = e || "") : (i = e = t, t = !1, s(e) && (i = e, e = void 0), e = e || ""); - var a, r = ce(), - o = t ? r._week.dow : 0; - if (null != i) return ki(e, (i + o) % 7, n, "day"); - var l = []; - for (a = 0; a < 7; a++) l[a] = ki(e, (a + o) % 7, n, "day"); - return l - } - _i.calendar = function(t, e, i) { var n = this._calendar[t] || this._calendar.sameElse; return T(n) ? n.call(e, i) : n }, _i.longDateFormat = function(t) { - var e = this._longDateFormat[t], - i = this._longDateFormat[t.toUpperCase()]; - return e || !i ? e : (this._longDateFormat[t] = i.replace(/MMMM|MM|DD|dddd/g, function(t) { return t.slice(1) }), this._longDateFormat[t]) - }, _i.invalidDate = function() { return this._invalidDate }, _i.ordinal = function(t) { return this._ordinal.replace("%d", t) }, _i.preparse = xi, _i.postformat = xi, _i.relativeTime = function(t, e, i, n) { var a = this._relativeTime[i]; return T(a) ? a(t, e, i, n) : a.replace(/%d/i, t) }, _i.pastFuture = function(t, e) { var i = this._relativeTime[t > 0 ? "future" : "past"]; return T(i) ? i(e) : i.replace(/%s/i, e) }, _i.set = function(t) { - var e, i; - for (i in t) T(e = t[i]) ? this[i] = e : this["_" + i] = e; - this._config = t, this._dayOfMonthOrdinalParseLenient = new RegExp((this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + "|" + /\d{1,2}/.source) - }, _i.months = function(t, e) { return t ? a(this._months) ? this._months[t.month()] : this._months[(this._months.isFormat || Ft).test(e) ? "format" : "standalone"][t.month()] : a(this._months) ? this._months : this._months.standalone }, _i.monthsShort = function(t, e) { return t ? a(this._monthsShort) ? this._monthsShort[t.month()] : this._monthsShort[Ft.test(e) ? "format" : "standalone"][t.month()] : a(this._monthsShort) ? this._monthsShort : this._monthsShort.standalone }, _i.monthsParse = function(t, e, i) { - var n, a, r; - if (this._monthsParseExact) return function(t, e, i) { - var n, a, r, o = t.toLocaleLowerCase(); - if (!this._monthsParse) - for (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = [], n = 0; n < 12; ++n) r = c([2e3, n]), this._shortMonthsParse[n] = this.monthsShort(r, "").toLocaleLowerCase(), this._longMonthsParse[n] = this.months(r, "").toLocaleLowerCase(); - return i ? "MMM" === e ? -1 !== (a = Ct.call(this._shortMonthsParse, o)) ? a : null : -1 !== (a = Ct.call(this._longMonthsParse, o)) ? a : null : "MMM" === e ? -1 !== (a = Ct.call(this._shortMonthsParse, o)) ? a : -1 !== (a = Ct.call(this._longMonthsParse, o)) ? a : null : -1 !== (a = Ct.call(this._longMonthsParse, o)) ? a : -1 !== (a = Ct.call(this._shortMonthsParse, o)) ? a : null - }.call(this, t, e, i); - for (this._monthsParse || (this._monthsParse = [], this._longMonthsParse = [], this._shortMonthsParse = []), n = 0; n < 12; n++) { if (a = c([2e3, n]), i && !this._longMonthsParse[n] && (this._longMonthsParse[n] = new RegExp("^" + this.months(a, "").replace(".", "") + "$", "i"), this._shortMonthsParse[n] = new RegExp("^" + this.monthsShort(a, "").replace(".", "") + "$", "i")), i || this._monthsParse[n] || (r = "^" + this.months(a, "") + "|^" + this.monthsShort(a, ""), this._monthsParse[n] = new RegExp(r.replace(".", ""), "i")), i && "MMMM" === e && this._longMonthsParse[n].test(t)) return n; if (i && "MMM" === e && this._shortMonthsParse[n].test(t)) return n; if (!i && this._monthsParse[n].test(t)) return n } - }, _i.monthsRegex = function(t) { return this._monthsParseExact ? (d(this, "_monthsRegex") || Vt.call(this), t ? this._monthsStrictRegex : this._monthsRegex) : (d(this, "_monthsRegex") || (this._monthsRegex = zt), this._monthsStrictRegex && t ? this._monthsStrictRegex : this._monthsRegex) }, _i.monthsShortRegex = function(t) { return this._monthsParseExact ? (d(this, "_monthsRegex") || Vt.call(this), t ? this._monthsShortStrictRegex : this._monthsShortRegex) : (d(this, "_monthsShortRegex") || (this._monthsShortRegex = Nt), this._monthsShortStrictRegex && t ? this._monthsShortStrictRegex : this._monthsShortRegex) }, _i.week = function(t) { return jt(t, this._week.dow, this._week.doy).week }, _i.firstDayOfYear = function() { return this._week.doy }, _i.firstDayOfWeek = function() { return this._week.dow }, _i.weekdays = function(t, e) { var i = a(this._weekdays) ? this._weekdays : this._weekdays[t && !0 !== t && this._weekdays.isFormat.test(e) ? "format" : "standalone"]; return !0 === t ? Gt(i, this._week.dow) : t ? i[t.day()] : i }, _i.weekdaysMin = function(t) { return !0 === t ? Gt(this._weekdaysMin, this._week.dow) : t ? this._weekdaysMin[t.day()] : this._weekdaysMin }, _i.weekdaysShort = function(t) { return !0 === t ? Gt(this._weekdaysShort, this._week.dow) : t ? this._weekdaysShort[t.day()] : this._weekdaysShort }, _i.weekdaysParse = function(t, e, i) { - var n, a, r; - if (this._weekdaysParseExact) return function(t, e, i) { - var n, a, r, o = t.toLocaleLowerCase(); - if (!this._weekdaysParse) - for (this._weekdaysParse = [], this._shortWeekdaysParse = [], this._minWeekdaysParse = [], n = 0; n < 7; ++n) r = c([2e3, 1]).day(n), this._minWeekdaysParse[n] = this.weekdaysMin(r, "").toLocaleLowerCase(), this._shortWeekdaysParse[n] = this.weekdaysShort(r, "").toLocaleLowerCase(), this._weekdaysParse[n] = this.weekdays(r, "").toLocaleLowerCase(); - return i ? "dddd" === e ? -1 !== (a = Ct.call(this._weekdaysParse, o)) ? a : null : "ddd" === e ? -1 !== (a = Ct.call(this._shortWeekdaysParse, o)) ? a : null : -1 !== (a = Ct.call(this._minWeekdaysParse, o)) ? a : null : "dddd" === e ? -1 !== (a = Ct.call(this._weekdaysParse, o)) ? a : -1 !== (a = Ct.call(this._shortWeekdaysParse, o)) ? a : -1 !== (a = Ct.call(this._minWeekdaysParse, o)) ? a : null : "ddd" === e ? -1 !== (a = Ct.call(this._shortWeekdaysParse, o)) ? a : -1 !== (a = Ct.call(this._weekdaysParse, o)) ? a : -1 !== (a = Ct.call(this._minWeekdaysParse, o)) ? a : null : -1 !== (a = Ct.call(this._minWeekdaysParse, o)) ? a : -1 !== (a = Ct.call(this._weekdaysParse, o)) ? a : -1 !== (a = Ct.call(this._shortWeekdaysParse, o)) ? a : null - }.call(this, t, e, i); - for (this._weekdaysParse || (this._weekdaysParse = [], this._minWeekdaysParse = [], this._shortWeekdaysParse = [], this._fullWeekdaysParse = []), n = 0; n < 7; n++) { if (a = c([2e3, 1]).day(n), i && !this._fullWeekdaysParse[n] && (this._fullWeekdaysParse[n] = new RegExp("^" + this.weekdays(a, "").replace(".", "\\.?") + "$", "i"), this._shortWeekdaysParse[n] = new RegExp("^" + this.weekdaysShort(a, "").replace(".", "\\.?") + "$", "i"), this._minWeekdaysParse[n] = new RegExp("^" + this.weekdaysMin(a, "").replace(".", "\\.?") + "$", "i")), this._weekdaysParse[n] || (r = "^" + this.weekdays(a, "") + "|^" + this.weekdaysShort(a, "") + "|^" + this.weekdaysMin(a, ""), this._weekdaysParse[n] = new RegExp(r.replace(".", ""), "i")), i && "dddd" === e && this._fullWeekdaysParse[n].test(t)) return n; if (i && "ddd" === e && this._shortWeekdaysParse[n].test(t)) return n; if (i && "dd" === e && this._minWeekdaysParse[n].test(t)) return n; if (!i && this._weekdaysParse[n].test(t)) return n } - }, _i.weekdaysRegex = function(t) { return this._weekdaysParseExact ? (d(this, "_weekdaysRegex") || Qt.call(this), t ? this._weekdaysStrictRegex : this._weekdaysRegex) : (d(this, "_weekdaysRegex") || (this._weekdaysRegex = Xt), this._weekdaysStrictRegex && t ? this._weekdaysStrictRegex : this._weekdaysRegex) }, _i.weekdaysShortRegex = function(t) { return this._weekdaysParseExact ? (d(this, "_weekdaysRegex") || Qt.call(this), t ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) : (d(this, "_weekdaysShortRegex") || (this._weekdaysShortRegex = Kt), this._weekdaysShortStrictRegex && t ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) }, _i.weekdaysMinRegex = function(t) { return this._weekdaysParseExact ? (d(this, "_weekdaysRegex") || Qt.call(this), t ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) : (d(this, "_weekdaysMinRegex") || (this._weekdaysMinRegex = Jt), this._weekdaysMinStrictRegex && t ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) }, _i.isPM = function(t) { return "p" === (t + "").toLowerCase().charAt(0) }, _i.meridiem = function(t, e, i) { return t > 11 ? i ? "pm" : "PM" : i ? "am" : "AM" }, de("en", { - dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, - ordinal: function(t) { - var e = t % 10, - i = 1 === k(t % 100 / 10) ? "th" : 1 === e ? "st" : 2 === e ? "nd" : 3 === e ? "rd" : "th"; - return t + i - } - }), n.lang = S("moment.lang is deprecated. Use moment.locale instead.", de), n.langData = S("moment.langData is deprecated. Use moment.localeData instead.", ce); - var Si = Math.abs; - - function Di(t, e, i, n) { var a = qe(e, i); return t._milliseconds += n * a._milliseconds, t._days += n * a._days, t._months += n * a._months, t._bubble() } - - function Ci(t) { return t < 0 ? Math.floor(t) : Math.ceil(t) } - - function Pi(t) { return 4800 * t / 146097 } - - function Ti(t) { return 146097 * t / 4800 } - - function Oi(t) { return function() { return this.as(t) } } - var Ii = Oi("ms"), - Ai = Oi("s"), - Fi = Oi("m"), - Ri = Oi("h"), - Li = Oi("d"), - Wi = Oi("w"), - Yi = Oi("M"), - Ni = Oi("Q"), - zi = Oi("y"); - - function Vi(t) { return function() { return this.isValid() ? this._data[t] : NaN } } - var Hi = Vi("milliseconds"), - Ei = Vi("seconds"), - Bi = Vi("minutes"), - ji = Vi("hours"), - Ui = Vi("days"), - Gi = Vi("months"), - qi = Vi("years"), - Zi = Math.round, - $i = { ss: 44, s: 45, m: 45, h: 22, d: 26, M: 11 }, - Xi = Math.abs; - - function Ki(t) { return (t > 0) - (t < 0) || +t } - - function Ji() { - if (!this.isValid()) return this.localeData().invalidDate(); - var t, e, i = Xi(this._milliseconds) / 1e3, - n = Xi(this._days), - a = Xi(this._months); - t = _(i / 60), e = _(t / 60), i %= 60, t %= 60; - var r = _(a / 12), - o = a %= 12, - s = n, - l = e, - u = t, - d = i ? i.toFixed(3).replace(/\.?0+$/, "") : "", - h = this.asSeconds(); - if (!h) return "P0D"; - var c = h < 0 ? "-" : "", - f = Ki(this._months) !== Ki(h) ? "-" : "", - g = Ki(this._days) !== Ki(h) ? "-" : "", - m = Ki(this._milliseconds) !== Ki(h) ? "-" : ""; - return c + "P" + (r ? f + r + "Y" : "") + (o ? f + o + "M" : "") + (s ? g + s + "D" : "") + (l || u || d ? "T" : "") + (l ? m + l + "H" : "") + (u ? m + u + "M" : "") + (d ? m + d + "S" : "") - } - var Qi = We.prototype; - return Qi.isValid = function() { return this._isValid }, Qi.abs = function() { var t = this._data; return this._milliseconds = Si(this._milliseconds), this._days = Si(this._days), this._months = Si(this._months), t.milliseconds = Si(t.milliseconds), t.seconds = Si(t.seconds), t.minutes = Si(t.minutes), t.hours = Si(t.hours), t.months = Si(t.months), t.years = Si(t.years), this }, Qi.add = function(t, e) { return Di(this, t, e, 1) }, Qi.subtract = function(t, e) { return Di(this, t, e, -1) }, Qi.as = function(t) { - if (!this.isValid()) return NaN; - var e, i, n = this._milliseconds; - if ("month" === (t = R(t)) || "quarter" === t || "year" === t) switch (e = this._days + n / 864e5, i = this._months + Pi(e), t) { - case "month": - return i; - case "quarter": - return i / 3; - case "year": - return i / 12 - } else switch (e = this._days + Math.round(Ti(this._months)), t) { - case "week": - return e / 7 + n / 6048e5; - case "day": - return e + n / 864e5; - case "hour": - return 24 * e + n / 36e5; - case "minute": - return 1440 * e + n / 6e4; - case "second": - return 86400 * e + n / 1e3; - case "millisecond": - return Math.floor(864e5 * e) + n; - default: - throw new Error("Unknown unit " + t) - } - }, Qi.asMilliseconds = Ii, Qi.asSeconds = Ai, Qi.asMinutes = Fi, Qi.asHours = Ri, Qi.asDays = Li, Qi.asWeeks = Wi, Qi.asMonths = Yi, Qi.asQuarters = Ni, Qi.asYears = zi, Qi.valueOf = function() { return this.isValid() ? this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * k(this._months / 12) : NaN }, Qi._bubble = function() { - var t, e, i, n, a, r = this._milliseconds, - o = this._days, - s = this._months, - l = this._data; - return r >= 0 && o >= 0 && s >= 0 || r <= 0 && o <= 0 && s <= 0 || (r += 864e5 * Ci(Ti(s) + o), o = 0, s = 0), l.milliseconds = r % 1e3, t = _(r / 1e3), l.seconds = t % 60, e = _(t / 60), l.minutes = e % 60, i = _(e / 60), l.hours = i % 24, o += _(i / 24), a = _(Pi(o)), s += a, o -= Ci(Ti(a)), n = _(s / 12), s %= 12, l.days = o, l.months = s, l.years = n, this - }, Qi.clone = function() { return qe(this) }, Qi.get = function(t) { return t = R(t), this.isValid() ? this[t + "s"]() : NaN }, Qi.milliseconds = Hi, Qi.seconds = Ei, Qi.minutes = Bi, Qi.hours = ji, Qi.days = Ui, Qi.weeks = function() { return _(this.days() / 7) }, Qi.months = Gi, Qi.years = qi, Qi.humanize = function(t) { - if (!this.isValid()) return this.localeData().invalidDate(); - var e = this.localeData(), - i = function(t, e, i) { - var n = qe(t).abs(), - a = Zi(n.as("s")), - r = Zi(n.as("m")), - o = Zi(n.as("h")), - s = Zi(n.as("d")), - l = Zi(n.as("M")), - u = Zi(n.as("y")), - d = a <= $i.ss && ["s", a] || a < $i.s && ["ss", a] || r <= 1 && ["m"] || r < $i.m && ["mm", r] || o <= 1 && ["h"] || o < $i.h && ["hh", o] || s <= 1 && ["d"] || s < $i.d && ["dd", s] || l <= 1 && ["M"] || l < $i.M && ["MM", l] || u <= 1 && ["y"] || ["yy", u]; - return d[2] = e, d[3] = +t > 0, d[4] = i, - function(t, e, i, n, a) { return a.relativeTime(e || 1, !!i, t, n) }.apply(null, d) - }(this, !t, e); - return t && (i = e.pastFuture(+this, i)), e.postformat(i) - }, Qi.toISOString = Ji, Qi.toString = Ji, Qi.toJSON = Ji, Qi.locale = ei, Qi.localeData = ni, Qi.toIsoString = S("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", Ji), Qi.lang = ii, B("X", 0, 0, "unix"), B("x", 0, 0, "valueOf"), ut("x", at), ut("X", /[+-]?\d+(\.\d{1,3})?/), ft("X", function(t, e, i) { i._d = new Date(1e3 * parseFloat(t, 10)) }), ft("x", function(t, e, i) { i._d = new Date(k(t)) }), n.version = "2.24.0", e = Ie, n.fn = bi, n.min = function() { return Re("isBefore", [].slice.call(arguments, 0)) }, n.max = function() { return Re("isAfter", [].slice.call(arguments, 0)) }, n.now = function() { return Date.now ? Date.now() : +new Date }, n.utc = c, n.unix = function(t) { return Ie(1e3 * t) }, n.months = function(t, e) { return wi(t, e, "months") }, n.isDate = l, n.locale = de, n.invalid = m, n.duration = qe, n.isMoment = x, n.weekdays = function(t, e, i) { return Mi(t, e, i, "weekdays") }, n.parseZone = function() { return Ie.apply(null, arguments).parseZone() }, n.localeData = ce, n.isDuration = Ye, n.monthsShort = function(t, e) { return wi(t, e, "monthsShort") }, n.weekdaysMin = function(t, e, i) { return Mi(t, e, i, "weekdaysMin") }, n.defineLocale = he, n.updateLocale = function(t, e) { - if (null != e) { - var i, n, a = re; - null != (n = ue(t)) && (a = n._config), e = O(a, e), (i = new I(e)).parentLocale = oe[t], oe[t] = i, de(t) - } else null != oe[t] && (null != oe[t].parentLocale ? oe[t] = oe[t].parentLocale : null != oe[t] && delete oe[t]); - return oe[t] - }, n.locales = function() { return D(oe) }, n.weekdaysShort = function(t, e, i) { return Mi(t, e, i, "weekdaysShort") }, n.normalizeUnits = R, n.relativeTimeRounding = function(t) { return void 0 === t ? Zi : "function" == typeof t && (Zi = t, !0) }, n.relativeTimeThreshold = function(t, e) { return void 0 !== $i[t] && (void 0 === e ? $i[t] : ($i[t] = e, "s" === t && ($i.ss = e - 1), !0)) }, n.calendarFormat = function(t, e) { var i = t.diff(e, "days", !0); return i < -6 ? "sameElse" : i < -1 ? "lastWeek" : i < 0 ? "lastDay" : i < 1 ? "sameDay" : i < 2 ? "nextDay" : i < 7 ? "nextWeek" : "sameElse" }, n.prototype = bi, n.HTML5_FMT = { DATETIME_LOCAL: "YYYY-MM-DDTHH:mm", DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss", DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS", DATE: "YYYY-MM-DD", TIME: "HH:mm", TIME_SECONDS: "HH:mm:ss", TIME_MS: "HH:mm:ss.SSS", WEEK: "GGGG-[W]WW", MONTH: "YYYY-MM" }, n - }() - }(tn = { exports: {} }, tn.exports), tn.exports), - an = { datetime: "MMM D, YYYY, h:mm:ss a", millisecond: "h:mm:ss.SSS a", second: "h:mm:ss a", minute: "h:mm a", hour: "hA", day: "MMM D", week: "ll", month: "MMM YYYY", quarter: "[Q]Q - YYYY", year: "YYYY" }; - si._date.override("function" == typeof nn ? { _id: "moment", formats: function() { return an }, parse: function(t, e) { return "string" == typeof t && "string" == typeof e ? t = nn(t, e) : t instanceof nn || (t = nn(t)), t.isValid() ? t.valueOf() : null }, format: function(t, e) { return nn(t).format(e) }, add: function(t, e, i) { return nn(t).add(e, i).valueOf() }, diff: function(t, e, i) { return nn.duration(nn(t).diff(nn(e))).as(i) }, startOf: function(t, e, i) { return t = nn(t), "isoWeek" === e ? t.isoWeekday(i).valueOf() : t.startOf(e).valueOf() }, endOf: function(t, e) { return nn(t).endOf(e).valueOf() }, _create: function(t) { return nn(t) } } : {}), ot._set("global", { plugins: { filler: { propagate: !0 } } }); - var rn = { - dataset: function(t) { - var e = t.fill, - i = t.chart, - n = i.getDatasetMeta(e), - a = n && i.isDatasetVisible(e) && n.dataset._children || [], - r = a.length || 0; - return r ? function(t, e) { return e < r && a[e]._view || null } : null - }, - boundary: function(t) { - var e = t.boundary, - i = e ? e.x : null, - n = e ? e.y : null; - return function(t) { return { x: null === i ? t.x : i, y: null === n ? t.y : n } } - } - }; - - function on(t, e, i) { - var n, a = t._model || {}, - r = a.fill; - if (void 0 === r && (r = !!a.backgroundColor), !1 === r || null === r) return !1; - if (!0 === r) return "origin"; - if (n = parseFloat(r, 10), isFinite(n) && Math.floor(n) === n) return "-" !== r[0] && "+" !== r[0] || (n = e + n), !(n === e || n < 0 || n >= i) && n; - switch (r) { - case "bottom": - return "start"; - case "top": - return "end"; - case "zero": - return "origin"; - case "origin": - case "start": - case "end": - return r; - default: - return !1 - } - } - - function sn(t) { - var e, i = t.el._model || {}, - n = t.el._scale || {}, - a = t.fill, - r = null; - if (isFinite(a)) return null; - if ("start" === a ? r = void 0 === i.scaleBottom ? n.bottom : i.scaleBottom : "end" === a ? r = void 0 === i.scaleTop ? n.top : i.scaleTop : void 0 !== i.scaleZero ? r = i.scaleZero : n.getBasePosition ? r = n.getBasePosition() : n.getBasePixel && (r = n.getBasePixel()), null != r) { if (void 0 !== r.x && void 0 !== r.y) return r; if (ut.isFinite(r)) return { x: (e = n.isHorizontal()) ? r : null, y: e ? null : r } } - return null - } - - function ln(t, e, i) { - var n, a = t[e].fill, - r = [e]; - if (!i) return a; - for (; !1 !== a && -1 === r.indexOf(a);) { - if (!isFinite(a)) return a; - if (!(n = t[a])) return !1; - if (n.visible) return a; - r.push(a), a = n.fill - } - return !1 - } - - function un(t) { - var e = t.fill, - i = "dataset"; - return !1 === e ? null : (isFinite(e) || (i = "boundary"), rn[i](t)) - } - - function dn(t) { return t && !t.skip } - - function hn(t, e, i, n, a) { var r; if (n && a) { for (t.moveTo(e[0].x, e[0].y), r = 1; r < n; ++r) ut.canvas.lineTo(t, e[r - 1], e[r]); for (t.lineTo(i[a - 1].x, i[a - 1].y), r = a - 1; r > 0; --r) ut.canvas.lineTo(t, i[r], i[r - 1], !0) } } - var cn = { - id: "filler", - afterDatasetsUpdate: function(t, e) { - var i, n, a, r, o = (t.data.datasets || []).length, - s = e.propagate, - l = []; - for (n = 0; n < o; ++n) r = null, (a = (i = t.getDatasetMeta(n)).dataset) && a._model && a instanceof Nt.Line && (r = { visible: t.isDatasetVisible(n), fill: on(a, n, o), chart: t, el: a }), i.$filler = r, l.push(r); - for (n = 0; n < o; ++n)(r = l[n]) && (r.fill = ln(l, n, s), r.boundary = sn(r), r.mapper = un(r)) - }, - beforeDatasetDraw: function(t, e) { - var i = e.meta.$filler; - if (i) { - var n = t.ctx, - a = i.el, - r = a._view, - o = a._children || [], - s = i.mapper, - l = r.backgroundColor || ot.global.defaultColor; - s && l && o.length && (ut.canvas.clipArea(n, t.chartArea), function(t, e, i, n, a, r) { - var o, s, l, u, d, h, c, f = e.length, - g = n.spanGaps, - m = [], - p = [], - v = 0, - y = 0; - for (t.beginPath(), o = 0, s = f + !!r; o < s; ++o) d = i(u = e[l = o % f]._view, l, n), h = dn(u), c = dn(d), h && c ? (v = m.push(u), y = p.push(d)) : v && y && (g ? (h && m.push(u), c && p.push(d)) : (hn(t, m, p, v, y), v = y = 0, m = [], p = [])); - hn(t, m, p, v, y), t.closePath(), t.fillStyle = a, t.fill() - }(n, o, s, r, l, a._loop), ut.canvas.unclipArea(n)) - } - } - }, - fn = ut.noop, - gn = ut.valueOrDefault; - - function mn(t, e) { return t.usePointStyle && t.boxWidth > e ? e : t.boxWidth } - ot._set("global", { - legend: { - display: !0, - position: "top", - fullWidth: !0, - reverse: !1, - weight: 1e3, - onClick: function(t, e) { - var i = e.datasetIndex, - n = this.chart, - a = n.getDatasetMeta(i); - a.hidden = null === a.hidden ? !n.data.datasets[i].hidden : null, n.update() - }, - onHover: null, - onLeave: null, - labels: { boxWidth: 40, padding: 10, generateLabels: function(t) { var e = t.data; return ut.isArray(e.datasets) ? e.datasets.map(function(e, i) { return { text: e.label, fillStyle: ut.isArray(e.backgroundColor) ? e.backgroundColor[0] : e.backgroundColor, hidden: !t.isDatasetVisible(i), lineCap: e.borderCapStyle, lineDash: e.borderDash, lineDashOffset: e.borderDashOffset, lineJoin: e.borderJoinStyle, lineWidth: e.borderWidth, strokeStyle: e.borderColor, pointStyle: e.pointStyle, datasetIndex: i } }, this) : [] } } - }, - legendCallback: function(t) { - var e = []; - e.push('
    '); - for (var i = 0; i < t.data.datasets.length; i++) e.push('
  • '), t.data.datasets[i].label && e.push(t.data.datasets[i].label), e.push("
  • "); - return e.push("
"), e.join("") - } - }); - var pn = gt.extend({ - initialize: function(t) { ut.extend(this, t), this.legendHitBoxes = [], this._hoveredItem = null, this.doughnutMode = !1 }, - beforeUpdate: fn, - update: function(t, e, i) { var n = this; return n.beforeUpdate(), n.maxWidth = t, n.maxHeight = e, n.margins = i, n.beforeSetDimensions(), n.setDimensions(), n.afterSetDimensions(), n.beforeBuildLabels(), n.buildLabels(), n.afterBuildLabels(), n.beforeFit(), n.fit(), n.afterFit(), n.afterUpdate(), n.minSize }, - afterUpdate: fn, - beforeSetDimensions: fn, - setDimensions: function() { - var t = this; - t.isHorizontal() ? (t.width = t.maxWidth, t.left = 0, t.right = t.width) : (t.height = t.maxHeight, t.top = 0, t.bottom = t.height), t.paddingLeft = 0, t.paddingTop = 0, t.paddingRight = 0, t.paddingBottom = 0, t.minSize = { width: 0, height: 0 } - }, - afterSetDimensions: fn, - beforeBuildLabels: fn, - buildLabels: function() { - var t = this, - e = t.options.labels || {}, - i = ut.callback(e.generateLabels, [t.chart], t) || []; - e.filter && (i = i.filter(function(i) { return e.filter(i, t.chart.data) })), t.options.reverse && i.reverse(), t.legendItems = i - }, - afterBuildLabels: fn, - beforeFit: fn, - fit: function() { - var t = this, - e = t.options, - i = e.labels, - n = e.display, - a = t.ctx, - r = ut.options._parseFont(i), - o = r.size, - s = t.legendHitBoxes = [], - l = t.minSize, - u = t.isHorizontal(); - if (u ? (l.width = t.maxWidth, l.height = n ? 10 : 0) : (l.width = n ? 10 : 0, l.height = t.maxHeight), n) - if (a.font = r.string, u) { - var d = t.lineWidths = [0], - h = 0; - a.textAlign = "left", a.textBaseline = "top", ut.each(t.legendItems, function(t, e) { - var n = mn(i, o) + o / 2 + a.measureText(t.text).width; - (0 === e || d[d.length - 1] + n + i.padding > l.width) && (h += o + i.padding, d[d.length - (e > 0 ? 0 : 1)] = i.padding), s[e] = { left: 0, top: 0, width: n, height: o }, d[d.length - 1] += n + i.padding - }), l.height += h - } else { - var c = i.padding, - f = t.columnWidths = [], - g = i.padding, - m = 0, - p = 0, - v = o + c; - ut.each(t.legendItems, function(t, e) { - var n = mn(i, o) + o / 2 + a.measureText(t.text).width; - e > 0 && p + v > l.height - c && (g += m + i.padding, f.push(m), m = 0, p = 0), m = Math.max(m, n), p += v, s[e] = { left: 0, top: 0, width: n, height: o } - }), g += m, f.push(m), l.width += g - } - t.width = l.width, t.height = l.height - }, - afterFit: fn, - isHorizontal: function() { return "top" === this.options.position || "bottom" === this.options.position }, - draw: function() { - var t = this, - e = t.options, - i = e.labels, - n = ot.global, - a = n.defaultColor, - r = n.elements.line, - o = t.width, - s = t.lineWidths; - if (e.display) { - var l, u = t.ctx, - d = gn(i.fontColor, n.defaultFontColor), - h = ut.options._parseFont(i), - c = h.size; - u.textAlign = "left", u.textBaseline = "middle", u.lineWidth = .5, u.strokeStyle = d, u.fillStyle = d, u.font = h.string; - var f = mn(i, c), - g = t.legendHitBoxes, - m = t.isHorizontal(); - l = m ? { x: t.left + (o - s[0]) / 2 + i.padding, y: t.top + i.padding, line: 0 } : { x: t.left + i.padding, y: t.top + i.padding, line: 0 }; - var p = c + i.padding; - ut.each(t.legendItems, function(n, d) { - var h = u.measureText(n.text).width, - v = f + c / 2 + h, - y = l.x, - b = l.y; - m ? d > 0 && y + v + i.padding > t.left + t.minSize.width && (b = l.y += p, l.line++, y = l.x = t.left + (o - s[l.line]) / 2 + i.padding) : d > 0 && b + p > t.top + t.minSize.height && (y = l.x = y + t.columnWidths[l.line] + i.padding, b = l.y = t.top + i.padding, l.line++), - function(t, i, n) { - if (!(isNaN(f) || f <= 0)) { - u.save(); - var o = gn(n.lineWidth, r.borderWidth); - if (u.fillStyle = gn(n.fillStyle, a), u.lineCap = gn(n.lineCap, r.borderCapStyle), u.lineDashOffset = gn(n.lineDashOffset, r.borderDashOffset), u.lineJoin = gn(n.lineJoin, r.borderJoinStyle), u.lineWidth = o, u.strokeStyle = gn(n.strokeStyle, a), u.setLineDash && u.setLineDash(gn(n.lineDash, r.borderDash)), e.labels && e.labels.usePointStyle) { - var s = f * Math.SQRT2 / 2, - l = t + f / 2, - d = i + c / 2; - ut.canvas.drawPoint(u, n.pointStyle, s, l, d) - } else 0 !== o && u.strokeRect(t, i, f, c), u.fillRect(t, i, f, c); - u.restore() - } - }(y, b, n), g[d].left = y, g[d].top = b, - function(t, e, i, n) { - var a = c / 2, - r = f + a + t, - o = e + a; - u.fillText(i.text, r, o), i.hidden && (u.beginPath(), u.lineWidth = 2, u.moveTo(r, o), u.lineTo(r + n, o), u.stroke()) - }(y, b, n, h), m ? l.x += v + i.padding : l.y += p - }) - } - }, - _getLegendItemAt: function(t, e) { - var i, n, a, r = this; - if (t >= r.left && t <= r.right && e >= r.top && e <= r.bottom) - for (a = r.legendHitBoxes, i = 0; i < a.length; ++i) - if (t >= (n = a[i]).left && t <= n.left + n.width && e >= n.top && e <= n.top + n.height) return r.legendItems[i]; - return null - }, - handleEvent: function(t) { - var e, i = this, - n = i.options, - a = "mouseup" === t.type ? "click" : t.type; - if ("mousemove" === a) { if (!n.onHover && !n.onLeave) return } else { if ("click" !== a) return; if (!n.onClick) return } - e = i._getLegendItemAt(t.x, t.y), "click" === a ? e && n.onClick && n.onClick.call(i, t.native, e) : (n.onLeave && e !== i._hoveredItem && (i._hoveredItem && n.onLeave.call(i, t.native, i._hoveredItem), i._hoveredItem = e), n.onHover && e && n.onHover.call(i, t.native, e)) - } - }); - - function vn(t, e) { - var i = new pn({ ctx: t.ctx, options: e, chart: t }); - xe.configure(t, i, e), xe.addBox(t, i), t.legend = i - } - var yn = { - id: "legend", - _element: pn, - beforeInit: function(t) { - var e = t.options.legend; - e && vn(t, e) - }, - beforeUpdate: function(t) { - var e = t.options.legend, - i = t.legend; - e ? (ut.mergeIf(e, ot.global.legend), i ? (xe.configure(t, i, e), i.options = e) : vn(t, e)) : i && (xe.removeBox(t, i), delete t.legend) - }, - afterEvent: function(t, e) { - var i = t.legend; - i && i.handleEvent(e) - } - }, - bn = ut.noop; - ot._set("global", { title: { display: !1, fontStyle: "bold", fullWidth: !0, padding: 10, position: "top", text: "", weight: 2e3 } }); - var xn = gt.extend({ - initialize: function(t) { ut.extend(this, t), this.legendHitBoxes = [] }, - beforeUpdate: bn, - update: function(t, e, i) { var n = this; return n.beforeUpdate(), n.maxWidth = t, n.maxHeight = e, n.margins = i, n.beforeSetDimensions(), n.setDimensions(), n.afterSetDimensions(), n.beforeBuildLabels(), n.buildLabels(), n.afterBuildLabels(), n.beforeFit(), n.fit(), n.afterFit(), n.afterUpdate(), n.minSize }, - afterUpdate: bn, - beforeSetDimensions: bn, - setDimensions: function() { - var t = this; - t.isHorizontal() ? (t.width = t.maxWidth, t.left = 0, t.right = t.width) : (t.height = t.maxHeight, t.top = 0, t.bottom = t.height), t.paddingLeft = 0, t.paddingTop = 0, t.paddingRight = 0, t.paddingBottom = 0, t.minSize = { width: 0, height: 0 } - }, - afterSetDimensions: bn, - beforeBuildLabels: bn, - buildLabels: bn, - afterBuildLabels: bn, - beforeFit: bn, - fit: function() { - var t = this, - e = t.options, - i = e.display, - n = t.minSize, - a = ut.isArray(e.text) ? e.text.length : 1, - r = ut.options._parseFont(e), - o = i ? a * r.lineHeight + 2 * e.padding : 0; - t.isHorizontal() ? (n.width = t.maxWidth, n.height = o) : (n.width = o, n.height = t.maxHeight), t.width = n.width, t.height = n.height - }, - afterFit: bn, - isHorizontal: function() { var t = this.options.position; return "top" === t || "bottom" === t }, - draw: function() { - var t = this, - e = t.ctx, - i = t.options; - if (i.display) { - var n, a, r, o = ut.options._parseFont(i), - s = o.lineHeight, - l = s / 2 + i.padding, - u = 0, - d = t.top, - h = t.left, - c = t.bottom, - f = t.right; - e.fillStyle = ut.valueOrDefault(i.fontColor, ot.global.defaultFontColor), e.font = o.string, t.isHorizontal() ? (a = h + (f - h) / 2, r = d + l, n = f - h) : (a = "left" === i.position ? h + l : f - l, r = d + (c - d) / 2, n = c - d, u = Math.PI * ("left" === i.position ? -.5 : .5)), e.save(), e.translate(a, r), e.rotate(u), e.textAlign = "center", e.textBaseline = "middle"; - var g = i.text; - if (ut.isArray(g)) - for (var m = 0, p = 0; p < g.length; ++p) e.fillText(g[p], 0, m, n), m += s; - else e.fillText(g, 0, 0, n); - e.restore() - } - } - }); - - function _n(t, e) { - var i = new xn({ ctx: t.ctx, options: e, chart: t }); - xe.configure(t, i, e), xe.addBox(t, i), t.titleBlock = i - } - var kn = {}, - wn = cn, - Mn = yn, - Sn = { - id: "title", - _element: xn, - beforeInit: function(t) { - var e = t.options.title; - e && _n(t, e) - }, - beforeUpdate: function(t) { - var e = t.options.title, - i = t.titleBlock; - e ? (ut.mergeIf(e, ot.global.title), i ? (xe.configure(t, i, e), i.options = e) : _n(t, e)) : i && (xe.removeBox(t, i), delete t.titleBlock) - } - }; - for (var Dn in kn.filler = wn, kn.legend = Mn, kn.title = Sn, ai.helpers = ut, - function() { - function t(t, e, i) { var n; return "string" == typeof t ? (n = parseInt(t, 10), -1 !== t.indexOf("%") && (n = n / 100 * e.parentNode[i])) : n = t, n } - - function e(t) { return null != t && "none" !== t } - - function i(i, n, a) { - var r = document.defaultView, - o = ut._getParentNode(i), - s = r.getComputedStyle(i)[n], - l = r.getComputedStyle(o)[n], - u = e(s), - d = e(l), - h = Number.POSITIVE_INFINITY; - return u || d ? Math.min(u ? t(s, i, a) : h, d ? t(l, o, a) : h) : "none" - } - ut.where = function(t, e) { if (ut.isArray(t) && Array.prototype.filter) return t.filter(e); var i = []; return ut.each(t, function(t) { e(t) && i.push(t) }), i }, ut.findIndex = Array.prototype.findIndex ? function(t, e, i) { return t.findIndex(e, i) } : function(t, e, i) { - i = void 0 === i ? t : i; - for (var n = 0, a = t.length; n < a; ++n) - if (e.call(i, t[n], n, t)) return n; - return -1 - }, ut.findNextWhere = function(t, e, i) { ut.isNullOrUndef(i) && (i = -1); for (var n = i + 1; n < t.length; n++) { var a = t[n]; if (e(a)) return a } }, ut.findPreviousWhere = function(t, e, i) { ut.isNullOrUndef(i) && (i = t.length); for (var n = i - 1; n >= 0; n--) { var a = t[n]; if (e(a)) return a } }, ut.isNumber = function(t) { return !isNaN(parseFloat(t)) && isFinite(t) }, ut.almostEquals = function(t, e, i) { return Math.abs(t - e) < i }, ut.almostWhole = function(t, e) { var i = Math.round(t); return i - e < t && i + e > t }, ut.max = function(t) { return t.reduce(function(t, e) { return isNaN(e) ? t : Math.max(t, e) }, Number.NEGATIVE_INFINITY) }, ut.min = function(t) { return t.reduce(function(t, e) { return isNaN(e) ? t : Math.min(t, e) }, Number.POSITIVE_INFINITY) }, ut.sign = Math.sign ? function(t) { return Math.sign(t) } : function(t) { return 0 == (t = +t) || isNaN(t) ? t : t > 0 ? 1 : -1 }, ut.log10 = Math.log10 ? function(t) { return Math.log10(t) } : function(t) { - var e = Math.log(t) * Math.LOG10E, - i = Math.round(e); - return t === Math.pow(10, i) ? i : e - }, ut.toRadians = function(t) { return t * (Math.PI / 180) }, ut.toDegrees = function(t) { return t * (180 / Math.PI) }, ut._decimalPlaces = function(t) { if (ut.isFinite(t)) { for (var e = 1, i = 0; Math.round(t * e) / e !== t;) e *= 10, i++; return i } }, ut.getAngleFromPoint = function(t, e) { - var i = e.x - t.x, - n = e.y - t.y, - a = Math.sqrt(i * i + n * n), - r = Math.atan2(n, i); - return r < -.5 * Math.PI && (r += 2 * Math.PI), { angle: r, distance: a } - }, ut.distanceBetweenPoints = function(t, e) { return Math.sqrt(Math.pow(e.x - t.x, 2) + Math.pow(e.y - t.y, 2)) }, ut.aliasPixel = function(t) { return t % 2 == 0 ? 0 : .5 }, ut._alignPixel = function(t, e, i) { - var n = t.currentDevicePixelRatio, - a = i / 2; - return Math.round((e - a) * n) / n + a - }, ut.splineCurve = function(t, e, i, n) { - var a = t.skip ? e : t, - r = e, - o = i.skip ? e : i, - s = Math.sqrt(Math.pow(r.x - a.x, 2) + Math.pow(r.y - a.y, 2)), - l = Math.sqrt(Math.pow(o.x - r.x, 2) + Math.pow(o.y - r.y, 2)), - u = s / (s + l), - d = l / (s + l), - h = n * (u = isNaN(u) ? 0 : u), - c = n * (d = isNaN(d) ? 0 : d); - return { previous: { x: r.x - h * (o.x - a.x), y: r.y - h * (o.y - a.y) }, next: { x: r.x + c * (o.x - a.x), y: r.y + c * (o.y - a.y) } } - }, ut.EPSILON = Number.EPSILON || 1e-14, ut.splineCurveMonotone = function(t) { - var e, i, n, a, r, o, s, l, u, d = (t || []).map(function(t) { return { model: t._model, deltaK: 0, mK: 0 } }), - h = d.length; - for (e = 0; e < h; ++e) - if (!(n = d[e]).model.skip) { - if (i = e > 0 ? d[e - 1] : null, (a = e < h - 1 ? d[e + 1] : null) && !a.model.skip) { - var c = a.model.x - n.model.x; - n.deltaK = 0 !== c ? (a.model.y - n.model.y) / c : 0 - }!i || i.model.skip ? n.mK = n.deltaK : !a || a.model.skip ? n.mK = i.deltaK : this.sign(i.deltaK) !== this.sign(n.deltaK) ? n.mK = 0 : n.mK = (i.deltaK + n.deltaK) / 2 - } - for (e = 0; e < h - 1; ++e) n = d[e], a = d[e + 1], n.model.skip || a.model.skip || (ut.almostEquals(n.deltaK, 0, this.EPSILON) ? n.mK = a.mK = 0 : (r = n.mK / n.deltaK, o = a.mK / n.deltaK, (l = Math.pow(r, 2) + Math.pow(o, 2)) <= 9 || (s = 3 / Math.sqrt(l), n.mK = r * s * n.deltaK, a.mK = o * s * n.deltaK))); - for (e = 0; e < h; ++e)(n = d[e]).model.skip || (i = e > 0 ? d[e - 1] : null, a = e < h - 1 ? d[e + 1] : null, i && !i.model.skip && (u = (n.model.x - i.model.x) / 3, n.model.controlPointPreviousX = n.model.x - u, n.model.controlPointPreviousY = n.model.y - u * n.mK), a && !a.model.skip && (u = (a.model.x - n.model.x) / 3, n.model.controlPointNextX = n.model.x + u, n.model.controlPointNextY = n.model.y + u * n.mK)) - }, ut.nextItem = function(t, e, i) { return i ? e >= t.length - 1 ? t[0] : t[e + 1] : e >= t.length - 1 ? t[t.length - 1] : t[e + 1] }, ut.previousItem = function(t, e, i) { return i ? e <= 0 ? t[t.length - 1] : t[e - 1] : e <= 0 ? t[0] : t[e - 1] }, ut.niceNum = function(t, e) { - var i = Math.floor(ut.log10(t)), - n = t / Math.pow(10, i); - return (e ? n < 1.5 ? 1 : n < 3 ? 2 : n < 7 ? 5 : 10 : n <= 1 ? 1 : n <= 2 ? 2 : n <= 5 ? 5 : 10) * Math.pow(10, i) - }, ut.requestAnimFrame = "undefined" == typeof window ? function(t) { t() } : window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame || function(t) { return window.setTimeout(t, 1e3 / 60) }, ut.getRelativePosition = function(t, e) { - var i, n, a = t.originalEvent || t, - r = t.target || t.srcElement, - o = r.getBoundingClientRect(), - s = a.touches; - s && s.length > 0 ? (i = s[0].clientX, n = s[0].clientY) : (i = a.clientX, n = a.clientY); - var l = parseFloat(ut.getStyle(r, "padding-left")), - u = parseFloat(ut.getStyle(r, "padding-top")), - d = parseFloat(ut.getStyle(r, "padding-right")), - h = parseFloat(ut.getStyle(r, "padding-bottom")), - c = o.right - o.left - l - d, - f = o.bottom - o.top - u - h; - return { x: i = Math.round((i - o.left - l) / c * r.width / e.currentDevicePixelRatio), y: n = Math.round((n - o.top - u) / f * r.height / e.currentDevicePixelRatio) } - }, ut.getConstraintWidth = function(t) { return i(t, "max-width", "clientWidth") }, ut.getConstraintHeight = function(t) { return i(t, "max-height", "clientHeight") }, ut._calculatePadding = function(t, e, i) { return (e = ut.getStyle(t, e)).indexOf("%") > -1 ? i * parseInt(e, 10) / 100 : parseInt(e, 10) }, ut._getParentNode = function(t) { var e = t.parentNode; return e && "[object ShadowRoot]" === e.toString() && (e = e.host), e }, ut.getMaximumWidth = function(t) { - var e = ut._getParentNode(t); - if (!e) return t.clientWidth; - var i = e.clientWidth, - n = i - ut._calculatePadding(e, "padding-left", i) - ut._calculatePadding(e, "padding-right", i), - a = ut.getConstraintWidth(t); - return isNaN(a) ? n : Math.min(n, a) - }, ut.getMaximumHeight = function(t) { - var e = ut._getParentNode(t); - if (!e) return t.clientHeight; - var i = e.clientHeight, - n = i - ut._calculatePadding(e, "padding-top", i) - ut._calculatePadding(e, "padding-bottom", i), - a = ut.getConstraintHeight(t); - return isNaN(a) ? n : Math.min(n, a) - }, ut.getStyle = function(t, e) { return t.currentStyle ? t.currentStyle[e] : document.defaultView.getComputedStyle(t, null).getPropertyValue(e) }, ut.retinaScale = function(t, e) { - var i = t.currentDevicePixelRatio = e || "undefined" != typeof window && window.devicePixelRatio || 1; - if (1 !== i) { - var n = t.canvas, - a = t.height, - r = t.width; - n.height = a * i, n.width = r * i, t.ctx.scale(i, i), n.style.height || n.style.width || (n.style.height = a + "px", n.style.width = r + "px") - } - }, ut.fontString = function(t, e, i) { return e + " " + t + "px " + i }, ut.longestText = function(t, e, i, n) { - var a = (n = n || {}).data = n.data || {}, - r = n.garbageCollect = n.garbageCollect || []; - n.font !== e && (a = n.data = {}, r = n.garbageCollect = [], n.font = e), t.font = e; - var o = 0; - ut.each(i, function(e) { null != e && !0 !== ut.isArray(e) ? o = ut.measureText(t, a, r, o, e) : ut.isArray(e) && ut.each(e, function(e) { null == e || ut.isArray(e) || (o = ut.measureText(t, a, r, o, e)) }) }); - var s = r.length / 2; - if (s > i.length) { - for (var l = 0; l < s; l++) delete a[r[l]]; - r.splice(0, s) - } - return o - }, ut.measureText = function(t, e, i, n, a) { var r = e[a]; return r || (r = e[a] = t.measureText(a).width, i.push(a)), r > n && (n = r), n }, ut.numberOfLabelLines = function(t) { var e = 1; return ut.each(t, function(t) { ut.isArray(t) && t.length > e && (e = t.length) }), e }, ut.color = G ? function(t) { return t instanceof CanvasGradient && (t = ot.global.defaultColor), G(t) } : function(t) { return console.error("Color.js not found!"), t }, ut.getHoverColor = function(t) { return t instanceof CanvasPattern || t instanceof CanvasGradient ? t : ut.color(t).saturate(.5).darken(.1).rgbString() } - }(), ai._adapters = si, ai.Animation = pt, ai.animationService = vt, ai.controllers = ue, ai.DatasetController = kt, ai.defaults = ot, ai.Element = gt, ai.elements = Nt, ai.Interaction = pe, ai.layouts = xe, ai.platform = Ve, ai.plugins = He, ai.Scale = fi, ai.scaleService = Ee, ai.Ticks = li, ai.Tooltip = Je, ai.helpers.each(en, function(t, e) { ai.scaleService.registerScaleType(e, t, t._defaults) }), kn) kn.hasOwnProperty(Dn) && ai.plugins.register(kn[Dn]); - ai.platform.initialize(); - var Cn = ai; - return "undefined" != typeof window && (window.Chart = ai), ai.Chart = ai, ai.Legend = kn.legend._element, ai.Title = kn.title._element, ai.pluginService = ai.plugins, ai.PluginBase = ai.Element.extend({}), ai.canvasHelpers = ai.helpers.canvas, ai.layoutService = ai.layouts, ai.LinearScaleBase = yi, ai.helpers.each(["Bar", "Bubble", "Doughnut", "Line", "PolarArea", "Radar", "Scatter"], function(t) { ai[t] = function(e, i) { return new ai(e, ai.helpers.merge(i || {}, { type: t.charAt(0).toLowerCase() + t.slice(1) })) } }), Cn -}); \ No newline at end of file diff --git a/webapp/app/views/static/overview/js/script.min.js b/webapp/app/views/static/overview/js/script.min.js deleted file mode 100644 index 77a18d1..0000000 --- a/webapp/app/views/static/overview/js/script.min.js +++ /dev/null @@ -1 +0,0 @@ -document.addEventListener("DOMContentLoaded", (function() { var t = document.querySelectorAll("[data-bss-chart]"); for (var a of t) a.chart = new Chart(a, JSON.parse(a.dataset.bssChart)) }), !1); \ No newline at end of file diff --git a/webapp/app/views/static/slider.css b/webapp/app/views/static/slider.css deleted file mode 100644 index 64b4349..0000000 --- a/webapp/app/views/static/slider.css +++ /dev/null @@ -1,211 +0,0 @@ -body.light-theme { - --text-color: #222; - --bkg-color: #fff; - --card-color: #bdbdbd; - --formcontrol: #d8d8d8; - --navtoggler: #eee; - --pagination: #2739ff; - --pagination-text: #fff; - --nav-color: #5966f3; - --piglet-color: #2739ff; -} - -body.dark-theme { - --text-color: #eee; - --piglet-color: #ff9edf; - --bkg-color: #181b1f; - --card-color: rgb(32, 32, 32); - --formcontrol: #151b61; - --navtoggler: #eee; - --pagination: #fff; - --pagination-text: #000; - --nav-color: #13195c; -} - -body { - background: var(--bkg-color); - color: var(--text-color); -} -.text-piglet { - color: var(--piglet-color); -} -.card { - background: var(--bkg-color); - color: var(--text-color); -} -.accordion-body { - background: var(--card-color); - color: var(--text-color); - border-bottom-right-radius: 10px; - border-bottom-left-radius: 10px; -} -.accordion-button { - background: var(--card-color); - color: var(--text-color); -} -.accordion-button:not(.collapsed){ - background: var(--card-color); - color: var(--text-color); -} - -.header-piglet { - background: var(--bkg-color); - color: var(--text-color); -} - -.table { - background: var(--bkg-color); - color: var(--text-color); -} - -.btn-piglet { - background: var(--piglet-color); - color: var(--pagination-text); -} -.btn-piglet-outline { - background: var(--pagination-text); - border-color: var(--piglet-color); - color: var(--piglet-color); -} -.btn-piglet-outline:hover { - color: var(--piglet-color); -} - -.btn-piglet:hover { - color: var(--pagination-text); -} - -.form-control { - background-color: var(--formcontrol); - color: var(--text-color); -} - -.navbar-toggler-icon { - background: var(--navtoggler); -} - -.page-link { - background-color: var(--bkg-color); - color: var(--text-color); -} - -.page-item.active .page-link { - color: var(--pagination-text); - background-color: var(--pagination); - border-color: var(--text-color); -} - -.nav { - background: var(--nav-color); - color: var(--text-color); -} - -.l-navbar { - background: var(--nav-color); - color: var(--text-color); -} - -.header { - background: var(--bkg-color); - color: var(--text-color); -} - -.switch { - position: relative; - display: inline-block; - width: 60px; - height: 34px; -} - -.switch input { - opacity: 0; - width: 0; - height: 0; -} - -.slider { - position: absolute; - cursor: pointer; - top: 0; - left: 0; - right: 0; - bottom: 0; - background-color: #ccc; - -webkit-transition: .4s; - transition: .4s; -} - -.slider:before { - position: absolute; - content: ""; - height: 26px; - width: 26px; - left: 4px; - bottom: 4px; - background-color: white; - -webkit-transition: .4s; - transition: .4s; -} - -input:checked+.slider { - background-color: #2196F3; -} - -input:focus+.slider { - box-shadow: 0 0 1px #2196F3; -} - -input:checked+.slider:before { - -webkit-transform: translateX(26px); - -ms-transform: translateX(26px); - transform: translateX(26px); -} - - -/* Rounded sliders */ - -.slider.round { - border-radius: 34px; -} - -.slider.round:before { - border-radius: 50%; -} -.accordion-item:last-of-type .accordion-button.collapsed { - border-bottom-right-radius: 10px; - border-bottom-left-radius: 10px; -} - -.dropdown-menu { - background: var(--bkg-color); - color: var(--piglet-color); -} -.dropdown-item.focus, .dropdown-item:hover { - background-color: var(--bkg-color); - color: var(--piglet-color); -} -.dropdown-item { - color: var(--text-color) -} -.link-piglet-nav { - color: var(--text-color); - text-decoration: none; -} -.link-piglet-nav:hover { - color: var(--piglet-color); -} - -.modal-content{ - color: var(--piglet-color); -} - -.modal-header { - background-color: var(--bkg-color); -} -.modal-body { - background-color: var(--bkg-color); -} - -.hidden { - display: none; -} diff --git a/webapp/app/views/templates/budget_settings.html b/webapp/app/views/templates/budget_settings.html index 8c70cb2..8a333d6 100644 --- a/webapp/app/views/templates/budget_settings.html +++ b/webapp/app/views/templates/budget_settings.html @@ -23,7 +23,7 @@
- @@ -31,119 +31,114 @@
-
- - +
+ + + + + + + + + {% for i in my_budgets %} + {% if i.joined == 1 %} - - - - - - -
- {% for i in my_budgets %} - {% if i.joined == 1 %} -
- - - + + - - {% else %} - - - - + + {% else %} + + + + + - - {% endif %} - {% endfor %} - - + + {% endif %} + {% endfor %} +
NameCurrencyActions
NameCurrencyActions
{{ i.name }}{{ i.currency }} - - + {{ i.name }}{{ i.currency }} + -
{{ i.name }} {{ i.currency }} - - - - - - + +
{{ i.name }} {{ i.currency }} + + + + + + -
-
@@ -152,39 +147,6 @@
No unread notifications 🚀
-
Email is not verified - Resend
+
Email is not verified - + Resend +
{% endif %} - - - diff --git a/webapp/app/views/templates/new-order.html b/webapp/app/views/templates/new-order.html index 73cc0db..8fc4a3f 100644 --- a/webapp/app/views/templates/new-order.html +++ b/webapp/app/views/templates/new-order.html @@ -1,5 +1,4 @@ {% include "navbar.html" %} -
@@ -15,36 +14,40 @@
Add Orde - + -
- + - - + + - +
+ @@ -90,15 +93,22 @@
Import O const recurringfield = document.getElementById('addRecurringOrder') + function toggleRecurringOrder() { + recurringfield.classList.toggle('hidden'); + futurefield.classList.add('hidden'); + }; + function removeRecurringOrder() { + recurringfield.classList.add('hidden') + } function toggleFutureSpend() { futurefield.classList.toggle('hidden'); + recurringfield.classList.add('hidden'); }; function removeFutureSpend() { futurefield.classList.add('hidden') + recurringfield.classList.add('hidden'); } -
{% extends "footer.html" %} - \ No newline at end of file diff --git a/webapp/app/views/templates/new_settings.html b/webapp/app/views/templates/new_settings.html index c9bc28c..57fa0e7 100644 --- a/webapp/app/views/templates/new_settings.html +++ b/webapp/app/views/templates/new_settings.html @@ -48,8 +48,8 @@
Notifica
-
- +
+
diff --git a/webapp/app/views/templates/notifications.html b/webapp/app/views/templates/notifications.html index c550e38..52e81f9 100644 --- a/webapp/app/views/templates/notifications.html +++ b/webapp/app/views/templates/notifications.html @@ -8,7 +8,7 @@
Notifica
-
Notification Type
+
@@ -32,29 +32,5 @@
Notifica - - - {% extends "footer.html" %} diff --git a/webapp/app/views/templates/passwordlost.html b/webapp/app/views/templates/passwordlost.html index f546bcc..3d7aa43 100644 --- a/webapp/app/views/templates/passwordlost.html +++ b/webapp/app/views/templates/passwordlost.html @@ -5,9 +5,18 @@ Piglet Login - - + + + + + @@ -39,7 +48,7 @@
-
+
diff --git a/webapp/app/views/templates/register.html b/webapp/app/views/templates/register.html index 8f430ff..8e18177 100644 --- a/webapp/app/views/templates/register.html +++ b/webapp/app/views/templates/register.html @@ -5,9 +5,18 @@ Piglet | Register - - + + + + + @@ -44,7 +53,7 @@
-
+
@@ -53,10 +62,6 @@ - - - - diff --git a/webapp/config/python/requirements.txt b/webapp/config/python/requirements.txt index d925808..e258be1 100644 --- a/webapp/config/python/requirements.txt +++ b/webapp/config/python/requirements.txt @@ -24,3 +24,4 @@ passlib jose python-jose pdfquery +pillow
Timestamp