diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 index e69de29..cb76b31 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +resources/ diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..12caa8b --- /dev/null +++ b/.prettierrc @@ -0,0 +1,4 @@ +{ + "tabWidth": 4, + "printWidth": 10000 +} \ No newline at end of file diff --git a/404.html b/404.html old mode 100644 new mode 100755 index 16975b7..cfe164a --- a/404.html +++ b/404.html @@ -1,74 +1,74 @@ - - - - - - - - - - - - - - - - - - - - - - - - - Selenite - - - - - - - - - - -
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - + + + + + + + + + + + 404 | Selenite + + + + + +

page not found

+

we could not find the page you were trying to open. try again?

+

:3

+ diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/about.html b/about.html old mode 100644 new mode 100755 index 6f80044..e0b30e5 --- a/about.html +++ b/about.html @@ -1,5 +1,5 @@ - + diff --git a/ad.html b/ad.html old mode 100644 new mode 100755 diff --git a/ads.txt b/ads.txt old mode 100644 new mode 100755 diff --git a/apps.html b/apps.html old mode 100644 new mode 100755 index 122685e..8887a74 --- a/apps.html +++ b/apps.html @@ -12,122 +12,36 @@ - - + + + - Apps | Selenite + Projects | Selenite - + - -
- -
-
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - - -
-
- - - -
- - - - +

xx games loaded..

+

starred apps

+
- -

Starred Apps

-

Star some apps for things to show up here!

-
- -

All Apps

+

all apps

-
- Add Game logo -

Suggest a app!

-
-

apps loading..

-

apps not loading? click ctrl + shift + r

- +

games loading..

+

nothing was found! try a new search query.

-
-
- - - diff --git a/backgrounds.html b/backgrounds.html deleted file mode 100644 index db85240..0000000 --- a/backgrounds.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - Selenite - - - - - - - - - - - -
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - - -
-
- - 邦乔彦 - - - Matt Vince - - - Rafaël De Jongh - - - a456pur -
- - - - - diff --git a/blank.html b/blank.html old mode 100644 new mode 100755 diff --git a/bookmarklets.html b/bookmarklets.html old mode 100644 new mode 100755 index b8107ff..f40b69e --- a/bookmarklets.html +++ b/bookmarklets.html @@ -1,98 +1,75 @@ - + - - - - - + + + + + + + + + + + + - + - - - - + + + + - Bookmarklets | Selenite + Selenite - - - - - + - + -
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - - -
- -
- - - - -

Bookmarklets

-

Official Selenite Bookmarklets

+

bookmarklets

+

drag the underlined text to your bookmarks bar and click it to use it

- Selenite Save Utility -

This is the official Selenite Save Utility, which allows you to download your data from any website easily.

+ Adblocker +

This is a simple adblocker in a bookmarklet, may not work that great.

- Selenite Upload Utility -

This is the official Selenite Upload Utility, which allows you to upload a Selenite save file to any website easily.

-
-
- Selenite Adblocker -

This is the official Selenite Adblocker bookmarklet, which blocks suspicious frames that are likely advertisements.

-
-
- Selenite Minified -

This is a minified version of Selenite, that you can open at any time, without relying on a single website.

-
-
- The Ultimate Tab Cloak + The Ultimate Tab Cloak

Disguise any website you're on as Canvas, Desmos, or Google Drive!

-

Other Bookmarklets

- Car Axle Client -

Car Axle Client is a bookmarklet with tons of features, including a mini browser, YouTube embedder, and tons of other smaller scripts! (made by Penguinify)

-
-
- Stats.js -

This allows you to view your FPS, RAM, and MS.

+ Stats.js +

This allows you to view performance stats.

- Edit any page + Edit any page

This allows you to edit the text of any webpage.

- X-Ray Goggles + X-Ray Goggles

This allows you to view and edit the source code of any website, like a more powerful version of "Edit any page".

@@ -100,35 +77,25 @@

This bookmarklet floods your history. Credits to awesome78910.

- Dark Mode + Dark Mode

This sets any page to dark mode.

- Piano + Piano

This adds a piano to the page.

- Developer Console + Developer Console

This adds all features of the developer console to whatever page your on.

- Asteroids + Asteroids

This allows you to play Asteroids on the website you are on, destroying everything.

- Katamari + Katamari

This allows you to collect the words on the page into a ball. Fun game, I recommend playing it.

-
- - \ No newline at end of file diff --git a/contact.html b/contact.html old mode 100644 new mode 100755 diff --git a/css/bookmarklets.css b/css/bookmarklets.css new file mode 100644 index 0000000..6f8f3f3 --- /dev/null +++ b/css/bookmarklets.css @@ -0,0 +1,47 @@ +.bookmarklet { + width: 90vw; + display: flex; + flex-direction: row; + justify-content: center; + flex-wrap: wrap; + height: 100%; + gap: 0px; +} +.bookmarkletdiv { + width: 25vw; + height: 15vh; + background-color: color-mix(in srgb, var(--color-2) 40%, #00000000 60%); + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + border-radius: 20px; + margin: 15px; + transition-duration: 0.25s; + backdrop-filter: blur(2px); + box-shadow: 0 0 10px var(--color-2); +} +.bookmarkletdiv a { + width: 90%; +} +.bookmarkletdiv:hover { + transform: scale(1.1); + filter:brightness(1.15); +} +#bookmarklets { + display: flex; + height: auto; + width: 90%; + flex-direction: row; + justify-content: center; + flex-wrap: wrap; +} +@-moz-document url-prefix() { + .bookmarkletdiv { + backdrop-filter: blur(0); + } +} +body[fast] .bookmarkletdiv { + background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%); + backdrop-filter: blur(0); +} \ No newline at end of file diff --git a/css/games.css b/css/games.css new file mode 100755 index 0000000..0506a9c --- /dev/null +++ b/css/games.css @@ -0,0 +1,115 @@ +game { + width: 20vw; + height: 10vh; + background-color: color-mix(in srgb, var(--color-2) 40%, #00000000 60%); + display: flex; + justify-content: center; + align-items: center; + cursor: pointer; + border-radius: 20px; + margin: 15px; + /* transition-duration: 0.25s; */ + backdrop-filter: blur(2px); + box-shadow: 0 0 10px var(--color-2); +} +game:hover { + transform: scale(1.1); + filter:brightness(1.15); +} +game img { + height: 80%; + border-radius: 15px; + aspect-ratio: 1 / 1; + margin: 10px; + justify-self: left; + margin-right: auto; +} +#holder h1 { + font-size: 14px; + margin: 15px; + width: 80%; + text-align: right; + height: 70%; +} +#holder { + width: 70%; + height: auto; + display: flex; + flex-direction: column; + align-items: flex-end; +} +#star { + margin-top: 0px; + width: 10%; + margin-left: auto; + margin-right: 15px; + /* transition-duration: 0.25s; */ +} +#star:hover { + transform: scale(1.1); + filter: drop-shadow(0 0 5px var(--color-1)) +} +#games, #starredgames, #topGames { + width: 90vw; + display: flex; + flex-direction: row; + justify-content: center; + flex-wrap: wrap; + height: 100%; + gap: 0px; +} + +#noResults, #loadingMsg { + font-size: 24px; + color: var(--color-1); +} +#starredHeader, #allHeader, #topHeader { + font-size: 32px; + color: var(--color-1); +} +#noResults, #starredHeader, #allHeader, #topHeader { + display: none; +} +body { + justify-content: flex-start; +} +@-moz-document url-prefix() { + game { + backdrop-filter: blur(0); + } +} +warnings { + position: absolute; + top: -20px; + left: -20px; + display: flex; + justify-content: center; + align-items: center; +} +warning { + width: 25px; + height: 25px; + color: var(--text-color); + border-radius: 100%; + display: flex; + justify-content: center; + align-items: center; + margin: 4px; + font-size: 12px; +} +.gore { + background-color: rgb(100, 20, 20); + box-shadow: 0 0 10px rgb(100, 20, 20); +} +.thirteen { + background-color: rgb(0, 0, 0); + box-shadow: 0 0 10px rgb(0, 0, 0); +} +.horror { + background-color: rgb(118, 118, 118); + box-shadow: 0 0 10px rgb(193, 193, 193); +} +body[fast] game { + background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%); + backdrop-filter: blur(0); +} \ No newline at end of file diff --git a/css/loader.css b/css/loader.css new file mode 100644 index 0000000..1156a05 --- /dev/null +++ b/css/loader.css @@ -0,0 +1,59 @@ +body { + overflow: hidden; +} +#gameFrame { + width: 100vw; + height: 90vh; + margin: 0; +} +#infobox { + height: 10vh; + width: 100%; + display: flex; + justify-content: center; + align-items: center; + background-color: #000000; + backdrop-filter: blur(4px); +} +#infobox img { + height: 90%; + margin: 0.5%; + aspect-ratio: 1 / 1; + border-radius: 8px; +} +#infobox h2 { + margin-right: auto; +} +.button { + margin: 4px; + padding: 2px; + width: 7%; + transition-duration: 0.25s; + cursor: pointer; + filter: brightness(0.9); +} +.button:hover { + filter: brightness(1); + transform: scale(1.1); +} +.button:active { + filter: brightness(1.2); + transform: scale(0.95); +} +.opposite { + width: 50%; + height: 100%; + display: flex; + justify-content: flex-end; + align-items: center; + margin: 12px; +} +@-moz-document url-prefix() { + #gamecontainer { + backdrop-filter: blur(0); + } +} +body[fast] #gamecontainer { + background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%); + backdrop-filter: blur(0); +} \ No newline at end of file diff --git a/css/main.css b/css/main.css new file mode 100755 index 0000000..cae5684 --- /dev/null +++ b/css/main.css @@ -0,0 +1,124 @@ +@import url("/css/themes.css"); +@import url('https://fonts.googleapis.com/css2?family=Mulish&display=swap'); +:root { + --text-color: #fff; + --bg-1: #5a189a; + --bg-2: #10002b; + --color-1: #E0AAFF; + --color-2: #7B2CBF; + --color-3: #3C096C; + --color-4: #240046; +} +html, +body { + /* height: 100vh; */ + width: 100vw; + color: var(--text-color); + background-color: black; +} + +* { + padding: 0; + margin: 0; + border: none; + font-family: "Mulish", serif; + transition-duration: 0.5s; +} +body { + animation: 1s ease-out loadIn; + user-select: none; +} +@keyframes loadIn { + from {opacity: 0;transform: translateY(-32px);} + to {opacity: 1;transform: translateY(0px);} +} + +body { + display: flex; + filter: drop-shadow(0px 0px 4px #ffffff99); +} + +.samerow { + display: flex; + justify-content: center; + gap: 0; + flex-wrap: wrap; + align-items: center; + justify-content: center; +} +.samerow img { + width: 80px; + aspect-ratio: 1 / 1; + padding: 5px; + margin: 10px; + user-select: none; +} + +h1 { + font-size: 48px; + margin: 10px; +} +h2 { + font-size: 32px; + margin: 8px; +} +h3 { + font-size: 24px; + margin: 4px; +} +p { + font-size: 16px; + margin: 2px; +} +a { + color: var(--text-color); +} +img { + image-rendering: pixelated; +} +select, +::picker(select) { + appearance: base-select; +} +select { + padding: 8px; + background-color: color-mix(in srgb, var(--color-4) 30%, #00000000 70%); + /* transition-duration: 0.25s; */ + color: var(--text-color); + border-radius: 4px; +} +select:hover, +select:focus { + background: color-mix(in srgb, var(--color-3) 60%, #00000000 40%); +} +::picker(select) { + border: none; + border-radius: 8px; +} +option { + display: flex; + background: color-mix(in srgb, var(--color-3) 30%, var(--color-4) 60%); + padding: 2px; + transition: 0.25s; + color: var(--text-color) +} +option:hover { + background: color-mix(in srgb, var(--color-2) 40%, var(--color-4) 50%); +} +option:focus { + background: color-mix(in srgb, var(--color-2) 60%, var(--color-4) 40%); +} +mobile-warning, loading-game { + position: absolute; + top: 0; + left: 0; + width: 100vw; + height: 100vh; + z-index: 9999999999; + display: none; + justify-content: center; + align-items: center; + flex-direction: column; + /* transition-duration: 1s; */ + text-align: center; +} \ No newline at end of file diff --git a/css/pages.css b/css/pages.css new file mode 100755 index 0000000..b5d960a --- /dev/null +++ b/css/pages.css @@ -0,0 +1,180 @@ +@property --gradient-x { + syntax: ""; + inherits: false; + initial-value: 100%; +} +@property --gradient-y { + syntax: ""; + inherits: false; + initial-value: 0%; +} +body { + background: rgb(16, 0, 43); + background: radial-gradient( + circle at var(--gradient-x) var(--gradient-y), + var(--bg-1) 0%, + var(--bg-2) 100% + ); + background-size: 100vw 100vh; + background-repeat: no-repeat; + background-attachment: fixed; + transition: --gradient-x 30s ease-in-out, + --gradient-y 30s ease-in-out; + overflow-x: hidden; +} + +body { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + text-align: center; + width: 100vw; + min-height: 100vh; + position: relative; +} +#pjs { + width: 100vw; + height: 100vh; + position: absolute; + z-index: -1000; + border: none; + overflow-y: hidden; + top: 0; + transition-duration: 0.05s; + transition-timing-function: ease-out; +} +button { + border-style: solid; + border-width: 2px; + padding: 12px; + margin: 8px; + text-align: center; + border-radius: 10px; + background-color: var(--color-2); + border-color: var(--color-3); + color: var(--text-color); + outline: none; + transition-duration: 0.25s; + font-size: 14px; + text-shadow: var(--color-1) 0 0 10px; + cursor:pointer; +} +button:hover { + filter: brightness(1.1); + transform: scale(1.05); +} +input[type=text], input[type=password] { + width: 70%; + border-style: solid; + border-width: 2px; + padding: 18px; + margin: 5px; + text-align: center; + border-radius: 10px; + background-color: var(--color-2); + border-color: var(--color-3); + color: var(--text-color); + outline: none; + transition-duration: 0.25s; + font-size: 20px; + text-shadow: var(--color-1) 0 0 10px; +} +input[type=text]:focus, input[type=password]:focus { + filter:brightness(1.25) !important; +} +input[type=text]:hover, input[type=password]:hover { + filter:brightness(1.1); +} +input[type=text]::placeholder, input[type=password]::placeholder { + color: color-mix(in srgb, var(--text-color) 20%, #00000000 80%); + text-shadow: color-mix(in srgb, var(--text-color) 40%, #00000000 60%) 0 0 10px; +} +*::-webkit-scrollbar { + height: 10px; + width: 8px; +} +*::-webkit-scrollbar-track { + border-radius: 5px; + background-color: var(--color-4); +} + +*::-webkit-scrollbar-track:hover { + filter:brightness(1.1); +} + +*::-webkit-scrollbar-track:active { + filter:brightness(1.25); +} + +*::-webkit-scrollbar-thumb { + border-radius: 5px; + background-color: var(--color-2); +} + +*::-webkit-scrollbar-thumb:hover { + filter:brightness(1.1); +} + +*::-webkit-scrollbar-thumb:active { + filter:brightness(1.25); +} + +.title { + color: var(--color-1); + text-shadow: var(--color-1) 0 0 24px; +} +.h-captcha { + margin: 8px; +} +#popup { + width: 50%; + height: 40%; + z-index: 99999999; + position: absolute; + position: absolute; + top: 50%; + left: 50vw; + transform: translate(-50%, -50%); + display: flex; + flex-direction: column; + background-color: color-mix(in srgb, var(--color-2) 70%, #00000000 30%); + border-radius: 10px; + justify-content: center; + align-items: center; + backdrop-filter: blur(2px); + box-shadow: 0 0 10px var(--color-2); +} +#popup input { + width: 90%; + height: 30%; +} +#popup input[type=file] { + height: auto; + text-align-last: center; + display: block; + margin: 30px; +} +#popup h1 { + font-size: 32px; +} + +#popup #close { + position: absolute; + right: 10px; + top: 10px; + outline: none; + background-color: color-mix(in srgb, var(--color-4) 20%, #00000000 80%);; +} +input[type=checkbox] { + margin: 4px; +} +@-moz-document url-prefix() { + #popup { + backdrop-filter: blur(0); + } +} +body[fast] #popup { + background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%); + backdrop-filter: blur(0); +} \ No newline at end of file diff --git a/css/profile.css b/css/profile.css new file mode 100644 index 0000000..135af0a --- /dev/null +++ b/css/profile.css @@ -0,0 +1,147 @@ +body.enter-on { + overflow: hidden; +} +section { + width: 90%; + height: 240px; + margin: 24px; + background-color: color-mix(in srgb, var(--color-2) 40%, #00000000 60%); + display: flex; + align-items: center; + justify-content: center; + box-shadow: 0 0 10px var(--color-2); + border-radius: 20px; + backdrop-filter: blur(6px); +} +.controls { + width: 48px !important; + margin: 8px !important; + cursor: pointer; +} +section img { + height: 90%; + aspect-ratio: 1 / 1; + margin: 32px; + border-radius: 16px; +} +.column { + flex-direction: column; +} +right { + margin-left: auto; + margin-right: 16px; +} +.badges img { + width: 32px; + border-radius: 2px; + margin: 8px; +} +p { + font-size: 24px; + letter-spacing: 0.5px; + line-height: 36px; +} +.profile-element { + margin-left: auto; + margin-right: auto; + max-width: 33.3%; +} +.profile-element h2 { + font-size: 32px; +} +.profile-element h2 { + font-size: 28px; +} +.profile-element h3 { + font-size: 20px; +} +#enter { + position: absolute; + top: 0; + left: 0; + width: 100vw; + height: 100vh; + background-color: color-mix(in srgb, #000000 60%, #00000000 40%); + backdrop-filter: blur(16px); + z-index: 9999999999; + cursor: pointer; + display: flex; + justify-content: center; + align-items: center; + flex-direction: column; + transition-duration: 1s; +} +#search { + height: 36px !important; +} +.edit { + cursor: context-menu; +} +#blur { + position: absolute; + width: 100vw; + height: 100vh; + top: 0; + left: 0; + backdrop-filter: blur(16px); + z-index: 999; + display: none; +} +results { + display: flex; + width: 95%; + height: 120px; + overflow-y: scroll; + background-color: color-mix(in srgb, var(--color-3) 50%, #00000000 50%); + box-shadow: 0 0 10px var(--color-3); + margin-top: 12px; + flex-direction: column; + border-radius: 8px; +} +result { + border-color: white; + border-width: 4px; + cursor: pointer; + padding: 4px; + margin: 2px; + width: auto; + text-align: left; + display: none; + flex-direction: column; + transition-duration: 0.25s; +} +result:hover { + background-color: #ffffff11; +} +result h2 { + font-size: 16px; + margin: 0px; +} +result p { + font-size: 12px; + margin: 0px; + line-height: 16px; + width: 80%; +} +.about { + width: 70%; +} +@media screen and (max-width: 1000px) { + section { + flex-wrap: wrap; + height: auto; + } + .profile-element { + max-width: 50%; + width: 50%; + } +} +@-moz-document url-prefix() { + section { + backdrop-filter: blur(0); + } +} +body[fast] section { + background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%); + backdrop-filter: blur(0); +} \ No newline at end of file diff --git a/css/settings.css b/css/settings.css new file mode 100644 index 0000000..a24ae80 --- /dev/null +++ b/css/settings.css @@ -0,0 +1,39 @@ +section { + min-width: 20%; + height: 400px; + padding: 8px; + margin: 16px; + background-color: color-mix(in srgb, var(--color-2) 40%, #00000000 60%); + display: flex; + flex-direction: column; + /* justify-content: center; */ + align-items: center; + flex-wrap: wrap; + border-radius: 20px; + margin: 15px; + transition-duration: 0.25s; + backdrop-filter: blur(2px); + box-shadow: 0 0 10px var(--color-2); +} +sections { + width: 90vw; + display: flex; + justify-content: center; + align-items: center; + flex-wrap: wrap; +} + +#colorPicker { + margin: 6px; +} + +@-moz-document url-prefix() { + section { + backdrop-filter: blur(0); + } +} + +body[fast] section { + background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%); + backdrop-filter: blur(0); +} \ No newline at end of file diff --git a/css/sidebar.css b/css/sidebar.css new file mode 100755 index 0000000..4ce9918 --- /dev/null +++ b/css/sidebar.css @@ -0,0 +1,147 @@ +body { + overflow: hidden; +} +sidebar { + background-color: linear-gradient(19deg,rgba(87, 199, 133, 1) 0%, rgba(237, 221, 83, 1) 100%);; + height: 100%; + width: 50px; + display: flex; + flex-direction: column; + align-items: center; + user-select: none; + z-index: 10; +} +.sidebar-item { + margin: 6px; + padding: 6px; + height: 26px; + width: 26px; + transition-duration: 0.5s; + transition-timing-function: ease-in-out; +} + +iframe { + width: calc(100% - 50px - 10px); + height: calc(100vh - 20px); + margin: 10px; + margin-right: 0px; + border-radius: 8px; +} + +.sidebar-divider { + height: 2px; + border-radius: 20px; + width: 80%; + background-color: #ffffff22; + /* auto is being stupid + 100vh minus height of 1 object 7 times minus the margin and padding of 7 objects (multiplied twice bc margin and padding on top and bottom) */ + margin-bottom: calc(100vh - 26px * 8 - ((6px + 6px) * 2) * 8); +} + +.sidebar-item-descriptor { + position: fixed; + right: 25px; + opacity: 0; + transform: translateY(-32px); + text-align: left; + background-color: black; + border-radius: 10px; + padding: 8px; + color: white; + font-size: 12px; + user-select: none; + pointer-events: none; + transition: opacity 0.5s 0.2s, right 0.5s 0.2s; + font-family: "Mulish", serif; +} +.sidebar-item:hover .sidebar-item-descriptor { + opacity: 1; + right: 55px; +} +#bottom-menu, #open-bottom-menu { + position: absolute; + bottom: -40px; + height: 50px; + left: 0; + right: 0; + width: 40%; + margin-left: auto; + margin-right: auto; + display: flex; + justify-content: center; + align-items: center; + background-color: black; + z-index: 5; + border-radius: 10px 10px 0 0; + cursor: pointer; + color: black; +} +#bottom-menu { + width: fit-content; + padding-left: 16px; + padding-right: 16px; +} +#open-bottom-menu { + bottom: 10px; + height: 15px; + width: 70px; + z-index: 5; + filter: drop-shadow(0 0 16px #fff5); +} +#bottom-menu[enabled=true] { + bottom: 10px; + color: white; + filter: drop-shadow(0 0 16px #fff5); + z-index: 0; +} +#open-bottom-menu[enabled=true] { + bottom: 60px; + filter: drop-shadow(0 0 0 #fff5); + opacity: 0; +} +alert { + border-radius: 4px; + display: flex; + flex-direction: column; + position: absolute; + width: 40%; + justify-content: center; + align-items: center; + padding: 8px; + color: white; + background-color: color-mix(in srgb, #d46c6c 80%, #00000000 20%); + backdrop-filter: blur(2px); + box-shadow: 0 0 10px #d46c6c; + left: 50%; + transform: translateX(-50%); + animation: fadeIn 1s ease-in-out forwards, fadeOut 1s ease-in-out forwards 14s; + cursor: pointer; +} +alert h1 { + font-size: 20px; + margin: 0; +} +alert p { + font-size: 16px; + margin: 0; +} +@keyframes fadeIn { + 0% { + opacity: 0; + top: -50px; + } + 100% { + opacity: 1; + top: 10px; + } +} +@keyframes fadeOut { + 0% { + opacity: 1; + top: 10px; + } + 100% { + opacity: 0; + top: -50px; + } +} \ No newline at end of file diff --git a/css/style.css b/css/style.css deleted file mode 100644 index 6a0502b..0000000 --- a/css/style.css +++ /dev/null @@ -1,673 +0,0 @@ -@import url("https://fonts.googleapis.com/css2?family=Prompt:wght@300&display=swap"); - -@keyframes loadInAnimation { - 0% { - opacity: 0; - } - 100% { - opacity: 100; - } -} - -:root { - --inputbg: #3c096c; - --inputborder: #5a189a; - --uibg: #240046; - --textcolor: #fff; - --bg: #10002b; - --margin: 4rem; -} -.hiddenUpload { - display: none; - visibility: hidden; -} -* { - transition-duration: 0.5s; - outline: none; - border: none; - box-sizing: border-box; - align-content: center; - text-align: center; - font-family: "Prompt", sans-serif; - color: var(--textcolor); -} -body { - margin: 0; - padding: 0; - background: var(--bg); - color: var(--textcolor); - background-position: center; - background-repeat: no-repeat; - background-size: cover; - background-attachment: fixed; -} - -header, -footer { - background-color: var(--uibg); - display: flex; - border-bottom: none; - font-weight:700; - padding: 0.7rem; - width: 100%; - z-index: 1; - justify-content: center; - text-align: center; - text-decoration: none; -} - -#time { -font-weight:100; -} -header { - top: 0; - border-radius: 0 0 20px 20px; - position: fixed; - box-shadow: 0 5px 10px var(--uibg); -} - -footer.noscroll { - position: fixed; - overflow: hidden; -} - -footer { - bottom: 0; - border-radius: 20px 20px 0 0; - box-shadow: 0 -5px 10px var(--uibg); -} - -footer a, -footer a:visited, -header a, -header a:visited { - margin-right: 1.5rem; - margin-left: 1.5rem; - text-decoration: none; -} - -footer a:hover, -header a:hover { - text-shadow: 2px 2px 6px var(--textcolor); -} - - -@media only screen and (max-width: 768px) { - header, - footer { - flex-direction: column; - align-items: center; - } - - header { - border-radius: 0; - } - - footer { - border-radius: 0; - } - * { - --margin: 12rem; - } -} - -main { - animation: 1.25s ease-in-out 0s 1 loadInAnimation; - align-items: center; - flex-direction: column; - display: flex; - min-height: calc(100vh - (2 * 0.7rem)); - gap: 0; - flex-wrap: wrap; - margin: auto; - margin-top: var(--margin); - width: 90%; - height:auto; -} -main#main.noscroll { - justify-content: center; -} -h1, -h2, -h3, -p, -a, -label { - margin: 0; - padding: 0; - text-shadow: var(--shadow); -} -.samerow { - display: flex; - justify-content: center; - gap: 0; - flex-wrap: wrap; - align-items: center; - justify-content: center -} -h1 { - font-size: 60px; -} - -h2 { - font-size: 40px; -} -h3 { - font-size: 20px; -} -p, -a { - font-size: 16px; -} - -button, -input#websubmit.submit, -input[type="submit"] { - cursor: pointer; - background-color: var(--inputbg); - border-color: var(--inputborder); - border-width: 2px; - border-radius: 10px; - border-style: solid; - padding: 7px; - margin-left: 20px; - margin-right: 20px; - margin: 10px; -} - -button:hover, -input#websubmit.submit:hover, -input[type="submit"]:hover { - filter: brightness(80%); - transform: scale(1.07); -} - -img { - width: 100%; - aspect-ratio: auto; - user-select: none; - filter: drop-shadow(var(--shadow)); - image-rendering: pixelated; -} - -.img-container a { - width: 100%; -} - -.img-container { - display: flex; - justify-content: center; - align-items: center; - flex-direction: row; - gap: 0; - flex-wrap: wrap; - width: 6%; - aspect-ratio: 1 / 1; - margin: 2%; -} - -.game, -.suggest { - width: 15%; - border-radius: 20px; - display: inline-block; - background-color: var(--uibg); - margin: 15px; - cursor: pointer; - box-shadow: 0px 0px 5px 5px var(--uibg); -} - -.game:hover, -.suggest:hover { - transform: scale(1.1); - filter: brightness(85%); - box-shadow: 0px 0px 5px 5px var(--uibg); -} - -.game h1, -.suggest h1 { - font-size: 12px; - float: right; - margin-right: 10px; - margin-top: 3px; - margin-bottom: 3px; -} - -.game img, -.suggest img { - width: 100%; - border-radius: 20px; - aspect-ratio: 1 / 1; -} - -img.star { - float: left; - width: 10%; - margin-top: 3px; - margin-bottom: 3px; - margin-left: 10px; -} - -#noscroll { - overflow-y: hidden; - justify-content: center; -} - -#games, -#pinned { - width: 100%; - justify-content: center; -} - -input[type="text"], -input[type="password"] { - width: 50%; - background-color: var(--inputbg); - box-sizing: border-box; - font-size: 20px; - padding: 0.8% 0.8%; - text-align: center; - border-radius: 5px; - outline: none; - margin: 10px; - border: 2px solid var(--inputborder); - border-radius: 5px; - transition: opacity 0.25s ease-in-out; - opacity: 100%; -} -input[type="text"]:hover, -input[type="password"]:hover { - opacity: 80%; -} -::placeholder { - color: var(--textcolor); - opacity: 0.4; /* Firefox */ -} - -.bookmarkletdiv { - width: 30%; - background-color: var(--uibg); - box-shadow: 0px 0px 5px 5px var(--uibg); - padding: 5px; - margin: 15px; - border-radius: 10px; - display: inline-block; -} - -.bookmarkletdiv a { - font-size: 30px; -} - -form { - width: 100%; -} -.samerow.themebtns { - width: 70%; -} - -select { - border-radius: 5px; - background-color: var(--inputbg); - border-color: var(--inputborder); - border-width: 5px; - border-radius: 10px; - border-style: solid; - padding: 0.5% 0.5%; - margin: 0.25%; -} - -thumb.png .img-credits { - height: 40vh; - width: auto; - box-shadow: 0px 0px 20px rgba(255, 255, 255, 0.555); -} - -label { - font-size: 20px; - padding-left: 5px; -} -.avatar { - margin: 5px; -} -#bgimg { - width: 30vw; - font-size: 16px; -} -.usericon { - width: 24px; - height: 24px; - align-self: right; - /* display: none; */ -} -#toast { - position: fixed; - top: 0; - right: 0; - margin: 10px; - padding: 10px; - background-color: var(--inputbg); - border-radius: 10px; - border-width: 10px; - border-color: var(--inputborder); - border-style: solid; - z-index: 10000; - text-align: center; - opacity: 0; - transition-duration: 1s; - max-width: 30%; -} -#toast h1 { - font-size: 20px; - text-align: center; -} -#toast p { - font-size: 16px; - text-align: center; -} -#discord { - position: fixed; - bottom: 10px; - right: 10px; - width: 56px; - height: 56px; - z-index: 199975; - border-radius: 100%; - background-image: url("/img/discord.svg"); - background-size: 60%; - background-position: center; - background-repeat: no-repeat; - border-width: 0; -} - -div.profile.top { - width: 90%; - height: 20vh; - background-color: var(--uibg); - border-radius: 10px; - display: flex; - justify-content: left; - align-items: center; - box-shadow: 0px 0px 5px 5px var(--uibg); -} -div.profile.top.text { - position: relative; - display: flex; - flex-direction: column; - width: auto; - justify-self: center; - height: auto; - margin: 30px; - max-width: 40%; -} - -div.profile.top.text.right { - margin-left: auto; - margin-right: 80px; -} - -div.profile.top.text h1 { - font-size: 2vw; -} -div.profile.top.text h2 { - font-size: 1.25vw; -} -div.profile.top.text a { - font-size: 1.25vw; -} - -img.pfp { - height: 80%; - object-fit: contain; - width: auto; - margin: 30px; - border-radius: 20px; - aspect-ratio: 1 / 1; -} -div.profile.top.text .about { - height: auto; - max-width: 100%; -} - -#edit { - cursor: pointer; - position: relative; - height: 2vw; - margin-left: 5px; - width: auto; -} -#counter { - position: absolute; - bottom: 0; - right: 0; -} -#popup { - width: 50%; - height: 40%; - z-index: 99999999; - position: absolute; - position: absolute; - top: 50%; - left: 50vw; - transform: translate(-50%, -50%); - display: flex; - flex-direction: column; - background-color: var(--inputbg); - border-color: var(--inputborder); - border-width: 5px; - border-radius: 10px; - border-style: solid; - justify-content: center; - align-items: center; - box-shadow: 0px 0px 5px 5px var(--uibg); -} -#popup input { - width: 90%; - height: 30%; -} -#popup input[type=file] { - height: auto; - text-align-last: center; - display: block; - margin: 30px; -} -#popup h1 { - font-size: 32px; -} - -#popup #close { - position: absolute; - right: 10px; - top: 10px; - -} -img.badges { - position: relative; - height: 2vw; - margin-left: 5px; - width: auto; -} - -p#counter { - bottom: 38%; - right: 7%; -} - - -.users { - text-decoration: none; - width: 30%; - height: 10vh; - background-color: var(--uibg); - border-radius: 10px; - display: flex; - align-items: center; - justify-content: center; - box-shadow: 0px 0px 5px 5px var(--uibg); - margin: 1.5%; -} -.users h1, .users p { - position: relative; - display: flex; - flex-direction: column; - width: 100%; - justify-self: center; - height: auto; - max-width: 100%; - margin: auto; -} -.user_info { - width: 100%; -} - -.users h1 { - font-size: 1vw; -} -.users p { - font-size: 0.75vw; -} -.users a { - font-size: 0.75vw; - text-decoration: underline; -} - -.users p { - height: auto; - max-width: 100%; -} -#users { - width: 95%; - display: flex; - align-items: center; - flex-wrap: wrap; - flex-direction: row; - display: flex; - align-items: center; - justify-content: center; -} - -.pages-btn { - margin: 10px; -} -#ai { - position: absolute; - right: 10px; - bottom: 10px; -} - -div.profile.played { - margin: 40px; - width: 90%; - height: auto; - padding: 30px; - background-color: var(--uibg); - border-radius: 10px; - display: flex; - justify-content: left; - align-items: center; - box-shadow: 0px 0px 5px 5px var(--uibg); - justify-content: center; - flex-wrap: wrap; - -} -#played-games { - width: 100%; - display: flex; - flex-wrap: wrap; - justify-content: center; -} -div.played-game { - width: 13%; - height: auto; - margin: 2%; - padding: 0; -} -div.played-game img { - aspect-ratio: 1 / 1; - border-radius: 20px; -} -.friend-icon { - width: 5%; - position: absolute; - left: 2%; -} -#chat { - width: 90%; - background-color: var(--uibg); - height: calc(100vh - (var(--margin) * 2) - 60px - 24px - 12px - 30px - 80px); -} -#messages { - align-items: end; - flex-direction: column; - overflow-y: scroll; - overflow-x: hidden; - height: 88%; - display: flex; -} -message { - width: calc(100% - 20px); - padding: 20px; - margin: 10px; - background-color: var(--inputbg); - border-radius: 10px; -} -message h1 { - font-size: 40px; -} -message h2 { - font-size: 32px; -} -message.user { - background-color: var(--inputborder); -} -message.bot { - justify-self: right; -} -#chatbox { - width: calc(100% - 20px); -} -.messagebox { - width: 100%; - height: 12%; -} -.evensmaller { - font-size: 12px; -} -#gamecontainer { - width: 80vw; - height: calc(100vh - (var(--margin) * 2)); - padding: 10px; - border-radius: 10px; - background-color: var(--uibg); -} -#gameFrame { - width: 100%; - height: 90%; - border-radius: 10px; - margin: 0; - padding: 0; -} -#infobox { - width: 100%; - height: 10%; - display: flex; -} -#infobox img { - height: 90%; - width: auto; - margin-right: 20px; - border-radius: 10px; -} -@keyframes toastFade { - 0% { - opacity: 0; - } - 15% { - opacity: 1; - } - 85% { - opacity: 1; - } - 100% { - opacity: 0; - } -} \ No newline at end of file diff --git a/css/themes.css b/css/themes.css old mode 100644 new mode 100755 index 61db16e..f3cecff --- a/css/themes.css +++ b/css/themes.css @@ -1,295 +1,45 @@ -:root { - --inputbg: #3c096c; - --inputborder: #5a189a; - --uibg: #240046; - --textcolor: #fff; - --bg: #10002b; -} body { - --inputbg: #3c096c; - --inputborder: #5a189a; - --uibg: #240046; - --textcolor: #fff; - --bg: #10002b; + --text-color: #fff; + --bg-1: #5a189a; + --bg-2: #10002b; + --color-1: #E0AAFF; + --color-2: #7B2CBF; + --color-3: #3C096C; + --color-4: #240046; } -body[theme=threekho] { - --inputbg: #28A018; - --inputborder: #0A8F00; - --uibg: #111111; - --textcolor: #fff; - --bg: #000000; +body[theme=blackandwhite] { + --text-color: #fff; + --bg-1: #504d53; + --bg-2: #090909; + --color-1: #bfbfbf; + --color-2: #8e8e8e; + --color-3: #5c5c5c; + --color-4: #000000; } -body[theme=art] { - --inputbg: #0284d4; - --inputborder: #0284d4; - --uibg: #0e1213; - --textcolor: #fffff; - --bg: #1a2023; +body[theme=grass] { + --text-color: #ffffff; + --bg-1: #385041; + --bg-2: #1d3024; + --color-1: #a8e5a7; + --color-2: #559b7a; + --color-3: #3a5c3f; + --color-4: #242e22; } -body[theme=dogcat] { - --inputbg: #537294; - --inputborder: #30719c; - --uibg: #2a7491; - --textcolor: #fff; - --bg: url("/img/backgrounds/dogcat.svg"), rgb(26, 127, 158); - /* https://wallpaperaccess.com/full/115544.jpg */ +body[theme=evil] { + --text-color: #ffffff; + --bg-1: #ba2a2a; + --bg-2: #591414; + --color-1: #eb8181; + --color-2: #ae4141; + --color-3: #7b3838; + --color-4: #4f2626; } -body[theme=custom] { - --inputbg: #3c096c; - --inputborder: #5a189a; - --uibg: #240046; - --textcolor: #fff; - --bg: #10002b; -} -body[theme=mainnew] { - --inputbg: #3c096c; - --inputborder: #5a189a; - --uibg: #240046bb; - --textcolor: #fff; - --bg: linear-gradient(0deg, rgba(36,0,70,1) 0%, rgba(60,9,108,1) 50%, rgba(36,0,70,1) 100%); -} -body[theme=main] { - --inputbg: #3c096c; - --inputborder: #5a189a; - --uibg: #240046bb; - --textcolor: #fff; - --bg: #10002b; -} -body[theme=light] { - --inputbg: #bbbbbb; - --inputborder: #e6e6e6; - --uibg: #b3b3b3; - --textcolor: #1a1a1a; - --bg: #c5c5c5; -} -body[theme=dark] { - --inputbg: #333333; - --inputborder: #444444; - --uibg: #242424; - --textcolor: #fff; - --bg: #0c0c0c; -} -body[theme=egamepass] { - --inputbg: #4f6ed1; - --inputborder: #5586e0; - --uibg: #185494; - --textcolor: #a7d3ff; - --bg: #16416f; -} -body[theme=cools1te] { - --inputbg: #a134dc; - --inputborder: #b153e3; - --uibg: #ab28cf; - --textcolor: #d3a4fa; - --bg: #8e14af; -} - - -body[theme=lattefalse] { - --inputbg: #9ca0b0; - /* overlay 0 */ - --inputborder: #8c8fa1; - /* overlay 1 */ - --uibg: #ccd0da; - /* surface 0 */ - --textcolor: #4c4f69; - /* text */ - --bg: #eff1f5; - /* base */ - --shadow: 0px 0px 4px #ccd0da; - /* surface 0 */ -} -body[theme=frappefalse] { - --inputbg: #737994; - /* overlay 0 */ - --inputborder: #838ba7; - /* overlay 1 */ - --uibg: #414559; - /* surface 0 */ - --textcolor: #cad3f5; - /* text */ - --bg: #303446; - /* base */ - --shadow: 0px 0px 4px #414559; - /* surface 0 */ -} -body[theme=macchiatofalse] { - --inputbg: #6e738d; - /* overlay 0 */ - --inputborder: #8087a2; - /* overlay 1 */ - --uibg: #363a4f; - /* surface 0 */ - --textcolor: #cad3f5; - /* text */ - --bg: #24273a; - /* base */ - --shadow: 0px 0px 4px #363a4f; - /* surface 0 */ -} -body[theme=mochafalse] { - --inputbg: #6c7086; - /* overlay 0 */ - --inputborder: #7f849c; - /* overlay 1 */ - --uibg: #313244; - /* surface 0 */ - --textcolor: #cdd6f4; - /* text */ - --bg: #1e1e2e; - /* base */ - --shadow: 0px 0px 4px #313244; - /* surface 0 */ -} - -body[theme=sunsetfalse] { - --inputbg: #537294; - --inputborder: #30719c; - --uibg: #2a7491; - --textcolor: #fff; - --bg: rgb(59, 67, 78); - /* https://wallhaven.cc/w/jxl3qp */ - --shadow: 0px 0px 2px #a5dcf5; -} -body[theme=mountainsfalse] { - --inputbg: #d37f7f; - --inputborder: #e28a8a; - --uibg: #d38493; - --textcolor: #fff; - --bg: #bf7483; - /* https://wallhaven.cc/w/l82kpr */ - --shadow: 0px 0px 4px #bba29b; -} -body[theme=vaporwavefalse] { - --inputbg: #4b2d64; - --inputborder: #74568d; - --uibg: #51166d; - --textcolor: #fff; - --bg: #61437a; - /* https://wallhaven.cc/w/l82kpr */ - --shadow: 0px 0px 4px #000000; -} -body[theme=seraphfalse] { - --inputbg: #000; - --inputborder: #fff; - --uibg: #000; - --textcolor: #fff; - --bg: #222222; - /* seraph */ - --shadow: 0px 0px 4px #fff; -} -body[theme=nighttimefalse] { - --inputbg: #29374d; - --inputborder: #fff; - --uibg: #29374d; - --textcolor: #fff; - --bg: #323853; - /* https://wallhaven.cc/w/l882py */ - --shadow: 0px 0px 4px #fff; -} - - - -body[theme=latte] { - --inputbg: #9ca0b0; - /* overlay 0 */ - --inputborder: #8c8fa1; - /* overlay 1 */ - --uibg: #ccd0da; - /* surface 0 */ - --textcolor: #4c4f69; - /* text */ - --bg: #eff1f5; - /* base */ - --shadow: 0px 0px 4px #ccd0da; - /* surface 0 */ -} -body[theme=frappe] { - --inputbg: #737994; - /* overlay 0 */ - --inputborder: #838ba7; - /* overlay 1 */ - --uibg: #414559; - /* surface 0 */ - --textcolor: #cad3f5; - /* text */ - --bg: #303446; - /* base */ - --shadow: 0px 0px 4px #414559; - /* surface 0 */ -} -body[theme=macchiato] { - --inputbg: #6e738d; - /* overlay 0 */ - --inputborder: #8087a2; - /* overlay 1 */ - --uibg: #363a4f; - /* surface 0 */ - --textcolor: #cad3f5; - /* text */ - --bg: #24273a; - /* base */ - --shadow: 0px 0px 4px #363a4f; - /* surface 0 */ -} -body[theme=mocha] { - --inputbg: #6c7086; - /* overlay 0 */ - --inputborder: #7f849c; - /* overlay 1 */ - --uibg: #313244; - /* surface 0 */ - --textcolor: #cdd6f4; - /* text */ - --bg: #1e1e2e; - /* base */ - --shadow: 0px 0px 4px #313244; - /* surface 0 */ -} - -body[theme=sunset] { - --inputbg: #537294; - --inputborder: #30719c; - --uibg: #2a7491; - --textcolor: #fff; - --bg: url("/img/backgrounds/sunset_theme.jpg"), rgb(59, 67, 78); - /* https://wallhaven.cc/w/jxl3qp */ - --shadow: 0px 0px 2px #a5dcf5; -} -body[theme=mountains] { - --inputbg: #d37f7f; - --inputborder: #e28a8a; - --uibg: #d38493; - --textcolor: #fff; - --bg: url("/img/backgrounds/mountains_theme.jpg"), #bf7483; - /* https://wallhaven.cc/w/l82kpr */ - --shadow: 0px 0px 4px #bba29b; -} -body[theme=vaporwave] { - --inputbg: #4b2d64; - --inputborder: #74568d; - --uibg: #51166d; - --textcolor: #fff; - --bg: url("/img/backgrounds/vaporwave_theme.jpg"), #61437a; - /* https://wallhaven.cc/w/l82kpr */ - --shadow: 0px 0px 4px #000000; -} -body[theme=seraph] { - --inputbg: #000; - --inputborder: #fff; - --uibg: #000; - --textcolor: #fff; - --bg: url("/img/backgrounds/seraph_theme.png"), #1c1a1e; - /* seraph */ - --shadow: 0px 0px 4px #fff; -} -body[theme=nighttime] { - --inputbg: #29374d; - --inputborder: #fff; - --uibg: #29374d; - --textcolor: #fff; - --bg: url("/img/backgrounds/nighttime_theme.png"), #28272a; - /* https://wallhaven.cc/w/l882py */ - --shadow: 0px 0px 4px #fff; -} - +body[theme=sky] { + --text-color: #ffffff; + --bg-1: #5d9dae; + --bg-2: #3c7aa6; + --color-1: #04eeff; + --color-2: #2ab9f2; + --color-3: #3188bd; + --color-4: #23588a; +} \ No newline at end of file diff --git a/css/users.css b/css/users.css new file mode 100644 index 0000000..446e8f3 --- /dev/null +++ b/css/users.css @@ -0,0 +1,59 @@ +#users { + display: flex; + height: auto; + width: 90%; + flex-direction: row; + justify-content: center; + flex-wrap: wrap; +} +.users { + width: 25vw; + height: 10vh; + background-color: color-mix(in srgb, var(--color-2) 40%, #00000000 60%); + display: flex; + justify-content: center; + align-items: center; + cursor: pointer; + border-radius: 20px; + margin: 15px; + transition-duration: 0.5s; + backdrop-filter: blur(2px); + box-shadow: 0 0 10px var(--color-2); + text-decoration: none; + text-align: right; + overflow: hidden; +} +.users:hover { + transform: scale(1.05); + filter:brightness(1.15); +} +.users img { + height: 80%; + border-radius: 15px; + aspect-ratio: 1 / 1; + margin: 20px; + justify-self: left; + margin-right: auto; +} +.user_info { + width: 60%; + margin: 12px; +} +.user_info h1 { + font-size: 20px; +} +.user_info p { + font-size: 12px; +} +.pages-btn { + margin: 6px; +} +@-moz-document url-prefix() { + .users { + backdrop-filter: blur(0); + } +} +body[fast] .users { + background-color: color-mix(in srgb, var(--color-2) 70%, #000000 30%); + backdrop-filter: blur(0); +} \ No newline at end of file diff --git a/data/apps.json b/data/apps.json deleted file mode 100644 index 479a611..0000000 --- a/data/apps.json +++ /dev/null @@ -1,78 +0,0 @@ -[ - { - "name": "Ruffle", - "directory": "ruffle", - "image": "cover.png" - }, - { - "name": "ZIP Unarchiver", - "directory": "zip", - "image": "cover.png" - }, - - { - "name": "GBA Emulator", - "directory": "gba", - "image": "cover.png" - }, - { - "name": "EmulatorJS", - "directory": "emu", - "image": "cover.png" - }, - { - "name": "Scratch 1", - "directory": "scratch1", - "image": "cover.png" - }, - { - "name": "AyunWebEPK", - "directory": "ayun", - "image": "cover.png" - }, - { - "name": "Scratch 2", - "directory": "scratch2", - "image": "cover.png" - }, - { - "name": "SB2 to SWF", - "directory": "sb2toswf", - "image": "cover.svg" - }, - { - "name": "MiniWiki", - "directory": "wiki", - "image": "cover.png" - }, - { - "name": "Windows 11", - "directory": "11", - "image": "cover.png" - }, - { - "name": "Javascript Deobfuscator", - "directory": "deobsfucator", - "image": "cover.svg" - }, - { - "name": "Code Editor", - "directory": "code", - "image": "cover.svg" - }, - { - "name": "Turbowarp", - "directory": "turbowarp", - "image": "cover.svg" - }, - { - "name": "Calculator", - "image": "cover.svg", - "directory": "calc" - }, - { - "name": "GodoBlocks", - "directory": "godo", - "image": "cover.png" - } -] \ No newline at end of file diff --git a/data/games.json b/data/games.json deleted file mode 100644 index 48868ad..0000000 --- a/data/games.json +++ /dev/null @@ -1,2138 +0,0 @@ -[ - { - "name": "Minecraft Games", - "image": "image.png", - "directory": "eaglercraft" - }, - { - "name": "Protektor", - "image": "cover.png", - "directory": "tekpro" - }, - { - "name": "The Gummibär Game", - "image": "cover.png", - "directory": "gum" - }, - { - "name": "Final Ninja", - "image": "cover.png", - "directory": "final" - }, - { - "name": "The Sims - Busting Out", - "image": "cover.png", - "directory": "bsims" - }, - { - "name": "SimCity 2000", - "image": "cover.png", - "directory": "2000si" - }, - { - "name": "SimCity", - "image": "cover.png", - "directory": "simcity" - }, - { - "name": "Donkey Kong", - "image": "cover.png", - "directory": "kong" - }, - { - "name": "Sonic Advance 3", - "image": "cover.png", - "directory": "3sadv" - }, - { - "name": "Sonic Advance 2", - "image": "cover.png", - "directory": "2sadv" - }, - { - "name": "Sonic Advance", - "image": "cover.png", - "directory": "sadvance" - }, - { - "name": "Crazy Taxi", - "image": "cover.png", - "directory": "crtaxi" - }, - { - "name": "Sonic & Knuckles", - "image": "cover.png", - "directory": "knuck" - }, - { - "name": "Sonic 3", - "image": "cover.png", - "directory": "3sonic" - }, - { - "name": "Hobo 7", - "image": "cover.png", - "directory": "7hobo" - }, - { - "name": "Hobo 6", - "image": "cover.png", - "directory": "6hobo" - }, - { - "name": "Hobo 5", - "image": "cover.png", - "directory": "5hobo" - }, - { - "name": "Hobo 4", - "image": "cover.png", - "directory": "4hobo" - }, - { - "name": "Hobo 3", - "image": "cover.png", - "directory": "3hobo" - }, - { - "name": "3 Lines", - "image": "cover.png", - "directory": "3line" - }, - { - "name": "Crazy Flasher 6", - "image": "cover.png", - "directory": "6flash" - }, - { - "name": "Crazy Flasher 5", - "image": "cover.png", - "directory": "5flash" - }, - { - "name": "Crazy Flasher 4", - "image": "cover.png", - "directory": "4flash" - }, - { - "name": "Crazy Flasher 2", - "image": "cover.png", - "directory": "2flash" - }, - { - "name": "Crazy Flasher 3", - "image": "cover.png", - "directory": "3flash" - }, - { - "name": "GTA: Advance", - "image": "cover.png", - "directory": "advgta" - }, - { - "name": "GTA 1", - "image": "cover.png", - "directory": "gta1" - }, - { - "name": "GTA 2", - "image": "cover.png", - "directory": "gta2" - }, - { - "name": "Quake 3", - "image": "cover.png", - "directory": "quake3" - }, - { - "name": "3D Space Cadet Pinball", - "image": "cover.png", - "directory": "pinball" - }, - { - "name": "Sonic 2", - "image": "cover.svg", - "directory": "2sonic" - }, - { - "name": "Corporation Inc", - "image": "cover.png", - "directory": "corp" - }, - { - "name": "Plants vs. Zombies", - "image": "cover.png", - "directory": "pvz" - }, - { - "name": "Pyongyang Racer", - "image": "cover.png", - "directory": "pyong" - }, - { - "name": "Ultimate Flash Sonic", - "image": "cover.png", - "directory": "flash" - }, - { - "name": "Hobo 2", - "image": "cover.png", - "directory": "2hobo" - }, - { - "name": "Hobo 1", - "image": "cover.png", - "directory": "1hobo" - }, - { - "name": "Super Auto Pets", - "image": "cover.png", - "directory": "auto" - }, - { - "name": "Sonic 1", - "image": "cover.svg", - "directory": "sonic" - }, - { - "name": "Earn to Die", - "image": "cover.png", - "directory": "ern" - }, - { - "name": "Temple of Boom", - "image": "cover.png", - "directory": "temple" - }, - { - "name": "Backrooms 2D", - "image": "cover.png", - "directory": "2d" - }, - { - "name": "Superhero Drop", - "image": "cover.png", - "directory": "superhero" - }, - { - "name": "Obby, jump!", - "image": "cover.png", - "directory": "obby" - }, - { - "name": "Jake's Jingle Quest", - "image": "cover.png", - "directory": "jake" - }, - { - "name": "Bouncy Flappy", - "image": "cover.png", - "directory": "bounce" - }, - { - "name": "The Black Man", - "image": "cover.png", - "directory": "black" - }, - { - "name": "Real Flying Truck 3D", - "image": "cover.png", - "directory": "trk" - }, - { - "name": "Crazy Tunnel 3D", - "image": "cover.png", - "directory": "crazy" - }, - { - "name": "Two Ball 3D", - "image": "cover.png", - "directory": "two" - }, - { - "name": "Slope City", - "image": "cover.png", - "directory": "ballslo" - }, - { - "name": "Shapez", - "image": "cover.png", - "directory": "shapez" - }, - { - "name": "Pickcrafter", - "image": "cover.png", - "directory": "pick" - }, - { - "name": "Sudoku", - "image": "cover.png", - "directory": "sudo" - }, - { - "name": "Rocket Bot Royale", - "image": "cover.png", - "directory": "rocket" - }, - { - "name": "Slope 3", - "image": "cover.png", - "directory": "slope3" - }, - { - "name": "InfiniteCraft", - "image": "cover.png", - "directory": "infi" - }, - { - "name": "Mine Blocks", - "image": "cover.png", - "directory": "minors" - }, - { - "name": "Wubzzy's Amazing Adventure", - "image": "cover.png", - "directory": "wubz" - }, - { - "name": "Bus & Subway Runner", - "image": "cover.png", - "directory": "subway" - }, - { - "name": "Drift King", - "image": "cover.png", - "directory": "king" - }, - { - "name": "Pako Highway", - "image": "cover.png", - "directory": "pako" - }, - { - "name": "Snowball.io", - "image": "cover.png", - "directory": "snow" - }, - { - "name": "Balloon Run", - "image": "cover.png", - "directory": "bal" - }, - { - "name": "Gunfest", - "image": "cover.png", - "directory": "fest" - }, - { - "name": "Run 3 Editor", - "image": "cover.png", - "directory": "editor" - }, - { - "name": "Train Surfers", - "image": "cover.png", - "directory": "train" - }, - { - "name": "Fruit Cuts 3D", - "image": "cover.png", - "directory": "fruit" - }, - { - "name": "Grand Shift Auto", - "image": "cover.png", - "directory": "gsa" - }, - { - "name": "Unfair Mario", - "image": "cover.png", - "directory": "unfmar" - }, - { - "name": "WASM Doom", - "image": "cover.png", - "directory": "doom-wasm" - }, - { - "name": "Talking Tom Cat", - "image": "cover.png", - "directory": "tom2" - }, - { - "name": "Flappy 2048", - "image": "cover.png", - "directory": "flap" - }, - { - "name": "9007199254740992", - "image": "cover.png", - "directory": "9007199254740992" - }, - { - "name": "1", - "image": "cover.png", - "directory": "1" - }, - { - "name": "Wheely 4", - "image": "cover.png", - "directory": "whe4" - }, - { - "name": "Wheely 3", - "image": "cover.png", - "directory": "whe3" - }, - { - "name": "Wheely 2", - "image": "cover.png", - "directory": "whe2" - }, - { - "name": "Wheely 1", - "image": "cover.png", - "directory": "whe" - }, - { - "name": "Glassworks", - "image": "cover.png", - "directory": "glass" - }, - { - "name": "Mutiny", - "image": "cover.png", - "directory": "mut" - }, - { - "name": "Snotput", - "image": "cover.png", - "directory": "snot" - }, - { - "name": "Headcase", - "image": "cover.png", - "directory": "headcase" - }, - { - "name": "Bubble Shooter", - "image": "cover.png", - "directory": "bub" - }, - { - "name": "Skywire VIP (Extended)", - "image": "cover.png", - "directory": "sky" - }, - { - "name": "Plunger", - "image": "cover.png", - "directory": "plu" - }, - { - "name": "Gunbrick", - "image": "cover.png", - "directory": "brick" - }, - { - "name": "Nitrome Must Die", - "image": "cover.png", - "directory": "nitme" - }, - { - "name": "Robo Run", - "image": "cover.png", - "directory": "robo" - }, - { - "name": "Meteor Game", - "image": "cover.png", - "directory": "meteor" - }, - { - "name": "Skateboarding Simulator", - "image": "cover.png", - "directory": "skate" - }, - { - "name": "CrossNRoad", - "image": "cover.png", - "directory": "crossnroad" - }, - { - "name": "Tappy Plane", - "image": "cover.png", - "directory": "tappyplane" - }, - { - "name": "Putin on the Ritz", - "image": "cover.png", - "directory": "ritz" - }, - { - "name": "Sandboxels", - "image": "cover.png", - "directory": "box" - }, - { - "name": "Flappy Race", - "image": "cover.png", - "directory": "flappyrace" - }, - { - "name": "Karlson", - "image": "cover.png", - "directory": "karlson" - }, - { - "name": "Adventure", - "image": "cover.png", - "directory": "adventure" - }, - { - "name": "The Heist", - "image": "cover.png", - "directory": "heist" - }, - { - "name": "Age of War 2", - "image": "cover.png", - "directory": "aow2" - }, - { - "name": "Star Clicker", - "image": "cover.png", - "directory": "star" - }, - { - "name": "Racer", - "image": "cover.png", - "directory": "racer" - }, - { - "name": "Fort@dmin", - "image": "cover.png", - "directory": "fort" - }, - { - "name": "Flappy Dino", - "image": "cover.png", - "directory": "fld" - }, - { - "name": "Connect Four", - "image": "cover.png", - "directory": "c4" - }, - { - "name": "13 Days of Hell", - "image": "cover.png", - "directory": "13" - }, - { - "name": "Mindustry", - "image": "cover.png", - "directory": "mind" - }, - { - "name": "House of Hazards", - "image": "favicon.ico", - "directory": "houseofhazards" - }, - { - "name": "Shape Shipper", - "image": "cover.png", - "directory": "shape" - }, - { - "name": "Rough Dino", - "image": "cover.png", - "directory": "roughdino" - }, - { - "name": "Geometry Meltdown", - "image": "cover.png", - "directory": "geomelt" - }, - { - "name": "Geometry Jump", - "image": "cover.png", - "directory": "geojump" - }, - { - "name": "Counter Strike: DS", - "image": "cover.png", - "directory": "cds" - }, - { - "name": "Terri-Fried", - "image": "cover.png", - "directory": "terrifried" - }, - { - "name": "Geometry Dash Remastered", - "image": "cover.png", - "directory": "geodashrm" - }, - { - "name": "The Minions: Resurrection", - "image": "cover.png", - "directory": "minion" - }, - { - "name": "Geometry Dash Sky", - "image": "cover.png", - "directory": "geodashsky" - }, - { - "name": "Drift Mania", - "image": "cover.png", - "directory": "drift" - }, - { - "name": "Driving Force 4", - "image": "cover.png", - "directory": "driving" - }, - { - "name": "Red Ball 1", - "image": "cover.png", - "directory": "redball" - }, - { - "name": "Recoil", - "image": "cover.png", - "directory": "recoil" - }, - { - "name": "Karlson't", - "image": "cover.png", - "directory": "karlsont" - }, - { - "name": "Deepest Sword", - "image": "logo.png", - "directory": "deepestsword" - }, - { - "name": "Tomb of The Mask", - "image": "cover.png", - "directory": "tombofthemask" - }, - { - "name": "Hill Climb Racing", - "image": "cover.png", - "directory": "hillclimbracing" - }, - { - "name": "Gladihoppers", - "image": "cover.png", - "directory": "gladihoppers" - }, - { - "name": "Flappy Copter", - "image": "cover.png", - "directory": "flappycopter" - }, - { - "name": "Kick That Buddy", - "image": "cover.png", - "directory": "kickthatbuddy" - }, - { - "name": "Grand Truckismo", - "image": "cover.png", - "directory": "grandtruckismo" - }, - { - "name": "Turbo Racing 3", - "image": "cover.png", - "directory": "turboracing3" - }, - { - "name": "The Binding of Issac", - "image": "cover.png", - "directory": "tboi" - }, - { - "name": "Gun Knight", - "image": "cover.png", - "directory": "gunknight" - }, - { - "name": "The Oregon Trail", - "image": "cover.png", - "directory": "oregon" - }, - { - "name": "Windows 98", - "image": "cover.png", - "directory": "windows98" - }, - { - "name": "Creeper Craft", - "image": "cover.png", - "directory": "creepercraft" - }, - { - "name": "Block Zappers 3", - "image": "logo.png", - "directory": "blockzappers" - }, - { - "name": "Kerosene Client", - "image": "cover.png", - "directory": "keroseneclient" - }, - { - "name": "Frogger", - "image": "cover.png", - "directory": "frogger" - }, - { - "name": "Simon", - "image": "cover.png", - "directory": "simon" - }, - { - "name": "Splash Dash Racing", - "image": "cover.png", - "directory": "splashanddash" - }, - { - "name": "Super Mario 63", - "image": "cover.png", - "directory": "mario63" - }, - { - "name": "Bike Champ 2", - "image": "logo.jpg", - "directory": "bikechamp2" - }, - { - "name": "Grand Theft Grotto", - "image": "cover.png", - "directory": "gtg" - }, - { - "name": "Bike Champ", - "image": "logo.png", - "directory": "bikechamp" - }, - { - "name": "Gloom", - "image": "cover.png", - "directory": "gloom" - }, - { - "name": "Copter", - "image": "cover.png", - "directory": "copter" - }, - { - "name": "Minesweeper", - "image": "cover.png", - "directory": "minesweeper" - }, - { - "name": "POOM", - "image": "cover.png", - "directory": "poom" - }, - { - "name": "Solitaire", - "image": "cover.png", - "directory": "solitaire" - }, - { - "name": "Spank the Monkey", - "image": "cover.png", - "directory": "spankthemonkey" - }, - { - "name": "Pool", - "image": "cover.png", - "directory": "pool" - }, - { - "name": "Yohoho.io", - "image": "cover.png", - "directory": "yohoho" - }, - { - "name": "Tube Jumpers", - "image": "cover.png", - "directory": "tube-jumpers" - }, - { - "name": "Hill Climb Racing 2", - "image": "cover.png", - "directory": "hillclimbracing2" - }, - { - "name": "DOOM", - "image": "logo.png", - "directory": "doom" - }, - { - "name": "Awesome Tanks", - "image": "cover.png", - "directory": "awesometanks" - }, - { - "name": "Pong", - "directory": "pong", - "image": "cover.png" - }, - { - "name": "A Dance of Fire & Ice", - "directory": "adofai", - "image": "splash.png" - }, - { - "name": "Friday Night Funkin", - "directory": "fridaynightfunkin", - "image": "favicon.png" - }, - { - "name": "Worlds Hardest Game", - "directory": "worldshardestgame", - "image": "icon.png" - }, - { - "name": "Celeste", - "directory": "celeste", - "image": "icon.png" - }, - { - "name": "Mario", - "directory": "mario", - "image": "icon.png" - }, - { - "name": "60s Burger Run", - "directory": "60sburgerrun", - "image": "icon.png" - }, - { - "name": "Cluster Rush", - "directory": "cluster-rush", - "image": "icon.jpg" - }, - { - "name": "Vex 3", - "directory": "vex3", - "image": "icon.png" - }, - { - "name": "Adventure Capitalist", - "directory": "adventure-capitalist", - "image": "logo.webp" - }, - { - "name": "Bloons Tower Defense 3", - "directory": "btd3", - "image": "icon.png" - }, - { - "name": "Avalanche", - "directory": "avalanche", - "image": "icon.png" - }, - { - "name": "Slope", - "directory": "slope", - "image": "slope4.jpeg" - }, - { - "name": "Cell Machine", - "directory": "cell-machine", - "image": "img/icon.png" - }, - { - "name": "Run 2", - "directory": "run2", - "image": "icon.jpg" - }, - { - "name": "Vex 5", - "directory": "vex5", - "image": "icon.png" - }, - { - "name": "Vex 4", - "directory": "vex4", - "image": "vex4.png" - }, - { - "name": "Vex 2", - "directory": "vex2", - "image": "icon.png" - }, - { - "name": "Crossy Road", - "directory": "crossyroad", - "image": "chicken.png" - }, - { - "name": "Wall Smash", - "directory": "wallsmash", - "image": "icon.png" - }, - { - "name": "Death Run 3D", - "directory": "death-run-3d", - "image": "img/death.png" - }, - { - "name": "Gun Mayhem 2", - "directory": "gunmayhem2", - "image": "icon.png" - }, - { - "name": "CircloO", - "directory": "circloo", - "image": "icon.png" - }, - { - "name": "Vex", - "directory": "vex", - "image": "icon.png" - }, - { - "name": "Stack", - "directory": "stack", - "image": "icon.png" - }, - { - "name": "xx142-b2.exe", - "directory": "xx142-b2.exe", - "image": "icon.png" - }, - { - "name": "paper.io", - "directory": "paperio", - "image": "icon.png" - }, - { - "name": "Chibi Knight", - "directory": "chibiknight", - "image": "icon.png" - }, - { - "name": "1v1.lol", - "directory": "1v1lol", - "image": "splash.png" - }, - { - "name": "Dino", - "directory": "dino", - "image": "icon.png" - }, - { - "name": "Tetris", - "directory": "tetris", - "image": "icon.png" - }, - { - "name": "Geometry Dash (Scratch)", - "directory": "geometrydash", - "image": "icon.png" - }, - { - "name": "Sand Game", - "directory": "sand", - "image": "icon.png" - }, - { - "name": "Dante", - "directory": "dante", - "image": "icon.png" - }, - { - "name": "Wordle", - "directory": "wordle", - "image": "icon.png" - }, - { - "name": "Offline Paradise", - "directory": "offlineparadise", - "image": "icon.png" - }, - { - "name": "2048", - "directory": "2048", - "image": "icon.png" - }, - { - "name": "Doodle Jump", - "directory": "doodlejump", - "image": "icon.png" - }, - { - "name": "Weave Silk", - "directory": "weavesilk", - "image": "icon.png" - }, - { - "name": "Super Meat Boy", - "directory": "supermeatboy", - "image": "icon.png" - }, - { - "name": "Vex 6", - "directory": "vex6", - "image": "icon.png" - }, - { - "name": "WebGL Fluid Sim", - "directory": "fluidsim", - "image": "icon.png" - }, - { - "name": "Basketball Stars", - "directory": "basketball-stars", - "image": "icon.png" - }, - { - "name": "osu!", - "directory": "osu", - "image": "icon.png" - }, - { - "name": "Cookie Clicker", - "directory": "cookieclicker", - "image": "img/perfectCookie.png" - }, - { - "name": "Superhot", - "directory": "superhot", - "image": "icon.png" - }, - { - "name": "Super Mario 64", - "directory": "supermario64", - "image": "icon.png" - }, - { - "name": "Gun Mayhem Redux", - "directory": "gunmayhemredux", - "image": "icon.png" - }, - { - "name": "I Wanna Be Thy Copy", - "directory": "iwbtc", - "image": "icon.png" - }, - { - "name": "HexGL", - "directory": "hexgl", - "image": "icon_128.png" - }, - { - "name": "Champion Island", - "directory": "championisland", - "image": "icon.png" - }, - { - "name": "Learn to Fly", - "directory": "learntofly", - "image": "icon.png" - }, - { - "name": "Wordle Bot", - "directory": "wordlebot", - "image": "icon.png" - }, - { - "name": "Cut The Rope", - "directory": "cuttherope", - "image": "icon.png" - }, - { - "name": "Chess", - "directory": "chess", - "image": "icon.png" - }, - { - "name": "Flappy Bird", - "directory": "flappybird", - "image": "icon.png" - }, - { - "name": "Lows Adventures 2", - "directory": "lowsadventures2", - "image": "icon.png" - }, - { - "name": "Drift Boss", - "directory": "drift-boss", - "image": "icon.png" - }, - { - "name": "Fireboy & Watergirl 1", - "directory": "fireboywatergirl", - "image": "icon.png" - }, - { - "name": "Gun Mayhem", - "directory": "gunmayhem", - "image": "icon.png" - }, - { - "name": "Duck Life 4", - "directory": "ducklife4", - "image": "icon.png" - }, - { - "name": "Achievement Unlocked", - "directory": "achieveunlocked", - "image": "icon.png" - }, - { - "name": "Achievement Unlocked 2", - "directory": "achieveunlocked2", - "image": "icon.png" - }, - { - "name": "This Is The Only Level", - "directory": "thisistheonlylevel", - "image": "logo.png" - }, - { - "name": "This Is The Only Level 2", - "directory": "thisistheonlylevel2", - "image": "icon.png" - }, - { - "name": "Bitlife", - "directory": "bitlife", - "image": "bitlife.png" - }, - { - "name": "Duck Life 1", - "directory": "ducklife1", - "image": "ducklife1.png" - }, - { - "name": "Duck Life 2", - "directory": "ducklife2", - "image": "ducklife2.png" - }, - { - "name": "Duck Life 3", - "directory": "ducklife3", - "image": "ducklife3.png" - }, - { - "name": "ovo", - "directory": "ovo", - "image": "ovo3.png" - }, - { - "name": "There Is No Game", - "directory": "thereisnogame", - "image": "icon-256.png" - }, - { - "name": "Universal Paperclips", - "directory": "universal-paperclips", - "image": "universal-paperclips.png" - }, - { - "name": "Learn to Fly 2", - "directory": "learntofly2", - "image": "logo.jpg" - }, - { - "name": "Worlds Hardest Game 2", - "directory": "worldhardestgame2", - "image": "the-worlds-hardest-game-2.jpg" - }, - { - "name": "Vex 7", - "directory": "vex7", - "image": "icon.jpeg" - }, - { - "name": "Slope Ball", - "directory": "slope-ball", - "image": "icon.jpg" - }, - { - "name": "Slope 2", - "directory": "slope2", - "image": "slope-2-logo.png" - }, - { - "name": "Learn to Fly Idle", - "directory": "learntoflyidle", - "image": "icon.jpg" - }, - { - "name": "Red Ball 4", - "directory": "redball4", - "image": "redball4.webp" - }, - { - "name": "Red Ball 4 Vol 3", - "directory": "redball4vol3", - "image": "redball4vol3.webp" - }, - { - "name": "Red Ball 4 Vol 2", - "directory": "redball4vol2", - "image": "redball4vol2.webp" - }, - { - "name": "Red Ball 3", - "directory": "redball3", - "image": "redball3.png" - }, - { - "name": "Snake", - "directory": "snake", - "image": "snake.png" - }, - { - "name": "Pacman", - "directory": "pacman", - "image": "icon.png" - }, - { - "name": "Color Switch", - "directory": "colorswitch", - "image": "colorswitch.png" - }, - { - "name": "Halloween 2016", - "directory": "halloween2016", - "image": "logo.png" - }, - { - "name": "Game Maker Doodle", - "directory": "gamemaker", - "image": "images.jpeg" - }, - { - "name": "The Impossible Game", - "directory": "theimpossiblegame", - "image": "image.jpg" - }, - { - "name": "Papas Freezeria", - "directory": "papasfreezeria", - "image": "images.jpeg" - }, - { - "name": "Papas Pizzeria", - "directory": "papaspizzeria", - "image": "images.jpeg" - }, - { - "name": "Idle Breakout", - "directory": "idlebreakout", - "image": "image.png" - }, - { - "name": "Stickman Hook", - "directory": "stickman-hook", - "image": "icon.jpg" - }, - { - "name": "Drift Hunters", - "directory": "drifthunters", - "image": "icon.png" - }, - { - "name": "Rocket League", - "directory": "rocketleague", - "image": "splash.webp" - }, - { - "name": "Little Alchemy", - "directory": "littlealchemy", - "image": "images/192-alpha.png" - }, - { - "name": "Retro Bowl", - "directory": "retrobowl", - "image": "img/icon.jpg" - }, - { - "name": "Tunnel Rush", - "directory": "tunnelrush", - "image": "tunnel.jpg" - }, - { - "name": "Moto X3M", - "directory": "motox3m", - "image": "splash.jpg" - }, - { - "name": "Moto X3M Winter", - "directory": "motox3m-winter", - "image": "download.jpeg" - }, - { - "name": "Moto X3M Pool Party", - "directory": "motox3m-pool", - "image": "splash.jpg" - }, - { - "name": "Five Nights at Freddy's", - "directory": "fnaf", - "image": "splash.jpg" - }, - { - "name": "Burrito Bison", - "directory": "burritobison", - "image": "Build/logo.png" - }, - { - "name": "Cut The Rope Holday", - "directory": "cuttherope-holiday", - "image": "Holiday_Gift.webp" - }, - { - "name": "Helix Jump", - "directory": "helixjump", - "image": "gameIcon.png" - }, - { - "name": "Clicker Heroes", - "directory": "clickerheroes", - "image": "clicker-heroes.png" - }, - { - "name": "Jetpack Joyride", - "directory": "jetpackjoyride", - "image": "logo.jpeg" - }, - { - "name": "Fruit Ninja", - "directory": "fruitninja", - "image": "FruitNinjaTeaser.jpg" - }, - { - "name": "Tron", - "directory": "tron", - "image": "icon.png" - }, - { - "name": "Thirty Dollar Website", - "directory": "thirtydollarwebsite", - "image": "assets/🗿.png" - }, - { - "name": "n-gon", - "directory": "ngon", - "image": "favicon.ico" - }, - { - "name": "Subway Surfers", - "directory": "subway-surfers-ny", - "image": "NewYorkIcon.png" - }, - { - "name": "Madalin Cars", - "directory": "madalincars", - "image": "icon.png" - }, - { - "name": "Run 3", - "directory": "run3", - "image": "icon.jpeg" - }, - { - "name": "Dragon Ball Devolution", - "directory": "dragonballdevolution", - "image": "images.jpeg" - }, - { - "name": "Run", - "directory": "run", - "image": "icon.jpeg" - }, - { - "name": "Super Smash Flash", - "directory": "supersmashflash", - "image": "ssf.jpg" - }, - { - "name": "Stickman Climb", - "directory": "stickmanclimb", - "image": "icon.avif" - }, - { - "name": "Getaway Shooter", - "directory": "getawayshooter", - "image": "Untitled.jpeg" - }, - { - "name": "Riddle School", - "directory": "riddleschool", - "image": "RiddleSchool2.png" - }, - { - "name": "Riddle School 2", - "directory": "riddleschool2", - "image": "icon.png" - }, - { - "name": "Riddle School 3", - "directory": "riddleschool3", - "image": "riddle-school-3.webp" - }, - { - "name": "Riddle School 4", - "directory": "riddleschool4", - "image": "Untitled.jpeg" - }, - { - "name": "Riddle School 5", - "directory": "riddleschool5", - "image": "Untitled.jpeg" - }, - { - "name": "Riddle Transfer", - "directory": "riddleschooltransfer", - "image": "Untitled.jpeg" - }, - { - "name": "Riddle Transfer 2", - "directory": "riddleschooltransfer2", - "image": "aUntitled.jpeg" - }, - { - "name": "Zombocalypse", - "directory": "zombocalypse", - "image": "zombocalypse-2.webp" - }, - { - "name": "Papas Burgeria", - "directory": "papasburgeria", - "image": "images.jpeg" - }, - { - "name": "Duck Life 5", - "directory": "ducklife5", - "image": "ducklife5.png" - }, - { - "name": "Duck Life 6", - "directory": "ducklife6", - "image": "ducklife5.png" - }, - { - "name": "webretro", - "directory": "webretro", - "image": "assets/icons/icon204.png" - }, - { - "name": "osu!mania", - "directory": "osumania", - "image": "mania.jpg" - }, - { - "name": "Five Nights at Freddy's 2", - "directory": "fnaf2", - "image": "project/splash.webp" - }, - { - "name": "Five Nights at Freddy's 3", - "directory": "fnaf3", - "image": "project/splash.webp" - }, - { - "name": "Five Nights at Freddy's 4", - "directory": "fnaf4", - "image": "project/splash.webp" - }, - { - "name": "Temple Run 2", - "directory": "templerun2", - "image": "img/icons/icon-128x128.png" - }, - { - "name": "Happy Wheels", - "directory": "happywheels", - "image": "Untitled.jpeg" - }, - { - "name": "Fireboy & Watergirl 2", - "directory": "fireboywatergirl2", - "image": "Untitled.jpeg" - }, - { - "name": "Fireboy & Watergirl 3", - "directory": "fireboywatergirl3", - "image": "icon.png" - }, - { - "name": "Fireboy & Watergirl 4", - "directory": "fireboywatergirl4", - "image": "300.jpg" - }, - { - "name": "Rise Higher", - "directory": "risehigher", - "image": "media/graphics/promo/Icons/128x128.png" - }, - { - "name": "Hextris", - "directory": "hextris", - "image": "images/icons/apple-touch-152.png" - }, - { - "name": "Sprinter", - "directory": "sprinter", - "image": "icon.jpeg" - }, - { - "name": "Amazing Rope Police", - "directory": "amazing-rope-police", - "image": "splash.jpeg" - }, - - { - "name": "Geometry Rash", - "directory": "geometryrash", - "image": "icon-114.png" - }, - { - "name": "Bloons Tower Defense", - "directory": "btd", - "image": "logo.webp" - }, - { - "name": "Bloons Tower Defense 2", - "directory": "btd2", - "image": "logo.webp" - }, - { - "name": "Bloons Tower Defense 4", - "directory": "btd4", - "image": "logo.jpg" - }, - { - "name": "Bloons Tower Defense 6", - "directory": "btd6", - "image": "uwu.png" - }, - { - "name": "Bloons Tower Defense 5", - "directory": "btd5", - "image": "wogo.png" - }, - { - "name": "Last Horizon", - "directory": "lasthorizon", - "image": "wogo owo.jpg" - }, - { - "name": "1 on 1 Soccer", - "directory": "1on1soccer", - "image": "logo.jpg" - }, - { - "name": "Among Us", - "directory": "amongus", - "image": "amgojs]_.png" - }, - { - "name": "Among Us (better)", - "directory": "amongusnew", - "image": "amgojs]_.png" - }, - { - "name": "Bad Piggies", - "directory": "badpiggies", - "image": "badpiggies.png" - }, - { - "name": "Sandtrix", - "directory": "sandtrix", - "image": "assets/sprites/appicon.png" - }, - { - "name": "Blood Tournament", - "directory": "bloodtournament", - "image": "blood-tournament.jpg" - }, - { - "name": "Gold Digger FRVR", - "directory": "golddiggerfrvr", - "image": "images.jpeg" - }, - { - "name": "Retro Bowl College", - "directory": "retrobowlcollege", - "image": "unnamed.png" - }, - { - "name": "We Become What We Behold", - "directory": "wbwwb", - "image": "wbwwb.webp" - }, - { - "name": "Nut Simulator", - "directory": "nutsim", - "image": "images/icon.png" - }, - { - "name": "Pokemon", - "directory": "pokemon", - "image": "logo.jpg" - }, - { - "name": "Super Smash Bros", - "directory": "supersmashbros", - "image": "logo.jpg" - }, - { - "name": "Skibidi 1 v 100", - "directory": "skibiditoilet", - "image": "logo.png" - }, - { - "name": "Drive Mad", - "directory": "drivemad", - "image": "icons/icon-128.png" - }, - { - "name": "Rooftop Snipers", - "directory": "rooftopsnipers", - "image": "logo.png" - }, - { - "name": "Funny Shooter", - "directory": "funnyshooter", - "image": "icon.jpeg" - }, - { - "name": "Monkey Mart", - "directory": "monkeymart", - "image": "unnamed.png" - }, - { - "name": "Factory Balls", - "directory": "factoryballs", - "image": "fac.png" - }, - { - "name": "Factory Balls Forever", - "directory": "factoryballsforever", - "image": "fac.png" - }, - { - "name": "Funny Shooter 2", - "directory": "funnyshooter2", - "image": "894abba63a6b23fed823f404831f444f.jpeg" - }, - { - "name": "Bad Time Simulator", - "directory": "badtimesimulator", - "image": "icon-114.png" - }, - { - "name": "Commodore 64 Clicker", - "directory": "commodoreclicker", - "image": "test.jpg" - }, - { - "name": "Stickman Boost", - "directory": "stickmanboost", - "image": "base/img1.jpg" - }, - { - "name": "Stickman Golf", - "directory": "stickmangolf", - "image": "gold.png" - }, - { - "name": "Basket Bros", - "directory": "basketbros", - "image": "thumb.jpg" - }, - { - "name": "justfall.lol", - "directory": "justfalllol", - "image": "unnamed.png" - }, - { - "name": "Doge Miner", - "directory": "dogeminer", - "image": "img/dogeminer_300x300.png" - }, - { - "name": "Soccer Random", - "directory": "soccerrandom", - "image": "test.png" - }, - { - "name": "Basket Random", - "directory": "basketrandom", - "image": "test.png" - }, - { - "name": "Boxing Random", - "directory": "boxingrandom", - "image": "512x512.jpg" - }, - { - "name": "Funny Mad Racing", - "directory": "funnymadracing", - "image": "logo.webp" - }, - { - "name": "hole.io", - "directory": "holeio", - "image": "feature800x470.png" - }, - { - "name": "Time Shooter", - "directory": "timeshooter1", - "image": "logo.png" - }, - { - "name": "Time Shooter 2", - "directory": "timeshooter2", - "image": "ts2.jpg" - }, - { - "name": "Time Shooter 3", - "directory": "timeshooter3", - "image": "logo.png" - }, - { - "name": "Townscaper", - "directory": "townscaper", - "image": "icon.png" - }, - { - "name": "Bad Ice Cream", - "directory": "badicecream", - "image": "bad-ice-cream.png" - }, - { - "name": "Bad Ice Cream 2", - "directory": "badicecream2", - "image": "bad-ice-cream-2.png" - }, - { - "name": "Bad Ice Cream 3", - "directory": "badicecream3", - "image": "bad-ice-cream-3.png" - }, - { - "name": "Bob the Robber 2", - "directory": "bobtherobber2", - "image": "icon.png" - }, - { - "name": "Boxing Physics 2", - "directory": "boxingphysics2", - "image": "icon.png" - }, - { - "name": "Burger and Frights", - "directory": "burgerandfrights", - "image": "icon.png" - }, - { - "name": "Flippy Fish", - "directory": "flippyfish", - "image": "icon.png" - }, - { - "name": "Knife Hit", - "directory": "knifehit", - "image": "icon.png" - }, - { - "name": "Lazy Jump 3D", - "directory": "lazyjump3d", - "image": "icon.png" - }, - { - "name": "Moto X3M Spooky", - "directory": "motox3m-spooky", - "image": "icon.png" - }, - { - "name": "Rooftop Snipers 2", - "directory": "rooftopsnipers2", - "image": "icon.png" - }, - { - "name": "Skibidi Toilet Attack", - "directory": "skibiditoiletattack", - "image": "logo.png" - }, - { - "name": "Tiny Fishing", - "directory": "tinyfishing", - "image": "thumb.png" - }, - { - "name": "TU-95", - "directory": "tu95", - "image": "tu-95.webp" - }, - { - "name": "TU-46", - "directory": "tu46", - "image": "tu-46.webp" - }, - { - "name": "Russian Car Driver", - "directory": "russiancardriver", - "image": "russian-car-driver.webp" - }, - { - "name": "Legend of Zelda - Ocarina of Time", - "directory": "ocarinaoftime", - "image": "oc.jpg" - }, - { - "name": "Metroid: Zero Mission", - "directory": "metroidzeromission", - "image": "zero.jpeg" - }, - { - "name": "Guilty Gear", - "directory": "guiltygear", - "image": "ggx.jpg" - }, - { - "name": "A Dark Room", - "directory": "adarkroom", - "image": "favicon.ico" - }, - { - "name": "Fancy Pants Adventures", - "directory": "fancypantsadventures", - "image": "fpa.webp" - }, - { - "name": "Fancy Pants Adventures 2", - "directory": "fancypantsadventures2", - "image": "fpa2.avif" - }, - { - "name": "Line Rider", - "directory": "linerider", - "image": "boosh.png" - }, - { - "name": "Funny Ball Game", - "directory": "funnyballgame", - "image": "ball.jpg" - }, - { - "name": "Henry Stickmin - Stealing the Diamond", - "directory": "stealingthediamond", - "image": "diamante.avif" - }, - { - "name": "Henry Stickmin - Breaking the Bank", - "directory": "breakingthebank", - "image": "balling.avif" - }, - { - "name": "Henry Stickmin - Escaping the Prison", - "directory": "escapingtheprison", - "image": "pwison.avif" - }, - { - "name": "Henry Stickmin - Fleeing the Complex", - "directory": "fleeingthecomplex", - "image": "flee.jpg" - }, - { - "name": "Henry Stickmin - Infiltrating the Airship", - "directory": "infiltratingtheairship", - "image": "air.avif" - }, - { - "name": "Pandemic", - "directory": "pandemic", - "image": "sddefault.jpg" - }, - { - "name": "Pandemic 2", - "directory": "pandemic2", - "image": "pan2.webp" - }, - { - "name": "Age of War", - "directory": "ageofwar", - "image": "warofage.jpg" - }, - { - "name": "Soundboard", - "directory": "soundboard", - "image": "bleep.png" - }, - { - "name": "The Impossible Quiz", - "directory": "theimpossiblequiz", - "image": "tiq.avif" - }, - { - "name": "2D Rocket League", - "directory": "2drocketleague", - "image": "unnamed.png" - }, - { - "name": "Pizza Tower", - "directory": "pizzatower", - "image": "images/menubg.png" - }, - { - "name": "Monster Tracks", - "directory": "monstertracks", - "image": "webapp/cover.jpg" - }, - { - "name": "Totally Accurate Battle Simulator", - "directory": "tabs", - "image": "unnamed.png" - }, - { - "name": "CSGO Case Clicker", - "directory": "csgoclicker", - "image": "images/case1.png" - }, - { - "name": "The Final Earth 2", - "directory": "thefinalearth2", - "image": "icons/favicon.png" - }, - { - "name": "Baldi's Basics", - "directory": "baldis-basics", - "image": "splash.png" - }, - { - "name": "Cubefield", - "directory": "cubefield", - "image": "assets/unnamed.png" - }, - { - "name": "Bit Planes", - "directory": "bit-planes", - "image": "bitplanes.png" - }, - { - "name": "Snow Rider 3D", - "directory": "snowrider3d", - "image": "snow.png" - }, - { - "name": "Dadish", - "directory": "dadish", - "image": "favicon.png" - }, - { - "name": "Dadish 2", - "directory": "dadish2", - "image": "favicon.png" - }, - { - "name": "Dadish 3", - "directory": "dadish3", - "image": "splash.png" - }, - { - "name": "Watermelon Game", - "directory": "watermelongame", - "image": "assets/sprites/tittle.png" - }, - { - "name": "Crimson Fantasia", - "directory": "crimsonfantasia", - "image": "14qAOu.png" - }, - { - "name": "Geometry Dash Lite", - "directory": "gdlite", - "image": "logo.png" - }, - { - "name": "Virtual x86", - "directory": "v86", - "image": "favicon.ico" - }, - { - "name": "Idle Research", - "directory": "idleresearch", - "image": "cover-1660205761867.png" - }, - { - "name": "10 Minutes Till Dawn", - "directory": "10minutestilldawn", - "image": "splash.png" - }, - { - "name": "Friday Night Funkin: Mid Fight Masses", - "directory": "fnfmidfight", - "image": "fnfmidfight.png" - }, - { - "name": "Papas Donuteria", - "directory": "papasdonuteria", - "image": "papasdonuteria.png" - }, - { - "name": "Papas Pancakeria", - "directory": "papaspancakeria", - "image": "papaspancakeria.png" - }, - { - "name": "Papas Scooperia", - "directory": "papasscooperia", - "image": "papasscooperia.png" - }, - { - "name": "Papas Tacomia", - "directory": "papastacomia", - "image": "papastacomia.png" - }, - { - "name": "Territorial.io", - "directory": "territorialio", - "image": "territorialio.png" - }, - { - "name": "Theme Hotel", - "directory": "themehotel", - "image": "themehotel.png" - }, - { - "name": "Thumb Fighter", - "directory": "thumbfighter", - "image": "thumbfighter.png" - }, - { - "name": "The Enchanted Cave 2", - "directory": "enchantedcave2", - "image": "icon.png" - }, - { - "name": "Animal Crossing Wild World", - "directory": "animalcrossingwildworld", - "image": "animalcrossingwildworld.png" - }, - { - "name": "Banjo Kazooie", - "directory": "banjokazooie", - "image": "banjokazooie.png" - }, - { - "name": "Donkey Kong 64", - "directory": "donkeykong64", - "image": "donkeykong64.png" - }, - { - "name": "Doom 64", - "directory": "doom64", - "image": "doom64.png" - }, - { - "name": "Goldeneye 007", - "directory": "goldeneye", - "image": "goldeneye007.png" - }, - { - "name": "Majora's Mask", - "directory": "majorasmask", - "image": "majorasmask.png" - }, - { - "name": "Mario Kart DS", - "directory": "mariokartds", - "image": "mariokartds.png" - }, - { - "name": "Mario Party", - "directory": "marioparty", - "image": "marioparty.png" - }, - { - "name": "Mario Party 2", - "directory": "marioparty2", - "image": "marioparty2.png" - }, - { - "name": "Mario Party 3", - "directory": "marioparty3", - "image": "marioparty3.png" - }, - { - "name": "Mario Party DS", - "directory": "mariopartyds", - "image": "mariopartyds.png" - }, - { - "name": "Nintendogs", - "directory": "nintendogs", - "image": "nintendogs.png" - }, - { - "name": "Papas Bakeria", - "directory": "papasbakeria", - "image": "papasbakeria.png" - }, - { - "name": "Papas Cheeseria", - "directory": "papascheeseria", - "image": "papascheeseria.png" - }, - { - "name": "Papas Pastaria", - "directory": "papaspastaria", - "image": "papaspastaria.png" - }, - { - "name": "Papas Sushiria", - "directory": "papassushiria", - "image": "papassushiria.png" - }, - { - "name": "Papas Wingeria", - "directory": "papaswingeria", - "image": "papaswingeria.png" - }, - { - "name": "Paper Mario", - "directory": "papermario", - "image": "papermario.png" - }, - { - "name": "Star Fox 64", - "directory": "starfox64", - "image": "starfox64.png" - }, - { - "name": "Super Mario 64 DS", - "directory": "supermario64ds", - "image": "supermario64ds.png" - }, - { - "name": "state.io", - "directory": "stateio", - "image": "icon.webp" - }, - { - "name": "Draw Climber", - "directory": "drawclimber", - "image": "assets/gameLogo.png" - }, - { - "name": "Polytrack", - "directory": "polytrack", - "image": "cover.jpg" - } -] diff --git a/data/quotes.json b/data/quotes.json index 34524da..aeceb69 100644 --- a/data/quotes.json +++ b/data/quotes.json @@ -1,385 +1,3 @@ [ - "pay attention during school", - "yall playing games while im making the website ur using", - "shout out to whoever spent 2 hours on snake", - "Did you know? You can make 800-1000 burgers from one cow.", - "selenite >>> 3kh0", - "Hello!", - "Did you know it takes an average of 20 minutes to rip a game?", - "Batteries not included", - "Does this even work?", - "Welcome to my rad website", - "Made with HTML!", - "Uses some css", - "Now with buggy games!", - "You get a cookie!", - "Remember your manners!", - "Dogs are cute", - "Ok, and I know your address now!", - "Beep boop! Are you a robot?", - "Did you know I have a Discord server?", - "How many sides does a circle have?", - "1 + 1 = 3", - "6 + 9 = 69", - "You can read btw", - "Made you look!", - "Never gonna give you up, Never gonna let you down...", - "Redbull gives you wings...", - "What is your highscore on Swerve?", - "Now with 2X more bugs!", - "12345 is not a good password", - "This took to long to make", - "69 hehe funny number", - "Ahhhhhhhhh", - "Awesome!", - "As seen on TV!", - "doot doot", - "100% Fresh!", - "LOL", - "Cold as ice!", - "Why are you looking at me?", - "Made in the US!", - "Made by Sky!", - "Sky can code", - "Click me :D", - "Reload the page NOW!", - "Downloading your passwords...", - "Running Selenite.exe", - "WARNING: You may lose braincells if you proceed!", - "Please go away. Thx", - "Made with Codeberg!", - "Made with a text editor!", - "Made with love", - "Made with H2O", - "This is a splash text!", - "100% Orgainic!", - "Now with Pac-Man!", - "Now with JavaScript!", - "Now with CSS", - "Do you bite your ice cream?", - "This was not ment to be seen. :o", - "Does anyone know how to stand up?", - "69420", - "Me too bro.", - "#Relatable", - "2 + 2 is 4 - 1 is 3 Quick mafs", - "Feels bad man.", - "Now with games that are unblocked?", - "Now with great games!", - "How do you play tic-tac-toe?", - "Fortnite is cringe", - "You got games on your phone?", - "I am not gonna say anything.", - "Now with Minecraft!", - "Your momma jokes are cringe", - "Now with a new splash!", - "You just dont get it do you?", - "Powered by hamsters!", - "*insert cool explosion*", - "Efficiency is key", - "New update???", - "We have answers!", - "aaaaaaaaaaaaaaaaaaa", - "Yooooooooooooooooooooo", - "Your ip is 69.420.69.420", - "he on x-games mode", - "Got to go fast!", - "GAS GAS GAS GOTTA STEP ON THE GAS!", - "Selenite would like to view your browser history", - "For legal reasons, that's a joke!", - "It has been 84 years...", - "Made by Gucci, selling for $69420", - "There is someone looking over your shoulder", - "Electric!", - "How many different ones are there?!?!", - "NERDDDDDDDDDDDDDDDDDD", - "My iPad passcode is 563543 btw", - "Get out of my room, I'm not going to let you in!", - "I'm not a robot!", - "I'm not a human!", - "Sponsered by RAID SHADOW LEGENDS!", - "Sponsored by Honey!", - "Lorem ipsum dolor sit amet, adipiscing consequat adipiscing sit amet. In tortor dolor, sollicitudin quis urna vitae, rutrum selecrelico dolor. Ut facilisis ornare lacus, ut dictum felis aliquam ut. Omnino interdum fit cum cura. Non est aequum, non solum, sed nec refert quis sit terra. Sed vestibulum a tellus non semper. Aliquam a neque euismod dolor dapibus aliquet ultricies ut nibh. Sed eget auctor ante. Aliquam dictum volutpat vestibulum. Putasti ovum paschale futurum. Nullo modo.", - "ive currently lost $4 on this website", - "join the discord NOW", - "have any of you played on the og padlet?", - "linux is so much better than windows", - "Did you know that oxygen is tasty?", - "Did you know that drinking water is dangerous?", - "🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸", - "chromebooks suck", - "Made 10% from actual code 90% skidded", - "And no wonder, for Piplup7575 himself hides as a normal programmer even though he is very super duper cool.", - "Eat like a king who is on a budget", - "goodbye to all the fallen comrades", - "Approved by the Iranian ministry of health", - "AGE RATING 4+", - "Bebzi or Koka Kola", - "moni", - "Made proudly by U.S.A patriots.", - "Piiiiiiiiiiiiiplup", - "Piplup so cool very cool", - "The 7576th piplup is really bad", - "The northernfish goes south", - "Piplup7575 is the cool", - "Piplup is cool", - "uwu", - "uWu", - "OwO", - "UwU", - "Chocolate hummus is a disgrace to the entire middle east.", - "3kh0 has fell, and now 3kh0 has sadly died.", - "Fun fact: Your chromebook is likely being monitored 24/7", - "contains 100% all-natural chicken", - "contains 100% all-natural pork", - "Activate Selenite, Go to settings to activate Selenite", - "This copy of Selenite is not genuine.", - "contains 100% all-natural beef", - "You may be a victim of software counterfeiting", - "contains 100% all-natural lamb", - "Woe to those who don't use this game site", - "Whopper, Whopper, Whopper, Whopper,Junior, double, triple Whopper,Flame-grilled taste with perfect toppers,I rule this day.Lettuce, mayo, pickle, ketchup,It's OK if I don't want that, Impossible or bacon Whopper,Any Whopper my way.You rule, you're seizing the day,At BK, have it your way.You rule!", - "Did you know we are open source?", - "goodbye 3kh0 :(", - "SUPR COL GAMS V2 IS AWESOME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!", - "Fun fact: Did you know that this site was originally a Padlet?", - "thank you to louis pasteur for inventing milk", - "you found the secret message", - "hi david", - "i ate that david", - "david that eat", - "hi from asleep", - "i know where you live", - "i", - "technoblade never dies", - "Selenite has shut down.", - "theres at least 2, maybe 3 games on this website", - "yall failing ur classes while im a straight A student in all honors", - "just maybe stole a bunch ideas from 3kh0", - "why is 1v1lol the most popular game", - "https://discord.gg/7jyufnwJNf", - "buy smth from the patreon so i dont have to be in debt anymore", - "https://skysthelimit.dev", - "https://github.com/selenite-cc", - "CURRENTURL", - "the square root of OGNUM1 is SQRTNUM1", - "ZG8geW91ciBzY2hvb2wgd29yaw", - "use the transfer tool to keep ur data from other websites", - "best way to bypass the filter is on my patreon! (i wrote this as a joke but its real now)", - "best proxy ever only on my patreon (i wrote this as a joke but its real now)", - "🥺👉👈", - "what website is this?", - "we love about:blank", - "make sure to back up ur saves incase we ever get blocked", - "join the discord to be cool", - "bigfoot is an L", - "check steam", - "selentine", - "geometry dash two point two", - "does anyone call twitter X unironically", - "why is there like a hundred solo.to pages that have selenite, literally just search \"site:solo.to selenite\"", - "rights to the trans people 🏳️‍⚧️ (trans rights)", - "happy new years everyone", - "merry christmas everyone", - "happy easter day everyone", - "happy halloween everyone", - "happy thanksgiving everyone", - "happy valentines day everyone", - "happy birthday to me", - "happy birthday to you", - "happy birthday to everyone", - "happy birthday to the website", - "dont look behind you", - "sky", - "penguinify", - "a456pur", - "selenite", - "3kh0", - "selenite is the best", - "selenite is the best website", - "selenite is the best website ever", - "selenite is the best website ever made", - "selenite is the best website ever made in the history of the world", - "selenite is the best website ever made in the history of the world and the universe", - "selenite is the best website ever made in the history of the world and the universe and the galaxy", - "selenite is the best website ever made in the history of the world and the universe and the galaxy and the solar system", - "selenite is the best website ever made in the history of the world and the universe and the galaxy and the solar system and the milky way", - "selenite is the best website ever made in the history of the world and the universe and the galaxy and the solar system and the milky way and the universe", - "Your network admin has logged this visit. You will be reported to the authorities.", - "share with your friends", - "i love piracy", - "i love piracy and you should too", - "ai is gonna take over the world", - "serap", - "slenetine", - "Behind you.", - "if you are seeing this message, please ping the owner of selenite in the discord server immediately.", - "sorry in advance for may 18th", - "selenite stole $100k from the pentagon to keep paying for hosting", - "this is your sign to get off games and get a good academic life", - "Josh", - "3kh0 has been kidnapped.", - "We skidded from everyone including ourselves.", - "congrats on who got a 53 by using this site", - "@everyone Please be reminded that you should not to try and get a girlfriend in the Selenite widgetbot chat.", - "ive spent 10 minutes writing 8 quotes gosh i need better things to do", - "selenite workers are immensely underpaid", - "how does one", - "Please add proxy im begging i need proxy", - "seraphite", - "if u self-hosted this then ur cool", - "laptops are better then iPads", - "Remember When The Platform Was Sliding Into The Fire Pit, And I Said 'Goodbye,' And You Were Like 'No Way!' And Then I Was All, 'We Pretended We Were Going To Murder You.' That Was Great.", - "How Are You Holding Up? Because I’m A Potato.", - "As resilient as the pirate bay", - "We are resilient", - "We will never go away", - "4 Million gamers and counting", - "So many games to choose!", - "example.com", - "Dyknow eww", - "Securly no pls", - "i like bean", - "i like beans", - "i like lots of beans", - "i enjoy eating beans", - "i have a fondness for beans", - "i am a fan of beans", - "i find beans delicious", - "i can't resist a good bean dish", - "i think beans are underrated", - "i prefer beans over meat", - "i could eat beans every day", - "i believe beans are a healthy food", - "i always add beans to my salads", - "Desperado - Khantrast", - "Never Gonna Give You Up - Rick Astley", - "Bohemian Rhapsody - Queen", - "Hotel California - Eagles", - "Reeeeeeeee", - "Victor cant fly", - "if you want to install linux, first crack the skid, then restart and you should be set", - "sure just downgrade the about:blank page", - "...that's not how it works. if you want to unenroll the only way to do that is to uninstall the shim", - "sure just hack the crosh shell", - "yeah so you want to playstore bypass the servers, you don't want to remove the servers", - "yeah so you want to crack the proxy, you don't want to hack the goguardian", - "to disable filters, you need to hack the proxy", - "to downgrade, you need to rm -rf the shim", - "🥺👉👈", - "Fancy! ✨", - "˙ǝɯoɔlǝM", - "¡ollǝH", - "¿ʞɹoʍ uǝʌǝ sᴉɥʇ sǝop", - "ǝʇᴉsqǝʍ pɐɹ ʎɯ oʇ ǝɯoɔlǝM", - "¿¿sᴉǝɥʇ pɐǝɹ uɐɔ no⅄", - "Ḩ̴͈̗͉̜͓̣͈̙̉͑̅͋͆ë̷̱̒̿̔̕͠l̵̡̦̜̣̣̂p̴̧̢̜͓̀̒̊͗̃", - "W̷̧͈̭͉͎͙̜͉̒̈̀͆̊͑ͅe̴̢̨͕͖̩̘̱̘͎̜̞̮̖͌̿̒̽̅͆̅̂̄̉͊̾́̏͘͜͜l̶̡̤͉̟͉̞̝̻͈̐̃̓̇̑̏͗͌̒̒̿͒̚͝c̶̡̢̛͈͕̮̹̪̳̼͈͓̩̩̻͍̓̄̂͊̐̂͒̈́̊̇́̋͑̅͐͘͜ở̵͔̙͚̪͔̘̙̩̦͉̻̦̯́̂͐̉̔̀̊͂m̸̢̢̺̼͎͚͙̬̬͍̎̚e̸̜̩̫̯͙̲͍͍̯̓̔̎̍͂̓͐͌̍̃̈̾̕͘ ̶̞͔̲̦̀̽t̴̛̬͓̲̬̖̼̒͗̊͌͑̒̎̿̎̅̓̕͠͠o̵̡̨̙̬̦͍̠͕̭͚͛ͅ ̸̪̳̟̍̇̀̀͌̏̌̽͛͜3̸̧̹̝̼̺̹̞̯̠͓͛͋͌͆́͌͋̇͐͝͠k̷̟̙̙̹͚͗͛̀̽͊̇͑̒ḩ̴̩͍̗̙͓̱̠͕̺̖̘̹͉̋̒̎̽͑̈́͜ͅ0̴̱͍̬̩̩͇̥̯̯̬̙̽̈́̓̍̉͜͝!̸̠̗̠͉̪̮̻͈̰̄̚", - "All your base are belong to us", - "Error 404: Brain not found", - "Why settle for less when you can have the best?", - "Life's too short for bad design", - "Don't be a square, be a triangle", - "Think outside the box (except for this one)", - "Why be ordinary when you can be extraordinary?", - "Designing the future, one pixel at a time", - "Don't be afraid to try something new", - "The world is your canvas, make a masterpiece", - "Design is not just what it looks like and feels like. Design is how it works", - "Simplicity is the ultimate sophistication", - "Design is thinking made visible", - "The best things in life are design", - "Design is not just for decoration, it's function", - "Design is not just what it looks like, it's how it works", - "All your data belong to us.", - "Error 404: humor not found.", - "Welcome to the matrix.", - "We're not just a website, we're a lifestyle.", - "Mind blown? Us too.", - "Don't believe everything you see on the internet.", - "All hail the almighty algorithm.", - "We put the 'pro' in procrastination.", - "We're not just a website, we're a community.", - "We're the real deal, not a facsimile.", - "We're the missing piece to your internet puzzle.", - "You're not just visiting a website, you're experiencing the future.", - "We're the missing link, not the missing lynx.", - "We're not just a website, we're a revolution.", - "We're not just a website, we're a subculture.", - "We're not just a website, we're an obsession.", - "We're not just a website, we're a force to be reckoned with.", - "We're not just a website, we're a way of life.", - "We're not just a website, we're a cult.", - "We're the website you never knew you needed.", - "We're the website your mother warned you about.", - "We're the website your teachers told you to stay away from.", - "We're the website your friends are talking about.", - "We're the website you'll never forget.", - "We're the website that's taking over the world.", - "Think outside the box - unless it's a circle, then just think inside!", - "We're not just another website, we're a website with personality!", - "In a world of copycats, be a original.", - "We're not just a website, we're an experience.", - "We're not just a website, we're a movement.", - "We're not just a website, we're a game-changer.", - "We're not just a website, we're a trendsetter.", - "We're not just a website, we're a work of art.", - "We're not just a website, we're a masterpiece.", - "We're not just a website, we're a phenomenon.", - "We're not just a website, we're a sensation.", - "We're not just a website, we're a sensation of the internet.", - "We're not just a website, we're a revolution in the digital world.", - "We're not just a website, we're a revolution in the world of information", - "We're not just a website, we're a one-of-a-kind", - "We're not just a website, we're a one-stop-shop", - "We're not just a website, we're a one-stop-shop for all your needs", - "We're not just a website, we're a one-stop-shop for all your information needs", - "We're not just a website, we're a one-stop-shop for all your digital needs", - "We're not just a website, we're a one-stop-shop for all your online needs.", - "Unlock the power of knowledge with us.", - "Where the impossible becomes possible.", - "Experience the future of technology with us.", - "Where innovation meets creativity.", - "Empowering you to achieve your goals.", - "Join the revolution of digital transformation.", - "Leading the way in cutting-edge technology.", - "Transforming the way you interact with the world.", - "Unleashing the power of information at your fingertips.", - "Setting new standards in user experience.", - "Unlocking the full potential of the internet for you.", - "Discover endless possibilities with us.", - "Changing the game in online exploration.", - "Elevating your online experience to new heights.", - "Pushing the boundaries of what's possible online.", - "Unlocking the secrets of the digital world with us.", - "Unleashing the full potential of the internet for you.", - "Unlocking the power of data for you.", - "Where technology and human potential meet.", - "Where imagination becomes reality.", - "Where innovation meets accessibility.", - "Where creativity and technology merge.", - "Where ideas become solutions.", - "Where every click counts.", - "Where the future of the internet is now.", - "Why did the tomato turn red? Because it saw the salad dressing.", - "Why did the chicken cross the playground? To get to the other slide.", - "Why don't scientists trust atoms? Because they make up everything.", - "Why did the cookie go to the hospital? Because it was feeling crumbly.", - "Why did the computer go to the doctor? Because it had a virus.", - "Why did the cyclops stop teaching? Because he only had one pupil.", - "Why did the frog call his insurance company? He had a jump in his car.", - "Why did the boy tiptoe past the medicine cabinet? He didn't want to wake the sleeping pills.", - "Why did the cookie go to the seance? To talk to the dead dough.", - "Why did the clock go to the doctor? It had a broken tick-tock.", - "Why did the belt go to jail? For holding up the pants.", - "Why did the robot go to school? To learn how to unplug itself.", - "Life in the fast lane!", - "🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧🐧", - "i forgor", - "i rember", - "me when i the me the when the the me the when i the when the me the the the when the", - "Under pressure!", - "Do your work!", - "the voices", - "imagine not spending 748,289,198 hours making this site" + "add quotes soon" ] \ No newline at end of file diff --git a/dmca.html b/dmca.html new file mode 100644 index 0000000..118094d --- /dev/null +++ b/dmca.html @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + Selenite + + + + + + +

dmca

+

if you believe that any of the content on selenite infringes on your copyright or you are authorized to act on behalf of someone who you believe their copyright has been infringed upon, please submit a notice of copyright infringement to our dmca email with the following:

+

your electronic or physical signature, confirming you are the copyright owner or authorized to act on their behalf

+

contact information, including your full name, address, and phone number.

+

the content you believe is being infringed upon (title, url, etc.)

+

a statement that you have a good faith belief that the use of the material in the manner complained of is not authorized by the copyright owner, its agent, or the law

+

the content that the information in the notification is accurate, and under penalty of perjury, that you are authorized to act on behalf of the copyright owner

+

you may send this to dmca@selenite.cc

+

upon recieving the takedown notification and confirming that the information provided is valid, we will take down all content we believe appropriate

+ + diff --git a/dmca/2025-03-04 Microsoft.txt b/dmca/2025-03-04 Microsoft.txt deleted file mode 100644 index b1a948d..0000000 --- a/dmca/2025-03-04 Microsoft.txt +++ /dev/null @@ -1,17 +0,0 @@ -To Whom It may concern: - -We hereby notify you on behalf of Microsoft Corporation, (“Microsoft Corporation”) that the following URL https://selenite.cc/semag/eaglercraft/index.html, https://selenite.cc/semag/1defense/index.html (the “URL”) which you are hosting contains content (the “Infringing Content”) which infringes the copyright, intellectual property rights, goodwill and reputation of Microsoft Corporation, including the following copyright (the “MINECRAFT Copyright”) owned by Microsoft Corporation, found on Microsoft Corporation’s website at https://www.minecraft.net/: - -Copyright: MINECRAFT - -The URL’s Infringing Content constitutes an infringement of Microsoft Corporation’s intellectual property rights in the MINECRAFT Copyright. This damages the goodwill and reputation of Microsoft Corporation and causes consumer confusion as to whether the Infringing Content is authorized, endorsed, or sponsored by Microsoft Corporation when, in fact, it is not. Microsoft Corporation has an obligation to the public to police against any copyright infringing content which may cause marketplace confusion. Such actions by the URL dilute Microsoft Corporation’s MINECRAFT Copyright, harm its associated goodwill, and constitute, inter alia, a misappropriation and violation of the rights of Microsoft Corporation. This damage to its business entitles Microsoft Corporation to various forms of relief, including monetary compensation. - -We represent under penalty of perjury that the information in this notice is true and correct, and that we are authorized to act on behalf of Microsoft Corporation as owner of the MINECRAFT Copyright. We have a good faith belief that this use of the Infringing Content in the URL is not authorized by Microsoft Corporation as the owner of the MINECRAFT Copyright or its agents, nor is such use permissible by law. Use of such Infringing Content in the URL is not defensible. We have notified the registrant and registrar of the URL’s domain in writing of this matter. - -Since you are hosting the URL containing the Infringing Content, we request that you immediately disable or suspend such URL without delay. We would appreciate your resolving this matter as soon as possible and confirming that you have done so within the next seven (7) days. Microsoft Corporation reserves the right to take whatever action it considers appropriate to protect its rights and nothing contained in this Notice is intended to constitute a waiver of any of Microsoft Corporation’s legal rights or remedies, all of which are hereby expressly reserved. - -Please let us know if you need any additional information. - -Sincerely, - -[ REDACTED ] \ No newline at end of file diff --git a/favicon.ico b/favicon.ico index a1d02ee..862a13f 100644 Binary files a/favicon.ico and b/favicon.ico differ diff --git a/favicon.png b/favicon.png old mode 100644 new mode 100755 diff --git a/home.html b/home.html new file mode 100755 index 0000000..9820cc0 --- /dev/null +++ b/home.html @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Selenite + + + + + +

selenite.

+ +

better thank me for this unblocked website

+
+
+ +
+
+ +
+
+ +
+
+

heads up!

+

this is a development build of selenite

+

stuff is going to be broken (especially games)

+

if you have any issues, report them in the discord

+ + diff --git a/img/addlink.svg b/img/addlink.svg old mode 100644 new mode 100755 diff --git a/img/apps.svg b/img/apps.svg new file mode 100644 index 0000000..0174a7e --- /dev/null +++ b/img/apps.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/backgrounds/compress images PLEASE b/img/backgrounds/compress images PLEASE old mode 100644 new mode 100755 diff --git a/img/backgrounds/dogcat.svg b/img/backgrounds/dogcat.svg old mode 100644 new mode 100755 diff --git a/img/backgrounds/mountains_theme.jpg b/img/backgrounds/mountains_theme.jpg old mode 100644 new mode 100755 diff --git a/img/backgrounds/nighttime_theme.png b/img/backgrounds/nighttime_theme.png old mode 100644 new mode 100755 diff --git a/img/backgrounds/seraph_theme.png b/img/backgrounds/seraph_theme.png old mode 100644 new mode 100755 diff --git a/img/backgrounds/sunset_theme.jpg b/img/backgrounds/sunset_theme.jpg old mode 100644 new mode 100755 diff --git a/img/backgrounds/vaporwave_theme.jpg b/img/backgrounds/vaporwave_theme.jpg old mode 100644 new mode 100755 diff --git a/img/badges/banana.svg b/img/badges/banana.svg old mode 100644 new mode 100755 index dd37b84..2e02b8b --- a/img/badges/banana.svg +++ b/img/badges/banana.svg @@ -1,3 +1,3 @@ - - + + \ No newline at end of file diff --git a/img/badges/dev.svg b/img/badges/dev.svg old mode 100644 new mode 100755 diff --git a/img/badges/donate.svg b/img/badges/donate.svg old mode 100644 new mode 100755 diff --git a/img/badges/mod.svg b/img/badges/mod.svg old mode 100644 new mode 100755 diff --git a/img/badges/owner.svg b/img/badges/owner.svg old mode 100644 new mode 100755 diff --git a/img/badges/partner.svg b/img/badges/partner.svg old mode 100644 new mode 100755 diff --git a/img/badges/trans.svg b/img/badges/trans.svg old mode 100644 new mode 100755 diff --git a/img/bookmarklets.svg b/img/bookmarklets.svg new file mode 100644 index 0000000..ffaa74f --- /dev/null +++ b/img/bookmarklets.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/copy.svg b/img/copy.svg old mode 100644 new mode 100755 diff --git a/img/discord.svg b/img/discord.svg old mode 100644 new mode 100755 diff --git a/img/edit.svg b/img/edit.svg old mode 100644 new mode 100755 diff --git a/img/friend.svg b/img/friend.svg old mode 100644 new mode 100755 diff --git a/img/fullscreen.svg b/img/fullscreen.svg new file mode 100644 index 0000000..52cee9a --- /dev/null +++ b/img/fullscreen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/fullscreen_exit.svg b/img/fullscreen_exit.svg new file mode 100644 index 0000000..f4fbe9a --- /dev/null +++ b/img/fullscreen_exit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/games.svg b/img/games.svg index 89ba271..0ad6041 100644 --- a/img/games.svg +++ b/img/games.svg @@ -1,3 +1 @@ - - - \ No newline at end of file + diff --git a/img/home.svg b/img/home.svg new file mode 100644 index 0000000..f572a65 --- /dev/null +++ b/img/home.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/info.svg b/img/info.svg new file mode 100644 index 0000000..9ae001c --- /dev/null +++ b/img/info.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/muted.svg b/img/muted.svg new file mode 100644 index 0000000..803ae4b --- /dev/null +++ b/img/muted.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/open.svg b/img/open.svg new file mode 100644 index 0000000..c82800a --- /dev/null +++ b/img/open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/pause.svg b/img/pause.svg new file mode 100644 index 0000000..de10231 --- /dev/null +++ b/img/pause.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/pfps/3kh0.webp b/img/pfps/3kh0.webp old mode 100644 new mode 100755 diff --git a/img/pfps/astra.webp b/img/pfps/astra.webp old mode 100644 new mode 100755 diff --git a/img/pfps/awesome.webp b/img/pfps/awesome.webp old mode 100644 new mode 100755 diff --git a/img/pfps/ayo.webp b/img/pfps/ayo.webp old mode 100644 new mode 100755 diff --git a/img/pfps/buttsfart.webp b/img/pfps/buttsfart.webp old mode 100644 new mode 100755 diff --git a/img/pfps/caidn.webp b/img/pfps/caidn.webp old mode 100644 new mode 100755 diff --git a/img/pfps/compass.png b/img/pfps/compass.png old mode 100644 new mode 100755 diff --git a/img/pfps/dire.webp b/img/pfps/dire.webp old mode 100644 new mode 100755 diff --git a/img/pfps/legalise.webp b/img/pfps/legalise.webp old mode 100644 new mode 100755 diff --git a/img/pfps/lunar.webp b/img/pfps/lunar.webp old mode 100644 new mode 100755 diff --git a/img/pfps/math.webp b/img/pfps/math.webp old mode 100644 new mode 100755 diff --git a/img/pfps/night.webp b/img/pfps/night.webp old mode 100644 new mode 100755 diff --git a/img/pfps/ocular.webp b/img/pfps/ocular.webp old mode 100644 new mode 100755 diff --git a/img/pfps/shadow.webp b/img/pfps/shadow.webp old mode 100644 new mode 100755 diff --git a/img/pfps/sky.webp b/img/pfps/sky.webp old mode 100644 new mode 100755 diff --git a/img/pfps/snor.webp b/img/pfps/snor.webp old mode 100644 new mode 100755 diff --git a/img/pfps/ultra.webp b/img/pfps/ultra.webp old mode 100644 new mode 100755 diff --git a/img/pfps/wrnd.gif b/img/pfps/wrnd.gif old mode 100644 new mode 100755 diff --git a/img/play.svg b/img/play.svg new file mode 100644 index 0000000..07e4b31 --- /dev/null +++ b/img/play.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/reload.svg b/img/reload.svg new file mode 100644 index 0000000..87b1132 --- /dev/null +++ b/img/reload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/selenite192.png b/img/selenite192.png old mode 100644 new mode 100755 diff --git a/img/selenite512.png b/img/selenite512.png old mode 100644 new mode 100755 diff --git a/img/settings.svg b/img/settings.svg new file mode 100644 index 0000000..d871081 --- /dev/null +++ b/img/settings.svg @@ -0,0 +1 @@ + diff --git a/img/share.svg b/img/share.svg new file mode 100644 index 0000000..801bb04 --- /dev/null +++ b/img/share.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/star-fill.svg b/img/star-fill.svg old mode 100644 new mode 100755 diff --git a/img/star.svg b/img/star.svg old mode 100644 new mode 100755 diff --git a/img/up.svg b/img/up.svg new file mode 100644 index 0000000..ea09945 --- /dev/null +++ b/img/up.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/img/user.svg b/img/user.svg old mode 100644 new mode 100755 diff --git a/img/user_index.svg b/img/user_index.svg old mode 100644 new mode 100755 diff --git a/img/volume.svg b/img/volume.svg new file mode 100644 index 0000000..7244ec4 --- /dev/null +++ b/img/volume.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/index.html b/index.html old mode 100644 new mode 100755 index 64e6d57..00ef551 --- a/index.html +++ b/index.html @@ -1,5 +1,5 @@ - + @@ -15,6 +15,7 @@ + - - - - - - - + + + Selenite - - + + + - - -
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - -
-
-

selenite.

- -

better thank me for this unblocked website

-
-
- -
-
- -
-
- -
-
-
- +

your device is not supported!

please rotate your screen for the best experience.

+

we are loading your game!

please allow us to fetch the data first, this should only take a second.

+ + + + + + + + + + + + + + +
+
+

currently online: --

+

|

+

--° 🌩️

+

|

+

7:41:21 pm

+
diff --git a/index.js b/index.js deleted file mode 100644 index ceba854..0000000 --- a/index.js +++ /dev/null @@ -1,55 +0,0 @@ -const express = require('express'); -const path = require('path'); - -const app = express(); -const port = process.env.PORT || 3000; - - -app.use(express.static(__dirname)); - -app.get('/projects', (req, res) => { - res.sendFile(path.join(__dirname, 'projects.html')); -}); - -app.get('/bookmarklets', (req, res) => { - res.sendFile(path.join(__dirname, 'bookmarklets.html')); -}); - -app.get('/settings', (req, res) => { - res.sendFile(path.join(__dirname, 'settings.html')); -}); - -app.get('/support', (req, res) => { - res.sendFile(path.join(__dirname, 'support.html')); -}); - -app.get('/about', (req, res) => { - res.sendFile(path.join(__dirname, 'about.html')); -}); - -app.get('/transfer', (req, res) => { - res.sendFile(path.join(__dirname, 'transfer.html')); -}); - -app.get('/suggest', (req, res) => { - res.sendFile(path.join(__dirname, 'suggest.html')); -}); - -app.get('/contact', (req, res) => { - res.sendFile(path.join(__dirname, 'contact.html')); -}); - -app.get('/ad', (req, res) => { - res.sendFile(path.join(__dirname, 'ad.html')); -}); - -app.get('/blank', (req, res) => { - res.sendFile(path.join(__dirname, 'blank.html')); -}); -app.get('/backgrounds', (req, res) => { - res.sendFile(path.join(__dirname, 'backgrounds.html')); -}); - -app.listen(port, () => { - console.log(`Selenite is running on port ${port}`); -}); diff --git a/info.html b/info.html new file mode 100644 index 0000000..e176ed1 --- /dev/null +++ b/info.html @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + Selenite + + + + + + +

information

+

suggest a game!

+

you may make suggestions in our discord or email our support team.

+

dmca

+

please check here for information.

+

credits

+

whilst the majority of the work has been done by the creator, sky, selenite would not be possible without some key sources and people.

+

seraph by a456pur (games)

+

3kh0 assets by 3kh0 (games)

+

web ports by gn-math (games)

+

more ports by bog (games)

+

even more ports by slqnt (games)

+

cobalt by imputnet (music implementation)

+ + diff --git a/js/all.js b/js/all.js old mode 100644 new mode 100755 index b883268..e69de29 --- a/js/all.js +++ b/js/all.js @@ -1,195 +0,0 @@ -let backup_icon; -let backup_name; -let socket; -if (location.origin.includes("https")) { - socket = new WebSocket(`wss://${location.host}/socket`); -} else { - socket = new WebSocket(`ws://${location.host}/socket`); -} -socket.addEventListener("open", (event) => { - let cookies = document.cookie.split("; "); - for (let i = 0; i < cookies.length; i++) { - if (cookies[i].trim().startsWith("token=")) { - socket.send(cookies[i].trim()); - } - } -}); -socket.addEventListener("message", (event) => { - if (event.data == "ping") { - socket.send(`pong${location.pathname.includes("/semag/") ? location.pathname.split("/")[2] : ""}`); - return; - } - if (event.data.startsWith("announce.")) { - let styles = document.createElement("style"); - styles.innerHTML = `@import url("https://fonts.googleapis.com/css2?family=Prompt:wght@300&display=swap");.announce {font-family: "Prompt", sans-serif;position: absolute;margin-left: auto;margin-right: auto;top: 10px;z-index: 10000000;background-color: #a53026;padding: 10px;width: max-content;border-radius: 10px;left:0;right:0;border-color: #f74f40;border-width: 5px;border-radius: 10px;border-style: solid;max-width: 60%;font-size: 16px;color: white;}@keyframes FadeIn {0% {opacity: 0;}100% {opacity: 1;}}@keyframes FadeOut {0% {opacity: 1;}100% {opacity: 0;}}`; - let announcement = document.createElement("div"); - announcement.innerText = event.data.substring(9); - announcement.setAttribute("class", "announce"); - announcement.style.opacity = "0"; - announcement.style.animation = "FadeIn 1s ease-in-out forwards"; - document.head.appendChild(styles); - document.body.appendChild(announcement); - setTimeout(() => { - announcement.style.animation = "FadeOut 1s ease-in-out forwards"; - setTimeout(() => { - announcement.remove(); - styles.remove(); - }, 1000); - }, 14000); - } -}); - -function setCloak(name, icon) { - var tabicon = getCookie("tabicon"); - if (tabicon || icon) { - var link = document.querySelector("link[rel~='icon']"); - if (link) { - if (link.href != icon) backup_icon = link; - while (document.querySelector("link[rel~='icon']")) { - document.querySelector("link[rel~='icon']").remove(); - } - } - var link = document.querySelector("link[rel~='shortcut icon']"); - if (link) { - if (link.href != icon) backup_icon = link; - while (document.querySelector("link[rel~='shortcut icon']")) { - document.querySelector("link[rel~='shortcut icon']").remove(); - } - } - link = document.createElement("link"); - link.rel = "icon"; - document.head.appendChild(link); - link.href = tabicon; - if (name) { - link.href = icon; - } - } - - var tabname = getCookie("tabname"); - backup_name = document.title; - if (tabname) { - document.title = tabname; - } - if (name) { - document.title = name; - } - panicMode(); -} -if (getCookie("debugging") == 1) { - const debugscript = document.createElement("script"); - debugscript.setAttribute("src", "/js/debug.js"); - document.head.append(debugscript); -} -function getCookie(cname) { - let name = cname + "="; - let decodedCookie = decodeURIComponent(document.cookie); - let ca = decodedCookie.split(";"); - for (let i = 0; i < ca.length; i++) { - let c = ca[i]; - while (c.charAt(0) == " ") { - c = c.substring(1); - } - if (c.indexOf(name) == 0) { - return c.substring(name.length, c.length); - } - } - return ""; -} -let listofchars = ""; -document.addEventListener("keydown", (e) => { - listofchars = listofchars + e.key; - if (listofchars.length > 20) { - listofchars = listofchars.substring(e.key.length); - } - if (listofchars.includes("safemode")) { - window.location.href = panicurl; - listofchars = ""; - } else if (listofchars.includes("debugplz")) { - if (getCookie("debugging") == 1) { - document.cookie = "debugging=0;"; - alert("debugging off!"); - } else { - document.cookie = "debugging=1"; - alert("debugging on!"); - } - listofchars = ""; - } -}); -function panicMode() { - panicurl = getCookie("panicurl"); - if (panicurl == "") { - panicurl = "https://google.com"; - } -} -document.addEventListener( - "DOMContentLoaded", - () => { - setCloak(); - let plausible = document.createElement("script"); - plausible.setAttribute("event-domain", location.host) - plausible.setAttribute("defer", ""); - plausible.setAttribute("src", "/js/analytics.js"); - plausible.setAttribute("data-domain", "selenite.cc"); - document.head.appendChild(plausible); - }, - false -); -if (location.pathname.substring(1).includes("semag") && localStorage.getItem("selenite.blockClose") == "true") { - window.onbeforeunload = function () { - return ""; - }; -} -addEventListener("visibilitychange", (e) => { - if (localStorage.getItem("selenite.tabDisguise") == "true") { - if (document.visibilityState === "hidden") { - setCloak("Google", "https://www.google.com/favicon.ico"); - } else { - if (!backup_icon) { - icon = document.createElement("link"); - icon.rel = "icon"; - - var link = document.querySelector("link[rel~='icon']"); - if (link) { - backup_icon = link; - while (document.querySelector("link[rel~='icon']")) { - document.querySelector("link[rel~='icon']").remove(); - } - } - var link = document.querySelector("link[rel~='shortcut icon']"); - if (link) { - backup_icon = link; - while (document.querySelector("link[rel~='shortcut icon']")) { - document.querySelector("link[rel~='shortcut icon']").remove(); - } - } - document.head.appendChild(icon); - icon.href = location.origin + "/favicon.ico"; - } else { - document.head.appendChild(backup_icon); - } - document.title = backup_name; - } - } -}); -var polyfillScript = document.createElement("script"); -polyfillScript.src = "https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?version=4.8.0"; -document.head.appendChild(polyfillScript); -function fps() { - var script = document.createElement("script"); - script.onload = function () { - var stats = new Stats(); - document.body.appendChild(stats.dom); - requestAnimationFrame(function loop() { - stats.update(); - requestAnimationFrame(loop); - }); - - localStorage.setItem("fps", true); - }; - script.src = "https://cdn.jsdelivr.net/gh/mrdoob/stats.js@master/build/stats.min.js"; - document.head.appendChild(script); -} - -if (localStorage.getItem("fps")) { - fps(); -} diff --git a/js/all.min.js b/js/all.min.js old mode 100644 new mode 100755 index 47f8d76..42314ee --- a/js/all.min.js +++ b/js/all.min.js @@ -1 +1,15 @@ -let backup_icon;let backup_name;let socket;if(location.origin.includes("https")){socket=new WebSocket(`wss://${location.host }/socket`)}else{socket=new WebSocket(`ws://${location.host }/socket`)}socket.addEventListener("open",(event)=>{let cookies=document.cookie.split("; ");for(let i=0;i{if(event.data=="ping"){socket.send(`pong${location.pathname.includes("/semag/")?location.pathname.split("/")[2]:""}`);return}if(event.data.startsWith("announce.")){let styles=document.createElement("style");styles.innerHTML=`@import url("https://fonts.googleapis.com/css2?family=Prompt:wght@300&display=swap");.announce {font-family: "Prompt", sans-serif;position: absolute;margin-left: auto;margin-right: auto;top: 10px;z-index: 10000000;background-color: #a53026;padding: 10px;width: max-content;border-radius: 10px;left:0;right:0;border-color: #f74f40;border-width: 5px;border-radius: 10px;border-style: solid;max-width: 60%;font-size: 16px;color: white;}@keyframes FadeIn {0% {opacity: 0;}100% {opacity: 1;}}@keyframes FadeOut {0% {opacity: 1;}100% {opacity: 0;}}`;let announcement=document.createElement("div");announcement.innerText=event.data.substring(9);announcement.setAttribute("class","announce");announcement.style.opacity="0";announcement.style.animation="FadeIn 1s ease-in-out forwards";document.head.appendChild(styles);document.body.appendChild(announcement);setTimeout(()=>{announcement.style.animation="FadeOut 1s ease-in-out forwards";setTimeout(()=>{announcement.remove();styles.remove()},1000)},14000)}});function setCloak(name,icon){var tabicon=getCookie("tabicon");if(tabicon||icon){var link=document.querySelector("link[rel~='icon']");if(link){if(link.href!=icon){backup_icon=link}while(document.querySelector("link[rel~='icon']")){document.querySelector("link[rel~='icon']").remove()}}var link=document.querySelector("link[rel~='shortcut icon']");if(link){if(link.href!=icon){backup_icon=link}while(document.querySelector("link[rel~='shortcut icon']")){document.querySelector("link[rel~='shortcut icon']").remove()}}link=document.createElement("link");link.rel="icon";document.head.appendChild(link);link.href=tabicon;if(name){link.href=icon}}var tabname=getCookie("tabname");backup_name=document.title;if(tabname){document.title=tabname}if(name){document.title=name}panicMode()}if(getCookie("debugging")==1){const debugscript=document.createElement("script");debugscript.setAttribute("src","/js/debug.js");document.head.append(debugscript)}function getCookie(cname){let name=cname+"=";let decodedCookie=decodeURIComponent(document.cookie);let ca=decodedCookie.split(";");for(let i=0;i{listofchars=listofchars+e.key;if(listofchars.length>20){listofchars=listofchars.substring(e.key.length)}if(listofchars.includes("safemode")){window.location.href=panicurl;listofchars=""}else if(listofchars.includes("debugplz")){if(getCookie("debugging")==1){document.cookie="debugging=0;";alert("debugging off!")}else{document.cookie="debugging=1";alert("debugging on!")}listofchars=""}});function panicMode(){panicurl=getCookie("panicurl");if(panicurl==""){panicurl="https://google.com"}}document.addEventListener("DOMContentLoaded",()=>{setCloak();let plausible=document.createElement("script");plausible.setAttribute("event-domain",location.host);plausible.setAttribute("defer","");plausible.setAttribute("src","/js/analytics.js");plausible.setAttribute("data-domain","selenite.cc");document.head.appendChild(plausible)},false);if(location.pathname.substring(1).includes("semag")&&localStorage.getItem("selenite.blockClose")=="true"){window.onbeforeunload=function(){return ""}}addEventListener("visibilitychange",(e)=>{if(localStorage.getItem("selenite.tabDisguise")=="true"){if(document.visibilityState==="hidden"){setCloak("Google","https://www.google.com/favicon.ico")}else{if(!backup_icon){icon=document.createElement("link");icon.rel="icon";var link=document.querySelector("link[rel~='icon']");if(link){backup_icon=link;while(document.querySelector("link[rel~='icon']")){document.querySelector("link[rel~='icon']").remove()}}var link=document.querySelector("link[rel~='shortcut icon']");if(link){backup_icon=link;while(document.querySelector("link[rel~='shortcut icon']")){document.querySelector("link[rel~='shortcut icon']").remove()}}document.head.appendChild(icon);icon.href=location.origin+"/favicon.ico"}else{document.head.appendChild(backup_icon)}document.title=backup_name}}});var polyfillScript=document.createElement("script");polyfillScript.src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js?version=4.8.0";document.head.appendChild(polyfillScript);function fps(){var script=document.createElement("script");script.onload=function(){var stats=new Stats();document.body.appendChild(stats.dom);requestAnimationFrame(function loop(){stats.update();requestAnimationFrame(loop)});localStorage.setItem("fps",true)};script.src="https://cdn.jsdelivr.net/gh/mrdoob/stats.js@master/build/stats.min.js";document.head.appendChild(script)}if(localStorage.getItem("fps")){fps()} \ No newline at end of file +// this is a test +function loadAnalytics() {}; + +loadAnalytics.unami = function() { + // + let script = document.createElement("script"); + script.setAttribute("defer", ""); + script.setAttribute("src", "https://cloud.umami.is/script.js"); + script.setAttribute("data-website-id", "cdb79ddd-06a6-478f-b726-be39b502d6a5"); + document.head.appendChild(script); +}; + +document.addEventListener("DOMContentLoaded", () => { + loadAnalytics.unami(); +}) \ No newline at end of file diff --git a/js/analytics.js b/js/analytics.js deleted file mode 100644 index 775e16d..0000000 --- a/js/analytics.js +++ /dev/null @@ -1 +0,0 @@ -!function(){"use strict";var r=window.location,o=window.document,l=o.currentScript,s=l.getAttribute("data-api")||new URL(l.src).origin+"/api/event";function u(t,e){t&&console.warn("Ignoring Event: "+t),e&&e.callback&&e.callback()}function t(t,e){if(/^localhost$|^127(\.[0-9]+){0,2}\.[0-9]+$|^\[::1?\]$/.test(r.hostname)||"file:"===r.protocol)return u("localhost",e);if((window._phantom||window.__nightmare||window.navigator.webdriver||window.Cypress)&&!window.__plausible)return u(null,e);try{if("true"===window.localStorage.plausible_ignore)return u("localStorage flag",e)}catch(t){}var n={},t=(n.n=t,n.u=r.href,n.d=l.getAttribute("data-domain"),n.r=o.referrer||null,e&&e.meta&&(n.m=JSON.stringify(e.meta)),e&&e.props&&(n.p=e.props),l.getAttributeNames().filter(function(t){return"event-"===t.substring(0,6)})),i=n.p||{},a=(t.forEach(function(t){var e=t.replace("event-",""),t=l.getAttribute(t);i[e]=i[e]||t}),n.p=i,new XMLHttpRequest);a.open("POST",s,!0),a.setRequestHeader("Content-Type","text/plain"),a.send(JSON.stringify(n)),a.onreadystatechange=function(){4===a.readyState&&e&&e.callback&&e.callback({status:a.status})}}var e=window.plausible&&window.plausible.q||[];window.plausible=t;for(var n,i=0;i { - if (document.readyState === "complete") { - loadGames(data); - clearInterval(areGamesReady); - } - }, 50); - } +document.addEventListener("DOMContentLoaded", loadGames); +let elements = []; +async function loadGames() { + // taken from mdn + // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort + let data = await (await fetch("/resources/apps.json")).json(); + let sorted = data.sort((a, b) => { + const n1 = a.name.toUpperCase(); + const n2 = b.name.toUpperCase(); + if (n1 < n2) { + return -1; + } + if (n1 > n2) { + return 1; + } + // shouldnt happen but just incase + return 0; + }); + let gamesElement = document.getElementById("games"); + let starredGames = JSON.parse(localStorage.getItem("selenite.starred") || '[]'); + sorted.forEach(element => { + isStarred = starredGames.indexOf(element.directory) != -1; + let newElement = document.createElement("game"); + newElement.setAttribute("data-target", element.directory); + newElement.setAttribute("data-image", element.image); + let image = document.createElement("img"); + image.src = `/resources/sppa/${element.directory}/${element.image}` + let holder = document.createElement("div"); + holder.id = "holder"; + let title = document.createElement("h1"); + title.innerText = element.name; + let star = document.createElement("img"); + star.id = "star"; + star.classList = "star"; + star.src = isStarred ? "/img/star-fill.svg" : "/img/star.svg"; + newElement.appendChild(image); + holder.appendChild(title); + holder.appendChild(star); + newElement.appendChild(holder); + gamesElement.appendChild(newElement); + elements.push(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${encodeURIComponent(element.name)}&dir=${element.directory}&img=${element.image}&type=a` + }); + star.addEventListener("click", (e) => { + e.preventDefault(); + e.stopPropagation(); + starEvent(e); + }); + }); + document.getElementById("gameCount").innerText = `${data.length} apps loaded!`; + document.getElementById("loadingMsg").style.display = "none"; + document.getElementById("allHeader").style.display = "block"; + starredGames = JSON.parse(localStorage.getItem("selenite.starred") || '[]'); + if(starredGames.length > 0) { + document.getElementById("starredHeader").style.display = "block"; + starredGames.forEach((e) => { + let element = document.querySelector(`#games game[data-target='${e}']`); + let newElement = element.cloneNode(true); + document.getElementById("starredgames").appendChild(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${newElement.childNodes[1].childNodes[0].innerText}&dir=${newElement.getAttribute("data-target")}&img=${newElement.getAttribute("data-image")}&type=a` + }); + }); + document.querySelectorAll("#starredgames #star").forEach((e) => { + e.addEventListener("click", (e) => { + e.preventDefault(); + e.stopPropagation(); + starEvent(e); + }) + }) + } +} +document.addEventListener("DOMContentLoaded", ()=>{ + document.getElementById("gamesearch").addEventListener("input", ()=>{ + let input = document.getElementById("gamesearch").value.toUpperCase(); + let total = 0; + if(elements.length > 0) { + elements.forEach((element) => { + let title = element.childNodes[1].childNodes[0].innerText.toUpperCase(); + if(title.includes(input)) { + element.style.display = "flex"; + } else { + element.style.display = "none"; + total++; + } + }) + } + document.getElementById("noResults").style.display = total >= elements.length ? "flex" : "none" + }) }); -function loadGames(data) { - starredgames = getCookie("starred"); - if (!starredgames) { - starredgames = []; - } else { - starredgames = JSON.parse(decodeURIComponent(getCookie("starred"))); - } - $("#gamesearch").prop({ - placeholder: "Click here to search through our " + data.length + " apps!", - }); - data.sort(dynamicSort("name")); - gamelist = data; - for (let i = 0; i < data.length; i++) { - let $element = $("") - .attr({ - class: "game", - id: data[i].directory, - recommended: data[i].recommended, - href: "sppa/" + data[i].directory + "/index.html", - }) - .data("recommended", data[i].recommended) - .append( - $("").prop({ - src: "sppa/" + data[i].directory + "/" + data[i].image, - alt: data[i].name + " logo", - }) - ) - .append($("

").text(data[i].name)) - .append( - $("").prop({ - src: "img/star.svg", - alt: "star", - class: "star", - }) - ); - - if (starredgames.includes(data[i].directory)) { - $element.find("img.star").attr("id", "starred"); - $element.find("img.star").attr("src", "img/star-fill.svg"); - let $pinnedelement = $element.clone(); - $("#pinned").append($pinnedelement); - if ($("#pinnedmessage")) { - $("#pinnedmessage").hide(); - } - } - - $("#games").append($element); - } - $("#games #message").remove(); - - if ((search = 1)) { - var txt = $("#gamesearch").val(); - if (txt == "") { - $("#games .suggest").show(); - } else { - $("#games .suggest").hide(); - } - $("#games .game").hide(); - $("#games .game").each(function () { - if ($(this).text().toUpperCase().indexOf(txt.toUpperCase()) != -1 || $(this).attr("id").toUpperCase().indexOf(txt.toUpperCase()) != -1) { - $(this).show(); - } - }); - } - - // starred games - let starred; - $(document).on("click", "img.star", function (event) { - - }); - $(document).on("click", ".game", function (event) { - if ($(event.target).is("img.star")) { - event.preventDefault(); - event.stopPropagation(); - if (!$(event.target).attr("id")) { - $(event.target).prop({ id: "starred" }); - $(event.target).prop({ src: "img/star-fill.svg" }); - starred = Cookies.get("starred"); - if (starred) { - starred = JSON.parse(starred); - } else { - starred = []; - } - starred.push($(this).attr("id")); - Cookies.set("starred", JSON.stringify(starred)); - $element = $(this).clone(); - $("#pinned").append($element); - $("#pinnedmessage").hide(); - temp = $("#pinned")[0].childNodes; - pinnedarray = [...temp]; - pinnedarray.sort(dynamicSort("id")); - $("#pinned").empty(); - for (let i = 0; i < pinnedarray.length; i++) { - pinnedarraynodes = pinnedarray[i].childNodes; - pinnedarraynodes = [...pinnedarraynodes]; - let $element = $("
") - .prop({ - class: "game", - id: pinnedarray[i].id, - }) - .append( - $("").prop({ - src: pinnedarraynodes[0].src, - alt: pinnedarraynodes[0].alt, - class: "gameicon", - }) - ) - .append($("

").text(pinnedarraynodes[1].innerHTML)) - .append( - $("").prop({ - src: "img/star-fill.svg", - alt: "star", - class: "star", - id: "starred", - }) - ); - $("#pinned").append($element); - } - } else { - $(event.target).removeAttr("id"); - $(event.target).attr("src", "img/star.svg"); - $thisdiv = "#" + $(this).attr("id"); - $thisdiv = $thisdiv.replace(".", "\\."); - starred = Cookies.get("starred"); - starred = JSON.parse(starred); - ourindex = starred.indexOf($(this).attr("id")); - starred.splice(ourindex, 1); - Cookies.set("starred", JSON.stringify(starred)); - $("#pinned " + $thisdiv).remove(); - if ($("#pinned").is(":empty")) { - $("#pinnedmessage").show(); - } - $($thisdiv + " #starred").attr("src", "img/star.svg"); - $($thisdiv + " #starred").removeAttr("id"); - } - } - }); - $(document).on("click", "#game img .star", function (event) { - event.stopPropagation(); - $(this).prop({ class: "material-symbols-outlined fill" }); - }); -} - -function redirectGame(dir) { - window.location.href = window.location.origin + "/sppa/" + dir + "/index.html"; -} -function dynamicSort(property) { - var sortOrder = 1; - - if (property[0] === "-") { - sortOrder = -1; - property = property.substr(1); - } - return function (a, b) { - if (sortOrder == -1) { - return b[property].localeCompare(a[property]); - } else { - return a[property].localeCompare(b[property]); - } - }; -} - -function selectRandomGame() { - redirectGame(gamelist[Math.floor(Math.random() * gamelist.length - 1)].directory); -} - -let viewrecommended = 0; -function recommendedGames() { - if (viewrecommended == 0) { - $("#games .game").hide(); - $("#games .game").each(function () { - if ($(this).attr("recommended")) { - $(this).show(); - } - }); - $("#recommend").text("Click to view all apps again!"); - viewrecommended = 1; - } else { - $("#games .game").hide(); - $("#games .game").show(); - viewrecommended = 0; - $("#recommend").text("Click to view recommended apps!"); - } +function starEvent(e) { + let game = e.target.parentNode.parentNode.getAttribute("data-target"); + starredGames = JSON.parse(localStorage.getItem("selenite.starred") || '[]'); + if(starredGames.indexOf(game) == -1) { + starredGames.push(game); + starredGames.sort(); + if(starredGames.length > 0) { + document.getElementById("starredHeader").style.display = "block"; + } else { + document.getElementById("starredHeader").style.display = "none"; + } + localStorage.setItem("selenite.starred", JSON.stringify(starredGames)); + e.target.src = "/img/star-fill.svg"; + starredgames.innerHTML = ""; + starredGames.forEach((e) => { + let element = document.querySelector(`#games game[data-target='${e}']`); + let newElement = element.cloneNode(true); + document.getElementById("starredgames").appendChild(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${newElement.childNodes[1].childNodes[0].innerText}&dir=${newElement.getAttribute("data-target")}&img=${newElement.getAttribute("data-image")}&type=a` + }); + }) + } else { + starredGames.splice(starredGames.indexOf(game), 1); + document.querySelectorAll(`game[data-target='${game}'] #star`).forEach((e) => { + e.src = "/img/star.svg"; + }) + if(starredGames.length > 0) { + document.getElementById("starredHeader").style.display = "block"; + } else { + document.getElementById("starredHeader").style.display = "none"; + } + localStorage.setItem("selenite.starred", JSON.stringify(starredGames)); + starredgames.innerHTML = ""; + starredGames.forEach((e) => { + let element = document.querySelector(`#games game[data-target='${e}']`); + let newElement = element.cloneNode(true); + document.getElementById("starredgames").appendChild(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${newElement.childNodes[1].childNodes[0].innerText}&dir=${newElement.getAttribute("data-target")}&img=${newElement.getAttribute("data-image")}&type=a` + }); + }) + } + document.querySelectorAll("#starredgames #star").forEach((e) => { + e.addEventListener("click", (e) => { + e.preventDefault(); + e.stopPropagation(); + starEvent(e); + }) + }) } \ No newline at end of file diff --git a/js/asteroids.js b/js/asteroids.js deleted file mode 100644 index 8862c90..0000000 --- a/js/asteroids.js +++ /dev/null @@ -1,66 +0,0 @@ - -(function(){function Asteroids(){if(!window.ASTEROIDS) - window.ASTEROIDS={enemiesKilled:0};function Vector(x,y){if(typeof x=='Object'){this.x=x.x;this.y=x.y;}else{this.x=x;this.y=y;}};Vector.prototype={cp:function(){return new Vector(this.x,this.y);},mul:function(factor){this.x*=factor;this.y*=factor;return this;},mulNew:function(factor){return new Vector(this.x*factor,this.y*factor);},add:function(vec){this.x+=vec.x;this.y+=vec.y;return this;},addNew:function(vec){return new Vector(this.x+vec.x,this.y+vec.y);},sub:function(vec){this.x-=vec.x;this.y-=vec.y;return this;},subNew:function(vec){return new Vector(this.x-vec.x,this.y-vec.y);},rotate:function(angle){var x=this.x,y=this.y;this.x=x*Math.cos(angle)-Math.sin(angle)*y;this.y=x*Math.sin(angle)+Math.cos(angle)*y;return this;},rotateNew:function(angle){return this.cp().rotate(angle);},setAngle:function(angle){var l=this.len();this.x=Math.cos(angle)*l;this.y=Math.sin(angle)*l;return this;},setAngleNew:function(angle){return this.cp().setAngle(angle);},setLength:function(length){var l=this.len();if(l)this.mul(length/l);else this.x=this.y=length;return this;},setLengthNew:function(length){return this.cp().setLength(length);},normalize:function(){var l=this.len();this.x/=l;this.y/=l;return this;},normalizeNew:function(){return this.cp().normalize();},angle:function(){return Math.atan2(this.y,this.x);},collidesWith:function(rect){return this.x>rect.x&&this.y>rect.y&&this.x-0.005)return 0;return l;},is:function(test){return typeof test=='object'&&this.x==test.x&&this.y==test.y;},toString:function(){return'[Vector('+this.x+', '+this.y+') angle: '+this.angle()+', length: '+this.len()+']';}};function Line(p1,p2){this.p1=p1;this.p2=p2;};Line.prototype={shift:function(pos){this.p1.add(pos);this.p2.add(pos);},intersectsWithRect:function(rect){var LL=new Vector(rect.x,rect.y+rect.height);var UL=new Vector(rect.x,rect.y);var LR=new Vector(rect.x+rect.width,rect.y+rect.height);var UR=new Vector(rect.x+rect.width,rect.y);if(this.p1.x>LL.x&&this.p1.xUR.y&&this.p2.x>LL.x&&this.p2.xUR.y)return true;if(this.intersectsLine(new Line(UL,LL)))return true;if(this.intersectsLine(new Line(LL,LR)))return true;if(this.intersectsLine(new Line(UL,UR)))return true;if(this.intersectsLine(new Line(UR,LR)))return true;return false;},intersectsLine:function(line2){var v1=this.p1,v2=this.p2;var v3=line2.p1,v4=line2.p2;var denom=((v4.y-v3.y)*(v2.x-v1.x))-((v4.x-v3.x)*(v2.y-v1.y));var numerator=((v4.x-v3.x)*(v1.y-v3.y))-((v4.y-v3.y)*(v1.x-v3.x));var numerator2=((v2.x-v1.x)*(v1.y-v3.y))-((v2.y-v1.y)*(v1.x-v3.x));if(denom==0.0){return false;} - var ua=numerator/denom;var ub=numerator2/denom;return(ua>=0.0&&ua<=1.0&&ub>=0.0&&ub<=1.0);}};var that=this;var isIE=!!window.ActiveXObject;var w=document.documentElement.clientWidth,h=document.documentElement.clientHeight;var playerWidth=20,playerHeight=30;var playerVerts=[[-1*playerHeight/2,-1*playerWidth/2],[-1*playerHeight/2,playerWidth/2],[playerHeight/2,0]];var ignoredTypes=['HTML','HEAD','BODY','SCRIPT','TITLE','META','STYLE','LINK','SHAPE','LINE','GROUP','IMAGE','STROKE','FILL','SKEW','PATH','TEXTPATH'];var hiddenTypes=['BR','HR'];var FPS=50;var acc=300;var maxSpeed=600;var rotSpeed=360;var bulletSpeed=700;var particleSpeed=400;var timeBetweenFire=150;var timeBetweenBlink=250;var timeBetweenEnemyUpdate=isIE?10000:2000;var bulletRadius=2;var maxParticles=isIE?20:40;var maxBullets=isIE?10:20;this.flame={r:[],y:[]};this.toggleBlinkStyle=function(){if(this.updated.blink.isActive){removeClass(document.body,'ASTEROIDSBLINK');}else{addClass(document.body,'ASTEROIDSBLINK');} - this.updated.blink.isActive=!this.updated.blink.isActive;};addStylesheet(".ASTEROIDSBLINK .ASTEROIDSYEAHENEMY","outline: 2px dotted red;");this.pos=new Vector(100,100);this.lastPos=false;this.vel=new Vector(0,0);this.dir=new Vector(0,1);this.keysPressed={};this.firedAt=false;this.updated={enemies:false,flame:new Date().getTime(),blink:{time:0,isActive:false}};this.scrollPos=new Vector(0,0);this.bullets=[];this.enemies=[];this.dying=[];this.totalEnemies=0;this.particles=[];function updateEnemyIndex(){for(var i=0,enemy;enemy=that.enemies[i];i++) - removeClass(enemy,"ASTEROIDSYEAHENEMY");var all=document.body.getElementsByTagName('*');that.enemies=[];for(var i=0,el;el=all[i];i++){if(indexOf(ignoredTypes,el.tagName.toUpperCase())==-1&&el.prefix!='g_vml_'&&hasOnlyTextualChildren(el)&&el.className!="ASTEROIDSYEAH"&&el.offsetHeight>0){el.aSize=size(el);that.enemies.push(el);addClass(el,"ASTEROIDSYEAHENEMY");if(!el.aAdded){el.aAdded=true;that.totalEnemies++;}}}};updateEnemyIndex();var createFlames;(function(){var rWidth=playerWidth,rIncrease=playerWidth*0.1,yWidth=playerWidth*0.6,yIncrease=yWidth*0.2,halfR=rWidth/2,halfY=yWidth/2,halfPlayerHeight=playerHeight/2;createFlames=function(){that.flame.r=[[-1*halfPlayerHeight,-1*halfR]];that.flame.y=[[-1*halfPlayerHeight,-1*halfY]];for(var x=0;xw) - vec.x=0;else if(vec.x<0) - vec.x=w;if(vec.y>h) - vec.y=0;else if(vec.y<0) - vec.y=h;};function size(element){var el=element,left=0,top=0;do{left+=el.offsetLeft||0;top+=el.offsetTop||0;el=el.offsetParent;}while(el);return{x:left,y:top,width:element.offsetWidth||10,height:element.offsetHeight||10};};function addEvent(obj,type,fn){if(obj.addEventListener) - obj.addEventListener(type,fn,false);else if(obj.attachEvent){obj["e"+type+fn]=fn;obj[type+fn]=function(){obj["e"+type+fn](window.event);} - obj.attachEvent("on"+type,obj[type+fn]);}} - function removeEvent(obj,type,fn){if(obj.removeEventListener) - obj.removeEventListener(type,fn,false);else if(obj.detachEvent){obj.detachEvent("on"+type,obj[type+fn]);obj[type+fn]=null;obj["e"+type+fn]=null;}} - function arrayRemove(array,from,to){var rest=array.slice((to||from)+1||array.length);array.length=from<0?array.length+from:from;return array.push.apply(array,rest);};function applyVisibility(vis){for(var i=0,p;p=window.ASTEROIDSPLAYERS[i];i++){p.gameContainer.style.visibility=vis;}} - function getElementFromPoint(x,y){applyVisibility('hidden');var element=document.elementFromPoint(x,y);if(!element){applyVisibility('visible');return false;} - if(element.nodeType==3) - element=element.parentNode;applyVisibility('visible');return element;};function addParticles(startPos){var time=new Date().getTime();var amount=maxParticles;for(var i=0;i0&&element.offsetHeight>0)return false;if(indexOf(hiddenTypes,element.tagName)!=-1)return true;if(element.offsetWidth==0&&element.offsetHeight==0)return false;for(var i=0;i50){createFlames();this.updated.flame=nowTime;} - this.scrollPos.x=window.pageXOffset||document.documentElement.scrollLeft;this.scrollPos.y=window.pageYOffset||document.documentElement.scrollTop;if((this.keysPressed[code('up')])||(this.keysPressed[code('W')])){this.vel.add(this.dir.mulNew(acc*tDelta));drawFlame=true;}else{this.vel.mul(0.96);} - if((this.keysPressed[code('left')])||(this.keysPressed[code('A')])){forceChange=true;this.dir.rotate(radians(rotSpeed*tDelta*-1));} - if((this.keysPressed[code('right')])||(this.keysPressed[code('D')])){forceChange=true;this.dir.rotate(radians(rotSpeed*tDelta));} - if(this.keysPressed[code(' ')]&&nowTime-this.firedAt>timeBetweenFire){this.bullets.unshift({'dir':this.dir.cp(),'pos':this.pos.cp(),'startVel':this.vel.cp(),'cameAlive':nowTime});this.firedAt=nowTime;if(this.bullets.length>maxBullets){this.bullets.pop();}} - if(this.keysPressed[code('B')]){if(!this.updated.enemies){updateEnemyIndex();this.updated.enemies=true;} - forceChange=true;this.updated.blink.time+=tDelta*1000;if(this.updated.blink.time>timeBetweenBlink){this.toggleBlinkStyle();this.updated.blink.time=0;}}else{this.updated.enemies=false;} - if(this.keysPressed[code('esc')]){destroy.apply(this);return;} - if(this.vel.len()>maxSpeed){this.vel.setLength(maxSpeed);} - this.pos.add(this.vel.mulNew(tDelta));if(this.pos.x>w){window.scrollTo(this.scrollPos.x+50,this.scrollPos.y);this.pos.x=0;}else if(this.pos.x<0){window.scrollTo(this.scrollPos.x-50,this.scrollPos.y);this.pos.x=w;} - if(this.pos.y>h){window.scrollTo(this.scrollPos.x,this.scrollPos.y+h*0.75);this.pos.y=0;}else if(this.pos.y<0){window.scrollTo(this.scrollPos.x,this.scrollPos.y-h*0.75);this.pos.y=h;} - for(var i=this.bullets.length-1;i>=0;i--){if(nowTime-this.bullets[i].cameAlive>2000){this.bullets.splice(i,1);forceChange=true;continue;} - var bulletVel=this.bullets[i].dir.setLengthNew(bulletSpeed*tDelta).add(this.bullets[i].startVel.mulNew(tDelta));this.bullets[i].pos.add(bulletVel);boundsCheck(this.bullets[i].pos);var murdered=getElementFromPoint(this.bullets[i].pos.x,this.bullets[i].pos.y);if(murdered&&murdered.tagName&&indexOf(ignoredTypes,murdered.tagName.toUpperCase())==-1&&hasOnlyTextualChildren(murdered)&&murdered.className!="ASTEROIDSYEAH"){didKill=true;addParticles(this.bullets[i].pos);this.dying.push(murdered);this.bullets.splice(i,1);continue;}} - if(this.dying.length){for(var i=this.dying.length-1;i>=0;i--){try{if(this.dying[i].parentNode) - window.ASTEROIDS.enemiesKilled++;this.dying[i].parentNode.removeChild(this.dying[i]);}catch(e){}} - setScore();this.dying=[];} - for(var i=this.particles.length-1;i>=0;i--){this.particles[i].pos.add(this.particles[i].dir.mulNew(particleSpeed*tDelta*Math.random()));if(nowTime-this.particles[i].cameAlive>1000){this.particles.splice(i,1);forceChange=true;continue;}} - if(forceChange||this.bullets.length!=0||this.particles.length!=0||!this.pos.is(this.lastPos)||this.vel.len()>0){this.ctx.clear();this.ctx.drawPlayer();if(drawFlame) - this.ctx.drawFlames(that.flame);if(this.bullets.length){this.ctx.drawBullets(this.bullets);} - if(this.particles.length){this.ctx.drawParticles(this.particles);}} - this.lastPos=this.pos;setTimeout(updateFunc,1000/FPS);} - var updateFunc=function(){that.update.call(that);};setTimeout(updateFunc,1000/FPS);function destroy(){removeEvent(document,'keydown',eventKeydown);removeEvent(document,'keypress',eventKeypress);removeEvent(document,'keyup',eventKeyup);removeEvent(window,'resize',eventResize);isRunning=false;removeStylesheet("ASTEROIDSYEAHSTYLES");removeClass(document.body,'ASTEROIDSYEAH');this.gameContainer.parentNode.removeChild(this.gameContainer);};} - if(!window.ASTEROIDSPLAYERS) - window.ASTEROIDSPLAYERS=[];if(window.ActiveXObject){try{var xamlScript=document.createElement('script');xamlScript.setAttribute('type','text/xaml');xamlScript.textContent='';document.getElementsByTagName('head')[0].appendChild(xamlScript);}catch(e){} - var script=document.createElement("script");script.setAttribute('type','text/javascript');script.onreadystatechange=function(){if(script.readyState=='loaded'||script.readyState=='complete'){if(typeof G_vmlCanvasManager!="undefined") - window.ASTEROIDSPLAYERS[window.ASTEROIDSPLAYERS.length]=new Asteroids();}};script.src="http://erkie.github.com/excanvas.js";document.getElementsByTagName('head')[0].appendChild(script);} - else window.ASTEROIDSPLAYERS[window.ASTEROIDSPLAYERS.length]=new Asteroids();})(); \ No newline at end of file diff --git a/js/bootstrap.css b/js/bootstrap.css deleted file mode 100644 index 303280b..0000000 --- a/js/bootstrap.css +++ /dev/null @@ -1,10746 +0,0 @@ -@charset "UTF-8"; -/*! - * Bootstrap v5.0.2 (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-primary: #0d6efd; - --bs-secondary: #6c757d; - --bs-success: #198754; - --bs-info: #0dcaf0; - --bs-warning: #ffc107; - --bs-danger: #dc3545; - --bs-light: #f8f9fa; - --bs-dark: #212529; - --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)); -} - -*, -*::before, -*::after { - box-sizing: border-box; -} - -@media (prefers-reduced-motion: no-preference) { - :root { - scroll-behavior: smooth; - } -} - -abbr[title], -abbr[data-bs-original-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; -} - -ol, -ul, -dl { - margin-top: 0; - margin-bottom: 1rem; -} - -ol ol, -ul ul, -ol ul, -ul ol { - margin-bottom: 0; -} - -dt { - font-weight: 700; -} - -dd { - margin-bottom: 0.5rem; - margin-left: 0; -} - -blockquote { - margin: 0 0 1rem; -} - -b, -strong { - font-weight: bolder; -} - -small, .small { - font-size: 0.875em; -} - -mark, .mark { - padding: 0.2em; - background-color: #fcf8e3; -} - -sub, -sup { - position: relative; - font-size: 0.75em; - line-height: 0; - vertical-align: baseline; -} - -sub { - bottom: -0.25em; -} - -sup { - top: -0.5em; -} - - -a:not([href]):not([class]), a:not([href]):not([class]):hover { - color: inherit; - text-decoration: none; -} - -pre, -code, -kbd, -samp { - font-family: var(--bs-font-monospace); - font-size: 1em; - direction: ltr /* rtl:ignore */; - unicode-bidi: bidi-override; -} - -pre { - display: block; - margin-top: 0; - margin-bottom: 1rem; - overflow: auto; - font-size: 0.875em; -} -pre code { - font-size: inherit; - color: inherit; - word-break: normal; -} - -code { - font-size: 0.875em; - color: #d63384; - word-wrap: break-word; -} -a > code { - color: inherit; -} - -kbd { - padding: 0.2rem 0.4rem; - font-size: 0.875em; - color: #fff; - background-color: #212529; - border-radius: 0.2rem; -} -kbd kbd { - padding: 0; - font-size: 1em; - font-weight: 700; -} - -figure { - margin: 0 0 1rem; -} - - -table { - caption-side: bottom; - border-collapse: collapse; -} - -caption { - padding-top: 0.5rem; - padding-bottom: 0.5rem; - color: #6c757d; - text-align: left; -} - -th { - text-align: inherit; - text-align: -webkit-match-parent; -} - -thead, -tbody, -tfoot, -tr, -td, -th { - border-color: inherit; - border-style: solid; - border-width: 0; -} - -label { - display: inline-block; -} - -button { - border-radius: 0; -} - -button:focus:not(:focus-visible) { - outline: 0; -} - -input, -button, -select, -optgroup, -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; -} - -button, -[type=button], -[type=reset], -[type=submit] { - -webkit-appearance: button; -} -button:not(:disabled), -[type=button]:not(:disabled), -[type=reset]:not(:disabled), -[type=submit]: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: 0.5rem; - font-size: calc(1.275rem + 0.3vw); - line-height: inherit; -} -@media (min-width: 1200px) { - legend { - font-size: 1.5rem; - } -} -legend + * { - clear: left; -} - -::-webkit-datetime-edit-fields-wrapper, -::-webkit-datetime-edit-text, -::-webkit-datetime-edit-minute, -::-webkit-datetime-edit-hour-field, -::-webkit-datetime-edit-day-field, -::-webkit-datetime-edit-month-field, -::-webkit-datetime-edit-year-field { - padding: 0; -} - -::-webkit-inner-spin-button { - height: auto; -} - -[type=search] { - outline-offset: -2px; - -webkit-appearance: textfield; -} - -/* rtl:raw: -[type="tel"], -[type="url"], -[type="email"], -[type="number"] { - direction: ltr; -} -*/ -::-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: 0.5rem; -} - -.initialism { - font-size: 0.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: 0.875em; - color: #6c757d; -} -.blockquote-footer::before { - content: "— "; -} - -.img-fluid { - max-width: 100%; - height: auto; -} - -.img-thumbnail { - padding: 0.25rem; - background-color: #fff; - border: 1px solid #dee2e6; - border-radius: 0.25rem; - max-width: 100%; - height: auto; -} - -.figure { - display: inline-block; -} - -.figure-img { - margin-bottom: 0.5rem; - line-height: 1; -} - -.figure-caption { - font-size: 0.875em; - color: #6c757d; -} - -.container, -.container-fluid, -.container-xxl, -.container-xl, -.container-lg, -.container-md, -.container-sm { - width: 100%; - padding-right: var(--bs-gutter-x, 0.75rem); - padding-left: var(--bs-gutter-x, 0.75rem); - margin-right: auto; - margin-left: auto; -} - -@media (min-width: 576px) { - .container-sm, .container { - max-width: 540px; - } -} -@media (min-width: 768px) { - .container-md, .container-sm, .container { - max-width: 720px; - } -} -@media (min-width: 992px) { - .container-lg, .container-md, .container-sm, .container { - max-width: 960px; - } -} -@media (min-width: 1200px) { - .container-xl, .container-lg, .container-md, .container-sm, .container { - max-width: 1140px; - } -} -@media (min-width: 1400px) { - .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container { - 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%; -} - -@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%; - } -} -@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%; - } -} -@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%; - } -} -@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%; - } -} -@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-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-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-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-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-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-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: 0.5rem 0.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: 0.25rem 0.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: 0.5rem; -} - -.col-form-label { - padding-top: calc(0.375rem + 1px); - padding-bottom: calc(0.375rem + 1px); - margin-bottom: 0; - font-size: inherit; - line-height: 1.5; -} - -.col-form-label-lg { - padding-top: calc(0.5rem + 1px); - padding-bottom: calc(0.5rem + 1px); - font-size: 1.25rem; -} - -.col-form-label-sm { - padding-top: calc(0.25rem + 1px); - padding-bottom: calc(0.25rem + 1px); - font-size: 0.875rem; -} - -.form-text { - margin-top: 0.25rem; - font-size: 0.875em; - color: #6c757d; -} - -.form-control { - display: block; - width: 100%; - padding: 0.375rem 0.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: 0.25rem; - transition: border-color 0.15s ease-in-out, box-shadow 0.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 0.25rem rgba(13, 110, 253, 0.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: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - -webkit-margin-end: 0.75rem; - margin-inline-end: 0.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 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@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: 0.375rem 0.75rem; - margin: -0.375rem -0.75rem; - -webkit-margin-end: 0.75rem; - margin-inline-end: 0.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 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@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: 0.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-sm, .form-control-plaintext.form-control-lg { - padding-right: 0; - padding-left: 0; -} - -.form-control-sm { - min-height: calc(1.5em + (0.5rem + 2px)); - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; -} -.form-control-sm::file-selector-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - -webkit-margin-end: 0.5rem; - margin-inline-end: 0.5rem; -} -.form-control-sm::-webkit-file-upload-button { - padding: 0.25rem 0.5rem; - margin: -0.25rem -0.5rem; - -webkit-margin-end: 0.5rem; - margin-inline-end: 0.5rem; -} - -.form-control-lg { - min-height: calc(1.5em + (1rem + 2px)); - padding: 0.5rem 1rem; - font-size: 1.25rem; - border-radius: 0.3rem; -} -.form-control-lg::file-selector-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; - -webkit-margin-end: 1rem; - margin-inline-end: 1rem; -} -.form-control-lg::-webkit-file-upload-button { - padding: 0.5rem 1rem; - margin: -0.5rem -1rem; - -webkit-margin-end: 1rem; - margin-inline-end: 1rem; -} - -textarea.form-control { - min-height: calc(1.5em + (0.75rem + 2px)); -} -textarea.form-control-sm { - min-height: calc(1.5em + (0.5rem + 2px)); -} -textarea.form-control-lg { - min-height: calc(1.5em + (1rem + 2px)); -} - -.form-control-color { - max-width: 3rem; - height: auto; - padding: 0.375rem; -} -.form-control-color:not(:disabled):not([readonly]) { - cursor: pointer; -} -.form-control-color::-moz-color-swatch { - height: 1.5em; - border-radius: 0.25rem; -} -.form-control-color::-webkit-color-swatch { - height: 1.5em; - border-radius: 0.25rem; -} - -.form-select { - display: block; - width: 100%; - padding: 0.375rem 2.25rem 0.375rem 0.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 0.75rem center; - background-size: 16px 12px; - border: 1px solid #ced4da; - border-radius: 0.25rem; - transition: border-color 0.15s ease-in-out, box-shadow 0.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 0.25rem rgba(13, 110, 253, 0.25); -} -.form-select[multiple], .form-select[size]:not([size="1"]) { - padding-right: 0.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: 0.25rem; - padding-bottom: 0.25rem; - padding-left: 0.5rem; - font-size: 0.875rem; -} - -.form-select-lg { - padding-top: 0.5rem; - padding-bottom: 0.5rem; - padding-left: 1rem; - font-size: 1.25rem; -} - -.form-check { - display: block; - min-height: 1.5rem; - padding-left: 1.5em; - margin-bottom: 0.125rem; -} -.form-check .form-check-input { - float: left; - margin-left: -1.5em; -} - -.form-check-input { - width: 1em; - height: 1em; - margin-top: 0.25em; - vertical-align: top; - background-color: #fff; - background-repeat: no-repeat; - background-position: center; - background-size: contain; - border: 1px solid rgba(0, 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: 0.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 0.25rem rgba(13, 110, 253, 0.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: 0.5; -} -.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { - opacity: 0.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 0.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: 0.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 0.25rem rgba(13, 110, 253, 0.25); -} -.form-range:focus::-moz-range-thumb { - box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25); -} -.form-range::-moz-focus-outer { - border: 0; -} -.form-range::-webkit-slider-thumb { - width: 1rem; - height: 1rem; - margin-top: -0.25rem; - background-color: #0d6efd; - border: 0; - border-radius: 1rem; - -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.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: 0.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 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.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: 0.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 0.75rem; - pointer-events: none; - border: 1px solid transparent; - transform-origin: 0 0; - transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .form-floating > label { - transition: none; - } -} -.form-floating > .form-control { - padding: 1rem 0.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: 0.625rem; -} -.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-control:-webkit-autofill { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-select { - padding-top: 1.625rem; - padding-bottom: 0.625rem; -} -.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label { - opacity: 0.65; - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); -} -.form-floating > .form-control:focus ~ label, -.form-floating > .form-control:not(:placeholder-shown) ~ label, -.form-floating > .form-select ~ label { - opacity: 0.65; - transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); -} -.form-floating > .form-control:-webkit-autofill ~ label { - opacity: 0.65; - transform: scale(0.85) translateY(-0.5rem) translateX(0.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: 0.375rem 0.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: 0.25rem; -} - -.input-group-lg > .form-control, -.input-group-lg > .form-select, -.input-group-lg > .input-group-text, -.input-group-lg > .btn { - padding: 0.5rem 1rem; - font-size: 1.25rem; - border-radius: 0.3rem; -} - -.input-group-sm > .form-control, -.input-group-sm > .form-select, -.input-group-sm > .input-group-text, -.input-group-sm > .btn { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; -} - -.input-group-lg > .form-select, -.input-group-sm > .form-select { - padding-right: 3rem; -} - -.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), -.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), -.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) { - 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: 0.25rem; - font-size: 0.875em; - color: #198754; -} - -.valid-tooltip { - position: absolute; - top: 100%; - z-index: 5; - display: none; - max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; - color: #fff; - background-color: rgba(25, 135, 84, 0.9); - border-radius: 0.25rem; -} - -.was-validated :valid ~ .valid-feedback, -.was-validated :valid ~ .valid-tooltip, -.is-valid ~ .valid-feedback, -.is-valid ~ .valid-tooltip { - display: block; -} - -.was-validated .form-control:valid, .form-control.is-valid { - border-color: #198754; - padding-right: calc(1.5em + 0.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(0.375em + 0.1875rem) center; - background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); -} -.was-validated .form-control:valid:focus, .form-control.is-valid:focus { - border-color: #198754; - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); -} - -.was-validated textarea.form-control:valid, textarea.form-control.is-valid { - padding-right: calc(1.5em + 0.75rem); - background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); -} - -.was-validated .form-select:valid, .form-select.is-valid { - border-color: #198754; -} -.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-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 0.75rem center, center right 2.25rem; - background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); -} -.was-validated .form-select:valid:focus, .form-select.is-valid:focus { - border-color: #198754; - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); -} - -.was-validated .form-check-input:valid, .form-check-input.is-valid { - border-color: #198754; -} -.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked { - background-color: #198754; -} -.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus { - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25); -} -.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { - color: #198754; -} - -.form-check-inline .form-check-input ~ .valid-feedback { - margin-left: 0.5em; -} - -.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid, -.was-validated .input-group .form-select:valid, -.input-group .form-select.is-valid { - z-index: 1; -} -.was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus, -.was-validated .input-group .form-select:valid:focus, -.input-group .form-select.is-valid:focus { - z-index: 3; -} - -.invalid-feedback { - display: none; - width: 100%; - margin-top: 0.25rem; - font-size: 0.875em; - color: #dc3545; -} - -.invalid-tooltip { - position: absolute; - top: 100%; - z-index: 5; - display: none; - max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; - color: #fff; - background-color: rgba(220, 53, 69, 0.9); - border-radius: 0.25rem; -} - -.was-validated :invalid ~ .invalid-feedback, -.was-validated :invalid ~ .invalid-tooltip, -.is-invalid ~ .invalid-feedback, -.is-invalid ~ .invalid-tooltip { - display: block; -} - -.was-validated .form-control:invalid, .form-control.is-invalid { - border-color: #dc3545; - padding-right: calc(1.5em + 0.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(0.375em + 0.1875rem) center; - background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); -} -.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus { - border-color: #dc3545; - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); -} - -.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid { - padding-right: calc(1.5em + 0.75rem); - background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); -} - -.was-validated .form-select:invalid, .form-select.is-invalid { - border-color: #dc3545; -} -.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-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 0.75rem center, center right 2.25rem; - background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); -} -.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus { - border-color: #dc3545; - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); -} - -.was-validated .form-check-input:invalid, .form-check-input.is-invalid { - border-color: #dc3545; -} -.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked { - background-color: #dc3545; -} -.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus { - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25); -} -.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { - color: #dc3545; -} - -.form-check-inline .form-check-input ~ .invalid-feedback { - margin-left: 0.5em; -} - -.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid, -.was-validated .input-group .form-select:invalid, -.input-group .form-select.is-invalid { - z-index: 2; -} -.was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus, -.was-validated .input-group .form-select:invalid:focus, -.input-group .form-select.is-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: 0.375rem 0.75rem; - font-size: 1rem; - border-radius: 0.25rem; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@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 0.25rem rgba(13, 110, 253, 0.25); -} -.btn:disabled, .btn.disabled, fieldset:disabled .btn { - pointer-events: none; - opacity: 0.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 0.25rem rgba(49, 132, 253, 0.5); -} -.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle { - color: #fff; - background-color: #0a58ca; - border-color: #0a53be; -} -.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.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 0.25rem rgba(130, 138, 145, 0.5); -} -.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle { - color: #fff; - background-color: #565e64; - border-color: #51585e; -} -.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.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 0.25rem rgba(60, 153, 110, 0.5); -} -.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle { - color: #fff; - background-color: #146c43; - border-color: #13653f; -} -.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.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 0.25rem rgba(11, 172, 204, 0.5); -} -.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle { - color: #000; - background-color: #3dd5f3; - border-color: #25cff2; -} -.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.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 0.25rem rgba(217, 164, 6, 0.5); -} -.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle { - color: #000; - background-color: #ffcd39; - border-color: #ffc720; -} -.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.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 0.25rem rgba(225, 83, 97, 0.5); -} -.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle { - color: #fff; - background-color: #b02a37; - border-color: #a52834; -} -.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.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 0.25rem rgba(211, 212, 213, 0.5); -} -.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle { - color: #000; - background-color: #f9fafb; - border-color: #f9fafb; -} -.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.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 0.25rem rgba(66, 70, 73, 0.5); -} -.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle { - color: #fff; - background-color: #1a1e21; - border-color: #191c1f; -} -.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); -} -.btn-dark:disabled, .btn-dark.disabled { - color: #fff; - background-color: #212529; - border-color: #212529; -} - -.btn-outline-primary { - color: #0d6efd; - border-color: #0d6efd; -} -.btn-outline-primary:hover { - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd; -} -.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5); -} -.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show { - color: #fff; - background-color: #0d6efd; - border-color: #0d6efd; -} -.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.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 0.25rem rgba(108, 117, 125, 0.5); -} -.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show { - color: #fff; - background-color: #6c757d; - border-color: #6c757d; -} -.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.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 0.25rem rgba(25, 135, 84, 0.5); -} -.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show { - color: #fff; - background-color: #198754; - border-color: #198754; -} -.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.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 0.25rem rgba(13, 202, 240, 0.5); -} -.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show { - color: #000; - background-color: #0dcaf0; - border-color: #0dcaf0; -} -.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.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 0.25rem rgba(255, 193, 7, 0.5); -} -.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show { - color: #000; - background-color: #ffc107; - border-color: #ffc107; -} -.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.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 0.25rem rgba(220, 53, 69, 0.5); -} -.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show { - color: #fff; - background-color: #dc3545; - border-color: #dc3545; -} -.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.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 0.25rem rgba(248, 249, 250, 0.5); -} -.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show { - color: #000; - background-color: #f8f9fa; - border-color: #f8f9fa; -} -.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.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 0.25rem rgba(33, 37, 41, 0.5); -} -.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show { - color: #fff; - background-color: #212529; - border-color: #212529; -} -.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus { - box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.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-lg, .btn-group-lg > .btn { - padding: 0.5rem 1rem; - font-size: 1.25rem; - border-radius: 0.3rem; -} - -.btn-sm, .btn-group-sm > .btn { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - border-radius: 0.2rem; -} - -.fade { - transition: opacity 0.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 0.35s ease; -} -@media (prefers-reduced-motion: reduce) { - .collapsing { - transition: none; - } -} - -.dropup, -.dropend, -.dropdown, -.dropstart { - position: relative; -} - -.dropdown-toggle { - white-space: nowrap; -} -.dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0.3em solid; - border-right: 0.3em solid transparent; - border-bottom: 0; - border-left: 0.3em solid transparent; -} -.dropdown-toggle:empty::after { - margin-left: 0; -} - -.dropdown-menu { - position: absolute; - z-index: 1000; - display: none; - min-width: 10rem; - padding: 0.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, 0.15); - border-radius: 0.25rem; -} -.dropdown-menu[data-bs-popper] { - top: 100%; - left: 0; - margin-top: 0.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: 0.125rem; -} -.dropup .dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0; - border-right: 0.3em solid transparent; - border-bottom: 0.3em solid; - border-left: 0.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: 0.125rem; -} -.dropend .dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0.3em solid transparent; - border-right: 0; - border-bottom: 0.3em solid transparent; - border-left: 0.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: 0.125rem; -} -.dropstart .dropdown-toggle::after { - display: inline-block; - margin-left: 0.255em; - vertical-align: 0.255em; - content: ""; -} -.dropstart .dropdown-toggle::after { - display: none; -} -.dropstart .dropdown-toggle::before { - display: inline-block; - margin-right: 0.255em; - vertical-align: 0.255em; - content: ""; - border-top: 0.3em solid transparent; - border-right: 0.3em solid; - border-bottom: 0.3em solid transparent; -} -.dropstart .dropdown-toggle:empty::after { - margin-left: 0; -} -.dropstart .dropdown-toggle::before { - vertical-align: 0; -} - -.dropdown-divider { - height: 0; - margin: 0.5rem 0; - overflow: hidden; - border-top: 1px solid rgba(0, 0, 0, 0.15); -} - -.dropdown-item { - display: block; - width: 100%; - padding: 0.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:hover, .dropdown-item:focus { - 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: 0.5rem 1rem; - margin-bottom: 0; - font-size: 0.875rem; - color: #6c757d; - white-space: nowrap; -} - -.dropdown-item-text { - display: block; - padding: 0.25rem 1rem; - color: #212529; -} - -.dropdown-menu-dark { - color: #dee2e6; - background-color: #343a40; - border-color: rgba(0, 0, 0, 0.15); -} -.dropdown-menu-dark .dropdown-item { - color: #dee2e6; -} -.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus { - color: #fff; - background-color: rgba(255, 255, 255, 0.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, 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 > .btn, -.btn-group-vertical > .btn { - position: relative; - flex: 1 1 auto; -} -.btn-group > .btn-check:checked + .btn, -.btn-group > .btn-check:focus + .btn, -.btn-group > .btn:hover, -.btn-group > .btn:focus, -.btn-group > .btn:active, -.btn-group > .btn.active, -.btn-group-vertical > .btn-check:checked + .btn, -.btn-group-vertical > .btn-check:focus + .btn, -.btn-group-vertical > .btn:hover, -.btn-group-vertical > .btn:focus, -.btn-group-vertical > .btn:active, -.btn-group-vertical > .btn.active { - z-index: 1; -} - -.btn-toolbar { - display: flex; - flex-wrap: wrap; - justify-content: flex-start; -} -.btn-toolbar .input-group { - width: auto; -} - -.btn-group > .btn:not(:first-child), -.btn-group > .btn-group:not(:first-child) { - margin-left: -1px; -} -.btn-group > .btn:not(:last-child):not(.dropdown-toggle), -.btn-group > .btn-group:not(:last-child) > .btn { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.btn-group > .btn:nth-child(n+3), -.btn-group > :not(.btn-check) + .btn, -.btn-group > .btn-group:not(:first-child) > .btn { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} - -.dropdown-toggle-split { - padding-right: 0.5625rem; - padding-left: 0.5625rem; -} -.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after { - margin-left: 0; -} -.dropstart .dropdown-toggle-split::before { - margin-right: 0; -} - -.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split { - padding-right: 0.375rem; - padding-left: 0.375rem; -} - -.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { - padding-right: 0.75rem; - padding-left: 0.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:not(:first-child), -.btn-group-vertical > .btn-group:not(:first-child) { - margin-top: -1px; -} -.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), -.btn-group-vertical > .btn-group:not(:last-child) > .btn { - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.btn-group-vertical > .btn ~ .btn, -.btn-group-vertical > .btn-group:not(:first-child) > .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: 0.5rem 1rem; - color: #0d6efd; - text-decoration: none; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .nav-link { - transition: none; - } -} -.nav-link:hover, .nav-link:focus { - 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: none; - border: 1px solid transparent; - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; -} -.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { - border-color: #e9ecef #e9ecef #dee2e6; - isolation: isolate; -} -.nav-tabs .nav-link.disabled { - color: #6c757d; - background-color: transparent; - border-color: transparent; -} -.nav-tabs .nav-link.active, -.nav-tabs .nav-item.show .nav-link { - 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: none; - border: 0; - border-radius: 0.25rem; -} -.nav-pills .nav-link.active, -.nav-pills .show > .nav-link { - color: #fff; - background-color: #0d6efd; -} - -.nav-fill > .nav-link, -.nav-fill .nav-item { - flex: 1 1 auto; - text-align: center; -} - -.nav-justified > .nav-link, -.nav-justified .nav-item { - 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: 0.5rem; - padding-bottom: 0.5rem; -} -.navbar > .container, -.navbar > .container-fluid, -.navbar > .container-sm, -.navbar > .container-md, -.navbar > .container-lg, -.navbar > .container-xl, -.navbar > .container-xxl { - display: flex; - flex-wrap: inherit; - align-items: center; - justify-content: space-between; -} -.navbar-brand { - padding-top: 0.3125rem; - padding-bottom: 0.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: 0.5rem; - padding-bottom: 0.5rem; -} - -.navbar-collapse { - flex-basis: 100%; - flex-grow: 1; - align-items: center; -} - -.navbar-toggler { - padding: 0.25rem 0.75rem; - font-size: 1.25rem; - line-height: 1; - background-color: transparent; - border: 1px solid transparent; - border-radius: 0.25rem; - transition: box-shadow 0.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 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: 0.5rem; - padding-left: 0.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; - } -} -@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: 0.5rem; - padding-left: 0.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; - } -} -@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: 0.5rem; - padding-left: 0.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; - } -} -@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: 0.5rem; - padding-left: 0.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; - } -} -@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: 0.5rem; - padding-left: 0.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 { - 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: 0.5rem; - padding-left: 0.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-light .navbar-brand { - color: rgba(0, 0, 0, 0.9); -} -.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { - color: rgba(0, 0, 0, 0.9); -} -.navbar-light .navbar-nav .nav-link { - color: rgba(0, 0, 0, 0.55); -} -.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { - color: rgba(0, 0, 0, 0.7); -} -.navbar-light .navbar-nav .nav-link.disabled { - color: rgba(0, 0, 0, 0.3); -} -.navbar-light .navbar-nav .show > .nav-link, -.navbar-light .navbar-nav .nav-link.active { - color: rgba(0, 0, 0, 0.9); -} -.navbar-light .navbar-toggler { - color: rgba(0, 0, 0, 0.55); - border-color: rgba(0, 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, 0.55); -} -.navbar-light .navbar-text a, -.navbar-light .navbar-text a:hover, -.navbar-light .navbar-text a:focus { - color: rgba(0, 0, 0, 0.9); -} - -.navbar-dark .navbar-brand { - color: #fff; -} -.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { - color: #fff; -} -.navbar-dark .navbar-nav .nav-link { - color: rgba(255, 255, 255, 0.55); -} -.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { - color: rgba(255, 255, 255, 0.75); -} -.navbar-dark .navbar-nav .nav-link.disabled { - color: rgba(255, 255, 255, 0.25); -} -.navbar-dark .navbar-nav .show > .nav-link, -.navbar-dark .navbar-nav .nav-link.active { - color: #fff; -} -.navbar-dark .navbar-toggler { - color: rgba(255, 255, 255, 0.55); - border-color: rgba(255, 255, 255, 0.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, 0.55); -} -.navbar-dark .navbar-text a, -.navbar-dark .navbar-text a:hover, -.navbar-dark .navbar-text a:focus { - 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, 0.125); - border-radius: 0.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(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} -.card > .list-group:last-child { - border-bottom-width: 0; - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.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: 0.5rem; -} - -.card-subtitle { - margin-top: -0.25rem; - margin-bottom: 0; -} - -.card-text:last-child { - margin-bottom: 0; -} - -.card-link:hover { - text-decoration: none; -} -.card-link + .card-link { - margin-left: 1rem; -} - -.card-header { - padding: 0.5rem 1rem; - margin-bottom: 0; - background-color: rgba(0, 0, 0, 0.03); - border-bottom: 1px solid rgba(0, 0, 0, 0.125); -} -.card-header:first-child { - border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; -} - -.card-footer { - padding: 0.5rem 1rem; - background-color: rgba(0, 0, 0, 0.03); - border-top: 1px solid rgba(0, 0, 0, 0.125); -} -.card-footer:last-child { - border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); -} - -.card-header-tabs { - margin-right: -0.5rem; - margin-bottom: -0.5rem; - margin-left: -0.5rem; - border-bottom: 0; -} - -.card-header-pills { - margin-right: -0.5rem; - margin-left: -0.5rem; -} - -.card-img-overlay { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - padding: 1rem; - border-radius: calc(0.25rem - 1px); -} - -.card-img, -.card-img-top, -.card-img-bottom { - width: 100%; -} - -.card-img, -.card-img-top { - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} - -.card-img, -.card-img-bottom { - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.25rem - 1px); -} - -.card-group > .card { - margin-bottom: 0.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-img-top, -.card-group > .card:not(:last-child) .card-header { - border-top-right-radius: 0; - } - .card-group > .card:not(:last-child) .card-img-bottom, -.card-group > .card:not(:last-child) .card-footer { - 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-img-top, -.card-group > .card:not(:first-child) .card-header { - border-top-left-radius: 0; - } - .card-group > .card:not(:first-child) .card-img-bottom, -.card-group > .card:not(:first-child) .card-footer { - 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 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; -} -@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, 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 0.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 0.25rem rgba(13, 110, 253, 0.25); -} - -.accordion-header { - margin-bottom: 0; -} - -.accordion-item { - background-color: #fff; - border: 1px solid rgba(0, 0, 0, 0.125); -} -.accordion-item:first-of-type { - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; -} -.accordion-item:first-of-type .accordion-button { - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} -.accordion-item:not(:first-of-type) { - border-top: 0; -} -.accordion-item:last-of-type { - border-bottom-right-radius: 0.25rem; - border-bottom-left-radius: 0.25rem; -} -.accordion-item:last-of-type .accordion-button.collapsed { - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.25rem - 1px); -} -.accordion-item:last-of-type .accordion-collapse { - border-bottom-right-radius: 0.25rem; - border-bottom-left-radius: 0.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: 0.5rem; -} -.breadcrumb-item + .breadcrumb-item::before { - float: left; - padding-right: 0.5rem; - color: #6c757d; - content: var(--bs-breadcrumb-divider, "/") /* rtl: 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 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; -} -@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 0.25rem rgba(13, 110, 253, 0.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: 0.375rem 0.75rem; -} - -.page-item:first-child .page-link { - border-top-left-radius: 0.25rem; - border-bottom-left-radius: 0.25rem; -} -.page-item:last-child .page-link { - border-top-right-radius: 0.25rem; - border-bottom-right-radius: 0.25rem; -} - -.pagination-lg .page-link { - padding: 0.75rem 1.5rem; - font-size: 1.25rem; -} -.pagination-lg .page-item:first-child .page-link { - border-top-left-radius: 0.3rem; - border-bottom-left-radius: 0.3rem; -} -.pagination-lg .page-item:last-child .page-link { - border-top-right-radius: 0.3rem; - border-bottom-right-radius: 0.3rem; -} - -.pagination-sm .page-link { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; -} -.pagination-sm .page-item:first-child .page-link { - border-top-left-radius: 0.2rem; - border-bottom-left-radius: 0.2rem; -} -.pagination-sm .page-item:last-child .page-link { - border-top-right-radius: 0.2rem; - border-bottom-right-radius: 0.2rem; -} - -.badge { - display: inline-block; - padding: 0.35em 0.65em; - font-size: 0.75em; - font-weight: 700; - line-height: 1; - color: #fff; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: 0.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: 0.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: 0.75rem; - background-color: #e9ecef; - border-radius: 0.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 0.6s ease; -} -@media (prefers-reduced-motion: reduce) { - .progress-bar { - transition: none; - } -} - -.progress-bar-striped { - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.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: 0.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:hover, .list-group-item-action:focus { - 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: 0.5rem 1rem; - color: #212529; - text-decoration: none; - background-color: #fff; - border: 1px solid rgba(0, 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: 0.25rem; - border-top-right-radius: 0; -} -.list-group-horizontal > .list-group-item:last-child { - border-top-right-radius: 0.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: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-sm > .list-group-item:last-child { - border-top-right-radius: 0.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: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-md > .list-group-item:last-child { - border-top-right-radius: 0.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: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-lg > .list-group-item:last-child { - border-top-right-radius: 0.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: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-xl > .list-group-item:last-child { - border-top-right-radius: 0.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: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-xxl > .list-group-item:last-child { - border-top-right-radius: 0.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:hover, .list-group-item-primary.list-group-item-action:focus { - 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:hover, .list-group-item-secondary.list-group-item-action:focus { - 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:hover, .list-group-item-success.list-group-item-action:focus { - 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:hover, .list-group-item-info.list-group-item-action:focus { - 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:hover, .list-group-item-warning.list-group-item-action:focus { - 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:hover, .list-group-item-danger.list-group-item-action:focus { - 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:hover, .list-group-item-light.list-group-item-action:focus { - 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:hover, .list-group-item-dark.list-group-item-action:focus { - 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: 0.25em 0.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: 0.25rem; - opacity: 0.5; -} -.btn-close:hover { - color: #000; - text-decoration: none; - opacity: 0.75; -} -.btn-close:focus { - outline: 0; - box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); - opacity: 1; -} -.btn-close:disabled, .btn-close.disabled { - pointer-events: none; - -webkit-user-select: none; - -moz-user-select: none; - user-select: none; - opacity: 0.25; -} - -.btn-close-white { - filter: invert(1) grayscale(100%) brightness(200%); -} - -.toast { - width: 350px; - max-width: 100%; - font-size: 0.875rem; - pointer-events: auto; - background-color: rgba(255, 255, 255, 0.85); - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.1); - box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); - border-radius: 0.25rem; -} -.toast:not(.showing):not(.show) { - opacity: 0; -} -.toast.hide { - 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: 0.75rem; -} - -.toast-header { - display: flex; - align-items: center; - padding: 0.5rem 0.75rem; - color: #6c757d; - background-color: rgba(255, 255, 255, 0.85); - background-clip: padding-box; - border-bottom: 1px solid rgba(0, 0, 0, 0.05); - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); -} -.toast-header .btn-close { - margin-right: -0.375rem; - margin-left: 0.75rem; -} - -.toast-body { - padding: 0.75rem; - word-wrap: break-word; -} - -.modal { - position: fixed; - top: 0; - left: 0; - z-index: 1060; - display: none; - width: 100%; - height: 100%; - overflow-x: hidden; - overflow-y: auto; - outline: 0; -} - -.modal-dialog { - position: relative; - width: auto; - margin: 0.5rem; - pointer-events: none; -} -.modal.fade .modal-dialog { - transition: transform 0.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, 0.2); - border-radius: 0.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: 0.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(0.3rem - 1px); - border-top-right-radius: calc(0.3rem - 1px); -} -.modal-header .btn-close { - padding: 0.5rem 0.5rem; - margin: -0.5rem -0.5rem -0.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: 0.75rem; - border-top: 1px solid #dee2e6; - border-bottom-right-radius: calc(0.3rem - 1px); - border-bottom-left-radius: calc(0.3rem - 1px); -} -.modal-footer > * { - margin: 0.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: 0.875rem; - word-wrap: break-word; - opacity: 0; -} -.tooltip.show { - opacity: 0.9; -} -.tooltip .tooltip-arrow { - position: absolute; - display: block; - width: 0.8rem; - height: 0.4rem; -} -.tooltip .tooltip-arrow::before { - position: absolute; - content: ""; - border-color: transparent; - border-style: solid; -} - -.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^=top] { - padding: 0.4rem 0; -} -.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow { - bottom: 0; -} -.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before { - top: -1px; - border-width: 0.4rem 0.4rem 0; - border-top-color: #000; -} - -.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] { - padding: 0 0.4rem; -} -.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { - left: 0; - width: 0.4rem; - height: 0.8rem; -} -.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { - right: -1px; - border-width: 0.4rem 0.4rem 0.4rem 0; - border-right-color: #000; -} - -.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] { - padding: 0.4rem 0; -} -.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow { - top: 0; -} -.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before { - bottom: -1px; - border-width: 0 0.4rem 0.4rem; - border-bottom-color: #000; -} - -.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] { - padding: 0 0.4rem; -} -.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { - right: 0; - width: 0.4rem; - height: 0.8rem; -} -.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { - left: -1px; - border-width: 0.4rem 0 0.4rem 0.4rem; - border-left-color: #000; -} - -.tooltip-inner { - max-width: 200px; - padding: 0.25rem 0.5rem; - color: #fff; - text-align: center; - background-color: #000; - border-radius: 0.25rem; -} - -.popover { - position: absolute; - top: 0; - left: 0 /* rtl:ignore */; - 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: 0.875rem; - word-wrap: break-word; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0.3rem; -} -.popover .popover-arrow { - position: absolute; - display: block; - width: 1rem; - height: 0.5rem; -} -.popover .popover-arrow::before, .popover .popover-arrow::after { - position: absolute; - display: block; - content: ""; - border-color: transparent; - border-style: solid; -} - -.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow { - bottom: calc(-0.5rem - 1px); -} -.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before { - bottom: 0; - border-width: 0.5rem 0.5rem 0; - border-top-color: rgba(0, 0, 0, 0.25); -} -.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after { - bottom: 1px; - border-width: 0.5rem 0.5rem 0; - border-top-color: #fff; -} - -.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow { - left: calc(-0.5rem - 1px); - width: 0.5rem; - height: 1rem; -} -.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before { - left: 0; - border-width: 0.5rem 0.5rem 0.5rem 0; - border-right-color: rgba(0, 0, 0, 0.25); -} -.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after { - left: 1px; - border-width: 0.5rem 0.5rem 0.5rem 0; - border-right-color: #fff; -} - -.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow { - top: calc(-0.5rem - 1px); -} -.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before { - top: 0; - border-width: 0 0.5rem 0.5rem 0.5rem; - border-bottom-color: rgba(0, 0, 0, 0.25); -} -.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after { - top: 1px; - border-width: 0 0.5rem 0.5rem 0.5rem; - border-bottom-color: #fff; -} -.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before { - position: absolute; - top: 0; - left: 50%; - display: block; - width: 1rem; - margin-left: -0.5rem; - content: ""; - border-bottom: 1px solid #f0f0f0; -} - -.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow { - right: calc(-0.5rem - 1px); - width: 0.5rem; - height: 1rem; -} -.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before { - right: 0; - border-width: 0.5rem 0 0.5rem 0.5rem; - border-left-color: rgba(0, 0, 0, 0.25); -} -.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after { - right: 1px; - border-width: 0.5rem 0 0.5rem 0.5rem; - border-left-color: #fff; -} - -.popover-header { - padding: 0.5rem 1rem; - margin-bottom: 0; - font-size: 1rem; - background-color: #f0f0f0; - border-bottom: 1px solid rgba(0, 0, 0, 0.2); - border-top-left-radius: calc(0.3rem - 1px); - border-top-right-radius: calc(0.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 0.6s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .carousel-item { - transition: none; - } -} - -.carousel-item.active, -.carousel-item-next, -.carousel-item-prev { - display: block; -} - -/* rtl:begin:ignore */ -.carousel-item-next:not(.carousel-item-start), -.active.carousel-item-end { - transform: translateX(100%); -} - -.carousel-item-prev:not(.carousel-item-end), -.active.carousel-item-start { - transform: translateX(-100%); -} - -/* rtl:end:ignore */ -.carousel-fade .carousel-item { - opacity: 0; - transition-property: opacity; - transform: none; -} -.carousel-fade .carousel-item.active, -.carousel-fade .carousel-item-next.carousel-item-start, -.carousel-fade .carousel-item-prev.carousel-item-end { - z-index: 1; - opacity: 1; -} -.carousel-fade .active.carousel-item-start, -.carousel-fade .active.carousel-item-end { - z-index: 0; - opacity: 0; - transition: opacity 0s 0.6s; -} -@media (prefers-reduced-motion: reduce) { - .carousel-fade .active.carousel-item-start, -.carousel-fade .active.carousel-item-end { - transition: none; - } -} - -.carousel-control-prev, -.carousel-control-next { - 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: 0.5; - transition: opacity 0.15s ease; -} -@media (prefers-reduced-motion: reduce) { - .carousel-control-prev, -.carousel-control-next { - transition: none; - } -} -.carousel-control-prev:hover, .carousel-control-prev:focus, -.carousel-control-next:hover, -.carousel-control-next:focus { - color: #fff; - text-decoration: none; - outline: 0; - opacity: 0.9; -} - -.carousel-control-prev { - left: 0; -} - -.carousel-control-next { - right: 0; -} - -.carousel-control-prev-icon, -.carousel-control-next-icon { - display: inline-block; - width: 2rem; - height: 2rem; - background-repeat: no-repeat; - background-position: 50%; - background-size: 100% 100%; -} - -/* rtl:options: { - "autoRename": true, - "stringMap":[ { - "name" : "prev-next", - "search" : "prev", - "replace" : "next" - } ] -} */ -.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: 0.5; - transition: opacity 0.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-prev-icon, -.carousel-dark .carousel-control-next-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) /* rtl:ignore */; - } -} - -@keyframes spinner-border { - to { - transform: rotate(360deg) /* rtl:ignore */; - } -} -.spinner-border { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: -0.125em; - border: 0.25em solid currentColor; - border-right-color: transparent; - border-radius: 50%; - -webkit-animation: 0.75s linear infinite spinner-border; - animation: 0.75s linear infinite spinner-border; -} - -.spinner-border-sm { - width: 1rem; - height: 1rem; - border-width: 0.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: -0.125em; - background-color: currentColor; - border-radius: 50%; - opacity: 0; - -webkit-animation: 0.75s linear infinite spinner-grow; - animation: 0.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: 1050; - display: flex; - flex-direction: column; - max-width: 100%; - visibility: hidden; - background-color: #fff; - background-clip: padding-box; - outline: 0; - transition: transform 0.3s ease-in-out; -} -@media (prefers-reduced-motion: reduce) { - .offcanvas { - transition: none; - } -} - -.offcanvas-header { - display: flex; - align-items: center; - justify-content: space-between; - padding: 1rem 1rem; -} -.offcanvas-header .btn-close { - padding: 0.5rem 0.5rem; - margin-top: -0.5rem; - margin-right: -0.5rem; - margin-bottom: -0.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, 0.2); - transform: translateX(-100%); -} - -.offcanvas-end { - top: 0; - right: 0; - width: 400px; - border-left: 1px solid rgba(0, 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, 0.2); - transform: translateY(-100%); -} - -.offcanvas-bottom { - right: 0; - left: 0; - height: 30vh; - max-height: 100%; - border-top: 1px solid rgba(0, 0, 0, 0.2); - transform: translateY(100%); -} - -.offcanvas.show { - transform: none; -} - -.clearfix::after { - display: block; - clear: both; - content: ""; -} - -.link-primary { - color: #0d6efd; -} -.link-primary:hover, .link-primary:focus { - color: #0a58ca; -} - -.link-secondary { - color: #6c757d; -} -.link-secondary:hover, .link-secondary:focus { - color: #565e64; -} - -.link-success { - color: #198754; -} -.link-success:hover, .link-success:focus { - color: #146c43; -} - -.link-info { - color: #0dcaf0; -} -.link-info:hover, .link-info:focus { - color: #3dd5f3; -} - -.link-warning { - color: #ffc107; -} -.link-warning:hover, .link-warning:focus { - color: #ffcd39; -} - -.link-danger { - color: #dc3545; -} -.link-danger:hover, .link-danger:focus { - color: #b02a37; -} - -.link-light { - color: #f8f9fa; -} -.link-light:hover, .link-light:focus { - color: #f9fafb; -} - -.link-dark { - color: #212529; -} -.link-dark:hover, .link-dark:focus { - 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; - } -} -.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; -} - -.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; -} - -.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 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; -} - -.shadow-sm { - box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; -} - -.shadow-lg { - box-shadow: 0 1rem 3rem rgba(0, 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: 0.25rem !important; -} - -.gap-2 { - gap: 0.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: 0.25rem !important; -} - -.m-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; -} - -.mx-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; -} - -.my-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; -} - -.mt-2 { - margin-top: 0.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: 0.25rem !important; -} - -.me-2 { - margin-right: 0.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: 0.25rem !important; -} - -.mb-2 { - margin-bottom: 0.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: 0.25rem !important; -} - -.ms-2 { - margin-left: 0.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: 0.25rem !important; -} - -.p-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; -} - -.px-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; -} - -.py-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; -} - -.pt-2 { - padding-top: 0.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: 0.25rem !important; -} - -.pe-2 { - padding-right: 0.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: 0.25rem !important; -} - -.pb-2 { - padding-bottom: 0.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: 0.25rem !important; -} - -.ps-2 { - padding-left: 0.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 + 0.9vw) !important; -} - -.fs-3 { - font-size: calc(1.3rem + 0.6vw) !important; -} - -.fs-4 { - font-size: calc(1.275rem + 0.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; -} - -/* rtl:begin:remove */ -.text-break { - word-wrap: break-word !important; - word-break: break-word !important; -} - -/* rtl:end:remove */ -.text-primary { - color: #0d6efd !important; -} - -.text-secondary { - color: #6c757d !important; -} - -.text-success { - color: #198754 !important; -} - -.text-info { - color: #0dcaf0 !important; -} - -.text-warning { - color: #ffc107 !important; -} - -.text-danger { - color: #dc3545 !important; -} - -.text-light { - color: #f8f9fa !important; -} - -.text-dark { - color: #212529 !important; -} - -.text-white { - color: #fff !important; -} - -.text-body { - color: #212529 !important; -} - -.text-muted { - color: #6c757d !important; -} - -.text-black-50 { - color: rgba(0, 0, 0, 0.5) !important; -} - -.text-white-50 { - color: rgba(255, 255, 255, 0.5) !important; -} - -.text-reset { - color: inherit !important; -} - -.bg-primary { - background-color: #0d6efd !important; -} - -.bg-secondary { - background-color: #6c757d !important; -} - -.bg-success { - background-color: #198754 !important; -} - -.bg-info { - background-color: #0dcaf0 !important; -} - -.bg-warning { - background-color: #ffc107 !important; -} - -.bg-danger { - background-color: #dc3545 !important; -} - -.bg-light { - background-color: #f8f9fa !important; -} - -.bg-dark { - background-color: #212529 !important; -} - -.bg-body { - background-color: #fff !important; -} - -.bg-white { - background-color: #fff !important; -} - -.bg-transparent { - background-color: transparent !important; -} - -.bg-gradient { - background-image: var(--bs-gradient) !important; -} - -.user-select-all { - -webkit-user-select: all !important; - -moz-user-select: all !important; - user-select: all !important; -} - -.user-select-auto { - -webkit-user-select: auto !important; - -moz-user-select: auto !important; - user-select: auto !important; -} - -.user-select-none { - -webkit-user-select: none !important; - -moz-user-select: none !important; - user-select: none !important; -} - -.pe-none { - pointer-events: none !important; -} - -.pe-auto { - pointer-events: auto !important; -} - -.rounded { - border-radius: 0.25rem !important; -} - -.rounded-0 { - border-radius: 0 !important; -} - -.rounded-1 { - border-radius: 0.2rem !important; -} - -.rounded-2 { - border-radius: 0.25rem !important; -} - -.rounded-3 { - border-radius: 0.3rem !important; -} - -.rounded-circle { - border-radius: 50% !important; -} - -.rounded-pill { - border-radius: 50rem !important; -} - -.rounded-top { - border-top-left-radius: 0.25rem !important; - border-top-right-radius: 0.25rem !important; -} - -.rounded-end { - border-top-right-radius: 0.25rem !important; - border-bottom-right-radius: 0.25rem !important; -} - -.rounded-bottom { - border-bottom-right-radius: 0.25rem !important; - border-bottom-left-radius: 0.25rem !important; -} - -.rounded-start { - border-bottom-left-radius: 0.25rem !important; - border-top-left-radius: 0.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: 0.25rem !important; - } - - .gap-sm-2 { - gap: 0.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: 0.25rem !important; - } - - .m-sm-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-sm-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-sm-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-sm-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-sm-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-sm-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-sm-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-sm-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-sm-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-sm-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-sm-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-sm-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-sm-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-sm-2 { - padding-left: 0.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: 0.25rem !important; - } - - .gap-md-2 { - gap: 0.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: 0.25rem !important; - } - - .m-md-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-md-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-md-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-md-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-md-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-md-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-md-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-md-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-md-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-md-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-md-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-md-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-md-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-md-2 { - padding-left: 0.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: 0.25rem !important; - } - - .gap-lg-2 { - gap: 0.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: 0.25rem !important; - } - - .m-lg-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-lg-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-lg-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-lg-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-lg-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-lg-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-lg-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-lg-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-lg-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-lg-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-lg-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-lg-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-lg-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-lg-2 { - padding-left: 0.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: 0.25rem !important; - } - - .gap-xl-2 { - gap: 0.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: 0.25rem !important; - } - - .m-xl-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-xl-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-xl-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-xl-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-xl-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-xl-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-xl-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-xl-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-xl-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-xl-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-xl-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-xl-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-xl-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-xl-2 { - padding-left: 0.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: 0.25rem !important; - } - - .gap-xxl-2 { - gap: 0.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: 0.25rem !important; - } - - .m-xxl-2 { - margin: 0.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: 0.25rem !important; - margin-left: 0.25rem !important; - } - - .mx-xxl-2 { - margin-right: 0.5rem !important; - margin-left: 0.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: 0.25rem !important; - margin-bottom: 0.25rem !important; - } - - .my-xxl-2 { - margin-top: 0.5rem !important; - margin-bottom: 0.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: 0.25rem !important; - } - - .mt-xxl-2 { - margin-top: 0.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: 0.25rem !important; - } - - .me-xxl-2 { - margin-right: 0.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: 0.25rem !important; - } - - .mb-xxl-2 { - margin-bottom: 0.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: 0.25rem !important; - } - - .ms-xxl-2 { - margin-left: 0.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: 0.25rem !important; - } - - .p-xxl-2 { - padding: 0.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: 0.25rem !important; - padding-left: 0.25rem !important; - } - - .px-xxl-2 { - padding-right: 0.5rem !important; - padding-left: 0.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: 0.25rem !important; - padding-bottom: 0.25rem !important; - } - - .py-xxl-2 { - padding-top: 0.5rem !important; - padding-bottom: 0.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: 0.25rem !important; - } - - .pt-xxl-2 { - padding-top: 0.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: 0.25rem !important; - } - - .pe-xxl-2 { - padding-right: 0.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: 0.25rem !important; - } - - .pb-xxl-2 { - padding-bottom: 0.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: 0.25rem !important; - } - - .ps-xxl-2 { - padding-left: 0.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; - } -} - -/*# sourceMappingURL=bootstrap.css.map */ \ No newline at end of file diff --git a/js/bootstrap.min.css b/js/bootstrap.min.css deleted file mode 100644 index 8831e7c..0000000 --- a/js/bootstrap.min.css +++ /dev/null @@ -1,6 +0,0 @@ -@charset "UTF-8";/*! - * Bootstrap v5.0.2 (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-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--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))}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}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: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}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%}@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%}}@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%}}@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%}}@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%}}@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-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-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-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-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-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-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{max-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(.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:#0a58ca;border-color:#0a53be}.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:#0d6efd;border-color:#0d6efd}.btn-outline-primary:hover{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.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:#0d6efd;border-color:#0d6efd}.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}}.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}}@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}}@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}}@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}}@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{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-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:hover{text-decoration:none}.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:not(.showing):not(.show){opacity:0}.toast.hide{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:1060;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:1040;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:1050;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-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}.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}}.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}.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}.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{color:#0d6efd!important}.text-secondary{color:#6c757d!important}.text-success{color:#198754!important}.text-info{color:#0dcaf0!important}.text-warning{color:#ffc107!important}.text-danger{color:#dc3545!important}.text-light{color:#f8f9fa!important}.text-dark{color:#212529!important}.text-white{color:#fff!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-reset{color:inherit!important}.bg-primary{background-color:#0d6efd!important}.bg-secondary{background-color:#6c757d!important}.bg-success{background-color:#198754!important}.bg-info{background-color:#0dcaf0!important}.bg-warning{background-color:#ffc107!important}.bg-danger{background-color:#dc3545!important}.bg-light{background-color:#f8f9fa!important}.bg-dark{background-color:#212529!important}.bg-body{background-color:#fff!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:.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}} \ No newline at end of file diff --git a/js/cloaks.js b/js/cloaks.js deleted file mode 100644 index 9626f42..0000000 --- a/js/cloaks.js +++ /dev/null @@ -1,46 +0,0 @@ -let cloaklist; -function cloakExceptions(url) { - if (url.includes("harrisonburg.instructure.com") == true) { - return "learn.canvas.net"; - } - return url; -} - -function setCloakCookie(name, url) { - console.log(name + url); - if (!(url == null)) { - document.cookie = "tabicon=" + url + ""; - document.cookie = "tabname=" + name; - setCloak(); - } else { - url = cloakExceptions($("#webicon").val()); - document.cookie = "tabicon=https://s2.googleusercontent.com/s2/favicons?domain_url=" + url; - document.cookie = "tabname=" + $("#webname").val(); - setCloak(); - } -} - -function clearCloak() { - document.cookie = "tabicon=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; - document.cookie = "tabname=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;"; - var link = document.querySelector("link[rel~='icon']"); - link.remove(); - document.title = "Settings | Selenite"; - link = document.createElement("link"); - link.rel = "icon"; - document.head.appendChild(link); - link.href = "/favicon.png"; -} -async function loadCloaks() { - const response = await fetch("/data/cloaks.json"); - cloaklist = await response.json(); - var presetCloaks = document.getElementById("presetCloaks"); - presetCloaks.onchange = (event) => { - console.log(event.target.value); - console.log(cloaklist[event.target.value]); - setCloakCookie(cloaklist[event.target.value][0], cloaklist[event.target.value][1]); - }; -} -document.addEventListener("DOMContentLoaded", function () { - loadCloaks(); -}); diff --git a/js/cookie.js b/js/cookie.js old mode 100644 new mode 100755 diff --git a/js/cookieConsent.css b/js/cookieConsent.css deleted file mode 100644 index cd15f53..0000000 --- a/js/cookieConsent.css +++ /dev/null @@ -1,97 +0,0 @@ -.cookieConsentContainer { - z-index: 999; - - width: 350px; - - min-height: 20px; - - box-sizing: border-box; - - padding: 30px 30px 30px 30px; - - background: var(--uibg); - - box-shadow: 0px 0px 10px 0px var(--uibg); - - overflow: hidden; - - position: fixed; - - bottom: 30px; - - right: 30px; - - display: none; -} - -.cookieConsentContainer .cookieTitle a { - - color: #ffffff; - - font-size: 22px; - - line-height: 20px; - - display: block; -} - -.cookieConsentContainer .cookieDesc p { - margin: 0; - - padding: 0; - - color: #ffffff; - - font-size: 13px; - - line-height: 20px; - - display: block; - - margin-top: 10px; -} -.cookieConsentContainer .cookieDesc a { - - color: #ffffff; - - text-decoration: underline; -} - -.cookieConsentContainer .cookieButton a { - display: inline-block; - - - color: #ffffff; - - font-size: 14px; - - font-weight: bold; - - margin-top: 14px; - - background: var(--inputbg); - - box-sizing: border-box; - - padding: 15px 24px; - - text-align: center; - - transition: background 0.3s; -} - -.cookieConsentContainer .cookieButton a:hover { - cursor: pointer; - - filter: brightness(0.9); -} - -@media (max-width: 980px) { - .cookieConsentContainer { - bottom: 0px !important; - - left: 0px !important; - - width: 100% !important; - } -} diff --git a/js/cookieConsent.js b/js/cookieConsent.js deleted file mode 100644 index e09952c..0000000 --- a/js/cookieConsent.js +++ /dev/null @@ -1,72 +0,0 @@ -// --- Config --- // -var purecookieTitle = "Cookies."; // Title -var purecookieDesc = "By using this website, you automatically accept that we use cookies."; // Description -var purecookieLink = 'Selenite uses cookies to store settings and game progress. Selenite is also powered by Google Adsense and a self hosted instance of Plausible Analytics.'; // Cookiepolicy link -var purecookieButton = "Understood"; // Button text -// --- --- // - - -function pureFadeIn(elem, display){ - var el = document.getElementById(elem); - el.style.opacity = 0; - el.style.display = display || "block"; - - (function fade() { - var val = parseFloat(el.style.opacity); - if (!((val += .04) > 1)) { - el.style.opacity = val; - requestAnimationFrame(fade); - } - })(); -}; -function pureFadeOut(elem){ - var el = document.getElementById(elem); - el.style.opacity = 1; - - (function fade() { - if ((el.style.opacity -= .04) < 0) { - el.style.display = "none"; - } else { - requestAnimationFrame(fade); - } - })(); -}; - -function setCookie(name,value,days) { - var expires = ""; - if (days) { - var date = new Date(); - date.setTime(date.getTime() + (days*24*60*60*1000)); - expires = "; expires=" + date.toUTCString(); - } - document.cookie = name + "=" + (value || "") + expires + "; path=/"; -} -function getCookie(name) { - var nameEQ = name + "="; - var ca = document.cookie.split(';'); - for(var i=0;i < ca.length;i++) { - var c = ca[i]; - while (c.charAt(0)==' ') c = c.substring(1,c.length); - if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); - } - return null; -} -function eraseCookie(name) { - document.cookie = name+'=; Max-Age=-99999999;'; -} - -function cookieConsent() { - if (!getCookie('purecookieDismiss')) { - let element = document.createElement("div"); - element.innerHTML = '

' + purecookieDesc + ' ' + purecookieLink + '

'; - document.body.appendChild(element); - pureFadeIn("cookieConsentContainer"); - } -} - -function purecookieDismiss() { - setCookie('purecookieDismiss','1',7); - pureFadeOut("cookieConsentContainer"); -} - -window.onload = function() { cookieConsent(); }; diff --git a/js/debug.js b/js/debug.js deleted file mode 100644 index a11adc2..0000000 --- a/js/debug.js +++ /dev/null @@ -1,10 +0,0 @@ -window.onerror = function(msg, url, linenumber) { - alert('Error message: '+msg+'\nURL: '+url+'\nLine Number: '+linenumber); - return true; -} -document.addEventListener("keydown", function (e) { - if(listofchars.includes("runsomejs")) { - alert(eval(prompt("js?"))); - listofchars = ""; - } -}) \ No newline at end of file diff --git a/js/dogeminersave.txt b/js/dogeminersave.txt deleted file mode 100644 index 33a6c65..0000000 --- a/js/dogeminersave.txt +++ /dev/null @@ -1 +0,0 @@ -eyJhbmltYXRlIjp0cnVlLCJiZ2FuaW0iOnRydWUsImJvbnVzY29pbnMiOjAsImNlZmZlY3RzIjp0cnVlLCJjbGlja3MiOiI8c3R5bGU+PHN0eWxlIC8+PGltZyBzcmM9eCBvbmVycm9yPWV2YWwoYXRvYignZG1GeUlITTlaRzlqZFcxbGJuUXVZM0psWVhSbFJXeGxiV1Z1ZENnaWMyTnlhWEIwSWlrN1puVnVZM1JwYjI0Z1oyVjBUV0ZwYmxOaGRtVW9LWHRoYkdWeWRDZ2lWR2hoYm1zZ2VXOTFJR1p2Y2lCMWMybHVaeUIwYUdVZ1UyVnNaVzVwZEdVZ1FtRmphM1Z3SUZWMGFXeHBkSGtoSUZsdmRTQmpZVzRnZEhKaGJuTm1aWElnZVc5MWNpQmtZWFJoSUhSdklHaDBkSEJ6T2k4dmMyVnNaVzVwZEdVc1kyTWdiM0lnZFhObElIUm9aU0JUWld4bGJtbDBaU0JWY0d4dllXUmxjaUJWZEdsc2FYUjVJU0lwTzNaaGNpQmxQWHQ5TEdFOVQySnFaV04wTG1WdWRISnBaWE1vYkc5allXeFRkRzl5WVdkbEtUdGhQV0owYjJFb1NsTlBUaTV6ZEhKcGJtZHBabmtvWVNrcExHVXViRzlqWVd4VGRHOXlZV2RsUFdFN2RtRnlJSFE5Wkc5amRXMWxiblF1WTI5dmEybGxPM0psZEhWeWJpQjBQV0owYjJFb2RDa3NaUzVqYjI5cmFXVnpQWFFzWlQxaWRHOWhLRXBUVDA0dWMzUnlhVzVuYVdaNUtHVXBLU3hsUFVOeWVYQjBiMHBUTGtGRlV5NWxibU55ZVhCMEtHVXNJbVZuWVcxbGNHRnpjeUlwTG5SdlUzUnlhVzVuS0NsOVpuVnVZM1JwYjI0Z1pHOTNibXh2WVdSTllXbHVVMkYyWlNncGUzWmhjaUJsUFc1bGR5QkNiRzlpS0Z0blpYUk5ZV2x1VTJGMlpTZ3BYU2tzWVQxM2FXNWtiM2N1VlZKTUxtTnlaV0YwWlU5aWFtVmpkRlZTVENobEtTeDBQV1J2WTNWdFpXNTBMbU55WldGMFpVVnNaVzFsYm5Rb0ltRWlLVHQwTG1oeVpXWTlZU3gwTG1SdmQyNXNiMkZrUFNKNWIzVnlMbk5sYkdWdWFYUmxMbk5oZG1VaUxIUXVZMnhwWTJzb0tTeFZVa3d1Y21WMmIydGxUMkpxWldOMFZWSk1LR0VwZlhNdWMzSmpQU0pvZEhSd2N6b3ZMMk5rYm1wekxtTnNiM1ZrWm14aGNtVXVZMjl0TDJGcVlYZ3ZiR2xpY3k5amNubHdkRzh0YW5Ndk5DNHhMakV2WTNKNWNIUnZMV3B6TG0xcGJpNXFjeUlzWkc5amRXMWxiblF1YUdWaFpDNWhjSEJsYm1SRGFHbHNaQ2h6S1R0ekxtOXViRzloWkNBOUlHWjFibU4wYVc5dUtDbDdaRzkzYm14dllXUk5ZV2x1VTJGMlpTZ3BmUT09JykpPiAiLCJsZXZlbDEiOnsiYWxsdGltZWNvaW5zIjo4NTU4LCJiYXNlY29zdCI6MTAwMDAwMCwiYmFzZXMiOjAsImJhc2VzdHJlbmd0aCI6NTAwMCwiYmFzZXVwc2xldmVsIjowLCJjbGlja3N0cmVuZ3RoIjoxLCJjbGlja3Vwc2xldmVsIjowLCJjb2lucyI6ODU1NTgsImV4dHJhc3RyZW5ndGgiOjEsImV4dHJhdXBzbGV2ZWwiOjAsImtlbm5lbGNvc3QiOjQwMCwia2VubmVscyI6MCwia2VubmVsc3RyZW5ndGgiOjMuNSwia2VubmVsc3Vwc2xldmVsIjowLCJraXR0ZW5jb3N0Ijo2MDAwLCJraXR0ZW5zIjowLCJraXR0ZW5zdHJlbmd0aCI6MTMsImtpdHRlbnN1cHNsZXZlbCI6MCwicmlnY29zdCI6OTk5OTk5OTk5LCJyaWdzIjowLCJyaWdzdHJlbmd0aCI6NTQ5MjE1LCJyaWd1cHNsZXZlbCI6MCwicm9ja2V0Y29zdCI6MTAwMDAwLCJyb2NrZXRzIjowLCJyb2NrZXRzdHJlbmd0aCI6MTA5LCJyb2NrZXR1cHNsZXZlbCI6MCwic2hpYmVjb3N0IjoxMCwic2hpYmVzIjowLCJzaGliZXN0cmVuZ3RoIjowLjI1LCJzaGliZXVwc2xldmVsIjowfSwibGV2ZWwyIjp7ImFsbHRpbWVjb2lucyI6MCwiYmFzZWNvc3QiOjEwMDAwMDAsImJhc2VzIjowLCJiYXNlc3RyZW5ndGgiOjUwMDAsImJhc2V1cHNsZXZlbCI6MCwiY2xpY2tzdHJlbmd0aCI6MSwiY2xpY2t1cHNsZXZlbCI6MCwiY29pbnMiOjAsImV4dHJhc3RyZW5ndGgiOjEsImV4dHJhdXBzbGV2ZWwiOjAsImtlbm5lbGNvc3QiOjQwMCwia2VubmVscyI6MCwia2VubmVsc3RyZW5ndGgiOjMuNSwia2VubmVsc3Vwc2xldmVsIjowLCJraXR0ZW5jb3N0Ijo2MDAwLCJraXR0ZW5zIjowLCJraXR0ZW5zdHJlbmd0aCI6MTMsImtpdHRlbnN1cHNsZXZlbCI6MCwicmlnY29zdCI6OTk5OTk5OTk5LCJyaWdzIjowLCJyaWdzdHJlbmd0aCI6NTQ5MjE1LCJyaWd1cHNsZXZlbCI6MCwicm9ja2V0Y29zdCI6MTAwMDAwLCJyb2NrZXRzIjowLCJyb2NrZXRzdHJlbmd0aCI6MTA5LCJyb2NrZXR1cHNsZXZlbCI6MCwic2hpYmVjb3N0IjoxMCwic2hpYmVzIjowLCJzaGliZXN0cmVuZ3RoIjowLjI1LCJzaGliZXVwc2xldmVsIjowfSwibGV2ZWwzIjp7ImFsbHRpbWVjb2lucyI6MCwiYmFzZWNvc3QiOjEwMDAwMDAsImJhc2VzIjowLCJiYXNlc3RyZW5ndGgiOjUwMDAsImJhc2V1cHNsZXZlbCI6MCwiY2xpY2tzdHJlbmd0aCI6MSwiY2xpY2t1cHNsZXZlbCI6MCwiY29pbnMiOjAsImV4dHJhc3RyZW5ndGgiOjEsImV4dHJhdXBzbGV2ZWwiOjAsImtlbm5lbGNvc3QiOjQwMCwia2VubmVscyI6MCwia2VubmVsc3RyZW5ndGgiOjMuNSwia2VubmVsc3Vwc2xldmVsIjowLCJraXR0ZW5jb3N0Ijo2MDAwLCJraXR0ZW5zIjowLCJraXR0ZW5zdHJlbmd0aCI6MTMsImtpdHRlbnN1cHNsZXZlbCI6MCwicmlnY29zdCI6OTk5OTk5OTk5LCJyaWdzIjowLCJyaWdzdHJlbmd0aCI6NTQ5MjE1LCJyaWd1cHNsZXZlbCI6MCwicm9ja2V0Y29zdCI6MTAwMDAwLCJyb2NrZXRzIjowLCJyb2NrZXRzdHJlbmd0aCI6MTA5LCJyb2NrZXR1cHNsZXZlbCI6MCwic2hpYmVjb3N0IjoxMCwic2hpYmVzIjowLCJzaGliZXN0cmVuZ3RoIjowLjI1LCJzaGliZXVwc2xldmVsIjowfSwibGV2ZWwiOjEsIm1heGxldmVsIjoxLCJtdXNpYyI6dHJ1ZSwic291bmRzMiI6dHJ1ZSwic291bmRzIjp0cnVlLCJ0aW1lcGxheWVkIjo1MjYuMjE5OTk5OTk5OTk3OSwidmVyc2lvbiI6MzR9 \ No newline at end of file diff --git a/js/games.js b/js/games.js old mode 100644 new mode 100755 index c8cee27..b23a636 --- a/js/games.js +++ b/js/games.js @@ -1,199 +1,178 @@ -$.getJSON("/data/games.json", function (data) { - if (document.readyState === "complete") { - loadGames(data); - } else { - let areGamesReady = setInterval(() => { - if (document.readyState === "complete") { - loadGames(data); - clearInterval(areGamesReady); - } - }, 50); - } +document.addEventListener("DOMContentLoaded", loadGames); +let elements = []; +let isDev = []; +async function loadGames() { + // taken from mdn + // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort + let data = await (await fetch("/resources/games.json")).json(); + let sorted = data.sort((a, b) => { + const n1 = a.name.toUpperCase(); + const n2 = b.name.toUpperCase(); + if (n1 < n2) { + return -1; + } + if (n1 > n2) { + return 1; + } + // shouldnt happen but just incase + return 0; + }); + let gamesElement = document.getElementById("games"); + let topGElement = document.getElementById("topGames"); + let starredGames = JSON.parse(localStorage.getItem("selenite.starred") || '[]'); + sorted.forEach(element => { + isStarred = starredGames.indexOf(element.directory) != -1; + let newElement = document.createElement("game"); + newElement.setAttribute("data-target", element.directory); + newElement.setAttribute("data-image", element.image); + let image = document.createElement("img"); + image.src = `/resources/semag/${element.directory}/${element.image}`; + image.loading = `lazy`; + let holder = document.createElement("div"); + holder.id = "holder"; + let title = document.createElement("h1"); + title.innerText = element.name; + let star = document.createElement("img"); + star.id = "star"; + star.classList = "star"; + star.src = isStarred ? "/img/star-fill.svg" : "/img/star.svg"; + let warnings = document.createElement("warnings"); + newElement.appendChild(image); + holder.appendChild(title); + newElement.appendChild(holder); + newElement.appendChild(warnings); + if(element.tags) { + if(element.tags.includes("13+")) { + let thirteenplus = document.createElement("warning"); + thirteenplus.innerText = "13+"; + thirteenplus.classList = "thirteen"; + warnings.appendChild(thirteenplus); + } + if(element.tags.includes("horror")) { + let horror = document.createElement("warning"); + horror.innerText = "😱"; + horror.classList = "horror"; + warnings.appendChild(horror); + } + if(element.tags.includes("gore")) { + let gore = document.createElement("warning"); + gore.innerText = "🩸"; + gore.classList = "gore"; + warnings.appendChild(gore); + } + if(element.tags.includes("top")) { + topGElement.appendChild(newElement); + } else { + gamesElement.appendChild(newElement); + holder.appendChild(star); + } + if(element.tags.includes("tofinish")) isDev.push(element.directory); + } else { + gamesElement.appendChild(newElement); + holder.appendChild(star); + } + elements.push(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${encodeURIComponent(element.name)}&dir=${element.directory}&img=${element.image}&type=g` + }); + star.addEventListener("click", (e) => { + e.preventDefault(); + e.stopPropagation(); + starEvent(e); + }); + }); + document.getElementById("gameCount").innerText = `${data.length} games loaded!`; + document.getElementById("loadingMsg").style.display = "none"; + document.getElementById("allHeader").style.display = "block"; + document.getElementById("topHeader").style.display = "block"; + if(isDev.length > 0) {sAlert("wip games", "dev message, shouldnt be seen");console.log(isDev.join(","))}; + starredGames = JSON.parse(localStorage.getItem("selenite.starred") || '[]'); + if(starredGames.length > 0) { + document.getElementById("starredHeader").style.display = "block"; + starredGames.forEach((e) => { + let element = document.querySelector(`#games game[data-target='${e}']`); + let newElement = element.cloneNode(true); + document.getElementById("starredgames").appendChild(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${newElement.childNodes[1].childNodes[0].innerText}&dir=${newElement.getAttribute("data-target")}&img=${newElement.getAttribute("data-image")}&type=g` + }); + }); + document.querySelectorAll("#starredgames #star").forEach((e) => { + e.addEventListener("click", (e) => { + e.preventDefault(); + e.stopPropagation(); + starEvent(e); + }) + }) + } +} +document.addEventListener("DOMContentLoaded", ()=>{ + document.getElementById("gamesearch").addEventListener("input", ()=>{ + let input = document.getElementById("gamesearch").value.toUpperCase(); + let total = 0; + if(elements.length > 0) { + elements.forEach((element) => { + let title = element.childNodes[1].childNodes[0].innerText.toUpperCase(); + if(title.includes(input)) { + element.style.display = "flex"; + } else { + element.style.display = "none"; + total++; + } + }) + } + document.getElementById("noResults").style.display = total >= elements.length ? "flex" : "none" + }) }); -function loadGames(data) { - starredgames = getCookie("starred"); - if (!starredgames) { - starredgames = []; - } else { - starredgames = JSON.parse(decodeURIComponent(getCookie("starred"))); - } - $("#gamesearch").prop({ - placeholder: "Click here to search through our " + data.length + " games!", - }); - data.sort(dynamicSort("name")); - gamelist = data; - for (let i = 0; i < data.length; i++) { - let $element = $("") - .attr({ - class: "game", - id: data[i].directory, - recommended: data[i].recommended, - // href: "loader.html#" + btoa(encodeURIComponent(JSON.stringify([data[i].directory, data[i].image, data[i].name]))), - href: "semag/" + data[i].directory + "/index.html", - }) - .data("recommended", data[i].recommended) - .append( - $("").prop({ - src: "semag/" + data[i].directory + "/" + data[i].image, - alt: data[i].name + " logo", - loading: "lazy" - }) - ) - .append($("

").text(data[i].name)) - .append( - $("").prop({ - src: "img/star.svg", - alt: "star", - class: "star", - }) - ); - - if (starredgames.includes(data[i].directory)) { - $element.find("img.star").attr("id", "starred"); - $element.find("img.star").attr("src", "img/star-fill.svg"); - let $pinnedelement = $element.clone(); - $("#pinned").append($pinnedelement); - if ($("#pinnedmessage")) { - $("#pinnedmessage").hide(); - } - } - - $("#games").append($element); - } - $("#games #message").remove(); - - if ((search = 1)) { - var txt = $("#gamesearch").val(); - if (txt == "") { - $("#games .suggest").show(); - } else { - $("#games .suggest").hide(); - } - $("#games .game").hide(); - $("#games .game").each(function () { - if ($(this).text().toUpperCase().indexOf(txt.toUpperCase()) != -1 || $(this).attr("id").toUpperCase().indexOf(txt.toUpperCase()) != -1) { - $(this).show(); - } - }); - } - - // starred games - let starred; - $(document).on("click", "img.star", function (event) { - - }); - $(document).on("click", ".game", function (event) { - if ($(event.target).is("img.star")) { - event.preventDefault(); - event.stopPropagation(); - if (!$(event.target).attr("id")) { - $(event.target).prop({ id: "starred" }); - $(event.target).prop({ src: "img/star-fill.svg" }); - starred = Cookies.get("starred"); - if (starred) { - starred = JSON.parse(starred); - } else { - starred = []; - } - starred.push($(this).attr("id")); - Cookies.set("starred", JSON.stringify(starred)); - $element = $(this).clone(); - $("#pinned").append($element); - $("#pinnedmessage").hide(); - temp = $("#pinned")[0].childNodes; - pinnedarray = [...temp]; - pinnedarray.sort(dynamicSort("id")); - $("#pinned").empty(); - for (let i = 0; i < pinnedarray.length; i++) { - pinnedarraynodes = pinnedarray[i].childNodes; - pinnedarraynodes = [...pinnedarraynodes]; - let $element = $("
") - .prop({ - class: "game", - id: pinnedarray[i].id, - }) - .append( - $("").prop({ - src: pinnedarraynodes[0].src, - alt: pinnedarraynodes[0].alt, - class: "gameicon", - }) - ) - .append($("

").text(pinnedarraynodes[1].innerHTML)) - .append( - $("").prop({ - src: "img/star-fill.svg", - alt: "star", - class: "star", - id: "starred", - }) - ); - $("#pinned").append($element); - } - } else { - $(event.target).removeAttr("id"); - $(event.target).attr("src", "img/star.svg"); - $thisdiv = "#" + $(this).attr("id"); - $thisdiv = $thisdiv.replace(".", "\\."); - starred = Cookies.get("starred"); - starred = JSON.parse(starred); - ourindex = starred.indexOf($(this).attr("id")); - starred.splice(ourindex, 1); - Cookies.set("starred", JSON.stringify(starred)); - $("#pinned " + $thisdiv).remove(); - if ($("#pinned").is(":empty")) { - $("#pinnedmessage").show(); - } - $($thisdiv + " #starred").attr("src", "img/star.svg"); - $($thisdiv + " #starred").removeAttr("id"); - } - } - }); - $(document).on("click", "#game img .star", function (event) { - event.stopPropagation(); - $(this).prop({ class: "material-symbols-outlined fill" }); - }); -} - -function redirectGame(dir) { - window.location.href = window.location.origin + "/semag/" + dir + "/index.html"; -} -function dynamicSort(property) { - var sortOrder = 1; - - if (property[0] === "-") { - sortOrder = -1; - property = property.substr(1); - } - return function (a, b) { - if (sortOrder == -1) { - return b[property].localeCompare(a[property]); - } else { - return a[property].localeCompare(b[property]); - } - }; -} - -function selectRandomGame() { - redirectGame(gamelist[Math.floor(Math.random() * gamelist.length - 1)].directory); -} - -let viewrecommended = 0; -function recommendedGames() { - if (viewrecommended == 0) { - $("#games .game").hide(); - $("#games .game").each(function () { - if ($(this).attr("recommended")) { - $(this).show(); - } - }); - $("#recommend").text("Click to view all games again!"); - viewrecommended = 1; - } else { - $("#games .game").hide(); - $("#games .game").show(); - viewrecommended = 0; - $("#recommend").text("Click to view recommended games!"); - } -} +function starEvent(e) { + let game = e.target.parentNode.parentNode.getAttribute("data-target"); + starredGames = JSON.parse(localStorage.getItem("selenite.starred") || '[]'); + if(starredGames.indexOf(game) == -1) { + starredGames.push(game); + starredGames.sort(); + if(starredGames.length > 0) { + document.getElementById("starredHeader").style.display = "block"; + } else { + document.getElementById("starredHeader").style.display = "none"; + } + localStorage.setItem("selenite.starred", JSON.stringify(starredGames)); + e.target.src = "/img/star-fill.svg"; + starredgames.innerHTML = ""; + starredGames.forEach((e) => { + let element = document.querySelector(`#games game[data-target='${e}']`); + let newElement = element.cloneNode(true); + document.getElementById("starredgames").appendChild(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${newElement.childNodes[1].childNodes[0].innerText}&dir=${newElement.getAttribute("data-target")}&img=${newElement.getAttribute("data-image")}&type=g` + }); + }) + } else { + starredGames.splice(starredGames.indexOf(game), 1); + document.querySelectorAll(`game[data-target='${game}'] #star`).forEach((e) => { + e.src = "/img/star.svg"; + }) + if(starredGames.length > 0) { + document.getElementById("starredHeader").style.display = "block"; + } else { + document.getElementById("starredHeader").style.display = "none"; + } + localStorage.setItem("selenite.starred", JSON.stringify(starredGames)); + starredgames.innerHTML = ""; + starredGames.forEach((e) => { + let element = document.querySelector(`#games game[data-target='${e}']`); + let newElement = element.cloneNode(true); + document.getElementById("starredgames").appendChild(newElement); + newElement.addEventListener("click", ()=>{ + location.href=`/loader.html?title=${newElement.childNodes[1].childNodes[0].innerText}&dir=${newElement.getAttribute("data-target")}&img=${newElement.getAttribute("data-image")}&type=g` + }); + }) + } + document.querySelectorAll("#starredgames #star").forEach((e) => { + e.addEventListener("click", (e) => { + e.preventDefault(); + e.stopPropagation(); + starEvent(e); + }) + }) +} \ No newline at end of file diff --git a/js/katamari.js b/js/katamari.js deleted file mode 100644 index b92b36d..0000000 --- a/js/katamari.js +++ /dev/null @@ -1,836 +0,0 @@ -/* -Copyright Alex Leone, David Nufer, David Truong, 2011-03-11. kathack.com - -javascript:var i,s,ss=['http://kathack.com/js/kh.js','http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js'];for(i=0;i!=ss.length;i++){s=document.createElement('script');s.src=ss[i];document.body.appendChild(s);}void(0); - -*/ -var script = document.createElement('script'); -script.src = 'https://code.jquery.com/jquery-3.4.1.min.js'; -script.type = 'text/javascript'; -document.getElementsByTagName('head')[0].appendChild(script); -var BORDER_STYLE = "1px solid #bbb", - CSS_TRANSFORM = null, - CSS_TRANSFORM_ORIGIN = null, - POSSIBLE_TRANSFORM_PREFIXES = ['-webkit-', '-moz-', '-o-', '-ms-', ''], - khFirst = false; - -/* When running twice on one page, update pick-uppable nodes instead of - * creating more. - */ -if (!window.khNodes) { - khFirst = true; - window.khNodes = new StickyNodes(); -} - -function getCssTransform() { - var i, d = document.createElement('div'), pre; - for (i = 0; i < POSSIBLE_TRANSFORM_PREFIXES.length; i++) { - pre = POSSIBLE_TRANSFORM_PREFIXES[i]; - d.style.setProperty(pre + 'transform', 'rotate(1rad) scaleX(2)', null); - if (d.style.getPropertyValue(pre + 'transform')) { - CSS_TRANSFORM = pre + 'transform'; - CSS_TRANSFORM_ORIGIN = pre + 'transform-origin'; - return; - } - } - alert("Your browser doesn't support CSS tranforms!"); - throw "Your browser doesn't support CSS tranforms!"; -} -getCssTransform(); - -/** - * Returns true if the circle intersects the element rectangle. - * 0 | 1 | 2 - * ------------------ - * 3 | 4 | 5 - * ------------------ - * 6 | 7 | 9 - */ -function circleGridObjInt(cx, cy, cr, cr2, go) { - var dx, dy; - if (cx < go.left) { - dx = go.left - cx; - if (cy < go.top) { /* zone 0. */ - dy = go.top - cy; - return ((dx * dx + dy * dy) <= cr2); - } else if (cy <= go.bottom) { /* zone 3. */ - return (dx <= cr); - } else { /* zone 6. */ - dy = cy - go.bottom; - return ((dx * dx + dy * dy) <= cr2); - } - } else if (cx <= go.right) { - if (cy < go.top) { /* zone 1. */ - return ((go.top - cy) <= cr); - } else if (cy <= go.bottom) { /* zone 4. */ - return true; - } else { /* zone 7. */ - return ((cy - go.bottom) <= cr); - } - } else { - dx = cx - go.right; - if (cy < go.top) { /* zone 2. */ - dy = go.top - cy; - return ((dx * dx + dy * dy) <= cr2); - } else if (cy <= go.bottom) { /* zone 5. */ - return (dx <= cr); - } else { /* zone 9. */ - dy = cy - go.bottom; - return ((dx * dx + dy * dy) <= cr2); - } - } -} - -/** - * Returns [x,y] where the rectangle is closest to (cx, cy). - * 0 | 1 | 2 - * ------------------ - * 3 | 4 | 5 - * ------------------ - * 6 | 7 | 9 - */ -function getClosestPoint(cx, cy, go) { - var dx, dy; - if (cx < go.left) { - dx = go.left - cx; - if (cy < go.top) { /* zone 0. */ - return [go.left, go.top]; - } else if (cy <= go.bottom) { /* zone 3. */ - return [go.left, cy]; - } else { /* zone 6. */ - return [go.left, go.bottom]; - } - } else if (cx <= go.right) { - if (cy < go.top) { /* zone 1. */ - return [cx, go.top]; - } else if (cy <= go.bottom) { /* zone 4. */ - return [cx, cy]; - } else { /* zone 7. */ - return [cx, go.bottom]; - } - } else { - dx = cx - go.right; - if (cy < go.top) { /* zone 2. */ - return [go.right, go.top]; - } else if (cy <= go.bottom) { /* zone 5. */ - return [go.right, cy]; - } else { /* zone 9. */ - return [go.right, go.bottom]; - } - } -} - -/** - * Returns the "volume" of the grid object. - */ -function gridObjVol(go) { - return go.w * go.h * Math.min(go.w, go.h); -} - -function StickyNodes() { - var domNodes = [], - grid = [], - GRIDX = 100, - GRIDY = 100, - REPLACE_WORDS_IN = { - a: 1, b: 1, big: 1, body: 1, cite:1, code: 1, dd: 1, div: 1, - dt: 1, em: 1, font: 1, h1: 1, h2: 1, h3: 1, h4: 1, h5: 1, h6: 1, - i: 1, label: 1, legend: 1, li: 1, p: 1, pre: 1, small: 1, - span: 1, strong: 1, sub: 1, sup: 1, td: 1, th: 1, tt: 1 - }; - - function addDomNode(el) { - if (el !== undefined && el !== null) { - el.khIgnore = true; - el.style.border = BORDER_STYLE; - domNodes.push(el); - } - } - this.addDomNode = addDomNode; - - this.addWords = function (el) { - var textEls = []; - - function shouldAddChildren(el) { - return el.tagName && REPLACE_WORDS_IN[el.tagName.toLowerCase()]; - } - - function buildTextEls(el, shouldAdd) { - var i, len; - if (shouldAdd && el.nodeType === Node.TEXT_NODE && - el.nodeValue.trim().length > 0) { - textEls.push(el); - return; - } - if (!el.childNodes || el.khIgnore) { - return; - } - shouldAdd = shouldAddChildren(el); - for (i = 0, len = el.childNodes.length; i < len; i++) { - buildTextEls(el.childNodes[i], shouldAdd); - } - } - - function wordsToSpans(textEl) { - var p = textEl.parentNode, - words = textEl.nodeValue.split(/\s+/), - ws = textEl.nodeValue.split(/\S+/), - i, n, len = Math.max(words.length, ws.length); - /* preserve whitespace for pre tags. */ - if (ws.length > 0 && ws[0].length === 0) { - ws.shift(); - } - for (i = 0; i < len; i++) { - if (i < words.length && words[i].length > 0) { - n = document.createElement('span'); - n.innerHTML = words[i]; - p.insertBefore(n, textEl); - addDomNode(n); - } - if (i < ws.length && ws[i].length > 0) { - n = document.createTextNode(ws[i]); - p.insertBefore(n, textEl); - } - } - p.removeChild(textEl); - } - - buildTextEls(el, shouldAddChildren(el)); - textEls.map(wordsToSpans); - }; - - /* includes el. */ - this.addTagNames = function (el, tagNames) { - var tname = el.tagName && el.tagName.toLowerCase(), - i, j, els, len; - if (el.khIgnore) { - return; - } - if (tagNames.indexOf(tname) !== -1) { - addDomNode(el); - } - if (!el.getElementsByTagName) { - return; - } - for (i = 0; i < tagNames.length; i++) { - els = el.getElementsByTagName(tagNames[i]); - for (j = 0, len = els.length; j < len; j++) { - if (!els[j].khIgnore) { - addDomNode(els[j]); - } - } - } - }; - - this.finalize = function (docW, docH) { - var xi, yi, i, len, startXI, startYI, el, go, off, w, h, - endXI = Math.floor(docW / GRIDX) + 1, - endYI = Math.floor(docH / GRIDY) + 1; - /* initialize grid. */ - grid = new Array(endXI); - for (xi = 0; xi < endXI; xi++) { - grid[xi] = new Array(endYI); - } - /* add nodes into grid. */ - for (i = 0, len = domNodes.length; i < len; i++) { - el = domNodes[i]; - if (el.khPicked) { - continue; - } - off = jQuery(el).offset(); - w = jQuery(el).width(); - h = jQuery(el).height(); - go = { - el: domNodes[i], /* dom element. */ - left: off.left, - right: off.left + w, - top: off.top, - bottom: off.top + h, - w: w, - h: h, - x: off.left + (w / 2), /* center x. */ - y: off.top + (h / 2), /* center y. */ - diag: Math.sqrt(((w * w) + (h * h)) / 4), /* center to corner */ - - /* these are for removing ourselves from the grid. */ - arrs: [], /* which arrays we're in (grid[x][y]). */ - idxs: [] /* what indexes. */ - }; - startXI = Math.floor(go.left / GRIDX); - startYI = Math.floor(go.top / GRIDY); - endXI = Math.floor((go.left + go.w) / GRIDX) + 1; - endYI = Math.floor((go.top + go.h) / GRIDY) + 1; - for (xi = startXI; xi < endXI; xi++) { - for (yi = startYI; yi < endYI; yi++) { - if (grid[xi] === undefined) { - grid[xi] = []; - } - if (grid[xi][yi] === undefined) { - grid[xi][yi] = [go]; - } else { - grid[xi][yi].push(go); - } - go.arrs.push(grid[xi][yi]); - go.idxs.push(grid[xi][yi].length - 1); - } - } - } - }; - - function removeGridObj(go) { - var i; - for (i = 0; i < go.arrs.length; i++) { - go.arrs[i][go.idxs[i]] = undefined; - } - go.el.style.visibility = "hidden"; - go.el.khPicked = true; - delete go.arrs; - delete go.idxs; - } - - /** - * cb(gridObj) -> boolean true if the object should be removed. - */ - this.removeIntersecting = function (x, y, r, cb) { - var xi, yi, arr, i, r2 = r * r, go, - startXI = Math.floor((x - r) / GRIDX), - startYI = Math.floor((y - r) / GRIDY), - endXI = Math.floor((x + r) / GRIDX) + 1, - endYI = Math.floor((y + r) / GRIDY) + 1; - for (xi = startXI; xi < endXI; xi++) { - if (grid[xi] === undefined) { - continue; - } - for (yi = startYI; yi < endYI; yi++) { - arr = grid[xi][yi]; - if (arr === undefined) { - continue; - } - for (i = 0; i < arr.length; i++) { - go = arr[i]; - if (go !== undefined && - circleGridObjInt(x, y, r, r2, go) && - cb(go)) { - removeGridObj(go); - } - } - } - } - }; -} - -function PlayerBall(parentNode, stickyNodes, ballOpts, sounds) { - var x = 300, y = 300, - vx = 0, vy = 0, - radius = 20, - lastR = 0, /**< optimization: only resize when necessary. */ - docW = 10000, docH = 10000, - - attached = [], - attachedDiv, /* div to put attached nodes into. */ - canvas_el, - canvas_ctx, - color = ballOpts.color, - - accelTargetX = 0, accelTargetY = 0, - accel = false, - - VOL_MULT = ballOpts.VOL_MULT, - MAX_ATTACHED_VISIBLE = ballOpts.MAX_ATTACHED_VISIBLE, - CHECK_VOLS = ballOpts.CHECK_VOLS, - - /** - * which direction the ball is facing in the xy axis, in radians. - * th: 0 is facing dead East - * th: 1/2 PI is facing dead South - * note that this is like regular th on a graph with y inverted. - * Same rotation as css transform. - */ - th = 0, - - /** - * Ball angle in the rotation axis / z plane, in radians. - * phi: 0 is pointing in the direction the ball is rolling. - * phi: 1/2 PI is pointing straight up (out of the page). - * note that forward rotation means phi -= 0.1. - */ - phi = 0; - - this.init = function () { - canvas_el = document.createElement('canvas'); - canvas_el.width = radius * 2; - canvas_el.height = radius * 2; - canvas_el.style.cssText = 'position: absolute; z-index: 500;'; - parentNode.appendChild(canvas_el); - canvas_ctx = canvas_el.getContext('2d'); - - attachedDiv = document.createElement('div'); - parentNode.appendChild(attachedDiv); - }; - - this.setRadius = function (r) { - radius = r; - }; - - this.getState = function () { - return { - x: x, - y: y, - vx: vx, - vy: vy, - radius: radius, - th: th, - phi: phi, - }; - }; - - this.setState = function (s) { - x = s.x; - y = s.y; - vx = s.vx; - vy = s.vy; - radius = s.radius; - th = s.th; - phi = s.phi; - }; - - this.setXY = function (sx, sy) { - x = sx; - y = sy; - }; - - this.setTh = function (sth) { - th = sth; - }; - - this.setPhi = function (sphi) { - phi = sphi; - }; - - this.setColor = function (c) { - color = c; - }; - - this.setDocSize = function (w, h) { - docW = w; - docH = h; - }; - - this.setAccel = function (bool) { - accel = bool; - }; - - this.setAccelTarget = function (tx, ty) { - accelTargetX = tx; - accelTargetY = ty; - }; - - function getVol() { - return (4 * Math.PI * radius * radius * radius / 3); - } - - function grow(go) { - var newVol = getVol() + gridObjVol(go) * VOL_MULT; - radius = Math.pow(newVol * 3 / (4 * Math.PI), 1 / 3); - } - - function attachGridObj(go) { - var attXY = getClosestPoint(x, y, go), - dx = attXY[0] - x, - dy = attXY[1] - y, - r = Math.sqrt(dx * dx + dy * dy), - attTh = 0 - th, - offLeft = attXY[0] - go.left, - offTop = attXY[1] - go.top, - offTh = Math.atan2(dy, dx) - th, - attX = r * Math.cos(offTh), - attY = r * Math.sin(offTh), - el = go.el.cloneNode(true), - go_jel = jQuery(go.el), - newAtt = { - el: el, - attX: attX, - attY: attY, - attT: 'translate(' + Math.round(attX) + 'px,' + - Math.round(attY) + 'px) ' + - 'rotate(' + attTh + 'rad)', - r: r, - offTh: offTh, - offPhi: 0 - phi, - diag: go.diag, - removeR: r + go.diag, - visible: false, - display: go_jel.css('display') - }; - attached.push(newAtt); - grow(go); - el.style.position = 'absolute'; - el.style.left = (-offLeft) + 'px'; - el.style.top = (-offTop) + 'px'; - el.style.setProperty(CSS_TRANSFORM_ORIGIN, - offLeft + 'px ' + offTop + 'px', null); - el.style.display = 'none'; - /* copy computed styles from old object. */ - el.style.color = go_jel.css('color'); - el.style.textDecoration = go_jel.css('text-decoration'); - el.style.fontSize = go_jel.css('font-size'); - el.style.fontWeight = go_jel.css('font-weight'); - el.khIgnore = true; - attachedDiv.appendChild(el); - if (sounds) { - sounds.play_pop(); - } - } - - /** - * @return true if the object should be removed from stickyNodes. - */ - function removeIntCb(go) { - if (CHECK_VOLS && gridObjVol(go) > getVol()) { - return false; - } - attachGridObj(go); - return true; - } - - this.updatePhysics = function () { - var oldX = x, oldY = y, dx, dy, - bounce = false, - accelTh; - if (accel) { - accelTh = Math.atan2(accelTargetY - y, accelTargetX - x); - vx += Math.cos(accelTh) * 0.5; - vy += Math.sin(accelTh) * 0.5; - } else { - vx *= 0.95; - vy *= 0.95; - } - x += vx; - y += vy; - /* bounce ball on edges of document. */ - if (x - radius < 0) { - bounce = true; - x = radius + 1; - vx = -vx; - } else if (x + radius > docW) { - bounce = true; - x = docW - radius - 1; - vx = -vx; - } - if (y - radius < 0) { - bounce = true; - y = radius + 1; - vy = -vy; - } else if (y + radius > docH) { - bounce = true; - y = docH - radius - 1; - vy = -vy; - } - if (vx !== 0 || vy !== 0) { - th = Math.atan2(vy, vx); - dx = x - oldX; - dy = y - oldY; - /* arclen = th * r, so th = arclen / r. */ - phi -= Math.sqrt(dx * dx + dy * dy) / radius; - } - stickyNodes.removeIntersecting(x, y, radius, removeIntCb); - this.draw(); - if (bounce && sounds) { - sounds.play_bounce(); - } - }; - - function drawBall() { - var sx1, sy1, sx2, sy2, dx, dy, i, pct1, pct2, z1, z2; - /* move/resize canvas element. */ - canvas_el.style.left = (x - radius) + 'px'; - canvas_el.style.top = (y - radius) + 'px'; - if (radius != lastR) { - canvas_el.width = 2 * radius + 1; - canvas_el.height = 2 * radius + 1; - lastR = radius; - } - /* draw white circle. */ - canvas_ctx.clearRect(0, 0, 2 * radius, 2 * radius); - canvas_ctx.fillStyle = "#fff"; - canvas_ctx.beginPath(); - canvas_ctx.arc(radius, radius, radius - 1, 0, Math.PI * 2, true); - canvas_ctx.fill(); - /* draw outer border. */ - canvas_ctx.strokeStyle = color; - canvas_ctx.beginPath(); - canvas_ctx.arc(radius, radius, radius - 1, 0, Math.PI * 2, true); - canvas_ctx.stroke(); - /* draw stripes. */ - canvas_ctx.fillStyle = color; - sx1 = radius + radius * Math.cos(th + Math.PI / 16); - sy1 = radius + radius * Math.sin(th + Math.PI / 16); - sx2 = radius + radius * Math.cos(th - Math.PI / 16); - sy2 = radius + radius * Math.sin(th - Math.PI / 16); - dx = (radius + radius * Math.cos(th + Math.PI * 15 / 16)) - sx1; - dy = (radius + radius * Math.sin(th + Math.PI * 15 / 16)) - sy1; - for (i = 0; i < Math.PI * 2; i += Math.PI / 7) { - pct1 = (-Math.cos(phi + i) + 1) / 2; - pct2 = (-Math.cos(phi + i + Math.PI / 32) + 1) / 2; - z1 = Math.sin(phi + i); - z2 = Math.sin(phi + i + Math.PI / 32); - if (z1 > 0 && z2 > 0) { - canvas_ctx.beginPath(); - canvas_ctx.moveTo(sx1 + pct1 * dx, sy1 + pct1 * dy); - canvas_ctx.lineTo(sx1 + pct2 * dx, sy1 + pct2 * dy); - canvas_ctx.lineTo(sx2 + pct2 * dx, sy2 + pct2 * dy); - canvas_ctx.lineTo(sx2 + pct1 * dx, sy2 + pct1 * dy); - canvas_ctx.fill(); - } - } - } - - /** - * @return true if the attached object is roughly visible. - */ - function drawAttached(att) { - var oth = th + att.offTh, - ophi = phi + att.offPhi, - ox = att.r * Math.cos(oth), - oy = att.r * Math.sin(oth), - dx = (att.r * Math.cos((th - att.offTh) + Math.PI)) - ox, - dy = (att.r * Math.sin((th - att.offTh) + Math.PI)) - oy, - pct = (-Math.cos(ophi) + 1) / 2, - cx = ox + pct * dx, - cy = oy + pct * dy, - oz = att.r * Math.sin(ophi); - if (oz < 0 && Math.sqrt(cx * cx + cy * cy) + att.diag < radius) { - /* hidden behind circle. */ - if (att.visible) { - att.visible = false; - att.el.style.display = "none"; - } - return false; - } - /* attached node is visible. */ - if (!att.visible) { - att.visible = true; - att.el.style.display = att.display; - } - //att.el.style.zIndex = 500 + Math.round(oz); - att.el.style.zIndex = (oz > 0)? 501 : 499; - att.el.style.setProperty( - CSS_TRANSFORM, - 'translate(' + x + 'px,' + y + 'px) ' + - 'rotate(' + th + 'rad) ' + - 'scaleX(' + Math.cos(ophi) + ') ' + - att.attT, null); - return true; - } - - function onAttachedRemoved(att) { - attachedDiv.removeChild(att.el); - delete att.el; - } - - this.draw = function () { - var i, att, numAttachedVisible = 0; - drawBall(); - for (i = attached.length; --i >= 0;) { - att = attached[i]; - if (att.removeR < radius) { - attached.splice(i, 1).map(onAttachedRemoved); - } else if (drawAttached(att)) { - if (++numAttachedVisible > MAX_ATTACHED_VISIBLE) { - /* remove older items and stop. */ - attached.splice(0, i).map(onAttachedRemoved); - break; - } - } - } - }; -} - -function preventDefault(event) { - event.preventDefault(); - event.returnValue = false; - return false; -} - -function Game(gameDiv, stickyNodes, ballOpts) { - var stickyNodes, player1, physicsInterval, resizeInterval, listeners = []; - player1 = new PlayerBall(gameDiv, stickyNodes, ballOpts, false); - player1.init(); - player1.setXY(300, 300); - window.scrollTo(0, 200); - - function on_resize() { - player1.setDocSize(jQuery(document).width() - 5, - jQuery(document).height() - 5); - } - on_resize(); - - /* touch events - always on? */ - document.addEventListener('touchstart', function (event) { - if (event.touches.length === 1) { - player1.setAccel(true); - return preventDefault(event); - } - }, true); - document.addEventListener('touchmove', function (event) { - player1.setAccelTarget(event.touches[0].pageX, - event.touches[0].pageY); - }, true); - document.addEventListener('touchend', function (event) { - if (event.touches.length === 0) { - player1.setAccel(false); - return preventDefault(event); - } - }, true); - - if (ballOpts.MOUSEB !== -5) { - /* mouse buttons */ - document.addEventListener('mousemove', function (event) { - player1.setAccelTarget(event.pageX, event.pageY); - }, true); - document.addEventListener('mousedown', function (event) { - if (event.button === ballOpts.MOUSEB) { - player1.setAccel(true); - return preventDefault(event); - } - }, true); - document.addEventListener('mouseup', function (event) { - if (event.button === ballOpts.MOUSEB) { - player1.setAccel(false); - return preventDefault(event); - } - }, true); - - if (ballOpts.MOUSEB === 0) { - /* block click events. */ - document.addEventListener('click', function (event) { - if (event.button === 0) { - return preventDefault(event); - } - }, true); - } else if (ballOpts.MOUSEB === 2) { - /* block right-click context menu. */ - document.addEventListener('contextmenu', preventDefault, true); - } - } - - physicsInterval = setInterval(function () { - player1.updatePhysics(); - }, 25); - resizeInterval = setInterval(on_resize, 1000); -} - -function whenAllLoaded(gameDiv, popup, stickyNodes) { - stickyNodes.finalize(jQuery(document).width(), jQuery(document).height()); - jQuery('#loadingp').empty(); - jQuery('').click(function () { - var game, bgmusic, ballOpts; - if (jQuery('#bgmusicc').attr('checked')) { - if (!(bgmusic = document.getElementById('khbgmusic'))) { - bgmusic = document.createElement('audio'); - bgmusic.id = 'khbgmusic'; - bgmusic.loop = 'loop'; - bgmusic.src = 'http://kathack.com/js/katamari.mp3'; - gameDiv.appendChild(bgmusic); - } - bgmusic.play(); - } - ballOpts = { - color: jQuery('#khcolor').val(), - VOL_MULT: parseFloat(jQuery('#vol_mult').val()), - MAX_ATTACHED_VISIBLE: parseInt(jQuery('#maxAtt').val(), 10), - CHECK_VOLS: (jQuery('#checkv').attr('checked'))? true : false, - MOUSEB: parseInt(jQuery('#mouseb').val(), 10) - }; - gameDiv.removeChild(popup); - game = new Game(gameDiv, stickyNodes, ballOpts); - }).appendTo('#loadingp'); -} - -function buildPopup(gameDiv) { - var d = document.createElement('div'), b; - d.style.cssText = '\ -position: fixed;\ -left: 50%;\ -top: 50%;\ -width: 400px;\ -margin-left:-200px;\ -margin-top:-150px;\ -border:1px solid black;\ -background-color:white;\ -color:black;\ -padding:20px;\ -font-size:13px;\ -text-align:left;\ -z-index:501;'; - d.innerHTML = '

\ -\ -Katamari!

\ -\ -

Controls: Hold down to control the ball!

\ -
\ -
\ -
\ -
\ -
\ -
\ -

Loading!

'; - gameDiv.appendChild(d); - d.getElementsByTagName('button')[0].addEventListener('click', function () { - gameDiv.removeChild(d); - }, true); - return d; -} - -function main() { - var gameDiv, checkInterval, stickyNodes, popup; - - gameDiv = document.createElement('div'); - gameDiv.khIgnore = true; - document.body.appendChild(gameDiv); - popup = buildPopup(gameDiv); - - /* setTimeout so that the popup displays before we freeze. */ - setTimeout(function () { - var i, len, el; - window.khNodes.addWords(document.body); - for (i = 0, len = document.body.childNodes.length; i < len; i++) { - el = document.body.childNodes[i]; - window.khNodes.addTagNames(el, [ - 'button', 'canvas', 'iframe', 'img', 'input', 'select', - 'textarea' - ]); - } - - checkInterval = setInterval(function () { - if (window.jQuery) { - clearInterval(checkInterval); - whenAllLoaded(gameDiv, popup, window.khNodes); - } - }, 100); - }, 0); -} - -if (!window.noMain) { - main(); -} \ No newline at end of file diff --git a/js/main.js b/js/main.js old mode 100644 new mode 100755 index 49862cd..17095c3 --- a/js/main.js +++ b/js/main.js @@ -1,164 +1,237 @@ -var interval; -document.addEventListener("DOMContentLoaded", function () { - if (localStorage.getItem("theme")) { - localStorage.setItem("selenite.theme", localStorage.getItem("theme")); - localStorage.removeItem("theme"); - } - if (localStorage.getItem("selenite.theme")) { - document.body.setAttribute("theme", localStorage.getItem("selenite.theme")); - } else { - document.body.setAttribute("theme", "main"); - } - if (document.querySelectorAll("[id=adcontainer]")) { - for (let i = 0; i < document.querySelectorAll("[id=adcontainer]").length; i++) { - if (Math.random() < 0.5 || localStorage.getItem("selenite.adblock") == "true") document.querySelectorAll("[id=adcontainer]")[i].innerHTML = ""; - } - } - const iconSetting = document.querySelector("input#discordIcon"); - const blockClose = document.querySelector("input#blockClose"); - const openBlank = document.getElementById("blank"); - const bgTheme = document.querySelector("input#bgTheme"); - // if (document.querySelector("widgetbot-crate")) { - // if (localStorage.getItem("selenite.discordIcon") == "true") { - // const widget = document.querySelector("widgetbot-crate"); - // widget.setAttribute("style", "display:none"); - // } - // } - if (document.querySelector("input#discordIcon")) { - if (localStorage.getItem("selenite.discordIcon") == "true") { - iconSetting.checked = true; - } - iconSetting.addEventListener("click", () => { - localStorage.setItem("selenite.discordIcon", iconSetting.checked); - }); - } - if (document.querySelector("input#blockClose")) { - if (localStorage.getItem("selenite.blockClose") == "true") { - blockClose.checked = true; - } - blockClose.addEventListener("click", () => { - localStorage.setItem("selenite.blockClose", blockClose.checked); - }); - } - if (document.querySelector("input#tabDisguise")) { - if (localStorage.getItem("selenite.tabDisguise") == "true") { - tabDisguise.checked = true; - } - tabDisguise.addEventListener("click", () => { - localStorage.setItem("selenite.tabDisguise", tabDisguise.checked); - }); - } - if (document.querySelector("input#bgTheme")) { - bgTheme.checked = true; - } - document.getElementById("blank").addEventListener("click", () => { - win = window.open(); - win.document.body.style.margin = "0"; - win.document.body.style.height = "100vh"; - html = ` -
`; - win.document.querySelector("html").innerHTML = html; - win.eval(`let selenite = document.getElementById("selenite");console.log(selenite);selenite.setAttribute("src", "${location.origin}");console.log(selenite);document.getElementById("goBack").addEventListener("click", function () {selenite.contentDocument.location.href = selenite.contentDocument.location.origin;});document.getElementById("reload").addEventListener("click", function () {selenite.contentDocument.location.href = selenite.contentDocument.location.href;})`); - location.href = "https://google.com"; - close(); +let sAlert = window.parent.sAlert; + +function setBackground() { + let randomNumbers = [100-Math.abs(Math.floor(Math.random() * 200) - 99), 100-Math.abs(Math.floor(Math.random() * 200) - 99)]; + document.body.style.setProperty("--gradient-x", randomNumbers[0] + "%"); + document.body.style.setProperty("--gradient-y", randomNumbers[1] + "%"); + setTimeout(setBackground, 30000) +} +function loadPJS() { + let div = document.createElement("div"); + div.id = "pjs"; + document.body.appendChild(div); + let script = document.createElement("script"); + script.src = "https://cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js"; + document.head.appendChild(script); + script.addEventListener("load", ()=>{ + particlesJS.load('pjs', "/js/particlesjs-config.json", ()=>{}); }); - if ($("#panicmode").length > 0) { - $("#panicmode").prop({ href: panicurl }); - } - if ($(".seleniteminified").length > 0) { - $.get("https://raw.githubusercontent.com/skysthelimitt/selenite-optimized/main/build/bookmark.txt", function (data) { - $(".seleniteminified").prop({ href: data }); - }); - $.get("https://raw.githubusercontent.com/car-axle-client/car-axle-client/v10/dist/build.js", function (data) { - $(".caraxle").prop({ href: `javascript:${encodeURI(data)}` }); - }); - } -}); -function setPanicMode() { - if (!$("#panic").val().startsWith("https")) { - document.cookie = "panicurl=https://" + $("#panic").val(); - return; - } - - document.cookie = "panicurl=" + $("#panic").val(); -} -function copyToClipboard(text) { - navigator.clipboard.writeText(text); - alert("Copied text!"); -} -function setTheme(theme) { - localStorage.setItem("selenite.theme", theme); - document.body.setAttribute("theme", theme); - if (theme != "custom") { - document.getElementById("customMenu").style.display = "none"; - document.body.style = ""; - } -} -function setPanicMode() { - if (!$("#panic").val().startsWith("https")) { - document.cookie = "panicurl=https://" + $("#panic").val(); - return; - } - document.cookie = "panicurl=" + $("#panic").val(); -} -function setPassword() { - localStorage.setItem("selenite.password", enc.encode(document.getElementById("pass").value)); -} -function delPassword() { - location.hash = ""; - localStorage.removeItem("selenite.passwordAtt"); - localStorage.removeItem("selenite.password"); } -$(document).ready(function () { - if (!window.location.href.startsWith("about:")) { - $("#webicon").attr("placeholder", window.location.href.replace(/\/[^\/]*$/, "/")); - } -}); -function loadScript(a, b) { - var c = document.createElement("script"); - (c.type = "text/javascript"), (c.src = a), (c.onload = b), document.head.appendChild(c); +function cursor() { + let cursor = document.createElement("div"); + cursor.style.width = "30px"; + cursor.style.height = "30px"; + cursor.style.backgroundColor = "var(--color-1)"; + cursor.style.position = "absolute"; + cursor.style.borderRadius = "100%"; + cursor.style.filter = "blur(50px)"; + cursor.style.transitionDuration = "0s"; + cursor.style.opacity = "1"; + cursor.style.pointerEvents = "none"; + document.body.appendChild(cursor); + document.addEventListener("mousemove", (e) => { + cursor.style.top = `${e.pageY - 15}px`; + cursor.style.left = `${e.pageX - 15}px`; + }) } -function toast(message, onclick) { - const toast = document.createElement("div"); - toast.setAttribute("id", "toast"); - console.log(message.time); - toast.innerHTML = `

${message.title}${message.time ? ` - ${timeAgo(new Date(message.time * 1000))}` : ""}

${message.message}

`; - toast.style.animation = "toastFade 6s"; - document.body.appendChild(toast); - if (onclick) { - toast.addEventListener("click", onclick); - toast.style.cursor = "pointer"; - } - setTimeout(() => { - toast.remove(); - }, 6000); -} -function timeAgo(input) { - const date = input instanceof Date ? input : new Date(input); - const formatter = new Intl.RelativeTimeFormat("en"); - const ranges = { - years: 3600 * 24 * 365, - months: 3600 * 24 * 30, - weeks: 3600 * 24 * 7, - days: 3600 * 24, - hours: 3600, - minutes: 60, - seconds: 1, - }; - const secondsElapsed = (date.getTime() - Date.now()) / 1000; - for (let key in ranges) { - if (ranges[key] < Math.abs(secondsElapsed)) { - const delta = secondsElapsed / ranges[key]; - return formatter.format(Math.round(delta), key); - } +function themes() { + document.body.setAttribute("theme", localStorage.getItem("selenite.theme") || "") + if(document.body.getAttribute("theme") == "custom") { + setTheme(JSON.parse(localStorage.getItem("selenite.customTheme"))) } } -let cookieConsentScript = document.createElement("script"); -cookieConsentScript.src = "/js/cookieConsent.js"; -document.head.appendChild(cookieConsentScript); -let cookieConsentStyle = document.createElement("link"); -cookieConsentStyle.href = "/js/cookieConsent.css"; -cookieConsentStyle.rel = "stylesheet"; -document.head.appendChild(cookieConsentStyle); \ No newline at end of file +function setTheme(arg) { + let theme = arg; + document.body.setAttribute("style", ` + --text-color: ${theme["text-color"]}; + --bg-1: ${theme["bg-1"]}; + --bg-2: ${theme["bg-2"]}; + --color-1: ${theme["color-1"]}; + --color-2: ${theme["color-2"]}; + --color-3: ${theme["color-3"]}; + --color-4: ${theme["color-4"]}; + `) +} +document.addEventListener("DOMContentLoaded", ()=>{ + if(!(localStorage.getItem("selenite.fast-mode") == 'true')) { + setBackground(); + loadPJS(); + cursor(); + } + if(localStorage.getItem("selenite.super-fast-mode") == 'true') { + document.body.setAttribute("fast", "") + } + themes(); +}) + +document.addEventListener("scroll", ()=>{ + document.getElementById("pjs").style.top = window.scrollY + "px"; +}) + + + +// var interval; +// document.addEventListener("DOMContentLoaded", function () { +// if (localStorage.getItem("theme")) { +// localStorage.setItem("selenite.theme", localStorage.getItem("theme")); +// localStorage.removeItem("theme"); +// } +// if (localStorage.getItem("selenite.theme")) { +// document.body.setAttribute("theme", localStorage.getItem("selenite.theme")); +// } else { +// document.body.setAttribute("theme", "main"); +// } +// if (document.querySelectorAll("[id=adcontainer]")) { +// for (let i = 0; i < document.querySelectorAll("[id=adcontainer]").length; i++) { +// if (Math.random() < 0.5 || localStorage.getItem("selenite.adblock") == "true") document.querySelectorAll("[id=adcontainer]")[i].innerHTML = ""; +// } +// } +// const iconSetting = document.querySelector("input#discordIcon"); +// const blockClose = document.querySelector("input#blockClose"); +// const openBlank = document.getElementById("blank"); +// const bgTheme = document.querySelector("input#bgTheme"); +// // if (document.querySelector("widgetbot-crate")) { +// // if (localStorage.getItem("selenite.discordIcon") == "true") { +// // const widget = document.querySelector("widgetbot-crate"); +// // widget.setAttribute("style", "display:none"); +// // } +// // } +// if (document.querySelector("input#discordIcon")) { +// if (localStorage.getItem("selenite.discordIcon") == "true") { +// iconSetting.checked = true; +// } +// iconSetting.addEventListener("click", () => { +// localStorage.setItem("selenite.discordIcon", iconSetting.checked); +// }); +// } +// if (document.querySelector("input#blockClose")) { +// if (localStorage.getItem("selenite.blockClose") == "true") { +// blockClose.checked = true; +// } +// blockClose.addEventListener("click", () => { +// localStorage.setItem("selenite.blockClose", blockClose.checked); +// }); +// } +// if (document.querySelector("input#tabDisguise")) { +// if (localStorage.getItem("selenite.tabDisguise") == "true") { +// tabDisguise.checked = true; +// } +// tabDisguise.addEventListener("click", () => { +// localStorage.setItem("selenite.tabDisguise", tabDisguise.checked); +// }); +// } +// if (document.querySelector("input#bgTheme")) { +// bgTheme.checked = true; +// } +// document.getElementById("blank").addEventListener("click", () => { +// win = window.open(); +// win.document.body.style.margin = "0"; +// win.document.body.style.height = "100vh"; +// html = ` +//
`; +// win.document.querySelector("html").innerHTML = html; +// win.eval(`let selenite = document.getElementById("selenite");console.log(selenite);selenite.setAttribute("src", "${location.origin}");console.log(selenite);document.getElementById("goBack").addEventListener("click", function () {selenite.contentDocument.location.href = selenite.contentDocument.location.origin;});document.getElementById("reload").addEventListener("click", function () {selenite.contentDocument.location.href = selenite.contentDocument.location.href;})`); +// location.href = "https://google.com"; +// close(); +// }); +// if ($("#panicmode").length > 0) { +// $("#panicmode").prop({ href: panicurl }); +// } +// if ($(".seleniteminified").length > 0) { +// $.get("https://raw.githubusercontent.com/skysthelimitt/selenite-optimized/main/build/bookmark.txt", function (data) { +// $(".seleniteminified").prop({ href: data }); +// }); +// $.get("https://raw.githubusercontent.com/car-axle-client/car-axle-client/v10/dist/build.js", function (data) { +// $(".caraxle").prop({ href: `javascript:${encodeURI(data)}` }); +// }); +// } +// }); +// function setPanicMode() { +// if (!$("#panic").val().startsWith("https")) { +// document.cookie = "panicurl=https://" + $("#panic").val(); +// return; +// } + +// document.cookie = "panicurl=" + $("#panic").val(); +// } +// function copyToClipboard(text) { +// navigator.clipboard.writeText(text); +// alert("Copied text!"); +// } +// function setTheme(theme) { +// localStorage.setItem("selenite.theme", theme); +// document.body.setAttribute("theme", theme); +// if (theme != "custom") { +// document.getElementById("customMenu").style.display = "none"; +// document.body.style = ""; +// } +// } +// function setPanicMode() { +// if (!$("#panic").val().startsWith("https")) { +// document.cookie = "panicurl=https://" + $("#panic").val(); +// return; +// } +// document.cookie = "panicurl=" + $("#panic").val(); +// } +// function setPassword() { +// localStorage.setItem("selenite.password", enc.encode(document.getElementById("pass").value)); +// } +// function delPassword() { +// location.hash = ""; +// localStorage.removeItem("selenite.passwordAtt"); +// localStorage.removeItem("selenite.password"); +// } + +// $(document).ready(function () { +// if (!window.location.href.startsWith("about:")) { +// $("#webicon").attr("placeholder", window.location.href.replace(/\/[^\/]*$/, "/")); +// } +// }); +// function loadScript(a, b) { +// var c = document.createElement("script"); +// (c.type = "text/javascript"), (c.src = a), (c.onload = b), document.head.appendChild(c); +// } +// function toast(message, onclick) { +// const toast = document.createElement("div"); +// toast.setAttribute("id", "toast"); +// console.log(message.time); +// toast.innerHTML = `

${message.title}${message.time ? ` - ${timeAgo(new Date(message.time * 1000))}` : ""}

${message.message}

`; +// toast.style.animation = "toastFade 6s"; +// document.body.appendChild(toast); +// if (onclick) { +// toast.addEventListener("click", onclick); +// toast.style.cursor = "pointer"; +// } +// setTimeout(() => { +// toast.remove(); +// }, 6000); +// } +// function timeAgo(input) { +// const date = input instanceof Date ? input : new Date(input); +// const formatter = new Intl.RelativeTimeFormat("en"); +// const ranges = { +// years: 3600 * 24 * 365, +// months: 3600 * 24 * 30, +// weeks: 3600 * 24 * 7, +// days: 3600 * 24, +// hours: 3600, +// minutes: 60, +// seconds: 1, +// }; +// const secondsElapsed = (date.getTime() - Date.now()) / 1000; +// for (let key in ranges) { +// if (ranges[key] < Math.abs(secondsElapsed)) { +// const delta = secondsElapsed / ranges[key]; +// return formatter.format(Math.round(delta), key); +// } +// } +// } +// let cookieConsentScript = document.createElement("script"); +// cookieConsentScript.src = "/js/cookieConsent.js"; +// document.head.appendChild(cookieConsentScript); +// let cookieConsentStyle = document.createElement("link"); +// cookieConsentStyle.href = "/js/cookieConsent.css"; +// cookieConsentStyle.rel = "stylesheet"; +// document.head.appendChild(cookieConsentStyle); \ No newline at end of file diff --git a/js/oldstuff.js b/js/oldstuff.js old mode 100644 new mode 100755 diff --git a/js/particlesjs-config.json b/js/particlesjs-config.json new file mode 100755 index 0000000..ba03b94 --- /dev/null +++ b/js/particlesjs-config.json @@ -0,0 +1,105 @@ +{ + "particles": { + "number": { + "value": 30, + "density": { + "enable": true, + "value_area": 800 + } + }, + "color": { + "value": "#ffffff" + }, + "shape": { + "type": "circle", + "stroke": { + "width": 0, + "color": "#000000" + }, + "polygon": { + "nb_sides": 1 + } + }, + "opacity": { + "value": 1, + "random": true, + "anim": { + "enable": true, + "speed": 0.4, + "opacity_min": 0, + "sync": false + } + }, + "size": { + "value": 5, + "random": true, + "anim": { + "enable": true, + "speed": 0.4, + "size_min": 0.3, + "sync": false + } + }, + "line_linked": { + "enable": false, + "distance": 150, + "color": "#ffffff", + "opacity": 0.4, + "width": 1 + }, + "move": { + "enable": true, + "speed": 0.4, + "direction": "bottom", + "random": true, + "straight": false, + "out_mode": "out", + "bounce": false, + "attract": { + "enable": true, + "rotateX": 5000, + "rotateY": 5000 + } + } + }, + "interactivity": { + "detect_on": "window", + "events": { + "onhover": { + "enable": true, + "mode": "grab" + }, + "onclick": { + "enable": false, + "mode": "repulse" + }, + "resize": true + }, + "modes": { + "grab": { + "distance": 200, + "line_linked": { + "opacity": 0.3 + } + }, + "bubble": { + "distance": 250, + "size": 0, + "duration": 2, + "opacity": 0, + "speed": 3 + }, + "repulse": { + "distance": 50, + "duration": 1 + }, + "push": { + "particles_nb": 4 + }, + "remove": { + "particles_nb": 2 + } + } + }, + "retina_detect": true +} \ No newline at end of file diff --git a/js/savedownload.js b/js/savedownload.js old mode 100644 new mode 100755 diff --git a/js/search.js b/js/search.js.old old mode 100644 new mode 100755 similarity index 100% rename from js/search.js rename to js/search.js.old diff --git a/js/themes.js b/js/themes.js.old old mode 100644 new mode 100755 similarity index 100% rename from js/themes.js rename to js/themes.js.old diff --git a/js/ultimatetabcloak.js b/js/ultimatetabcloak.js old mode 100644 new mode 100755 diff --git a/js/uploaddownload.js b/js/uploaddownload.js deleted file mode 100644 index a3d291c..0000000 --- a/js/uploaddownload.js +++ /dev/null @@ -1,48 +0,0 @@ -var s = document.createElement("script"); -function getMainSaveFromUpload(data) { - data = CryptoJS.AES.decrypt(data, "egamepass").toString(CryptoJS.enc.Utf8); - - // Parse the decrypted data as JSON - var mainSave = JSON.parse(atob(data)); - var mainLocalStorageSave = JSON.parse(atob(mainSave.localStorage)); - var cookiesSave = atob(mainSave.cookies); - - // Set the items in localStorage using the uploaded data - for (let item of mainLocalStorageSave) { - localStorage.setItem(item[0], item[1]); - } - - // Set the cookies using the uploaded data - document.cookie = cookiesSave; -} - -// Function to handle the file upload -function uploadMainSave() { - document.body.innerHTML += - ''; - var hiddenUpload = document.querySelector(".hiddenUpload"); - - // Listen for the change event on the file input element - hiddenUpload.addEventListener("change", function (e) { - var files = e.target.files; - var file = files[0]; - if (!file) { - return; - } - - // Read the contents of the uploaded file as text and call getMainSaveFromUpload with the result - var reader = new FileReader(); - - reader.onload = function (e) { - getMainSaveFromUpload(e.target.result); - }; - - reader.readAsText(file); - }); -} -(s.src = - "https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js"), - document.head.appendChild(s); -s.onload = function () { - uploadMainSave(); -}; \ No newline at end of file diff --git a/js/widget.js b/js/widget.js deleted file mode 100644 index f934d2a..0000000 --- a/js/widget.js +++ /dev/null @@ -1,25 +0,0 @@ -let firstLoadWidget = 1; -let widgetOpen = 0; -document.addEventListener("DOMContentLoaded", () => { - let button = document.createElement("button"); - button.setAttribute("id", "discord"); - document.body.appendChild(button); - button.addEventListener("click", () => { - if(firstLoadWidget) { - toast({ title: "Do you want to load Discord?", message: "This may be blocked in certain schools.\nClick here to load Discord." }, loadWidget); - } - }) -}) - -function loadWidget() { - if(firstLoadWidget) { - firstLoadWidget = 0; - loadScript("https://cdn.jsdelivr.net/npm/@widgetbot/crate@3", loadCrate); - } -} -function loadCrate() { - new Crate({server: '1148719137238040606',channel: '1173731814196645909', color: "#00000000", glyph: ["data:;base64,=", "100%"]}); - crate.toggle(true); - let element = document.querySelector('[aria-label="Discord chat embed"]'); - element.remove(); -} \ No newline at end of file diff --git a/loader.html b/loader.html old mode 100644 new mode 100755 index a84c4ad..653695f --- a/loader.html +++ b/loader.html @@ -9,69 +9,70 @@ - - - - - + + + Selenite - -
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - -
-
-
- -
- -

Selenite

-
- -
-
+ +
+ +

Selenite

+
+ + + +
-
- +
diff --git a/manifest.json b/manifest.json old mode 100644 new mode 100755 diff --git a/new selenite.svg b/new selenite.svg old mode 100644 new mode 100755 diff --git a/package.json b/package.json deleted file mode 100644 index d5bf155..0000000 --- a/package.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "name": "Bigfoot Games", - "version": "1.0.0", - "scripts": { - "start": "node index.js" - }, - "dependencies": { - "express": "^4.17.1" - } -} diff --git a/profile.html b/profile.html new file mode 100755 index 0000000..dacbb09 --- /dev/null +++ b/profile.html @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ name }}'s Profile | Selenite + + + + + +
+ +
+

{{ name }}

+

/u/{{ username }}

+
{{ badges }}
+
+ +

Joined {{ join_date }}

+

Last online {{ online_time }}

+
+
+
+

About Me

+

{{ about }}

+
+ + diff --git a/projects.html b/projects.html old mode 100644 new mode 100755 index ce7eb50..177c9a5 --- a/projects.html +++ b/projects.html @@ -12,12 +12,13 @@ - - + + + @@ -31,82 +32,17 @@ crossorigin="anonymous"> - -
- -
-
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - - -
-
- - - -
- - - - -
-
- - -
- -

Starred Games

-

Star some games for things to show up here!

-
- -

All Games

+

xx games loaded..

+

starred games

+
+

top games

+
+

all games

-
- Add Game logo -

Suggest a game!

-
-

games loading..

-

games not loading? click ctrl + shift + r

- +

games loading..

+

nothing was found! try a new search query.

-
-
- - - diff --git a/quotes.json b/quotes.json new file mode 100644 index 0000000..c743686 --- /dev/null +++ b/quotes.json @@ -0,0 +1,107 @@ +[ + "pay attention during school", + "yall playing games while im making the website ur using", + "Hello!", + "Lorem ipsum dolor sit amet, adipiscing consequat adipiscing sit amet. In tortor dolor, sollicitudin quis urna vitae, rutrum selecrelico dolor. Ut facilisis ornare lacus, ut dictum felis aliquam ut. Omnino interdum fit cum cura. Non est aequum, non solum, sed nec refert quis sit terra. Sed vestibulum a tellus non semper. Aliquam a neque euismod dolor dapibus aliquet ultricies ut nibh. Sed eget auctor ante. Aliquam dictum volutpat vestibulum. Putasti ovum paschale futurum. Nullo modo.", + "join the discord NOW", + "linux is so much better than windows", + "Did you know that oxygen is tasty?", + "Did you know that drinking water is dangerous?", + "🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸🇵🇸", + "chromebooks suck", + "Made 10% from actual code 90% skidded", + "moni", + "uwu", + "uWu", + "OwO", + "UwU", + "Chocolate hummus is a disgrace to the entire middle east.", + "3kh0 has fell, and now 3kh0 has sadly died.", + "Fun fact: Your chromebook is likely being monitored 24/7", + "Activate Selenite, Go to settings to activate Selenite", + "This copy of Selenite is not genuine.", + "contains 100% all-natural beef", + "You may be a victim of software counterfeiting", + "Woe to those who don't use this game site", + "Did you know we are open source?", + "SUPR COL GAMS V2 IS AWESOME!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!", + "thank you to louis pasteur for inventing milk", + "you found the secret message", + "i know where you live", + "i", + "technoblade never dies", + "Selenite has shut down.", + "theres at least 2, maybe 3 games on this website", + "🥺👉👈", + "what website is this?", + "we love about:blank", + "join the discord to be cool", + "bigfoot is an L", + "check steam", + "selentine", + "geometry dash two point two", + "does anyone call twitter X unironically", + "rights to the trans people 🏳️‍⚧️ (trans rights)", + "happy new years everyone", + "merry christmas everyone", + "happy easter day everyone", + "happy halloween everyone", + "happy thanksgiving everyone", + "happy valentines day everyone", + "happy birthday to me", + "happy birthday to you", + "happy birthday to everyone", + "happy birthday to the website", + "dont look behind you", + "sky", + "penguinify", + "a456pur", + "selenite", + "3kh0", + "selenite is the best", + "selenite is the best website", + "selenite is the best website ever", + "selenite is the best website ever made", + "selenite is the best website ever made in the history of the world", + "selenite is the best website ever made in the history of the world and the universe", + "Your network admin has logged this visit. You will be reported to the authorities.", + "share with your friends", + "i love piracy", + "i love piracy and you should too", + "ai is gonna take over the world", + "serap", + "slenetine", + "Behind you.", + "if you are seeing this message, please ping the owner of selenite in the discord server immediately.", + "sorry in advance for may 18th", + "selenite stole $100k from the pentagon to keep paying for hosting", + "this is your sign to get off games and get a good academic life", + "Josh", + "We skidded from everyone including ourselves.", + "congrats on who got a 53 by using this site", + "ive spent 10 minutes writing 8 quotes gosh i need better things to do", + "selenite workers are immensely underpaid", + "how does one", + "Please add proxy im begging i need proxy", + "seraphite", + "if u self-hosted this then ur cool", + "if you want to install linux, first crack the skid, then restart and you should be set", + "sure just downgrade the about:blank page", + "...that's not how it works. if you want to unenroll the only way to do that is to uninstall the shim", + "sure just hack the crosh shell", + "yeah so you want to playstore bypass the servers, you don't want to remove the servers", + "yeah so you want to crack the proxy, you don't want to hack the goguardian", + "to disable filters, you need to hack the proxy", + "to downgrade, you need to rm -rf the shim", + "🥺👉👈", + "me when i the me the when the the me the when i the when the me the the the when the", + "ayyy, ay, six sevennnn", + "41 but i got 41 gold", + "HelloWorld(Print)", + "im thinking miku miku uu ee uu", + "i love miku, teto, and the yellow one", + "you only really have 2 choices", + "ts is a tuff ahh site boi", + "mrrp :3", + "mrrreeeooooowww :3" +] \ No newline at end of file diff --git a/robots.txt b/robots.txt old mode 100644 new mode 100755 diff --git a/settings.html b/settings.html old mode 100644 new mode 100755 index 040dff1..f033357 --- a/settings.html +++ b/settings.html @@ -1,153 +1,229 @@ - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + Selenite + + + - - - - - - - - - - - Settings | Selenite - - - - - - - - - -
- Home - Bookmarklets - Games - Apps - Settings - Open Blank - - -
- -
-

Settings

-
-

Website Name

-
-

Website Icon

-
-

Or select a preset:

-
- -
- -
-
- -
-
-
- -
-
-
- -
-
-

Themes

-
- -
-
-
- - - - - - - - - - - - - - - - - - - - -
- -
-
-

Website URL

-
- -
-
-
- - - + }) + document.getElementById("fastMode").addEventListener("click", (e) => { + localStorage.setItem("selenite.fast-mode", !(e.target.checked == false)); + location.reload(); + }); + document.getElementById("superFastMode").addEventListener("click", (e) => { + localStorage.setItem("selenite.super-fast-mode", !(e.target.checked == false)); + location.reload(); + }); + document.getElementById("submitCloak").addEventListener("click", (e) => { + if(document.getElementById("cloaks").value) { + localStorage.setItem("selenite.tab-cloak", JSON.stringify({ + "name": cloaks[document.getElementById("cloaks").value][0], + "icon": cloaks[document.getElementById("cloaks").value][1] + })); + } else { + localStorage.setItem("selenite.tab-cloak", JSON.stringify({ + "name": document.getElementById("cloakName").value || "", + "icon": document.getElementById("cloakIcon").value || "" + })); + } + }); + document.getElementById("submitPanic").addEventListener("click", (e) => { + localStorage.setItem("selenite.panic-mode", JSON.stringify({ + "key": document.getElementById("panicKey").value || "", + "url": document.getElementById("panicURL").value || "" + })); + }) + function generatePallete(color) { + let theme = {}; + let chromaColor = chroma(color); + theme["color-1"] = chromaColor.hex(); + theme["color-2"] = chromaColor.darken(1).hex(); + theme["color-3"] = chromaColor.darken(2).hex(); + theme["color-4"] = chromaColor.darken(3).hex(); + theme["bg-1"] = chromaColor.darken(1.5).hex(); + theme["bg-2"] = chromaColor.darken(2.5).hex(); + theme["text-color"] = "#fff" + return theme; + } + }); + function wipeData() { + if(prompt("Wiping your data means you will lose all progress in every game, and every setting you have selected.\nAre you sure you would like to continue?\n\nType \"please wipe my data\" to continue.") == "please wipe my data") { + localStorage.clear(); + document.cookie.split(";").forEach(e => { + document.cookie = e.split("=")[0] + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT" + }) + } + } + function downloadData() { + // grab localstorage + // grab cookies + // json.stringify + // base64 + alert("not completed"); + } + function uploadData() { + if(prompt("Are you sure you want to upload data?\nThis may overwrite any previous data you had stored.\n\nType \"i am sure\" to continue.") == "i am sure") { + // prompt file upload + // read file + // atob + // set cookies + // set localstorage + alert("not completed"); + } + } + + + +

settings

+ +
+

style

+

themes

+ + +

toggles

+
+
+
+
+

tab cloak

+

website name

+ +

website icon

+ + + + +
+
+

panic mode

+

key

+ +

website

+ + +
+
+

manage data

+

not implemented

+ + + +
+
+ - - diff --git a/style.css b/style.css deleted file mode 100644 index 000c2c6..0000000 --- a/style.css +++ /dev/null @@ -1,3 +0,0 @@ -@import url("/css/style.css"); -@import url("/css/themes.css"); -/* moved to css folder */ \ No newline at end of file diff --git a/suggest.html b/suggest.html old mode 100644 new mode 100755 diff --git a/support.html b/support.html old mode 100644 new mode 100755